:root{
  --lev-header-height: clamp(3rem, 6rem + 3vw, 16rem);
}

header.navbar:has(+ #services-page){
  position: relative !important;
  background-color: var(--lev-dark) !important;
  padding: 2rem 0;
}

header.navbar:has(+ #contact-page){
  position: relative !important;
  background-color: var(--lev-dark) !important;
}

body { 
  background: var(--lev-light);
  font-weight: 400 }

[class*="container"] { 
  position: relative;
  z-index: 3 }

.inner header.navbar{
  position: relative !important;
  background-color: var(--lev-dark);
  height: auto;
  padding: 2rem;
}
.inner header.navbar img{
  --lev-header-height: clamp(75px, 10vw, 100px);
}

main, section { 
  position: relative;
  z-index: 1 }

.wrapper { padding: calc(5rem + 5vw) 0 }

#menu .nav-link { 
  transition: 300ms all;
  color: var(--lev-white) }

#menu .nav-link:hover,
#menu .nav-link.active { color: var(--lev-secondary) }

.navbar-toggler { 
  border: 0;
  width: 48px;
  height: 48px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  font-size: 100%;
  padding: .75rem .5rem }

.navbar-toggler .navbar-toggler-icon { 
  width: 100%;
  display: block;
  height: 4px;
  border-radius: 4px;
  background: var(--lev-white) !important }

header .navbar-brand img{ max-width: 100% }

header .navbar-brand img{
  height: var(--lev-header-height) }

@media(max-width:991.98px){

  header .navbar-collapse {
    background: var(--lev-dark);
    width: 100%;
    position: fixed;
    z-index: 100000;
    top: 0;
    left: 0;
  }

  header .navbar-nav .nav-link {
    text-align: center;
    color: #FFF;
    padding: .75rem 3rem !important;
    width: 100%;
    font-size: 120%;
  }

  header .navbar-nav {
    justify-content: center;
    width: 100%;
    height: 100vh;
  }
  
  header [class*="container"] { padding: 0 1rem  !important }

  header .nav-item .btn { font-size: 100% }

}

.whatsapp-icon{
  width: 38px;
  height: 38px;
}

@media(max-width:299.98px){
  :root{
    --lev-header-height:2rem }

  .icon{
    width: 24px;
    height: 24px }

  .caption{
    top:calc(var(--lev-header-height) + 45% - 1rem) !important }

  .whatsapp-icon{
    width: 28px;
    height: 28px }
    
}

main,
section
.wrapper { padding: calc(3rem + 4vw) 0 }

#hero,
#hero img { height: 100vh }

#hero img { 
  width: 100% !important;
  object-fit: cover }

.caption{
  top:calc(var(--lev-header-height) + 50% - 3rem)
}

.black-mask{
  background: rgb(0,0,0);
  background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0.6026785714285714) 100%);
  position:absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.secondary-mask{
  background: var(--lev-secondary);
  background: linear-gradient(0deg, var(--lev-secondary) 0%, rgba(var(--lev-secondary-rgb),0.6026785714285714) 100%);
  position:absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

@media (max-width: 991.98px){
  .hero.ratio-18x9{
    min-height: 100vh;
    --lev-aspect-ratio:100%
  }
}

.ratio-18x9 {
  --lev-aspect-ratio: calc(9 / 18 * 100%);
}

.deposition-profile{
  width: 65px;
  height: 65px;
  overflow: hidden;
  border-radius: 50%;
}

.deposition-profile img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.case-img img{
  filter: grayscale(1);
  opacity: .5;
  transition: all .2s ease-in-out;
}

.case-img:hover img{
  filter: grayscale(0);
  opacity: 1;
  transition: all .2s ease-in-out;
}

.full-content{
  top: 0 !important;
  left: 0 !important;
  bottom: 0 !important;
  right: 0 !important;
}

.form-control.rounded-5,
.form-select.rounded-5,
textarea {
  border: 0 !important;
  padding-left: 1.5rem;
  background-color: #fff;
  box-shadow: inset 1px 1px 2px rgba(0,0,0,.15)
}

.form-floating>label { color: #949494; }

.form-floating>.form-control-plaintext~label, .form-floating>.form-control:focus~label, .form-floating>.form-control:not(:placeholder-shown)~label, .form-floating>.form-select~label {
  color: #949494;
  transform: scale(.85) translateY(-.5rem) translateX(.15rem);
}

.form-floating>.form-control-plaintext~label::after, .form-floating>.form-control:focus~label::after, .form-floating>.form-control:not(:placeholder-shown)~label::after, .form-floating>.form-select~label::after {
  background-color: transparent;
}

.overflow-y-scroll {
  overflow-y: auto
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .service-deck article:nth-child(4), .service-deck article:nth-child(5){
    width: 50% !important;
  }
  .gallery-deck article:nth-child(4), .gallery-deck article:nth-child(5){
    width: 50% !important;
  }
}

@media (max-width: 991.98px) {
  .gallery-deck article:nth-child(4), .gallery-deck article:nth-child(5){
    width: 50% !important;
  }
}

.service-deck article img{
  scale: 1;
  transition: all .3s ease-in-out;
}

.service-deck article:has(a:hover) img{
  scale: 1.2;
  transition: all .2s ease-in-out;
}

@media (min-width: 768px) {
  .g-md-1-2 {
    --lev-gutter-x: 0.1rem;
    --lev-gutter-y: 1rem;
  }
}


.mw-90{ width: 90% }

.flex-none{ flex:none }

.deposition-carousel-buttons{
  gap: 6rem;
  top: 20px;
}

@media (min-width: 992px) {
  .row-cols-lg-11>* {
    flex: 0 0 auto;
    width: 9.09090% !important;
  }
}

@media (min-width: 768px) {
  .row-cols-md-8>* {
    flex: 0 0 auto;
    width: 12.5%;
  }
}

.button-carousel{
  background-color: rgba(var(--lev-dark-rgb), .75);
  width: 64px;
  height: 64px;
  top: 50%;
  transform: translateY(-50%);
}

.icon{ display: inline-block;position: relative }
.icon svg, .icon svg > *{ fill: currentColor; }
.icon-16 svg{ width: 16px;height: 16px }
.icon-24 svg{ width: 24px;height: 24px }
.icon-32 svg{ width: 32px;height: 32px }
.icon-40 svg{ width: 40px;height: 40px }
.icon-48 svg{ width: 48px;height: 48px }

.icon.text-primary {
  fill: var(--lev-primary);
  color: var(--lev-primary)
}

.icon.text-secondary {
  fill: var(--lev-secondary);
  color: var(--lev-secondary)
}

.icon.text-tertiary {
  fill: var(--lev-tertiary);
  color: var(--lev-tertiary)
}

.icon.text-dark {
  fill: var(--lev-dark);
  color: var(--lev-dark)
}

.icon.text-white {
  fill:#fff
}

/* Adiciona a animação ao elemento que terá o background animado */
.background-animate {
  background-image: linear-gradient(
    70deg,
    hsl(0deg 0% 0%) 0%,   /* Preto */
    hsl(0deg 0% 12%) 10%, /* Cinza Escuro */
    hsl(0deg 0% 24%) 20%, /* Cinza Médio */
    hsl(0deg 0% 36%) 30%, /* Cinza Médio Claro */
    hsl(0deg 0% 48%) 40%, /* Cinza Claro */
    hsl(0deg 0% 60%) 50%, /* Cinza Muito Claro */
    hsl(0deg 0% 72%) 60%, /* Cinza Claro */
    hsl(0deg 0% 84%) 70%, /* Cinza Médio Claro */
    hsl(0deg 0% 96%) 80%, /* Cinza Médio */
    hsl(0deg 0% 100%) 90%,/* Branco */
    hsl(0deg 0% 100%) 100%/* Branco */
  );
  background-size: 400% 400%;
  animation: gradient 15s ease infinite;
}

@keyframes gradient {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

.form-control.input-dark {
  background-color: var(--lev-dark);
  color: var(--lev-secondary);
  border-color: var(--lev-secondary);
}

.form-control.input-dark:focus {
  background-color: var(--lev-dark);
  color: var(--lev-secondary);
  border-color: var(--lev-secondary);
}

.form-control.input-white {
  background-color: var(--lev-secondary);
  color: var(--lev-primary);
  border-color: var(--lev-primary);
}

.form-floating:has(.form-control.input-white) label{
  color: var(--lev-primary);
}

.aspect-ratio-1x1{
  aspect-ratio: 1;
}

.digit-input{
  font-size: clamp(16px, calc(12px + 2vw), 32px);
  text-align: center;
}