/* ============== home page Banner *========================= */

	.home  [data-vertical-spacing*=bottom]{
		padding:0;
	}

	.elementor-30 .elementor-element.elementor-element-9d7f813 {
		gap: 0;
	}

	.e-con,
	.e-con>.e-con-inner {
		margin-block: 0;
		padding-block: 0;
		padding-inline: 0;
	}

	/* ================= HERO SLIDER ================= */
	.hero-slider {
		position: relative;
		overflow: hidden;
		background: var(--primary);
	}

	/* SLIDES WRAPPER */
	.slides {
		display: flex;
		transition: transform 1s cubic-bezier(.77,0,.18,1);
	}

	/* SINGLE SLIDE */
	.slide {
		min-width: 100%;
		display: flex;
		align-items: center;
		padding: 20px;
	}

	/* CONTENT */
	.slide-content {
		flex: 1;
		animation: fadeUp .8s ease forwards;
	}

	.slide-content .tag {
		display: inline-block;
		background: var(--accent-soft);
		color: var(--primary);
		padding: 6px 14px;
		border-radius: 20px;
		font-size: 12px;
		margin-bottom: 15px;
	}

	.slide-content h1 {
		font-size: 42px;
		margin-bottom: 10px;
		color: var(--white);
	}

	.slide-content p {
		font-size: 18px;
		color: var(--white);
		margin-bottom: 25px;
	}

	/* PRIMARY BUTTON */
	.btn-primary {
		background: var(--accent);
		color: var(--white);
		padding: 14px 26px;
		border-radius: 10px;
		text-decoration: none;
		font-weight: 600;
		box-shadow: var(--theme-button-shadow);
	}

	.hero-inner-text {
		width: 620px;
		margin: 0 auto;
		margin-right: 0;
		color: var(--white);
	}

	.slide-image-inner {
		width: 620px;
		margin: 0 auto;
		text-align: left;
	}

	/* IMAGE */
	.slide-image {
		flex: 1;
		text-align: center;
	}

	.slide-image img {
		width: 300px;
		border-radius: 30px;
		animation: scaleIn 1s ease forwards;
	}

	/* CONTROLS */
	.hero-controls {
		position: absolute;
		top: 50%;
		width: 100%;
		display: flex;
		justify-content: space-between;
		padding: 0 20px;
		transform: translateY(-50%);
	}

	.hero-controls button {
		background: var(--white);
		border: none;
		width: 46px;
		height: 46px;
		border-radius: 50%;
		font-size: 24px;
		cursor: pointer;
		box-shadow: 0 10px 30px var(--shadow-soft);
	}

	/* PROGRESS BAR */
	.hero-progress {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 4px;
		background: var(--border-light);
	}

	.hero-progress .bar {
		width: 0%;
		height: 100%;
		background: var(--primary);
		animation: progress 6s linear infinite;
	}

	/* ANIMATIONS */
	@keyframes fadeUp {
		from { opacity: 0; transform: translateY(30px); }
		to { opacity: 1; transform: none; }
	}

	@keyframes scaleIn {
		from { transform: scale(.9); opacity: 0; }
		to { transform: scale(1); opacity: 1; }
	}

	@keyframes progress {
		from { width: 0%; }
		to { width: 100%; }
	}

	/* MOBILE */
	@media (max-width: 768px) {
		.slide-image-inner,
		.hero-inner-text {
			width: 100%;
		}

		.slide {
			flex-direction: column-reverse;
			padding: 20px;
			text-align: center;
		}

		.slide-content h1 {
			font-size: 30px;
		}
	}

	/*============= Best Seller ========================*/
	.home-best-sellers {
		background: var(--bg2);
		margin-top: -10px;
		color: var(--primary);
	}
	.home-best-sellers .section-header h2,
	.home-best-sellers .section-header p{
			color: var(--theme-palette-color-8);
	}

	/* Product cards polish */
	.home-best-sellers ul.products li.product {
		border-radius: 18px;
		overflow: hidden;
		background: var(--white);
		transition: transform 0.3s ease, box-shadow 0.3s ease;
	}

	.home-best-sellers ul.products li.product:hover {
		transform: translateY(-6px);
		box-shadow: 0 20px 45px var(--shadow-soft);
	}

	/* Product image */
	.home-best-sellers ul.products li.product img {
		border-radius: 18px 18px 0 0;
	}

	/* Title & price */
	.home-best-sellers .woocommerce-loop-product__title {
		font-size: 16px;
		font-weight: 600;
		color: var(--theme-headings-color);
	}

	.home-best-sellers .price {
		color: var(--primary);
		font-weight: 600;
	}
    .home-section {
		padding:40px 30px;
	}
	.home-section.home-occasion{
		padding:0;
		padding-bottom:20px;
	}
	.home-container {
		max-width: 1290px;
		margin: 0 auto;
	}

	.home-occasion {
		background: var(--white);
	}

	.section-header {
		text-align: center;
		margin-bottom: 48px;
	}

	.section-header h2 {
		font-size: 28px;
		font-weight: 700;
		margin-bottom: 10px;
		color: var(--theme-headings-color);
	}

	.section-header p {
		font-size: 15px;
		color: var(--theme-text-color);
	}

	/* Dynamic block wrapper */
	.dynamic-content {
		position: relative;
	}

	/* Improve default category cards */
	.dynamic-content .product-category img {
		border-radius: 10px 10px 0 0;
	}

	.dynamic-content .product-category {
		border-radius: 10px;
		border: solid 1px var(--theme-border-color);
		transition: transform 0.3s ease, box-shadow 0.3s ease;
		background: var(--primary-hover)!important;
		color: var(--white);
	}

	.dynamic-content .product-category h2 a {
		color: var(--white);
	}

	.dynamic-content .product-category .count {
		display: none;
	}

	.dynamic-content .product-category:hover {
		transform: translateY(-6px);
		box-shadow: 0 18px 40px var(--shadow-soft);
	}




	/* ===== SECTION TITLE ===== */
	.section-title {
		text-align: center;
		margin-bottom: 70px;
	}

	.section-title .icon {
		font-size: 28px;
		display: block;
		margin-bottom: 6px;
	}

	.section-title h2 {
		font-size: 32px;
		color: var(--theme-headings-color);
		font-weight: 700;
	}

	.section-title .divider {
		display: inline-block;
		width: 60px;
		height: 3px;
		background: var(--accent);
		margin-top: 12px;
		border-radius: 2px;
	}

	/* ===== MAIN SERVICE ===== */
	.service-main {
		display: grid;
		grid-template-columns: 1fr 1.2fr;
		gap: 40px;
		align-items: center;
		margin-bottom: 70px;
	}

	.service-image img {
		width: 100%;
		border-radius: 20px;
	}

	.service-content h3 {
		font-size: 26px;
		color: var(--text-heading);
		margin-bottom: 14px;
	}

	.service-content p {
		font-size: 15px;
		color: var(--theme-text-color);
		line-height: 1.7;
		margin-bottom: 14px;
	}

	.btn-primary {
		display: inline-block;
		background: var(--accent);
		color: var(--white);
		padding: 12px 28px;
		border-radius: 30px;
		font-size: 14px;
		font-weight: 600;
		text-decoration: none;
		transition: all 0.3s ease;
	}

	.btn-primary:hover {
		background: var(--primary-hover);
		transform: translateY(-2px);
	}

	/* ===== SERVICE CARDS ===== */
	.service-cards {
		background: var(--section-background-soft);
		border-radius: 26px;
		padding: 50px 30px;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 30px;
		text-align: center;
	}

	.card {
		padding: 20px;
	}

	.card-icon {
		font-size: 36px;
		color: var(--primary);
		display: block;
		margin-bottom: 12px;
	}

	.card h4 {
		font-size: 18px;
		color: var(--text-heading);
		margin-bottom: 8px;
	}

	.card p {
		font-size: 14px;
		color: var(--theme-text-color);
		line-height: 1.6;
	}

	/* ===== RESPONSIVE ===== */
	@media (max-width: 900px) {
		.service-main {
			grid-template-columns: 1fr;
			text-align: center;
		}

		.service-content {
			max-width: 600px;
			margin: 0 auto;
		}

		.service-cards {
			grid-template-columns: 1fr;
		}
	}
