/* 
Theme Name: Logae
Theme URI: https://lyon.dev/
Description: Tema desenvolvido exclusivamente para a Logae.
Author: Lyon.dev_
Author URI: https://lyon.dev/
Template: hello-elementor
Version: 2.0.0
Text Domain: logae
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */

html, body {
  scroll-behavior: smooth;
  scroll-padding-top: 200px;
  scroll-margin-block-start: 200px;
  overflow-x: clip;
  margin: 0;
}

.elementor-widget-theme-site-logo {
  transition: opacity .3s ease-in-out;
  &:hover {
    opacity: 0.9;
  }
}

.header-transparente {
  &.nav-fixed {
    background-color: var(--e-global-color-secondary) !important;
    .elementor-widget-theme-site-logo {
      filter: none;
    }
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;  
}

.elementor-kit-36 p, p {
  margin-block: 0;
  & + p {
    margin-block-start: 1rem;
  }
}

/* check if is only one paragraph and remove the margin-block-end */
.elementor-kit-36 p, p {
  &:only-child {
    margin-block-end: 0 !important;
  }
}

header .elementor-icon-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
}

.hidden {
  display: none;
}

/* .titulo {
  h1, h2, h3, h4, h5, h6, p {
    span, b, strong {
      background: linear-gradient(to top, var(--e-global-color-primary) 90%, transparent 0) no-repeat;
      line-height: 1.35;
    }
    b, strong {
      font-weight: 700;
    }
  }
} */

.text-balance, .text-balance * {
  text-wrap: balance;
}

.text-balance-titles {
  h1, h2, h3, h4, h5, h6 {
    text-wrap: balance;
  }
}

.text-center {
  text-align: center;
}

.no-select {
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

.mix-blend-lighten {
  mix-blend-mode: lighten;
}

.aspect-square {
  img {
    aspect-ratio: 1/1;
    object-fit: cover;
  }
}

.galeria-logos,
.depoimentos-slider,
.blog-slider {

  :is(.swiper,.swiper-container)~.elementor-swiper-button-prev,
  :is(.swiper,.swiper-container)~.elementor-swiper-button-next,
  .swiper .elementor-swiper-button {
    top: auto !important;
    translate: 0 0;
    bottom: -1rem;
    z-index: 2;
    
    &.elementor-swiper-button-prev {
      left: 0;
    }
    
    &.elementor-swiper-button-next {
      right: 0;
    }
  }

  .swiper-pagination-bullets.swiper-pagination {
    bottom: -.5rem !important;
    z-index: 0;
  }

}

.depoimentos-slider,
.blog-slider {
  .swiper,
  .swiper-slide,
  .swiper-wrapper {
    overflow: visible;
  }
}

.depoimentos-slider {
  
  .swiper-wrapper {
    padding-block-start: 3rem;
  }

  .elementor-testimonial__footer {
    translate: 0 -50%;
    margin-block-end: -2rem;
  }
  
}

.filter-white {
  filter: brightness(0) invert(1);
}

.blog-listing-post {

  [itemprop="about"] {
    flex: 1 1 auto;
    min-width: 0;
  }
  [itemprop="about"] > .elementor-post-info__item.elementor-post-info__item--type-terms,
  .elementor-icon-list-items .elementor-icon-list-item .elementor-icon-list-text {
    span {
      display: flex !important;
      flex-wrap: wrap;
      gap: .15rem;
      line-height: 1;
      align-items: center;
    }
  }

  .elementor-post-info__item--type-terms {
    width: 100%;
    display: flex !important;
    flex-wrap: wrap;
    @media (width <= 768px) {
      justify-content: center;
    }
    gap: .25rem;
  }

  .elementor-post-info__terms-list-item {
    display: block;
    padding: .25rem .5rem;
    text-wrap: nowrap;
    background-color: var(--e-global-color-dd609db);
    color: var(--e-global-color-48732ec);
    border-radius: .25rem;
    line-height: 1;
    transition: background-color .3s ease;
    &:hover {
      background-color: var(--e-global-color-secondary);
    }
  }

}

#form_contato {
  .elementor-field-label {
    translate: .5rem 50%;
    background-color: var( --e-global-color-b7c2d87 );
    padding-inline: .6rem;
    margin-block-start: -1rem;
    z-index: 1;
  }
  .cfef-hidden {
    display: none;
  }

  
  .elementor-upload-field {
    padding: 1.5rem 1rem .5rem;
  }
  .elementor-field-textual {
    padding: .8rem 1rem .5rem;
  }
  .elementor-field {
    &:user-invalid {
      border-color: red;
    }
  }
  input[type="checkbox"] {
    -webkit-appearance: none;
    appearance: none;
    padding: 0.5rem;
    translate: 0 30%;
    &:checked {
      background: var(--e-global-color-primary) url("data:image/svg+xml, %3Csvg%20xmlns=%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox=%220%200%20448%20512%22%3E%3Cpath%20d=%22M441%20103c9.4%209.4%209.4%2024.6%200%2033.9L177%20401c-9.4%209.4-24.6%209.4-33.9%200L7%20265c-9.4-9.4-9.4-24.6%200-33.9s24.6-9.4%2033.9%200l119%20119L407%20103c9.4-9.4%2024.6-9.4%2033.9%200z%22%2F%3E%3C%2Fsvg%3E") no-repeat center / contain;
    }
  }
}

.ldev-wpp-button, .ldev-wpp-button-single {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 1000;
  background-color: #25D366;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2);
  cursor: pointer;
  animation: shadow-pulse 1.5s infinite;
  border: none;
  text-decoration: none;
  transition: transform .3s ease;
}
.ldev-wpp-button:hover, .ldev-wpp-button-single:hover {
  transform: scale(1.1);
}
.ldev-wpp-button-single svg,
.ldev-wpp-button svg{
  width: 60%;
}
.ldev-wpp-container {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 1000;
}
.ldev-wpp-sectors-list {
  position: absolute;
  bottom: 75px;
  right: 0;
  background-color: white;
  border-radius: 8px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.15);
  width: max-content;
  overflow: hidden;
  border: 1px solid #e5e5e5;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .3s ease, transform .3s ease, visibility .3s ease;
  pointer-events: none;
}
.ldev-wpp-container.active .ldev-wpp-sectors-list {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  pointer-events: auto;
}
.ldev-wpp-sectors-list.ldev-wpp-highlight {
  animation: highlight-sectors .8s ease-in-out infinite;
}
.ldev-wpp-sectors-list.ldev-wpp-border {
  outline: 2px solid #25D366;
}
.ldev-wpp-sector-item {
  display: flex;
  align-items: center;
  padding: 12px 16px;
  text-decoration: none;
  color: var(--e-global-color-secondary);
  border-bottom: 1px solid #eee;
  transition: background-color 0.2s;
}
.ldev-wpp-sector-item:last-child {
  border-bottom: none;
}
.ldev-wpp-sector-item:hover {
  background-color: var(--e-global-color-primary);
}
.ldev-wpp-sector-item .sector-icon {
  width: 24px;
  height: 24px;
  margin-right: 12px;
  background-color: var(--e-global-color-secondary);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
.ldev-wpp-sector-item .sector-name {
  font-size: 16px;
  font-weight: 500;
}

@keyframes highlight-sectors {
  50% {
    box-shadow: 0 4px 12px rgba(0,0,0,0.15), 0 0 15px var(--e-global-color-primary), 0 0 25px var(--e-global-color-primary);
  }
}

@keyframes shadow-pulse {
  0% {
    box-shadow: 0 0 0 0px rgba(37, 211, 101, 0.7);
  }
  70% {
    box-shadow: 0 0 0 10px rgba(37, 211, 101, 0);
  }
  100% {
    box-shadow: 0 0 0 0px rgba(37, 211, 101, 0);
  }
}