.gasp-v2-section{
	margin:42px 0;
}

.gasp-v2-heading{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:20px;
	margin-bottom:22px;
}

.gasp-v2-heading h2{
	margin:0;
	font-size:30px;
	line-height:1.2;
	font-weight:700;
}

.gasp-v2-view-all{
	flex:0 0 auto;
	text-decoration:none;
	font-weight:600;
}

.gasp-v2-grid{
	display:grid;
	grid-template-columns:repeat(var(--gasp-desktop),minmax(0,1fr));
	gap:18px;
}

.gasp-v2-card{
	min-width:0;
	background:#fff;
	border:1px solid #ededed;
	border-radius:16px;
	padding:14px;
}

.gasp-v2-image{
	height:var(--gasp-image-height);
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	margin-bottom:14px;
}

.gasp-v2-image img{
	display:block;
	width:100%;
	height:100%;
	object-fit:var(--gasp-image-fit);
}

.gasp-v2-name{
	font-size:14px;
	line-height:1.45;
	font-weight:600;
	margin:0 0 10px;
}

.gasp-v2-name a{
	color:inherit;
	text-decoration:none;
}

.gasp-v2-price{
	font-size:17px;
	font-weight:700;
}

.gasp-v2-price del{
	opacity:.55;
	font-size:13px;
	margin-right:5px;
}

.gasp-v2-price ins{
	text-decoration:none;
}

@media(max-width:1024px){
	.gasp-v2-grid{
		grid-template-columns:repeat(var(--gasp-tablet),minmax(0,1fr));
	}
}

@media(max-width:600px){
	.gasp-v2-section{
		margin:30px 0;
	}

	.gasp-v2-heading{
		align-items:flex-end;
	}

	.gasp-v2-heading h2{
		font-size:24px;
	}

	.gasp-v2-grid{
		grid-template-columns:repeat(var(--gasp-mobile),minmax(0,1fr));
		gap:10px;
	}

	.gasp-v2-card{
		padding:10px;
	}

	.gasp-v2-image{
		height:min(var(--gasp-image-height),170px);
	}
}

/* Popular category tabs */

.gasp-v2-tabs-section{
	margin:42px 0;
}

.gasp-v2-tabs{
	display:flex;
	align-items:center;
	gap:8px;
	margin-bottom:22px;
	overflow-x:auto;
	scrollbar-width:none;
}

.gasp-v2-tabs::-webkit-scrollbar{
	display:none;
}

.gasp-v2-tab{
	flex:0 0 auto;
	border:0;
	background:#f4f4f4;
	border-radius:999px;
	padding:10px 18px;
	font:inherit;
	font-weight:600;
	cursor:pointer;
}

.gasp-v2-tab.is-active{
	background:#111;
	color:#fff;
}

.gasp-v2-tab-panel{
	display:none;
}

.gasp-v2-tab-panel.is-active{
	display:block;
}

@media(max-width:600px){
	.gasp-v2-tabs-section{
		margin:30px 0;
	}

	.gasp-v2-tab{
		padding:9px 14px;
		font-size:13px;
	}
}

/* =========================================================
   TOP AREA
   ========================================================= */

.gasp-top{
	display:grid;
	grid-template-columns:minmax(190px,1fr) minmax(0,2.6fr) minmax(210px,1fr);
	gap:18px;
	margin:20px 0 42px;
	align-items:stretch;
}

/* Categories */

.gasp-top-categories{
	background:#f4f4f4;
	border-radius:18px;
	padding:18px;
}

.gasp-top-categories-title{
	font-size:18px;
	font-weight:700;
	margin-bottom:12px;
}

.gasp-top-categories ul{
	list-style:none;
	margin:0;
	padding:0;
}

.gasp-top-categories li{
	margin:0;
	padding:0;
}

.gasp-top-categories a{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:10px;
	padding:10px 2px;
	border-bottom:1px solid rgba(0,0,0,.07);
	color:inherit;
	text-decoration:none;
	font-size:14px;
	line-height:1.25;
}

.gasp-top-categories li:last-child a{
	border-bottom:0;
}

/* Slider */

.gasp-top-slider{
	position:relative;
	min-width:0;
	min-height:390px;
	overflow:hidden;
	border-radius:18px;
}

.gasp-slider-track{
	position:relative;
	height:100%;
	min-height:390px;
}

.gasp-slide{
	position:absolute;
	inset:0;
	display:grid;
	grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);
	align-items:center;
	background:var(--gasp-slide-bg);
	opacity:0;
	visibility:hidden;
	pointer-events:none;
	transition:opacity .3s ease;
	padding:36px;
}

.gasp-slide.is-active{
	opacity:1;
	visibility:visible;
	pointer-events:auto;
}

.gasp-slide-copy{
	position:relative;
	z-index:2;
}

.gasp-slide-copy h1{
	margin:0 0 12px;
	font-size:32px;
	line-height:1.15;
	font-weight:700;
}

.gasp-slide-copy p{
	margin:0;
	font-size:18px;
	line-height:1.4;
	color:#666;
	font-weight:600;
}

.gasp-slide-image{
	height:100%;
	min-height:300px;
	display:flex;
	align-items:center;
	justify-content:center;
}

.gasp-slide-image img{
	display:block;
	width:100%;
	height:100%;
	max-height:350px;
	object-fit:contain;
}

/* Slider controls */

.gasp-slider-arrow{
	position:absolute;
	top:50%;
	z-index:5;
	width:38px;
	height:38px;
	margin-top:-19px;
	border:0;
	border-radius:50%;
	background:rgba(255,255,255,.88);
	box-shadow:0 2px 12px rgba(0,0,0,.08);
	font-size:26px;
	line-height:1;
	cursor:pointer;
}

.gasp-slider-prev{
	left:12px;
}

.gasp-slider-next{
	right:12px;
}

.gasp-slider-dots{
	position:absolute;
	z-index:5;
	left:50%;
	bottom:16px;
	transform:translateX(-50%);
	display:flex;
	gap:7px;
}

.gasp-slider-dots button{
	width:8px;
	height:8px;
	padding:0;
	border:0;
	border-radius:50%;
	background:rgba(0,0,0,.25);
	cursor:pointer;
}

.gasp-slider-dots button.is-active{
	background:#111;
	transform:scale(1.25);
}

/* Hot deals */

.gasp-top-deals{
	border-radius:18px;
	background:#4933d1;
	color:#fff;
	padding:26px;
	display:flex;
	flex-direction:column;
	justify-content:center;
}

.gasp-top-deals-label{
	font-size:12px;
	font-weight:800;
	letter-spacing:.12em;
	opacity:.8;
	margin-bottom:12px;
}

.gasp-top-deals h2{
	color:inherit;
	font-size:25px;
	line-height:1.15;
	margin:0 0 12px;
}

.gasp-top-deals p{
	margin:0 0 22px;
	color:rgba(255,255,255,.8);
	line-height:1.5;
}

.gasp-top-deals a{
	display:inline-flex;
	align-self:flex-start;
	background:#fff;
	color:#222;
	padding:11px 17px;
	border-radius:999px;
	font-weight:700;
	text-decoration:none;
}

/* Tablet */

@media(max-width:1024px){

	.gasp-top{
		grid-template-columns:220px minmax(0,1fr);
	}

	.gasp-top-deals{
		grid-column:1 / -1;
		min-height:180px;
	}

}

/* Mobile */

@media(max-width:767px){

	.gasp-top{
		display:flex;
		flex-direction:column;
		gap:14px;
		margin-top:14px;
	}

	.gasp-top-categories{
		order:2;
	}

	.gasp-top-slider{
		order:1;
		min-height:420px;
	}

	.gasp-slider-track{
		min-height:420px;
	}

	.gasp-slide{
		grid-template-columns:1fr;
		grid-template-rows:auto 1fr;
		padding:26px 24px 42px;
		text-align:center;
	}

	.gasp-slide-copy h1{
		font-size:27px;
	}

	.gasp-slide-copy p{
		font-size:16px;
	}

	.gasp-slide-image{
		min-height:230px;
	}

	.gasp-slide-image img{
		max-height:260px;
	}

	.gasp-top-deals{
		order:3;
	}

}
