/* ======================================================
   CAROUSEL
   ====================================================== */
   

.carousel-wrapper{

    position:relative;
    margin:0px;
	padding:0px;
}

.carousel-viewport{

    overflow-x:auto;
    overflow-y:hidden;
	
	padding:30px 50px;
    margin:-30px -50px;
	
	scrollbar-width:none;      /* Firefox */

    -ms-overflow-style:none;   /* IE/Edge */

}

.carousel-viewport::-webkit-scrollbar{

    display:none;              /* Chrome, Edge, Safari */

}

.carousel{

    display:flex;

    gap:2rem;

    align-items:stretch;

    overflow:visible;

    padding:20px 0 30px;

}

.carousel-arrow{

    position:absolute;

    top:50%;

    transform:translateY(-50%);

    width:48px;
    height:48px;

    color:var(--primary-text);
    border:none;

    border-radius:50%;

    background:rgba(var(--primary-color-extralight-rgb),.35);

    backdrop-filter:blur(4px);

    box-shadow:0 4px 14px rgba(0,0,0,.15);

    cursor:pointer;

    z-index:20;

    transition:.2s;

}

.carousel-arrow:hover{

    background:rgba(var(--primary-color-light-rgb),.65);

}

.carousel-prev{

    left:12px;

}

.carousel-next{

    right:12px;

}

.carousel-arrow.hidden{

    opacity:0;

    pointer-events:none;

}


/* ======================================================
   MINIATURE
   ====================================================== */

.miniature {
	z-index:5;
    display:flex;
    flex-direction:column;

    flex:0 0 380px;

    height:470px;

    overflow:hidden;

    background:#fff;

    border:3px solid rgba(var(--primary-color-light-rgb),.36);

    border-radius:14px;

    box-shadow:
        0 8px 12px rgba(0,0,0,.08);

    transition:
        transform .28s ease,
        box-shadow .28s ease,
        border-color .28s ease;

    transform-origin:center center;

    position:relative;
	
	
	transform-style:preserve-3d;
	
transform:
        perspective(1400px)
        rotateY(var(--angle))
        scale(var(--scale));



}



.miniature:hover{

transform:
        perspective(1400px)
        rotateY(var(--angle))
        translateY(-10px)
        scale(calc(var(--scale) * 1.04));

    z-index:10;

    border-color:#b7d9e8;

    box-shadow:
        0 20px 40px rgba(0,0,0,.22),
        0 0 20px rgba(30,158,152,.15);

}

.miniature-link{

    display: block;

    width: 100%;
    height: 100%;

    color: inherit;

    text-decoration: none;

}
.miniature-image {

    display: block;

    width: 100%;

    height: 250px;

    object-fit: cover;

}


.miniature-body {

    display: flex;

    flex-direction: column;

    flex: 1;

    padding: 1rem;

    gap: 0.75rem;

}


.miniature-type {

    font-size: 0.40rem;

    font-weight: 600;

    text-transform: uppercase;

}


.miniature-title {

    margin: 0;

    font-size: 1.1rem;
	color:var(--primary-title);

    line-height: 1.4;

}
.miniature-text {

    display: flex;
    flex-direction: column;
    gap: 0.4rem;

}

.miniature-carousel1,
.miniature-carousel2,
.miniature-carousel3 {

    margin: 0;

    font-size: 0.9rem;

    line-height: 1.15;

}

.miniature-tags {

    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;

}

.miniature-tag {

    padding: 0.2rem 0.6rem;

    font-size: 0.75rem;

    border-radius: 999px;

    background: #eef3f7;

}

/* ==========================================================
   CAROUSEL
========================================================== */

@media (max-width:480px){
	.carousel-viewport {
        margin: 0;
        padding: 30px 0;
    }

    .miniature{

        flex:0 0 calc(100% - 30px);

    }
	
   
	
	.miniature-title {

		
		font-size: 1.05rem;

		
	}
	
	.miniature-text {

		font-size: 0.85rem;

	}
	.miniature-carousel1,
	.miniature-carousel2,
	.miniature-carousel3 {

		font-size: 0.85rem;

	}

	
}