/* ______________________________________________________ */
html {
  scrollbar-width: thin;
  scrollbar-color: #b8c0c8 #111827;
  background: var(--color-navi, #111827);
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-track {
  background: #111827;
}

::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, #d8d2c2 0%, #8f98a3 100%);
  border: 2px solid #111827;
  border-radius: 999px;
}

::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, #ffffff 0%, #b8c0c8 100%);
}

::-webkit-scrollbar-corner {
  background: #111827;
}

@media (min-width: 1024px) {
  #page-header.ht--hidden {
    opacity: 0 !important;
    pointer-events: none;
    transition: opacity 0.5s ease;
  }
}
/* ______________________________________________________ */
@keyframes rotate360 {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}

@keyframes opacitylogo {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.ht--intro-section-home .ht--logo-intro-callegari-home {
  /* max-width: 50% !important; */
  margin-inline: auto;
  width: fit-content;
  animation: rotate360 2s ease-out forwards;
  transform-origin: center center;
}
.ht--intro-section-home .ht--logo-intro-callegari-scritta-home {
  opacity: 0;
  animation: opacitylogo 2.1s ease-out forwards;
  animation-delay: 2.2s; /* parte un attimo dopo la rotate360 da 2s */
}

.ht--intro-section-home {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 2;
  opacity: 1;
  will-change: opacity;
  pointer-events: auto;
  transition: pointer-events 0s 0.3s; /* Disabilita click dopo il fade */
  margin: 0 !important;
  overflow: hidden;
}
html.ht--intro-video-lock,
body.ht--intro-video-lock {
  background: var(--color-navi, #111827) !important;
  overflow: hidden !important;
  overscroll-behavior: none;
  touch-action: none;
}
.ht--intro-logo-video-layer {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 100%;
  height: 100vh;
  background: var(--color-navi, #1b2432);
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.4s ease;
  overflow: hidden;
}
.ht--intro-logo-video-layer.is-ready-to-dismiss {
  pointer-events: none;
}
.ht--intro-logo-video-layer.is-finished {
  opacity: 0;
  pointer-events: none;
}
.ht--intro-logo-video {
  display: block;
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  background: var(--color-navi, #1b2432);
}

/* ______________________________________________________ */
#hero-sequence {
  height: 100vh;
  width: 100%;
  max-width: 100%;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  overflow: hidden;
}
#hero-sequence_mobile {
  height: 100vh;
  position: relative;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}
#canvas-hero-mobile {
  width: 100%;
  height: 100%;
  display: block;
}
/* :::::::::::::::::::::::::::::::::: */
.ht--hero-section-homepage .l-section-overlay {
  background: linear-gradient(
    180deg,
    rgba(27, 36, 50, 0) 22.92%,
    #1b2432 100%
  ) !important;
  z-index: 1;
  margin-bottom: -1px !important;
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::: */
.ht--aerospace-section-homepage {
  min-height: 100vh;
  width: 100% !important;
  max-width: 100% !important;
  left: 0 !important;
  background: var(--color-navi, #1b2432) !important;
  overflow: hidden;
}
.ht--aerospace-section-homepage .ht--callegari-48 {
  position: absolute;
  bottom: 0;
  max-width: 76% !important;
  margin-inline: auto;
  right: 0;
  left: 0;
}
.ht--aerospace-section-homepage .ht--moon-image-moon-section {
  position: absolute;
  max-width: 65% !important;
  width: 65% !important;
  left: 50%;
  transform: translateX(-50%);
  opacity: 0;
}
.ht--aerospace-section-homepage h1 {
  opacity: 0;
}
.ht--aerospace-section-homepage .ht--callegari-48 {
  opacity: 0;
}

.ht--aerospace-section-homepage p {
  opacity: 0;
}
.ht--aerospace-section-homepage .w-html {
  opacity: 0;
}
/* :::::::::::::::::::::::::::::: */
.my-element-video-home {
  width: 18.75vw !important; /* 360px su viewport da 1920px */
  max-width: none !important;
  border-radius: 8px !important;
  position: fixed !important;
  left: 4.173vw !important; /* 80.121px su viewport da 1920px */
  top: 7.917vw !important; /* 152px su viewport da 1920px */
  z-index: 2 !important;
  overflow: hidden !important;
  border: 2px solid var(--color-bianco) !important;
  box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.25) !important;
  transform: translate3d(0, 0, 0);
  transform-origin: top left;
  will-change: transform;
  transition: box-shadow 0.3s ease, background-color 0.3s ease;
}
.my-element-video-home.active {
  /* transform: scale(3); */
  width: 100% !important;
  margin: 0;
  left: 50% !important;
  top: 50% !important;
  transform: translate3d(-50%, -50%, 0);
  height: auto;
  max-width: min(70vw, calc(100vw - 32px)) !important;
  max-height: calc(100vh - 32px);
  background: #000;
  z-index: 2 !important;
}

.my-element-video-home .ht--close--image {
  opacity: 0;
}
.my-element-video-home.active .ht--close--image:hover {
  cursor: pointer;
}
.my-element-video-home.active .ht--close--image {
  opacity: 1;
  margin: 24px;
}
.my-element-video-home:hover {
  cursor: pointer;
}
/* :::::::::::::::::::::::::::::::::::::::::::::::::::: */
/* ========================================= */
/* H E R I T A G E   S E C T I O N   S T Y L E S */
/* ========================================= */

/* Section Background */
.ht--heritage-section-home .l-section-overlay {
  background: linear-gradient(
    180deg,
    #1b2432 0%,
    rgba(27, 36, 50, 0.3) 57.69%,
    #1b2432 100%
  ) !important;
}

/* ========================================= */
/* H E R I T A G E   I M A G E S */
/* ========================================= */

/* Common Image Styles */
.ht--heritage-section-home .ht--heritage-image-0,
.ht--heritage-section-home .ht--heritage-image-1,
.ht--heritage-section-home .ht--heritage-image-2,
.ht--heritage-section-home .ht--heritage-image-3,
.ht--heritage-section-home .ht--heritage-image-4,
.ht--heritage-section-home .ht--heritage-image-5 {
  position: absolute;
  will-change: transform;
  transform-origin: center center;
}

/* Image 0 */
.ht--heritage-section-home .ht--heritage-image-0 {
  right: 7.71vw; /* 148px */
  bottom: 7.45vw; /* 143px */
  max-width: 21.98vw !important; /* 422px / 1920 */
}

/* Image 1 */
.ht--heritage-section-home .ht--heritage-image-1 {
  left: 5.21vw; /* 100px */
  top: 16.04vw; /* 308px */
  max-width: 13.02vw !important; /* 250px / 1920 */
}

/* Image 2 */
.ht--heritage-section-home .ht--heritage-image-2 {
  left: 14.84vw; /* 285px */
  bottom: 0.57vw; /* 11px */
  max-width: 28.8vw !important; /* 553px / 1920 */
}

/* Image 3 */
.ht--heritage-section-home .ht--heritage-image-3 {
  max-width: 35.42vw !important; /* 680px / 1920 */
  right: 19.9vw; /* 382px */
  top: -7.66vw; /* -243px */
}

/* Image 4 */
.ht--heritage-section-home .ht--heritage-image-4 {
  position: absolute;
  top: 3.91vw; /* 75px */
  max-width: 28.23vw !important; /* 542px / 1920 */
  left: -8.33vw; /* -160px */
}

/* Image 5 */
.ht--heritage-section-home .ht--heritage-image-5 {
  right: -2.24vw; /* -43px */
  max-width: 18.91vw !important; /* 363px / 1920 */
  bottom: 11.88vw; /* 228px */
}

/* ========================================= */
/* T I T L E   S T Y L E S */
/* ========================================= */

.ht--heritage-section-home .ht--title-heritage-page {
  max-width: 42.71vw !important; /* 820px / 1920px = 0.42708... */
}
/* ::::::::::::::::::::::::::::::::::::::::::::::::::::::::: */
@media (max-width: 600px) {
  .ht--heritage-section-home .ht--title-heritage-page {
    max-width: 90vw !important; /* 820px / 1920px = 0.42708... */
    position: relative;
    z-index: 2;
  }
  .ht--heritage-section-home .ht--heritage-image-0 {
    display: none;
  }
  .ht--heritage-section-home .ht--heritage-image-1 {
    display: none;
  }
  .ht--heritage-section-home .ht--heritage-image-2 {
    max-width: 219px !important;
    left: -44px;
    bottom: 70px;
  }
  .ht--heritage-section-home .ht--heritage-image-3 {
    max-width: 200px !important;
    right: -28px;
    top: 40px;
  }
  .ht--heritage-section-home .ht--heritage-image-4 {
    max-width: 165px !important;
    left: -10px;
    top: 0;
  }
  .ht--heritage-section-home .ht--heritage-image-5 {
    max-width: 133px !important ;
    right: -18px;
    bottom: 91px;
  }
  .animated-button-link {
    position: relative;
    z-index: 2;
  }
}
/* ::::::::::::::::::::::::::::::: */
@media (max-width: 1024px) {
  #hero-sequence_mobile::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, #000 0%, rgba(0, 0, 0, 0) 100%);
    z-index: 1;
    pointer-events: none;
  }
}

/* :::::::::::::::::: LA GAMMA VIDEO HOVER :::::::::::::::::: */
.ht--animation__la__gamma .col-1 .ht--la-gamma-video-trigger {
  cursor: pointer;
  opacity: 0.42;
  transition: color 0.3s ease, opacity 0.3s ease, transform 0.3s ease;
}

.ht--animation__la__gamma .col-1 .ht--la-gamma-video-trigger.is-active {
  opacity: 1;
  transform: translateX(8px);
}

.ht--la-gamma-video-trigger a {
  color: #1b2432 !important;
}
.ht--animation__la__gamma .col-2 > .vc_column-inner > .wpb_wrapper {
  position: relative;
  display: block !important;
  box-sizing: border-box;
  height: var(--la-gamma-video-height, 320px) !important;
  min-height: var(--la-gamma-video-height, 320px);
  overflow: hidden;
  border-radius: 32px;
}

.ht--animation__la__gamma .col-2 .w-video {
  position: absolute !important;
  inset: 0;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.45s ease, visibility 0.45s ease;
  z-index: 0;
}

.ht--animation__la__gamma:not(.is-la-gamma-ready) .col-2 .ht--video__c48,
.ht--animation__la__gamma .col-2 .w-video.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  z-index: 2;
}

.ht--animation__la__gamma .col-2 .w-video-h {
  height: 100% !important;
  padding-bottom: 0 !important;
}

.ht--animation__la__gamma .col-2 video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}

@media (min-width: 601px) {
  .ht--animation__la__gamma
    > .l-section-h
    > .g-cols
    > .vc_column_container
    > .vc_column-inner
    > .wpb_wrapper
    > .g-cols {
    align-items: stretch !important;
  }

  .ht--animation__la__gamma .col-2 {
    align-self: stretch;
  }
}

@media (max-width: 600px) {
  .ht--animation__la__gamma .col-2 > .vc_column-inner > .wpb_wrapper {
    height: auto !important;
    aspect-ratio: 1 / 1;
    min-height: 0;
  }
}
