@charset "UTF-8";

html, body {
  margin: 0;
  padding: 0;
  overflow-x: hidden;
  margin-top: initial!important;
}

body { 
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "wdth" 100;
  background-color: #fff /*#e2e0db*/ ;
  color: #292f30 /*#fff*/ ;
  overflow-x: hidden!important;
  box-shadow: inset 12px 0 0 #d9ace8;
  /*box-shadow: inset 12px 0 0 #d9ace8, inset -96px 0 0 #ffe729*/
}

a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  opacity: 0.7;
}

.inset-secondary-yellow {
  box-shadow: inset 12px 0 0 #d9ace8, inset -12px 0 0 #ffe729
}
.inset-secondary-primary {
  box-shadow: inset 12px 0 0 #d9ace8, inset -12px 0 0 #7de5ff
}


.montserrat {
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}

#background-video {
  position: absolute; /* Fix the video to the viewport */
  left: 0;
  top: 0;
  width: 100vw; /* Ensure video covers at least 100% width */
  min-height: 100vh;
  object-fit: cover; /* Crop video to fill the element while maintaining aspect ratio */
  z-index: 0; /* Place the video behind other content */
}

/*---NAV---*/

.navbar {
    -webkit-transition-delay: 0.05s;
    transition-delay: 0.05s;
    -webkit-transition-duration: 0.35s;
    transition-duration: 0.35s;
}
.navbar.sticky {
    background:#fff;
    -webkit-box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1); 
    box-shadow: 0px 2px 3px 0px rgba(0,0,0,0.1);
}
.navbar.sticky .logo {
    opacity:0;
    display: none;
}
.navbar.sticky .logo-sticky {
    display: block;
    opacity:1;    
}
.logo-sticky {
    opacity:0;
    display: none;
}

.navbar-brand img {
    width: 100%;
    max-width: 140px;
    -webkit-transition-delay: 0.05s;
    transition-delay: 0.05s;
    -webkit-transition-duration: 0.35s;
    transition-duration: 0.35s;
}

.navbar.sticky .navbar-brand img {
    max-width: 100px;
}
@media (min-width: 180px){
  .side-drawer { 
    
    line-height: 1em;
    background: #171719;
    height: 100%;
    width: 100%;
    position: fixed;
    padding: 10vh 0 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 1000;
    transform: translateX(100%);  
  }
}
@media (min-width: 576px){
  .side-drawer { 
    width: 100%;
  }
}
@media (min-width: 768px){
  .side-drawer { 
    width: 75%;
  }
}
@media (min-width: 992px){
  .side-drawer { 
    width: 50%;
  }
}
@media (min-width: 1200px){
  .side-drawer { 
    width: 40%;
    max-width: 400px;
  }
}
@media (min-width: 1400px){
  .side-drawer { 
    width: 40%;
    max-width: 500px;
  }
}

.side-link {
  color: #edebe6;
  transition: 0.3s ease-in-out;
  text-decoration: none;
  display: block;
  font-weight: 600;
  border-bottom: 1px solid #333;
  line-height: 1.8em;
}
.side-link i {
  font-size: 1rem;
}

.sublinks a {
  color: #7de5ff !important;
}
@media screen and (min-width: 180px) {
  .side-link {
    font-size: 2.6rem;
    line-height: 1.8em;
  }
}
@media screen and (min-width: 768px) {
  .side-link {
    font-size: 2.4rem;
    line-height: 1.8em;
  }
}
.side-link:hover {
  color: #fff;
  transform: translateX(12px);
}

.navigation {
    
     .navbar-side {
       list-style: none;
       padding: 0;
       
      .navbar-side-item {

        
      }
    }
  }

.navbar-toggler {
  z-index: 10;
}

.icon {
  position:relative;
  /*width:80px;
  height:80px;*/
  background:transparent;
  cursor:pointer;
  z-index:9999;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: auto;
  /*background: rgb(255, 255, 255, 0.7);
  border-radius: 6px;*/
}

.display-0,
.display-1,
.display-2,
.display-3,
.display-4 {
  font-weight: 700;
  letter-spacing: -1px;
}

h1,.h1, h2,.h2,h3,.h3 {
  line-height: 1.1em;
}
h4,.h4,h5,.h5,h6,.h6 {
  line-height: 1.4em;
}

@media (min-width: 180px){
    .display-0 {
        font-size: 48px;
        line-height: 1em;
    }
    .display-1 {
        font-size: 48px;
        line-height: 1em;
    }
    .display-2 {
        font-size: 40px;
        line-height: 1em;
    }
    .h5, h5 {
    font-size: 1.15rem;
    }
}
@media (min-width: 992px){
    .display-0 {
        font-size:140px;
        line-height: 0.8em;
    }
    .display-1 {
        font-size: 130px;
        line-height: 0.8em;
    }
    .display-2 {
        font-size: 90px;
        line-height: 1em;
    }
    .display-3 {
        font-size: 72px;
        line-height: 1em;
    }
    .display-4 {
        font-size: 64px;
        line-height: 1em;
    }
    .h1, h1 {
      font-size: 2rem;
    }
    .h5, h5 {
    font-size: 1.25rem;
    }
}
@media (min-width: 1400px){
  .display-0 {
      font-size: 160px;
      line-height: 0.8em;
  }
  .display-1 {
      font-size: 130px;
      line-height: 0.8em;
  }
  .display-2 {
      font-size: 90px;
      line-height: 1em;
  }
  .display-3 {
      font-size: 72px;
      line-height: 1em;
  }
  .display-4 {
      font-size: 62px;
      line-height: 1em;
  }
  .h1, h1 {
      font-size: 2.4rem;
  }
}
@media (min-width: 2200px){
  .display-0 {
      font-size: 190px;
      line-height: 0.8em;
  }
  .display-1 {
      font-size: 160px;
      line-height: 0.8em;
  }
  .display-2 {
      font-size: 120px;
      line-height: 1em;
  }
  .display-3 {
      font-size: 110px;
      line-height: 1em;
  }
  .display-4 {
      font-size: 72px;
      line-height: 1em;
  }
  .h1, h1 {
      font-size: 3.2rem;
  }
  .h3, h3 {
      font-size: 2rem;
  }
}
@media (min-width: 2400px){
  .display-0 {
      font-size: 210px;
      line-height: 0.8em;
  }
  .display-1 {
      font-size: 180px;
      line-height: 0.8em;
  }
  .display-2 {
      
      font-size: 140px;
      line-height: 1em;
  }
  .display-3 {
      
      font-size: 130px;
      line-height: 1em;
  }
  .display-4 {
      
      font-size: 110px;
      line-height: 1em;
  }
  .h1, h1 {
      font-size: 4rem;
  }
  .h3, h3 {
      font-size: 2.25rem;
  }
}

/*---UTILITIES---*/

.linkedin {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 48px;
  height: 48px;
  right: -24px;
  background: #7de5ff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.video .btn-play {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 10;
}
@media (min-width: 180px){
    .btn-play {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 50px;
        height: 50px;
        border-radius:50%;
        font-size: 24px;
        text-decoration: none;
        background: rgb(0,0,0,0.4);
        transition: transform 0.3s ease;
    }
}
@media (min-width: 768px){
    .btn-play {
        width: 75px;
        height: 75px;
        border-radius:50%;
        font-size: 32px;
    }
}
@media (min-width: 992px){
    .btn-play {
        width: 96px;
        height: 96px;
        border-radius:50%;
        font-size: 36px;
    }
}
.btn-play:hover {
    background: rgb(79,192,234);
}

@media (min-width: 180px){
    .item_info {
        width: 100%;
        border-bottom: 3px solid #e2e9e9!important;
    }
    .item_info.head {
        width: 0 2rem;
        background-color: #fff;
        padding:1rem;
    }
    .item_info {
        width: 100%;
        background-color: #fff;
        padding:1.2rem 1rem 1.6rem;
        -webkit-border-top-right-radius: 6px;
        -moz-border-radius-topright: 6px;
        border-top-right-radius: 6px;
    }
}
@media (min-width: 576px){
    .item_info {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 100%;
        border-bottom: 3px solid #e2e9e9!important;
    }
    .item_info.head {
        width: auto;
    }
    .item_info {
        width: 75%;
    }
}
.item_info .tagline {
    font-size: 85%;
    color: #2c2d32;
    margin-bottom: 0.4rem;
}
.list_title {
    position: relative;
}
.item_info .label,
.list_title .label {
    font-size: 85%;
    color: #fff;
    position: absolute;
    top: -32px;
    left: 0;
    display: flex;
    align-items: center;
    height: 32px;
    padding: 0 24px;
}

.article ul {
    list-style-type: none;
}
.article ul {
    padding: 0;
}
.article ul li {
    display: flex;          /* separates icon + text */
    align-items: flex-start; /* or center if you prefer */
    gap: 0.25em;    
}
.article ul li:before {
    font-family: FontAwesome;
    content: "\f0da";
    margin-right: 0.5em;
    color: #7de5ff;
}

.post-navigation .nav-links {
  width: 100%;
  display: flex;
  justify-content: space-between;
  font-weight: 600;
}

.link_text {
  text-decoration: none;
}

.floating_box {
  position: absolute;
  bottom: 3rem;
  margin: auto;
  left: 3rem;
  right: 3rem;
}

.flex-center {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}

.block_link {
  text-decoration: none;
  color: #292f30 !important;
  transition: transform 0.3s ease;
  display: block;
}

.block_link:hover {
  transform: translateX(10px);
  color: #dee2e6;
}


.vector_card:hover .title {
  -webkit-transform: translate3d(0,-90px,0);
	transform: translate3d(0,-90px,0);
}

.highlight {
  line-height: 1.1em;
  display: inline;
  padding:0 0.4rem;
}

@media (min-width: 576px){
  .text-columns {
    column-count: 2;
    column-gap: 2.5rem;
  }
}


.split-text-1, .text-block, .hero-image {
      opacity: 0;
      will-change: transform, opacity;
    }
.split-text-1 { display: block; }

@media (min-width: 1200px){
  .position-xl-absolute {
    position: absolute;
  }
}

.lang-switch {
  display: inline-flex;
  position: relative;
  margin-left: auto;
  list-style: none;
  margin-left: auto;
}
.lang-switch li a {
  width: 32px;
  height: 32px;
  margin: 0 4px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 0.85em;
}
.lang-switch li a {
  text-decoration: none;
  color: initial;
}
.lang-switch li.current-lang a {
  background: #ffdd00;
}
.lang-switch li a:hover {
  background: #212529;
  color: #fff;
}

.border-md {
  border-width: 4px!important;
}

.tri-wrap { 
  position: relative;
  position: relative;
  display: flex;
  flex-direction: column; 
}

.tri-img-container {
  width: 100%;
  align-self: flex-end !important;
  position: relative;
}

.owl-item:nth-child(3n+1) .profile_card .tri-wrap .tri-img-container .tri-ptr {
  background: #7de5ff;
}
.owl-item:nth-child(3n+2) .profile_card .tri-wrap .tri-img-container .tri-ptr {
  background: #d9ace8;
}
.owl-item:nth-child(3n+3) .profile_card .tri-wrap .tri-img-container .tri-ptr {
  background: #ffe729;
}

.modal:nth-child(3n+1) .tri-ptr {
  background: #7de5ff;
}
.modal:nth-child(3n+2) .tri-ptr {
  background: #d9ace8;
}
.modal:nth-child(3n+3) .tri-ptr {
  background: #ffe729;
}


.owl-carousel .owl-stage {
    display: flex;
    align-items: center;
}

/* Yellow triangle (left-pointing; sets the height via aspect-ratio) */
.tri-ptr {
  position: relative;            /* so z-index applies */
  z-index: 1;                    /* above mask + image */
  width: 100%;
  aspect-ratio: 10 / 11;         /* height = width * 1.1 */
  /*background: #fd0;*/
  overflow: visible;
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
.tri-text {
  position: absolute;
  top: 93%;
  left: 0;            
  z-index: 4;                  
  width: 100%;
  
}

.tri-description {
  font-size: 0.85rem;
  padding-right: .5rem!important;
  padding-top: 1rem;
}

/* Image anchored to bottom; can overflow above */
.tri-img {
  position: absolute;
  left: 0;
  bottom: 0;
  margin-bottom: 1px; /* corrige espacio abajo de foto */
  width: 100%;
  height: auto;
  z-index: 2; 
}

.tri-mask {
  --mask-bg: #fff; 
  position: absolute;
  inset: 0;
  background: var(--mask-bg);
  clip-path: polygon(0 100%, 100% 100%, 0 50%);
  z-index: 3;
  pointer-events: none;
}

/* Fallback if aspect-ratio isn’t supported */
@supports not (aspect-ratio: 1 / 1) {
  .tri-ptr { height: 0; padding-bottom: 110%; }
}
@media (min-width: 180px){
  .tri-name {
    font-size: 1.2rem;
    font-weight: 700;
    margin-bottom: 0;
  }
}
@media (min-width: 1400px){
  .tri-name {
    font-size: 1.1rem;
  }
}
@media (min-width: 1600px){
  .tri-name {
    font-size: 1.2rem;
  }
}

.tri-role {
  font-size: 0.85rem;
  font-weight: 500;
  color: #999;
}


/* Container with image background */
.diagonal-box {
  position: relative;
  width: 100%;
  height: 480px;
  background-size: cover;
  background-position: center;
  overflow: hidden;
  border-radius:8px
}

/* Bottom overlay, 60% tall, with right-dropping slanted top */
.diagonal-box .shape-hover {
  position: absolute;
  bottom: 0; left: 0; width: 100%; height: 60%;
  background: #d9ace8;

  --right-drop: 74%;
  --left-drop: calc(var(--right-drop) * 0.32);

  clip-path: polygon(
    0 var(--left-drop),
    100% var(--right-drop),
    100% 100%,
    0 100%
  );
  transition: clip-path 0.45s cubic-bezier(0.25, 1, 0.5, 1);
  padding: clamp(16px, 3vw, 32px);  
}

/* Info block: absolutely positioned */
.diagonal-box .shape-info {
  position: absolute;
  color:#000;
  top: 150px;
  left: 0; right: 0;
  padding: 0 36px;
  transform: translateY(0);
  transition: transform 0.45s cubic-bezier(0.25, 1, 0.5, 1);
}

/* Intro starts hidden */
.diagonal-box .intro {
  opacity: 0;
  transition: opacity 0.45s ease 0.15s;  /* fade in with delay */
}

/* Hover effects */
.diagonal-box:hover .shape-hover {
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  background: rgba(255,231,41,1);
}
.diagonal-box:hover .shape-info {
  transform: translateY(-100px);
}
.diagonal-box:hover .intro {
  opacity: 1;
}

.shape-info .intro {
  font-size: 0.85rem;
}

/* Optional text styles 
.tagline { font: 600 0.95rem/1.2 system-ui, sans-serif; opacity: .9; margin: 0 0 .4rem; }
.title   { font: 700 clamp(1.1rem, 2.2vw, 1.6rem)/1.2 system-ui, sans-serif; margin: 0 0 .5rem; }
.intro   { font: 400 0.95rem/1.5 system-ui, sans-serif; margin: 0; }*/


.hero {
  /*box-shadow: inset 12px 0 0 #d9ace8*/
}

.hero .tri {
  position: absolute;
  top: 100px;
  right: 98px;
  width: 30%;
  z-index: 1;
}
.hero .tri img {
  width: 100%;
}

.inset-right-secondary {
  box-shadow: inset -96px 0 0 #d9ace8;
}
.inset-right-primary {
  box-shadow: inset -96px 0 0 #7de5ff;
}
.inset-left-secondary {
  box-shadow: inset 12px 0 0 #d9ace8;
}
.inset-left-primary {
  box-shadow: inset 12px 0 0 #7de5ff;
}


.text-shadow {
  text-shadow: -1px 1px 2px rgba(0,0,0,0.1);
}

@media (min-width: 992px){
  .mt-lg-n5 {
    margin-top: -3rem;
  }
}

.tagline {
  border-radius: 4px;
  width: fit-content;
  padding: 0px 8px;
  font-weight: 500;
}


.preloader {
  position: absolute;
  top: 50%;
  left: 50vw;
  transform: translate(-50%, -50%);
  z-index: 2;
  background: rgba(0, 0, 0, 0.6);
  color: white;
  padding: 10px 20px;
  border-radius: 5px;
  font-family: sans-serif;
}

.vertical_name {
  height: 48px;
  padding-left: .5rem!important;
  margin-bottom: 1.5rem!important;
}

.marker {
  position: absolute;
  margin-top: -150px;
}

.card_profile {
  overflow: hidden;
}

.social {
  position: absolute;
  bottom:3rem;
  left: 3rem;
}

.btn {
  border-radius: 32px;
  padding: 0.8rem 1.6rem;
  font-weight: 500;
}
.btn-sm {
  padding: 0.5rem 1.4rem;
  font-size: 0.85em;
  font-weight: 500;
}

.btn-text {
  color: #2D2D2D;
}

.btn-round {
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    width: 48px;
    height: 48px;
    background: #222 ;
}
.btn-round i {
    color: #fff;
    font-size: 1.2em;
}

.btn-round:hover {
    background: #edebe6 ;
    color: #333!important ;
}
.btn-round:hover i {
    color: #333!important ;
}

.btn-outline {
  background: transparent;
  border: 1px solid #fff;
  color: #fff;
}

.btn-link {
  background: transparent;
  border: none;
}
.btn-link:hover {
  background: transparent;
  border: none;
}

.btn-dark-outline {
  border:1px solid #292f30;
  color: #292f30;
}

.hover-modal {
  position: absolute; 
  padding: 2.6rem;
  display: none; 
  width: 200px; 
  background: white; 
  pointer-events: none; 
  z-index: 999; 
  box-shadow: 0 4px 10px rgba(0,0,0,0.1);
  width: 90%;
  max-width: 520px;
}

.badge {
  font-size: 1em;
  font-weight: 500;
}
.highlight_inline {
  border-radius: 0.7em;
  padding: 0 .75rem;
  background-color: #7de5ff;
  display: inline-block;
}
.split_paragraph span {
  display: inline-flex;
}

/*---ENGAGEMENT---*/
#engagement .word4 {
  transition: color 0.1s ease;
  cursor: pointer;
}

/*---CAROUSEL---*/

.controls {
  position: absolute;
  top: 8rem;
  right: 2rem;
}
.controls button {
  /*font-size: 0;*/
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: transparent;
}
.controls button.nextBtn {
  border: 2px solid #fff;
  color: #fff;
  background: #222;
}
.controls button.prevBtn {
  border: 2px solid #fff;
  color: #222;
  background: #fd0;
  margin-right: -14px;
}
.controls button {
  /*font-size: 0;*/
  width: 72px;
  height: 72px;
  border-radius: 50%;
  background: transparent;
  border: 1px solid #fff;
}

.controls button.disabled {
  pointer-events: none;
  cursor: default;
  background: #eee;
  color: #ccc;
}

.carousel {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.slides-container {
  display: flex;
  transition: transform 0.5s ease-in-out;
  width: 300%;
}
.slide {
  width: 100%;
  min-height:100vh;
  flex-shrink: 0;
  position: relative;
  box-sizing: border-box;
}
.slide-bg {
  position: absolute;
  top: 0; left: 0;
  width: 100vw; height: 100vh;
  background-size: cover;
  background-position: center;
  z-index: 0;
}
.bg1 {
  background-image: url('/img/home/maximalfocus-eZWGK5sIiBM-unsplash.jpg');
}
@media (min-width: 180px){
  .headline {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  left: 1.5rem;
  right:1.5rem;
  max-width: 90vw;
  white-space: normal;     
  overflow-wrap: break-word; 
  }
}
@media (min-width: 576px){
  .headline {
  left: 2rem;
  right:2rem;
  }
}
@media (min-width: 992px){
  .headline {
  left: 3rem;
  right:3rem;
  }
}

.side-image {
  height: 92vh;
  position: absolute;
  left: 40vw;
  bottom: 0;
  z-index: 1;
  opacity:0.8
}
.front-image {
  width: 200px;
  transform: scale(0.5);
  z-index: 2;
}

/*---END CAROUSEL---*/

/*---HOME CAROUSEL---*/

#slide2 .line3 .word10,
#slide3 .line3 .word10,
#slide4 .line3 .word7,
#slide5 .line3 .word5,
#slide6 .line3 .word4,
#slide7 .line3 .word8 {
  background-color: #fd0;
  color: #222;
  padding: 0.01em 0.2em;
  border-radius:64px;
  z-index: -1;
  /*margin-left: -0.1em;*/
}

@media (min-width: 992px){
  .slide_video {
    position: absolute;
    left:50vw; 
    width:33vw; 
    border: 8px solid #333;
  }
}
.light    {font-weight:300}
.regular  {font-weight:400}
.medium   {font-weight:500}
.bold     {font-weight:600}
.black    {font-weight:800!important}

.h4 { line-height: 1.3em;}
.h5 { line-height: 1.5em;}

.line {
    display: flex!important;
    align-items: center!important;
}

/*---LAYOUT---*/

.panel {
  min-height: 100vh;
}

.section-2 {
  overflow-x: hidden;
  min-height:100vh
}

.work-card {
  min-height: 360px;
  display: flex;
  align-items: end;
}

@media (min-width: 992px){
  .h-lg-100 {
    height: 100% !important;
  }
}

@media (min-width: 180px){
  .scroll_to_view {
    display:none;
  }
}
@media (min-width: 768px){
  .scroll_to_view {
    display:flex;
  }
}

@media (max-width: 768px){
  .pt-hero {
    padding-top: 10rem;
  }
}
/*--- FONT STYLES ---*/

.title_box {
  background-color: #FFF;
  height: 0.8em;
  overflow: visible;
  position: relative;
  margin-top: 2rem;
  display: inline-flex;
  padding:0 0.2em;
}
.title_box .title {
  
  margin-top: -0.6em;
  font-size: 1em;
  letter-spacing: 0.1em;
}

.highlight {
  background-color: #7de5ff;
  padding: 0 0.2em;
}

.uppercase {
    text-transform: uppercase;
}

.text-primary {
  color:#7de5ff!important;
}
.text-secondary {
    color:#d9ace8!important;
}
.text-warning {
    color:#ffe729!important;
}
.text-dark {
  color:#2D2D2D!important;
}
.text-grey {
  color:#818b8c!important;
}


/*HOMAPAGE*/

.makeitmatter {
  position: absolute;
  bottom: 2rem;
  left: 0;
  width: fit-content;
}

/*--- BUTTONS ---*/

.btn-primary {
  background-color:#7de5ff!important;
  border-color:#7de5ff!important;
  color: #292f30;
}
.btn-secondary {
    background-color:#d9ace8!important;
    color: #fff;
}
.btn-warning {
  background-color:#ffe729!important;
  border-color:#ffe729!important;
  color: #292f30;
}


.button {
  align-items: center;
  background: 0 0;
  border: none;
  border-radius: 6.25rem;
  color: #111;
  cursor: pointer;
  display: inline-flex;
  font-size: 1.1rem;
  gap: 0.363636em;
  justify-content: center;
  letter-spacing: -0.01em;
  line-height: 1.04545;
  overflow: hidden;
  padding: 0.9375rem 1.5rem;
  position: relative;
  text-decoration: none;
  word-break: break-word;
  text-decoration: none;
}

@media (hover: hover) {
  .button.button-stroke:hover {
    color: #fff;
    text-decoration: none;
  }
}

.button-stroke:after {
  bottom: 0;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
}

.button-stroke:after {
  border: 0.125rem solid #111;
  border-radius: 6.25rem;
  content: "";
  pointer-events: none;
}
.button-stroke:hover:after {
  border: 0.125rem solid #111;
}

.button__label {
  position: relative;
  text-align: center;
  transition: color 50ms cubic-bezier(0.77, 0, 0.175, 1);
}

.button-stroke:hover .button__label {
  transition: color 0.15s cubic-bezier(0.77, 0, 0.175, 1);
}

.button__flair {
  bottom: 0;
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
}

.button-stroke .button__flair {
  transform: scale(0);
  transform-origin: 0 0;
  will-change: transform;
}

.button__flair:before {
  aspect-ratio: 1/1;
  background-color: #111;
  border-radius: 50%;
  content: "";
  display: block;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  transform: translate(-50%, -50%);
  width: 170%;
}

/*--- NAVBAR ---*/

.navbar {
  /* Permalink - use to edit and share this gradient. Enlace permanente - úsalo para editar y compartir este gradiente: https://colorzilla.com/gradient-editor/#000000+0,000000+100&1+0,0+100 */
/*background: linear-gradient(to bottom,  rgba(0,0,0,1) 0%,rgba(0,0,0,0) 100%);*/ /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.nav-link {
    color: #FFF;
    text-decoration: none;
    
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1em;
    letter-spacing: 1px;
}
.nav-link.active {
    color: #7de5ff!important;
    text-decoration: none;
    
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1em;
    letter-spacing: 1px;
}

/*--- HOMEPAGE ---*/

svg.como {
  position: absolute;
  top: 0;
  left: 0;
  overflow: visible;
  pointer-events: none;
}

path.motion-path {
  stroke: #fff;
  stroke-width: 8;
  fill: none;
}

#endpoint {
  fill: #fff; /* or any color you want */
  pointer-events: none;
}



.circle {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 100px;
      height: 100px;
      background: yellow;
      border-radius: 50%;
      z-index: 1;
      pointer-events: none;
    }

    .text-wrapper {
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      z-index: 2;
      opacity: 0;
      color: black;
      font-size: 3rem;
      text-align: center;
      width: 80%;
    }

    .spacer {
      height: 200vh;
    }

.text-decoration-none {
  text-decoration: none!important;
}

.credit-card:hover {
    cursor:none;
}

.cursor,.learn {
  position: fixed;
  top: 0;
  left: 0;
  width: 80px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 221, 0, 0.8);
  border-radius: 50%;
  pointer-events: none;
  transform: translate(-50%, -50%);
  opacity: 0;
  transition: opacity 0.3s ease;  
  color: #111;
  
  font-size: 14px;
  letter-spacing: 1px;
  will-change: transform;
  z-index: 9999;
}
.cursor i {
  font-size: 1.4em;
}
/* visible when hovering */

  .hover-active .cursor {
    opacity: 1;
  }

.carousel-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
  position: relative;
  height: 100vh;
}

.carousel-track {
  display: flex;
  align-items: center;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  will-change: transform;
}

.carousel-item {
  width: 480px;
  margin: 0 20px;
  background-color: #3498db;
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(0,0,0,0.2);
  display: block;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  color: white;
}


/*---OWL CAROUSEL---*/

.owl-prev.disabled, .owl-next.disabled {
  background: #ccc;
  color: #666;
  opacity: 0.5;
  cursor: not-allowed;
}

.owl-carousel-3-column .owl-stage-outer .stage-outer > .owl-item:nth-child(odd) {
  /* Your styles here */
  margin-top: 3rem;
}

/* Apply the hover effect */

.image-hover img {
    transition: transform 0.3s ease;
  }
.image-hover:hover img {
    transform: scale(1.2);
    opacity:0.4;
  }

.image-enlarge {
    transition: transform 0.3s ease;
    position: relative;
    display: block;
    overflow: hidden;
  }
  .image-enlarge:hover {
    cursor: pointer;
  }
  .image-enlarge:hover .item_info {
    /*bottom:0*/
  }

  .item_info {
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    /*border-bottom: 3px solid #e2e9e9!important;*/
  }

.item_info {
    width: fit-content;
    /*background-color: #fff;*/
    padding:1rem 1.6rem
}
.item_info.head {
    width: auto;
    background-color: #fff;
    padding:1.4rem 1rem 0
}
.item_info .tagline {
    font-size: 85%;
    color: #2c2d32;
    margin-bottom: 0.4rem;
}
.item_info .title {
  font-family: 'Effra Light';
    font-size: 1.8em;
    color: #fff;
}
.list_title {
    position: relative;
}
.item_info .label,
.list_title .label {
  
  text-transform: uppercase;
  font-size: 80%;
  color: #111;
  letter-spacing: 1px;
  position: absolute;
  top: -6px;
  left: 0;
  display: flex;
  align-items: center;
  height: 22px;
  padding: 0 1rem;
}

/*--- horizontal text scroll --*/

.scroll-text-wrapper {
    position: relative;
    /*height: 100vh;*/
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}
.scroll-text {
    white-space: nowrap;
    font-size: 6rem;
    font-weight: bold;
    will-change: transform;
    text-transform: uppercase;
    color:#f8f8f8
}

/*--- COMPONENTS ---*/

.video-wrapper {
  position: relative;
  width: 100%;
  margin: auto;
  overflow: hidden;
  border-radius:8px;
}

.video-wrapper video {
  width: 100%;
  display: block;
}

/* Custom play overlay */
.video-wrapper .play-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0,0,0,0.25); /* subtle dim */
  cursor: pointer;
}

.video-wrapper .play-btn {
  width: 80px;
  height: 80px;
  background: rgba(0,0,0,0.6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.video-wrapper .play-btn::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-left: 25px solid white;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
}

.hover-preview {
  position: fixed;
  width: 200px;
  height: 100px;
  border-radius: 8px;
  box-shadow: 0 15px 30px rgba(0,0,0,0.25);
  background-size: cover;
  background-position: center;
  transform-style: preserve-3d;
  perspective: 800px;
  opacity: 0;
  transform: scale(0.9); 
  z-index: 999;
  pointer-events: none !important;
  background-color: rgba(0,128,255,0.2); 
}

.item_list.align_right {
  text-align: right;
  list-style-position: inside;
}

.item_list.hover_img {
  list-style: none;
  margin: 0;
  padding: 0;
}
.item_list.hover_img li {
  display: inline-flex;
    line-height: 1.2em;
    width: fit-content;
    cursor: pointer;
    position: relative;
    z-index: 10;
    border: 1px dotted #666;
    border-radius: 8px;
}
@media (min-width: 180px){
  .item_list.hover_img li {
    padding: 1.2rem;
    font-size: 1em;
    margin: 0.4em;
  }
}
@media (min-width: 1200px){
  .item_list.hover_img li {
    padding: 1.2rem;
    font-size: 1.2em;
    margin: 0.4em;
  }
}


/*--- START Horizontal Slides ---*/
.horizontal-wrapper {
  overflow: hidden;
  position: relative;
}

.horizontal-inner {
  display: flex;
  width: 300vw;
}

.horizontal-slide {
  padding: 5rem;
  flex-shrink: 0;
  transform: scale(0.8);
}

/*--- Counter ---*/
.number {
  /*visibility: hidden;*/
}


/*--- END Horizontal Slides ---*/

.highlight_bar {
  background-color: #FFF;
  height: 1rem;
  overflow: visible;
  position: relative;
  margin-top: 0.5em;
  display: inline-block;
}
.highlight_bar .text {
  position: relative;
  top: -0.5em;
}

.stat {
  background-color: #fd0;
  height: 26px;
  overflow: visible;
  position: relative;
  margin-top: 2rem;
  display: block;
}
.stat .number {
  position: absolute;
  font-family: 'Effra Regular';
  top: -70px;
  font-size: 90px;
}
.stat.sm .number {
  position: absolute;
  font-family: 'Effra Regular';
  top: -20px;
  font-size: 60px;
}
.stat_detail {
  font-size: 1.4rem;
  line-height: 1.2em;
}
.scroll-logos {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.7rem 2rem;
  border-bottom: 2px solid #ccc;
}
.scroll-logos .logo {
  /*height: 100px;*/
  /*background-color: #3498db;*/
  display: inline-flex;
  justify-content: center;
  opacity:0.8;
}
.scroll-logos .logo img {
  max-height:60px
}


/* Container for stacking card wrappers vertically */
.cards-container {
  /* Wrappers stack naturally */
}

@media (min-width: 180px){
  /* Each card wrapper has 15vh top padding */
.card-wrapper {
  height: 85vh;
  padding-top: 15vh;
  position: relative;
  width: 80vw;
  margin: auto;
}
}
@media (min-width: 992px){
  /* Each card wrapper has 15vh top padding */
.card-wrapper {
  height: 70vh;
  padding-top: 15vh;
  position: relative;
  width: 50vw;
  margin: auto;
}
}


/* Last card wrapper gets extra bottom padding and increased height */
.card-wrapper:last-of-type {
  height: 85vh; /* 70vh + 15vh extra to account for bottom padding */
  padding-bottom: 15vh;
}

/* The card fills the wrapper's width and remaining height in normal wrappers */
.card {
  width: 100%;
  height: calc(70vh - 15vh); /* 55vh */
  margin: 0 auto;
  background: #fff;
  border-radius: 4px;
  padding: 50px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

@media (min-width: 180px){
.card-wrapper .card .icon {
  position:absolute;
  height: 100px;
  right:3rem;
  top:3rem
}
}
@media (min-width: 992px){
.card-wrapper .card .icon {
  height: 140px;
}
}

@media (min-width: 180px){
/* In the last wrapper, adjust card height to account for extra bottom padding */
.card-wrapper:last-of-type .card {
  height: calc(85vh - 15vh); /* 85 - (15+15) = 55vh */
}
}
@media (min-width: 992px){
/* In the last wrapper, adjust card height to account for extra bottom padding */
.card-wrapper:last-of-type .card {
  height: calc(85vh - 30vh); /* 85 - (15+15) = 55vh */
}
}


/*--- accordion ---*/

@media (min-width: 180px){
  .accordion-button {
      font-family: 'Effra Light';
      font-size: 1.6rem;
      /*text-transform: uppercase;*/
  }
  .accordion.sm .accordion-button {
      font-family: 'Effra Light';
      font-size: 1.6rem!important;
  }
  .accordion.sm .accordion-body {
      padding: 2rem!important;
  }
}
@media (min-width: 768px){
  .accordion-button {
      font-size: 2rem;
  }
}
@media (min-width: 992px){
  .accordion-button {
      font-size: 2.2rem;
  }
}
@media (min-width: 1200px){
  .accordion-button {
      font-size: 2.4rem;
  }
}
@media (min-width: 2200px){
  .accordion-button {
      font-size: 2.6rem;
  }
}
.accordion-item {
    border:none;
}
.accordion-button:not(.collapsed) {
    color: #111;
    background-color: #7de5ff;
    box-shadow: inset 0 calc(-1 * var(--bs-accordion-border-width)) 0 var(--bs-accordion-border-color);
}
.accordion-button.collapsed {
    border-top:1px solid #ccc
}
.accordion-item:first-of-type .accordion-button {
    /*border-top-left-radius: 0;
    border-top-right-radius: 0;*/
}
.accordion-button {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.accordion-button span.icon-wrap {
  width: 140px;
  display: inline-flex;
  justify-content: center;
}
.accordion-button span.icon-wrap img {
  height:32px ;
}
/*.accordion-button.collapsed .icon-wrap {
    border-top: 1px solid #666;
}*/
.accordion-button:not(.collapsed) .icon-wrap {
  display: none;
}

.accordion-button .button-bg {
  position: absolute;
  top: 0;
  right: 0;
  width: 0;
  height: 100%;
  background-color: #edebe6;
  z-index: 0;
  pointer-events: none;
}

.accordion-button .button-text {
  position: relative;
  z-index: 1;
  -webkit-transition-delay: 0.05s;
    transition-delay: 0.05s;
    -webkit-transition-duration: 0.35s;
    transition-duration: 0.35s;
}
.accordion-button:not(.collapsed) {
    border-radius: 6px;
}
.accordion-body {
  padding:3rem
}

/*---ACCORDION VERTICALS---*/

.accordion.brand .accordion-button:not(.collapsed) {
    color: #fff;
    background: linear-gradient(45deg,  rgba(214,123,235,1) 0%,rgba(255,221,0,1) 100%)!important;
}
.accordion.reputation .accordion-button:not(.collapsed) {
    color: #fff;
    background: linear-gradient(45deg, rgba(80, 189, 150, 1) 0%, rgba(255, 221, 0, 1) 100%) !important;
}
.accordion.culture .accordion-button:not(.collapsed) {
    color: #fff;
    background: linear-gradient(45deg,  rgba(0,151,238,1) 0%,rgba(255,221,0,1) 100%)!important;
}


/*--- BACKGROUNDS ---*/

.page-wrapper.original-bg {
  background-color: #000!important;
  transition: background-color 0.5s ease;
}

.page-wrapper.highlight-bg {
  background-color: #fce303!important;
}

.bg-image {
  background-size:cover;
  background-position: center;
  background-repeat: no-repeat;
}

.bg-dark {
  background-color:#222222!important;
}
.bg-black {
  background-color:#111!important;
}
.bg-primary {
    background-color:#7de5ff!important;
}
.bg-primary-50 {
    background-color:rgb(125,229,255,0.5)!important;
}
.bg-primary-25 {
    background-color:rgb(125,229,255,0.25)!important;
}
.bg-secondary {
    background-color:#d9ace8!important;
}
.bg-warning {
  background-color: #ffe729!important;
}
.bg-dark {
  background-color: #292f30;
}
.bg-light {
  background-color: #292f30;
}

.bg-prism {
  background-position: left;
  background-size: contain;
  background-repeat: no-repeat;
}

.gradient-border.brand {
  border-bottom: 12px solid transparent;
  border-image: linear-gradient(45deg,  rgba(0,151,238,1) 0%,rgba(255,221,0,1) 100%)!important; 
}

.gradient-footer {
  position: absolute;
  width: 100%;
  height:12px;
  bottom: 0;
  left: 0;
}
.gradient-footer.md {
  height:24px;
}


.gradient-text {
  background: linear-gradient(15deg, #b965a8, #7de5ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  /* Optional for broader support */
  background-clip: text;
}
.gradient-text.culture {
  background: linear-gradient(15deg, #0097ee, #7de5ff);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  /* Optional for broader support */
  background-clip: text;
}

@keyframes gradientShift {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}


.glare {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
}


:root {
	--light: #000;
	--dark: #000;
}
.wrap{
	/*background:var(--dark);*/
}
.color-dark{
	color:#fff;
}


/*--- ANIMATED BG ---*/

.wrapper {
    overflow: hidden!important;
}

:root {
  --color: red;
  --blur-1-size: clamp(400px, 60vw, 60vw);
  --blur-2-size: clamp(300px, 40vw, 40vw);
  --blur-3-size: clamp(100px, 10vw, 10vw);
  --blur-amount: clamp(40px, 5vw, 90px);
}

.blur {
  position: absolute;
  z-index: 0;
  border-radius: 900px;
  filter: blur(var(--blur-amount));
  background: var(--color);
}

.blur:nth-child(1) {
  height: var(--blur-1-size);
  width: calc(var(--blur-1-size) * 1.1);
}

.blur:nth-child(2) {
  filter: blur(var(--blur-amount)) hue-rotate(135deg) brightness(1.3);
  height: var(--blur-2-size);
  width: calc(var(--blur-2-size) * 0.75);
  top: 20vh;
  right: 20vh;
}

.blur:nth-child(3) {
  filter: blur(var(--blur-amount)) hue-rotate(-135deg);
  height: var(--blur-3-size);
  width: calc(var(--blur-3-size) * 2);
  bottom: 20vh;
  left: 20vw;
}
/*
section {
  height: 100vh;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  position: relative;
  overflow: hidden;
}*/

.credit {
  position: relative;
  margin-top: 3rem;
  width: 100%;
  text-align: center;
  z-index: 2;

  a {
    color: #222;
  }
}

* {
  box-sizing: border-box;
}


/*--- SOCIAL ICONS ---*/
@media (min-width: 180px){
  .social_icons {
      position: absolute;
      right: 2rem;
      top: 50%;
      transform: translateY(-50%);
      list-style: none;
      text-align: center;
      display: none;
  }
}
@media (min-width: 768px){
  .social_icons {
      display: block;
  }
}
.social_icons li i {
    font-size: 14px;
}
.social_icons li a i {
    color:#f8f8f8;
}
.social_icons li a {
    display: block;
    border-radius:50%;
    background: rgb(0,0,0,0.8);
    display: flex;
    width: 32px;
    height: 32px;
    margin: 8px 0;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.social_icons li a:hover {
    background: #fd0!important;
}
.social_icons li a:hover i {
    background: #333!important;
}

.social_icons_footer {
    list-style: none;
    text-align: center;
    display: flex;
    padding: 0;
    width: 100%;
}
.social_icons_footer li {
    display:inline-flex;
}
.social_icons_footer li i {
    font-size: 18px;
}
.social_icons_footer li a i {
    color:#111;
}
.social_icons_footer li a {
    display: block;
    border-radius:50%;
    background: #7de5ff!important;
    display: flex;
    width: 40px;
    height: 40px;
    margin: 0 4px 0 0;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}

  /*-- SCROLLER --*/

  .scroll-container{
    width: 19px;
    height: 48px;
    border: 2px solid #fff;
    border-radius: 15px;
    position: relative;
  }
  
  .scroller-icon{
    width: 8px;
    border-radius: 8px;
    background-color: #fff;
    position: absolute;
    top: 4px;
    left: 4px;
    bottom: 34px;
    animation: scroller 1500ms ease-out infinite;
  }

  .scroll-container.dark{
    border: 2px solid #000!important;
  }

  .scroll-container.dark .scroller-icon{
    background-color: #000!important;
  }
  
  
  @keyframes scroller{
    0%{
      bottom: 34px;
    }
    5%{
      top: 4px;
    }
    32%{    
      bottom: 4px;
    }
    66%{
      top: 34px;
      bottom: 4px;
    }
    100%{
      top: 4px;
      bottom: 34px;
    }
  }


  /*-- OWL CAROUSEL ---*/

.carousel_box {
    background-repeat:no-repeat;
    background-position: center!important;
    background-size: cover!important;
    position: relative!important;
    /*padding-top: 160px; */   
}

.carousel_box>.owl-carousel {
    margin-bottom: -160px;
    margin-right: -160px;
}

.owl-equal-height .owl-stage {
    display:flex; /*-- Makes all items in carousel the same height --*/
}
.owl-carousel .owl-item {
    border-radius:4px;
    overflow: visible;
}
.owl-carousel .owl-stage-outer {
}

@media screen and (min-width: 180px) {
    .owl-carousel.owl-1-column .owl-nav {
        position: absolute !important;
        top: initial;
        bottom: -94;
        right: 0;
        width: auto;
        transform: initial;
        width: 100%;        
    }
    .owl-carousel.owl-header .owl-nav {
        position: absolute !important;
        top: initial;
        bottom: -3rem!important;
        right: 0!important;
        width: auto;
        transform: initial;
    }
}

.owl-carousel.owl-team .owl-stage-outer {
    /*overflow: visible;*/
    padding-top:110px;
    padding-bottom: 110px;
}

.owl-carousel.overflow-both .owl-stage-outer {
    overflow: visible;
    clip-path: inset( -100vw );
}

.owl-carousel .owl-nav button.owl-next, 
.owl-carousel .owl-nav button.owl-prev, 
.owl-carousel button.owl-dot {
}

.owl-carousel .owl-dot {
    width: 20px;
    height: 20px;
    background-color: rgb(0,0,0,0.3);
    display: inline-block;
    border-radius:50%;
    margin: 3px;
}


@media screen and (min-width: 180px) {
    .owl-carousel .owl-dots {
        position: absolute!important;
        width: 100%;
        bottom:-60px;
    }
    .owl-carousel .owl-nav {
        position: absolute;
        top:100%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        height: 64px;
        display: flex;
        justify-content: center;
        width: 100%;
        z-index: -1!important;
    }
}
@media screen and (min-width: 768px) {
  .owl-carousel .owl-nav {
        top:50%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}
  @media screen and (min-width: 576px) {
  
    .owl-carousel .owl-dots {
        text-align:center
    }
    .owl-carousel .owl-nav {
        width: 100%;        
    }
    .owl-carousel .owl-nav button[class^='owl-'] {
        position: absolute;
    }
}
.owl-carousel .owl-nav {
    z-index: 1;
}
.owl-carousel .owl-nav button[class^='owl-'] {
    width:64px;
    height: 64px;
    border-radius: 50%;
    color:#222!important;
    background:#f8f9fa;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size:0!important;
    /*margin: 0 0.3rem;*/
}
.owl-carousel .owl-nav button[class^='owl-']:hover {
    color:#111!important;
    background:#fd0;
}
.owl-carousel.light-btn .owl-nav button[class^='owl-'] {
    color: #fff !important;
    background-color: transparent!important;
}

.owl-carousel .owl-nav button.owl-next, 
.owl-carousel .owl-nav button.owl-prev, 
.owl-carousel button.owl-dot {
    font-size: 0!important;
}
.owl-nav .owl-prev:before {
    font-family: FontAwesome;
    content: "\f053";
    font-size: 18px;
    line-height: 50px;    
}
.owl-nav .owl-next:before {
    font-family: FontAwesome;
    content: "\f054";
    font-size: 18px;
    line-height: 50px;    
}

.owl-carousel.owl-3-column .card-body {
    min-height:210px
}

@media screen and (min-width: 768px) {
    .owl-carousel .owl-prev {
        left:-65px
    }
    .owl-carousel .owl-next {
        right:-65px
    }
    .owl-carousel.owl-3-column .owl-prev {
        left:-96px
    }
    .owl-carousel.owl-3-column .owl-next {
        right:-96px
    }
}

@media screen and (min-width: 180px) {
    .owl-carousel button.owl-dot {
        background: rgb(0,0,0,0.3)!important;
        color: #3bbbe6;
        border: none;
        padding: 0!important;
        font: inherit;
        width: 32px;
        height: 4px;
        background: rgb(255,255,255,0.7);
        border-radius:8px;
        margin:4px;
    }
}
@media screen and (min-width: 992px) {
    .owl-carousel button.owl-dot {
        width: 42px;
    }
}

.owl-carousel button.owl-dot.active {
    background: #ffe729!important;
}

/*---BUTTONS---*/

.btn-anim {
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  height: 64px;
  width: 280px;
  gap: 0;
  text-decoration: none;
  color: initial;
}
.btn-anim:hover {
  text-decoration: none;
  color: initial;
}

.btn-nl {
  width: calc(100% - 64px); /* container width minus icon width */
  height: 64px;
  line-height: 64px;
  text-align: center;
  border-radius: 32px;
  white-space: nowrap;
  background-color: #111;
  color: white;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
}

.btn-ico,
.btn-ico-alt {
  width: 64px;
  height: 64px;
  border-radius: 32px;
  background: white;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 0;
  will-change: transform, opacity;
}

.btn-ico {
  right: 0;
  z-index: 2;
}

.btn-ico-alt {
  left: -64px;
  z-index: 0;
  transform: scale(0); /* Initial scale set here */
}


/*--- ABOUT US---*/


.cluster{
  position:relative; 
  height:600px; 
  background-color:transparent; 
}

.clusterPieces{position:absolute;}

.shape {
  width:100%; 
  max-width:240px; 
  height:240px; 
  border-radius:50%; 
  left:10%; 
  top:10%; 
  z-index:3;
}

.dotsBlue{width:100%; height:auto; max-width:494px; max-height:434px; z-index:1; left:0; top:80px;}

.owlHorned{width:100%; height:auto; max-width:450px; max-height:700px; top:0; right:0; z-index:2;}


/* --------------------------------------------------
	14.0 Team Blocks
-------------------------------------------------- */
/* ---- 14.1 Team - 3 Columns ---- */
.team-4col .t-item, .freelancer-about .t-item {
  display: block;
  border-radius: 5px;
  overflow: hidden;
  border-top: 1px solid #f8f8f8;
  background: #fff;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
}

.team-4col .t-item:hover, .freelancer-about .t-item:hover {
  -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px);
  box-shadow: 0 22px 43px rgba(0, 0, 0, 0.15);
}

.t-image .t-description, .team-4col .t-item:hover .t-image .t-description, .freelancer-about .t-item:hover .t-image .t-description {
  bottom: 0;
}

.t-image .t-description .content-wrapper, .team-4col .t-item:hover .t-image .t-description .content-wrapper, .freelancer-about .t-item:hover .t-image .t-description .content-wrapper {
  padding-top: 0;
  border-bottom: 1px solid #ebebec;
  opacity: 1;
}

.team-4col .t-item .t-image, .freelancer-about .t-item .t-image {
  position: relative;
  height: 375px;
  overflow: hidden;
}

.team-4col .t-item .t-image .t-description, .freelancer-about .t-item .t-image .t-description {
  display: block;
  color:#666;
  position: absolute;
  padding: 100px 30px 30px 30px;
  bottom: -100%;
  left: 0;
  height: 100%;
  width: 100%;
  background: white;
  -webkit-transition: bottom 0.4s;
          transition: bottom 0.4s;
}

.team-4col .t-item .t-image .t-description .content-wrapper, .freelancer-about .t-item .t-image .t-description .content-wrapper {
  opacity: 0;
  padding-top: 100px;
  padding-bottom: 73px;
  border-bottom: none!important;
  -webkit-transition: opacity 1s, padding-top 0.8s, border 1.5s ease-out;
          transition: opacity 1s, padding-top 0.8s, border 1.5s ease-out;
}

.team-4col .t-item .t-image .t-description .content-wrapper h4, .freelancer-about .t-item .t-image .t-description .content-wrapper h4, .team-3col .t-item .t-image .t-description .content-wrapper .ft-tabs .tabs-list li a .tab-group .tab-heading, .ft-tabs .tabs-list li a .tab-group .team-3col .t-item .t-image .t-description .content-wrapper .tab-heading, .team-4col .t-item .t-image .t-description .content-wrapper .ft-tabs .tabs-list li a .tab-group .tab-heading, .ft-tabs .tabs-list li a .tab-group .team-4col .t-item .t-image .t-description .content-wrapper .tab-heading, .freelancer-about .t-item .t-image .t-description .content-wrapper .ft-tabs .tabs-list li a .tab-group .tab-heading, .ft-tabs .tabs-list li a .tab-group .freelancer-about .t-item .t-image .t-description .content-wrapper .tab-heading, .team-3col .testimonials-3col .t-item .t-image .t-description .content-wrapper blockquote footer cite, .testimonials-3col .team-3col .t-item .t-image .t-description .content-wrapper blockquote footer cite, .team-3col .testimonials-3col .t-item blockquote footer .t-image .t-description .content-wrapper cite, .testimonials-3col .team-3col .t-item blockquote footer .t-image .t-description .content-wrapper cite, .team-4col .testimonials-3col .t-item .t-image .t-description .content-wrapper blockquote footer cite, .testimonials-3col .team-4col .t-item .t-image .t-description .content-wrapper blockquote footer cite, .team-4col .testimonials-3col .t-item blockquote footer .t-image .t-description .content-wrapper cite, .testimonials-3col .team-4col .t-item blockquote footer .t-image .t-description .content-wrapper cite, .freelancer-about .testimonials-3col .t-item .t-image .t-description .content-wrapper blockquote footer cite, .testimonials-3col .freelancer-about .t-item .t-image .t-description .content-wrapper blockquote footer cite, .freelancer-about .testimonials-3col .t-item blockquote footer .t-image .t-description .content-wrapper cite, .testimonials-3col .freelancer-about .t-item blockquote footer .t-image .t-description .content-wrapper cite, .team-3col .testimonials-3col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .team-3col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .team-3col .testimonials-3col .t-item .wrapper-404 .t-image .t-description .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .team-3col .t-item .wrapper-404 .t-image .t-description .content-wrapper .info-wrapper .info-404 footer cite, .team-4col .testimonials-3col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .team-4col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .team-4col .testimonials-3col .t-item .wrapper-404 .t-image .t-description .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .team-4col .t-item .wrapper-404 .t-image .t-description .content-wrapper .info-wrapper .info-404 footer cite, .freelancer-about .testimonials-3col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .freelancer-about .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .freelancer-about .testimonials-3col .t-item .wrapper-404 .t-image .t-description .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .freelancer-about .t-item .wrapper-404 .t-image .t-description .content-wrapper .info-wrapper .info-404 footer cite, .team-3col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer cite, .wrapper-404 .team-3col .t-item .t-image .t-description .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer cite, .team-4col .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer cite, .wrapper-404 .team-4col .t-item .t-image .t-description .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer cite, .freelancer-about .t-item .t-image .t-description .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer cite, .wrapper-404 .freelancer-about .t-item .t-image .t-description .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer cite, .team-3col .testimonials-3col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner p footer cite, .testimonials-3col .team-3col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner p footer cite, .team-3col .testimonials-3col .t-item .bg-maintenance .t-image .t-description .content-wrapper .content-inner p footer cite, .testimonials-3col .team-3col .t-item .bg-maintenance .t-image .t-description .content-wrapper .content-inner p footer cite, .team-4col .testimonials-3col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner p footer cite, .testimonials-3col .team-4col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner p footer cite, .team-4col .testimonials-3col .t-item .bg-maintenance .t-image .t-description .content-wrapper .content-inner p footer cite, .testimonials-3col .team-4col .t-item .bg-maintenance .t-image .t-description .content-wrapper .content-inner p footer cite, .freelancer-about .testimonials-3col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner p footer cite, .testimonials-3col .freelancer-about .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner p footer cite, .freelancer-about .testimonials-3col .t-item .bg-maintenance .t-image .t-description .content-wrapper .content-inner p footer cite, .testimonials-3col .freelancer-about .t-item .bg-maintenance .t-image .t-description .content-wrapper .content-inner p footer cite, .team-3col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item p footer cite, .bg-maintenance .team-3col .t-item .t-image .t-description .content-wrapper .content-inner .testimonials-3col .t-item p footer cite, .team-4col .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item p footer cite, .bg-maintenance .team-4col .t-item .t-image .t-description .content-wrapper .content-inner .testimonials-3col .t-item p footer cite, .freelancer-about .t-item .t-image .t-description .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item p footer cite, .bg-maintenance .freelancer-about .t-item .t-image .t-description .content-wrapper .content-inner .testimonials-3col .t-item p footer cite, .team-3col .t-item .t-image .t-description .content-wrapper .t-info .t-role, .team-3col .t-item .t-info .t-image .t-description .content-wrapper .t-role, .team-4col .t-item .t-image .t-description .content-wrapper .t-info .t-role, .team-4col .t-item .t-info .t-image .t-description .content-wrapper .t-role, .freelancer-about .t-item .t-image .t-description .content-wrapper .t-info .t-role, .freelancer-about .t-item .t-info .t-image .t-description .content-wrapper .t-role, .t-join .t-info .team-3col .t-item .t-image .t-description .content-wrapper .t-role, .t-join .t-info .team-4col .t-item .t-image .t-description .content-wrapper .t-role, .t-join .t-info .freelancer-about .t-item .t-image .t-description .content-wrapper .t-role, .team-3col .t-item .t-image .t-description .content-wrapper .login-2 .bg-overlay .form-wrapper .form-content .cards-header, .login-2 .bg-overlay .form-wrapper .form-content .team-3col .t-item .t-image .t-description .content-wrapper .cards-header, .team-4col .t-item .t-image .t-description .content-wrapper .login-2 .bg-overlay .form-wrapper .form-content .cards-header, .login-2 .bg-overlay .form-wrapper .form-content .team-4col .t-item .t-image .t-description .content-wrapper .cards-header, .freelancer-about .t-item .t-image .t-description .content-wrapper .login-2 .bg-overlay .form-wrapper .form-content .cards-header, .login-2 .bg-overlay .form-wrapper .form-content .freelancer-about .t-item .t-image .t-description .content-wrapper .cards-header, .team-3col .t-item .t-image .t-description .content-wrapper .login-2 .bg-overlay .form-wrapper .social-signup .social-card .sc-lead, .login-2 .bg-overlay .form-wrapper .social-signup .social-card .team-3col .t-item .t-image .t-description .content-wrapper .sc-lead, .team-4col .t-item .t-image .t-description .content-wrapper .login-2 .bg-overlay .form-wrapper .social-signup .social-card .sc-lead, .login-2 .bg-overlay .form-wrapper .social-signup .social-card .team-4col .t-item .t-image .t-description .content-wrapper .sc-lead, .freelancer-about .t-item .t-image .t-description .content-wrapper .login-2 .bg-overlay .form-wrapper .social-signup .social-card .sc-lead, .login-2 .bg-overlay .form-wrapper .social-signup .social-card .freelancer-about .t-item .t-image .t-description .content-wrapper .sc-lead {
  margin: 0;
  padding-bottom: 25px;
}

.team-4col .t-item .t-info, .freelancer-about .t-item .t-info {
  padding: 25px 30px;
}

.team-4col .t-item .t-info h4, .freelancer-about .t-item .t-info h4, .team-3col .t-item .t-info .ft-tabs .tabs-list li a .tab-group .tab-heading, .ft-tabs .tabs-list li a .tab-group .team-3col .t-item .t-info .tab-heading, .team-4col .t-item .t-info .ft-tabs .tabs-list li a .tab-group .tab-heading, .ft-tabs .tabs-list li a .tab-group .team-4col .t-item .t-info .tab-heading, .freelancer-about .t-item .t-info .ft-tabs .tabs-list li a .tab-group .tab-heading, .ft-tabs .tabs-list li a .tab-group .freelancer-about .t-item .t-info .tab-heading, .team-3col .testimonials-3col .t-item .t-info blockquote footer cite, .testimonials-3col .team-3col .t-item .t-info blockquote footer cite, .team-3col .testimonials-3col .t-item blockquote footer .t-info cite, .testimonials-3col .team-3col .t-item blockquote footer .t-info cite, .team-4col .testimonials-3col .t-item .t-info blockquote footer cite, .testimonials-3col .team-4col .t-item .t-info blockquote footer cite, .team-4col .testimonials-3col .t-item blockquote footer .t-info cite, .testimonials-3col .team-4col .t-item blockquote footer .t-info cite, .freelancer-about .testimonials-3col .t-item .t-info blockquote footer cite, .testimonials-3col .freelancer-about .t-item .t-info blockquote footer cite, .freelancer-about .testimonials-3col .t-item blockquote footer .t-info cite, .testimonials-3col .freelancer-about .t-item blockquote footer .t-info cite, .team-3col .testimonials-3col .t-item .t-info .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .team-3col .t-item .t-info .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .team-3col .testimonials-3col .t-item .wrapper-404 .content-wrapper .info-wrapper .info-404 footer .t-info cite, .testimonials-3col .team-3col .t-item .wrapper-404 .content-wrapper .info-wrapper .info-404 footer .t-info cite, .team-4col .testimonials-3col .t-item .t-info .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .team-4col .t-item .t-info .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .team-4col .testimonials-3col .t-item .wrapper-404 .content-wrapper .info-wrapper .info-404 footer .t-info cite, .testimonials-3col .team-4col .t-item .wrapper-404 .content-wrapper .info-wrapper .info-404 footer .t-info cite, .freelancer-about .testimonials-3col .t-item .t-info .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .testimonials-3col .freelancer-about .t-item .t-info .wrapper-404 .content-wrapper .info-wrapper .info-404 footer cite, .freelancer-about .testimonials-3col .t-item .wrapper-404 .content-wrapper .info-wrapper .info-404 footer .t-info cite, .testimonials-3col .freelancer-about .t-item .wrapper-404 .content-wrapper .info-wrapper .info-404 footer .t-info cite, .team-3col .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .t-info .info-404 footer cite, .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .team-3col .t-item .t-info .info-404 footer cite, .team-3col .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer .t-info cite, .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .team-3col .t-item .info-404 footer .t-info cite, .team-4col .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .t-info .info-404 footer cite, .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .team-4col .t-item .t-info .info-404 footer cite, .team-4col .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer .t-info cite, .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .team-4col .t-item .info-404 footer .t-info cite, .freelancer-about .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .t-info .info-404 footer cite, .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .freelancer-about .t-item .t-info .info-404 footer cite, .freelancer-about .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .t-item .info-404 footer .t-info cite, .wrapper-404 .content-wrapper .info-wrapper .testimonials-3col .freelancer-about .t-item .info-404 footer .t-info cite, .team-3col .testimonials-3col .t-item .t-info .bg-maintenance .content-wrapper .content-inner p footer cite, .testimonials-3col .team-3col .t-item .t-info .bg-maintenance .content-wrapper .content-inner p footer cite, .team-3col .testimonials-3col .t-item .bg-maintenance .content-wrapper .content-inner p footer .t-info cite, .testimonials-3col .team-3col .t-item .bg-maintenance .content-wrapper .content-inner p footer .t-info cite, .team-4col .testimonials-3col .t-item .t-info .bg-maintenance .content-wrapper .content-inner p footer cite, .testimonials-3col .team-4col .t-item .t-info .bg-maintenance .content-wrapper .content-inner p footer cite, .team-4col .testimonials-3col .t-item .bg-maintenance .content-wrapper .content-inner p footer .t-info cite, .testimonials-3col .team-4col .t-item .bg-maintenance .content-wrapper .content-inner p footer .t-info cite, .freelancer-about .testimonials-3col .t-item .t-info .bg-maintenance .content-wrapper .content-inner p footer cite, .testimonials-3col .freelancer-about .t-item .t-info .bg-maintenance .content-wrapper .content-inner p footer cite, .freelancer-about .testimonials-3col .t-item .bg-maintenance .content-wrapper .content-inner p footer .t-info cite, .testimonials-3col .freelancer-about .t-item .bg-maintenance .content-wrapper .content-inner p footer .t-info cite, .team-3col .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item .t-info p footer cite, .bg-maintenance .content-wrapper .content-inner .testimonials-3col .team-3col .t-item .t-info p footer cite, .team-3col .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item p footer .t-info cite, .bg-maintenance .content-wrapper .content-inner .testimonials-3col .team-3col .t-item p footer .t-info cite, .team-4col .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item .t-info p footer cite, .bg-maintenance .content-wrapper .content-inner .testimonials-3col .team-4col .t-item .t-info p footer cite, .team-4col .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item p footer .t-info cite, .bg-maintenance .content-wrapper .content-inner .testimonials-3col .team-4col .t-item p footer .t-info cite, .freelancer-about .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item .t-info p footer cite, .bg-maintenance .content-wrapper .content-inner .testimonials-3col .freelancer-about .t-item .t-info p footer cite, .freelancer-about .bg-maintenance .content-wrapper .content-inner .testimonials-3col .t-item p footer .t-info cite, .bg-maintenance .content-wrapper .content-inner .testimonials-3col .freelancer-about .t-item p footer .t-info cite, .team-3col .t-item .t-info .t-role, .team-4col .t-item .t-info .t-role, .freelancer-about .t-item .t-info .t-role, .team-3col .t-item .t-info .login-2 .bg-overlay .form-wrapper .form-content .cards-header, .login-2 .bg-overlay .form-wrapper .form-content .team-3col .t-item .t-info .cards-header, .team-4col .t-item .t-info .login-2 .bg-overlay .form-wrapper .form-content .cards-header, .login-2 .bg-overlay .form-wrapper .form-content .team-4col .t-item .t-info .cards-header, .freelancer-about .t-item .t-info .login-2 .bg-overlay .form-wrapper .form-content .cards-header, .login-2 .bg-overlay .form-wrapper .form-content .freelancer-about .t-item .t-info .cards-header, .team-3col .t-item .t-info .login-2 .bg-overlay .form-wrapper .social-signup .social-card .sc-lead, .login-2 .bg-overlay .form-wrapper .social-signup .social-card .team-3col .t-item .t-info .sc-lead, .team-4col .t-item .t-info .login-2 .bg-overlay .form-wrapper .social-signup .social-card .sc-lead, .login-2 .bg-overlay .form-wrapper .social-signup .social-card .team-4col .t-item .t-info .sc-lead, .freelancer-about .t-item .t-info .login-2 .bg-overlay .form-wrapper .social-signup .social-card .sc-lead, .login-2 .bg-overlay .form-wrapper .social-signup .social-card .freelancer-about .t-item .t-info .sc-lead {
  margin: 0;
}

.team-4col .t-item .t-info .t-name {
  font-size: 16px;
}

.team-4col .t-item .t-info .t-role {
  display: block;
  font-size: 13px;
  letter-spacing: 1.5px;
  color: #666;
}

.team-4col .t-item .t-info .social-links {
  margin: 0;
  padding: 15px 0 0 0;
  list-style: none;
}

.team-4col .t-item .t-info .social-links li {
  display: inline-block;
}

.team-4col .t-item .t-info .social-links li a {
  display: block;
  padding-right: 12px;
  font-size: 21px;
  color: #111;
}

.team-4col .t-item .t-info .social-links li a:hover, .freelancer-about .t-item .t-info .social-links li a:hover {
  color: #999;
}

/* ---- 14.2 Team - 4 Columns ---- */
.team-4col .t-item .t-image {
  height: 375px;
}

.team-4col .t-item .t-image .t-description {
  padding: 50px 30px 30px 30px;
  bottom: -100%;
}

.team-4col .t-item .t-info {
  padding: 30px;
}

.team-4col .t-item .t-info .t-name {
  font-size: 1.6em;
  font-weight: 600;
}

.team-4col .t-item .t-info .t-role {
  font-size: 0.9em;
}

.team-4col .t-item .t-info .social-links {
  padding-top: 7px;
}

.team-4col .t-item .t-info .social-links li a {
  padding-right: 10px;
  font-size: 19px;
}

.t-join {
  display: block;
  background: #fff;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
}

.t-join:hover {
  -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px);
  box-shadow: 0 22px 43px rgba(0, 0, 0, 0.15);
}



/*---TEXT MASK ON VIDEO ---*/

.background_video {
  position: absolute;
  width: 100%;
  height: 100vh;
  background-color: #e2e0db;
  z-index: 0;
}

.masked-video {
  position: relative;
  width: 56vw; /* 60% of viewport width */
  height: auto;
  max-height: 200px;
  aspect-ratio: 16 / 9; /* optional: maintain video aspect ratio */
  object-fit: cover;
  display: block;
  margin: 0 auto; /* center horizontally */
  mask: url(#shape-mask);
  -webkit-mask: url(#shape-mask);
  mask-size: 100% 100%;
  -webkit-mask-size: 100% 100%;
  mask-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  z-index: 1;
}

.intro_text_center {
  position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    text-align: center;
    bottom: 5rem;
}



/*--- HORIZONTAL SCROLLER ---*/

.horizontal-sliders{
  display:flex;
  flex-wrap:no-wrap;
  overflow-x:hidden;
}
.slide {
  height:100vh;
  width:100%;
  display:flex;
  align-items: center;
}


/* horizontal scroll */

#horizontal-scoll {
  /*padding: 200px 0;*/
}

.horizontal-scoll-wrapper {
  overflow: hidden;
  /*height: 525px;*/
  padding-bottom: 3rem;
}

.horizontal {
  display: flex;
  /*height: 100%;*/
}

.horizontal > div.expertise_item {
  display: flex;
  flex-shrink: 0;
  padding: 0 10px;
}

.horizontal > div.expertise_item:first-child {
  padding: 0 5px 0 15px;
}

.horizontal > div.expertise_item:last-child {
  padding: 0 15px 0 5px;
}
/*
@media screen and (min-width: 180px) {
  .horizontal > div.expertise_item {
    width: 90vw;
  }
}
@media screen and (min-width: 576px) {
  .horizontal > div.expertise_item {
    width: 46vw;
  }
}
@media screen and (min-width: 768px) {
  .horizontal > div.expertise_item {
    width: 40vw;
  }
}
@media screen and (min-width: 992px) {
  .horizontal > div.expertise_item {
    width: 26vw;
  }
}
@media screen and (min-width: 1200px) {
  .horizontal > div.expertise_item {
    width: 26vw;
  }
}
@media screen and (min-width: 1400px) {
  .horizontal > div.expertise_item {
    width: 26vw;
  }
}
@media screen and (min-width: 1600px) {
  .horizontal > div.expertise_item {
    width: 30vw;
  }
}*/

/*---HOVER EFFECTS ---*/

/*
-----------------
common style
-----------------
*/

.side_menu {
	list-style: none;
  margin-top: 2rem;
}
.side_menu img {
	height: 36px;
  margin: auto;
  position: absolute;
  left: 0;
  right: 0;
  top: 50%;
  -webkit-transition: -webkit-transform 0.35s, color 0.35s;
	transition: transform 0.35s, color 0.35s;
	-webkit-transform: translate3d(0,-50%,0);
	transform: translate3d(0,-50%,0);
}
.side_menu a:hover img {
  -webkit-transform: translate3d(0,-50%,0) translate3d(0,-12px,0);
	transform: translate3d(0,-50%,0) translate3d(0,-12px,0);
}
.side_menu a {
	color: #333;
	font-family: Lato;
	font-size: 17pt;
	font-weight: 400;
	padding: 15px 25px;
	/**/
	position: relative;
	display: block;
	text-decoration: none;
	text-transform: uppercase;
}



/*
---------------------------------------
hover effect 5
---------------------------------------
*/

.side_menu a {
	/*padding: 18px 20px;*/
  height: 120px;
}

.side_menu a:before, .side_menu a:after {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #333;
	content: '';
	opacity: 0.2;
	-webkit-transition: opacity 0.3s, height 0.3s;
	-moz-transition: opacity 0.3s, height 0.3s;
	transition: opacity 0.3s, height 0.3s;
}

.side_menu a:after {
	top: 100%;
	opacity: 0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
	-moz-transition: -moz-transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s;
	-webkit-transform: translateY(-10px);
	-moz-transform: translateY(-10px);
	transform: translateY(-10px);
}
.side_menu a span {
	
  line-height: 1.2em;
  font-size: 1.2em;
}
.side_menu a span:first-child {
	z-index: 2;
	display: block;
	font-weight: 300;
}

.side_menu a span:last-child {
	z-index: 1;
	display: block;
	padding: 54px 0 0 0;
	color: #666;
	text-shadow: none;
	text-transform: none;
	font-size: 0.75em;
	opacity: 0;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
	-moz-transition: -moz-transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s;
	-webkit-transform: translateY(-18%);
	-moz-transform: translateY(-18%);
	transform: translateY(-18%);
}

.side_menu a:hover:before, .side_menu a:focus:before {
	height: 6px;
}

.side_menu a:hover:before, .side_menu a:hover:after, .side_menu a:focus:before, .side_menu a:focus:after {
	opacity: 1;
	-webkit-transform: translateY(0px);
	-moz-transform: translateY(0px);
	transform: translateY(0px);
}

.side_menu a:hover span:last-child, .side_menu a:focus span:last-child {
	opacity: 1;
	-webkit-transform: translateY(0%);
	-moz-transform: translateY(0%);
	transform: translateY(0%);
}

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

.grid {
	position: relative;
	margin: 0 auto;
	padding: 1em 0 4em;
	max-width: 1000px;
	list-style: none;
	text-align: center;
}

/* Common style */
.grid figure {
	position: relative;
	float: left;
	overflow: hidden;
	margin: 10px 1%;
	min-width: 320px;
	max-width: 480px;
	max-height: 360px;
	width: 48%;
	background: #3085a3;
	text-align: center;
	cursor: pointer;
}

.grid figure img {
	position: relative;
	display: block;
	min-height: 100%;
	max-width: 100%;
	opacity: 0.8;
}

.grid figure figcaption {
	padding: 2em;
	color: #fff;
	text-transform: uppercase;
	font-size: 1.25em;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.grid figure figcaption::before,
.grid figure figcaption::after {
	pointer-events: none;
}

.grid figure figcaption,
.grid figure figcaption > a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* Anchor will cover the whole item by default */
/* For some effects it will show as a button */
.grid figure figcaption > a {
	z-index: 1000;
	text-indent: 200%;
	white-space: nowrap;
	font-size: 0;
	opacity: 0;
}

.grid figure h2 {
	word-spacing: -0.15em;
	font-weight: 300;
}

.grid figure h2 span {
	font-weight: 800;
}

.grid figure h2,
.grid figure p {
	margin: 0;
}

.grid figure p {
	letter-spacing: 1px;
	font-size: 68.5%;
}

/*---------------*/
/***** Sadie *****/
/*---------------*/

figure.effect-sadie figcaption::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-linear-gradient(top, rgba(72,76,97,0) 0%, rgba(72,76,97,0.8) 75%);
	background: linear-gradient(to bottom, rgba(72,76,97,0) 0%, rgba(72,76,97,0.8) 75%);
	content: '';
	opacity: 0;
	-webkit-transform: translate3d(0,50%,0);
	transform: translate3d(0,50%,0);
}

figure.effect-sadie h2 {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	color: #484c61;
	-webkit-transition: -webkit-transform 0.35s, color 0.35s;
	transition: transform 0.35s, color 0.35s;
	-webkit-transform: translate3d(0,-50%,0);
	transform: translate3d(0,-50%,0);
}

figure.effect-sadie figcaption::before,
figure.effect-sadie p {
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}

figure.effect-sadie p {
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 2em;
	width: 100%;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
}

figure.effect-sadie:hover h2 {
	color: #fff;
	-webkit-transform: translate3d(0,-50%,0) translate3d(0,-40px,0);
	transform: translate3d(0,-50%,0) translate3d(0,-40px,0);
}

figure.effect-sadie:hover figcaption::before ,
figure.effect-sadie:hover p {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}


.img_card {
  border-radius:8px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 3rem;
  height: 400px;
  position:relative;
  overflow: hidden;
}
.img_card figcaption > a {
    z-index: 1000;
    text-indent: 200%;
    white-space: nowrap;
    font-size: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.img_card p {
  position: absolute;
  padding: 0 2rem;
  text-align: left;
  width: 100%;
  left: 0;
}
.img_card .tagline {
  top: 2rem;
  width: fit-content;
  background-color: #7de5ff;
  border-radius: 4px;
  padding: 0 0.4rem;
  left: 2rem;
}
.img_card .title {
  top: 250px;
	left: 0;
	width: 100%;
	color: #fff;
	-webkit-transition: -webkit-transform 0.35s, color 0.35s;
	transition: transform 0.35s, color 0.35s;
	-webkit-transform: translate3d(0,-50%,0);
	transform: translate3d(0,-50%,0);
  white-space: normal; /* allow wrapping */
  word-wrap: break-word; /* break long words if needed */
  overflow-wrap: break-word; /* modern equivalent */
  text-shadow: -3px 3px 6px rgba(0,0,0,0.3);
}
.img_card .intro {
  position: absolute;
	bottom: 0;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}
.img_card:hover .title {
  -webkit-transform: translate3d(0,-150px,0);
	transform: translate3d(0,-150px,0);
}
.img_card p.intro {
	color:#fff;
	padding: 2em;
	width: 100%;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
}
.img_card:hover p.intro {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.img_card figcaption::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-linear-gradient(top, rgba(72,76,97,0) 0%, rgba(0,0,0,0.8) 75%);
	background: linear-gradient(to bottom, rgba(72,76,97,0) 0%, rgba(0,0,0,0.8) 75%);
	content: '';
	opacity: 1;
	-webkit-transform: translate3d(0,50%,0);
	transform: translate3d(0,50%,0);
}
.img_card:hover figcaption::before {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}


/*---VECTOR CARD---*/

.vector_card {
  border-radius:8px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  padding: 2.5rem;
  min-height: 440px;
  position:relative;
  overflow: hidden;
  width: 100%;
  background: #fff;
  box-shadow: 0px 1px 1px rgba(0, 0, 0, 0.2);
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
}
.vector_card .img_holder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
}

.vector_card:hover {
  -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px);
  box-shadow: 0 22px 43px rgba(0, 0, 0, 0.15);
}
.vector_card figcaption > a {
    z-index: 1000;
    text-indent: 200%;
    white-space: nowrap;
    font-size: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.vector_card p {
  position: absolute;
  z-index: 10;
  padding: 0 2.5rem;
  width: 100%;
  left: 0;
}
.vector_card .labels {
  position: absolute;
  z-index: 10;
  width: 100%;
  left: 0;
}
@media screen and (max-width: 576px) {
  .vector_card p.text_top {
    width: 84%;
  }
}
.vector_card .icon {
  position: absolute;
  top: 2rem;
  right: 2rem;
  width: 22%;
  max-width: 120px;
  min-width: 80px;
  z-index: 1;
}
@media screen and (min-width: 180px) {
  .vector_card .tri {
    position: absolute;
    top: 2rem;
    right: 0rem;
    width: 72%;
    z-index: 1;
    background-size: cover;
    background-repeat: no-repeat;
  }
  .vector_card .client_logo {
    display: block;
    /*position: absolute;
    top: 6rem;
    left: 2.5rem;
    width: 90%;
    display: flex;
    height: 70px;*/
  }
  .vector_card .client_logo img {
    width: 100%;
    max-width: 120px;
    max-height: 70px;
  }
  
}
.vector_card.bg-warning .text-white {
  color:#292f30!important;
}
@media screen and (min-width: 576px) {
  .vector_card .tri {
    width: 52%;
  }
}
.vector_card a {
  color: initial;
}

.vector_card.cases .tri {
  position: absolute;
  top: 2rem;
  right: 0rem;
  width: 64%;
  z-index: 1;
}
.vector_card .icon img {
  width: 100%;
}
.vector_card .tri img {
  width: 100%;
}
.vector_card .tagline {
  top: 2rem;
  border-radius: 4px;
  font-size: 0.8rem !important;
  width: fit-content;
  margin: auto;
  padding:0;
  line-height: 1.6;
  z-index: 10;
  position: absolute;
}
.vector_card .tagline div {
  display:inline-block;
  padding: .25rem .5rem;
  border-radius: 0.375rem;
}

.vector_card .title {
  bottom: 60px;
	left: 0;
	width: 100%;
	-webkit-transition: -webkit-transform 0.35s, color 0.35s;
	transition: transform 0.35s, color 0.35s;
	/*-webkit-transform: translate3d(0,-50%,0);
	transform: translate3d(0,-50%,0);*/
  white-space: normal; /* allow wrapping */
  word-wrap: break-word; /* break long words if needed */
  overflow-wrap: break-word; /* modern equivalent */
}

.vector_card .intro {
  position: absolute;
	bottom: 0;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}
.vector_card:hover .title {
  -webkit-transform: translate3d(0,-90px,0);
	transform: translate3d(0,-90px,0);
}
.vector_card p.intro {
	top: 70%;
	color:#333;
	padding: 0 2.5em;
	width: 100%;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
}
.vector_card:hover p.intro {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.badge {
  font-size: 0.8rem!important;
}

@media screen and (min-width: 180px) {
  .vector_card .vertical { height:50px }
}
@media screen and (min-width: 576px) {
  .vector_card .vertical { height:64px }
}
@media screen and (min-width: 768px) {
  .vector_card .vertical { height:40px }
}
@media screen and (min-width: 992px) {
  .vector_card .vertical { height:42px }
}
@media screen and (min-width: 1400px) {
  .vector_card .vertical { height:54px }
}
@media screen and (min-width: 1600px) {
  .vector_card .vertical { height:56px }
}
@media screen and (min-width: 2000px) {
  .vector_card .vertical { height:64px }
}

/*
.vector_card figcaption::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: -webkit-linear-gradient(top, rgba(72,76,97,0) 0%, rgba(72,76,97,0.8) 75%);
	background: linear-gradient(to bottom, rgba(72,76,97,0) 0%, rgba(72,76,97,0.8) 75%);
	content: '';
	opacity: 0;
	-webkit-transform: translate3d(0,50%,0);
	transform: translate3d(0,50%,0);
}
.vector_card:hover figcaption::before {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}*/

/* HOVER CARD */

.hover_card {
  position:relative;
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
}
.hover_card:hover {
  -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px);
          background-color: #ffdd00;
}

/*---PROFILE CARD---*/

.profile_card {
  position:relative;
  -webkit-transition: all 0.3s;
          transition: all 0.3s;
}
.profile_card:hover {
  -webkit-transform: translateY(-10px);
      -ms-transform: translateY(-10px);
          transform: translateY(-10px);
}
.profile_card figcaption > a {
    z-index: 1000;
    text-indent: 200%;
    white-space: nowrap;
    font-size: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.profile_card p {
}

.profile_card .tri {
  position: absolute;
  top: 2rem;
  right: 0rem;
  width: 52%;
  z-index: 1;
}
.profile_card .tagline {
  top: 2rem;
  border-radius: 4px;
  width: fit-content;
  background-color: #7de5ff;
  margin: auto;
  padding:0 1rem
}
.profile_card .title {
  top: 70%;
	left: 0;
	width: 100%;
	-webkit-transition: -webkit-transform 0.35s, color 0.35s;
	transition: transform 0.35s, color 0.35s;
	-webkit-transform: translate3d(0,-50%,0);
	transform: translate3d(0,-50%,0);
  white-space: normal; /* allow wrapping */
  word-wrap: break-word; /* break long words if needed */
  overflow-wrap: break-word; /* modern equivalent */
}

.profile_card .tri-description {
  position: absolute;
  z-index: 100;
	top: 106%;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}
.profile_card:hover .title {
  -webkit-transform: translate3d(0,-120px,0);
	transform: translate3d(0,-120px,0);
}
.profile_card p.intro {
	top: 70%;
	color:#333;
	padding: 0 2.5em;
	width: 100%;
	opacity: 0;
	-webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
}
.profile_card:hover p.tri-description {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

.profile_card_sm {
  position: relative;
}
.profile_card_sm .description {
  position: absolute;
  opacity: 0;
  z-index: 100;
  font-size: 80%;
  /*background: rgb(0,0,0,0.8);*/
  background-color: #fff;
  left: 0;
  right: 0;
  margin: auto;
  height: 100%;
  top: 0;
  padding: 1.4rem 2rem 1.4rem 1.4rem;
  /*color: #fff;*/
  width: 93%;
  -webkit-transform: translate3d(0,10px,0);
	transform: translate3d(0,10px,0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}
.profile_card_sm:hover {
	cursor: pointer;
}
.profile_card_sm:hover .description {
	opacity: 1;
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}

/* layout */
.wrap{position:relative; margin: 0 auto; overflow: hidden; }
.visual{/*height: 100vh; */position: relative; }
.visual .imgBox{width: 800px; position: absolute; left: 50%; transform: translate(-50%); top: 3%;perspective: 1500px; text-align: center;}
.visual .imgBox img{width: 100%;}
 .visual .titleBox{width: 100%; position: absolute; top: 12%; left: 0; line-height: 1.4;}
.visual .titleBox .en2{font-size: 64px; display: inline-block; margin-right: 10px;}
.visual .textLoop ul{display: flex; white-space: nowrap; font-weight:300; letter-spacing: -1px; list-style: none;}
@media screen and (min-width: 180px) {
  .visual .textLoop ul{font-size: 40px;}
}
@media screen and (min-width: 768px) {
  .visual .textLoop ul{font-size: 60px;}
}
@media screen and (min-width: 1200px) {
  .visual .textLoop ul{font-size: 80px;}
}
.visual .textLoop ul li{animation: textLoop 12s linear infinite; }
.visual .textLoop.reverse ul li { animation-direction: reverse; }
.visual .textLoop ul li span{padding:0 8px}
@keyframes textLoop{
  0%{transform: translate3d(0,0,0);}
  100%{transform: translate3d(-100%,0,0);}
}

.visual .textBox{width: 30%; position: absolute; right: 5%; top: 40%;}
.visual .textBox ul .top{font-size: 24px; border-bottom: 1px solid #fff;}
.visual .textBox ul .top h2{font-weight: normal;}
.visual .textBox ul li{display: flex; margin-bottom: 12px;}
.visual .textBox ul li h3{font-weight: normal; font-size: 13px; width: 120px;}
.visual .textBox ul li .en2{font-size: 18px;}
.visual .textBox ul li.mode .btnBox a{display: inline-block; border: 1px solid rgba(255,255,255,.3); padding: 0 20px; margin-right: 5px; margin-bottom: 10px;}
.visual .textBox ul li.mode .btnBox a:hover, .visual .textBox ul li.mode .btnBox a:focus{background: rgba(255, 255, 255, .3);}
.visual .textLoop2{position: absolute; bottom: 300px; left: -20px;}
.visual .textLoop2 ul{display: flex; white-space: nowrap; font-size: 70px; letter-spacing: -2px; background: rgba(255, 255, 255, 1); color: #000; position: absolute; padding: 10px 0;}
.visual .textLoop2 ul li{padding: 0 20px;}
.visual .textLoop2 ul.a{transform:  rotate(7deg); background: rgba(255, 255, 255, 0); color: #fff; border-top: 1px solid #fff; border-bottom: 1px solid #fff;}
.visual .textLoop2 ul.b{transform:  rotate(-7deg); top: -135px;}

/* animation */
.visual .textLoop2 ul.a li{animation: textLoop 6s linear infinite;}
.visual .textLoop2 ul.b li{animation: textLoop2 6s linear infinite;}
@keyframes textLoop2{
            0%{transform: translate3d(-100%,0,0);}
            100%{transform: translate3d(0,0,0);}
}

.cookie-banner {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background: #222;
  color: #fff;
  padding: 15px;
  text-align: center;
  font-size: 14px;
  z-index: 1000;
}
.cookie-banner .btn-link {
  color: #ccc!important;
  text-decoration: underline;
}
.cookie-banner .btn-link:hover {
  color: #fff!important;
  text-decoration: underline;
}
.cookie-banner button.accept {
  margin-left: 10px;
  background: transparent;
  color: #fff;
  border: 1px solid #fff;
  padding: 8px 16px;
  cursor: pointer;
  border-radius: 6px;
}
.cookie-banner button.accept:hover {
  color: #fd0;
  border: 1px solid #fd0;
}

 /*--- CONTACT FORM 7 ---*/

.wpcf7-form label {
    display: block
}
.wpcf7-form-control {
    padding: 0.5rem 0.75rem;
    background-color: #f5f8fd!important;
    line-height: 1;
    font-weight: 400;    
    display: block;
    width: 100%;
    /*height: calc(1.5em + 0.75rem + 2px);*/
    font-size: 1rem;
    color: #495057;
    border: 1px solid #ced4da;
    border-radius: 0.25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.wpcf7-submit {
    display: block;
    width: auto;
    color: #fff!important;
    background-color: #242d3b!important;
    border-color: #242d3b!important;
    float:right;
    margin-top: 20px;
    font-weight: 600;
    color: #212529;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.9rem 1.9rem!important;
    font-size: 1rem;
    line-height: 1;
    border-radius: 0.25rem;
}

/*--- CONTACT FORM 7 ---*/

.wpcf7-form label {
    display: block
}
.wpcf7-form p {
    display: flex
}
.wpcf7-form-control {
    padding: 0.5rem 0.75rem;
    background-color: #f5f8fd!important;
    line-height: 1;
    font-weight: 400;    
    display: block;
    width: 100%;
    /*height: calc(1.5em + 0.75rem + 2px);*/
    font-size: 1rem;
    color: #495057;
    border: none!important;
    border-radius: 0.25rem;
    transition: border-color .15s ease-in-out,box-shadow .15s ease-in-out;
}
.wpcf7-submit {
    display: block;
    width: auto;
    color: #fff!important;
    background-color: #242d3b!important;
    border-color: #242d3b!important;
    float:right;
    margin-top: 20px;
    font-weight: 600;
    color: #212529;
    text-align: center;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 0.9rem 1.9rem!important;
    font-size: 1rem;
    line-height: 1;
    border-radius: 0.25rem;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #aae5b4;
}
.wpcf7 form .wpcf7-response-output {
    margin: 2em 0;
    padding: 0.6em 0.8em;
    border: 2px solid #7de5ff;
    display: inline-flex;
}

/*--- NAV PILLS ---*/

.nav-pills .nav-link {
    color: #2D2D2D;
    font-size: 1.75rem;
    text-transform: initial;
    font-weight: 500;
}

.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
    color: #2D2D2D!important;
    background-color: #ffdd00;
}

/*CLIENTS*/

/* --- Base layout --- */
.logo-marquee {
  overflow: hidden;
  width: 100%;
  padding: 26px 0;
  margin-bottom: 0px;
  position: relative;  
}

.marquee__track {
  display: flex;
  gap: 0;               /* no gaps between duplicated groups */
  list-style: none;
  margin: 0;
  padding: 0;
  will-change: transform;
  align-items: center;
}

.marquee__group {
  display: flex;
  flex: 0 0 auto;
  white-space: nowrap;
  align-items: center;
}

.marquee__group span { 
  /*max-width: 200px;*/
  display: flex;
  justify-content: center;
  /*background: rgb(255,255,255,0.2);*/
}

.marquee__group img {
  max-height: 58px;
  max-width: 160px;
  margin: 0 2.4rem;
  display: block;
}

/* --- Animations --- */
/* Move by 50% because content is duplicated once */
.marquee--left  .marquee__track { animation: marquee-left 15s linear infinite; }
.marquee--right .marquee__track { animation: marquee-right 15s linear infinite; }

/* Vary speeds if you want subtle difference:
   e.g., .marquee--right .marquee__track { animation-duration: 18s; } */

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

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

/* --- Optional: pause on hover --- */
.logo-marquee:hover .marquee__track {
  animation-play-state: paused;
}

/* --- Accessibility: respect reduced motion --- */
@media (prefers-reduced-motion: reduce) {
  .marquee__track { animation: none; transform: translateX(0) !important; }
}


/*--- MARQUEE ---*/

.marquee { 
  border-radius: 8px; 
  padding: 10px 12px; 
  margin-bottom: 18px; 
  overflow: hidden; 
  position: relative; }

.wrap--logobar { 
  height: 74px; 
  overflow: hidden; 
  position: relative; 
}

.list { 
  list-style: none; 
  display: flex; 
  align-items:center;
  margin: 0; 
  padding: 0; 
  position: relative; 
  left: 0; will-change: transform; 

}

.list__item { 
  flex: 0 0 auto; 
  padding: 12px 20px; 
  text-align: center; 
  width: 220px; 
  user-select: none; 
  -webkit-user-select: none; 
}

.list__item img { 
  width: 100%;
  max-width: 140px;
  max-height: 70px;
}

@media (prefers-reduced-motion: reduce) { 
  .list { transition: none !important; } 
}


/*---*/
.owl-item .overflow-visible-element {
  position: absolute;      /* remove from flow so it won't push heights */
  left: 50%;
  transform: translateX(-50%);
  top: -20px;              /* or whatever makes it visible */
  z-index: 10;
}
.owl-carousel { position: relative; } /* parent for absolutely positioned children */

