
/**
* @title        Masonry Sliding Gallery module (Custom Modern Dots Final)
* @website      http://www.joomlatema.net
* @copyright    Copyright (C) 2008 -2018 JoomlaTema.net. All rights reserved.
* @license      http://www.gnu.org/licenses/gpl-2.0.html GNU/GPL
**/

/* Slider Base */
.slick-slider {
    position: relative;
    float: left;
    width: 100%;
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    float: left;
    width: 100%;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    float: left;
    width: 100%;
    display: block;
}

.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir='rtl'] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* === Modern Dots (Final, Clean Circles) === */
.slick-dots {
    position: absolute;
    bottom: -20px;
    display: block;
    width: 100%;
    text-align: center;
    list-style: none;
    margin: 15px 0 0 0;
    padding: 0;
}

.slick-dots li,
.slick-dots li button {
    width: 6px !important;
    height: 6px !important;
}

.slick-dots li {
    display: inline-block;
    margin: 0 5px;
    padding: 0;
}

.slick-dots li button {
    background: transparent;
    border: none;
    padding: 0;
    cursor: pointer;
    position: relative;
    outline: none;
    font-size: 0 !important;
    color: transparent !important;
}

/* Bolinhas limpas e modernas */
.slick-dots li button:before {
    content: "" !important;
    width: 6px !important;
    height: 6px !important;
    background: #bcbcbc !important;
    border-radius: 50% !important;
    display: block !important;
    opacity: 1 !important;
    transition: all 0.3s ease-in-out;
}

/* Estado ativo */
.slick-dots li.slick-active button:before {
    background: #333 !important;
    transform: scale(1.5);
    box-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
    animation: pulseDot 1.4s infinite ease-in-out;
}

/* Animação sutil de brilho */
@keyframes pulseDot {
    0% { box-shadow: 0 0 4px rgba(0, 0, 0, 0.3); }
    50% { box-shadow: 0 0 7px rgba(0, 0, 0, 0.5); }
    100% { box-shadow: 0 0 4px rgba(0, 0, 0, 0.3); }
}
