@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@400;500;700;800&family=Inter:wght@400;500;600;700;800&display=swap');

:root {
	--st-ink: #2C140E; /* Warm dark chocolate / temple auburn */
	--st-muted: #785950; /* Terracotta dust / warm earth */
	--st-red: #D2143A; /* Auspicious vermilion red (vibrant kumkum) */
	--st-red-dark: #8B0000; /* Deep crimson red aura */
	--st-gold: #E65F00; /* Auspicious warm saffron (kesar) */
	--st-gold-light: #FFEEDB; /* Soft saffron glow */
	--st-yellow: #FBBF24; /* Sacred marigold yellow (diya light) */
	--st-yellow-light: #FEF3C7; /* Soft marigold tint */
	--st-leaf: #10B981; /* Vibrant sacred mango leaf green */
	--st-leaf-light: #D1FAE5; /* Soft pastel leaf green */
	--st-paper: #FFFDF9; /* Auspicious warm raw-rice white */
	--st-soft: #FFF4E8; /* Soft glowing cream */
	--st-line: #F5E5D5; /* Elegant warm sand border line */

	/* Interpolation helper */
	--in-oklab: ;
	--in-oklch: ;
}

@supports (linear-gradient(in oklch, white, black)) {
	:root {
		--in-oklab: in oklab;
		--in-oklch: in oklch;
	}
}

/* --- Custom Scrollbar --- */
::-webkit-scrollbar {
	width: 8px;
	height: 8px;
}
::-webkit-scrollbar-track {
	background: var(--st-paper);
}
::-webkit-scrollbar-thumb {
	background: var(--st-gold);
	border-radius: 9999px;
}
::-webkit-scrollbar-thumb:hover {
	background: var(--st-red);
}
/* Firefox */
* {
	scrollbar-color: var(--st-gold) var(--st-paper);
	scrollbar-width: thin;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html,
body {
	max-width: 100%;
	overflow-x: hidden;
}

body {
	background: var(--st-paper);
	color: var(--st-ink);
}

body,
button,
input,
select,
textarea {
	font-family: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1,
h2,
h3,
.site-title {
	color: var(--st-ink);
	font-family: Outfit, Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	letter-spacing: -0.01em;
}

/* --- Announcement Bar --- */
.st-announcement-bar {
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%);
	color: #ffffff;
	padding: 12px 0;
	position: relative;
	z-index: 9999;
	box-shadow: 0 2px 10px rgba(210, 20, 58, 0.15);
}

.st-marquee-container {
	display: flex;
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
}

.st-marquee-content {
	display: inline-block;
	white-space: nowrap;
	padding-left: 100%;
	animation: st-marquee-anim 45s linear infinite;
	font-family: Outfit, Inter, sans-serif;
	font-weight: 700;
	font-size: 0.88rem;
	letter-spacing: 0.03em;
	text-transform: uppercase;
}

.st-marquee-content:hover {
	animation-play-state: paused;
}

.st-announcement-link {
	color: #ffffff !important;
	text-decoration: none !important;
	display: inline-block;
	transition: opacity 0.2s ease;
}

.st-announcement-link:hover {
	opacity: 0.95;
	text-decoration: underline !important;
}

@keyframes st-marquee-anim {
	0% { transform: translate3d(0, 0, 0); }
	100% { transform: translate3d(-100%, 0, 0); }
}

/* Marigold garland hanging beneath announcement bar */
.st-announcement-bar::after {
	content: "";
	position: absolute;
	bottom: -8px;
	left: 0;
	width: 100%;
	height: 8px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 16' fill='none'%3E%3Cpath d='M0 8Q10 14 20 8T40 8' stroke='%2310B981' stroke-width='2.5' stroke-linecap='round'/%3E%3Ccircle cx='10' cy='9' r='4.5' fill='%23E65F00'/%3E%3Ccircle cx='10' cy='9' r='2.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='4.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='2.5' fill='%23E65F00'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 20px 8px;
	z-index: 10;
}

.st-announcement-bar__content {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 12px;
	flex-wrap: wrap;
}

.st-announcement-bar__button {
	background-color: var(--st-ink);
	color: #ffffff !important;
	border-radius: 9999px;
	padding: 6px 14px;
	font-size: 0.75rem;
	font-weight: 800;
	text-decoration: none;
	letter-spacing: 0.05em;
	transition: all 0.3s ease;
	display: inline-block;
	animation: pulse-glow 2.5s infinite ease-in-out;
}

.st-announcement-bar__button:hover {
	background-color: var(--st-paper);
	color: var(--st-ink) !important;
	box-shadow: 0 0 12px rgba(255, 255, 255, 0.4);
}

@keyframes pulse-glow {
	0%, 100% {
		transform: scale(1);
		box-shadow: 0 0 0 0 rgba(44, 20, 14, 0.4);
	}
	50% {
		transform: scale(1.03);
		box-shadow: 0 0 10px 2px rgba(44, 20, 14, 0.2);
	}
}

/* --- Header / Navigation --- */
.site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: rgba(255, 253, 249, 0.78) !important;
	backdrop-filter: blur(16px) saturate(180%);
	-webkit-backdrop-filter: blur(16px) saturate(180%);
	border-bottom: 1.5px solid rgba(245, 229, 213, 0.45) !important;
	box-shadow: 0 4px 30px rgba(44, 20, 14, 0.02) !important;
	transition: all 0.3s ease;
}

.ast-primary-header-bar {
	background: transparent !important;
}

.site-primary-header-wrap {
	min-height: 72px;
}

.site-title a {
	color: var(--st-red); /* Site title in rich vermilion */
	font-size: 1.6rem;
	font-weight: 800;
	text-transform: uppercase;
	font-family: Outfit, sans-serif;
	letter-spacing: 0.05em;
}

.site-title a:hover {
	color: var(--st-gold);
}

.main-header-menu > .menu-item > .menu-link {
	color: var(--st-ink);
	font-size: 0.9rem;
	font-weight: 700;
	padding: 0 16px;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	position: relative;
	transition: color 0.3s ease;
}

.main-header-menu > .menu-item > .menu-link::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 16px;
	right: 16px;
	height: 3px;
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%);
	transform: scaleX(0);
	transform-origin: right;
	transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	border-radius: 9999px;
}

.main-header-menu > .menu-item:hover > .menu-link::after,
.main-header-menu > .current-menu-item > .menu-link::after {
	transform: scaleX(1);
	transform-origin: left;
}

.main-header-menu > .menu-item > .menu-link:hover,
.main-header-menu > .current-menu-item > .menu-link,
.main-header-menu > .current-menu-ancestor > .menu-link,
.ast-header-break-point .main-header-menu > .current-menu-item > .menu-link {
	color: var(--st-red) !important;
}

body.page-id-43 .entry-header,
body.page-id-43 .entry-title {
	display: none;
}

body.page-id-43 #primary,
body.page-id-43 .site-content .ast-container,
body.page-id-43 article.page {
	margin: 0;
	max-width: none;
	padding: 0;
}

body.page-id-43 .entry-content {
	margin: 0;
}

.st-shell {
	margin: 0 auto;
	max-width: 1200px;
	width: calc(100% - 48px);
}

/* --- Hero Section --- */
.st-hero {
	align-items: center;
	background-color: transparent;
	background-image: 
		linear-gradient(135deg var(--in-oklab), rgba(255, 244, 232, 0.88) 0%, rgba(255, 249, 242, 0.95) 100%), /* Warm dawn glow overlay */
		url("/wp-content/uploads/shubh-tokri/pooja-thali-hero.webp");
	background-position: center center, center center;
	background-repeat: no-repeat, no-repeat;
	background-size: cover, cover;
	display: flex;
	min-height: 620px;
	position: relative;
	overflow: hidden;
}

/* Add a glowing Diya background light leak overlay */
.st-hero::after {
	content: '';
	position: absolute;
	top: 10%;
	right: 5%;
	width: 500px;
	height: 500px;
	background: radial-gradient(circle, rgba(255, 140, 0, 0.15) 0%, rgba(255, 253, 249, 0) 70%);
	z-index: 0;
	pointer-events: none;
}

.st-hero::before {
	display: none;
}

.st-hero .st-shell {
	position: relative;
	z-index: 1;
}

.st-hero__content {
	max-width: 580px;
	min-width: 0;
	padding-bottom: 72px;
	padding-top: 72px;
	width: 100%;
}

/* Hero Rating Stars */
.st-hero__stars {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 16px;
}

.st-stars {
	color: var(--st-yellow);
	font-size: 1.25rem;
	letter-spacing: 2px;
}

.st-stars-text {
	color: var(--st-muted);
	font-size: 0.85rem;
	font-weight: 800;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.st-eyebrow {
	color: var(--st-gold); /* Saffron gold eyebrow */
	font-size: 0.85rem;
	font-weight: 800;
	letter-spacing: 0.1em;
	margin: 0 0 18px;
	text-transform: uppercase;
}

.st-hero h1 {
	font-size: 4.2rem;
	font-weight: 800;
	line-height: 1.05;
	margin: 0 0 22px;
	max-width: 580px;
	font-family: Outfit, sans-serif;
	letter-spacing: -0.02em;
	color: var(--st-ink);
	text-shadow: 0 1px 2px rgba(44, 20, 14, 0.05);
}

.st-hero__copy {
	color: var(--st-muted);
	font-size: 1.15rem;
	line-height: 1.65;
	margin: 0 0 32px;
	max-width: 520px;
}

.st-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

/* --- Buttons & Circular Arrow Accent --- */
.st-button,
.st-button:visited {
	align-items: center;
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%); /* Sacred sunrise gradient */
	border: none;
	border-radius: 9999px; /* Pill shaped buttons */
	color: #fff;
	display: inline-flex;
	font-size: 0.95rem;
	font-weight: 800;
	justify-content: center;
	min-height: 52px;
	padding: 12px 30px;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.06em;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 4px 15px rgba(210, 20, 58, 0.2), 0 2px 4px rgba(44, 20, 14, 0.05);
}

.st-button:hover {
	background: linear-gradient(135deg var(--in-oklch), #FF8C00 0%, #E65F00 100%);
	color: #fff;
	transform: translateY(-2px);
	box-shadow: 0 8px 25px rgba(230, 95, 0, 0.35);
}

.st-button--secondary,
.st-button--secondary:visited {
	background: transparent;
	border: 2px solid var(--st-red);
	color: var(--st-red);
	box-shadow: none;
}

.st-button--secondary:hover {
	background: rgba(210, 20, 58, 0.04);
	border-color: var(--st-gold);
	color: var(--st-gold);
	box-shadow: 0 4px 12px rgba(230, 95, 0, 0.1);
	transform: translateY(-2px);
}

/* Gold Circular Arrow Accent on Hero Primary CTA */
.st-hero .st-button:not(.st-button--secondary)::after {
	content: '';
	width: 22px;
	height: 22px;
	border-radius: 100%;
	background-color: rgba(255, 255, 255, 0.25);
	display: inline-block;
	background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTMiIGhlaWdodD0iMTIiIHZpZXdCb3g9IjAgMCAxMyAxMiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTMuNTg1ODEgMTJMMTIuNSA2TDYuNTg1ODEgMEw0Ljg5MTExIDEuNzE5MjhMNy44OTM0NSA0Ljc2NTE4SDAuNVY3LjIzNDgySDcuODkzNDVMNC44OTExMSAxMC4yODA3TDYuNTg1ODEgMTJaIiBmaWxsPSJ3aGl0ZSIvPgo8L3N2Zz4K");
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: center;
	margin-left: 12px;
	transition: all 0.3s ease;
}

.st-hero .st-button:not(.st-button--secondary):hover::after {
	background-color: rgba(255, 255, 255, 0.4);
	transform: translateX(4px);
}

/* --- Category Band (Filter Chips) --- */
.st-category-band {
	background: var(--st-paper) !important;
	border-bottom: 1px solid var(--st-line) !important;
	border-top: 1px solid var(--st-line) !important;
	box-shadow: 0 4px 20px rgba(44, 20, 14, 0.02) !important;
	position: sticky !important;
	top: 72px !important; /* Dock exactly below the primary sticky navigation header */
	z-index: 999 !important;
	transition: all 0.3s ease !important;
}

.st-category-list {
	display: flex;
	flex-wrap: nowrap;
	overflow-x: auto;
	justify-content: center;
	gap: 14px;
	margin: 0 auto;
	padding: 18px 24px;
	max-width: 1200px;
	scrollbar-width: thin;
	scrollbar-color: var(--st-gold) var(--st-paper);
	-webkit-overflow-scrolling: touch;
}

.st-category-list a {
	color: var(--st-ink);
	display: inline-block;
	flex-shrink: 0;
	font-size: 0.85rem;
	font-weight: 700;
	padding: 10px 24px;
	background: #ffffff;
	border-radius: 9999px;
	text-align: center;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	border: 1px solid var(--st-line);
	box-shadow: 0 2px 8px rgba(44, 20, 14, 0.02) !important;
}

.st-category-list a:hover {
	background: var(--st-soft) !important;
	color: var(--st-red) !important;
	border-color: var(--st-red) !important;
	transform: translateY(-2px) scale(1.02) !important;
	box-shadow: 0 6px 16px rgba(210, 20, 58, 0.08) !important;
}

/* Make "ALL" or active tag highlighted by default */
.st-category-list a:first-child {
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%) !important;
	color: #ffffff !important;
	border-color: transparent !important;
	box-shadow: 0 6px 16px rgba(210, 20, 58, 0.2) !important;
}

.st-category-list a:first-child:hover {
	background: linear-gradient(135deg var(--in-oklch), #FF8C00 0%, #E65F00 100%) !important;
	color: #ffffff !important;
	box-shadow: 0 8px 20px rgba(230, 95, 0, 0.3) !important;
}

/* --- Content Sections --- */
.st-section {
	padding-bottom: 86px;
	padding-top: 86px;
}

.st-section--soft {
	background: var(--st-soft);
}

.st-section-head {
	align-items: flex-end;
	display: flex;
	justify-content: space-between;
	margin-bottom: 34px;
}

.st-section-head h2,
.st-editorial h2 {
	font-size: 2.6rem;
	line-height: 1.15;
	margin: 0;
	font-weight: 800;
	letter-spacing: -0.015em;
	color: var(--st-ink);
	position: relative;
	padding-bottom: 24px;
}

/* Decorative inline SVG Lotus divider */
.st-section-head h2::after,
.st-editorial h2::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 120px;
	height: 24px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 24' fill='none'%3E%3Cpath d='M32 2C29 6 24 14 24 18C24 20 27.6 22 32 22C36.4 22 40 20 40 18C40 14 35 6 32 2Z' fill='%23D2143A'/%3E%3Cpath d='M32 6C30 9 27 15 27 18C27 19.5 29.2 21 32 21C34.8 21 37 19.5 37 18C37 15 34 9 32 6Z' fill='%23E65F00'/%3E%3Cpath d='M32 10C31 12 29.5 16 29.5 18C29.5 19 30.6 20 32 20C33.4 20 34.5 19 34.5 18C34.5 16 33 12 32 10Z' fill='%23FBBF24'/%3E%3Cline x1='2' y1='18' x2='22' y2='18' stroke='%23E65F00' stroke-width='1.5' stroke-dasharray='4 2'/%3E%3Cline x1='42' y1='18' x2='62' y2='18' stroke='%23E65F00' stroke-width='1.5' stroke-dasharray='4 2'/%3E%3Ccircle cx='12' cy='18' r='3' fill='%23D2143A'/%3E%3Ccircle cx='52' cy='18' r='3' fill='%23D2143A'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
}

.st-text-link {
	color: var(--st-gold);
	font-size: 0.95rem;
	font-weight: 800;
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 0.05em;
	border-bottom: 2px solid transparent;
	transition: all 0.3s ease;
}

.st-text-link:hover {
	border-bottom-color: var(--st-gold);
	color: var(--st-red);
}

/* --- WooCommerce 4-Column Product Grid --- */
.st-products .wc-block-grid__products,
.woocommerce ul.products {
	display: grid !important;
	gap: 28px !important;
	grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
	margin: 0 !important;
	width: 100% !important;
	padding: 0 !important;
}

.st-products .wc-block-grid__product,
.woocommerce ul.products li.product,
.woocommerce-page ul.products li.product {
	background: #ffffff !important;
	border: 1.5px solid rgba(245, 229, 213, 0.45) !important; /* Elegant warm sand border */
	border-radius: 24px !important; /* Sleek modern squircle corners */
	overflow: hidden !important;
	padding: 26px 22px !important;
	text-align: center !important;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
	width: 100% !important;
	max-width: 100% !important;
	box-sizing: border-box !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	position: relative !important;
	box-shadow: 0 10px 40px -15px rgba(44, 20, 14, 0.04), 0 1px 3px rgba(0, 0, 0, 0.01) !important;
}

.st-products .wc-block-grid__product:hover,
.woocommerce ul.products li.product:hover {
	box-shadow: 0 30px 60px -20px rgba(230, 95, 0, 0.15), 0 0 0 3px rgba(230, 95, 0, 0.08) !important;
	transform: translateY(-8px) scale(1.015) !important;
	border-color: var(--st-gold) !important;
}

/* Hide Astra's duplicate/overlay buttons */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap .ast-on-card-button,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap .ast-select-options-trigger {
	display: none !important;
}

/* Hide Astra's duplicate category text */
.ast-woo-product-category {
	display: none !important;
}

/* Thumbnail wrapper link */
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap a.woocommerce-LoopProduct-link {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-start !important;
	width: 100% !important;
	background: transparent !important;
	text-decoration: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Category badge */
.st-product-badge {
	text-align: center !important;
	margin: 0 auto 16px auto !important;
	display: block !important;
	width: 100% !important;
	order: 1 !important;
}

.st-product-badge span {
	display: inline-block !important;
	border: 1px solid var(--st-gold) !important;
	color: var(--st-gold) !important;
	text-transform: uppercase !important;
	font-size: 0.65rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.12em !important;
	padding: 4px 12px !important;
	border-radius: 6px !important;
	line-height: 1.2 !important;
	background: var(--st-soft) !important;
}

/* Category specific colored badges */
.st-badge-roli-chawal-kits span,
.st-badge-roli-chawal span {
	border-color: rgba(210, 20, 58, 0.3) !important;
	color: var(--st-red) !important;
	background-color: rgba(210, 20, 58, 0.05) !important;
}

.st-badge-pooja-thali span {
	border-color: rgba(230, 95, 0, 0.3) !important;
	color: var(--st-gold) !important;
	background-color: rgba(230, 95, 0, 0.05) !important;
}

.st-badge-rakhi-hampers span {
	border-color: rgba(212, 90, 15, 0.3) !important;
	color: #D45A0F !important;
	background-color: rgba(212, 90, 15, 0.05) !important;
}

.st-badge-festival-kits span,
.st-badge-diwali-products span {
	border-color: rgba(16, 185, 129, 0.3) !important;
	color: #10B981 !important;
	background-color: rgba(16, 185, 129, 0.05) !important;
}

.st-badge-evil-eye-products span {
	border-color: rgba(26, 54, 93, 0.3) !important;
	color: #1A365D !important;
	background-color: rgba(26, 54, 93, 0.05) !important;
}

.st-badge-wedding-return-gifts span {
	border-color: rgba(112, 22, 60, 0.3) !important;
	color: #70163C !important;
	background-color: rgba(112, 22, 60, 0.05) !important;
}

/* Soft ghee-diya glow background behind images */
.st-products .wc-block-grid__product-image,
.woocommerce ul.products li.product .astra-shop-thumbnail-wrap {
	aspect-ratio: 1 / 0.85 !important;
	background: radial-gradient(circle, rgba(255, 244, 232, 0.6) 0%, rgba(255, 255, 255, 0) 70%) !important;
	margin: 0 auto 12px auto !important;
	overflow: hidden !important;
	width: 100% !important;
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	border-radius: 12px;
}

.st-products .wc-block-grid__product-image img,
.woocommerce ul.products li.product img {
	height: 100% !important;
	object-fit: contain !important;
	width: auto !important;
	max-height: 160px !important;
	background: transparent !important;
	transition: transform 0.4s ease !important;
}

.woocommerce ul.products li.product:hover img {
	transform: scale(1.05);
}

/* Loop ratings */
.st-loop-rating {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	gap: 6px !important;
	margin: 12px auto 8px auto !important;
	order: 3 !important;
	font-family: Inter, sans-serif !important;
	font-size: 0.78rem !important;
	width: 100% !important;
	text-decoration: none !important;
}

.st-loop-rating .st-stars {
	color: #FBBF24 !important;
	font-size: 0.95rem !important;
	letter-spacing: 2px !important;
	line-height: 1 !important;
}

.st-loop-rating .st-rating-count {
	color: #718096 !important;
	font-weight: 600 !important;
}

.astra-shop-summary-wrap {
	display: flex !important;
	flex-direction: column !important;
	align-items: center !important;
	justify-content: flex-end !important;
	width: 100% !important;
	padding: 0 !important;
	margin-top: 8px !important;
	flex-grow: 1 !important;
}

/* Product titles */
.st-products .wc-block-grid__product-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	color: var(--st-ink) !important;
	font-family: Outfit, sans-serif !important;
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	line-height: 1.35 !important;
	margin: 8px 0 !important;
	text-align: center !important;
	order: 4 !important;
	height: 2.7em !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	display: -webkit-box !important;
	-webkit-line-clamp: 2 !important;
	-webkit-box-orient: vertical !important;
}

.st-products .wc-block-grid__product-title a,
.woocommerce ul.products li.product .woocommerce-loop-product__title a {
	color: inherit !important;
	text-decoration: none !important;
}

.st-products .wc-block-grid__product-title a:hover,
.woocommerce ul.products li.product .woocommerce-loop-product__title a:hover {
	color: var(--st-red) !important;
}

/* Prices */
.st-products .wc-block-grid__product-price,
.woocommerce ul.products li.product .price {
	color: #4A5568 !important;
	font-family: Inter, sans-serif !important;
	font-size: 1.05rem !important;
	font-weight: 700 !important;
	margin: 6px auto 14px auto !important;
	display: block !important;
	text-align: center !important;
	order: 5 !important;
}

.st-products .wc-block-grid__product-price ins,
.woocommerce ul.products li.product .price ins {
	text-decoration: none !important;
	color: #1A202C !important;
	font-weight: 800 !important;
}

.st-products .wc-block-grid__product-price del,
.woocommerce ul.products li.product .price del {
	color: #A0AEC0 !important;
	font-size: 0.9rem !important;
	margin-right: 8px !important;
	font-weight: 400 !important;
}

/* Add to cart buttons */
.st-products .wp-block-button,
.wc-block-grid__product-add-to-cart,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
	width: 100% !important;
	display: block !important;
	margin: 12px 0 0 0 !important;
	padding: 0 !important;
	box-sizing: border-box !important;
	order: 6 !important;
}

.st-products .wp-block-button__link,
.st-products .wc-block-grid__product-add-to-cart-button,
.wc-block-grid__product-add-to-cart .wp-block-button__link,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
	background-color: var(--st-ink) !important; /* Warm chocolate button */
	border: none !important;
	color: #ffffff !important;
	border-radius: 9999px !important;
	padding: 13px 24px !important;
	font-family: Inter, sans-serif !important;
	font-size: 0.82rem !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	white-space: nowrap !important;
	display: block !important;
	text-align: center !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	width: 100% !important;
	box-sizing: border-box !important;
	box-shadow: 0 4px 10px rgba(44, 20, 14, 0.1) !important;
}

.st-products .wp-block-button__link:hover,
.st-products .wc-block-grid__product-add-to-cart-button:hover,
.wc-block-grid__product-add-to-cart .wp-block-button__link:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce-page ul.products li.product .button:hover {
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%) !important; /* Auspicious gradient hover */
	color: #ffffff !important;
	transform: translateY(-2px) !important;
	box-shadow: 0 6px 18px rgba(210, 20, 58, 0.3) !important;
}

/* Sale Badge */
.woocommerce ul.products li.product span.onsale,
.woocommerce-page ul.products li.product span.onsale,
.wc-block-grid__product-onsale,
.ast-onsale-card {
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%) !important;
	color: #ffffff !important;
	font-size: 0.65rem !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	padding: 6px 12px !important;
	border-radius: 9999px !important;
	position: absolute !important;
	top: 16px !important;
	left: 16px !important;
	right: auto !important;
	margin: 0 !important;
	line-height: 1.2 !important;
	z-index: 10 !important;
	min-height: auto !important;
	min-width: auto !important;
	box-shadow: 0 4px 10px rgba(210, 20, 58, 0.2) !important;
}

/* --- Editorial / Benefit Section --- */
.st-editorial {
	background: var(--st-leaf-light); /* Soft mango leaf green */
	color: var(--st-ink);
	border-top: 1px solid var(--st-line);
	border-bottom: 1px solid var(--st-line);
	position: relative;
	padding-bottom: 86px;
	padding-top: 86px;
}

/* Marigold garland at the top of the editorial section */
.st-editorial::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 0;
	width: 100%;
	height: 8px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 16' fill='none'%3E%3Cpath d='M0 8Q10 14 20 8T40 8' stroke='%2310B981' stroke-width='2.5' stroke-linecap='round'/%3E%3Ccircle cx='10' cy='9' r='4.5' fill='%23E65F00'/%3E%3Ccircle cx='10' cy='9' r='2.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='4.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='2.5' fill='%23E65F00'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 20px 8px;
	z-index: 10;
}

.st-editorial__grid {
	align-items: center;
	display: grid;
	gap: 60px;
	grid-template-columns: 0.9fr 1.1fr;
	min-height: 410px;
}

.st-editorial h2 {
	color: var(--st-red); /* Headline in auspicious red */
	font-size: 3rem;
	line-height: 1.1;
	margin: 0 0 20px;
	font-weight: 800;
	letter-spacing: -0.015em;
}

.st-editorial p {
	color: var(--st-muted);
	line-height: 1.75;
}

.st-editorial__details {
	border-left: 1px solid var(--st-line);
	display: grid;
	gap: 0;
	grid-template-columns: repeat(2, minmax(0, 1fr));
}

.st-editorial__detail {
	border-bottom: 1px solid var(--st-line);
	padding: 26px 28px;
}

.st-editorial__detail strong {
	display: block;
	font-family: Outfit, sans-serif;
	font-size: 1.25rem;
	margin-bottom: 6px;
	font-weight: 700;
	color: var(--st-red);
}

.st-editorial__detail span {
	color: var(--st-muted);
	font-size: 0.86rem;
}

/* --- Trust Badges Section --- */
.st-trust {
	background: #fff;
	border-bottom: 1px solid var(--st-line);
	border-top: 1px solid var(--st-line);
}

.st-trust__grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
}

.st-trust__item {
	border-right: 1px solid var(--st-line);
	padding: 30px 26px;
}

.st-trust__item:last-child {
	border-right: 0;
}

.st-trust__item strong {
	display: block;
	font-family: Outfit, sans-serif;
	font-size: 1.05rem;
	margin-bottom: 5px;
	font-weight: 700;
	color: var(--st-red);
}

.st-trust__item span {
	color: var(--st-muted);
	font-size: 0.83rem;
}

/* --- Footer --- */
.site-footer {
	background: var(--st-ink);
	color: rgba(255, 255, 255, 0.72);
	position: relative;
}

/* Garland ornament above the footer */
.site-footer::before {
	content: "";
	position: absolute;
	top: -8px;
	left: 0;
	width: 100%;
	height: 8px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 16' fill='none'%3E%3Cpath d='M0 8Q10 14 20 8T40 8' stroke='%2310B981' stroke-width='2.5' stroke-linecap='round'/%3E%3Ccircle cx='10' cy='9' r='4.5' fill='%23E65F00'/%3E%3Ccircle cx='10' cy='9' r='2.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='4.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='2.5' fill='%23E65F00'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 20px 8px;
	z-index: 10;
}

.site-footer a,
.site-footer a:visited {
	color: var(--st-gold);
}

.site-footer a:hover {
	color: #fff;
}

.site-below-footer-wrap {
	background: var(--st-ink);
	border-top: 0;
}

/* --- Responsiveness Media Queries --- */
@media (max-width: 1024px) {
	.st-products .wc-block-grid__products,
	.woocommerce ul.products {
		grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	}
}

@media (max-width: 921px) {
	.st-hero {
		background-image: 
			linear-gradient(180deg var(--in-oklab), rgba(255, 244, 232, 0.92) 0%, rgba(255, 249, 242, 0.95) 100%),
			url("/wp-content/uploads/shubh-tokri/pooja-thali-hero.webp");
		background-position: center center, center center;
		background-size: cover, cover;
		min-height: 560px;
		align-items: center;
	}

	.st-hero::after {
		width: 300px;
		height: 300px;
		right: auto;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
	}

	.st-hero__content {
		padding-top: 40px;
		text-align: center;
		max-width: 100%;
	}

	.st-hero__stars {
		justify-content: center;
	}

	.st-hero h1 {
		font-size: 3.2rem;
		margin: 0 auto 20px;
	}

	.st-hero__copy {
		margin: 0 auto 30px;
	}

	.st-actions {
		justify-content: center;
	}

	.st-category-list {
		justify-content: flex-start;
		padding: 14px 16px;
	}

	.st-products .wc-block-grid__products,
	.woocommerce ul.products {
		grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
	}

	.st-editorial__grid {
		gap: 36px;
		grid-template-columns: 1fr;
		padding-bottom: 60px;
		padding-top: 60px;
	}

	.st-trust__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 600px) {
	.st-shell {
		width: calc(100% - 36px);
	}

	.st-hero {
		background-image: 
			linear-gradient(180deg var(--in-oklab), rgba(255, 244, 232, 0.94) 0%, rgba(255, 249, 242, 0.96) 100%),
			url("/wp-content/uploads/shubh-tokri/pooja-thali-hero.webp");
		background-position: center center, center center;
		background-size: cover, cover;
		min-height: 520px;
	}

	.st-hero__content {
		padding-top: 30px;
	}

	.st-hero h1 {
		font-size: 2.2rem;
		line-height: 1.1;
	}

	.st-actions .st-button {
		width: 100%;
	}

	.st-category-list {
		display: flex;
		overflow-x: auto;
		padding-left: 8px;
		padding-right: 8px;
		scrollbar-width: none;
	}

	.st-category-list a {
		flex: 0 0 auto;
		min-width: 120px;
		background: var(--st-soft);
		border-radius: 9999px;
		margin: 4px;
		padding: 10px 14px;
		border: 1px solid var(--st-line);
	}

	.st-section {
		padding-bottom: 60px;
		padding-top: 60px;
	}

	.st-section-head {
		align-items: start;
		flex-direction: column;
		gap: 12px;
	}

	.st-section-head h2,
	.st-editorial h2 {
		font-size: 2.15rem;
	}

	.st-products .wc-block-grid__products,
	.woocommerce ul.products {
		grid-template-columns: 1fr !important;
	}

	.st-editorial__details {
		border-left: 0;
		grid-template-columns: 1fr;
	}

	.st-editorial__detail {
		border-left: 1px solid var(--st-line);
		border-bottom: 1px solid var(--st-line);
		padding: 20px;
	}

	.st-trust__grid {
		grid-template-columns: 1fr;
	}

	.st-trust__item {
		border-bottom: 1px solid var(--st-line);
		border-right: 0;
		padding: 20px;
	}
}

/* ==========================================================================
   Single Product Detail Page Redesign (Premium & Modern)
   ========================================================================== */

.single-product .site-main {
	padding-top: 40px !important;
	padding-bottom: 60px !important;
}

.single-product .onsale,
.single-product .ast-onsale-card {
	position: relative !important;
	display: inline-block !important;
	top: auto !important;
	left: auto !important;
	margin: 0 0 16px 0 !important;
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%) !important;
	color: #ffffff !important;
	font-size: 0.72rem !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.1em !important;
	padding: 6px 12px !important;
	border-radius: 9999px !important;
	line-height: 1.2 !important;
	z-index: 10 !important;
	min-height: auto !important;
	min-width: auto !important;
	box-shadow: 0 4px 10px rgba(210, 20, 58, 0.2) !important;
}

/* Breadcrumbs */
.woocommerce-breadcrumb {
	font-family: Inter, sans-serif !important;
	font-size: 0.8rem !important;
	color: var(--st-muted) !important;
	margin-bottom: 24px !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
}

.woocommerce-breadcrumb a {
	color: var(--st-muted) !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	transition: color 0.2s ease !important;
}

.woocommerce-breadcrumb a:hover {
	color: var(--st-red) !important;
}

/* Single Category Badge */
.single-product-category {
	display: block !important;
	margin-bottom: 12px !important;
}

.single-product-category a {
	display: inline-block !important;
	border: 1px solid rgba(230, 95, 0, 0.3) !important;
	color: var(--st-gold) !important;
	background-color: rgba(230, 95, 0, 0.04) !important;
	text-transform: uppercase !important;
	font-size: 0.68rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.12em !important;
	padding: 6px 14px !important;
	border-radius: 6px !important;
	text-decoration: none !important;
	line-height: 1.2 !important;
	transition: all 0.25s ease !important;
}

.single-product-category a:hover {
	border-color: var(--st-red) !important;
	color: var(--st-red) !important;
	background-color: rgba(210, 20, 58, 0.04) !important;
}

/* Product Gallery */
.single-product .woocommerce-product-gallery {
	border-radius: 16px !important;
	overflow: hidden !important;
	border: 1px solid rgba(245, 229, 213, 0.6) !important;
	background: radial-gradient(circle, rgba(255, 244, 232, 0.4) 0%, #ffffff 100%) !important;
	padding: 24px !important;
	margin-bottom: 30px !important;
	opacity: 1 !important;
	box-shadow: 0 10px 30px -10px rgba(44, 20, 14, 0.04) !important;
	transition: all 0.3s ease !important;
}

.single-product .woocommerce-product-gallery:hover {
	border-color: var(--st-gold) !important;
	box-shadow: 0 15px 35px -10px rgba(230, 95, 0, 0.12) !important;
}

.single-product .woocommerce-product-gallery img {
	border-radius: 8px !important;
	object-fit: contain !important;
}

/* Single Product Title */
.single-product h1.product_title {
	font-family: Outfit, sans-serif !important;
	font-size: 2.6rem !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	color: var(--st-ink) !important;
	margin: 0 0 16px 0 !important;
	letter-spacing: -0.015em !important;
}

/* Single Product Price */
.single-product p.price,
.single-product .entry-summary .price {
	font-family: Inter, sans-serif !important;
	font-size: 1.8rem !important;
	font-weight: 800 !important;
	color: var(--st-red) !important; /* Vibrant Red pricing */
	margin: 16px 0 24px 0 !important;
	display: flex !important;
	align-items: center !important;
	gap: 10px !important;
}

.single-product p.price ins,
.single-product .entry-summary .price ins {
	text-decoration: none !important;
	color: var(--st-red) !important;
	font-weight: 800 !important;
}

.single-product p.price del,
.single-product .entry-summary .price del {
	color: #A0AEC0 !important;
	font-size: 1.25rem !important;
	font-weight: 400;
}

/* Stock and Availability Details */
.ast-stock-detail {
	font-family: Inter, sans-serif !important;
	font-size: 0.9rem !important;
	margin: 18px 0 !important;
	color: var(--st-muted) !important;
}

.ast-stock-detail .stock.in-stock {
	color: #10B981 !important;
	font-weight: 700 !important;
}

/* Single Product Form & Buttons */
.single-product form.cart {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	gap: 12px !important;
	margin: 28px 0 !important;
	padding: 0 !important;
}

.single-product form.cart .quantity {
	margin: 0 !important;
	display: inline-block !important;
}

.single-product form.cart .quantity input.qty {
	height: 52px !important;
	width: 72px !important;
	border-radius: 26px !important; /* Fully rounded pill */
	border: 1.5px solid var(--st-line) !important;
	font-weight: 700 !important;
	color: var(--st-ink) !important;
	text-align: center !important;
	background: #ffffff !important;
	font-size: 0.95rem !important;
	padding: 0 4px !important;
	transition: border-color 0.2s ease !important;
}

.single-product form.cart .quantity input.qty:focus {
	border-color: var(--st-gold) !important;
	outline: none !important;
	box-shadow: 0 0 0 3px rgba(230, 95, 0, 0.1) !important;
}

/* Buttons styling */
.single-product form.cart .button {
	height: 52px !important;
	border-radius: 26px !important;
	font-family: Inter, sans-serif !important;
	font-weight: 800 !important;
	font-size: 0.85rem !important;
	text-transform: uppercase !important;
	letter-spacing: 0.08em !important;
	padding: 12px 32px !important;
	margin: 0 !important;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1) !important;
	line-height: 1.2 !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
	box-shadow: none !important;
	cursor: pointer !important;
}

/* Single Add to Cart */
.single-product form.cart .single_add_to_cart_button {
	background: linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%) !important;
	color: #ffffff !important;
	box-shadow: 0 4px 15px rgba(210, 20, 58, 0.2) !important;
}

.single-product form.cart .single_add_to_cart_button:hover {
	background: linear-gradient(135deg var(--in-oklch), #FF8C00 0%, #E65F00 100%) !important;
	box-shadow: 0 8px 25px rgba(230, 95, 0, 0.35) !important;
	transform: translateY(-2px) !important;
}

/* WhatsApp Enquiry Button */
.single-product form.cart .shubh-tokri-whatsapp-enquiry {
	background-color: transparent !important;
	border: 2px solid var(--st-red) !important;
	color: var(--st-red) !important;
	text-decoration: none !important;
}

.single-product form.cart .shubh-tokri-whatsapp-enquiry:hover {
	border-color: var(--st-gold) !important;
	color: var(--st-gold) !important;
	background-color: rgba(230, 95, 0, 0.04) !important;
	transform: translateY(-2px) !important;
}

/* Product Meta */
.single-product .product_meta {
	font-family: Inter, sans-serif !important;
	font-size: 0.82rem !important;
	color: var(--st-muted) !important;
	border-top: 1px solid var(--st-line) !important;
	padding-top: 20px !important;
	margin-top: 28px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 8px !important;
}

.single-product .product_meta span {
	font-weight: 500 !important;
}

.single-product .product_meta a {
	color: var(--st-gold) !important;
	text-decoration: none !important;
	font-weight: 600 !important;
	transition: color 0.2s ease !important;
}

.single-product .product_meta a:hover {
	color: var(--st-red) !important;
}

/* Modern Tabs section */
.woocommerce-tabs.wc-tabs-wrapper {
	margin-top: 56px !important;
	border-top: 1px solid var(--st-line) !important;
	padding-top: 36px !important;
}

.woocommerce-tabs ul.tabs.wc-tabs {
	display: flex !important;
	gap: 28px !important;
	border-bottom: 2px solid var(--st-line) !important;
	padding: 0 0 12px 0 !important;
	margin: 0 0 28px 0 !important;
	list-style: none !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li {
	background: transparent !important;
	border: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li a {
	font-family: Outfit, sans-serif !important;
	font-size: 1.15rem !important;
	font-weight: 700 !important;
	color: var(--st-muted) !important;
	text-decoration: none !important;
	padding-bottom: 12px !important;
	display: block !important;
	transition: all 0.3s ease !important;
	border-bottom: 3px solid transparent !important;
	margin-bottom: -15px !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li.active a {
	color: var(--st-red) !important;
	border-bottom-color: var(--st-red) !important;
}

.woocommerce-tabs ul.tabs.wc-tabs li a:hover {
	color: var(--st-gold) !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel {
	font-family: Inter, sans-serif !important;
	line-height: 1.75 !important;
	color: var(--st-muted) !important;
	font-size: 0.95rem !important;
}

.woocommerce-tabs .woocommerce-Tabs-panel h2 {
	font-size: 1.50rem !important;
	color: var(--st-ink) !important;
	margin-bottom: 16px !important;
	font-weight: 800 !important;
}

/* Hide WooCommerce Cart in Astra Header */
.ast-header-woo-cart,
.ast-site-header-cart,
.ast-cart-menu-wrapper,
.menu-item.astra-woo-cart-menu,
.ast-menu-cart-with-border {
	display: none !important;
}

/* ==========================================================================
   SHUBH TOKRI - CUTE, MODERN & COLORFUL DEVOTIONAL BLOG CUSTOM STYLING
   ========================================================================== */

/* Individual Post Card - Style the INNER container to preserve native grid gutters */
.blog .ast-article-inner,
.archive .ast-article-inner {
	background: #ffffff !important;
	border: 1px solid var(--st-line) !important;
	border-radius: 24px !important;
	padding: 28px 24px !important;
	box-shadow: 0 10px 30px -10px rgba(44, 20, 14, 0.05), 0 1px 3px rgba(44, 20, 14, 0.02) !important;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	height: 100% !important;
	position: relative !important;
	border-bottom: 4px solid var(--st-line) !important; /* Bottom color bar */
}

/* Post Card Hover Micro-Animations */
.blog .ast-article-inner:hover,
.archive .ast-article-inner:hover {
	transform: translateY(-8px) !important;
	box-shadow: 0 24px 48px -15px rgba(230, 95, 0, 0.15) !important;
	border-color: var(--st-gold) !important;
}

/* --- Dynamic, Colorful Category Themes for Post Cards --- */

/* 1. Chalisa Posts: Saffron Gold theme */
.category-chalisa .ast-article-inner {
	border-bottom: 4px solid var(--st-gold) !important;
}
.category-chalisa .ast-article-inner:hover {
	border-color: rgba(230, 95, 0, 0.4) !important;
	box-shadow: 
		0 24px 48px -15px rgba(230, 95, 0, 0.22),
		0 0 0 1px rgba(230, 95, 0, 0.15) !important;
}

/* 2. Aarti Posts: Vermilion Red theme */
.category-aarti .ast-article-inner {
	border-bottom: 4px solid var(--st-red) !important;
}
.category-aarti .ast-article-inner:hover {
	border-color: rgba(210, 20, 58, 0.4) !important;
	box-shadow: 
		0 24px 48px -15px rgba(210, 20, 58, 0.22),
		0 0 0 1px rgba(210, 20, 58, 0.15) !important;
}

/* Cute Post Category Badges (Pills) */
.ast-taxonomy-container.cat-links {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 8px !important;
	margin-bottom: 14px !important;
}

.ast-taxonomy-container.cat-links a {
	display: inline-block !important;
	text-transform: uppercase !important;
	font-size: 0.72rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.08em !important;
	padding: 5px 14px !important;
	border-radius: 9999px !important;
	text-decoration: none !important;
	transition: all 0.3s ease !important;
	border: 1px solid var(--st-line) !important;
	color: var(--st-muted) !important;
	background: var(--st-soft) !important;
}

.ast-taxonomy-container.cat-links a:hover {
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 10px rgba(44, 20, 14, 0.05) !important;
}

/* Chalisa category badge */
.category-chalisa .ast-taxonomy-container.cat-links a[href*="chalisa"] {
	background-color: var(--st-gold-light) !important;
	color: var(--st-gold) !important;
	border-color: rgba(230, 95, 0, 0.2) !important;
}

/* Aarti category badge */
.category-aarti .ast-taxonomy-container.cat-links a[href*="aarti"] {
	background-color: rgba(210, 20, 58, 0.06) !important;
	color: var(--st-red) !important;
	border-color: rgba(210, 20, 58, 0.2) !important;
}

/* Hindi category badge */
.ast-taxonomy-container.cat-links a[href*="hindi"] {
	background-color: var(--st-yellow-light) !important;
	color: var(--st-muted) !important;
	border-color: rgba(251, 191, 36, 0.3) !important;
}

/* English category badge */
.ast-taxonomy-container.cat-links a[href*="english"] {
	background-color: var(--st-leaf-light) !important;
	color: var(--st-leaf) !important;
	border-color: rgba(16, 185, 129, 0.2) !important;
}

/* Title & Header inside Grid Cards */
.blog .entry-title,
.archive .entry-title {
	font-family: Outfit, sans-serif !important;
	font-size: 1.45rem !important;
	font-weight: 800 !important;
	line-height: 1.35 !important;
	margin: 8px 0 12px 0 !important;
	color: var(--st-ink) !important;
}

.blog .entry-title a,
.archive .entry-title a {
	color: var(--st-ink) !important;
	text-decoration: none !important;
	transition: color 0.3s ease !important;
	display: inline-block !important;
}

.blog .entry-title a:hover,
.archive .entry-title a:hover {
	color: var(--st-red) !important;
}

/* Card Meta (Date/Author) styling */
.blog .entry-meta,
.archive .entry-meta,
.blog .entry-meta a,
.archive .entry-meta a {
	font-size: 0.8rem !important;
	color: var(--st-muted) !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
}

.blog .ast-blog-meta-container,
.archive .ast-blog-meta-container {
	margin-top: auto !important;
	padding-top: 14px !important;
	border-top: 1px dashed var(--st-line) !important;
}

/* Main Archive Titles / Headings */
.ast-archive-description {
	background: radial-gradient(circle at top left, var(--st-gold-light) 0%, rgba(255,255,255,0) 60%),
				radial-gradient(circle at bottom right, var(--st-yellow-light) 0%, rgba(255,255,255,0) 60%) !important;
	padding: 54px 24px !important;
	border-radius: 32px !important;
	border: 1px solid var(--st-line) !important;
	margin-bottom: 42px !important;
	text-align: center !important;
}

.ast-archive-description .ast-archive-title {
	font-family: Outfit, sans-serif !important;
	font-size: 2.8rem !important;
	font-weight: 800 !important;
	color: var(--st-ink) !important;
	position: relative !important;
	display: inline-block !important;
	padding-bottom: 24px !important;
	margin-bottom: 12px !important;
}

.ast-archive-description .ast-archive-title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 120px;
	height: 20px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 24' fill='none'%3E%3Cpath d='M32 2C29 6 24 14 24 18C24 20 27.6 22 32 22C36.4 22 40 20 40 18C40 14 35 6 32 2Z' fill='%23D2143A'/%3E%3Cpath d='M32 6C30 9 27 15 27 18C27 19.5 29.2 21 32 21C34.8 21 37 19.5 37 18C37 15 34 9 32 6Z' fill='%23E65F00'/%3E%3Cpath d='M32 10C31 12 29.5 16 29.5 18C29.5 19 30.6 20 32 20C33.4 20 34.5 19 34.5 18C34.5 16 33 12 32 10Z' fill='%23FBBF24'/%3E%3Cline x1='2' y1='18' x2='22' y2='18' stroke='%23E65F00' stroke-width='1.5' stroke-dasharray='4 2'/%3E%3Cline x1='42' y1='18' x2='62' y2='18' stroke='%23E65F00' stroke-width='1.5' stroke-dasharray='4 2'/%3E%3Ccircle cx='12' cy='18' r='3' fill='%23D2143A'/%3E%3Ccircle cx='52' cy='18' r='3' fill='%23D2143A'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
}

/* ==========================================================================
   SINGLE POST / DEVOTIONAL HYMN RECITATION LAYOUT
   ========================================================================== */

/* Devotional card accent for single post */
.single-post .site-main > article {
	border-top: 6px solid var(--st-red) !important;
	border-radius: 24px !important;
	box-shadow: 0 10px 40px rgba(44, 20, 14, 0.03) !important;
	border: 1px solid rgba(245, 229, 213, 0.5) !important;
	padding: 48px 36px !important;
	background: #ffffff !important;
}

/* Single Post Title with Lotus Divider */
.single-post .entry-title {
	font-family: Outfit, sans-serif !important;
	font-size: 2.8rem !important;
	font-weight: 800 !important;
	color: var(--st-ink) !important;
	text-align: center !important;
	margin: 12px 0 24px 0 !important;
	position: relative !important;
	padding-bottom: 28px !important;
	line-height: 1.25 !important;
}

.single-post .entry-title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 140px;
	height: 24px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 24' fill='none'%3E%3Cpath d='M32 2C29 6 24 14 24 18C24 20 27.6 22 32 22C36.4 22 40 20 40 18C40 14 35 6 32 2Z' fill='%23D2143A'/%3E%3Cpath d='M32 6C30 9 27 15 27 18C27 19.5 29.2 21 32 21C34.8 21 37 19.5 37 18C37 15 34 9 32 6Z' fill='%23E65F00'/%3E%3Cpath d='M32 10C31 12 29.5 16 29.5 18C29.5 19 30.6 20 32 20C33.4 20 34.5 19 34.5 18C34.5 16 33 12 32 10Z' fill='%23FBBF24'/%3E%3Cline x1='2' y1='18' x2='22' y2='18' stroke='%23E65F00' stroke-width='1.5' stroke-dasharray='4 2'/%3E%3Cline x1='42' y1='18' x2='62' y2='18' stroke='%23E65F00' stroke-width='1.5' stroke-dasharray='4 2'/%3E%3Ccircle cx='12' cy='18' r='3' fill='%23D2143A'/%3E%3Ccircle cx='52' cy='18' r='3' fill='%23D2143A'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-size: contain;
}

/* Center-aligned single post metadata */
.single-post .entry-meta {
	text-align: center !important;
	justify-content: center !important;
	display: flex !important;
	gap: 16px !important;
	margin-bottom: 32px !important;
}

/* Devotional recitation content styling */
.single-post .entry-content {
	font-family: 'Noto Sans', 'Inter', sans-serif !important;
	font-size: 1.2rem !important;
	line-height: 2.2 !important; /* Generous spacing for chanting/reading */
	color: var(--st-ink) !important;
	text-align: center !important; /* Centered texts feel like a prayer booklet */
	max-width: 680px !important;
	margin: 0 auto !important;
}

/* Headings inside single posts (e.g. Doha, Chaupai, Stotra sections) */
.single-post .entry-content h2,
.single-post .entry-content h3 {
	font-family: Outfit, sans-serif !important;
	color: var(--st-gold) !important;
	font-weight: 800 !important;
	margin: 44px auto 24px auto !important;
	font-size: 1.22rem !important;
	text-align: center !important;
	background: var(--st-soft) !important;
	display: inline-block !important;
	padding: 8px 28px !important;
	border-radius: 999px !important;
	border: 1px solid rgba(230, 95, 0, 0.25) !important;
	box-shadow: 0 2px 10px rgba(230, 95, 0, 0.04) !important;
	text-transform: uppercase !important;
	letter-spacing: 0.05em !important;
}

/* Paragraph and line break adjustments for lyrics spacing */
.single-post .entry-content p {
	margin-bottom: 24px !important;
	letter-spacing: 0.01em !important;
}

/* End of recitation floral SVG finish */
.single-post .entry-content::after {
	content: "";
	display: block;
	width: 100%;
	height: 32px;
	margin: 48px auto 0 auto !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 24' fill='none'%3E%3Ccircle cx='50' cy='12' r='4' fill='%23D2143A'/%3E%3Cpath d='M30 12C35 12 40 10 44 12C40 14 35 12 30 12Z' fill='%23E65F00'/%3E%3Cpath d='M70 12C65 12 60 10 56 12C60 14 65 12 70 12Z' fill='%23E65F00'/%3E%3Ccircle cx='20' cy='12' r='2' fill='%23FBBF24'/%3E%3Ccircle cx='80' cy='12' r='2' fill='%23FBBF24'/%3E%3C/svg%3E");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 120px 24px;
	opacity: 0.85;
}

/* ==========================================================================
   SHUBH TOKRI - BLOG HEADER HERO SECTION (CUTE & MODERN HERO)
   ========================================================================== */

.st-blog-hero {
	background: 
		radial-gradient(circle at 10% 20%, rgba(254, 243, 199, 0.18) 0%, transparent 45%),
		radial-gradient(circle at 90% 80%, rgba(251, 191, 36, 0.18) 0%, transparent 45%),
		linear-gradient(135deg var(--in-oklch), #E65F00 0%, #D2143A 100%) !important;
	background-size: 200% 200% !important;
	animation: mesh-glow 12s ease infinite !important;
	color: #ffffff !important;
	text-align: center !important;
	padding: 58px 24px !important;
	border-radius: 28px !important;
	margin: 24px auto 40px auto !important;
	max-width: 1200px !important;
	width: calc(100% - 40px) !important;
	box-shadow: 0 20px 45px -15px rgba(210, 20, 58, 0.22) !important;
	position: relative !important;
	overflow: hidden !important;
	border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

@keyframes mesh-glow {
	0%, 100% { background-position: 0% 50%; }
	50% { background-position: 100% 50%; }
}

/* Background light leak glow for the hero */
.st-blog-hero::before {
	content: '' !important;
	position: absolute !important;
	top: -50% !important;
	left: -50% !important;
	width: 200% !important;
	height: 200% !important;
	background: radial-gradient(circle, rgba(255, 238, 219, 0.2) 0%, rgba(255, 255, 255, 0) 60%) !important;
	pointer-events: none !important;
	animation: rotate-glow 25s infinite linear !important;
	mix-blend-mode: overlay !important;
}

@keyframes rotate-glow {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

.st-blog-hero__content {
	position: relative !important;
	z-index: 2 !important;
	max-width: 700px !important;
	margin: 0 auto !important;
}

.st-blog-hero__subtitle {
	display: inline-block !important;
	font-size: 0.85rem !important;
	font-weight: 800 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.15rem !important;
	color: var(--st-yellow) !important;
	margin-bottom: 12px !important;
}

.st-blog-hero__title {
	font-family: Outfit, sans-serif !important;
	font-size: 3.4rem !important;
	font-weight: 800 !important;
	line-height: 1.15 !important;
	color: #ffffff !important;
	margin: 0 0 16px 0 !important;
	text-shadow: 0 2px 4px rgba(44, 20, 14, 0.15) !important;
	letter-spacing: -0.015em !important;
}

.st-blog-hero__tagline {
	font-family: Inter, sans-serif !important;
	font-size: 1.15rem !important;
	line-height: 1.60 !important;
	color: rgba(255, 255, 255, 0.95) !important;
	margin: 0 !important;
}

/* ==========================================================================
   SHUBH TOKRI - RELATED / RECOMMENDED POSTS LAYOUT
   ========================================================================== */

.st-related-posts {
	max-width: 800px !important;
	margin: 40px auto 60px auto !important;
	padding: 0 20px !important;
}

.st-related-posts__heading {
	font-family: Outfit, sans-serif !important;
	font-size: 1.8rem !important;
	font-weight: 800 !important;
	color: var(--st-ink) !important;
	text-align: center !important;
	margin-bottom: 28px !important;
	position: relative !important;
	padding-bottom: 16px !important;
}

.st-related-posts__heading::after {
	content: "" !important;
	position: absolute !important;
	bottom: 0 !important;
	left: 50% !important;
	transform: translateX(-50%) !important;
	width: 80px !important;
	height: 12px !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 24' fill='none'%3E%3Cpath d='M32 2C29 6 24 14 24 18C24 20 27.6 22 32 22C36.4 22 40 20 40 18C40 14 35 6 32 2Z' fill='%23D2143A'/%3E%3Cpath d='M32 6C30 9 27 15 27 18C27 19.5 29.2 21 32 21C34.8 21 37 19.5 37 18C37 15 34 9 32 6Z' fill='%23E65F00'/%3E%3C/svg%3E") !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;
}

.st-related-posts__grid {
	display: grid !important;
	grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
	gap: 20px !important;
	margin-top: 12px !important;
}

/* Fallback for smaller screens */
@media (max-width: 768px) {
	.st-related-posts__grid {
		grid-template-columns: 1fr !important;
		gap: 24px !important;
	}
}

.st-related-card {
	background: #ffffff !important;
	border: 1px solid var(--st-line) !important;
	border-radius: 20px !important;
	padding: 0 !important;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
	box-shadow: 0 8px 24px -10px rgba(44, 20, 14, 0.05) !important;
	border-bottom: 4px solid var(--st-line) !important;
}

.st-related-card__inner {
	padding: 20px !important;
	display: flex !important;
	flex-direction: column !important;
	justify-content: space-between !important;
	height: 100% !important;
}

.st-related-card:hover {
	transform: translateY(-6px) !important;
	box-shadow: 0 16px 36px -12px rgba(230, 95, 0, 0.15) !important;
	border-color: var(--st-gold) !important;
}

/* Accents mapping for related cards */
.st-related-card.category-chalisa {
	border-bottom-color: var(--st-gold) !important;
}
.st-related-card.category-chalisa:hover {
	border-color: var(--st-gold) !important;
	box-shadow: 0 16px 36px -12px rgba(230, 95, 0, 0.2) !important;
}

.st-related-card.category-aarti {
	border-bottom-color: var(--st-red) !important;
}
.st-related-card.category-aarti:hover {
	border-color: var(--st-red) !important;
	box-shadow: 0 16px 36px -12px rgba(210, 20, 58, 0.2) !important;
}

/* Related Card Badge styling */
.st-related-card__badge {
	display: inline-block !important;
	align-self: flex-start !important;
	text-transform: uppercase !important;
	font-size: 0.65rem !important;
	font-weight: 800 !important;
	letter-spacing: 0.06em !important;
	padding: 3px 10px !important;
	border-radius: 9999px !important;
	margin-bottom: 12px !important;
	background: var(--st-soft) !important;
	color: var(--st-muted) !important;
	border: 1px solid var(--st-line) !important;
}

.st-related-card__badge.badge-chalisa {
	background-color: var(--st-gold-light) !important;
	color: var(--st-gold) !important;
	border-color: rgba(230, 95, 0, 0.15) !important;
}

.st-related-card__badge.badge-aarti {
	background-color: rgba(210, 20, 58, 0.05) !important;
	color: var(--st-red) !important;
	border-color: rgba(210, 20, 58, 0.15) !important;
}

.st-related-card__badge.badge-hindi {
	background-color: var(--st-yellow-light) !important;
	color: var(--st-muted) !important;
	border-color: rgba(251, 191, 36, 0.2) !important;
}

/* Related card title */
.st-related-card__title {
	font-family: Outfit, sans-serif !important;
	font-size: 1.15rem !important;
	font-weight: 800 !important;
	line-height: 1.4 !important;
	margin: 0 0 10px 0 !important;
}

.st-related-card__title a {
	color: var(--st-ink) !important;
	text-decoration: none !important;
	transition: color 0.3s ease !important;
}

.st-related-card__title a:hover {
	color: var(--st-red) !important;
}

/* Related card date */
.st-related-card__date {
	font-size: 0.72rem !important;
	color: var(--st-muted) !important;
	font-weight: 600 !important;
	text-transform: uppercase !important;
	letter-spacing: 0.04em !important;
	margin-top: auto !important;
}

/* ==========================================================================
   SHUBH TOKRI NEW DEVOTIONAL UI REVAMP
   ========================================================================== */

/* --- Sticky Header & Nav --- */
.site-header {
	position: sticky;
	top: 0;
	z-index: 1000;
	background: var(--st-paper) !important;
	border-bottom: 1px solid var(--st-line) !important;
	box-shadow: 0 4px 30px rgba(44, 20, 14, 0.03);
	transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Nav links styling */
.main-header-menu > .menu-item > .menu-link {
	font-family: Outfit, sans-serif !important;
	font-weight: 700 !important;
	letter-spacing: 0.02em !important;
	color: var(--st-ink) !important;
	position: relative;
	transition: color 0.3s ease !important;
}
.main-header-menu > .menu-item:hover > .menu-link,
.main-header-menu > .menu-item.current-menu-item > .menu-link {
	color: var(--st-red) !important;
}

/* Hover underline effect */
.main-header-menu > .menu-item > .menu-link::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 0;
	height: 3px;
	background: var(--st-gold);
	border-radius: 999px;
	transform: translateX(-50%);
	transition: width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}
.main-header-menu > .menu-item:hover > .menu-link::after,
.main-header-menu > .menu-item.current-menu-item > .menu-link::after {
	width: 24px;
}

/* --- Category Navigation Chips Band --- */
.st-blog-category-band {
	background: var(--st-soft) !important;
	border-bottom: 1px solid var(--st-line) !important;
	padding: 14px 20px !important;
	margin-bottom: 24px !important;
	box-shadow: 0 2px 8px rgba(44, 20, 14, 0.02) !important;
}
.st-blog-category-list {
	display: flex !important;
	justify-content: center !important;
	gap: 12px !important;
	flex-wrap: wrap !important;
	max-width: 1200px !important;
	margin: 0 auto !important;
}
.st-category-chip {
	display: inline-block !important;
	padding: 8px 18px !important;
	background: var(--st-paper) !important;
	color: var(--st-muted) !important;
	border: 1px solid var(--st-line) !important;
	border-radius: 999px !important;
	font-family: Outfit, sans-serif !important;
	font-weight: 700 !important;
	font-size: 0.9rem !important;
	text-decoration: none !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
	box-shadow: 0 2px 4px rgba(44, 20, 14, 0.02) !important;
}
.st-category-chip:hover {
	background: var(--st-soft) !important;
	color: var(--st-gold) !important;
	border-color: var(--st-gold) !important;
	transform: translateY(-1px) !important;
	box-shadow: 0 4px 8px rgba(230, 95, 0, 0.08) !important;
}
.st-category-chip.active,
.st-category-chip:active {
	background: linear-gradient(135deg, var(--st-gold) 0%, var(--st-red) 100%) !important;
	color: #ffffff !important;
	border-color: transparent !important;
	box-shadow: 0 4px 10px rgba(210, 20, 58, 0.2) !important;
}

/* --- Card Graphic Placeholders (No-Thumb SVGs) --- */
.ast-no-thumb .ast-blog-featured-section {
	height: 180px !important;
	border-radius: 16px !important;
	margin: 0 0 20px 0 !important;
	position: relative !important;
	overflow: hidden !important;
	display: block !important;
	box-shadow: inset 0 0 40px rgba(0, 0, 0, 0.02) !important;
	border: 1px solid var(--st-line) !important;
	transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s ease !important;
}

.ast-article-post:hover .ast-no-thumb .ast-blog-featured-section {
	transform: translateY(-2px) !important;
	box-shadow: 0 8px 24px rgba(44, 20, 14, 0.06) !important;
}

/* Chalisa Cards Background (Diya) */
.category-chalisa .ast-no-thumb .ast-blog-featured-section {
	background: linear-gradient(135deg, #FEF3C7 0%, #FFEEDB 100%) !important;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M20 60 C20 75, 80 75, 80 60 C70 65, 30 65, 20 60 Z" fill="%23E65F00"/><path d="M50 20 C40 38, 42 55, 50 55 C58 55, 60 38, 50 20 Z" fill="%23FBBF24"/><path d="M50 30 C45 40, 46 55, 50 55 C54 55, 55 40, 50 30 Z" fill="%23D2143A"/></svg>'), linear-gradient(135deg, #FEF3C7 0%, #FFEEDB 100%) !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 80px, cover !important;
}

/* Aarti Cards Background (Lotus) */
.category-aarti .ast-no-thumb .ast-blog-featured-section {
	background: linear-gradient(135deg, #FFF4E8 0%, #FDE2E4 100%) !important;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M50 20 C40 45, 45 70, 50 70 C55 70, 60 45, 50 20 Z" fill="%23D2143A" /><path d="M50 40 C30 35, 25 55, 45 65 C48 62, 49 52, 50 40 Z" fill="%23E65F00" opacity="0.95" /><path d="M50 50 C20 45, 15 65, 40 70 C44 68, 47 60, 50 50 Z" fill="%23FBBF24" opacity="0.9" /><path d="M50 40 C70 35, 75 55, 55 65 C52 62, 51 52, 50 40 Z" fill="%23E65F00" opacity="0.95" /><path d="M50 50 C80 45, 85 65, 60 70 C56 68, 53 60, 50 50 Z" fill="%23FBBF24" opacity="0.9" /></svg>'), linear-gradient(135deg, #FFF4E8 0%, #FDE2E4 100%) !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 80px, cover !important;
}

/* Default/Other Cards Background (Mandala Star) */
.ast-no-thumb .ast-blog-featured-section {
	background: linear-gradient(135deg, #FFF4E8 0%, #FFEEDB 100%) !important;
	background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="12" fill="%23FBBF24" /><path d="M50 15 L55 35 L75 35 L58 46 L65 66 L50 54 L35 66 L42 46 L25 35 L45 35 Z" fill="%23E65F00" /><path d="M50 25 L53 38 L66 38 L55 45 L60 58 L50 50 L40 58 L45 45 L34 38 L47 38 Z" fill="%23D2143A" /></svg>'), linear-gradient(135deg, #FFF4E8 0%, #FFEEDB 100%) !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: 80px, cover !important;
}

/* --- Animated Diya Flame & Flicker --- */
.st-diya-container {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	margin: 30px auto !important;
	width: 100% !important;
}
.st-diya {
	position: relative !important;
	width: 80px !important;
	height: 60px !important;
}
/* Clay base of the diya */
.st-diya__base {
	position: absolute !important;
	bottom: 0 !important;
	left: 0 !important;
	width: 80px !important;
	height: 35px !important;
	background: linear-gradient(180deg, var(--st-gold) 0%, var(--st-ink) 100%) !important;
	border-radius: 0 0 40px 40px !important;
	border: 2px solid var(--st-ink) !important;
	box-shadow: 0 4px 10px rgba(44, 20, 14, 0.15) !important;
}
.st-diya__base::before {
	content: '' !important;
	position: absolute !important;
	top: 0 !important;
	left: 5px !important;
	width: 70px !important;
	height: 8px !important;
	background: var(--st-soft) !important;
	border-radius: 50% !important;
	border-bottom: 2px solid var(--st-ink) !important;
}
/* Wick placeholder */
.st-diya__base::after {
	content: '' !important;
	position: absolute !important;
	top: -5px !important;
	left: 36px !important;
	width: 8px !important;
	height: 12px !important;
	background: var(--st-ink) !important;
	transform: rotate(-15deg) !important;
	border-radius: 4px !important;
}
/* Flame container to align flame and glow */
.st-diya__flame-container {
	position: absolute !important;
	top: -38px !important;
	left: 26px !important;
	width: 28px !important;
	height: 45px !important;
	transform-origin: bottom center !important;
}
/* Flame element */
.st-diya__flame {
	position: absolute !important;
	width: 100% !important;
	height: 100% !important;
	background: radial-gradient(ellipse at bottom, #ffffff 0%, var(--st-yellow) 40%, var(--st-gold) 75%, transparent 100%) !important;
	border-radius: 50% 50% 20% 20% / 60% 60% 40% 40% !important;
	box-shadow: 
		0 0 15px var(--st-yellow),
		0 0 30px var(--st-gold),
		0 0 45px rgba(230, 95, 0, 0.4) !important;
	animation: flicker 1.8s ease-in-out infinite alternate !important;
}

@keyframes flicker {
	0% {
		transform: scale(0.96) rotate(-1.5deg);
		opacity: 0.95;
		box-shadow: 
			0 0 12px var(--st-yellow),
			0 0 25px var(--st-gold),
			0 0 40px rgba(230, 95, 0, 0.3);
	}
	50% {
		transform: scale(1.04) rotate(1.5deg);
		opacity: 1;
		box-shadow: 
			0 0 18px var(--st-yellow),
			0 0 35px var(--st-gold),
			0 0 50px rgba(230, 95, 0, 0.5);
	}
	100% {
		transform: scale(0.98) rotate(-0.5deg);
		opacity: 0.97;
		box-shadow: 
			0 0 14px var(--st-yellow),
			0 0 28px var(--st-gold),
			0 0 42px rgba(230, 95, 0, 0.35);
	}
}

/* Horizontal spacing between columns on blog list cards */
.ast-article-inner {
	background: #ffffff !important;
	border: 1px solid var(--st-line) !important;
	border-radius: 24px !important;
	padding: 28px 24px !important;
	box-shadow: 0 10px 30px -10px rgba(44, 20, 14, 0.05), 0 1px 3px rgba(44, 20, 14, 0.02) !important;
	transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1) !important;
}
.ast-article-post:hover .ast-article-inner {
	transform: translateY(-8px) !important;
	box-shadow: 0 24px 48px -15px rgba(230, 95, 0, 0.15) !important;
	border-color: var(--st-gold) !important;
}

/* --- Card Featured Images Formatting (Index Pages) --- */
.blog .ast-blog-featured-section.post-thumb,
.archive .ast-blog-featured-section.post-thumb,
.home .ast-blog-featured-section.post-thumb {
	height: 220px !important;
	margin: -24px -24px 20px -24px !important;
	overflow: hidden !important;
	border-radius: 18px 18px 0 0 !important;
	display: block !important;
	border-bottom: 1px solid var(--st-line) !important;
}

.blog .ast-blog-featured-section.post-thumb img,
.archive .ast-blog-featured-section.post-thumb img,
.home .ast-blog-featured-section.post-thumb img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	object-position: center 20% !important;
	transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

.blog .ast-article-post:hover .ast-blog-featured-section.post-thumb img,
.archive .ast-article-post:hover .ast-blog-featured-section.post-thumb img,
.home .ast-article-post:hover .ast-blog-featured-section.post-thumb img {
	transform: scale(1.04) !important;
}

/* --- Hero Search Form --- */
.st-search-form {
	max-width: 580px !important;
	margin: 28px auto 0 auto !important;
	width: 100% !important;
}

.st-search-input-wrapper {
	position: relative !important;
	display: flex !important;
	align-items: center !important;
	width: 100% !important;
	background: #ffffff !important;
	border: 1px solid var(--st-line) !important;
	border-radius: 999px !important;
	padding: 4px 6px 4px 18px !important;
	box-shadow: 0 4px 20px rgba(44, 20, 14, 0.08) !important;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

.st-search-input-wrapper:focus-within {
	border-color: var(--st-gold) !important;
	background: #ffffff !important;
	box-shadow: 
		0 0 0 3px rgba(230, 95, 0, 0.15),
		0 8px 30px rgba(44, 20, 14, 0.12) !important;
	transform: translateY(-1px) !important;
}

.st-search-field {
	flex: 1 !important;
	border: none !important;
	background: transparent !important;
	font-family: Inter, sans-serif !important;
	font-size: 1.05rem !important;
	font-weight: 500 !important;
	color: var(--st-ink) !important;
	padding: 10px 0 !important;
	outline: none !important;
	width: 100% !important;
}

.st-search-field::placeholder {
	color: var(--st-muted) !important;
	opacity: 0.7 !important;
	font-weight: 400 !important;
}

.st-search-submit {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	width: 44px !important;
	height: 44px !important;
	border-radius: 50% !important;
	border: none !important;
	background: linear-gradient(135deg, var(--st-gold) 0%, var(--st-red) 100%) !important;
	color: #ffffff !important;
	cursor: pointer !important;
	box-shadow: 0 2px 10px rgba(210, 20, 58, 0.2) !important;
	transition: all 0.3s ease !important;
	padding: 0 !important;
}

.st-search-submit:hover {
	transform: scale(1.05) !important;
	box-shadow: 0 4px 15px rgba(210, 20, 58, 0.35) !important;
}

.st-search-submit:active {
	transform: scale(0.95) !important;
}

.st-search-icon {
	width: 18px !important;
	height: 18px !important;
}

/* Ensure default styling isn't breaking search inputs */
.st-search-field::-webkit-search-cancel-button,
.st-search-field::-webkit-search-decoration,
.st-search-field::-webkit-search-results-button,
.st-search-field::-webkit-search-results-decoration {
	display: none !important;
}

/* --- Hide Comments, Diya, and Published Dates/Authors --- */
#comments,
.comments-area,
.ast-comment-area,
.entry-meta,
.ast-blog-meta-container,
.posted-on,
.st-related-card__date {
	display: none !important;
}

/* ==========================================================================
   SHUBH TOKRI HINDU CALENDAR PAGE STYLES
   ========================================================================== */

.st-calendar-page-layout {
	background-color: var(--st-paper);
	padding: 40px 0 80px 0;
}

/* Page Garland Decoration */
.st-calendar-garland {
	width: 100%;
	height: 12px;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 16' fill='none'%3E%3Cpath d='M0 8Q10 14 20 8T40 8' stroke='%2310B981' stroke-width='2.5' stroke-linecap='round'/%3E%3Ccircle cx='10' cy='9' r='4.5' fill='%23E65F00'/%3E%3Ccircle cx='10' cy='9' r='2.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='4.5' fill='%23FBBF24'/%3E%3Ccircle cx='30' cy='7' r='2.5' fill='%23E65F00'/%3E%3C/svg%3E");
	background-repeat: repeat-x;
	background-size: 24px 12px;
	margin-bottom: 24px;
}

.st-calendar-main-header {
	text-align: center;
	margin-bottom: 48px;
}

.st-calendar-subtitle {
	color: var(--st-gold);
	font-weight: 800;
	font-size: 0.9rem;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	display: block;
	margin-bottom: 8px;
}

.st-calendar-title {
	font-size: 3rem;
	font-weight: 800;
	color: var(--st-ink);
	margin: 0 0 16px 0;
}

.st-calendar-desc {
	color: var(--st-muted);
	font-size: 1.1rem;
	max-width: 680px;
	margin: 0 auto;
	line-height: 1.6;
}

/* Main Layout Grid */
.st-calendar-container {
	display: grid;
	grid-template-columns: 7fr 4fr;
	gap: 40px;
	align-items: start;
	margin-top: 32px;
}

/* Calendar Card Container */
.st-calendar-grid-section {
	background: #ffffff;
	border: 1px solid var(--st-line);
	border-radius: 24px;
	padding: 32px;
	box-shadow: 0 10px 30px -10px rgba(44, 20, 14, 0.05);
}

/* Month navigation controls */
.st-calendar-controls {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 24px;
}

.st-calendar-current-month {
	font-size: 1.8rem;
	font-weight: 800;
	color: var(--st-ink);
	margin: 0;
}

.st-calendar-arrow-btn {
	background: var(--st-soft);
	color: var(--st-gold);
	border: 1px solid var(--st-line);
	width: 44px;
	height: 44px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1rem;
	font-weight: 800;
	text-decoration: none;
	transition: all 0.3s ease;
	cursor: pointer;
}

.st-calendar-arrow-btn:hover:not(.disabled) {
	background: var(--st-gold);
	color: #ffffff;
	border-color: var(--st-gold);
	transform: translateY(-1px);
}

.st-calendar-arrow-btn.disabled {
	opacity: 0.4;
	cursor: not-allowed;
}

/* Dropdown selections form */
.st-calendar-select-form {
	display: flex;
	gap: 12px;
	justify-content: center;
	margin-bottom: 32px;
}

.st-calendar-select-form select {
	padding: 10px 20px;
	border-radius: 999px;
	border: 1px solid var(--st-line);
	font-family: Outfit, sans-serif;
	font-weight: 700;
	font-size: 0.9rem;
	color: var(--st-ink);
	background-color: var(--st-paper);
	cursor: pointer;
	outline: none;
	transition: border-color 0.3s ease;
}

.st-calendar-select-form select:focus {
	border-color: var(--st-gold);
}

/* Grid display */
.st-calendar-month-grid {
	display: grid;
	grid-template-columns: repeat(7, 1fr);
	gap: 10px;
}

.st-calendar-grid-weekday {
	font-family: Outfit, sans-serif;
	font-weight: 800;
	font-size: 0.85rem;
	text-transform: uppercase;
	color: var(--st-muted);
	text-align: center;
	padding: 12px 0;
	letter-spacing: 0.05em;
}

/* Grid day cell */
.st-calendar-day-cell {
	background: var(--st-paper);
	border: 1px solid var(--st-line);
	border-radius: 16px;
	aspect-ratio: 1;
	padding: 10px;
	display: flex;
	flex-direction: column;
	text-decoration: none !important;
	color: var(--st-ink);
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	position: relative;
	box-shadow: 0 1px 3px rgba(44, 20, 14, 0.01);
}

.st-calendar-day-cell:hover:not(.empty) {
	background: #ffffff !important;
	border-color: var(--st-gold) !important;
	box-shadow: 0 15px 30px -10px rgba(230, 95, 0, 0.22), 0 0 0 3px rgba(230, 95, 0, 0.05) !important;
	transform: translateY(-4px) scale(1.04) !important;
	z-index: 2;
}

.st-calendar-day-cell.empty {
	background: transparent;
	border-color: transparent;
	cursor: default;
	pointer-events: none;
}

.st-calendar-day-number {
	font-family: Outfit, sans-serif;
	font-weight: 800;
	font-size: 1.15rem;
}

.st-calendar-day-tithi {
	font-size: 0.65rem;
	color: var(--st-muted);
	font-weight: 700;
	text-transform: uppercase;
	margin-top: 4px;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Selected state */
.st-calendar-day-cell.is-selected {
	background: var(--st-soft) !important;
	border-color: var(--st-gold) !important;
	box-shadow: 0 0 0 2px var(--st-gold) !important;
}

/* Today state */
.st-calendar-day-cell.is-today {
	border-color: var(--st-red) !important;
}
.st-calendar-day-cell.is-today .st-calendar-day-number {
	color: var(--st-red);
	position: relative;
}
.st-calendar-day-cell.is-today::after {
	content: '';
	position: absolute;
	top: 8px;
	right: 8px;
	width: 6px;
	height: 6px;
	background-color: var(--st-red);
	border-radius: 50%;
}

/* Indicators dot */
.st-calendar-indicators {
	margin-top: auto;
	display: flex;
	gap: 4px;
	justify-content: flex-end;
}

.indicator-dot {
	width: 6px;
	height: 6px;
	border-radius: 50%;
}

.indicator-dot.festival {
	background-color: var(--st-gold);
}

.indicator-dot.fast {
	background-color: var(--st-red);
}

/* Legend styling */
.st-calendar-legend {
	display: flex;
	gap: 20px;
	justify-content: center;
	margin-top: 24px;
	font-size: 0.8rem;
	font-weight: 700;
	color: var(--st-muted);
}

.legend-item {
	display: flex;
	align-items: center;
	gap: 8px;
}

.legend-dot {
	width: 8px;
	height: 8px;
	border-radius: 50%;
	display: inline-block;
}

.legend-dot.festival {
	background-color: var(--st-gold);
}

.legend-dot.fast {
	background-color: var(--st-red);
}

.legend-dot.today {
	border: 1px solid var(--st-red);
	background-color: transparent;
}

/* Details Card Section */
.st-calendar-detail-card {
	background: rgba(255, 253, 249, 0.82) !important;
	backdrop-filter: blur(20px);
	-webkit-backdrop-filter: blur(20px);
	border: 1.5px solid rgba(245, 229, 213, 0.5) !important;
	border-radius: 24px;
	padding: 32px;
	box-shadow: 0 30px 60px -15px rgba(44, 20, 14, 0.06), 0 1px 3px rgba(0, 0, 0, 0.01) !important;
	position: sticky;
	top: 96px;
}

.st-calendar-detail-head {
	border-bottom: 2px dashed var(--st-line);
	padding-bottom: 20px;
	margin-bottom: 24px;
}

.st-calendar-detail-heading {
	font-size: 1.5rem;
	font-weight: 800;
	color: var(--st-ink);
	margin: 0 0 6px 0;
}

.st-calendar-detail-date {
	font-size: 0.85rem;
	color: var(--st-muted);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: 0.04em;
}

.st-calendar-detail-body {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

.st-calendar-detail-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 0.95rem;
	border-bottom: 1px solid rgba(245, 229, 213, 0.3);
	padding-bottom: 10px;
}

.st-calendar-detail-row .label {
	color: var(--st-muted);
	font-weight: 600;
}

.st-calendar-detail-row .value {
	color: var(--st-ink);
	font-weight: 750;
	text-align: right;
}

.st-calendar-detail-row.event-highlight {
	background: var(--st-soft);
	border: 1px dashed rgba(230, 95, 0, 0.2);
	border-radius: 12px;
	padding: 12px 16px;
	margin-top: 8px;
}

.st-calendar-detail-row.festival-row {
	background: var(--st-yellow-light);
	border-color: var(--st-yellow);
}

.st-calendar-detail-row.event-highlight .label {
	color: var(--st-ink);
	font-weight: 800;
}

.st-calendar-detail-row.event-highlight .value {
	color: var(--st-red);
	font-weight: 800;
}

.st-calendar-detail-footer {
	margin-top: 32px;
}

.st-calendar-detail-btn,
.st-calendar-detail-btn:visited {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	background: linear-gradient(135deg, var(--st-gold) 0%, var(--st-red) 100%);
	color: #ffffff !important;
	border-radius: 999px;
	padding: 14px 20px;
	font-family: Outfit, sans-serif;
	font-weight: 800;
	font-size: 0.9rem;
	text-transform: uppercase;
	text-decoration: none !important;
	letter-spacing: 0.05em;
	transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
	box-shadow: 0 4px 15px rgba(210, 20, 58, 0.2);
}

.st-calendar-detail-btn:hover {
	background: linear-gradient(135deg, #FF8C00 0%, var(--st-gold) 100%);
	box-shadow: 0 6px 20px rgba(230, 95, 0, 0.35);
	transform: translateY(-1px);
}

/* Responsive adjustments */
@media (max-width: 900px) {
	.st-calendar-container {
		grid-template-columns: 1fr;
		gap: 32px;
	}
	.st-calendar-detail-card {
		position: static;
	}
	.st-calendar-title {
		font-size: 2.3rem;
	}
}

@media (max-width: 480px) {
	.st-calendar-month-grid {
		gap: 6px;
	}
	.st-calendar-day-cell {
		padding: 6px;
		border-radius: 12px;
	}
	.st-calendar-day-number {
		font-size: 0.95rem;
	}
	.st-calendar-day-tithi {
		font-size: 0.55rem;
		margin-top: 2px;
	}
	.st-calendar-grid-weekday {
		font-size: 0.75rem;
	}
}






/* --- Single Post Featured Image Styling --- */
.st-single-post-image-wrapper {
	margin: 0 auto 2.5rem auto;
	max-width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 16px;
	overflow: hidden;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

.st-single-post-featured-image {
	width: 100%;
	height: auto;
	max-height: 480px;
	object-fit: cover;
	border-radius: 16px;
	display: block;
}

/* --- Header Logo Sizing & Layout Adjustments --- */
.site-logo-img .custom-logo {
	max-width: 150px !important;
	height: auto !important;
}

.ast-site-title-wrap,
.ast-site-title {
	display: none !important;
}

/* ============================================================
   Custom Site Footer
   ============================================================ */
.st-footer {
	background: linear-gradient(135deg, #1a0a05 0%, #2c140e 60%, #1a0808 100%);
	color: rgba(255, 253, 249, 0.85);
	padding: 56px 24px 40px;
	font-family: 'Inter', sans-serif;
	width: 100%;
	box-sizing: border-box;
}

.st-footer__inner {
	max-width: 1100px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 2fr 1fr 1fr;
	gap: 48px;
	align-items: start;
}

/* Brand Column */
.st-footer__brand {}

.st-footer__logo-link {
	display: inline-block;
	text-decoration: none;
	margin-bottom: 16px;
}

.st-footer__logo-img {
	max-width: 96px;
	height: auto;
	border-radius: 50%;
	background: rgba(255, 253, 249, 0.9);
	padding: 4px;
	box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
}

.st-footer__logo-text {
	font-family: 'Outfit', sans-serif;
	font-size: 1.5rem;
	font-weight: 800;
	color: #fff;
	letter-spacing: -0.02em;
}

.st-footer__tagline {
	font-size: 0.875rem;
	line-height: 1.7;
	color: rgba(255, 240, 220, 0.65);
	margin: 0;
	max-width: 280px;
}

/* Column Headings */
.st-footer__heading {
	font-family: 'Outfit', sans-serif;
	font-size: 0.75rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	color: #E65F00;
	margin: 0 0 20px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(230, 95, 0, 0.25);
}

/* Link Lists */
.st-footer__links {
	list-style: none;
	margin: 0;
	padding: 0;
}

.st-footer__links li {
	margin-bottom: 12px;
}

.st-footer__links a {
	color: rgba(255, 240, 220, 0.75);
	text-decoration: none;
	font-size: 0.9rem;
	transition: color 0.2s ease, padding-left 0.2s ease;
	display: inline-flex;
	align-items: center;
	gap: 6px;
}

.st-footer__links a:hover {
	color: #FFEEDB;
	padding-left: 4px;
}

/* Instagram Social Link */
.st-footer__social-link--instagram {
	gap: 10px !important;
	padding: 10px 16px;
	border-radius: 10px;
	background: rgba(255, 255, 255, 0.04);
	border: 1px solid rgba(255, 255, 255, 0.08);
	transition: background 0.25s ease, border-color 0.25s ease, color 0.25s ease !important;
}

.st-footer__social-link--instagram:hover {
	background: linear-gradient(135deg, #fd5949, #d6249f, #285AEB) !important;
	border-color: transparent !important;
	color: #fff !important;
	padding-left: 16px !important;
}

/* Responsive */
@media (max-width: 768px) {
	.st-footer__inner {
		grid-template-columns: 1fr;
		gap: 36px;
	}

	.st-footer__tagline {
		max-width: 100%;
	}
}

/* ============================================================
   Devotional Refinement Layer
   Quiet sacred warmth without changing the site's core identity.
   ============================================================ */
:root {
	--st-devotional-sandal: #fff8ee;
	--st-devotional-rice: #fffdf8;
	--st-devotional-kumkum: #b9342a;
	--st-devotional-marigold: #f3a51b;
	--st-devotional-tulsi: #52745b;
	--st-devotional-line: rgba(111, 61, 31, 0.14);
	--st-devotional-shadow: 0 22px 48px -28px rgba(111, 61, 31, 0.28);
}

body {
	background:
		radial-gradient(circle at 14% 8%, rgba(243, 165, 27, 0.12), transparent 28rem),
		radial-gradient(circle at 86% 18%, rgba(185, 52, 42, 0.08), transparent 24rem),
		linear-gradient(180deg, var(--st-devotional-rice) 0%, var(--st-devotional-sandal) 100%) !important;
}

.site-content,
.ast-container,
.blog .site-main,
.archive .site-main,
.home .site-main {
	position: relative;
}

.st-announcement-bar {
	background: linear-gradient(90deg, #e65f00 0%, #d83b31 72%, #b9342a 100%) !important;
}

.site-header {
	background: rgba(255, 253, 248, 0.94) !important;
	box-shadow: 0 10px 30px -24px rgba(76, 37, 16, 0.45) !important;
}

.main-header-menu > .menu-item > .menu-link {
	color: #3a2116 !important;
}

.main-header-menu > .menu-item:hover > .menu-link,
.main-header-menu > .menu-item.current-menu-item > .menu-link {
	color: var(--st-devotional-kumkum) !important;
}

.st-blog-hero {
	background:
		radial-gradient(circle at 18% 24%, rgba(255, 238, 190, 0.30), transparent 16rem),
		radial-gradient(circle at 86% 74%, rgba(255, 220, 146, 0.20), transparent 18rem),
		linear-gradient(135deg, #f47b1f 0%, #e95522 46%, #c93630 100%) !important;
	border: 1px solid rgba(255, 242, 218, 0.42) !important;
	border-radius: 32px !important;
	box-shadow: 0 26px 64px -34px rgba(185, 52, 42, 0.62) !important;
	padding: clamp(52px, 7vw, 78px) 24px !important;
}

.st-blog-hero::before {
	opacity: 0.42 !important;
	animation-duration: 38s !important;
}

.st-blog-hero::after {
	content: "" !important;
	position: absolute !important;
	inset: auto 0 22px 0 !important;
	width: 156px !important;
	height: 28px !important;
	margin: 0 auto !important;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 156 28' fill='none'%3E%3Cpath d='M78 3c-6 7-9 12-9 16 0 4 4 6 9 6s9-2 9-6c0-4-3-9-9-16Z' fill='%23fff4cf' fill-opacity='.92'/%3E%3Cpath d='M78 8c-3 5-5 8-5 11 0 2 2 4 5 4s5-2 5-4c0-3-2-6-5-11Z' fill='%23f3a51b'/%3E%3Ccircle cx='51' cy='17' r='3' fill='%23fff4cf' fill-opacity='.78'/%3E%3Ccircle cx='105' cy='17' r='3' fill='%23fff4cf' fill-opacity='.78'/%3E%3Cpath d='M28 17h18M110 17h18' stroke='%23fff4cf' stroke-opacity='.65' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;
	opacity: 0.74 !important;
	pointer-events: none !important;
}

.st-blog-hero__content {
	max-width: 760px !important;
}

.st-blog-hero__subtitle {
	color: #ffe8a8 !important;
	letter-spacing: 0.16em !important;
}

.st-blog-hero__title {
	font-size: clamp(2.85rem, 6vw, 4.45rem) !important;
	letter-spacing: -0.025em !important;
	line-height: 1.05 !important;
	max-width: 820px !important;
	margin-inline: auto !important;
	text-wrap: balance !important;
}

.st-blog-hero__tagline {
	max-width: 700px !important;
	margin-inline: auto !important;
	color: rgba(255, 255, 255, 0.92) !important;
}

.st-search-input-wrapper {
	border-color: rgba(111, 61, 31, 0.14) !important;
	box-shadow: 0 16px 36px -25px rgba(76, 37, 16, 0.55) !important;
}

.st-search-input-wrapper:focus-within {
	box-shadow:
		0 0 0 3px rgba(243, 165, 27, 0.22),
		0 18px 38px -24px rgba(76, 37, 16, 0.55) !important;
}

.st-blog-category-band {
	background: rgba(255, 248, 238, 0.76) !important;
	border-color: var(--st-devotional-line) !important;
}

.st-category-chip {
	background: rgba(255, 253, 248, 0.92) !important;
	border-color: var(--st-devotional-line) !important;
	color: #6d5546 !important;
}

.st-category-chip:hover {
	color: var(--st-devotional-kumkum) !important;
	border-color: rgba(185, 52, 42, 0.22) !important;
}

.st-category-chip.active,
.st-category-chip:active {
	background: linear-gradient(135deg, #f3a51b 0%, #d84c2f 100%) !important;
}

.blog .ast-article-inner,
.archive .ast-article-inner,
.home .ast-article-inner,
.ast-article-inner {
	background: rgba(255, 253, 248, 0.96) !important;
	border-color: var(--st-devotional-line) !important;
	box-shadow: var(--st-devotional-shadow) !important;
}

.blog .ast-article-post:hover .ast-article-inner,
.archive .ast-article-post:hover .ast-article-inner,
.home .ast-article-post:hover .ast-article-inner {
	border-color: rgba(243, 165, 27, 0.45) !important;
	box-shadow: 0 28px 58px -30px rgba(185, 52, 42, 0.32) !important;
	transform: translateY(-5px) !important;
}

.blog .entry-title,
.archive .entry-title,
.home .entry-title {
	line-height: 1.18 !important;
	text-wrap: balance !important;
}

.blog .entry-title a,
.archive .entry-title a,
.home .entry-title a {
	color: #321f17 !important;
}

.ast-taxonomy-container.cat-links a,
.st-related-card__badge {
	border-radius: 999px !important;
}

.single-post .site-main > article {
	background:
		linear-gradient(90deg, rgba(243, 165, 27, 0.16), transparent 9rem),
		rgba(255, 253, 248, 0.96) !important;
	border-color: var(--st-devotional-line) !important;
	box-shadow: var(--st-devotional-shadow) !important;
}

.single-post .entry-content {
	color: #3c2a22 !important;
	line-height: 1.92 !important;
}

.single-post .entry-content h2,
.single-post .entry-content h3 {
	color: var(--st-devotional-kumkum) !important;
}

.single-post.ast-right-sidebar .site-content .ast-container {
	gap: 42px !important;
}

.single-post.ast-right-sidebar #secondary {
	border-left: 0 !important;
}

.st-article-sidebar {
	display: grid;
	gap: 18px;
}

.st-article-sidebar__card {
	background:
		linear-gradient(180deg, rgba(255, 253, 248, 0.98), rgba(255, 248, 238, 0.96)),
		#fffdf8;
	border: 1px solid var(--st-devotional-line);
	border-radius: 18px;
	box-shadow: 0 18px 46px -34px rgba(76, 37, 16, 0.42);
	padding: 22px;
	position: relative;
}

.st-article-sidebar__card::before {
	background: linear-gradient(90deg, #f3a51b, #d84c2f, #52745b);
	border-radius: 999px;
	content: "";
	height: 3px;
	left: 22px;
	position: absolute;
	right: 22px;
	top: 0;
}

.st-article-sidebar__title {
	color: #321f17 !important;
	font-size: 1.05rem !important;
	line-height: 1.3 !important;
	margin: 0 0 14px !important;
}

.st-article-sidebar__eyebrow {
	color: #9b4d26;
	display: block;
	font-size: 0.72rem;
	font-weight: 700;
	letter-spacing: 0.12em;
	margin-bottom: 8px;
	text-transform: uppercase;
}

.st-article-sidebar__search-form {
	display: grid;
	gap: 10px;
}

.st-article-sidebar__search-form input[type="search"] {
	background: #fffaf2;
	border: 1px solid rgba(111, 61, 31, 0.16);
	border-radius: 999px;
	color: #321f17;
	font-size: 0.95rem;
	min-height: 46px;
	padding: 0 16px;
	width: 100%;
}

.st-article-sidebar__search-form input[type="search"]:focus {
	border-color: rgba(243, 165, 27, 0.65);
	box-shadow: 0 0 0 3px rgba(243, 165, 27, 0.2);
	outline: 0;
}

.st-article-sidebar__search-form button,
.st-article-sidebar__link {
	align-items: center;
	background: linear-gradient(135deg, #d84c2f, #9b2f25);
	border: 0;
	border-radius: 999px;
	color: #fff !important;
	display: inline-flex;
	font-size: 0.88rem;
	font-weight: 700;
	justify-content: center;
	min-height: 42px;
	padding: 0 18px;
	text-decoration: none !important;
	width: fit-content;
}

.st-article-sidebar__search-form button {
	width: 100%;
}

.st-article-sidebar__chips {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.st-article-sidebar__chips a {
	background: rgba(243, 165, 27, 0.12);
	border: 1px solid rgba(243, 165, 27, 0.2);
	border-radius: 999px;
	color: #6d3a23 !important;
	font-size: 0.84rem;
	font-weight: 700;
	padding: 8px 12px;
	text-decoration: none !important;
}

.st-article-sidebar__chips a:hover {
	background: rgba(216, 76, 47, 0.12);
	border-color: rgba(216, 76, 47, 0.24);
	color: var(--st-devotional-kumkum) !important;
}

.st-article-sidebar__panchang p {
	color: #6d5546;
	font-size: 0.95rem;
	line-height: 1.7;
	margin-bottom: 16px;
}

.st-article-sidebar__posts {
	display: grid;
	gap: 12px;
	list-style: none;
	margin: 0 !important;
	padding: 0 !important;
}

.st-article-sidebar__posts li {
	border-bottom: 1px solid rgba(111, 61, 31, 0.1);
	margin: 0;
	padding: 0 0 12px;
}

.st-article-sidebar__posts li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.st-article-sidebar__posts a {
	color: #3c2a22 !important;
	display: block;
	font-size: 0.95rem;
	font-weight: 700;
	line-height: 1.45;
	text-decoration: none !important;
}

.st-article-sidebar__posts a:hover {
	color: var(--st-devotional-kumkum) !important;
}

@media (min-width: 922px) {
	.single-post.ast-right-sidebar .site-content .ast-container {
		align-items: start;
		display: grid !important;
		grid-template-columns: minmax(0, 780px) minmax(280px, 340px);
		justify-content: center;
		max-width: 1200px;
	}

	.single-post.ast-right-sidebar #primary,
	.single-post.ast-right-sidebar #secondary {
		float: none !important;
		margin-bottom: 48px !important;
		margin-top: 48px !important;
		padding: 0 !important;
		width: auto !important;
	}

	.single-post.ast-right-sidebar #secondary .sidebar-main {
		position: sticky;
		top: 104px;
	}
}

@media (max-width: 921px) {
	.single-post .site-content .ast-container,
	.single-post.ast-right-sidebar .site-content .ast-container {
		box-sizing: border-box !important;
		display: block !important;
		max-width: 100% !important;
		overflow: hidden !important;
		padding-inline: 12px !important;
		width: 100% !important;
	}

	.single-post.ast-right-sidebar #primary,
	.single-post.ast-right-sidebar #secondary {
		box-sizing: border-box !important;
		float: none !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.single-post .site-main > article {
		box-sizing: border-box !important;
		margin-inline: auto !important;
		max-width: 100% !important;
		overflow: hidden !important;
		padding: 34px 18px !important;
		width: 100% !important;
	}

	.single-post .entry-title {
		font-size: clamp(2rem, 9vw, 2.55rem) !important;
		line-height: 1.16 !important;
		overflow-wrap: anywhere !important;
		word-break: normal !important;
	}

	.single-post .entry-content {
		box-sizing: border-box !important;
		font-size: 1.05rem !important;
		line-height: 1.95 !important;
		max-width: 100% !important;
		overflow-wrap: anywhere !important;
		width: 100% !important;
	}

	.single-post .entry-content h2,
	.single-post .entry-content h3 {
		max-width: 100% !important;
		white-space: normal !important;
	}

	.st-single-post-image-wrapper,
	.st-single-post-featured-image {
		box-sizing: border-box !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.single-post.ast-right-sidebar #secondary {
		margin-top: 0 !important;
		padding-inline: 0 !important;
	}

	.st-article-sidebar__card {
		border-radius: 16px;
		padding: 20px;
	}
}

.st-calendar-page-layout {
	background:
		radial-gradient(circle at 12% 12%, rgba(243, 165, 27, 0.12), transparent 22rem),
		var(--st-devotional-sandal) !important;
}

.st-calendar-grid-section,
.st-calendar-detail-card {
	background: rgba(255, 253, 248, 0.96) !important;
	border-color: var(--st-devotional-line) !important;
	box-shadow: var(--st-devotional-shadow) !important;
}

.st-calendar-day-cell {
	background: #fffaf2 !important;
	border-color: rgba(111, 61, 31, 0.12) !important;
}

.st-calendar-day-cell.is-today {
	background: rgba(82, 116, 91, 0.12) !important;
	border-color: rgba(82, 116, 91, 0.26) !important;
}

.st-calendar-day-cell.is-selected {
	background: rgba(243, 165, 27, 0.16) !important;
}

.st-footer {
	background:
		radial-gradient(circle at 14% 0%, rgba(243, 165, 27, 0.16), transparent 19rem),
		linear-gradient(135deg, #1f110b 0%, #32150f 58%, #200e0b 100%) !important;
}

@media (max-width: 768px) {
	html,
	body {
		overflow-x: hidden !important;
	}

	.st-blog-hero {
		border-radius: 24px !important;
		box-sizing: border-box !important;
		margin-inline: auto !important;
		max-width: calc(100vw - 28px) !important;
		overflow: hidden !important;
		padding: 44px 20px 58px !important;
		width: calc(100vw - 28px) !important;
	}

	.st-blog-hero__content,
	.st-search-form,
	.st-search-input-wrapper {
		box-sizing: border-box !important;
		max-width: 100% !important;
		min-width: 0 !important;
		width: 100% !important;
	}

	.st-blog-hero__subtitle {
		font-size: 0.7rem !important;
		letter-spacing: 0.11em !important;
		white-space: normal !important;
	}

	.st-blog-hero__title {
		font-size: clamp(1.95rem, 8.8vw, 2.65rem) !important;
		line-height: 1.12 !important;
		max-width: 100% !important;
		overflow-wrap: break-word !important;
		word-break: normal !important;
	}

	.st-blog-hero__tagline {
		font-size: 1rem !important;
		max-width: 100% !important;
		overflow-wrap: break-word !important;
	}

	.st-search-input-wrapper {
		display: grid !important;
		grid-template-columns: minmax(0, 1fr) 42px !important;
		gap: 6px !important;
		padding-left: 16px !important;
		padding-right: 6px !important;
	}

	.st-search-field {
		min-width: 0 !important;
		width: 100% !important;
	}

	.st-search-submit {
		height: 42px !important;
		min-width: 42px !important;
		width: 42px !important;
	}

	.st-blog-category-list {
		justify-content: flex-start !important;
		overflow-x: auto !important;
		flex-wrap: nowrap !important;
		padding-bottom: 4px !important;
		scrollbar-width: none !important;
	}

	.st-blog-category-list::-webkit-scrollbar {
		display: none !important;
	}

	.st-category-chip {
		white-space: nowrap !important;
	}
}

/* ==========================================================================
   UX ACCESSIBILITY PASS
   ========================================================================== */

:root {
	--st-focus: #1f7a55;
	--st-focus-ring: 0 0 0 3px rgba(31, 122, 85, 0.24);
}

html {
	scroll-behavior: smooth;
	text-size-adjust: 100%;
}

body {
	font-size: 16px;
	line-height: 1.6;
}

a,
button,
input,
select,
textarea,
[role="button"] {
	touch-action: manipulation;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
.menu-link:focus-visible,
.st-button:focus-visible,
.st-text-link:focus-visible,
.st-category-list a:focus-visible,
.st-category-chip:focus-visible,
.st-calendar-arrow-btn:focus-visible,
.st-calendar-day-cell:focus-visible,
.st-calendar-detail-btn:focus-visible,
.st-article-sidebar a:focus-visible,
.st-footer a:focus-visible {
	outline: 3px solid var(--st-focus) !important;
	outline-offset: 3px !important;
	box-shadow: var(--st-focus-ring) !important;
}

.st-button,
.st-category-list a,
.st-category-chip,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button,
.single-product form.cart .button,
.single-product form.cart .shubh-tokri-whatsapp-enquiry,
.st-calendar-detail-btn,
.st-article-sidebar__search-form button,
.st-footer a {
	min-height: 44px;
}

.main-header-menu > .menu-item > .menu-link {
	min-height: 44px;
}

.st-announcement-link {
	min-height: 24px;
}

.st-announcement-link:focus-visible {
	outline-color: #ffffff !important;
}

.st-marquee-content {
	will-change: transform;
}

.st-products .wc-block-grid__product:focus-within,
.woocommerce ul.products li.product:focus-within,
.blog .ast-article-inner:focus-within,
.archive .ast-article-inner:focus-within,
.st-related-card:focus-within {
	border-color: var(--st-focus) !important;
	box-shadow: 0 0 0 3px rgba(31, 122, 85, 0.16), 0 18px 44px -20px rgba(44, 20, 14, 0.18) !important;
}

.st-products .wc-block-grid__product-title,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.blog .entry-title,
.archive .entry-title,
.st-related-card__title {
	overflow-wrap: anywhere !important;
}

.st-products .wp-block-button__link,
.st-products .wc-block-grid__product-add-to-cart-button,
.wc-block-grid__product-add-to-cart .wp-block-button__link,
.woocommerce ul.products li.product .button,
.woocommerce-page ul.products li.product .button {
	white-space: normal !important;
}

.st-calendar-subtitle {
	letter-spacing: 0.08em;
}

.st-calendar-select-form {
	align-items: end;
	flex-wrap: wrap;
}

.st-calendar-field {
	display: flex;
	flex-direction: column;
	gap: 6px;
	min-width: 150px;
}

.st-calendar-field label {
	color: var(--st-muted);
	font-size: 0.76rem;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.st-calendar-select-form select {
	min-height: 46px;
	width: 100%;
}

.st-calendar-day-cell {
	min-height: 78px;
	overflow: hidden;
}

.st-calendar-day-cell.is-selected {
	outline: 2px solid var(--st-gold);
	outline-offset: 2px;
}

.indicator-dot,
.legend-dot {
	flex: 0 0 auto;
}

.st-calendar-legend {
	align-items: center;
	flex-wrap: wrap;
	row-gap: 10px;
}

.st-calendar-detail-row {
	align-items: flex-start;
	gap: 16px;
}

.st-calendar-detail-row .label,
.st-calendar-detail-row .value {
	line-height: 1.45;
}

.st-calendar-detail-btn {
	text-align: center;
}

@media (max-width: 768px) {
	.st-shell {
		width: calc(100% - 28px);
	}

	.st-section {
		padding-bottom: 48px;
		padding-top: 48px;
	}

	.st-section-head h2,
	.st-editorial h2,
	.st-calendar-title {
		font-size: clamp(2rem, 9vw, 2.4rem) !important;
		line-height: 1.16 !important;
	}

	.st-calendar-page-layout {
		padding: 28px 0 56px;
	}

	.st-calendar-main-header {
		margin-bottom: 32px;
	}

	.st-calendar-container {
		margin-top: 24px;
	}

	.st-calendar-grid-section,
	.st-calendar-detail-card {
		border-radius: 18px !important;
		padding: 20px !important;
	}

	.st-calendar-controls {
		gap: 12px;
	}

	.st-calendar-current-month {
		font-size: clamp(1.25rem, 5vw, 1.55rem);
		text-align: center;
	}

	.st-calendar-select-form {
		display: grid;
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.st-calendar-field {
		min-width: 0;
	}

	.st-calendar-month-grid {
		gap: 5px !important;
	}

	.st-calendar-grid-weekday {
		font-size: 0.68rem !important;
		padding: 8px 0 !important;
	}

	.st-calendar-day-cell {
		aspect-ratio: auto !important;
		border-radius: 10px !important;
		min-height: 58px;
		padding: 6px 4px !important;
	}

	.st-calendar-day-cell:hover:not(.empty) {
		transform: none !important;
	}

	.st-calendar-day-number {
		font-size: 0.9rem !important;
	}

	.st-calendar-day-tithi {
		font-size: 0.5rem !important;
		letter-spacing: 0;
		white-space: normal;
	}

	.st-calendar-indicators {
		justify-content: center;
	}

	.st-calendar-detail-row,
	.st-calendar-detail-row.event-highlight {
		display: grid;
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.st-calendar-detail-row .value {
		text-align: left;
	}
}

@media (max-width: 420px) {
	.st-calendar-grid-section,
	.st-calendar-detail-card {
		margin-inline: -2px;
		padding: 14px !important;
	}

	.st-calendar-arrow-btn {
		height: 44px;
		width: 44px;
	}

	.st-calendar-select-form {
		grid-template-columns: 1fr;
	}

	.st-calendar-day-cell {
		min-height: 52px;
	}

	.st-calendar-day-tithi {
		display: none;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}

	.st-marquee-content {
		animation: none !important;
		padding-left: 16px;
		white-space: normal;
	}
}
