/* 
Root
fonts
*/

:root {
  --mainColor: #7C2E21;
  --mainDarkColor: #7C2E21;
  --mainColorLight: #E7EEFE;
  --secondaryColor: #BADCD4;
  --terciaryColor: #C9E0F8;
  --mainBorder : #EDEAEA;
  --lightGrey : #F9F9F9;
  --grey: #F5F5F5;
  --white: #fff;
  --smooth: all 0.45s cubic-bezier(0.4, 0, 0, 1);
  --border-radius: 8px;
  --smoothT: cubic-bezier(0.4, 0, 0, 1);
  --mainGradient: linear-gradient(180deg,rgba(255, 254, 250, 1) 15%, rgba(124, 46, 33, 1) 100%);
  --secondaryGradient: linear-gradient(92deg, var(--mainColor) 17.73%, var(--terciaryColor) 93.54%);

}

/* Hide all scrollbars */
* {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none;  /* Internet Explorer 10+ */
}

*::-webkit-scrollbar { 
  display: none;  /* Safari and Chrome */
}

@font-face {
    font-family: 'Everett';
    src: url(./fonts/TWKEverett-Regular.woff) format('woff'),;
    font-weight: 400;
    font-style: normal;
}

@font-face {
  font-family: 'Everett';
  src: url(./fonts/TWKEverett-Light.woff) format('woff'),;
  font-weight: 300;
  font-style: light;
}

@font-face {
    font-family: 'Editorial New';
    font-weight: 600;
    src: url(./fonts/GTSuperDisplay-Light.woff) format('woff'),
}



* {
    font-family: 'Everett', Helvetica, sans-serif;
    /* background-color: #000 !important; */
    /* color: #fff; */
    font-weight: normal;
    font-weight: 300;
}

.editorial-new {
    font-family: 'Editorial New', sans-serif !important;
    font-weight: 300;
}

div[data-barba='container'] {
   margin-top: 109px;
}


div[data-barba='container'].mt-0 {
    margin-top: 0px;
 }
 
/* Btns */

a.btn-primary {
    margin-top: 40px;
    font-size: 16px ;
    font-weight: 500;
    padding: 10px 45px;
    border-radius: 2px;
}

.btn-primary:not(.starter){
    transition: var(--smooth)
}

a.btn-primary.main-color-bg:hover {
    background-color: var(--mainDarkColor);
    color: var(--terciaryColor);
    padding: 10px 55px;
    border-radius: 6px;

}

.white-arrow > * path {
    stroke: white !important;
}


/* Fonts */

.f0, h1.f0, h2.f0, h3.f0, h4.f0, h5.f0, h6.f0 {
    font-size: 5.8rem;
    line-height: 1;
}

.page-starter h1.f0 {
    font-size: 5.8vw;
}

.lh-1, .lh-1 * {
    line-height: 1;
}

.lh-1-2, .lh-1-2 * {
    line-height: 1.2;
}

/* Colors */

.main-color-bg, .bg-main-color {
    background: var(--mainColor);
}

.main-color {
    color: var(--mainColor);
}


.main-dark-color {
    color: var(--mainDarkColor);
}

.main-dark-color-bg {
    background: var(--mainDarkColor);
}

.main-gradient-bg, .bg-main-gradient {
    background: var(--mainGradient);
}

.secondary-gradient-bg {
    background: var(--secondaryGradient);
}

.terciary-color-bg {
    background: var(--terciaryColor);
}


.gradient-text {
    background-image: var(--mainGradient);
    -webkit-background-clip: text; /* For older versions of webkit-based browsers */
    background-clip: text; /* Apply the text as the clipping mask */
    color: transparent; /* Make the text transparent */
  }

  .secondary-gradient-text {
    background-image: var(--secondaryGradient);
    -webkit-background-clip: text; /* For older versions of webkit-based browsers */
    background-clip: text; /* Apply the text as the clipping mask */
    color: transparent; /* Make the text transparent */
  }

  /* .pre-load > div:not(:last-child) {
    width: 33.33333%;
} */


/* Menu Mobile */

header#masthead {
    padding-top: 10px;
    padding-bottom: 10px;
    max-height: 125px;
  }

    
  header {
    padding: 35px 4rem !important;
}
  
  header.scrolled, .alerts-container.scrolled {
   padding: 15px 2rem !important;
    background-color: white;
    top: 0;
   /* --tw-shadow: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
   --tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);
   box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow); */
  }
  
  
  header.menu-open svg path {
    /* fill: #000; */
  }
  
  .menu-trigger span {
    width: 28px;
    height: 2px;
    margin-bottom: 3px;
    background-color: var(--mainColor);
    transition: all 0.5s cubic-bezier(0.075, 0.82, 0.165, 1);
  }
  

  .menu-trigger:hover span {
    background-color: var(--mainColor);
  }
  
  
  .progress {
    z-index: 9999999;
    top: 54px;
  }

 
  
  .menu-container {
    padding: 0px 20px;
  }
  
  .menu-container,
  .menu-container .bg-main-color {
    z-index: 99;
  }
  
  .menu-container .bg-main-color {
    transform: scaleX(0);
    transform-origin: left;
  }
  
  .side-menu {
    z-index: 100;
  }
  
  #side-menu {
    width: 100%;
    margin-top: 100px;
  }
  
  ul.menu-nav > li {
    margin-bottom: 20px;
    overflow: hidden;
    transform: translateY(40px);
    width: 100%;
    display: flex;
  }
  
  ul.menu-nav li a {
    font-size: 5vw;
    color: #fff;
    text-decoration: none;
    font-weight: medium;
    transform: translateY(150%);
  }

  .menu-header {
    transform: translateY(40px)
  }

  .menu-header > * {
    transform: translateY(150%);
  }
  
  #side-menu  .secondary-cta {
    padding: 0;
      transform: translateY(40px);
      border-radius: 0px;
      border: 0;
      transition: none !important;
  }
  
  
  .menu-item-has-children {
    position: relative;
  }
  
  .side-menu .sub-menu {
    display: none;
  }
  
  .menu-item-has-children .sub-menu {
    padding: 10px;
    background-color: #fff;
    /* border-radius: 8px; */
    border: 1px solid black;
    box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);
  }
  
  .menu-item-has-children:not(.slide-sub-menu) .sub-menu {
    margin-top: 0px;
  }
  
  .menu-item-has-children:hover .sub-menu {
    opacity: 1;
  }
  
  .sub-menu {
    position: absolute;
    left: 0%;
    top: 41px;
    padding-top: 10px;
    z-index: 101;
    opacity: 0;
    list-style-type: none;
    list-style: none;
  }
  
  .sub-menu li {
    margin-bottom: 10px;
  }
  
  .side-menu li:hover .sub-menu,
  .side-menu li:hover > a {
    opacity: 1;
  }
  
  .sub-menu li a {
    transform: translateY(0) !important;
    transition: opacity 0.3s ease;
    /* font-size: 24px !important; */
  }
  
  .sub-menu a {
    font-size: 0.875em !important;
  }
  
  .pre-load span.f0 {
    font-size: 13vw;
  }
  
  
  .heading-svg-container {
    bottom: -5%
  }


  @keyframes rotateLogo {
    from {
      transform: rotate(0deg);
    }
    to {
      transform: rotate(360deg);
    }
  }
  
  .logo-container path {
    fill: #000
  }

  #logo-o {
    animation: rotateLogo 10s linear infinite;
  }

  /* SlideShow Home shapes */

  .image-container {
    /* width: 300px;
    height: 400px; */
    overflow: hidden;
  }
  
  .image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    transition: transform 0.3s ease;
    overflow: hidden;
  }



  .image-container > div {
    /* border-radius: 6px; */
    /* opacity: 0.4;
    -webkit-filter: blur(4px);
    filter: blur(4px); */
    /* filter: blur(10px); */
    /* overflow: hidden; */
    /* filter: blur(10px); */
  }
  
  
  /* Optional: Add a hover effect */
  .image-container:hover .image {
    transform: scale(1.05);
  }



.title-container {
    display: flex;
    align-items: center;
    color: #d6e4f0; /* Light blue color */
    font-weight: 500;
  }

  .animated-line {
    display: inline-block;
    background-color: #d6e4f0; /* Same color as text */
    margin: 0 1rem; /* Space between DI and SE */
    animation: expand-contract 10s cubic-bezier(0.75, 0, 0.25, 1) infinite; /* Smooth and continuous */
  }
  
  /* Keyframes for a continuous expand-contract animation */
  @keyframes expand-contract {
    0% {
      width: 0;
    }
    50% {
      width: 100%; /* Peak at full width with no hold */
    }
    100% {
      width: 0; /* Return to 0 without pause */
    }
  }
  /* IG Grid */

  .sb_instagram_header, #sbi_load, #sb_instagram .sbi_type_video .sbi_playbtn, #sb_instagram .sbi_type_carousel .sbi_playbtn, .sbi_type_carousel .fa-clone, #sb_instagram .sbi_type_carousel .svg-inline--fa.fa-play, #sb_instagram .sbi_type_video .svg-inline--fa.fa-play {
    display: none !important;
  }


.sbi_photo {
    height: 362px !important;
    opacity: 1 !important;
}

.ig-grid-1 #sbi_images > div:nth-child(n+5) {
    display: none !important;
}

.ig-grid-2 #sbi_images > div:nth-child(-n+4) {
    display: none !important;
}

.ig-grid-2 #sbi_images > div:nth-child(n+9) {
    display: none !important;
}

.project-row:hover .clip-image {
  clip-path: inset(0) !important; /* Reveal the image fully on hover */
  -webkit-clip-path: inset(0) !important; /* For Safari */
}

.logo-slider-container, .gallery-home, .gallery-home *, .pre-load, .pre-load * {
  will-change: transform, opacity;
}

.char, .project-row {
  will-change: transform, opacity;
}

.clip-image {
  transform: scaleY(0);
  transform-origin: top;
  transition: transform 0.5s ease-in-out;
}
.group-hover .clip-image {
  transform: scaleY(1);
}

.grid-home-container {
  /* cursor: none !important; */
}

/* Custom cursor styles */
#custom-cursor {
  width: 80px;
  height: 80px;
  pointer-events: none;
  transition: transform 0.1s linear;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  z-index: 9999;
}

.long-title {
  font-size: 9vw !important;
}


@media (max-width: 768px) {

  header {
    padding: 20px !important;
  }

  div[data-barba='container'].mt-0 {
    margin-top: 150px
  }

  div[data-barba='container'].home.mt-0,   div[data-barba='container'].single.mt-0 {
    margin-top: 0px !important;
  }

  .large-title {
    font-size: 80px;
  }

  .long-title {
    font-size: 8vw !important;
  }
}

/* Hide all scrollbars */
* {
  scrollbar-width: none; /* Firefox */
  -ms-overflow-style: none;  /* Internet Explorer 10+ */
}

*::-webkit-scrollbar { 
  display: none;  /* Safari and Chrome */
}

@media (max-width: 580px) {
 .obra-info > div {
  flex-direction: column;
 }
}