:root {
            --primary-color: #ffffff;
            --accent-color: #3498db;
            transition: all 0.8s ease-out 0.3s;
            --overlay-color: rgba(0, 0, 0, 0.4);
        }




.frase-topo {
        margin: 3vh 0 0vw 0;
    }

   .img-titulo-desk {
        bottom: -12.5vw !important;
        /* display: none; */
    }
    .img-titulo-mob {
        bottom: -22.7vw !important;
        position: absolute;
        width: 100%;
        left: 50%;
        transform: translate(-50%, 0);
        opacity: 0;
    }
    .frase-topo .img-titulo-desk {
        bottom: -12.5vw !important;
        /* display: none; */
        width: 60%;
        margin: 0 !important;
    }
    .frase-topo .img-titulo-mob {
        bottom: -22.7vw !important;
        position: absolute;
        width: 90%;
        left: 50%;
        transform: translate(-50%, 0);
    }

.form-control-dark {
  border-color: var(--bs-gray);
}
.form-control-dark:focus {
  border-color: #fff;
  box-shadow: 0 0 0 .25rem rgba(255, 255, 255, .25);
}

.text-small {
  font-size: 85%;
}

.dropdown-toggle {
  outline: 0;
}
 

header.py-3 {
    border: none !important;
    position: fixed;
    z-index: 100;
    width: 100vw;
    padding: 0 2vw;
    top: 0;
}

.hero-highlight-small {
  font-style: italic;
  font-family: 'Times New Roman', Times, serif;
  color: #fff;
}
.hero-highlight-big {
    font-size: clamp(20px, 9vw, 100vw);
    white-space: nowrap;
    font-weight: 900;
    color: #fff;
    background: magenta;
    padding: 0 2vw;
    text-transform: uppercase;
}
.magenta-span .hero-highlight-big {
    font-size: clamp(20px, 9vw, 100vw);
    white-space: nowrap;
    font-weight: 900;
    color: #fff;
    background: transparent;
    padding: 0 2vw;
}
.magenta-span .hero-highlight-big::before {
  content: "#";
  font-size: clamp(20px, 9vw, 100vw);
  white-space: nowrap;
  font-weight: 900;
  color: #ffffff00;
  background: magenta;
  width: stretch;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.subheading {
  color: #fff;  
}
.slide-deskmob {
    position: relative;
    width: 100vw;
    height: auto;
    min-height: 360px;
    /* overflow: hidden; */
    /* background-color: #222; */
    margin-top: 120px;
    }
.na-Midia.close {
    display: none;
}
.subheading h2 {
  color: #fff;
  font-weight: 900;
  font-size: clamp(10px, 3.1vw, 100vw);
}
.check-list {
    display: grid;
    gap: 14px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.check-list li {
    padding-left: 4vh;
    position: relative;
    color: var(--text-soft);
}
.check-list li::before {
    content: "\2713";
    position: absolute;
    left: 0;
    top: 0;
    color: #01ff1c;
    font-weight: 900;
}


.contato-left h2 {
    font-weight: 400;
    color: var(--text-dark);
    margin-bottom: 1rem;
    line-height: initial;
    color: #fff;
    font-size: clamp(20px, 1.8vw, 100vw);
}

.contato-left p {
    color: var(--text-light);
    margin-bottom: 2rem;
}

.contato-form {
    display: flex;
    flex-direction: column;
    gap: 2rem;
    margin-bottom: 2rem;
}

.contato-form input {
    padding: 1rem;
    border: none;
    border-radius: 100px;
    font-family: inherit;
    transition: border-color 0.3s ease;
    font-size: clamp(20px, 1.8vw, 100vw);
    font-weight: 600;
    padding-left: 2vw;
}

.contato-form textarea {
    padding: 1rem;
    border: none;
    border-radius: 30px;
    font-family: inherit;
    transition: border-color 0.3s ease;
    font-size: clamp(20px, 1.8vw, 100vw);
    font-weight: 600;
    padding-left: 2vw;
}

.contato-form input:focus,
.contato-form textarea:focus {
    outline: none;
    border-color: var(--primary-color);
}

.endereco h3,
.contato-info h3 {
    font-size: 2.25rem;
    font-weight: 800;
    color: var(--text-dark);
    margin-bottom: 1rem;
}

.endereco p,
.contato-info p {
    color: var(--text-light);
    line-height: 1.2;
    font-size: clamp(20px, 1.6vw, 100vw);
    font-weight: 200;
    width: 51%;
    margin-top: 20px;
    position: relative;
    padding-left: 40px;
}

.mapa-placeholder {
    width: 100%;
    height: 350px;
    background: #f0f0f0;
    border-radius: var(--border-radius);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--text-light);
    /* border: 2px dashed #ddd; */
    border-radius: 30px;
}
.mapa-placeholder iframe{
    width: 100%;
    height: 400px;
    background: #f0f0f0;
    border-radius: var(--border-radius);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    color: var(--text-light);
    /* border: 2px dashed #ddd; */
    border-radius: 29px !important;
}

.mapa-placeholder i {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}
.contato .social-icon{
    color: var(--text-dark);
}

.btn-primary {
    background: var(--gradient-bt-hero-agenda);
    color: #fff;
    padding: 1rem 2rem;
    border: 1px solid #fff;
    border-radius: 50px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-block;
    text-align: center;
    font-size: clamp(20px, 1.8vw, 100vw);
}

.btn-primary:hover {
    background: #ffe104;
    transform: translateY(-2px);
    box-shadow: var(--shadow);
    color: #004ac3;
}
.pin {
  width: 30px;
  height: 30px;
  border-radius: 50% 50% 50% 0; /* Cria o topo redondo e a ponta */
  background: #ffe203;
  position: absolute;
  transform: rotate(-45deg); /* Rotaciona para a ponta ficar para baixo */
  left: 20px;
  top: 20px;
  margin: -20px 0 0 -20px;
}

.pin::after {
  content: '';
  width: 14px;
  height: 14px;
  margin: 8px 0 0 8px;
  background: #0053c9; /* O cÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­rculo branco no meio */
  position: absolute;
  border-radius: 50%;
}

.social-banner {
      width: 100%;
      /* background: #0d7ddd; */
      padding: 0px 40px;
      /* display: flex; */
      align-items: center;
      justify-content: center;
      margin-bottom: 0vw;
      margin-top: 50px;
    }

    .social-banner__inner {
      width: 45%;
      max-width: 500px;
      /* display: flex; */
      align-items: center;
      justify-content: space-between;
      gap: 8px;
      flex-wrap: wrap;
      margin: 0 auto;
    }

    .social-banner__left {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      margin: 0 auto;
      width: fit-content;
    }

    .social-link {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 52px;
      height: 32px;
      text-decoration: none;
      transition: transform 0.2s ease, opacity 0.2s ease;
    }

    .social-link:hover {
      transform: scale(1.06);
      opacity: 0.9;
    }

    .social-link svg {
      width: 180px;
      height: auto;
      display: block;
    }

    .social-banner__right {
      display: flex;
      align-items: center;
      gap: 14px;
      flex-wrap: wrap;
      display: none;
    }

    .arrow {
      display: flex;
      align-items: center;
      justify-content: center;
    }

    .arrow svg {
      width: 3vw;
      height: auto;
      display: block;
    }

    .social-text {
      color: #ffe100;
      /* font-size: 0vw; */
      font-weight: 800;
      line-height: 1;
      text-align: left;
      white-space: nowrap;
      display: none;
    }

    @media (max-width: 1100px) {
      .social-banner__inner {
        justify-content: center;
        text-align: center;
      }

      .social-banner__right {
        justify-content: center;
      }

      .social-text {
        white-space: normal;
        text-align: center;
      }
    }

    @media (max-width: 640px) {
      
      .social-banner {
        padding: 24px 20px;
        margin-bottom: 70px;
      }

      .social-banner__left {
        gap: 24px;
        justify-content: center;
      }

      .social-link {
        width: 72px;
        height: 72px;
      }

      .social-link svg {
        width: 56px;
        height: 56px;
      }

      .arrow svg {
        width: 110px;
        height: 28px;
      }
    }



    /* Slider Container */
        .hero-slider {
            position: relative;
            width: 100vw;
            height: 70vh; /* Altura ajustÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â¡vel */
            min-height: 500px;
            /* overflow: hidden; */
            /* background-color: #222; */
            margin-top: 4vh;
        }

        /* Slides Wrapper */
        .slider-track {
            display: flex;
            height: 100%;
            transition: transform var(--transition-speed) cubic-bezier(0.4, 0, 0.2, 1);
            will-change: transform;
        }

        /* Individual Slide */
        .slide {
            flex: 0 0 100%;
            width: 100%;
            height: 100%;
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            /* text-align: center; */
            color: var(--primary-color);
            background-size: contain;
            background-position: center;
            background-repeat: no-repeat;
            background-image: url(ASSETS/bg-bc.svg);
        }

        /* Overlay para legibilidade */
        .slide::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            /* background: var(--overlay-color); */
            z-index: 1;
        }

        /* ConteÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Âºdo do Slide */
        .slide-content {
            position: relative;
            z-index: 2;
            max-width: 800px;
            padding: 20px;
            opacity: 0;
            transform: translateY(30px);
            transition: all 0.8s ease-out 0.3s;
        }

        .slide.active .slide-content {
            opacity: 1;
            transform: translateY(0);
        }

        .slide-content h1 {
            font-size: clamp(2.5rem, 5vw, 4rem);
            margin-bottom: 1rem;
            font-weight: 700;
            text-transform: uppercase;
            letter-spacing: 2px;
        }

        .slide-content p {
            font-size: clamp(1rem, 2vw, 1.25rem);
            margin-bottom: 2rem;
            line-height: 1.6;
        }

        .btn-hero {
            display: inline-block;
            padding: 12px 32px;
            background-color: var(--accent-color);
            color: white;
            text-decoration: none;
            border-radius: 50px;
            font-weight: 600;
            transition: transform 0.3s, background-color 0.3s;
        }

        .btn-hero:hover {
            background-color: #2980b9;
            transform: scale(1.05);
        }

        /* NavegaÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o (Setas) */
        .slider-nav {
            position: absolute;
            top: 50%;
            width: 100%;
            transform: translateY(-50%);
            display: flex;
            justify-content: space-between;
            padding: 0 20px;
            z-index: 1;
            pointer-events: none;
        }

        .nav-btn {
            width: 80px;
            height: 80px;
            border-radius: 50%;
            background: none;
            border: none;
            color: white;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            backdrop-filter: blur(5px);
            transition: background 0.3s;
            pointer-events: auto;
        }

.nav-btn svg {
           width: 140px;
           height: 140px;
        }

        .nav-btn:hover {
            background: none;
        }

        /* PaginaÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â§ÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â£o (Pontos) */
        .slider-dots {
            position: absolute;
            bottom: 30px;
            left: 50%;
            transform: translateX(-50%);
            display: flex;
            gap: 12px;
            z-index: 10;
        }

        .dot {
            width: 12px;
            height: 12px;
            border-radius: 50%;
            background: rgba(255, 255, 255, 0.4);
            border: none;
            cursor: pointer;
            transition: all 0.3s;
        }

        .dot.active {
            background: var(--primary-color);
            transform: scale(1.2);
        }

        /* Responsividade */
        @media (max-width: 768px) {
            .hero-slider {
                height: 60vh;
            }
            .slider-nav {
                display: none; /* Esconder setas em mobile se preferir swipe */
            }
        }
.slide-rodape {
      position: relative;
      width: 100vw;
      height: initial;
      /* text-transform: uppercase; */
      /* font-size: 0.8rem; */
      min-width: 230px;
      z-index: 1;
      transition: all 0.45s ease;
      left: 0;
    }
.slide-rodape.close {
      top: -220vw;
      transition: all 0.45s ease;
      left: 0;
    }

.btn-whatsapp-large.up {
      transition: all 0.45s ease;
      bottom: 18vh;
    }
.news-slider {
      width: 100%;
      /* max-width: 1700px; */
      margin: 0 auto;
      /* background: #0064ff; */
      position: relative;
      overflow: hidden;
      padding-left: 220px;
      float: left;
    }

    .news-slider__viewport {
      overflow: hidden;
      width: 100%;
      margin: 0;
      padding: 20px 0;
    }

    .news-slider__track {
      display: flex;
      transition: transform 0.45s ease;
      will-change: transform;
    }

    .news-slide {
      min-width: 100%;
      display: grid;
      grid-template-columns: 72px 1fr 40px 1fr 72px;
      align-items: center;
      gap: 28px;
      padding: 0 28px;
      /* background: #4a72d1; */
    }

    .news-slide__divider {
      width: 1px;
      height: 98px;
      background: #ffd900;
      justify-self: center;
      opacity: 0;
    }

    .news-card {
      min-width: 0;
      border: 1px solid #ffcc00;
      min-height: 250px;
      padding: 2vw;
      border-radius: 1vw;
    }

    .veiculos {
    width: 150px;
    height: auto;
    display: block;
 }
    .news-card__source {
      display: inline-flex;
      align-items: center;
      gap: 10px;
      font-family: Georgia, "Times New Roman", serif;
      font-size: 25;
      font-weight: 700;
      color: #ffffff;
      text-transform: uppercase;
      line-height: 1;
      margin-bottom: 16px;
      letter-spacing: -0.03em;
    }

    .news-card__source-arrow {
      font-family: Arial, Helvetica, sans-serif;
      color: #ffd900;
      font-size: 29px;
      line-height: 1;
      transform: translateY(-1px);
      /* font-weight: bold; */
      transform: rotate(-45deg);
      display: none;
    }

    .news-card__title, .news-card__title a {
      color: #ffd900;
      font-size: 38px;
      font-weight: 800;
      line-height: 1.05;
      /* letter-spacing: -0.03em; */
      max-width: 95%;
      text-decoration:none;
      transition: all 0.45s ease;
    }
.btn-whatsapp-large{
      transition: all 0.45s ease;
    }
    .btn-whatsapp-large:hover {
    opacity:0.4;
      transition: all 0.45s ease;
    }
    .news-card__title a:hover {
    opacity:0.4;
      transition: all 0.45s ease;
    }

    .news-slider__nav {
      width: 48px;
      height: 48px;
      border: none;
      background: transparent;
      color: #ffe100;
      font-size: 54px;
      line-height: 1;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      transition: transform 0.2s ease, opacity 0.2s ease;
      user-select: none;
    }

    .news-slider__nav:hover {
      transform: scale(1.08);
    }

    .news-slider__nav:active {
      transform: scale(0.96);
    }

    .news-slider__nav:disabled {
      opacity: 0.35;
      cursor: default;
      transform: none;
    }

    .news-slider__dots {
      display: flex;
      justify-content: center;
      gap: 10px;
      padding: 16px 0 4px;
      /* background: #4a72d1; */
      display: none;
    }

    .news-slider__dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      border: none;
      background: rgba(255, 255, 255, 0.35);
      cursor: pointer;
      transition: transform 0.2s ease, background 0.2s ease;
    }

    .news-slider__dot.is-active {
      background: #ffd900;
      transform: scale(1.2);
    }

    @media (max-width: 1100px) {
      .hero {
          margin-top: 0;
      }
      .news-slide {
        grid-template-columns: 56px 1fr 1px 1fr 56px;
        gap: 18px;
        padding: 22px 18px;
      }

      .news-card__source {
        font-size: 22px;
      }

      .news-card__title {
        font-size: 24px;
      }

      .news-slide__divider {
        height: 84px;
      }
    }

    @media (max-width: 780px) {
      .news-slide {
        grid-template-columns: 44px 1fr 44px;
        grid-template-areas:
          "prev left next"
          ". divider ."
          ". right .";
        gap: 18px 14px;
      }

      .news-slider__nav--prev {
        grid-area: prev;
      }

      .news-card:first-of-type {
        grid-area: left;
      }

      .news-slide__divider {
        grid-area: divider;
        width: 100%;
        height: 1px;
      }
      .news-card {
          border-radius: 5vw;
          padding: 7vw;
      }

      .news-card:last-of-type {
        grid-area: right;
        /* border-radius: 2vw; */
      }

      .news-slider__nav--next {
        grid-area: next;
      }

      .news-card__source {
        font-size: 20px;
        margin-bottom: 12px;
      }

      .news-card__title {
        font-size: 22px;
        max-width: 100%;
      }

      .news-slider__nav {
        font-size: 42px;
        width: 40px;
        height: 40px;
      }
    }

    @media (max-width: 520px) {

      .news-slide {
        padding: 18px 14px 20px;
      }

      .news-card__source {
        font-size: 18px;
      }

      .news-card__title {
        font-size: 19px;
        line-height: 1.12;
      }
    }

    .menu-toggle span {
      display: block;
      height: 4px;
      width: 100%;
      background: #000;
      border-radius: 2px;
      transition: all 0.3s ease;
      transform-origin: center;
    }

    .menu-toggle.active span:nth-child(1) {
      transform: translateY(14px) rotate(45deg);
      background: #fff;
    }

    .menu-toggle.active span:nth-child(2) {
      opacity: 0;
    }

    .menu-toggle.active span:nth-child(3) {
      transform: translateY(-14px) rotate(-45deg);
      background: #fff;
    }
        .menu-overlay {
      position: fixed;
      top: -280vw;
      right: 0;
      width: 20%;
      height: 100vh;
      background: #0d6efd;
      display: flex;
      justify-content: center;
      align-items: center;
      transition: top 0.45s ease;
      z-index: 2;
    }

    

    .menu-overlay.active {
      top: 0;
    }

    .menu-links {
      list-style: none;
      text-align: center;
    }

    .menu-links li {
      margin: 20px 0;
    }

    .menu-links a {
      color: #fff;
      text-decoration: none;
      font-size: 2rem;
      font-weight: bold;
      transition: opacity 0.3s ease;
    }

    .menu-links a:hover {
      opacity: 0.7;
    }
.custom-style-1 { background-image: url(../assets/brand/bg_brasil.webp);background-size: cover;overflow-x: hidden;background-attachment: fixed;margin: 0; }
.custom-style-2 { width: 100vw;height: 100vh;position: fixed;top: 0; transition: all 1s;background-color: #0d6efd; z-index: 99999 }
.custom-style-3 { position: absolute;left: 50%;top: 50%;transform: translate(-50%, -50%); width: 160px;height: auto; }
.custom-style-4 { grid-template-columns: 1fr 7fr 1fr; }
.custom-style-5 { text-align: right; }
.custom-style-6 { color: #fff; cursor: pointer; }
.custom-style-7 {width: 100vw;display: block;margin: 0 auto;position: relative;overflow: hidden;}
.custom-style-8 {position: absolute;color: #fff;left: 50%;letter-spacing: 10px;text-transform: uppercase;font-size: 1rem;z-index: 3;top: 90vh;transform: translate(-50%, 0);min-width: 30;z-index: 1;}
.custom-style-9 {position: absolute;left: 50%;color: #0d6efd;top: -20px;z-index: 999999;cursor: pointer;background: #ffe200;padding: 5px 12px;border-radius: 1000px;font-weight: 900;border: 2px solid #0d6efd;transform: translate(-51%, 0);display: none;}
.custom-style-10 {position: absolute;width: 360;top: 80%;transform: translate(-50%, -22%);left: 4vw;display: inline-block;float: left;z-index: -1;}
.custom-style-11 { cursor: pointer; position: fixed;width: 10vw;right: 2vw;bottom: 3vh;min-width: 230px;z-index: 3; }
.custom-style-12 { text-align: center; }
.custom-style-13 { max-width: 55vw;margin-top: 0px; }
.custom-style-14 {width: 1.9vw;position: absolute;top: 75vh;left: 50%;transform: translate(-50%, 0);min-width: 30;/* max-width: 40px; */z-index: 1;}
.custom-style-15 { enable-background:new 0 0 43.5 67.8; }
.custom-style-16 {grid-template-columns: 2fr 1fr;/* background-image: url(ASSETS/bg-bc.svg ); */background-size: contain;background-position: center;background-repeat: no-repeat;}
.custom-style-17 {display: flex;justify-content: center; /* Centraliza a fonte */width: 80%; /* A div pai ocupa toda a largura */}
.custom-style-18 {width: 80%;}
.custom-style-19 {font-size: clamp(10px, 4.2vw, 100vw);font-weight: 900;text-box-trim: trim-both;text-box-edge: cap alphabetic;line-height: normal;color: #ffe102;}
.custom-style-20 { display: block;font-size: 2rem;font-weight: 200;font-size: clamp(10px, 2.2vw, 100vw); }
.custom-style-21 { position: relative;border: none !important; }
.custom-style-22 {
              position: absolute;
              top: 40%;
              transform: translate(-50%,-50%);
              width: 100%;
              left: 30%;
              z-index: 1;
              }
.custom-style-23 { position: absolute;
              top: 50%;
              transform: translate(-50%,-50%);
              width: 50vw;
              left: 30%; }
.custom-style-24 {
        display: flex;
        justify-content: center;
        /* margin: 10vw 0; *//* Centraliza a fonte */
        width: 80%; /* A div pai ocupa toda a largura */
        }
.custom-style-25 {width: 80%;}
.custom-style-26 {
                font-size: clamp(10px, 4.2vw, 100vw);
                font-weight: 900;
                text-box-trim: trim-both;
                text-box-edge: cap alphabetic;
                line-height: normal;
                color: #ffe102;
                }
.custom-style-27 {/* opacity: 0; */}
.custom-style-28 {
              position: absolute;
              top: 40%;
              transform: translate(-50%,-50%);
              width: 100%;
              left: 30%;
              z-index: 1;
              }
.custom-style-29 {display: flex;justify-content: center;margin: 10vw 0;/* Centraliza a fonte */width: 80%; /* A div pai ocupa toda a largura */}
.custom-style-30 {font-size: clamp(10px, 4.2vw, 100vw);font-weight: 900;text-box-trim: trim-both;text-box-edge: cap alphabetic;line-height: normal;color: #ffe102;}
.custom-style-31 { position: relative;border: none !important; }
.custom-style-32 {position: absolute;top: 40%;transform: translate(-50%,-50%);width: 100%;left: 30%;z-index: 1;}
.custom-style-33 { position: absolute;top: 50%;transform: translate(-50%,-50%); width: 50vw;left: 30%; }
.custom-style-34 { display: none; }
.custom-style-35 {margin-top: 3vw;display: inline-block;}
.custom-style-36 {grid-template-columns: 2fr 1fr;position: relative;background-size: cover;background-position: center top;background-repeat: no-repeat;margin-top: 3vw;}
.custom-style-37 { text-align: center;position: absolute;bottom: -9.2vw;left: 50%;width: 96.5vw;height: auto;z-index: 1;transform: translate(-50%, 0); }
.custom-style-38 { max-width: 100vw;margin-top: 20px; }
.custom-style-39 { position: absolute;top: -6vw;transform: translate(-50%,0);width: 110vw;left: 45vw;z-index: -2;opacity: 0.3; }
.custom-style-40 { position: absolute;top: 15vw;transform: translate(-50%,-50%);width: 30vw;left: 45vw;z-index: 0; }
.custom-style-41 { position: absolute;
              top: 22vw;
              transform: translate(-50%,-50%);
              width: 50vw;
              left: 40vw;
              z-index: 0; }
.custom-style-42 {display: flex;justify-content: center; /* Centraliza a fonte */width: 100%; /* A div pai ocupa toda a largura */}
.custom-style-43 {
              position: relative;
              bottom: 0;
              transform: translate(-50%,-0%);
              width: 85%;
              left: 28vw;
              z-index: 0;
              height: auto;
              display: block;
              }
.custom-style-44 { width: 80%;text-align: right;vertical-align: middle; }
.custom-style-45 { margin-top: 7vw; }
.custom-style-46 { color:#ffe100 }
.custom-style-47 {display: block;font-size: 2rem;font-weight: 200;font-size: clamp(10px, 2vw, 100vw);}
.custom-style-48 { grid-template-columns: 2fr 1fr;position: relative;background-size: cover;background-position: center top;background-repeat: no-repeat;margin-top: 12vw; }
.custom-style-49 {width: 80%;text-align: left;vertical-align: middle;}
.custom-style-50 { margin-top: 2vw; }
.custom-style-51 { font-size: clamp(20px, 4vw, 100vw); }
.custom-style-52 { margin-top: 40px; }
.custom-style-53 {display: block;/* font-size: 2rem; */font-weight: 200;font-size: clamp(10px, 2vw, 100vw);float: left;padding: 0 50px 0 0px;}
.custom-style-54 {display: block;font-weight: 200;font-size: clamp(10px, 2vw, 100vw);float: left;padding: 0;}
.custom-style-55 { position: relative;top: 15vw;transform: translate(-50%,-50%);width: 24vw;left: 50%;z-index: 0; }
.custom-style-56 { grid-template-columns: 1fr;position: relative;background-size: cover;background-position: center top;background-repeat: no-repeat;margin-top: 5vw; }
.custom-style-57 { position: relative;top: 15vw;transform: translate(-50%,-50%);width: 100%;left: 50%;z-index: 1; }
.custom-style-58 { position: absolute;top: 12vw;transform: translate(-50%,-50%); width: 70vw;left: 40vw;z-index: 0; }
.custom-style-59 { margin-top: 1vw; }
.custom-style-60 { grid-template-columns: 1fr 1fr;position: relative;background-size: cover;background-position: center top;background-repeat: no-repeat;margin-top: 3vw;position: relative;z-index: 1; }
.custom-style-61 { display: flex;justify-content: center; /* Centraliza a fonte */width: 100%; /* A div pai ocupa toda a largura */position: relative; }
.custom-style-62 { position: absolute;top: 60%;transform: translate(-50%,-50%); width: 80%;left: 70%;z-index: 0; }
.custom-style-63 {position: relative;border: none !important;display: flex;}
.custom-style-64 { width: 30vw;text-align: right;vertical-align: middle; }
.custom-style-65 {margin-top: 10vw;position: relative;z-index: 0;/* overflow: hidden; *//* padding-bottom: 160px; */}
.custom-style-66 { grid-template-columns: 2fr 1fr;background-image: url(ASSETS/bg-bc.svg );background-size: auto;background-position: center;background-repeat: no-repeat;padding: 5vw 0 1vw 0;position: relative;z-index: 0; }
.custom-style-67 { font-size: clamp(10px, 7vw, 100vw);font-weight: 900;text-box-trim: trim-both;text-box-edge: cap alphabetic;line-height: normal;color: #ffe102; }
.custom-style-68 { color: #fff; }
.custom-style-69 { font-size: clamp(20px, 8vw, 100vw);line-height: 13vw;position: relative; }
.custom-style-70 { position: absolute;top: 80%;transform: translate(0,-50%);width: 50vw; right: 0;z-index: 1; }
.custom-style-71 {position: absolute;top: 50%;transform: translate(-50%,-50%);width: 100vw;left: 43%;opacity: 0.5;}
.custom-style-72 { grid-template-columns: 3fr 3fr;/* background-image: url(ASSETS/bg-bc.svg ); */background-size: auto;background-position: center;background-repeat: no-repeat;padding: 0vw 0 4vw 0;position: relative;z-index: 0;/* color: #000 !important; */ }
.custom-style-73 { padding: 0 2vw 0 3vw;width: 100%;margin: 0 auto; }
.custom-style-74 { padding: 0 4vw 0 0vw; }
.custom-style-75 { border:0;border-radius: 30px; }
.custom-style-76 { color: #fff;position: relative; }
.custom-style-77 { grid-template-columns: 1fr 4fr 1fr;/* background-image: url(ASSETS/bg-bc.svg ); */background-size: auto;background-position: center;background-repeat: no-repeat;padding: 0vw 0 3vh 0;position: relative;z-index: 0;/* color: #000 !important; */ }

/* Estilos internos extraÃƒÆ’Ã†â€™Ãƒâ€šÃ‚Â­dos */

       @import url('https://fonts.googleapis.com/css2?family=Outfit:wght@100..900&display=swap');
      * {
      font-family: 'Outfit', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
      }
      .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 {
        height: 3rem;
        background-color: rgba(0, 0, 0, .1);
        border: solid rgba(0, 0, 0, .15);
        border-width: 1px 0;
        box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
      }

      .b-example-vr {
        flex-shrink: 0;
        width: 1.5rem;
        height: 100vh;
      }

      .bi {
        vertical-align: -.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;
      }

      .ham {
        cursor: pointer;
        -webkit-tap-highlight-color: transparent;
        transition: transform 400ms;
        -moz-user-select: none;
        -webkit-user-select: none;
        -ms-user-select: none;
        user-select: none;
      }
      .hamRotate.active {
        transform: rotate(45deg);
      }
      .hamRotate.active .line.middle{
        stroke:#ffe100;
      }
      .ham .line.middle {
        stroke: #fff;
      }
      .hamRotate180.active {
        transform: rotate(180deg);
      }
      .line {
        fill:none;
        transition: stroke-dasharray 400ms, stroke-dashoffset 400ms;
        stroke:#ffe100;
        stroke-width:5.5;
        stroke-linecap:round;
      }
      .ham1 .top {
        stroke-dasharray: 40 139;
      }
      .ham1 .bottom {
        stroke-dasharray: 40 180;
      }
      .ham1.active .top {
        stroke-dashoffset: -98px;
      }
      .ham1.active .bottom {
        stroke-dashoffset: -138px;
      }
    
.modulo {
    height: auto;
    position: relative;
    width: 100%;
}

.float-box.featured-hero::before {
  /* content: "#"; */
  font-size: clamp(20px, 6vw, 100vw);
  white-space: nowrap;
  font-weight: 900;
  color: #ffffff00;
  background: magenta;
  width: stretch;
  /* height: 100%; */
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  transform: translate(0, 0);
  background: #0067ff;
  background: linear-gradient(180deg, rgb(2 104 255) 0%, rgba(0, 0, 255, 0) 100%);
}
.sobre.modulo {
    height: auto;
    padding-left: 5vw;
    padding-right: 5vw;
    /* margin-top: 100vh; */
}


.sobre.modulo ul li a{color: #ffe203;text-decoration: none;}
.sobre.modulo ul li a:hover{opacity:0.5}
.sobre {
    /* background-color: rgb(239, 239, 239); */
    padding: 5vw 0px 0vw;
}
.sobre .texto {
    text-transform: initial;
    color: #f8f9fa;
    font-size: 2rem;
}
.float-box {
    /* float: left; */
    width: 100vw;
    height: auto;
    position: relative;
    top: 0px;
    opacity: 0.8; 
} 

  .hero {
          margin-top: 0;
      }
      

/* Define a variÃƒÆ’Ã‚Â¡vel de velocidade */
:root {
    --transition-speed: 0.7s;
}

/* suave do track */
.slider-track {
    transition: transform var(--transition-speed) cubic-bezier(0.25, 0.46, 0.45, 0.94);
    will-change: transform;
}

/* Efeito de fade nos slides (sem esconder imagens) */
.slide {
    transition: opacity 0.3s ease;
}

.slide:not(.active) {
    opacity: 0.6;
}

.slide.active {
    opacity: 1;
}

/* AnimaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o de entrada dos textos (sem afetar imagens diretamente) */
@keyframes slideFadeUp {
    0% {
        opacity: 0;
        transform: translateY(30px);
    }
    100% {
        opacity: 1;
        transform: translateY(0);
    }
}


.slide.active .custom-style-18,
.slide.active .custom-style-25,
.slide.active .subheading h2,
.slide.active .custom-style-19,
.slide.active .custom-style-26,
.slide.active .custom-style-30,
.slide.active .hero-highlight-big,
.slide.active .custom-style-20,
.slide.active .subheading p {
    animation: slideFadeUp 0.5s ease forwards;
    opacity: 0;
}

/* Ajusta delays para cada elemento */
.slide.active .custom-style-19,
.slide.active .custom-style-26,
.slide.active .custom-style-30 {
    animation-delay: 0.05s;
}

.slide.active .hero-highlight-big {
    animation-delay: 0.1s;
}

.slide.active .subheading h2 {
    animation-delay: 0.15s;
}

.slide.active .custom-style-20,
.slide.active .subheading p {
    animation-delay: 0.2s;
}

/* IMPORTANTE: Remove qualquer opacity/animacao das imagens */
.slide.active .rounded-2 img,
.slide.active .border.rounded-2 img,
.slide.active img.custom-style-22,
.slide.active img.custom-style-28,
.slide.active img.custom-style-32 {
    animation: none !important;
    opacity: 1 !important;
}

/* Zoom suave APENAS na imagem de fundo/cover (opcional - descomente se quiser) */
/*
@keyframes gentleZoom {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.05);
    }
}

.slide.active .border.rounded-2 img:first-child {
    animation: gentleZoom 8s ease-out forwards;
    transform-origin: center center;
}
*/

/* Melhora os botÃƒÆ’Ã‚Âµes de navegaÃƒÆ’Ã‚Â§ÃƒÆ’Ã‚Â£o */
.nav-btn {
    transition: all 0.3s ease;
}

.nav-btn:hover {
    transform: scale(1.1);
    background: rgba(255, 255, 255, 0.15);
}

.nav-btn:active {
    transform: scale(0.95);
}

/* Efeito nos dots */
.dot {
    transition: all 0.3s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.dot.active {
    transform: scale(1.3);
    background: #ffe200;
}

  .words-section {
    width: 100%;
    padding: 120px 0 0px 0;
    /* background: #111; */
    overflow: hidden;
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 12.5%, #000 87.5%, transparent 100%);
    mask-image: linear-gradient(to right, transparent 0%, #000 12.5%, #000 87.5%, transparent 100%);
  }

  .words-track {
    display: flex;
    align-items: center;
    width: max-content;
    will-change: transform;
    animation: wordsMarquee 28s linear infinite;
  }

  .words-group {
    display: flex;
    align-items: center;
    gap: 80px;
    padding-right: 80px;
    flex-shrink: 0;
  }

  .word-item {
    flex-shrink: 0;
    white-space: nowrap;
    font-size: clamp(28px, 4vw, 64px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.04em;
    text-transform: uppercase;
    color: #ffe102;
  }

  .word-separator {
    font-size: clamp(38px, 10vw, 68px);
    opacity: 1;
    margin-left: -52px;
    margin-right: -52px;
    user-select: none;
    color: #ff00fe;
  }

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