        /* REMOVE REVIEWS */
		
        .ti-reviews-container-wrapper {
            display: flex !important;
            flex-direction: row !important;
            flex-wrap: nowrap !important;
            overflow-x: auto !important;
            overflow-y: visible !important;
            width: 100% !important;
            gap: 15px !important;
            padding: 50px 10px 20px 10px !important; 
            scroll-snap-type: x mandatory;
            -webkit-overflow-scrolling: touch;
            scrollbar-width: none !important;
            -ms-overflow-style: none !important;
        }
        .ti-reviews-container-wrapper::-webkit-scrollbar {
            display: none !important;
        }
        .ti-reviews-container-wrapper .ti-review-item {
            flex: 0 0 calc(33.33% - 10px) !important;
            min-width: calc(33.33% - 10px) !important;
            scroll-snap-align: start;
            display: block !important;
            background: transparent !important;
            overflow: visible !important;
        }
        .ti-reviews-container-wrapper .ti-inner {
            overflow: visible !important;
        }
        .ti-reviews-container-wrapper .ti-profile-img {
            margin-top: -10px !important;
            overflow: visible !important;
        }
        .ti-reviews-container-wrapper .ti-profile-img img {
            width: 65px !important;
            height: 65px !important;
            max-width: none !important;
            border-radius: 50% !important;
            object-fit: cover !important;
            display: block !important;
        }
        @media (max-width: 1024px) {
            .ti-reviews-container-wrapper .ti-review-item {
                flex: 0 0 calc(50% - 10px) !important;
                min-width: calc(50% - 10px) !important;
            }
        }
        @media (max-width: 600px) {
            .ti-reviews-container-wrapper .ti-review-item {
                flex: 0 0 85% !important;
                min-width: 85% !important;
            }
        }
		
		
		
		/* SLIDER FILTRO HOME */
		
        .container-lista-de-filtros {
            display: flex !important;
            flex-wrap: nowrap !important; /* Impede que os itens pulem de linha */
            overflow-x: auto !important;  /* Habilita a rolagem horizontal */
            overflow-y: hidden !important; /* Esconde rolagem vertical, se houver */
            
            /* Melhora a fluidez do deslize no iOS e Android */
            -webkit-overflow-scrolling: touch; 
            
            /* Ajuste de espaçamento interno para não cortar bordas */
            padding: 10px 0;
            
            /* Espaçamento entre os itens */
            gap: 10px; 
        }

        /* Esconde a barra de rolagem padrão para um visual mais limpo */
        .container-lista-de-filtros::-webkit-scrollbar {
            display: none;
        }

        /* Garante que os itens não encolham */
        .container-lista-de-filtros > * {
            flex: 0 0 auto;
        }
		
		/* ICON INPUT SEARCH */
		
        .filtro-lupa-custom .jet-search-filter__input {
            /* Estilo do Campo */
            background-color: #ffffff !important;
            border: 0px solid #e0e0e0 !important;
            border-radius: 50px !important;
            
            /* Ajuste de padding: 14px em cima/baixo para comportar o texto maior */
            padding: 14px 65px 14px 25px !important; 
            height: auto !important;
            
            /* TEXTO AINDA MAIOR */
            font-size: 18px !important; 
            font-weight: 600 !important;
            color: #333 !important; 
            
            /* Ícone da Lupa - Mantido conforme seu ajuste ideal */
            background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 24 24' fill='none' stroke='%23777777' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='8'%3E%3C/circle%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'%3E%3C/line%3E%3C/svg%3E") !important;
            background-repeat: no-repeat !important;
            background-position: right 20px center !important;
            background-size: 26px !important; 
            
            transition: border-color 0.3s ease;
        }

        .filtro-lupa-custom .jet-search-filter__input::placeholder {
            color: #999 !important;
            font-size: 18px !important; 
            font-weight: 400;
        }

        /* Mantendo o restante do seu CSS original */
        .filtro-lupa-custom .jet-search-filter__input:focus {
            border-color: #cccccc !important;
            outline: none;
        }
		
		/* ANIMAÇÃO */
    
		.rastro-swipe-hint,
		.rastro-swipe-viewport {
		  background: transparent;
		}
		.rastro-swipe-hint {
		  --hint-width: 280px;
		  --hint-height: 96px;

		  --card-width: 76px;
		  --card-height: 42px;
		  --card-gap: 18px;
		  --card-radius: 10px;
		  --card-stroke: 1.7px;

		  --stroke: #222;
		  --hand-fill: transparent;

		  --duration: 2.15s;
		  --move-distance: 8px;
		  --track-drag-distance: 80px;
		  --loop-step: calc((var(--card-width) * 3) + (var(--card-gap) * 2));

		  --hand-size: 38px;
		  --hand-left: 72px;
		  --hand-top: 30px;

		  --touch-left: 17px;
		  --touch-top: 3px;
		  --touch-size: 16px;

		  position: relative;
		  width: var(--hint-width);
		  height: var(--hint-height);
		  margin: 0 auto;
		  overflow: hidden;
		  contain: layout paint;
		}

		.rastro-swipe-viewport {
		  position: absolute;
		  inset: 0;
		  z-index: 1;
		  overflow: hidden;

		  -webkit-mask-image: linear-gradient(
			to right,
			transparent 0%,
			rgba(0, 0, 0, 0.18) 8%,
			rgba(0, 0, 0, 0.60) 14%,
			#000 24%,
			#000 76%,
			rgba(0, 0, 0, 0.60) 86%,
			rgba(0, 0, 0, 0.18) 92%,
			transparent 100%
		  );
		  mask-image: linear-gradient(
			to right,
			transparent 0%,
			rgba(0, 0, 0, 0.18) 8%,
			rgba(0, 0, 0, 0.60) 14%,
			#000 24%,
			#000 76%,
			rgba(0, 0, 0, 0.60) 86%,
			rgba(0, 0, 0, 0.18) 92%,
			transparent 100%
		  );
		}

		.rastro-swipe-track {
		  position: absolute;
		  top: 14px;
		  left: -22px;
		  display: flex;
		  gap: var(--card-gap);
		  width: max-content;
		  transform: translate3d(calc(-1 * var(--loop-step)), 0, 0);
		  will-change: transform;
		  backface-visibility: hidden;
		  animation: rastroSwipeTrack var(--duration) cubic-bezier(0.22, 0.61, 0.36, 1) infinite;
		}

		.rastro-swipe-card {
		  width: var(--card-width);
		  height: var(--card-height);
		  flex: 0 0 auto;
		  box-sizing: border-box;
		  border: var(--card-stroke) solid var(--stroke);
		  border-radius: var(--card-radius);
		  background: transparent;
		  opacity: 0.97;
		  transform-origin: center center;
		  will-change: transform;
		  backface-visibility: hidden;
		}

		.rastro-swipe-card.is-main {
		  animation: rastroCardFocusMain var(--duration) cubic-bezier(0.23, 1, 0.72, 1) infinite;
		}

		.rastro-swipe-card.is-next {
		  animation: rastroCardFocusNext var(--duration) cubic-bezier(0.23, 1, 0.72, 1) infinite;
		}

		.rastro-swipe-hand {
		  position: absolute;
		  left: var(--hand-left);
		  top: var(--hand-top);
		  z-index: 3;
		  width: var(--hand-size);
		  pointer-events: none;
		  transform: translate3d(0, 0, 0);
		  will-change: transform;
		  backface-visibility: hidden;
		  animation: rastroHandSlide var(--duration) linear infinite;
		}

		.rastro-swipe-touch-icon {
		  position: absolute;
		  left: var(--touch-left);
		  top: var(--touch-top);
		  width: var(--touch-size);
		  aspect-ratio: 123.1 / 95.2;
		  pointer-events: none;
		  z-index: 2;
		  transform-origin: center center;
		  will-change: transform, opacity, filter;
		  animation: rastroTouchIconPulse var(--duration) linear infinite;
		}

		.rastro-swipe-touch-wave {
		  display: block;
		  width: 100%;
		  height: 100%;
		}

		.rastro-touch-shape {
		  fill: #000;
		}

		.rastro-swipe-touch-icon::before {
		  content: "";
		  position: absolute;
		  left: 50%;
		  top: 50%;
		  width: calc(var(--touch-size) * 0.62);
		  height: calc(var(--touch-size) * 0.62);
		  border: 1.3px solid rgba(34, 34, 34, 0.42);
		  border-radius: 999px;
		  pointer-events: none;
		  transform: translate(-50%, -50%) scale(0.2);
		  transform-origin: center center;
		  opacity: 0;
		  will-change: transform, opacity;
		  animation: rastroTouchClickStart var(--duration) linear infinite;
		}

		.rastro-swipe-hand-inner {
		  position: relative;
		  display: block;
		  transform-origin: 24% 12%;
		  will-change: transform;
		  backface-visibility: hidden;
		  animation: rastroHandPose var(--duration) linear infinite;
		}

		.rastro-swipe-hand svg {
		  display: block;
		  width: 100%;
		  height: auto;
		}

		.rastro-hand-outline {
		  fill: var(--stroke);
		}

		.rastro-hand-fill {
		  fill: var(--hand-fill);
		}

		@keyframes rastroSwipeTrack {
		  0%,
		  30% {
			transform: translate3d(calc(-1 * var(--loop-step)), 0, 0);
		  }

		  70% {
			transform: translate3d(calc((-1 * var(--loop-step)) - var(--track-drag-distance)), 0, 0);
		  }

		  100% {
			transform: translate3d(calc(-1 * var(--loop-step)), 0, 0);
		  }
		}

		@keyframes rastroHandSlide {
		  0%,
		  12% {
			transform: translate3d(2px, 0, 0);
		  }

		  30% {
			transform: translate3d(-3.4px, 0, 0);
		  }

		  56% {
			transform: translate3d(calc(-1 * var(--move-distance)), 0, 0);
		  }

		  82% {
			transform: translate3d(-3.2px, 0, 0);
		  }

		  100% {
			transform: translate3d(0, 0, 0);
		  }
		}

		@keyframes rastroHandPose {
		  0%,
		  6% {
			transform: translate3d(0, 0, 0) rotate(18deg) scale(1);
		  }

		  12% {
			transform: translate3d(0, 2px, 0) rotate(14deg) scale(0.95, 0.93);
		  }

		  56% {
			transform: translate3d(0, 2.05px, 0) rotate(11.2deg) scale(0.95, 0.936);
		  }

		  82% {
			transform: translate3d(0, 1.55px, 0) rotate(12.6deg) scale(0.958, 0.945);
		  }

		  94% {
			transform: translate3d(0, 0.55px, 0) rotate(15.2deg) scale(0.986, 0.982);
		  }

		  100% {
			transform: translate3d(0, 0, 0) rotate(18deg) scale(1);
		  }
		}

		@keyframes rastroTouchIconPulse {
		  0%,
		  6% {
			opacity: 0;
			transform: translate(-50%, -50%) scale(0.82);
			filter: drop-shadow(0 0 0 rgba(34, 34, 34, 0));
		  }

		  10% {
			opacity: 0.54;
			transform: translate(-50%, -50%) scale(0.9);
			filter: drop-shadow(0 0 1px rgba(34, 34, 34, 0.1));
		  }

		  18% {
			opacity: 0.38;
			transform: translate(-50%, -50%) scale(0.99);
			filter: drop-shadow(0 0 1px rgba(34, 34, 34, 0.08));
		  }

		  30% {
			opacity: 0.2;
			transform: translate(-50%, -50%) scale(1.06);
			filter: drop-shadow(0 0 0 rgba(34, 34, 34, 0));
		  }

		  44%,
		  100% {
			opacity: 0;
			transform: translate(-50%, -50%) scale(1.12);
			filter: drop-shadow(0 0 0 rgba(34, 34, 34, 0));
		  }
		}

		@keyframes rastroTouchClickStart {
		  0% {
			opacity: 0.34;
			transform: translate(-50%, -50%) scale(0.82);
		  }

		  12% {
			opacity: 0.2;
			transform: translate(-50%, -50%) scale(1.04);
		  }

		  24% {
			opacity: 0.08;
			transform: translate(-50%, -50%) scale(1.2);
		  }

		  38%,
		  100% {
			opacity: 0;
			transform: translate(-50%, -50%) scale(1.32);
		  }
		}

		@keyframes rastroCardFocusMain {
		  0%,
		  12% {
			transform: scale(1);
		  }

		  24% {
			transform: scale(1.035);
		  }

		  38% {
			transform: scale(1.06);
		  }

		  50% {
			transform: scale(1.03);
		  }

		  64% {
			transform: scale(1);
		  }

		  100% {
			transform: scale(1);
		  }
		}

		@keyframes rastroCardFocusNext {
		  0%,
		  38% {
			transform: scale(1);
		  }

		  48% {
			transform: scale(1.02);
		  }

		  58% {
			transform: scale(1.045);
		  }

		  68% {
			transform: scale(1.01);
		  }

		  100% {
			transform: scale(1);
		  }
		}
			
			
			.ti-widget.ti-goog .ti-reviews-container-wrapper {
			margin: 0px !important;
		}




/* Tags ACF Widget */
.acf-tags-container {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 5px;
}
.acf-tag-individual {
    display: inline-block;
    border-style: solid;
    border-width: 1px;
    font-weight: 500;
    transition: all 0.3s ease;
    box-sizing: border-box;
    line-height: 1;
}



/* Widget Enobrecimento */
.enobrecimento-group {
    background-color: #f5f5f5;
    padding: 20px;
    border-radius: 15px;
    margin-bottom: 15px;
}
.enobrecimento-title {
    margin: 0 0 10px 0;
    font-size: 16px;
    font-weight: 600;
}
.enobrecimento-tags-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.enobrecimento-tag {
    background-color: #ddd;
    padding: 5px 12px;
    border-radius: 15px;
    font-size: 13px;
    font-weight: 500;
}
.enobrecimento-sem {
    font-size: 13px;
    color: #777;
    margin: 0;
}



        .plus_modelos { 
            cursor: pointer; 
            position: relative; 
            display: inline-flex !important; 
            align-items: center; 
            justify-content: center; 
            min-width: 140px;
            transition: all 0.2s;
        }

        /* Esconde o texto quando o loading está ativo */
        .plus_modelos.is-loading .elementor-button-text {
            opacity: 0 !important;
        }

        /* O Loader que você enviou (Adaptado) */
		.plus_modelos.is-loading::after {
			content: "";
			position: absolute;
			
			/* Centralização Mágica */
			top: 50%;
			left: 50%;
			transform: translate(-50%, -50%); 
			
			width: 24px;
			aspect-ratio: 1;
			--_c: no-repeat radial-gradient(farthest-side, currentColor 92%, #0000);
			background: 
				var(--_c) top,
				var(--_c) left,
				var(--_c) right,
				var(--_c) bottom;
			background-size: 6px 6px;
			
			/* Nota: Como já usamos transform para centralizar, 
			   precisamos ajustar a animação para não "sobrescrever" o centro */
			animation: l7-centered 1s infinite;
			z-index: 5;
		}

		/* Nova animação que respeita a centralização */
		@keyframes l7-centered {
			to { transform: translate(-50%, -50%) rotate(.5turn); }
		}

        /* Mantém o botão real do Elementor funcional mas invisível */
        .interna_modelos .elementor-button-wrapper,
        .home_load .elementor-button-wrapper {
            position: absolute !important;
            opacity: 0 !important;
            pointer-events: none !important;
            z-index: -1 !important;
        }
		
		
		.img-rodape {min-height:120px;display:block !important;}
		.img-rodape a {display:block !important;}
		
		
		
		
		/* Configuração padrão (Desktop e Tablet) */
.icon-text {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 75px !important;
  height: 75px !important;
  text-align: center;
}

/* Configuração específica para Mobile */
@media (max-width: 767px) {
  .icon-text {
    width: 50px !important;
    height: 50px !important;
  }
}