/* xl - DESKTOP STYLES */ 
@media (min-width: 1120px) {
  /* ------------------------------------ 1. Hero ------------------------------------ */
  /* ---------------- imagens rodam com o scroll ---------------- */
  .home-hero-img-01 { transform: translateY(10px) rotate(-1deg); }
  .home-hero-img-02 { transform: translateY(0px); }
  .home-hero-img-03 { transform: translateY(10px) rotate(1deg); }
  
  
  /* ------------------------------------ 2. Secção com video com scroll ------------------------------------ */
  /* Ativa o encaixe de scroll na página (aplica isto no contentor pai de todas as secções ou no body) */
  html, body {
    scroll-snap-type: y proximity;
  }
  
  /* A tua secção agarra-se ao centro do ecrã quando o utilizador faz scroll perto dela */
  .home-seccao-video-scroll {
    scroll-snap-align: center;
    scroll-snap-stop: always;
    position: relative !important;
    overflow: hidden !important;
  }
  
  /* Container interno limpo */
  .oxy-container-3845-188 {
    overflow: hidden !important;
    display: flex !important;
    align-items: flex-start !important;
  }
  
  /* COLUNA DA ESQUERDA */
  .home-coluna-scroll {
    height: 588px !important; /* Força a ter exatamente a mesma altura que deste ao teu vídeo */
    overflow-y: scroll !important;
    scroll-behavior: auto;
    padding-top: 40px !important;
    padding-bottom: 300px !important; /* Espaço para o último item subir */
  
    /* Esconder barras de scroll */
    &::-webkit-scrollbar { display: none; }
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  
  /* Elementos de texto com 50% de opacidade */
  .home-coluna-scroll > div {
    opacity: 0.5;
    transition: opacity 0.3s ease, transform 0.3s ease;
    transform: scale(0.95);
  }
  
  .home-coluna-scroll > div.item-ativo {
    opacity: 1 !important;
    transform: scale(1);
  }
  
  /* COLUNA DA DIREITA (Vídeo) */
  .video-scroll {
    height: 588px !important;
  }
  .video-scroll video {
    height: 100% !important;
    width: 100%;
    object-fit: cover;
  }
  
}

/* ============================================================
   Indice

   1. Hero homepage
   2. Seccao com video sincronizado ao scroll
   3. Bloco Sobre: video de fundo e numeros
   4. Secção Formações
   5. Esconder ícone sobre

============================================================ */


/* ============================================================
   1. Hero homepage
============================================================ */

.home-hero-img-01 {
  transform: translateY(10px) rotate(-1deg);
}

.home-hero-img-02 {
  transform: translateY(0);
}

.home-hero-img-03 {
  transform: translateY(10px) rotate(1deg);
}

.hero-homepage > .oxy-container-1617-102 {
  flex: 1 1 auto;
  min-height: 0;
}

.hero-homepage > .oxy-container-1617-107 {
  flex: 0 0 auto;
}

@media (max-width: 1023px) {
  .hero-homepage {
    height: 100svh !important;
    min-height: 100svh !important;
  }

  .hero-homepage > .oxy-container-1617-102 {
    height: auto !important;
  }
}


/* ============================================================
   2. Seccao com video sincronizado ao scroll
============================================================ */

html,
body {
  scroll-snap-type: y proximity;
}

.home-seccao-video-scroll {
  scroll-snap-align: center;
  scroll-snap-stop: always;
  position: relative !important;
  overflow: hidden !important;
  width: 100%;
}

.oxy-container-3845-188 {
  overflow: hidden !important;
  display: flex !important;
  align-items: stretch !important;
}

.home-coluna-scroll {
  overflow-y: scroll !important;
  scroll-behavior: auto;
  padding-top: 20px !important;
  padding-bottom: 300px !important;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

.home-coluna-scroll::-webkit-scrollbar {
  display: none;
}

.home-coluna-scroll > div {
  opacity: 0.5;
  transition: opacity 0.3s ease, transform 0.3s ease;
  transform: scale(0.95);
}

.home-coluna-scroll > div.item-ativo {
  opacity: 1 !important;
  transform: scale(1);
}

.video-scroll {
  height: auto !important;
  display: flex;
  align-items: center;
}

.video-scroll .ee-video-container {
  width: 100%;
  height: 100%;
}

.video-scroll video {
  width: 100%;
  height: auto !important;
  display: block;
}


/* ============================================================
   3. Bloco Sobre: video de fundo e numeros
============================================================ */

.sobre-video-bloco {
  position: relative;
}

.sobre-nos-video {
  position: relative !important;
  overflow: hidden !important;
  width: 100% !important;
  min-height: 420px;
  isolation: isolate;
}

.sobre-nos-video > video {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  z-index: 0 !important;
  pointer-events: none;
}

.sobre-nos-video > *:not(video) {
  position: relative;
  z-index: 1;
}

.sobre-video-numeros {
  box-sizing: border-box;
}

.sobre-video-numeros .bde-dynamic-repeater-item {
  border-left: 0 !important;
  border-top: 0 !important;
}

@media (min-width: 1024px) {
  .sobre-video-numeros .bde-repeater-element-1617-121 > .bde-loop {
    position: relative;
  }

  .sobre-video-numeros .bde-repeater-element-1617-121 > .bde-loop::before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background-color: var(--line-light);
    transform: translateX(-50%);
    pointer-events: none;
  }
}

@media (max-width: 1023px) {
  .sobre-nos-video {
    min-height: 326px !important;
    margin-top: 0 !important;
  }

  .sobre-video-numeros {
    position: absolute !important;
    top: 0 !important;
    right: 0 !important;
    left: auto !important;
    bottom: auto !important;
    width: 236px !important;
    max-width: calc(100% - 36px) !important;
    z-index: 2 !important;
    box-sizing: border-box !important;
  }

  .sobre-video-numeros .bde-repeater-element-1617-121 {
    width: 100% !important;
    margin: 0 !important;
  }

  .sobre-video-numeros .bde-repeater-element-1617-121 > .bde-loop {
    gap: 0 !important;
  }

  .sobre-video-numeros .bde-dynamic-repeater-item {
    padding: 0 !important;
    border-left: 0 !important;
  }

  .sobre-video-numeros .bde-dynamic-repeater-item + .bde-dynamic-repeater-item {
    border-top: 1px solid var(--line-light) !important;
    padding-top: 12px !important;
    margin-top: 12px !important;
  }

  .sobre-video-numeros .oxy-text-4468-100,
  .sobre-video-numeros .oxy-text-4468-104 {
    font-size: 20px !important;
    line-height: 1.5 !important;
  }

  .sobre-video-numeros .oxy-text-4468-103 {
    font-size: 14px !important;
    line-height: 1.6 !important;
  }
}


/* ============================================================
   4. Secção Formações
============================================================ */

.home-formacoes-botao-hover:hover .home-bg-hover {
	background-color: var(--status-hover);
}

.home-formacoes-botao-hover:hover .bde-icon-icon.breakdance-icon-atom {
    background: var(--status-hover) !important;
	background-color: var(--status-hover);
}


/* ============================================================
   5. Esconder ícone sobre
============================================================ */
.card-hover:not([href]) .sobre-icon-link,
.card-hover[href=""] .sobre-icon-link,
.card-hover[href="#"] .sobre-icon-link {
    display: none !important;
}

