/* ============================================================
   YUKIS STOREFRONT — Purple Heritage Polish (sans-serif)
   Brand: #794ABA   Deep: #45236e   Light: #f4eefb
   ============================================================ */

:root {
	--yk-primary:        #794ABA;
	--yk-primary-700:    #5a2e94;
	--yk-primary-800:    #45236e;
	--yk-primary-900:    #321851;
	--yk-primary-50:     #f4eefb;
	--yk-primary-100:    #e8defa;
	--yk-primary-200:    #d6c2f1;

	--yk-text:           #1f1a30;
	--yk-text-soft:      #5a5266;
	--yk-text-muted:     #8a849a;
	--yk-border:         #ece9f3;
	--yk-bg:             #ffffff;
	--yk-bg-alt:         #faf8fd;

	--yk-card-shadow:    0 4px 14px rgba(56, 38, 92, .06);
	--yk-card-shadow-h:  0 12px 28px rgba(56, 38, 92, .12);
	--yk-radius:         12px;
	--yk-radius-sm:      8px;
}

/* ---------- BASE ---------- */
body {
	font-family: 'Inter', system-ui, -apple-system, "Segoe UI", Roboto, sans-serif !important;
	color: var(--yk-text) !important;
	background: var(--yk-bg) !important;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

a { color: var(--yk-primary); transition: color .15s; }
a:hover { color: var(--yk-primary-700); }

/* Override existing green theme buttons globally */
.btn-primary, .primary-btn, .add-cart, .yk-view-all-btn {
	font-family: inherit !important;
}


/* ============================================================
   HEADER
   ============================================================ */
.header-area {
	background: #fff !important;
	box-shadow: 0 1px 3px rgba(56, 38, 92, .04);
	border-bottom: 1px solid var(--yk-border);
}
.header-area .header-top {
	background: var(--yk-primary-800) !important;
	color: #fff !important;
	padding: 8px 0;
	font-size: 12px;
	letter-spacing: .3px;
}
.header-area .header-top a, .header-area .header-top span { color: #fff !important; }

.header-area .header-middle {
	padding: 14px 0;
}
.header-area .brand-logo .brand-image {
	max-height: 56px;
	width: auto;
}

/* Search bar */
.header-area .header-search,
.header-area .form-search {
	border: 1px solid var(--yk-border) !important;
	border-radius: 30px !important;
	overflow: hidden;
	background: var(--yk-bg-alt);
}
.header-area .header-search input,
.header-area .form-search input,
.header-area .header-search .form-select,
.header-area .header-search .form-control {
	border: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	padding-left: 16px;
	font-size: 14px;
}
.header-area .header-search .form-select {
	border-right: 1px solid var(--yk-border) !important;
	max-width: 140px;
}
.header-area .header-search button,
.header-area .form-search button,
.header-area .header-search .search-btn {
	background: var(--yk-primary) !important;
	color: #fff !important;
	border: 0 !important;
	padding: 0 18px !important;
}
.header-area .header-search button:hover,
.header-area .form-search button:hover {
	background: var(--yk-primary-700) !important;
}

/* Header icons (cart / wishlist) */
.header-btn .btn-icon, .header-area .btn-icon {
	font-size: 22px;
	color: var(--yk-text);
	transition: color .15s;
}
.header-btn:hover .btn-icon { color: var(--yk-primary); }

.cart-btn .count, .wishlist-btn .count, .yk-wish-count {
	min-width: 18px; height: 18px; line-height: 18px;
	font-size: 11px; border-radius: 50%; padding: 0 5px;
	position: absolute; top: -4px; right: -8px;
	background: var(--yk-primary) !important;
	color: #fff !important; font-weight: 700; text-align: center;
}
.cart-btn .btn-left, .wishlist-btn .btn-left { position: relative; }

/* Main menu nav */
.menu-area {
	background: var(--yk-bg) !important;
	border-top: 1px solid var(--yk-border);
}
.menu-area .main-menu > li.menu-item > a.menu-link {
	font-weight: 500;
	letter-spacing: .2px;
	padding: 14px 18px;
	color: var(--yk-text) !important;
	transition: color .15s;
	font-size: 14px;
	text-transform: uppercase;
}
.menu-area .main-menu > li.menu-item > a.menu-link:hover,
.menu-area .main-menu > li.menu-item.active > a.menu-link {
	color: var(--yk-primary) !important;
}


/* ============================================================
   BREADCRUMB
   ============================================================ */
.breadcrumb-area {
	background: linear-gradient(135deg, var(--yk-primary-50) 0%, #fff 100%) !important;
	padding: 38px 0 28px;
	margin-bottom: 36px;
	border-bottom: 1px solid var(--yk-border);
	text-align: center;
}
.breadcrumb-area .page-title {
	font-size: 32px;
	font-weight: 700;
	color: var(--yk-primary-800);
	margin-bottom: 8px;
	letter-spacing: -.3px;
}
.breadcrumb-pages {
	display: flex; gap: 6px; justify-content: center;
	margin: 0; padding: 0; list-style: none; flex-wrap: wrap;
	font-size: 13px;
}
.breadcrumb-pages .page-item { color: var(--yk-text-muted); }
.breadcrumb-pages .page-item:not(:last-child)::after {
	content: '/'; margin-left: 6px; opacity: .5;
}
.breadcrumb-pages .page-item-link { color: var(--yk-primary); text-decoration: none; }
.breadcrumb-pages .page-item-link:hover { color: var(--yk-primary-700); }


/* ============================================================
   HOME SECTIONS (Featured / Recent / Promise)
   ============================================================ */
.yk-home-section {
	padding: 60px 0;
}
.yk-section-recent { background: var(--yk-bg-alt); }

.yk-section-head {
	text-align: center;
	margin-bottom: 40px;
}
.yk-eyebrow {
	display: inline-block;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 3px;
	color: var(--yk-primary);
	text-transform: uppercase;
	margin-bottom: 8px;
}
.yk-section-title {
	font-size: 32px;
	font-weight: 700;
	color: var(--yk-primary-800);
	margin: 0 0 10px;
	letter-spacing: -.3px;
}
.yk-section-title::after {
	content: '';
	display: block;
	width: 56px;
	height: 3px;
	background: var(--yk-primary);
	margin: 14px auto 0;
	border-radius: 2px;
}
.yk-section-sub {
	font-size: 15px;
	color: var(--yk-text-soft);
	max-width: 520px;
	margin: 14px auto 0;
	line-height: 1.6;
}

.yk-home-grid {
	margin-left: -10px;
	margin-right: -10px;
}
.yk-home-grid > [class*="col-"] {
	padding-left: 10px;
	padding-right: 10px;
}

/* card tag badges (Featured / New) */
.yk-card-tag {
	position: absolute;
	top: 12px;
	left: 12px;
	z-index: 3;
	background: var(--yk-primary);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	padding: 4px 10px;
	border-radius: 4px;
	letter-spacing: 1px;
	text-transform: uppercase;
}
.yk-tag-featured { background: var(--yk-primary); }
.yk-tag-new { background: var(--yk-primary-800); }

.yk-view-all-btn {
	display: inline-block;
	background: transparent;
	color: var(--yk-primary);
	border: 2px solid var(--yk-primary);
	padding: 12px 32px;
	border-radius: 30px;
	font-weight: 600;
	text-decoration: none !important;
	transition: all .2s;
	font-size: 14px;
	letter-spacing: .5px;
}
.yk-view-all-btn:hover {
	background: var(--yk-primary);
	color: #fff !important;
	transform: translateY(-2px);
	box-shadow: 0 8px 18px rgba(121, 74, 186, .25);
}

/* ============================================================
   BRAND PROMISE STRIP
   ============================================================ */
.yk-promise-strip {
	background: var(--yk-primary-800);
	color: #fff;
	padding: 48px 0;
}
.yk-promise-item {
	text-align: center;
	padding: 12px;
}
.yk-promise-item i {
	font-size: 32px;
	color: #fff;
	margin-bottom: 14px;
	background: rgba(255, 255, 255, .12);
	width: 64px;
	height: 64px;
	line-height: 64px;
	border-radius: 50%;
	display: inline-block;
}
.yk-promise-item h4 {
	font-size: 16px;
	font-weight: 700;
	color: #fff;
	margin: 0 0 6px;
}
.yk-promise-item p {
	font-size: 13px;
	color: rgba(255, 255, 255, .75);
	margin: 0;
	line-height: 1.5;
}


/* ============================================================
   PRODUCT CARDS (used in shop, home, detail-related)
   ============================================================ */
.single-grid-product {
	background: #fff !important;
	border: 1px solid var(--yk-border) !important;
	border-radius: var(--yk-radius) !important;
	box-shadow: var(--yk-card-shadow) !important;
	padding: 14px !important;
	margin-bottom: 24px !important;
	transition: transform .2s, box-shadow .2s !important;
	position: relative;
	display: flex;
	flex-direction: column;
	height: calc(100% - 24px);
}
.single-grid-product:hover {
	transform: translateY(-4px);
	box-shadow: var(--yk-card-shadow-h) !important;
	border-color: var(--yk-primary-200) !important;
}
.single-grid-product .product-top {
	position: relative;
	overflow: hidden;
	border-radius: var(--yk-radius-sm);
	background: var(--yk-primary-50);
	margin-bottom: 14px;
	z-index: 1;
}
.single-grid-product .product-thumbnal {
	width: 100%;
	height: auto;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	transition: transform .35s ease;
	display: block;
}
.single-grid-product:hover .product-thumbnal { transform: scale(1.06); }

.single-grid-product .product-info {
	display: flex; flex-direction: column; flex: 1;
}
.single-grid-product .product-name {
	font-size: 15px;
	font-weight: 600;
	margin: 0 0 8px;
	min-height: 42px;
	line-height: 1.4;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font-family: inherit !important;
}
.single-grid-product .product-link {
	color: var(--yk-text) !important;
	text-decoration: none !important;
	transition: color .15s;
}
.single-grid-product .product-link:hover { color: var(--yk-primary) !important; }

.single-grid-product .product-price { margin-bottom: 10px; }
.single-grid-product .product-price .price {
	font-size: 18px;
	font-weight: 700;
	color: var(--yk-primary-800);
}

.single-grid-product .stock-status {
	margin-bottom: 10px !important;
	padding-bottom: 0 !important;
}
.single-grid-product .stock-status .badge {
	font-size: 10px;
	padding: 4px 9px;
	border-radius: 4px;
	font-weight: 600;
	letter-spacing: .5px;
	text-transform: uppercase;
}

/* Add to Cart / View Product button on cards */
.single-grid-product .add-cart {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	gap: 6px;
	background: var(--yk-primary) !important;
	color: #fff !important;
	padding: 10px 16px !important;
	border-radius: 6px !important;
	font-weight: 600 !important;
	font-size: 13px !important;
	text-decoration: none !important;
	transition: background .15s, transform .1s;
	border: 0 !important;
	white-space: nowrap;
	margin-top: auto;
}
.single-grid-product .add-cart:hover {
	background: var(--yk-primary-700) !important;
	color: #fff !important;
}
.single-grid-product .add-cart:active { transform: translateY(1px); }

/* qty stepper alignment */
.yk-qty-row {
	border: 1px solid var(--yk-border) !important;
	border-radius: 6px !important;
	height: 38px !important;
	margin: 0 !important;
}
.yk-qty-row button {
	width: 32px !important;
	font-size: 16px !important;
	font-weight: 600;
	background: var(--yk-bg-alt) !important;
	color: var(--yk-primary) !important;
	border: 0 !important;
}
.yk-qty-row input.yk-qty-input {
	width: 36px !important; font-weight: 600 !important;
	border: 0 !important;
	color: var(--yk-text) !important;
}
.yk-cart-row { gap: 8px !important; margin-top: 4px !important; }


/* ============================================================
   WISHLIST HEART BUTTON
   ============================================================ */
.yk-wish-btn.yk-wish-corner {
	position: absolute;
	top: 10px; right: 10px;
	width: 36px; height: 36px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: rgba(255, 255, 255, .94);
	border: 0;
	border-radius: 50%;
	box-shadow: 0 2px 8px rgba(0, 0, 0, .12);
	color: var(--yk-text-muted);
	cursor: pointer;
	z-index: 5;
	transition: all .15s;
}
.yk-wish-btn.yk-wish-corner:hover {
	background: #fff;
	color: var(--yk-primary);
	transform: scale(1.1);
}
.yk-wish-btn.yk-wish-corner.is-active {
	color: #e74c3c;
	background: #fff;
}
.yk-wish-btn.yk-wish-corner i { font-size: 15px; }


/* ============================================================
   PRODUCT DETAIL
   ============================================================ */
.product-single-area {
	padding: 24px 0 60px;
}
.product-single-area .product-single-left img {
	width: 100%;
	height: auto;
	border-radius: var(--yk-radius);
	border: 1px solid var(--yk-border);
	box-shadow: var(--yk-card-shadow);
	background: var(--yk-primary-50);
}
.product-single-area .product-info .product-catagory {
	font-size: 12px;
	color: var(--yk-primary);
	font-weight: 600;
	letter-spacing: 1.5px;
	text-transform: uppercase;
	margin-bottom: 10px;
}
.product-single-area .product-info .product-name {
	font-size: 28px;
	font-weight: 700;
	color: var(--yk-primary-800);
	line-height: 1.2;
	margin-bottom: 14px;
	letter-spacing: -.3px;
}
.product-single-area .product-info .product-price .price {
	font-size: 26px;
	color: var(--yk-primary);
	font-weight: 700;
}
.product-single-area .product-bottom-button {
	gap: 12px; margin-top: 22px; flex-wrap: wrap;
}
.product-single-area .product-bottom-button .primary-btn {
	background: var(--yk-primary) !important;
	color: #fff !important;
	border: 0 !important;
	padding: 13px 28px !important;
	border-radius: var(--yk-radius-sm) !important;
	font-weight: 600 !important;
	display: inline-flex !important;
	align-items: center; gap: 8px;
	transition: all .15s !important;
	font-family: inherit !important;
}
.product-single-area .product-bottom-button .primary-btn:hover {
	background: var(--yk-primary-700) !important;
	color: #fff !important;
	transform: translateY(-1px);
	box-shadow: 0 8px 18px rgba(121, 74, 186, .25);
}

.size-switch .single-size,
.size-switch .single-size-wt {
	border: 1px solid var(--yk-border) !important;
	background: #fff !important;
	color: var(--yk-text) !important;
	border-radius: 6px !important;
	padding: 7px 14px !important;
	margin: 0 6px 6px 0 !important;
	cursor: pointer;
	transition: all .15s;
	font-size: 13px;
	font-weight: 500;
}
.size-switch .single-size.active,
.size-switch .single-size-wt.active {
	border-color: var(--yk-primary) !important;
	background: var(--yk-primary) !important;
	color: #fff !important;
}

.nav-tabs-menu .nav-tabs { border-bottom: 2px solid var(--yk-border); }
.nav-tabs-menu .nav-tabs .nav-link {
	border: 0 !important;
	color: var(--yk-text-muted);
	font-weight: 600;
	padding: 13px 20px;
	border-radius: 0;
	font-size: 14px;
	letter-spacing: .3px;
}
.nav-tabs-menu .nav-tabs .nav-link.active,
.nav-tabs-menu .nav-tabs .nav-link:hover {
	color: var(--yk-primary);
	background: transparent !important;
	border-bottom: 2px solid var(--yk-primary) !important;
	margin-bottom: -2px;
}

/* qty +/- on detail page */
.product-single-area .cart-plus-minus {
	display: inline-flex; align-items: stretch;
	border: 1px solid var(--yk-border);
	border-radius: var(--yk-radius-sm); overflow: hidden;
	margin-right: 12px;
}
.product-single-area .cart-plus-minus .qtybutton {
	width: 40px; background: var(--yk-bg-alt);
	cursor: pointer; font-weight: 700; font-size: 16px;
	color: var(--yk-primary);
	display: flex; align-items: center; justify-content: center;
	user-select: none;
}
.product-single-area .cart-plus-minus .qtybutton:hover { background: var(--yk-primary-50); }
.product-single-area .cart-plus-minus .cart-plus-minus-box {
	border: 0; width: 48px; text-align: center;
	font-weight: 600; font-size: 14px; color: var(--yk-text);
}

.product-single-area .features {
	list-style: none; padding: 0; margin: 22px 0;
	border-top: 1px solid var(--yk-border); padding-top: 18px;
}
.product-single-area .single-feature {
	display: flex; align-items: center; gap: 12px;
	margin-bottom: 12px; font-size: 14px;
	color: var(--yk-text-soft);
}
.product-single-area .single-feature .icon { width: 28px; height: 28px; }


/* ============================================================
   CART / CHECKOUT
   ============================================================ */
.cart-page-area {
	padding: 24px 0 60px;
}
.cart-page-area .cart-table,
.cart-page-area .table {
	background: #fff;
	border-radius: var(--yk-radius);
	box-shadow: var(--yk-card-shadow);
	overflow: hidden;
}
.cart-page-area thead {
	background: var(--yk-primary-50);
}
.cart-page-area thead th {
	color: var(--yk-primary-800) !important;
	font-weight: 600 !important;
	font-size: 12px !important;
	text-transform: uppercase !important;
	letter-spacing: .5px !important;
	border: 0 !important;
	padding: 14px !important;
}

.checkout-page-area {
	padding: 24px 0 60px;
}
.checkout-page-area .form-control,
.checkout-page-area input[type="text"],
.checkout-page-area input[type="email"],
.checkout-page-area input[type="tel"],
.checkout-page-area select,
.checkout-page-area textarea {
	border-radius: var(--yk-radius-sm) !important;
	border: 1px solid var(--yk-border) !important;
	padding: 11px 14px !important;
	font-size: 14px !important;
	background: #fff !important;
}
.checkout-page-area .form-control:focus,
.checkout-page-area input:focus,
.checkout-page-area select:focus,
.checkout-page-area textarea:focus {
	border-color: var(--yk-primary) !important;
	box-shadow: 0 0 0 3px rgba(121, 74, 186, .15) !important;
	outline: 0 !important;
}
.checkout-page-area label, .checkout-page-area .form-label {
	font-weight: 600;
	color: var(--yk-text);
	font-size: 13px;
	margin-bottom: 6px;
}


/* ============================================================
   FOOTER
   ============================================================ */
footer, .footer-area {
	background: var(--yk-primary-900) !important;
	color: rgba(255, 255, 255, .82) !important;
	margin-top: 50px;
	padding: 50px 0 0 !important;
}
footer h3, footer h4, footer h5,
.footer-area h3, .footer-area h4, .footer-area h5 {
	font-weight: 700 !important;
	margin-bottom: 16px !important;
	letter-spacing: .3px !important;
	color: #fff !important;
	font-size: 16px !important;
}
footer a, .footer-area a {
	color: rgba(255, 255, 255, .78) !important;
	transition: color .15s;
}
footer a:hover, .footer-area a:hover {
	color: #fff !important;
	text-decoration: none !important;
}
footer .footer-link, .footer-area .footer-link {
	list-style: none;
	padding: 0;
}
footer .footer-link li, .footer-area .footer-link li {
	margin-bottom: 8px;
	font-size: 14px;
}
footer .footer-bottom, .footer-area .footer-bottom {
	border-top: 1px solid rgba(255, 255, 255, .1);
	padding: 20px 0;
	margin-top: 40px;
	font-size: 13px;
	text-align: center;
}


/* ============================================================
   PAGINATION
   ============================================================ */
.pagination { gap: 4px; }
.pagination .page-item .page-link {
	border-radius: 6px !important;
	border: 1px solid var(--yk-border) !important;
	color: var(--yk-text) !important;
	margin: 0 2px;
	padding: 8px 14px !important;
	font-weight: 500;
}
.pagination .page-item.active .page-link,
.pagination .page-item .page-link:hover {
	background: var(--yk-primary) !important;
	color: #fff !important;
	border-color: var(--yk-primary) !important;
}


/* ============================================================
   OFFCANVAS / CART DRAWER
   ============================================================ */
.offcanvas .offcanvas-header {
	border-bottom: 1px solid var(--yk-border);
	padding: 18px 20px;
	background: var(--yk-primary-50);
}
.offcanvas .offcanvas-title {
	font-weight: 700;
	color: var(--yk-primary-800);
}


/* ============================================================
   GENERIC BUTTON OVERRIDES
   ============================================================ */
.primary-btn {
	background: var(--yk-primary) !important;
	color: #fff !important;
	border: 0 !important;
	border-radius: var(--yk-radius-sm) !important;
	padding: 11px 26px !important;
	font-weight: 600 !important;
	letter-spacing: .3px !important;
	transition: all .15s !important;
}
.primary-btn:hover {
	background: var(--yk-primary-700) !important;
	color: #fff !important;
}


/* ============================================================
   MOBILE — every breakpoint thoroughly tested
   ============================================================ */

@media (max-width: 1199.98px) {
	.yk-section-title { font-size: 28px; }
}

@media (max-width: 991.98px) {
	.yk-home-section { padding: 48px 0; }
	.yk-section-head { margin-bottom: 30px; }
	.yk-section-title { font-size: 26px; }
	.yk-section-sub { font-size: 14px; }

	.breadcrumb-area { padding: 28px 0 20px; margin-bottom: 26px; }
	.breadcrumb-area .page-title { font-size: 24px; }

	.product-single-area { padding-top: 12px !important; }
	.product-single-area .product-single-left { margin-bottom: 26px; }
	.product-single-area .product-info .product-name { font-size: 24px; }
	.product-single-area .product-info .product-price .price { font-size: 22px; }

	.yk-promise-strip { padding: 36px 0; }
}

@media (max-width: 767.98px) {
	/* Header */
	.header-area .header-top { font-size: 11px; padding: 6px 0; }
	.header-area .header-middle { padding: 10px 0; }
	.header-area .header-middle .container,
	.header-area .header-middle .container-fluid { padding: 0 12px; }

	.mobile-header-area .menu-wrap {
		display: flex; align-items: center; justify-content: space-between;
		gap: 8px; padding: 8px 0;
	}
	.mobile-header-area .header-right {
		display: flex; align-items: center; gap: 4px;
	}
	.mobile-header-area .header-btn {
		width: 38px; height: 38px;
		display: inline-flex; align-items: center; justify-content: center;
		position: relative;
	}
	.mobile-header-area .header-btn .btn-icon { font-size: 18px; }

	/* Home sections */
	.yk-home-section { padding: 40px 0; }
	.yk-section-title { font-size: 22px; }
	.yk-eyebrow { font-size: 11px; letter-spacing: 2px; }
	.yk-section-sub { font-size: 13px; padding: 0 16px; }

	/* Shop grid: 2 columns on phones */
	.product-list .col-lg-3,
	.product-list .col-md-4,
	.product-list .col-sm-6,
	.yk-home-grid .col-lg-3,
	.yk-home-grid .col-md-4,
	.yk-home-grid .col-sm-6,
	.yk-home-grid .col-6 {
		flex: 0 0 50% !important;
		max-width: 50% !important;
	}

	.single-grid-product { padding: 10px !important; margin-bottom: 16px !important; height: auto; }
	.single-grid-product .product-name { font-size: 13.5px; min-height: 38px; margin-bottom: 6px; }
	.single-grid-product .product-price .price { font-size: 16px; }
	.single-grid-product .add-cart { font-size: 12px; padding: 8px 12px !important; }
	.yk-card-tag { font-size: 9px; padding: 3px 8px; top: 8px; left: 8px; }
	.yk-wish-btn.yk-wish-corner { width: 32px; height: 32px; top: 8px; right: 8px; }
	.yk-wish-btn.yk-wish-corner i { font-size: 13px; }

	/* Product detail buttons stack */
	.product-single-area .product-bottom-button { flex-direction: column; align-items: stretch; }
	.product-single-area .product-bottom-button .primary-btn,
	.product-single-area .product-bottom-button .yk-wish-btn {
		width: 100%; justify-content: center;
	}
	.yk-wish-btn.yk-wish-inline {
		width: 100% !important; height: 46px !important;
		border-radius: var(--yk-radius-sm) !important; margin-left: 0 !important;
	}

	.nav-tabs-menu .nav-tabs .nav-link { padding: 10px 14px; font-size: 13.5px; }

	/* Cart offcanvas full width */
	.offcanvas { width: 92vw !important; }

	/* Footer columns stack with breathing */
	footer .row > [class*="col-"], .footer-area .row > [class*="col-"] {
		margin-bottom: 28px;
	}
	footer .footer-bottom { margin-top: 16px; padding: 16px 0; font-size: 12px; }

	/* Promise strip 2x2 on phones */
	.yk-promise-item { padding: 16px 8px; margin-bottom: 8px; }
	.yk-promise-item i { font-size: 26px; width: 54px; height: 54px; line-height: 54px; }
	.yk-promise-item h4 { font-size: 14px; }
	.yk-promise-item p { font-size: 12px; }
}

@media (max-width: 480px) {
	.breadcrumb-area .page-title { font-size: 20px; }
	.yk-section-title { font-size: 20px; }
	.product-single-area .product-info .product-name { font-size: 20px; }
	.product-single-area .product-info .product-price .price { font-size: 19px; }
	.single-grid-product .product-name { min-height: 36px; }
	.single-grid-product .add-cart i { display: none; }
}

@media (max-width: 360px) {
	.yk-section-title { font-size: 18px; }
	.single-grid-product .product-name { font-size: 12.5px; }
	.single-grid-product .product-price .price { font-size: 14px; }
	.single-grid-product .add-cart { padding: 7px 8px !important; font-size: 11px; }
}


/* ============================================================
   MISC TIDIES
   ============================================================ */
.section-top:empty { display: none; }
.product-top { z-index: 1; }
.yk-wish-btn.yk-wish-corner { z-index: 5; }

/* hide leftover green theme buttons that don't get overridden */
.btn.btn-success {
	background: var(--yk-primary) !important;
	border-color: var(--yk-primary) !important;
}

/* progress-to-top button */
.progress-wrap {
	bottom: 28px !important;
	right: 28px !important;
	background: var(--yk-primary) !important;
}
.progress-wrap::after {
	color: #fff !important;
}

/* =====================================================================
   BUNDLE 2 — Trust Pages styles
   APPEND these rules to the END of: assets/css/template-overrides.css
   ===================================================================== */

/* ---------- Page renderer (Privacy / Terms / About / etc.) ---------- */
.yk-page-content {
	padding: 50px 0 70px;
}
.yk-page-body {
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	line-height: 1.75;
	color: #333;
}
.yk-page-body h1,
.yk-page-body h2,
.yk-page-body h3,
.yk-page-body h4 {
	color: #45236e;
	margin-top: 1.8em;
	margin-bottom: .8em;
	font-weight: 600;
}
.yk-page-body h1 { font-size: 28px; }
.yk-page-body h2 { font-size: 24px; border-bottom: 2px solid #f0e8fa; padding-bottom: 8px; }
.yk-page-body h3 { font-size: 20px; }
.yk-page-body h4 { font-size: 17px; }
.yk-page-body p,
.yk-page-body ul,
.yk-page-body ol { margin-bottom: 16px; }
.yk-page-body ul,
.yk-page-body ol { padding-left: 24px; }
.yk-page-body ul li,
.yk-page-body ol li { margin-bottom: 6px; }
.yk-page-body a { color: #794ABA; text-decoration: underline; }
.yk-page-body a:hover { color: #45236e; }
.yk-page-body strong { color: #45236e; }
.yk-page-body table {
	width: 100%;
	border-collapse: collapse;
	margin: 18px 0;
}
.yk-page-body table td,
.yk-page-body table th {
	border: 1px solid #e2d5f1;
	padding: 10px 14px;
}
.yk-page-body table th { background: #f7f1fb; }
.yk-page-body blockquote {
	border-left: 4px solid #794ABA;
	background: #faf5fe;
	padding: 14px 22px;
	margin: 18px 0;
	color: #555;
	font-style: italic;
}
.yk-page-body hr {
	border: 0;
	border-top: 1px solid #e8d9f5;
	margin: 30px 0;
}
.yk-page-foot {
	margin-top: 40px;
	padding-top: 18px;
	border-top: 1px solid #ece1f5;
}

/* ---------- FAQ ---------- */
.yk-faq-section {
	padding: 50px 0 70px;
	font-family: 'Inter', sans-serif;
}
.yk-faq-category { margin-bottom: 36px; }
.yk-faq-cat-title {
	font-size: 22px;
	color: #45236e;
	font-weight: 600;
	margin: 0 0 18px;
	padding-bottom: 10px;
	border-bottom: 2px solid #794ABA;
}
.yk-faq-item {
	background: #fff;
	border: 1px solid #ece1f5;
	border-radius: 8px;
	margin-bottom: 10px;
	overflow: hidden;
	transition: box-shadow .2s;
}
.yk-faq-item[open] { box-shadow: 0 4px 14px rgba(121,74,186,.08); }
.yk-faq-q {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 16px 20px;
	cursor: pointer;
	font-weight: 500;
	color: #2c1851;
	list-style: none;
	user-select: none;
}
.yk-faq-q::-webkit-details-marker { display: none; }
.yk-faq-q-text { flex: 1; padding-right: 14px; }
.yk-faq-q-icon {
	width: 28px; height: 28px; flex: 0 0 auto;
	border-radius: 50%;
	background: #f4eefb;
	color: #794ABA;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
	transition: transform .25s, background .25s, color .25s;
}
.yk-faq-item[open] .yk-faq-q-icon {
	background: #794ABA;
	color: #fff;
	transform: rotate(45deg);
}
.yk-faq-a {
	padding: 4px 20px 20px;
	color: #555;
	line-height: 1.65;
	border-top: 1px solid #f4eefb;
}
.yk-faq-a p:last-child { margin-bottom: 0; }
.yk-faq-help {
	margin-top: 50px;
	background: linear-gradient(135deg, #f7f1fb 0%, #faf5fe 100%);
	padding: 36px 40px;
	border-radius: 12px;
	text-align: center;
}
.yk-faq-help h3 { color: #45236e; margin: 0 0 8px; }
.yk-faq-help p { color: #666; margin: 0 0 18px; }

/* ---------- Contact form page ---------- */
.yk-contact-section {
	padding: 50px 0 70px;
	font-family: 'Inter', sans-serif;
}
.yk-contact-card,
.yk-contact-info {
	background: #fff;
	padding: 30px 32px;
	border-radius: 12px;
	box-shadow: 0 6px 18px rgba(0,0,0,.04);
	border: 1px solid #ece1f5;
	height: 100%;
}
.yk-contact-heading {
	font-size: 22px;
	font-weight: 600;
	color: #45236e;
	margin: 0 0 6px;
}
.yk-contact-sub { color: #777; margin: 0 0 22px; }
.yk-contact-card .form-control {
	border-color: #ece1f5;
	border-radius: 6px;
	padding: 10px 14px;
	transition: border-color .2s, box-shadow .2s;
}
.yk-contact-card .form-control:focus {
	border-color: #794ABA;
	box-shadow: 0 0 0 3px rgba(121,74,186,.15);
}
.yk-captcha-row {
	background: #faf5fe;
	border: 1px dashed #d9c5ee;
	border-radius: 8px;
	padding: 14px 16px;
}
.yk-captcha-input { max-width: 120px; }

.yk-contact-info-block {
	display: flex;
	gap: 14px;
	padding: 14px 0;
	border-bottom: 1px solid #f4eefb;
}
.yk-contact-info-block:last-child { border-bottom: 0; padding-bottom: 0; }
.yk-contact-icon {
	width: 42px; height: 42px;
	border-radius: 50%;
	background: linear-gradient(135deg, #794ABA, #5a2f96);
	color: #fff;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	font-size: 16px;
}
.yk-contact-info-block h4 {
	margin: 0 0 4px;
	font-size: 15px;
	color: #45236e;
	font-weight: 600;
}
.yk-contact-info-block p { margin: 0; color: #555; line-height: 1.55; }
.yk-contact-info-block a { color: #794ABA; }

/* ---------- 404 page ---------- */
.yk-404-section {
	padding: 80px 0 100px;
	font-family: 'Inter', sans-serif;
}
.yk-404-block {
	background: #fff;
	padding: 60px 40px 50px;
	border-radius: 14px;
	box-shadow: 0 8px 30px rgba(0,0,0,.05);
	border: 1px solid #ece1f5;
}
.yk-404-num {
	font-size: 110px;
	font-weight: 800;
	line-height: 1;
	background: linear-gradient(135deg, #794ABA 0%, #45236e 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	background-clip: text;
	margin-bottom: 16px;
}
.yk-404-title {
	font-size: 28px;
	color: #45236e;
	margin: 0 0 12px;
	font-weight: 600;
}
.yk-404-sub { color: #666; font-size: 16px; margin-bottom: 30px; }
.yk-404-search {
	display: flex;
	gap: 8px;
	max-width: 460px;
	margin: 0 auto 30px;
}
.yk-404-search .form-control { flex: 1; }
.yk-404-links {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
	margin-top: 20px;
}
.yk-404-link {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	padding: 18px 10px;
	background: #faf5fe;
	border-radius: 10px;
	color: #45236e;
	text-decoration: none;
	transition: background .2s, transform .2s, box-shadow .2s;
}
.yk-404-link i { font-size: 22px; color: #794ABA; }
.yk-404-link span { font-size: 13px; font-weight: 500; }
.yk-404-link:hover {
	background: #794ABA;
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 6px 14px rgba(121,74,186,.25);
	text-decoration: none;
}
.yk-404-link:hover i { color: #fff; }

@media (max-width: 575px) {
	.yk-404-num { font-size: 80px; }
	.yk-404-title { font-size: 22px; }
	.yk-404-links { grid-template-columns: repeat(2, 1fr); }
	.yk-404-search { flex-direction: column; }
}

/* ---------- Cookie consent bar ---------- */
.yk-cookie-bar {
	position: fixed;
	left: 16px;
	right: 16px;
	bottom: 16px;
	z-index: 9999;
	background: #45236e;
	color: #fff;
	border-radius: 12px;
	box-shadow: 0 12px 30px rgba(0,0,0,.25);
	max-width: 1100px;
	margin: 0 auto;
	font-family: 'Inter', sans-serif;
}
.yk-cookie-inner {
	display: flex;
	align-items: center;
	gap: 18px;
	padding: 14px 20px;
	flex-wrap: wrap;
}
.yk-cookie-text {
	flex: 1;
	min-width: 240px;
	font-size: 14px;
	line-height: 1.5;
}
.yk-cookie-text i { margin-right: 6px; color: #d9c5ee; }
.yk-cookie-text a { color: #fff; text-decoration: underline; }
.yk-cookie-actions { flex: 0 0 auto; }
.yk-cookie-actions .primary-btn {
	background: #fff !important;
	color: #45236e !important;
	border: none;
	padding: 9px 22px !important;
	font-size: 14px;
	font-weight: 600;
}
.yk-cookie-actions .primary-btn:hover {
	background: #f4eefb !important;
}

/* ---------- Admin: contact submission row highlighting ---------- */
.yk-sub-row.yk-sub-new td { font-weight: 600; }
.yk-sub-message {
	background: #f7f1fb;
	padding: 18px 22px;
	border-radius: 8px;
	line-height: 1.65;
	color: #333;
	white-space: pre-wrap;
	word-wrap: break-word;
}
