header .logo-desktop,header .logo-mobile-menu{width:160px;margin:1rem 0}

.navbar-expand-lg .navbar-nav .nav-link:not(.dropdown-toggle) {
  position: relative;
  overflow: hidden;
}

.navbar-expand-lg .navbar-nav .nav-link:not(.dropdown-toggle)::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 0;
  height: 2px;
  background:var(--primary-color);
  transition: width 0.3s ease, right 0.3s ease;
}

.navbar-expand-lg .navbar-nav .nav-link:not(.dropdown-toggle):hover::after {
  width: 100%;
  right: auto;
  left: 0;
}
.offcanvas-body.custom{
  overflow-y: visible !important;
}
/* FOOTER */
footer{background-color:var(--primary-color); }
footer .logo-desktop{max-width:200px;}
footer h3{margin-top:0;font-size:1.125rem;color:var(--light); position: relative;}
footer h3::after {
    content: '';
    display: block;
    width: 40px; 
    height: 2px; 
    background-color:var(--light); 
    margin:  5px 0 0 0; 
  }
  
footer .footer__nav li a:not(.btn){display:block;padding:5px 0;font-size:.875rem;color:var(--light);transition:.3s}
footer .footer__nav li a i{font-size:.625rem}
footer .footer__nav li a:hover{color:var(--secondary-color)}
footer  a:hover, .copyright-footer a:hover{color:var(--secondary-color)}

footer .address :is(span,a):not(.btn){color:var(--light);font-size:.875rem;line-height:25px;transition:.3s}
footer .address a:not(.btn):hover{color:var(--secondary-color)}

.copyright-footer .btn.selos { min-height: unset; }
@media screen and (max-width: 992.05px) {
  footer .social { justify-content: center; }
}

.card.card--23{all:unset;box-sizing:border-box;display:flex;align-items:flex-start;justify-content:space-between;flex-flow:column nowrap;gap:1rem;background-color:var(--dark);background-image:linear-gradient(-45deg,var(--dark),var(--grey)),var(--card-background);background-size:cover;background-repeat:no-repeat;background-position:center;background-blend-mode:multiply,normal;border-radius:1rem;padding:1rem;position:relative;height:100%}
.card.card--23:focus-within,.card.card--23:hover{box-shadow:0 0 0 2px var(--secondary-color)}
.card.card--23 .card__title{color:#fff;font-size:1.25rem;text-shadow:0 0 .25rem var(--dark);margin:0;min-height:calc(1.25rem * 2 * 1.3)}
.card.card--23 .card__link{z-index:1;min-height:44px;min-width:44px;display:inline-flex;align-items:center;justify-content:center;flex-flow:row nowrap;padding:.5rem .75rem;font-size:.875rem;text-transform:uppercase;transition:var(--transition);color:var(--light);font-weight:600;border:2px solid currentColor;border-radius:99px}
.card.card--23 .card__link>span{width:0;max-width:fit-content;opacity:0;transition:var(--transition)}
.card.card--23 .card__link:focus>span,.card.card--23 .card__link:hover>span{width:100px;opacity:1;margin-right:.5rem}
.card.card--23 .card__link::before{content:"";display:block;width:100%;height:100%;position:absolute;left:0;top:0;z-index:-1;backface-visibility:visible}
.card.card--23 .card__link:focus,.card.card--23 .card__link:hover{border-color:var(--primary-color);background-color:var(--primary-color)}

.shadow-19{box-shadow:rgba(50,50,93,.25) 0 2px 5px -1px,rgba(0,0,0,.3) 0 1px 3px -1px}

.title-subtitle{margin-bottom:0}
.title-subtitle span{display:block;font-size:.9rem;color:#000;line-height:1rem;letter-spacing:.25rem;text-transform:uppercase}

/* ================= CLIENTES ================= */
.clientes .clientes__item{display:grid;place-items:center;padding:1rem;overflow:hidden}
.clientes .clientes__item img{width:100%;aspect-ratio:1/1;object-fit:contain;margin:0 auto;}
.clientes .clientes__item:hover img{opacity:1}

/* ================= DEPOIMENTOS ================= */
.testimonial .testimonial-author-image {
  width: 100%;
  max-width: 64px;
  aspect-ratio: 1/1;
  object-fit: cover;
  border-radius: 999px;
}

.title {
    position: relative;
  }
  
  .title::after {
    content: '';
    display: block;
    width: 40px; 
    height: 2px; 
    background-color:#C3C3C3; 
    margin:  0; 
  }
  
  .title-center {
      position: relative;
    }
    
    .title-center::after {
      content: '';
      display: block;
      width: 50px; 
      height: 3px; 
      background-color:#C3C3C3; 
      margin: 5px auto 0; 
    }
    
    .bg-form-cta{
      border-radius: var(--radius-4, 4px);
background: rgba(255, 255, 255, 0.08);
backdrop-filter: blur(8px);
    }

    .form-cta {
    border-radius: var(--radius-2, 2px);
    border: 1px solid rgba(238, 238, 238, 0.05);
    background: rgba(250, 250, 250, 0.05);
    padding: .7rem;
    width: 100%;
}

.form-cta,
.form-cta:focus {
  color: #fff9f9;
}

.card-20{
    width: 100%;
    height: 360px;
    position: relative;
    background: var(--background);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    overflow: hidden;
    display: block;
    cursor: pointer;
}
.card-20__content{
    width: 100%;
    height: 100%;
    padding: 20px;
    display: flex;
    align-items: center;
    gap: 10px;
    transition: all 0.3s ease-in;
}
.card-20__left, .card-20__right{
    height: 100%;
    display: flex;
    flex-direction: column;
}
.card-20__left{
    justify-content: flex-end;
}
.card-20__right{
    justify-content: center;
}
.card-20__title, .card-20__text{
    color: var(--light);
    transition: all 0.3s ease-in;
}
.card-20__text{
    opacity: 0;
}
.card-20__title{
    transform: translateY(140px);
}

.card-20:hover .card-20__title{
    transform: translateY(0);
}
.card-20:hover :is(.card-20__text, .card-20__btn){
    opacity: 1;
}
.card-20:hover .card-20__content{
    background-color: rgba(23, 33, 59, 0.6);
}

.pl-custom{
      padding-left: 6rem ;
}

@media screen and (max-width: 768px) {
  .pl-custom{padding-left: 0rem;}
}

.thumbs-custom img{
  width: 100%;
  height: 400px;
  object-fit: cover;
  border-radius: 12px;
}
.thumbs-custom .thumbs-custom__item:first-of-type{
  transform: translateY(-20px);
}
.thumbs-custom .thumbs-custom__item:last-of-type{
  transform: translateY(20px);
}
.banner-home {
    width: 100%;
    height: auto;
    aspect-ratio: 21/9;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    overflow: hidden;
}

.banner-home__video {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-home__content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: var(--background);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.banner-home__bg-transparent {
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.00) 33.45%, rgba(0, 0, 0, 0.00) 97.4%), linear-gradient(0deg, rgba(0, 0, 0, 0.0) 0%, rgba(0, 0, 0, 0.0) 100%);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    max-width: 100% !important;
}

.btn-banner {
    display: inline-block;
    color: #FFF;
    background-color: var(--primary-color);
    padding: 14px 28px;
    border-radius: 8px;
    transition: all .3s ease-in;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: 600;
    margin-top: 30px;
}
