/**
 * Theme Name:     Hello Wind - Faveni
 * Author:         Ivon Filho
 * Template:       hello-wind
 * Text Domain:	   hello-wind-faveni
 * Description:    Um tema WordPress minimalista utilizando TailwindCSS + Alpine.js.
 * Version: 1.1
 */

body {
    font-family: 'Nexa';
    font-weight: 500;
    background-color: #f7f7f7;
}

/* Botões */

span.elementor-button-text {
    font-weight: 600;
}

.btn-hover-primary {
    transition: 0.5s;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.btn-hover-primary::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: var(--color-white);
    z-index: -1;
    transition: 0.5s;
}

.btn-hover-primary:hover::before {
    width: 100%;
}

.btn-hover-primary:hover {
    color: var(--e-global-color-primary);
}

.btn-hover-accent {
    transition: 0.5s;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.btn-hover-accent::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: var(--e-global-color-accent);
    z-index: -1;
    transition: 0.5s;
}

.btn-hover-accent:hover::before {
    width: 100%;
}

.btn-hover-accent:hover {
    color: var(--e-global-color-white);
}


/* Elementor CSS Widgets */

.categorias-filtro li svg {
    height: 30px;
    margin-right: 10px;
}

.categorias-filtro li svg path {
    fill: var(--cor-padrao-destaque);
}

.loop-lista .e-loop-item {
    border-bottom: solid 1px rgb(0 0 0 / 10%);
}

.loop-lista .e-loop-item:last-child {
    border-bottom: none;
}


/* Responsivo */

@media (max-width: 1024px) {
    .widget_text.widget.widget_custom_html {
        width: 100%;
    }

    img.custom-logo {
        max-width: 180px;
    }
}

@media (max-width: 767px) {
    .widget_text.widget.widget_custom_html {
        width: 100%;
    }
}

/* Efeitos Especiais */

.degrade {
    background: linear-gradient(to left, #af1261, #ffd49c);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/* Estilo global para todas as tabelas */
table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.95rem;
    margin-bottom: 2rem;
    color: #444;
}

/* Cabeçalhos */
table thead th {
    text-align: left;
    padding: 10px 12px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #222;
    background-color: #fafafa;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

/* Células */
table td {
    padding: 10px 12px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.04);
    color: #555;
}

/* Linhas alternadas discretas */
table tbody tr:nth-child(even) {
    background-color: #fdfdfd;
}

/* Linha de total com leve destaque */
table tbody tr:last-child {
    font-weight: 600;
    color: #333;
}

/* Rodapé com estilo sutil */
table tfoot td {
    font-style: italic;
    color: #777;
    padding-top: 8px;
    border: none;
}

/* Rolagem em telas pequenas */
@media (max-width: 768px) {
    table {
        display: block;
        overflow-x: auto;
        white-space: nowrap;
        border: 1px solid rgba(0, 0, 0, 0.05);
        border-radius: 6px;
    }
}

.grade-tabela h4 {
    font-size: 1.2rem;
    font-weight: bold;
    padding-bottom: 20px;
}

.elementor-testimonial-content {
    max-height: 120px; /* defina a altura que deseja para o scroll */
    overflow-y: auto;
    padding-right: 8px; /* espaço para scroll sem sobrepor texto */
    scroll-behavior: smooth;
  }
  
  /* Scrollbar Webkit (Chrome, Edge, Safari) */
  .elementor-testimonial-content::-webkit-scrollbar {
    width: 6px;
  }
  
  .elementor-testimonial-content::-webkit-scrollbar-track {
    background: #f3f3f3; 
    border-radius: 10px;
  }
  
  .elementor-testimonial-content::-webkit-scrollbar-thumb {
    background-color: var(--e-global-color-accent); /* Verde padrão do seu projeto */
    border-radius: 10px;
  }
  
  /* Firefox */
  .elementor-testimonial-content {
    scrollbar-width: thin;
    scrollbar-color: var(--e-global-color-accent) #f3f3f3;
  }
  

.swiper-slide {
    padding: 10px;
}

/* CUSTOM ELEMENTOR COMPONENTES */

/* Tipografia */

.elementor-heading-title,
.entry-title {
    color: var(--e-global-color-secondary);
}

/* Botões Elementor */

.elementor-button {
    transition: 0.5s;
    position: relative;
    overflow: hidden;
    z-index: 1;
}

.elementor-button::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    z-index: -1;
    transition: 0.5s;
}

.elementor-button:hover::before {
    width: 100%;
}

.elementor-button-info a::before {
    background: var(--e-global-color-accent);
}

.elementor-button-success a::before {
    background: var(--e-global-color-primary);
}

.elementor-button-warning a::before {
    background: var(--e-global-color-text);
}

.elementor-button-danger a::before {
    background: var(--e-global-color-secondary);
}

.elementor-element.elementor-button-success .elementor-button {
    background-color: var(--e-global-color-accent);
}


/* Elementor Correções */

span.elementor-icon-list-text {
    display: inline-flex;
    gap: 10px;
    align-items: center;
    align-content: center;
}

span.swiper-pagination-bullet.swiper-pagination-bullet-active {
    width: 30px;
    border-radius: 100px;
}

.entry-content ul,
.entry-content ol {
    padding-left: 0;
}

ul.elementor-nav-menu--dropdown a,
ul.elementor-nav-menu--dropdown a:focus,
ul.elementor-nav-menu--dropdown a:hover {
    border-inline-start: 0px !important;
}

.elementor-widget-n-accordion .e-n-accordion-item-title {
    z-index: 1;
}

.elementor-nav-menu--dropdown .elementor-item:focus {
    background: transparent;
}

ul {
    margin-block-start: 0;
    margin-block-end: 0;
}

.entry-content ul,
.entry-content ol {
    margin-top: 0;
}

.elementor-nav-menu--dropdown.elementor-nav-menu__container {
    margin-top: 0;
    overflow-x: hidden;
    overflow-y: hidden;
}

span.elementor-button-text {
    display: flex;
    align-items: center;
}

.elementor-widget-off-canvas .e-off-canvas__overlay {
    --tw-backdrop-blur: blur(4px);
    background-color: transparent;
    backdrop-filter: var(--tw-backdrop-blur);
}

/* Efeitos cards */

.bg-gradient-bottom-dark .elementor-cta__content {
    background: linear-gradient(
    to bottom,
    transparent 0%,
    rgba(0, 0, 0, 0.1) 30%,
    rgba(0, 0, 0, 0.3) 60%,
    rgba(0, 0, 0, 0.7) 90%,
    rgba(0, 0, 0, 0.9) 100%
  );
}
