.riven-product-grid{

	display:grid;

	grid-template-columns:
	repeat(var(--riven-columns,4),1fr);

	gap:24px;

}

.riven-product-card{
position:relative;
overflow:hidden;
border-radius:18px;
transition:.3s;
}


.riven-product-card img{
width:100%;
transition:.3s;
}


.riven-product-card:hover img{
transform:scale(1.05);
}


/* default */
/*=================================
 Default Product Card
=================================*/

.riven-card-default {

	display:flex;

	flex-direction:column;

	height:100%;

	background:#fff;

	border:
	1px solid #eadfce;

	border-radius:26px;

	overflow:hidden;

	transition:
	transform .35s ease,
	box-shadow .35s ease;

}


.riven-card-default:hover {

	transform:
	translateY(-6px);

	box-shadow:
	0 20px 50px rgba(0,0,0,.08);

}



/* Image */

.riven-card-default
.riven-product-thumb {

	position:relative;

	background:#f5f7f6;

	aspect-ratio:1;

	overflow:hidden;

}



.riven-card-default
.riven-product-thumb img {

	width:100%;

	height:100%;

	object-fit:contain;

	transition:.4s;

}



.riven-card-default:hover
.riven-product-thumb img {

	transform:scale(1.05);

}



/* actions */

.riven-card-default
.riven-product-actions {

	position:absolute;

	top:18px;

	right:18px;

	z-index:5;

}



.riven-card-default
.riven-product-actions button {

	width:44px;

	height:44px;

	border-radius:50%;

	background:#fff;

	border:none;

	box-shadow:
	0 8px 18px rgba(0,0,0,.15);

}



/* Content */

.riven-card-default
.riven-product-info {

	padding:20px;

	display:flex;

	flex-direction:column;

	gap:18px;

	flex:1;

}



/* Category */

.riven-card-default
.riven-product-category a {

	display:inline-flex;

	align-items:center;

	padding:
	8px 22px;

	border-radius:999px;


	border:
	1px solid #ead1a8;


	color:#d8aa65;


	font-size:13px;

	font-weight:500;


	text-transform:uppercase;

	letter-spacing:.08em;


	text-decoration:none;

}



/* Title */

.riven-card-default
.riven-product-title {

	margin:0;

}



.riven-card-default
.riven-product-title a {

	color:#222;

	font-size: 18px;

	font-weight:500;

	text-decoration:none;

}



/* Price */

.riven-card-default
.riven-price {

	justify-content:center;

}



.riven-card-default
.riven-price-current {

	font-size:26px;

	color:#222;

	font-weight:800;

}



.riven-card-default
.riven-price-old {

	color:#aaa;

	font-size:17px;

}



/* Footer */

.riven-card-default
.riven-bottom {

	margin-top:auto;

	display:flex;

	flex-direction:column;

	gap:22px;

}



/* Cart button */

.riven-card-default
.riven-add-cart {
	width: 45px;
	height: 45px;
	min-width: 45px;
	min-height: 45px;
	border-radius:12px;
	border:
	1px solid #d89022;
	background:#fff;
	color:#5c1515;
	font-size:16px;
	font-weight:600;
	}

/* ==========================
   Sale Badge
========================== */

.riven-product-badge.sale {
	position: absolute;
	top: 18px;
	left: 18px;
	z-index: 5;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	min-height: 34px;
	padding: 8px 16px;

	border-radius: 999px;

	background: #ffffff;
	color: #263850;

	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	text-transform: capitalize;

	box-shadow: 0 10px 24px rgba(0, 0, 0, .15);

	transition: all .25s ease;
}

.riven-product-badge.sale:hover {
	transform: translateY(-2px);
	box-shadow: 0 14px 30px rgba(0, 0, 0, .2);
}
/* ==========================
   Discount Badge
========================== */

.riven-product-discount {
	position: absolute;
	top: 62px;
	left: 18px;
	z-index: 5;

	display: inline-flex;
	align-items: center;
	justify-content: center;

	padding: 8px 14px;

	border-radius: 999px;

	background: linear-gradient(135deg, #ff4d4f 0%, #ff6b3d 100%);
	color: #fff;

	font-size: 12px;
	font-weight: 800;
	line-height: 1;
	letter-spacing: .4px;
	text-transform: uppercase;

	box-shadow: 0 4px 10px rgba(0, 0, 0, .10);
}

/* Sale badge না থাকলে */
.no-sale .riven-product-discount {
	top: 18px;
}

.riven-card-default .riven-add-cart svg {
   color: currentColor;
}

.riven-add-cart.loading {

	opacity:.6;

	pointer-events:none;

}


.riven-add-cart.loading svg {

	animation:
	riven-spin 1s linear infinite;

}


a.added_to_cart.wc-forward {
    display: none;
}


@keyframes riven-spin {

	to {

		transform:rotate(360deg);

	}

}

/*=================================
 Gaming Product Card
=================================*/

.riven-card-gaming {

	display:flex;

	flex-direction:column;

	height:100%;

	overflow:hidden;

	border-radius:22px;

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

}

.riven-cart-text {

	display:none;

}


.riven-card-gaming:hover {

	transform:
	translateY(-6px);


	border-color:
	rgba(173,255,0,.25);


	box-shadow:
	0 25px 60px rgba(0,0,0,.28);

}



/* IMAGE AREA */

.riven-gaming-thumb {

	position:relative;

	overflow:hidden;

	background:#fff;

	aspect-ratio:1;

}


.riven-gaming-thumb img {

	width:100%;

	height:100%;

	object-fit:contain;

	transition:.45s ease;

}


.riven-card-gaming:hover img {

	transform:
	scale(1.06);

}



/* CONTENT */

.riven-gaming-content {
    display: flex;
    flex-direction: column;
    flex: 1;
    padding: 20px 0 0 0px;
    gap: 12px;
}



/* CATEGORY */

.riven-pill {


	display:inline-flex;

	align-items:center;


	width:max-content;


	padding:

	6px 16px;


	border-radius:999px;


	background:#341b4f;


	border:
	1px solid rgba(255,255,255,.08);



	color:#b58cff;


	font-size:11px;

	font-weight:700;


	text-transform:uppercase;


	letter-spacing:.08em;


	margin-bottom:12px;

}



/* TITLE */


.riven-product-title {

	margin:0;


	display:-webkit-box;

	-webkit-line-clamp: 3;

	-webkit-box-orient:vertical;


	overflow:hidden;

    white-space: inherit !important;

}


.riven-product-title a {


	font-size:18px;

	font-weight:500;


	line-height:1.25;


	color:#fff;


	text-decoration:none;

}



/* FOOTER */

.riven-card-footer {

	margin-top:auto;


	display:flex;


	align-items:center;


	justify-content:space-between;


	gap:15px;

}




/* PRICE */


.riven-price {
    display: flex;
    align-items: start;
    flex-direction: column;
}


.riven-price-current {

	font-size: 18px;

	font-weight:800;

	color:#adff00;

	margin-bottom: -10px;

}


.riven-price-old {

	font-size:15px;

	font-weight:600;

	color:#8f86a6;

	text-decoration:line-through;

}



.riven-price ins {


	order:1;


	text-decoration:none;


	color:#adff00;


	font-size: 18px;


	font-weight:800;


	letter-spacing:-1px;

}



.riven-price del {


	order:2;


	color:#8f86a6;


	font-size:16px;


	font-weight:600;


	opacity:.8;


	text-decoration:line-through;

}



.riven-price > .woocommerce-Price-amount {


	color:#adff00;


	font-size: 16px;


	font-weight:800;

}



/* CART BUTTON */

.riven-add-cart {
    width: 44px;
    height: 44px;
    min-height: 44px;
    flex: 0 0 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #2b1a40;
    border: 1px solid rgba(255,255,255,.08);
    color: #fff;
    padding: 0;
    transition: .3s;
    cursor: pointer;
}



.riven-add-cart svg {


	width:20px;


	height:20px;


	color:#fff;

}



.riven-add-cart:hover {


	background:#adff00;

}



.riven-add-cart:hover svg {


	color:#111;

}



/* WISHLIST */


.riven-wishlist-wrap {


	position:absolute;


	top:18px;


	right:18px;


	z-index:10;

}


.riven-wishlist-wrap button {


	width:38px;


	height:38px;


	border-radius:50%;


	background:

	rgba(255,255,255,.92);


	border:none;

}




/* SALE BADGE */


.riven-product-badge.sale {


	position:absolute;


	top:18px;


	left:18px;


	z-index:20;


	display:flex;


	align-items:center;


	justify-content:center;


	min-width:62px;


	height:28px;


	padding:

	0 12px;


	border-radius:999px;


	background:#f54b9c;


	color:#fff;


	font-size:13px;


	font-weight:700;


	box-shadow:

	0 8px 18px rgba(245,75,156,.35);

}