.pic-slider{
    width: 100%;
    height: calc(100% + 40px);
    display: flex;
    gap: 10px;
}
.pic-slider-holder{
    display: flex;
    overflow: hidden;
}

.pic-slider-dots{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex: 0 0 auto;
}
.pic-slider-dot{
    width: 8px;
    height: 8px;
    border-radius: 100%;
    background-color: #CCC;
    cursor: pointer;
    transition: ease-in-out all 0.5s;
}
.pic-slider-dot.active{
    background-color: #333;
}

.pic-slider-cart{
    margin-top: 0;
    transition: 0.5s all ease-in-out;
}

.pic-slider-thumbnails
{
    display: flex;
    gap: 5px;
}

.pic-slider-thumb img
{
    object-fit: cover;
    width: 100%;
    border: 2px solid transparent;
    transition: 0.5s all ease-in-out;
    cursor: pointer;
    box-sizing: border-box;
}
.pic-slider-thumb.active img
{
    border-color: #CCC;
}

.pic-slider-holder img{
    object-fit: contain;
    width: 100%;
}

/* ---------------------------  PROPRIEDADE VERTICAL */

.pic-slider-thumbnails-container {
    width: 15%;
}

.pic-slider-thumbnails-holder {
    overflow: hidden;
    z-index: 1;
}

.pic-slider-thumbnails-arrows {
    position: absolute;
    top: -20px;
    bottom: -20px;
 
    left: 50%;
    transform: translateX(-50%);

    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.pic-slider-thumbnails-arrow {
    width: 16px;
    cursor: pointer;
    color: var(--secondary-color);
}

.pic-slider.vertical {
    flex-direction: row;
}

.vertical .pic-slider-thumbnails{
    flex-direction: column;
}

.vertical .pic-slider-holder
{
    width: 100%;
    flex-direction: column;
}
.vertical .pic-slider-thumbnails-container+.pic-slider-holder
{
    width: 85%;
}

/* ---------------------------  PROPRIEDADE HORIZONTAL */

.pic-slider.horizontal.horizontal{
    flex-direction: column-reverse;
}

.horizontal .pic-slider-image{
    flex: 0 0 100%;
}

.horizontal .pic-slider-cart {
    display: flex;
    flex-direction: row;
}

.horizontal .pic-slider-thumbnails,
.horizontal .pic-slider-holder
{
    width: 100%;
    flex-direction: row;
}


figure.zoom {
    background-position: 50% 50%;
    background-repeat: no-repeat;
    position: relative;
    width: 500px;
    overflow: hidden;
    cursor: zoom-in;
}
figure.zoom img:hover {
    opacity: 0;
}
figure.zoom img {
    transition: opacity 0.5s;
    display: block;
    width: 100%;
}
.pic-slider-image {
    margin: auto;
    align-items: center;
    display: flex;
}