/* GLOBAL STYLES
-------------------------------------------------- */
/* Padding below the footer and lighter body text */

body {
  color: rgb(var(--bs-tertiary-color-rgb));
}

.bd-placeholder-img {
        font-size: 1.125rem;
        text-anchor: middle;
        -webkit-user-select: none;
        -moz-user-select: none;
        user-select: none;
      }
      @media (min-width: 768px) {
        .bd-placeholder-img-lg {
          font-size: 3.5rem;
        }
      }
      .b-example-divider {
        width: 100%;
        height: 3rem;
        background-color: #0000001a;
        border: solid rgba(0, 0, 0, 0.15);
        border-width: 1px 0;
        box-shadow:
          inset 0 0.5em 1.5em #0000001a,
          inset 0 0.125em 0.5em #00000026;
      }
      .b-example-vr {
        flex-shrink: 0;
        width: 1.5rem;
        height: 100vh;
      }
      .bi {
        vertical-align: -0.125em;
        fill: currentColor;
      }
      .nav-scroller {
        position: relative;
        z-index: 2;
        height: 2.75rem;
        overflow-y: hidden;
      }
      .nav-scroller .nav {
        display: flex;
        flex-wrap: nowrap;
        padding-bottom: 1rem;
        margin-top: -1px;
        overflow-x: auto;
        text-align: center;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
      }
      .btn-bd-primary {
        --bd-violet-bg: #712cf9;
        --bd-violet-rgb: 112.520718, 44.062154, 249.437846;
        --bs-btn-font-weight: 600;
        --bs-btn-color: var(--bs-white);
        --bs-btn-bg: var(--bd-violet-bg);
        --bs-btn-border-color: var(--bd-violet-bg);
        --bs-btn-hover-color: var(--bs-white);
        --bs-btn-hover-bg: #6528e0;
        --bs-btn-hover-border-color: #6528e0;
        --bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
        --bs-btn-active-color: var(--bs-btn-hover-color);
        --bs-btn-active-bg: #5a23c8;
        --bs-btn-active-border-color: #5a23c8;
      }
      .bd-mode-toggle {
        z-index: 1500;
      }
      .bd-mode-toggle .bi {
        width: 1em;
        height: 1em;
      }
      .bd-mode-toggle .dropdown-menu .active .bi {
        display: block !important;
      }


/* MARKETING CONTENT
-------------------------------------------------- */

/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
  margin-bottom: 1.5rem;
  text-align: center;
}
/* rtl:begin:ignore */
.marketing .col-lg-4 p {
  margin-right: .75rem;
  margin-left: .75rem;
}
/* rtl:end:ignore */


/* Featurettes
------------------------- */

.featurette-divider {
  margin: 3rem 0; /* Space out the Bootstrap <hr> more */
}

/* Thin out the marketing headings */
/* rtl:begin:remove */
.featurette-heading {
  letter-spacing: -.05rem;
}

/* rtl:end:remove */

.feature-icon {
  width: 70px;
  height: 70px;
  object-fit: contain; /* mantém proporção sem cortar */
}

.nav-link {
  font-size: 0.92rem;
  transition: all 0.6s;
}

.nav-link:hover {
  color: #fff;
  transition: all 0.6s;
}

.dropdown-menu {
  border-radius: 0px;
  padding-top: 2px;
  padding-bottom: 2px;
}

.dropdown-item:hover {
  background-color: #000;
  color: #fff;
  transition: all 0.6s;
}

.btn {
  transition: all 0.6s;
}

.hero-tech-image {
    width: 100%;
    max-width: 420px;
    height: auto;
    object-fit: contain;
}

/* DESKTOP */
@media (min-width: 992px) {

    .hero-section {
        min-height: 400px;
        display: flex;
        align-items: center;
    }

}

.hero-section{
    position:relative;
    padding-top: 100px;
    overflow:hidden;
}

.hero-video-bg{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.25;
    z-index:0;
}

.hero-overlay{
    position:absolute;
    inset:0;
    z-index:1;
}

.hero-section .container{
    position:relative;
    z-index:2;
}

.hero-image{
    position:relative;
    z-index:2;
}

/* MOBILE */
@media (max-width: 768px) {

    .hero-tech-image {
        max-width: 220px;
    }

}

/* IMAGEM ECOSSISTEMA */
.ecosystem-img{
  width: 100%;
  max-width: 520px;
  height: auto;
}

/* MOBILE */
@media (max-width: 991px){

  .ecosystem-img{
    max-width: 340px;
    margin-left: auto;
    margin-right: auto;
  }

}

/* Estado inicial */
.reveal {
    opacity: 0;
    transform: translateY(40px);
    transition:
        opacity 0.8s ease,
        transform 0.8s ease;
}

/* Estado visível */
.reveal.active {
    opacity: 1;
    transform: translateY(0);
}