/* ==========================================================================
   SANATAANI Design System
   Ancient Bharat × Premium Luxury × Modern Technology
   ========================================================================== */

:root {
	--maroon: #10264C;
	--maroon-deep: #0A1A38;
	--saffron: #E87516;
	--gold: #CFA44E;
	--gold-soft: #EBCE92;
	--ivory: #FFF9EF;
	--charcoal: #081226;
	--sand: #EAE2D0;
	--sand-dark: #CFC2A6;
	--ink: #1E2433;

	--font-display: "Cormorant Garamond", Georgia, serif;
	--font-body: "Inter", -apple-system, sans-serif;

	--container: 1180px;
	--radius: 4px;
	--shadow-soft: 0 18px 50px -22px rgba(8, 18, 38, .35);
	--ease-lux: cubic-bezier(.22, .8, .3, 1);
}

/* ---------- Reset & base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
body {
	margin: 0;
	font-family: var(--font-body);
	font-size: 16px;
	line-height: 1.65;
	color: var(--ink);
	background: var(--ivory);
	-webkit-font-smoothing: antialiased;
}
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; }
button { font: inherit; cursor: pointer; }
h1, h2, h3, h4 { font-family: var(--font-display); font-weight: 600; line-height: 1.15; margin: 0 0 .5em; color: var(--charcoal); }

.container { width: min(var(--container), calc(100% - 2.5rem)); margin-inline: auto; }

.skip-link {
	position: absolute; left: -9999px; top: 0; background: var(--charcoal); color: var(--ivory);
	padding: .6rem 1rem; z-index: 200;
}
.skip-link:focus { left: 0; }

/* ---------- Typography helpers ---------- */
.san-eyebrow {
	display: inline-block;
	font-family: var(--font-body);
	font-size: .78rem;
	font-weight: 600;
	letter-spacing: .22em;
	text-transform: uppercase;
	color: var(--saffron);
	margin-bottom: .8rem;
}
.san-section-title {
	font-size: clamp(1.9rem, 4.5vw, 2.9rem);
	margin-bottom: 1.4rem;
	position: relative;
}
.san-section-title--light { color: var(--ivory); }

/* ---------- Buttons ---------- */
.san-btn {
	display: inline-block;
	padding: .95rem 2.2rem;
	font-family: var(--font-body);
	font-size: 1rem;
	font-weight: 600;
	letter-spacing: .04em;
	text-decoration: none;
	text-align: center;
	border: 1px solid transparent;
	border-radius: var(--radius);
	transition: transform .35s var(--ease-lux), box-shadow .35s var(--ease-lux), background .3s;
	min-height: 48px;
}
.san-btn:hover { transform: translateY(-2px); }
.san-btn--gold {
	background: linear-gradient(135deg, var(--gold) 0%, #c08a2c 100%);
	color: var(--charcoal);
	box-shadow: 0 12px 30px -12px rgba(217, 164, 65, .55);
}
.san-btn--gold:hover { box-shadow: 0 18px 40px -12px rgba(217, 164, 65, .7); }
.san-btn--maroon {
	background: var(--maroon);
	color: var(--ivory);
	box-shadow: 0 12px 30px -14px rgba(74, 11, 18, .6);
}
.san-btn--maroon:hover { background: var(--maroon-deep); }
.san-btn--ghost {
	background: transparent;
	color: var(--ivory);
	border-color: rgba(255, 249, 239, .45);
}
.san-btn--ghost:hover { border-color: var(--gold); color: var(--gold-soft); }
.san-btn--ghost-dark { color: var(--charcoal); border-color: rgba(23,18,15,.35); }
.san-btn--ghost-dark:hover { border-color: var(--saffron); color: var(--saffron); }

/* ---------- Header ---------- */
.san-header {
	position: sticky; top: 0; z-index: 100;
	background: rgba(255, 249, 239, .92);
	backdrop-filter: blur(14px);
	border-bottom: 1px solid rgba(217, 164, 65, .25);
	transition: background .3s;
}
body.san-over-hero .san-header {
	background: linear-gradient(rgba(8,18,38,.55), rgba(8,18,38,0));
	border-bottom-color: transparent;
}
body.san-over-hero .san-header a,
body.san-over-hero .san-header .san-logo__text,
body.san-over-hero .san-header__icon { color: var(--ivory); }
body.san-over-hero .san-header__menu-btn span { background: var(--ivory); }

.san-header__inner {
	display: flex; align-items: center; gap: 1.5rem;
	min-height: 68px;
}
.san-logo { display: inline-flex; align-items: center; gap: .55rem; text-decoration: none; }
.san-logo__mark { width: 30px; height: 30px; color: var(--gold); }
.san-logo__mark svg { width: 100%; height: 100%; }
.san-logo__text {
	font-family: var(--font-display);
	font-size: 1.45rem; font-weight: 700; letter-spacing: .14em; color: var(--charcoal);
}
.san-logo__text--footer { font-size: 1.7rem; color: var(--ivory); letter-spacing: .18em; }

.san-nav { margin-left: auto; }
.san-nav__list { display: flex; gap: 1.8rem; list-style: none; margin: 0; padding: 0; }
.san-nav__list a {
	text-decoration: none; font-weight: 500; font-size: .95rem; color: var(--ink);
	padding: .3rem 0; position: relative;
}
.san-nav__list a::after {
	content: ""; position: absolute; left: 0; bottom: -2px; width: 0; height: 2px;
	background: var(--gold); transition: width .3s var(--ease-lux);
}
.san-nav__list a:hover::after { width: 100%; }
.san-nav__highlight a { color: var(--saffron); font-weight: 600; }

.san-header__actions { display: flex; align-items: center; gap: .9rem; }
.san-header__icon { width: 42px; height: 42px; display: grid; place-items: center; color: var(--charcoal); }
.san-header__icon svg { width: 22px; height: 22px; }
.san-header__cart { position: relative; }
.san-header__cart-count {
	position: absolute; top: 2px; right: 0;
	background: var(--saffron); color: #fff; font-size: .68rem; font-weight: 700;
	min-width: 17px; height: 17px; border-radius: 999px;
	display: grid; place-items: center; padding-inline: 4px;
}

.san-header__menu-btn {
	display: none;
	width: 44px; height: 44px; background: none; border: 0; padding: 10px;
	flex-direction: column; justify-content: center; gap: 5px;
}
.san-header__menu-btn span { display: block; height: 2px; background: var(--charcoal); border-radius: 2px; transition: .3s; }

.san-mobile-menu { border-top: 1px solid rgba(217,164,65,.25); background: var(--ivory); }
.san-mobile-menu__list { list-style: none; margin: 0; padding: .6rem 1.4rem 1.2rem; }
.san-mobile-menu__list a {
	display: block; padding: .9rem 0; text-decoration: none;
	font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; color: var(--charcoal);
	border-bottom: 1px solid rgba(217,164,65,.18);
}

/* ---------- Hero ---------- */
.san-hero {
	position: relative;
	min-height: 100svh;
	display: flex; align-items: center; justify-content: center;
	background: var(--charcoal);
	overflow: hidden;
	margin-top: -68px; /* under transparent header */
}
.san-hero__media { position: absolute; inset: 0; }
.san-hero__video {
	width: 100%; height: 100%; object-fit: cover;
	opacity: .85;
}
.san-hero__veil {
	position: absolute; inset: 0;
	background:
		radial-gradient(ellipse at 50% 72%, rgba(232, 117, 22, .16), transparent 55%),
		linear-gradient(180deg, rgba(8,18,38,.6) 0%, rgba(8,18,38,.3) 45%, rgba(8,18,38,.82) 100%);
}
.san-hero__particles { position: absolute; inset: 0; pointer-events: none; }
.san-particle {
	position: absolute; bottom: -8px;
	width: 4px; height: 4px; border-radius: 50%;
	background: radial-gradient(circle, rgba(232,200,135,.95), rgba(232,200,135,0));
	will-change: transform, opacity;
}

.san-hero__content { position: relative; text-align: center; color: var(--ivory); padding-block: 7rem 5rem; }
.san-hero__diya { width: 54px; margin: 0 auto 1.2rem; color: var(--gold); position: relative; opacity: 0; }
.san-hero__diya svg { width: 100%; height: auto; }
.san-hero__flame {
	position: absolute; left: 50%; top: -14px; translate: -50% 0;
	width: 10px; height: 16px; border-radius: 50% 50% 50% 50% / 60% 60% 40% 40%;
	background: radial-gradient(circle at 50% 80%, #fff6d8 0%, #f5b942 45%, rgba(232,117,22,.15) 90%);
	filter: blur(.4px);
	animation: flame 2.4s ease-in-out infinite;
	transform-origin: 50% 100%;
}
@keyframes flame {
	0%, 100% { transform: scale(1) rotate(-1.5deg); opacity: .95; }
	50% { transform: scale(1.12) rotate(1.5deg); opacity: 1; }
}

.san-hero__title {
	font-size: clamp(2.6rem, 9vw, 5.4rem);
	font-weight: 700;
	letter-spacing: .22em;
	margin: 0 0 1rem;
	color: var(--ivory);
	text-shadow: 0 4px 40px rgba(217, 164, 65, .35);
	opacity: 0;
}
.san-hero__line {
	font-family: var(--font-display);
	font-size: clamp(1.2rem, 3.4vw, 1.75rem);
	font-style: italic;
	color: var(--gold-soft);
	margin: 0 0 .9rem;
	opacity: 0;
}
.san-hero__pillars {
	font-size: .85rem; letter-spacing: .3em; text-transform: uppercase;
	color: rgba(255,249,239,.75);
	margin: 0 0 2.3rem;
	opacity: 0;
}
.san-hero__ctas { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; opacity: 0; }

.san-hero__scroll {
	position: absolute; bottom: 1.6rem; left: 50%; translate: -50% 0;
	width: 44px; height: 44px; border: 0; background: none;
}
.san-hero__scroll span {
	display: block; width: 22px; height: 34px; margin: auto;
	border: 1.5px solid rgba(255,249,239,.5); border-radius: 12px; position: relative;
}
.san-hero__scroll span::after {
	content: ""; position: absolute; top: 6px; left: 50%; translate: -50% 0;
	width: 3px; height: 7px; border-radius: 3px; background: var(--gold);
	animation: scrollhint 1.8s ease-in-out infinite;
}
@keyframes scrollhint { 0% { transform: translateY(0); opacity: 1; } 70% { transform: translateY(10px); opacity: 0; } 100% { opacity: 0; } }

/* ---------- Kumbh Amrit feature ---------- */
.san-kumbh {
	position: relative;
	background: linear-gradient(180deg, var(--maroon-deep) 0%, var(--maroon) 60%, #1B3E75 100%);
	color: var(--ivory);
	padding: clamp(4rem, 9vw, 7.5rem) 0;
	overflow: hidden;
}
.san-kumbh__water {
	position: absolute; inset: auto 0 0 0; height: 42%;
	background:
		radial-gradient(ellipse 90% 60% at 50% 100%, rgba(232, 200, 135, .12), transparent 70%),
		repeating-linear-gradient(180deg, transparent 0 14px, rgba(255,249,239,.02) 14px 15px);
	mask-image: linear-gradient(180deg, transparent, #000 40%);
	pointer-events: none;
}
.san-kumbh__grid {
	position: relative;
	display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 6fr);
	gap: clamp(2rem, 6vw, 5rem); align-items: center;
}
.san-kumbh__visual { margin: 0; position: relative; display: grid; place-items: center; }
.san-kumbh__bottle { max-height: 520px; width: auto; filter: drop-shadow(0 30px 60px rgba(0,0,0,.5)); position: relative; z-index: 2; }
.san-kumbh__glow {
	position: absolute; inset: 10% 15%;
	background: radial-gradient(ellipse, rgba(217,164,65,.35), transparent 65%);
	filter: blur(10px);
}
.san-kumbh__title {
	font-size: clamp(2.2rem, 6vw, 3.6rem); letter-spacing: .12em; color: var(--ivory); margin-bottom: .2em;
}
.san-kumbh__sub { font-family: var(--font-display); font-size: 1.35rem; font-style: italic; color: var(--gold-soft); margin: 0 0 1rem; }
.san-kumbh__story { max-width: 46ch; color: rgba(255,249,239,.85); margin-bottom: 1.6rem; }

.san-offer {
	display: flex; flex-wrap: wrap; align-items: baseline; gap: .4rem 1rem;
	padding: 1.1rem 1.3rem;
	border: 1px solid rgba(217,164,65,.4);
	border-radius: var(--radius);
	background: rgba(23,18,15,.25);
	margin-bottom: 1.4rem;
}
.san-offer__mrp { font-size: .95rem; color: rgba(255,249,239,.65); }
.san-offer__price { font-size: 2.2rem; font-weight: 700; font-family: var(--font-display); color: var(--gold-soft); }
.san-offer__note { flex-basis: 100%; font-size: .88rem; color: rgba(255,249,239,.8); }

.san-kumbh__badges { display: flex; gap: 1.4rem; flex-wrap: wrap; margin-bottom: 1.7rem; }
.san-kumbh__badges span { display: inline-flex; align-items: center; gap: .5rem; font-size: .92rem; color: rgba(255,249,239,.9); }
.san-kumbh__badges svg { width: 20px; height: 20px; color: var(--gold); }
.san-kumbh__ritual-note { font-size: .82rem; color: rgba(255,249,239,.6); margin-top: 1rem; }

/* ---------- Story ---------- */
.san-story { padding: clamp(4rem, 8vw, 6.5rem) 0; background: var(--ivory); position: relative; }
.san-story::before {
	content: ""; position: absolute; top: 0; left: 50%; translate: -50% 0;
	width: min(720px, 80%); height: 1px;
	background: linear-gradient(90deg, transparent, var(--gold), transparent);
}
.san-story__steps {
	list-style: none; margin: 0; padding: 0;
	display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem;
	counter-reset: step;
	text-align: center;
}
.san-story__step { position: relative; }
.san-story__step:not(:last-child)::after {
	content: "→"; position: absolute; right: -1.4rem; top: 22px;
	color: var(--gold); font-size: 1.2rem;
}
.san-story__icon { display: inline-grid; place-items: center; width: 54px; height: 54px; color: var(--saffron); margin-bottom: .6rem; }
.san-story__icon svg { width: 34px; height: 34px; }
.san-story__step h3 { font-size: 1.25rem; margin-bottom: .3rem; }
.san-story__step p { font-size: .92rem; color: #5A6274; margin: 0; }

/* ---------- Category & product grids ---------- */
.san-cats, .san-featured { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.san-cats { background: var(--sand); }
.san-grid { display: grid; gap: 1.6rem; }
.san-grid--3 { grid-template-columns: repeat(3, 1fr); }
.san-grid--cats { grid-template-columns: repeat(4, 1fr); }
.san-grid--why { grid-template-columns: repeat(3, 1fr); gap: 2.2rem; }

.san-cat-card {
	position: relative; display: block; aspect-ratio: 4 / 5;
	border-radius: var(--radius); overflow: hidden; text-decoration: none;
	background: linear-gradient(160deg, var(--maroon) 0%, var(--charcoal) 100%);
	box-shadow: var(--shadow-soft);
}
.san-cat-card__img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease-lux); opacity: .88; }
.san-cat-card:hover .san-cat-card__img { transform: scale(1.06); }
.san-cat-card__placeholder { position: absolute; inset: 0; display: grid; place-items: center; color: rgba(217,164,65,.5); }
.san-cat-card__placeholder svg { width: 64px; height: 64px; }
.san-cat-card__name {
	position: absolute; inset: auto 0 0 0;
	padding: 2.2rem 1.1rem .95rem;
	background: linear-gradient(transparent, rgba(23,18,15,.85));
	color: var(--ivory);
	font-family: var(--font-display); font-size: 1.3rem; font-weight: 600;
}

.san-card {
	display: flex; flex-direction: column; gap: .35rem;
	text-decoration: none;
	background: #fff;
	border: 1px solid rgba(217,164,65,.25);
	border-radius: var(--radius);
	padding: 0 0 1.2rem;
	overflow: hidden;
	transition: transform .4s var(--ease-lux), box-shadow .4s var(--ease-lux);
}
.san-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-soft); }
.san-card__imgwrap { display: block; aspect-ratio: 4 / 5; overflow: hidden; background: var(--sand); }
.san-card__imgwrap img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease-lux); }
.san-card:hover .san-card__imgwrap img { transform: scale(1.05); }
.san-card__cat { padding: .9rem 1.1rem 0; font-size: .74rem; letter-spacing: .14em; text-transform: uppercase; color: var(--saffron); font-weight: 600; }
.san-card__title { padding: 0 1.1rem; font-family: var(--font-display); font-size: 1.28rem; font-weight: 600; color: var(--charcoal); }
.san-card__price { padding: 0 1.1rem; font-weight: 600; color: var(--maroon); }
.san-card__price del { color: #8B93AB; font-weight: 400; margin-right: .4rem; }

/* ---------- Why ---------- */
.san-why { background: linear-gradient(180deg, var(--charcoal), #0E1D3C); color: var(--ivory); padding: clamp(4rem, 8vw, 6.5rem) 0; }
.san-why__item h3 { color: var(--ivory); font-size: 1.3rem; margin-bottom: .3rem; }
.san-why__item p { color: rgba(255,249,239,.7); font-size: .95rem; margin: 0; }
.san-why__icon { display: inline-grid; place-items: center; width: 46px; height: 46px; color: var(--gold); margin-bottom: .7rem; }
.san-why__icon svg { width: 30px; height: 30px; }

/* ---------- Future / knowledge / final ---------- */
.san-future { padding: clamp(3.5rem, 7vw, 5.5rem) 0; background: var(--sand); text-align: center; }
.san-future__note { max-width: 60ch; margin-inline: auto; color: #5A6274; }
.san-knowledge { padding: clamp(3.5rem, 8vw, 6rem) 0; }
.san-article-card {
	display: block; text-decoration: none;
	border-radius: var(--radius); overflow: hidden;
	background: #fff; border: 1px solid rgba(217,164,65,.25);
	transition: transform .4s var(--ease-lux), box-shadow .4s var(--ease-lux);
}
.san-article-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-soft); }
.san-article-card img { aspect-ratio: 16 / 10; object-fit: cover; width: 100%; }
.san-article-card__title { display: block; padding: 1rem 1.2rem 1.3rem; font-family: var(--font-display); font-size: 1.25rem; font-weight: 600; color: var(--charcoal); }

.san-final {
	position: relative; text-align: center;
	background: radial-gradient(ellipse at 50% 120%, #1B3E75, var(--maroon-deep) 55%, var(--charcoal));
	color: var(--ivory);
	padding: clamp(5rem, 11vw, 8.5rem) 0;
	overflow: hidden;
}
.san-final__glow {
	position: absolute; left: 50%; bottom: -30%; translate: -50% 0;
	width: 620px; height: 420px;
	background: radial-gradient(ellipse, rgba(217,164,65,.22), transparent 65%);
	pointer-events: none;
}
.san-final__line { font-size: clamp(2rem, 6vw, 3.4rem); color: var(--ivory); margin-bottom: .3em; }
.san-final__sub { font-family: var(--font-display); font-style: italic; font-size: 1.3rem; color: var(--gold-soft); margin-bottom: 2rem; }

/* ---------- Footer ---------- */
.san-footer { background: var(--charcoal); color: rgba(255,249,239,.8); }
.san-footer__ornament {
	height: 3px;
	background: linear-gradient(90deg, transparent, var(--gold) 30%, var(--saffron) 50%, var(--gold) 70%, transparent);
}
.san-footer__grid {
	display: grid; grid-template-columns: 1.4fr 1fr 1fr 1.1fr; gap: 2.5rem;
	padding: 3.5rem 0 2.5rem;
}
.san-footer__tag { font-family: var(--font-display); font-style: italic; color: var(--gold-soft); margin: .8rem 0 .4rem; }
.san-footer__pillars { font-size: .78rem; letter-spacing: .25em; text-transform: uppercase; color: rgba(255,249,239,.55); }
.san-footer h3 { color: var(--ivory); font-size: 1.05rem; font-family: var(--font-body); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 1rem; }
.san-footer__list { list-style: none; margin: 0; padding: 0; }
.san-footer__list li { margin-bottom: .55rem; }
.san-footer__list a { color: rgba(255,249,239,.75); text-decoration: none; font-size: .93rem; }
.san-footer__list a:hover { color: var(--gold-soft); }
.san-footer__legal-entity { font-size: .8rem; color: rgba(255,249,239,.5); margin-top: 1rem; }
.san-footer__bottom { border-top: 1px solid rgba(255,249,239,.12); padding: 1.4rem 0; font-size: .82rem; color: rgba(255,249,239,.5); }
.san-footer__bottom .container { display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
.san-footer__note { max-width: 60ch; }

/* ---------- WhatsApp float ---------- */
.san-wa {
	position: fixed; right: 1.1rem; bottom: 1.1rem; z-index: 90;
	display: inline-flex; align-items: center; gap: .6rem;
	background: #1faa53; color: #fff;
	padding: .7rem 1.1rem .7rem .8rem;
	border-radius: 999px;
	text-decoration: none; font-weight: 600; font-size: .92rem;
	box-shadow: 0 14px 34px -12px rgba(31, 170, 83, .65);
	transition: transform .3s var(--ease-lux);
}
.san-wa:hover { transform: translateY(-3px); }
.san-wa__icon { width: 24px; height: 24px; display: grid; place-items: center; }
.san-wa__icon svg { width: 24px; height: 24px; }

/* ---------- Shop / product ---------- */
.san-shop { padding: 2.5rem 0 4rem; }
.san-shop ul.products { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.6rem; }
.san-shop ul.products li.product {
	background: #fff; border: 1px solid rgba(217,164,65,.25); border-radius: var(--radius);
	overflow: hidden; padding-bottom: 1.1rem;
	transition: transform .4s var(--ease-lux), box-shadow .4s var(--ease-lux);
	display: flex; flex-direction: column;
}
.san-shop ul.products li.product:hover { transform: translateY(-5px); box-shadow: var(--shadow-soft); }
.san-shop ul.products li.product > a img { aspect-ratio: 4/5; object-fit: cover; width: 100%; }
.san-shop ul.products li.product .san-card__cat { padding-top: .9rem; }
.san-shop ul.products li.product .san-card__title { font-size: 1.25rem; margin: 0; padding: 0 1.1rem; }
.san-shop ul.products li.product .price { padding: .2rem 1.1rem 0; font-weight: 600; color: var(--maroon); }
.san-shop ul.products li.product .price del { color: #8B93AB; font-weight: 400; margin-right: .35rem; }
.san-shop ul.products li.product .button {
	margin: .8rem 1.1rem 0; text-align: center;
	background: var(--maroon); color: var(--ivory); border: 0; border-radius: var(--radius);
	padding: .75rem 1rem; text-decoration: none; font-weight: 600;
}
.san-shop ul.products li.product .button:hover { background: var(--maroon-deep); }
.woocommerce-result-count, .woocommerce-ordering { font-size: .9rem; color: #5A6274; }
.woocommerce-ordering select { padding: .5rem .8rem; border: 1px solid var(--sand-dark); border-radius: var(--radius); background: #fff; }

/* Single product */
.single-product div.product { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: clamp(2rem, 5vw, 4rem); align-items: start; padding-top: 1.5rem; }
.single-product div.product .woocommerce-product-gallery { position: sticky; top: 92px; }
.single-product div.product .woocommerce-product-gallery img { border-radius: var(--radius); }
.single-product div.product .product_title { font-size: clamp(1.9rem, 4vw, 2.7rem); }
.single-product div.product p.price { font-size: 1.6rem; font-weight: 700; color: var(--maroon); font-family: var(--font-display); }
.single-product div.product p.price del { color: #8B93AB; font-weight: 400; font-size: 1.1rem; }
.single-product div.product form.cart { display: flex; gap: 1rem; align-items: stretch; margin: 1.5rem 0; flex-wrap: wrap; }
.single-product div.product form.cart .quantity input {
	width: 76px; height: 52px; text-align: center; font-size: 1.1rem;
	border: 1px solid var(--sand-dark); border-radius: var(--radius);
}
.single-product div.product form.cart .single_add_to_cart_button {
	flex: 1; min-width: 220px; min-height: 52px;
	background: linear-gradient(135deg, var(--gold) 0%, #c08a2c 100%);
	color: var(--charcoal); font-weight: 700; font-size: 1.05rem;
	border: 0; border-radius: var(--radius);
}
.single-product div.product form.cart .single_add_to_cart_button:hover { filter: brightness(1.06); }
.woocommerce-tabs ul.tabs { list-style: none; display: flex; gap: 1.5rem; padding: 0; border-bottom: 1px solid var(--sand-dark); }
.woocommerce-tabs ul.tabs li a { display: block; padding: .7rem 0; text-decoration: none; font-weight: 600; color: #5A6274; }
.woocommerce-tabs ul.tabs li.active a { color: var(--maroon); box-shadow: inset 0 -2px 0 var(--gold); }

/* Notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
	list-style: none; margin: 1rem 0; padding: 1rem 1.2rem;
	border-radius: var(--radius); border: 1px solid;
	font-size: .95rem;
}
.woocommerce-message { background: #f3f9f0; border-color: #b7d9a8; color: #2c5e1a; }
.woocommerce-info { background: #f6efe3; border-color: var(--gold); color: #7a5a1e; }
.woocommerce-error { background: #fbf0ef; border-color: #e0a9a2; color: #8c2f24; }

/* Cart & checkout */
.woocommerce-cart-form table.shop_table, table.shop_table.woocommerce-checkout-review-order-table {
	width: 100%; border-collapse: collapse; background: #fff; border: 1px solid rgba(217,164,65,.3); border-radius: var(--radius);
}
table.shop_table th, table.shop_table td { padding: .95rem 1rem; border-bottom: 1px solid var(--sand); text-align: left; }
table.shop_table img { width: 72px; border-radius: var(--radius); }
.woocommerce-cart-form .quantity input { width: 68px; height: 46px; text-align: center; border: 1px solid var(--sand-dark); border-radius: var(--radius); }
.cart_totals h2, #order_review_heading { font-size: 1.5rem; }
.wc-proceed-to-checkout .checkout-button, #place_order {
	display: block; width: 100%;
	background: linear-gradient(135deg, var(--gold) 0%, #c08a2c 100%);
	color: var(--charcoal); font-weight: 700; font-size: 1.1rem;
	padding: 1.05rem; border: 0; border-radius: var(--radius); text-align: center; text-decoration: none;
	min-height: 54px;
}
.wc-proceed-to-checkout .checkout-button:hover, #place_order:hover { filter: brightness(1.06); }

.woocommerce-checkout .col2-set { display: grid; gap: 2rem; }
.woocommerce form .form-row { margin-bottom: 1.05rem; }
.woocommerce form .form-row label { display: block; font-weight: 600; font-size: .95rem; margin-bottom: .35rem; }
.woocommerce form .form-row input.input-text, .woocommerce form .form-row select, .woocommerce form .form-row textarea {
	width: 100%; padding: .85rem 1rem; font-size: 1.05rem;
	border: 1px solid var(--sand-dark); border-radius: var(--radius); background: #fff;
	min-height: 50px;
}
.woocommerce form .form-row input.input-text:focus { outline: 2px solid var(--gold); outline-offset: 1px; }
.sanataani-hidden-field { display: none !important; }
#payment { background: #fff; border: 1px solid rgba(217,164,65,.3); border-radius: var(--radius); padding: 1.2rem; }
#payment .payment_method_cod label { font-weight: 700; font-size: 1.1rem; display: inline-flex; align-items: center; gap: .5rem; }
#payment .payment_box { background: var(--sand); border-radius: var(--radius); padding: .9rem 1.1rem; margin-top: .6rem; font-size: .95rem; }

/* Order received */
.woocommerce-order { text-align: center; padding: 3rem 0; }
.woocommerce-thankyou-order-received {
	font-family: var(--font-display); font-size: clamp(1.6rem, 4vw, 2.3rem); font-weight: 600; color: var(--maroon);
	max-width: 26ch; margin: 0 auto 2rem;
}
.woocommerce-order-overview {
	list-style: none; display: flex; flex-wrap: wrap; justify-content: center; gap: 1.5rem;
	padding: 1.4rem; margin: 0 auto 2.5rem; max-width: 760px;
	background: #fff; border: 1px solid rgba(217,164,65,.35); border-radius: var(--radius);
}
.woocommerce-order-overview li { font-size: .85rem; text-transform: uppercase; letter-spacing: .06em; color: #5A6274; }
.woocommerce-order-overview li strong { display: block; font-size: 1.05rem; text-transform: none; letter-spacing: 0; color: var(--charcoal); margin-top: .2rem; }

/* Cross-sell / mini cards */
.san-crosssell { margin-top: 2.5rem; }
.san-crosssell__title { font-size: 1.6rem; }
.san-mini-card { display: block; text-decoration: none; background: #fff; border: 1px solid rgba(217,164,65,.25); border-radius: var(--radius); overflow: hidden; padding-bottom: 1rem; }
.san-mini-card img { aspect-ratio: 4/5; object-fit: cover; width: 100%; }
.san-mini-card__name { display: block; padding: .8rem 1rem 0; font-family: var(--font-display); font-weight: 600; font-size: 1.15rem; color: var(--charcoal); }
.san-mini-card__price { display: block; padding: 0 1rem; color: var(--maroon); font-weight: 600; }

/* FAQ */
.san-faq { margin: 1.5rem 0; }
.san-faq__item { border: 1px solid rgba(217,164,65,.3); border-radius: var(--radius); background: #fff; margin-bottom: .7rem; }
.san-faq__item summary {
	list-style: none; cursor: pointer; padding: 1rem 1.2rem; font-weight: 600; position: relative;
}
.san-faq__item summary::after { content: "+"; position: absolute; right: 1.1rem; color: var(--saffron); font-size: 1.3rem; }
.san-faq__item[open] summary::after { content: "–"; }
.san-faq__a { padding: 0 1.2rem 1.1rem; color: #454E63; }

/* Pages / prose */
.san-page, .san-generic { padding: 3rem 0 4.5rem; }
.san-page-head { margin-bottom: 2rem; }
.san-prose__content { max-width: 74ch; }
.san-prose__content h2 { margin-top: 2.2rem; }
.san-prose__meta { color: #77809A; font-size: .9rem; }
.san-prose__hero img { border-radius: var(--radius); margin-bottom: 2rem; }

/* 404 */
.san-404 { min-height: 55vh; display: grid; place-items: center; text-align: center; padding: 4rem 0; }
.san-404__icon { display: inline-block; width: 54px; color: var(--gold); margin-bottom: 1rem; }

/* Reveal animation base state (JS adds motion; must be visible without JS) */
.js [data-reveal] { opacity: 0; transform: translateY(26px); }
.no-js [data-reveal], [data-reveal].is-revealed { opacity: 1; transform: none; }

/* ---------- Responsive ---------- */
@media (max-width: 1024px) {
	.san-grid--cats { grid-template-columns: repeat(3, 1fr); }
	.san-story__steps { grid-template-columns: repeat(2, 1fr); gap: 2.2rem; }
	.san-story__step:not(:last-child)::after { display: none; }
	.san-footer__grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 820px) {
	.san-nav { display: none; }
	.san-header__menu-btn { display: flex; }
	.san-kumbh__grid { grid-template-columns: 1fr; text-align: center; }
	.san-kumbh__copy { display: flex; flex-direction: column; align-items: center; }
	.san-kumbh__bottle { max-height: 380px; }
	.san-offer { justify-content: center; text-align: center; }
	.san-grid--3, .san-grid--why { grid-template-columns: repeat(2, 1fr); }
	.san-shop ul.products { grid-template-columns: repeat(2, 1fr); gap: 1rem; }
	.single-product div.product { grid-template-columns: 1fr; }
	.single-product div.product .woocommerce-product-gallery { position: static; }
}

@media (max-width: 560px) {
	body { font-size: 16.5px; }
	.container { width: calc(100% - 2rem); }
	.san-grid--cats { grid-template-columns: repeat(2, 1fr); gap: .9rem; }
	.san-grid--3, .san-grid--why { grid-template-columns: 1fr; }
	.san-shop ul.products { grid-template-columns: 1fr 1fr; }
	.san-card__title { font-size: 1.15rem; }
	.san-story__steps { grid-template-columns: 1fr; }
	.san-hero__ctas { flex-direction: column; align-items: stretch; }
	.san-hero__ctas .san-btn { width: 100%; }
	.san-footer__grid { grid-template-columns: 1fr; gap: 1.8rem; }
	.san-wa__label { display: none; }
	.san-wa { padding: .85rem; }
	table.shop_table th, table.shop_table td { padding: .7rem .6rem; font-size: .92rem; }
}

/* ---------- Reduced motion ---------- */
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
	.js [data-reveal] { opacity: 1; transform: none; }
	.san-hero__video { display: none; }
}

/* ---------- Product page polish ---------- */
.single-product span.onsale {
	position: absolute; z-index: 5; margin: 1rem;
	background: var(--saffron); color: #fff;
	font-size: .72rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase;
	padding: .45rem .9rem; border-radius: 999px;
}
.single-product span.onsale::after { content: ""; }
.single-product div.product .product_meta { font-size: .85rem; color: #77809A; margin-top: 1.2rem; }
.single-product div.product .product_meta a { color: var(--saffron); }
.single-product .woocommerce-product-details__short-description { font-size: 1.05rem; }
.single-product div.product form.cart .quantity input { -moz-appearance: textfield; }
.single-product .related.products h2 { font-size: 1.6rem; margin-top: 3rem; }
.woocommerce-Reviews #review_form_wrapper { max-width: 640px; }
@media (max-width: 560px) {
	.single-product div.product form.cart { flex-direction: column; }
	.single-product div.product form.cart .quantity input { width: 100%; }
}

/* ---------- Custom brand logo ---------- */
.san-header__brand .custom-logo-link { display: inline-flex; }
.san-header__brand img.custom-logo { max-height: 54px; width: auto; }
body.san-over-hero .san-header__brand img.custom-logo { filter: drop-shadow(0 0 8px rgba(255,249,239,.95)) drop-shadow(0 0 3px rgba(255,249,239,.9)); }
/* SANATAANI-LIGHT-OVERRIDE */
/* ============ SACRED RIVER LUXURY LAYER ============ */
:root{
	--maroon:#0F5558; --maroon-deep:#0A3E41; --saffron:#A65D48; --gold:#D5B06A; --gold-soft:#E6CD9C;
	--ivory:#FBF9F3; --charcoal:#202522; --sand:#F1EDE2; --sand-dark:#DDD5C2; --ink:#2A2F2C;
	--teal:#0F5558; --teal-soft:#397B7A; --terracotta:#A65D48;
	--shadow-soft:0 16px 44px -20px rgba(32,37,34,.22);
	--radius:6px;
}
body{ background:var(--ivory); }
h1,h2,h3,h4{ color:var(--charcoal); font-weight:500; }

/* Announcement bar */
.san-announce{ background:var(--teal); color:#F4EFE2; font-size:.8rem; letter-spacing:.08em; }
.san-announce__inner{ display:flex; align-items:center; justify-content:center; gap:1rem; padding:.45rem 0; }
.san-announce__rule{ display:inline-block; width:46px; height:1px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.san-announce p{ margin:0; }

/* Header (light always) */
.san-header{ background:#fff; border-bottom:1px solid rgba(213,176,106,.35); }
body.san-over-hero .san-header{ background:#fff; border-bottom-color:rgba(213,176,106,.35); }
body.san-over-hero .san-header a, body.san-over-hero .san-header .san-logo__text, body.san-over-hero .san-header__icon{ color:var(--charcoal); }
body.san-over-hero .san-header__menu-btn span{ background:var(--charcoal); }
body.san-over-hero .san-header__brand img.custom-logo{ filter:none; }
.san-nav__list a{ font-size:.82rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; color:var(--charcoal); }
.san-nav__list a::after{ background:var(--gold); }
.san-nav__list .is-current a::after{ width:100%; }
.san-nav__highlight a{ color:var(--teal); }
.san-header__cart-count{ background:var(--terracotta); }

/* Buttons */
.sr-btn{ display:inline-flex; align-items:center; gap:.55rem; padding:.9rem 1.9rem; font-family:var(--font-body); font-weight:600; font-size:.9rem; letter-spacing:.1em; text-transform:uppercase; text-decoration:none; border-radius:var(--radius); border:1px solid transparent; transition:transform .3s var(--ease-lux), box-shadow .3s var(--ease-lux); min-height:48px; cursor:pointer; }
.sr-btn--teal{ background:var(--teal); color:#F4EFE2; box-shadow:0 12px 28px -14px rgba(15,85,88,.55); }
.sr-btn--teal:hover{ transform:translateY(-2px); background:var(--maroon-deep); }

/* Titles */
.sr-eyebrow{ display:inline-block; font-size:.75rem; font-weight:600; letter-spacing:.28em; text-transform:uppercase; color:var(--teal-soft); margin-bottom:.7rem; }
.sr-title{ font-size:clamp(1.6rem,3.6vw,2.2rem); letter-spacing:.14em; text-transform:uppercase; font-weight:500; text-align:center; margin-bottom:2.2rem; }
.sr-title--rule span{ position:relative; padding:0 1.6rem; }
.sr-title--rule span::before,.sr-title--rule span::after{ content:"\2726"; color:var(--gold); font-size:.8em; position:relative; top:-2px; padding:0 .6rem; }

/* ---------- Hero ---------- */
.sr-hero{ position:relative; background-size:cover; background-position:center 60%; overflow:hidden; }
.sr-hero__wash{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(251,249,243,.94) 0%, rgba(251,249,243,.82) 34%, rgba(251,249,243,.18) 68%, rgba(251,249,243,0) 100%); }
.sr-hero__grid{ position:relative; display:grid; grid-template-columns:minmax(0,6fr) minmax(0,5fr); gap:clamp(1.5rem,4vw,4rem); align-items:center; padding:clamp(2.8rem,6vw,5rem) 0; }
.sr-hero__title{ font-size:clamp(2.6rem,6vw,4.2rem); color:var(--teal); margin:0 0 .15em; font-weight:500; }
.sr-hero__sub{ font-family:var(--font-display); font-size:clamp(1.4rem,3vw,2rem); line-height:1.25; color:var(--charcoal); margin:0 0 .9rem; }
.sr-hero__lede{ max-width:44ch; color:#4A524D; margin-bottom:1.6rem; }
.sr-hero__ritual{ font-size:.8rem; color:#7A827C; margin-top:1rem; }
.sr-offer{ display:inline-block; background:#fff; border:1px solid var(--gold); border-radius:var(--radius); padding:1.1rem 1.4rem; margin-bottom:1.5rem; box-shadow:var(--shadow-soft); }
.sr-offer__label{ display:block; font-size:.72rem; font-weight:700; letter-spacing:.22em; text-transform:uppercase; color:var(--teal-soft); margin-bottom:.5rem; }
.sr-offer__rows{ display:flex; flex-wrap:wrap; gap:.35rem .7rem; font-size:.95rem; color:#4A524D; }
.sr-offer__rows strong{ color:var(--charcoal); }
.sr-offer__plus{ color:var(--gold); font-weight:700; }
.sr-offer__total{ font-family:var(--font-display); font-size:1.7rem; color:var(--teal); margin-top:.45rem; }
.sr-offer__total strong{ font-weight:700; }
.sr-offer__note{ display:block; font-size:.8rem; color:#7A827C; margin-top:.2rem; }
.sr-hero__visual{ position:relative; margin:0; }
.sr-hero__visual img{ border-radius:8px; box-shadow:0 30px 70px -30px rgba(32,37,34,.45); }
.sr-hero__badge{ position:absolute; top:-14px; right:-8px; width:118px; height:118px; border-radius:50%; background:rgba(251,249,243,.95); border:1px solid var(--gold); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap:.15rem; box-shadow:var(--shadow-soft); }
.sr-hero__badge em{ font-size:.6rem; letter-spacing:.14em; text-transform:uppercase; color:var(--teal-soft); font-style:normal; }
.sr-hero__badge strong{ font-family:var(--font-display); font-size:1.05rem; line-height:1.1; letter-spacing:.08em; color:var(--charcoal); }
.sr-hero__badge svg{ width:18px; height:18px; color:var(--gold); }

/* ---------- Trust strip ---------- */
.sr-trust{ background:#fff; border-block:1px solid rgba(213,176,106,.3); }
.sr-trust__row{ display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; padding:1.2rem 0; }
.sr-trust__item{ display:flex; align-items:center; gap:.7rem; justify-content:center; }
.sr-trust__item svg{ width:30px; height:30px; color:var(--gold); flex:none; }
.sr-trust__item strong{ display:block; font-size:.85rem; color:var(--charcoal); }
.sr-trust__item span{ font-size:.76rem; color:#7A827C; }

/* ---------- Categories ---------- */
.sr-cats{ padding:clamp(3rem,6vw,4.5rem) 0 clamp(2rem,4vw,3rem); }
.sr-cats__row{ display:flex; gap:1.4rem; justify-content:center; flex-wrap:wrap; }
.sr-cat{ width:128px; text-align:center; text-decoration:none; }
.sr-cat__ring{ display:block; width:118px; height:118px; margin:0 auto .7rem; border-radius:50%; overflow:hidden; border:2px solid rgba(213,176,106,.55); padding:4px; background:#fff; transition:transform .35s var(--ease-lux), border-color .3s; }
.sr-cat:hover .sr-cat__ring{ transform:translateY(-4px); border-color:var(--teal); }
.sr-cat__ring img{ width:100%; height:100%; object-fit:cover; border-radius:50%; }
.sr-cat__ph{ display:grid; place-items:center; width:100%; height:100%; color:var(--gold); }
.sr-cat__ph svg{ width:38px; height:38px; }
.sr-cat strong{ display:block; font-size:.92rem; color:var(--charcoal); }
.sr-cat__sub{ font-size:.74rem; color:#7A827C; }
.sr-cat__ring--all{ display:grid; place-items:center; background:var(--ivory); color:var(--teal); font-size:.8rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; line-height:1.4; text-align:center; }

/* ---------- Collections ---------- */
.sr-collections{ padding:clamp(2rem,4vw,3rem) 0 clamp(3rem,6vw,4.5rem); }
.sr-grid{ display:grid; gap:1.3rem; }
.sr-grid--5{ grid-template-columns:repeat(5,1fr); }
.sr-grid--4{ grid-template-columns:repeat(4,1fr); }
.sr-coll{ display:flex; flex-direction:column; background:#fff; border:1px solid rgba(213,176,106,.3); border-radius:var(--radius); overflow:hidden; text-decoration:none; padding-bottom:1.1rem; transition:transform .35s var(--ease-lux), box-shadow .35s var(--ease-lux); }
.sr-coll:hover{ transform:translateY(-5px); box-shadow:var(--shadow-soft); }
.sr-coll__img{ display:block; aspect-ratio:4/3; overflow:hidden; }
.sr-coll__img img{ width:100%; height:100%; object-fit:cover; transition:transform .8s var(--ease-lux); }
.sr-coll:hover .sr-coll__img img{ transform:scale(1.05); }
.sr-coll strong{ font-family:var(--font-display); font-size:1.2rem; font-weight:600; color:var(--charcoal); padding:.9rem 1rem 0; }
.sr-coll__desc{ font-size:.82rem; color:#7A827C; padding:0 1rem; }
.sr-coll__cta{ font-size:.74rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--teal); padding:.6rem 1rem 0; }

/* ---------- Story ---------- */
.sr-story{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); background:#fff; border-block:1px solid rgba(213,176,106,.3); }
.sr-story__img{ background-size:cover; background-position:center; min-height:420px; }
.sr-story__panel{ padding:clamp(2.4rem,5vw,4.5rem); }
.sr-story__title{ font-size:clamp(1.9rem,4vw,2.8rem); margin-bottom:1rem; }
.sr-story__panel p{ max-width:52ch; color:#4A524D; margin-bottom:1.4rem; }
.sr-story__tiles{ display:grid; grid-template-columns:repeat(2,minmax(0,220px)); gap:.9rem; margin-top:1.8rem; }
.sr-tile{ display:flex; align-items:center; gap:.7rem; background:var(--ivory); border:1px solid rgba(213,176,106,.35); border-radius:var(--radius); padding:.85rem 1rem; }
.sr-tile svg{ width:26px; height:26px; color:var(--teal); flex:none; }
.sr-tile span{ font-size:.82rem; font-weight:600; color:var(--charcoal); line-height:1.3; }

/* ---------- Why strip ---------- */
.sr-why{ background:var(--ivory); }
.sr-why__row{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; padding:1.6rem 0; border-bottom:1px solid rgba(213,176,106,.3); }
.sr-why__item{ display:flex; align-items:center; gap:.7rem; justify-content:center; }
.sr-why__item svg{ width:28px; height:28px; color:var(--terracotta); flex:none; }
.sr-why__item strong{ display:block; font-size:.85rem; color:var(--charcoal); }
.sr-why__item span{ font-size:.76rem; color:#7A827C; }

/* ---------- Knowledge ---------- */
.sr-knowledge{ padding:clamp(3rem,6vw,4.5rem) 0; }
.sr-article{ display:flex; flex-direction:column; background:#fff; border:1px solid rgba(213,176,106,.3); border-radius:var(--radius); overflow:hidden; text-decoration:none; padding-bottom:1rem; transition:transform .35s var(--ease-lux), box-shadow .35s var(--ease-lux); }
.sr-article:hover{ transform:translateY(-5px); box-shadow:var(--shadow-soft); }
.sr-article__img{ display:block; aspect-ratio:16/10; overflow:hidden; background:var(--sand); }
.sr-article__img img{ width:100%; height:100%; object-fit:cover; }
.sr-article strong{ font-family:var(--font-display); font-size:1.12rem; font-weight:600; color:var(--charcoal); padding:.85rem 1rem .3rem; }
.sr-article__cta{ font-size:.72rem; font-weight:700; letter-spacing:.16em; text-transform:uppercase; color:var(--teal); padding:0 1rem; }
.sr-article--all{ align-items:center; justify-content:center; text-align:center; color:var(--teal); font-size:.85rem; font-weight:600; letter-spacing:.1em; text-transform:uppercase; line-height:1.6; min-height:200px; background:var(--ivory); }

/* ---------- Newsletter ---------- */
.sr-news{ background:var(--sand); border-top:1px solid rgba(213,176,106,.3); padding:clamp(2rem,4vw,3rem) 0; }
.sr-news__inner{ display:flex; align-items:center; gap:1.6rem; flex-wrap:wrap; }
.sr-news__icon svg{ width:40px; height:40px; color:var(--gold); }
.sr-news__copy h2{ font-size:1.4rem; margin:0 0 .2rem; }
.sr-news__copy p{ margin:0; font-size:.9rem; color:#5A6360; }
.sr-news__form{ display:flex; gap:.6rem; margin-left:auto; flex-wrap:wrap; position:relative; }
.sr-news__form input[type=email]{ min-width:280px; padding:.85rem 1.1rem; border:1px solid var(--sand-dark); border-radius:var(--radius); background:#fff; font-size:1rem; min-height:48px; }
.sr-news__msg{ flex-basis:100%; margin:.3rem 0 0; font-size:.85rem; color:var(--teal); }

/* ---------- Footer ---------- */
.sr-footer{ background:var(--teal); color:rgba(244,239,226,.85); }
.sr-footer__grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr 1.1fr; gap:2.2rem; padding:3.2rem 0 2.4rem; }
.sr-footer__logo{ font-family:var(--font-display); font-size:1.7rem; font-weight:700; letter-spacing:.18em; color:#F4EFE2; }
.sr-footer__tag{ font-family:var(--font-display); font-style:italic; color:var(--gold-soft); margin:.7rem 0 1rem; }
.sr-footer__social{ display:flex; gap:.8rem; }
.sr-footer__social a{ display:grid; place-items:center; width:38px; height:38px; border:1px solid rgba(244,239,226,.3); border-radius:50%; color:#F4EFE2; transition:border-color .3s, color .3s; }
.sr-footer__social a:hover{ border-color:var(--gold); color:var(--gold-soft); }
.sr-footer__social svg{ width:18px; height:18px; }
.sr-footer h3{ color:#F4EFE2; font-family:var(--font-body); font-size:.85rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; margin-bottom:1rem; }
.sr-footer ul{ list-style:none; margin:0; padding:0; }
.sr-footer li{ margin-bottom:.5rem; }
.sr-footer li a{ color:rgba(244,239,226,.8); text-decoration:none; font-size:.9rem; }
.sr-footer li a:hover{ color:var(--gold-soft); }
.sr-footer__pay{ margin-top:1.2rem; }
.sr-footer__pay-badge{ display:inline-flex; align-items:center; gap:.5rem; background:rgba(244,239,226,.08); border:1px solid rgba(213,176,106,.5); border-radius:var(--radius); padding:.5rem .9rem; font-size:.85rem; font-weight:600; color:#F4EFE2; }
.sr-footer__pay-badge svg{ width:20px; height:20px; color:var(--gold); }
.sr-footer__pay-note{ display:block; font-size:.75rem; color:rgba(244,239,226,.6); margin-top:.4rem; }
.sr-footer__bottom{ border-top:1px solid rgba(244,239,226,.15); padding:1.2rem 0; font-size:.8rem; color:rgba(244,239,226,.6); }
.sr-footer__bottom .container{ display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.sr-footer__bottom a{ color:rgba(244,239,226,.75); text-decoration:none; }
.sr-footer__note{ max-width:56ch; }

/* Woo notices recolor */
.woocommerce-info{ background:#EEF4F1; border-color:var(--teal-soft); color:#134B4E; }

/* ---------- Responsive ---------- */
@media (max-width:1024px){
	.sr-grid--5{ grid-template-columns:repeat(3,1fr); }
	.sr-grid--4{ grid-template-columns:repeat(2,1fr); }
	.sr-trust__row{ grid-template-columns:repeat(3,1fr); row-gap:1.1rem; }
	.sr-why__row{ grid-template-columns:repeat(2,1fr); }
	.sr-footer__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:820px){
	.sr-hero__grid{ grid-template-columns:1fr; }
	.sr-hero__visual{ order:-1; max-width:420px; margin:0 auto; }
	.sr-hero__wash{ background:linear-gradient(180deg, rgba(251,249,243,.62) 0%, rgba(251,249,243,.9) 55%, rgba(251,249,243,.97) 100%); }
	.sr-story{ grid-template-columns:1fr; }
	.sr-story__img{ min-height:260px; }
	.sr-story__tiles{ grid-template-columns:1fr 1fr; }
}
@media (max-width:560px){
	.sr-grid--5,.sr-grid--4{ grid-template-columns:1fr 1fr; }
	.sr-trust__row{ grid-template-columns:1fr 1fr; }
	.sr-why__row{ grid-template-columns:1fr 1fr; }
	.sr-cats__row{ gap:.9rem; }
	.sr-cat{ width:104px; }
	.sr-cat__ring{ width:96px; height:96px; }
	.sr-news__form input[type=email]{ min-width:0; flex:1; }
	.sr-news__form{ width:100%; }
	.sr-footer__grid{ grid-template-columns:1fr; gap:1.6rem; }
	.sr-hero__badge{ width:96px; height:96px; right:0; }
	.sr-offer{ width:100%; }
}

/* ============ SR POLISH · footer contact + smooth motion ============ */
.sr-footer__contact{ list-style:none; margin:1.1rem 0 0; padding:0; display:flex; flex-direction:column; gap:.55rem; }
.sr-footer__contact li{ display:flex; align-items:center; gap:.6rem; color:rgba(244,239,226,.85); font-size:.88rem; }
.sr-footer__contact svg{ width:17px; height:17px; flex:none; color:var(--gold-soft); }
.sr-footer__contact a{ display:inline-flex; align-items:center; gap:.6rem; color:rgba(244,239,226,.85); text-decoration:none; transition:color .3s; }
.sr-footer__contact a:hover{ color:var(--gold-soft); }

/* Footer link slide-in underline */
.sr-footer li a{ position:relative; transition:color .3s, padding-left .3s var(--ease-lux); }
.sr-footer li a::before{ content:''; position:absolute; left:0; bottom:-2px; width:0; height:1px; background:var(--gold); transition:width .35s var(--ease-lux); }
.sr-footer li a:hover::before{ width:100%; }

/* Buttons — arrow nudge + soft press */
.sr-btn span[aria-hidden]{ transition:transform .3s var(--ease-lux); }
.sr-btn:hover span[aria-hidden]{ transform:translateX(4px); }
.sr-btn--teal:hover{ box-shadow:0 12px 26px -12px rgba(15,85,88,.55); }
.sr-btn:active{ transform:translateY(0) scale(.98); }

/* Category circles — ring glow + image zoom */
.sr-cat__ring img{ width:100%; height:100%; object-fit:cover; border-radius:50%; transition:transform .7s var(--ease-lux); }
.sr-cat:hover .sr-cat__ring img{ transform:scale(1.08); }
.sr-cat:hover .sr-cat__ring{ box-shadow:0 14px 30px -14px rgba(15,85,88,.35); }
.sr-cat strong{ transition:color .3s; }
.sr-cat:hover strong{ color:var(--teal); }
.sr-cat__ring--all{ transition:transform .35s var(--ease-lux), border-color .3s, background .3s; }
.sr-cat--all:hover .sr-cat__ring--all{ transform:translateY(-4px); border-color:var(--teal); background:rgba(15,85,88,.05); }

/* Collections & articles — title tint + CTA arrow */
.sr-coll strong, .sr-article strong{ transition:color .3s; }
.sr-coll:hover strong, .sr-article:hover strong{ color:var(--teal); }
.sr-coll__cta, .sr-article__cta{ transition:letter-spacing .3s var(--ease-lux), color .3s; }
.sr-coll:hover .sr-coll__cta, .sr-article:hover .sr-article__cta{ letter-spacing:.14em; color:var(--teal); }
.sr-article__img img{ transition:transform .8s var(--ease-lux); }
.sr-article:hover .sr-article__img img{ transform:scale(1.05); }

/* Story tiles — lift + gold edge */
.sr-tile{ transition:transform .35s var(--ease-lux), border-color .3s, box-shadow .35s var(--ease-lux); }
.sr-tile:hover{ transform:translateY(-4px); border-color:var(--gold); box-shadow:var(--shadow-soft); }

/* Trust / why items — icon breathe */
.sr-trust__item svg, .sr-why__item svg{ transition:transform .35s var(--ease-lux); }
.sr-trust__item:hover svg, .sr-why__item:hover svg{ transform:translateY(-3px) scale(1.08); }

/* Hero — gentle float for bottle & badge */
@keyframes sr-float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-10px); } }
@keyframes sr-badge-sway{ 0%,100%{ transform:rotate(-2deg); } 50%{ transform:rotate(2.5deg); } }
.sr-hero__visual img{ animation:sr-float 6.5s ease-in-out infinite; will-change:transform; }
.sr-hero__badge{ animation:sr-badge-sway 7s ease-in-out infinite; transform-origin:50% 0; }

/* Newsletter — focus & hover polish */
.sr-news__form input[type=email]{ transition:border-color .3s, box-shadow .3s; }
.sr-news__form input[type=email]:focus{ outline:none; border-color:var(--teal); box-shadow:0 0 0 3px rgba(15,85,88,.12); }

/* Header icons — soft lift */
.san-header__icon{ transition:transform .3s var(--ease-lux), color .3s; }
.san-header__icon:hover{ transform:translateY(-2px); color:var(--teal); }

/* Announcement bar shimmer rule */
@keyframes sr-rule-glow{ 0%,100%{ opacity:.55; } 50%{ opacity:1; } }
.san-announce__rule{ animation:sr-rule-glow 4s ease-in-out infinite; }

/* Respect reduced motion */
@media (prefers-reduced-motion: reduce){
	.sr-hero__visual img, .sr-hero__badge, .san-announce__rule{ animation:none; }
	.sr-btn, .sr-cat__ring, .sr-cat__ring img, .sr-coll, .sr-coll__img img, .sr-article, .sr-article__img img, .sr-tile{ transition:none; }
}

/* ============ MOCKUP MATCH v3 ============ */
/* Top utility bar */
.san-announce__inner{ justify-content:space-between; }
.san-announce__links{ display:flex; align-items:center; gap:.7rem; }
.san-announce__links a{ color:#F4EFE2; text-decoration:none; transition:color .3s; }
.san-announce__links a:hover{ color:var(--gold-soft); }
.san-announce__links span{ opacity:.4; }

/* Full-bleed hero */
.sr-hero--full{ min-height:clamp(520px,46vw,680px); display:flex; align-items:center; background-position:center right; }
.sr-hero--full .sr-hero__wash{ background:linear-gradient(90deg, rgba(251,249,243,.96) 0%, rgba(251,249,243,.82) 30%, rgba(251,249,243,.3) 56%, rgba(251,249,243,0) 78%); }
.sr-hero--full .sr-hero__copy{ position:relative; max-width:580px; padding:clamp(2.5rem,5vw,4.2rem) 0; }
.sr-hero--full .sr-hero__badge{ position:absolute; top:46px; right:6%; width:132px; height:132px; background:rgba(251,249,243,.55); backdrop-filter:blur(3px); }

/* Offer card row (mockup style) */
.sr-offer--card{ display:flex; align-items:center; gap:1.05rem; padding:1rem 1.35rem; margin-bottom:.55rem; }
.sr-offer--card .sr-offer__lotus{ display:grid; place-items:center; }
.sr-offer--card .sr-offer__lotus svg{ width:36px; height:36px; color:var(--gold); }
.sr-offer--card .sr-offer__label{ margin-bottom:.3rem; }
.sr-offer__desc{ display:block; font-size:.92rem; color:#4A524D; }
.sr-offer__price{ font-family:var(--font-display); font-size:2.3rem; line-height:1; color:var(--teal); margin-left:auto; padding-left:1.1rem; border-left:1px solid rgba(213,176,106,.5); }
.sr-hero--full .sr-offer__note{ display:block; margin:0 0 1.35rem; }

/* Trust strip — floating white card */
.sr-trust{ background:transparent; border:0; margin-top:-56px; position:relative; z-index:5; }
.sr-trust__card{ background:#fff; border:1px solid rgba(213,176,106,.35); border-radius:10px; box-shadow:0 26px 60px -32px rgba(32,37,34,.3); padding:.35rem 1.2rem; }
.sr-trust .sr-trust__row{ padding:1.05rem 0; }

/* Section title — flanking ornament rules */
.sr-title--rule{ display:flex; align-items:center; justify-content:center; gap:.4rem; }
.sr-title--rule::before, .sr-title--rule::after{ content:''; flex:0 1 clamp(46px,9vw,120px); height:1px; }
.sr-title--rule::before{ background:linear-gradient(90deg,transparent,var(--gold)); }
.sr-title--rule::after{ background:linear-gradient(90deg,var(--gold),transparent); }

/* Footer — 5 columns + payment column */
.sr-footer__grid{ grid-template-columns:1.35fr 1fr 1.05fr 1.05fr 1.15fr; gap:1.9rem; }
.sr-footer__pay{ display:flex; flex-direction:column; gap:.5rem; align-items:flex-start; margin-top:.2rem; }
.sr-footer__pay-soon{ font-size:.76rem; color:rgba(244,239,226,.55); }
.sr-footer__legal{ display:flex; flex-wrap:wrap; gap:.5rem .6rem; justify-content:center; }
.sr-footer__legal span{ opacity:.35; }

/* Responsive for v3 */
@media (max-width:1024px){
	.sr-footer__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width:820px){
	.san-announce__links{ display:none; }
	.san-announce__inner{ justify-content:center; }
	.sr-hero--full{ background-position:72% center; }
	.sr-hero--full .sr-hero__wash{ background:linear-gradient(180deg, rgba(251,249,243,.94) 0%, rgba(251,249,243,.86) 55%, rgba(251,249,243,.72) 100%); }
	.sr-hero--full .sr-hero__badge{ top:14px; right:14px; width:102px; height:102px; }
	.sr-trust{ margin-top:-30px; }
	.sr-offer__price{ font-size:1.85rem; }
}
@media (max-width:560px){
	.sr-footer__grid{ grid-template-columns:1fr; }
	.sr-offer--card{ flex-wrap:wrap; }
}

/* ============ V4 · NAV DROPDOWN, FREE PRICING, ACCENTS ============ */
/* Smooth scrolling (motion-safe) */
@media (prefers-reduced-motion: no-preference){ html{ scroll-behavior:smooth; } }

/* Devanagari accent */
.san-dev{ font-family:Georgia, 'Noto Serif Devanagari', serif; color:var(--terracotta); }
.sr-hero__dev{ font-size:.95rem; margin:-.35rem 0 .9rem; letter-spacing:.02em; }
.san-dev--inline{ font-size:.85em; text-transform:none; letter-spacing:.02em; }

/* Products dropdown (desktop) */
.san-nav__dd{ position:relative; }
.san-nav__dd > a{ display:inline-flex; align-items:center; gap:.35rem; }
.san-caret{ width:11px; height:8px; transition:transform .3s var(--ease-lux); }
.san-nav__dd:hover .san-caret, .san-nav__dd:focus-within .san-caret{ transform:rotate(180deg); }
.san-dropdown{ position:absolute; top:calc(100% + 14px); left:50%; transform:translate(-50%, 8px); min-width:230px; background:#fff; border:1px solid rgba(213,176,106,.4); border-top:2px solid var(--gold); border-radius:0 0 6px 6px; box-shadow:0 26px 50px -22px rgba(32,37,34,.35); list-style:none; margin:0; padding:.55rem 0; opacity:0; visibility:hidden; transition:opacity .3s var(--ease-lux), transform .3s var(--ease-lux), visibility 0s linear .3s; z-index:60; }
.san-nav__dd:hover .san-dropdown, .san-nav__dd:focus-within .san-dropdown{ opacity:1; visibility:visible; transform:translate(-50%, 0); transition-delay:0s; }
.san-dropdown::before{ content:''; position:absolute; top:-16px; left:0; right:0; height:16px; }
.san-dropdown li a{ display:block; padding:.55rem 1.3rem; font-size:.82rem; font-weight:600; letter-spacing:.06em; text-transform:none; color:var(--charcoal); text-decoration:none; transition:background .25s, color .25s, padding-left .25s var(--ease-lux); }
.san-dropdown li a:hover{ background:rgba(15,85,88,.06); color:var(--teal); padding-left:1.55rem; }
.san-dropdown__all{ border-top:1px solid rgba(213,176,106,.35); margin-top:.4rem; padding-top:.4rem; }
.san-dropdown__all a{ color:var(--teal); font-weight:700; }

/* Mobile products submenu */
.san-mobile-dd summary{ display:flex; align-items:center; justify-content:space-between; cursor:pointer; list-style:none; padding:.9rem 0; font-weight:600; color:var(--charcoal); }
.san-mobile-dd summary::-webkit-details-marker{ display:none; }
.san-mobile-dd[open] summary .san-caret{ transform:rotate(180deg); }
.san-mobile-dd ul{ list-style:none; margin:0; padding:0 0 .6rem .9rem; border-left:2px solid rgba(213,176,106,.45); }
.san-mobile-dd ul a{ display:block; padding:.55rem 0; font-size:.92rem; }

/* Hero — FREE offer + CTA row */
.sr-offer--free .sr-offer__main{ display:flex; flex-direction:column; gap:.15rem; }
.sr-offer__price--free{ font-size:2rem; letter-spacing:.04em; color:var(--teal); font-weight:600; }
.sr-offer--free .sr-offer__desc strong{ color:var(--charcoal); font-weight:700; }
.sr-hero__ctas{ display:flex; flex-wrap:wrap; gap:.8rem; align-items:center; }
.sr-btn--ghost{ background:transparent; border:1px solid var(--teal); color:var(--teal); }
.sr-btn--ghost:hover{ background:rgba(15,85,88,.07); transform:translateY(-2px); }

/* Kumbh price presentation (PDP + product cards) */
.san-kumbh-price{ display:flex; flex-direction:column; gap:.15rem; }
.san-kumbh-price__free{ font-family:var(--font-display); font-size:1.9rem; line-height:1.1; color:var(--teal); letter-spacing:.04em; }
.san-kumbh-price__charge, .san-kumbh-price__total{ font-size:.9rem; color:#4A524D; }
.san-kumbh-price__total{ font-weight:700; color:var(--charcoal); }
.san-card .san-kumbh-price__free{ font-size:1.35rem; }
.san-card .san-kumbh-price__charge{ font-size:.78rem; }
.san-card .san-kumbh-price__total{ display:none; }
.san-card__sub{ display:block; font-size:.82rem; color:#7A827C; margin:.15rem 0 .35rem; }
.san-card__sub .san-dev{ font-size:.9em; }
.san-devotion{ font-family:var(--font-display); font-style:italic; color:var(--teal-soft); font-size:1.02rem; margin:.2rem 0 .6rem; }

/* Section subtitle microcopy */
.sr-section-sub{ text-align:center; color:#7A827C; margin:-1.4rem 0 2rem; font-size:.95rem; }

/* Hero parallax (desktop only, motion-safe) */
@media (min-width:1025px) and (prefers-reduced-motion: no-preference){
	.sr-hero--full{ background-attachment:fixed; }
}

@media (max-width:820px){
	.sr-hero__ctas{ width:100%; }
	.sr-hero__ctas .sr-btn{ flex:1 1 auto; justify-content:center; }
	.sr-offer__price--free{ font-size:1.6rem; }
}

/* ============ V5 · REFINEMENT PASS ============ */
/* Refined antique gold accent (#C99A45) */
:root{ --gold:#C99A45; }

/* Offer card — FREE first, charges beside */
.sr-offer--free{ gap:1.2rem; }
.sr-offer--free .sr-offer__price--free{ margin-left:0; padding-left:0; border-left:0; padding-right:1.2rem; border-right:1px solid rgba(201,154,69,.5); order:0; }
.sr-offer--free .sr-offer__main{ order:1; }
.sr-offer__desc--total strong{ color:var(--teal); }

/* Devotional band */
.sr-band{ background:var(--teal); color:#F4EFE2; }
.sr-band__inner{ display:flex; align-items:center; justify-content:center; gap:clamp(1.2rem,4vw,3rem); padding:1.35rem 0; text-align:center; }
.sr-band__diya svg{ width:34px; height:34px; color:var(--gold-soft); }
.sr-band__copy{ display:flex; flex-direction:column; gap:.3rem; }
.sr-band__en{ margin:0; font-family:var(--font-display); font-size:clamp(1.02rem,2vw,1.25rem); letter-spacing:.02em; }
.sr-band__hi{ margin:0; font-size:.88rem; color:var(--gold-soft); letter-spacing:.04em; }

/* Why Kumbh Amrit */
.sr-whyk{ background:var(--sand); padding:clamp(2.6rem,6vw,4.5rem) 0; }
.sr-whyk__grid{ display:grid; grid-template-columns:minmax(0,5fr) minmax(0,6fr); gap:clamp(1.8rem,4vw,4rem); align-items:center; }
.sr-whyk__title{ font-size:clamp(1.7rem,3.4vw,2.3rem); margin:0 0 1.4rem; }
.sr-whyk__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:1.05rem; }
.sr-whyk__list li{ display:flex; align-items:center; gap:.95rem; }
.sr-whyk__list p{ margin:0; color:#3E463F; font-size:1rem; }
.sr-whyk__icon{ flex:none; display:grid; place-items:center; width:46px; height:46px; border-radius:50%; background:#fff; border:1px solid rgba(201,154,69,.5); color:var(--gold); box-shadow:var(--shadow-soft); }
.sr-whyk__icon svg{ width:22px; height:22px; }
.sr-whyk__media{ margin:0; }
.sr-whyk__media video{ display:block; width:100%; border-radius:10px; box-shadow:0 30px 70px -32px rgba(32,37,34,.45); background:#000; }

/* Why strip — 6 values */
.sr-why__row--6{ grid-template-columns:repeat(6,1fr); gap:.8rem; }
.sr-why__row--6 .sr-why__item{ flex-direction:column; text-align:center; gap:.45rem; }
.sr-why__row--6 .sr-why__item svg{ width:26px; height:26px; }
.sr-why__row--6 strong{ font-size:.82rem; }
.sr-why__row--6 span{ font-size:.72rem; }

/* Knowledge — article date */
.sr-article__date{ display:block; font-size:.74rem; letter-spacing:.08em; text-transform:uppercase; color:#98A09A; padding:0.9rem 1.1rem 0; }
.sr-article__date + strong{ padding-top:.25rem; }

/* Responsive v5 */
@media (max-width:1024px){
	.sr-why__row--6{ grid-template-columns:repeat(3,1fr); row-gap:1.2rem; }
}
@media (max-width:820px){
	.sr-whyk__grid{ grid-template-columns:1fr; }
	.sr-band__diya{ display:none; }
}
@media (max-width:560px){
	.sr-why__row--6{ grid-template-columns:1fr 1fr; }
	.sr-offer--free{ flex-wrap:nowrap; }
}

/* v5.1 — band/trust spacing fix */
.sr-band__inner{ padding:1.5rem 0 4.6rem; }
@media (max-width:820px){ .sr-band__inner{ padding:1.3rem 0 3.4rem; } }

/* ============ V6 · BANNER, 9-COLLECTION SLIDER, FINAL POLISH ============ */
/* Hero devotional quote line */
.sr-hero__devline{ font-family:var(--font-display); font-style:italic; color:var(--teal-soft); font-size:.98rem; margin:-.6rem 0 1.3rem; }

/* Trust card back to overlapping hero directly */
.sr-trust{ margin-top:-58px; }
@media (max-width:820px){ .sr-trust{ margin-top:-30px; } }

/* Home banner (sr-home-banner: teal strip with diyas) */
.sr-banner{ background-size:cover; background-position:center; background-color:var(--maroon-deep); margin-top:2.6rem; }
.sr-banner__inner{ display:flex; flex-direction:column; align-items:center; text-align:center; gap:.55rem; padding:clamp(2.4rem,5vw,3.6rem) 0; }
.sr-banner__title{ font-size:clamp(1.45rem,3vw,2.1rem); color:#F7F2E4; margin:0; font-weight:500; letter-spacing:.02em; }
.sr-banner__sub{ margin:0 0 .8rem; color:rgba(247,242,228,.82); font-size:.98rem; letter-spacing:.04em; }
.sr-btn--gold-line{ background:transparent; border:1px solid var(--gold); color:var(--gold-soft); }
.sr-btn--gold-line:hover{ background:rgba(201,154,69,.14); color:#F7F2E4; transform:translateY(-2px); }

/* Collections — horizontal slider, 9 cards */
.sr-coll-wrap{ position:relative; }
.sr-coll-slider{ display:flex; gap:18px; overflow-x:auto; scroll-snap-type:x mandatory; padding:4px 4px 18px; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
.sr-coll-slider::-webkit-scrollbar{ display:none; }
.sr-coll-slider .sr-coll{ flex:0 0 clamp(210px,22vw,252px); scroll-snap-align:start; }
.sr-coll__img--tall{ display:block; aspect-ratio:4/5; overflow:hidden; }
.sr-coll__img--tall img{ width:100%; height:100%; object-fit:cover; object-position:center; }
.sr-coll-nav{ position:absolute; top:42%; transform:translateY(-50%); z-index:4; width:42px; height:42px; border-radius:50%; border:1px solid var(--gold); background:rgba(251,249,243,.94); color:var(--teal); display:grid; place-items:center; cursor:pointer; box-shadow:var(--shadow-soft); transition:background .3s, transform .3s var(--ease-lux); }
.sr-coll-nav svg{ width:18px; height:18px; }
.sr-coll-nav:hover{ background:#fff; transform:translateY(-50%) scale(1.06); }
.sr-coll-nav--prev{ left:-14px; }
.sr-coll-nav--next{ right:-14px; }

/* Brand values — 3 items */
.sr-why__row--3{ grid-template-columns:repeat(3,1fr); gap:1rem; }
.sr-why__row--3 .sr-why__item{ justify-content:center; }

@media (max-width:820px){
	.sr-coll-nav{ display:none; }
	.sr-coll-slider .sr-coll{ flex-basis:74vw; max-width:300px; }
	.sr-why__row--3{ grid-template-columns:1fr; row-gap:1rem; }
	.sr-banner__inner{ padding:2.2rem 0; }
}

/* ============ V7 · VIDEO HERO + STICKY NAV ============ */
/* Sticky navbar with scroll state */
.san-header{ position:sticky; top:0; z-index:90; background:rgba(251,249,243,.9); backdrop-filter:blur(6px); transition:background .35s, box-shadow .35s, border-color .35s; }
.san-header.is-scrolled{ background:var(--ivory); box-shadow:0 10px 30px -18px rgba(32,37,34,.25); border-bottom-color:rgba(201,154,69,.4); }

/* Video hero */
.sr-hero--video{ position:relative; min-height:clamp(650px,78vh,740px); display:flex; align-items:center; overflow:hidden; background:var(--ivory); }
.sr-hero__video{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center 40%; }
.sr-hero__wash--video{ position:absolute; inset:0; background:linear-gradient(90deg, rgba(251,249,243,.88) 0%, rgba(251,249,243,.62) 26%, rgba(251,249,243,.18) 48%, rgba(251,249,243,0) 64%); pointer-events:none; }
.sr-hero__vcontent{ position:relative; z-index:2; width:100%; }
.sr-hero__copy--video{ max-width:520px; padding:clamp(2rem,4vw,3rem) 0; }

/* Eyebrow with ornament rules */
.sr-eyebrow--orn{ display:inline-flex; align-items:center; gap:.7rem; color:var(--gold); }
.sr-orn{ display:inline-block; width:34px; height:1px; background:linear-gradient(90deg,transparent,var(--gold)); }
.sr-orn--r{ background:linear-gradient(90deg,var(--gold),transparent); }

/* Divider: line — lotus — line */
.sr-hero__divider{ display:flex; align-items:center; gap:.8rem; margin:.4rem 0 1rem; }
.sr-hero__divider span{ display:inline-block; width:64px; height:1px; background:linear-gradient(90deg,transparent,var(--gold)); }
.sr-hero__divider span:last-child{ background:linear-gradient(90deg,var(--gold),transparent); }
.sr-hero__divider svg{ width:20px; height:20px; color:var(--gold); flex:none; }

.sr-hero--video .sr-hero__lede{ margin-bottom:1.4rem; }
.sr-hero--video .sr-hero__ritual{ margin-top:.9rem; }

/* FREE seal badge — teal + antique gold, devotional, not a sale sticker */
.sr-free-badge{ position:absolute; z-index:3; top:20%; right:13%; width:126px; height:126px; border-radius:50%; background:var(--teal); box-shadow:0 22px 50px -20px rgba(15,85,88,.55), 0 0 0 5px rgba(251,249,243,.5); display:grid; place-items:center; }
.sr-free-badge__ring{ width:108px; height:108px; border-radius:50%; border:1px solid var(--gold); display:flex; flex-direction:column; align-items:center; justify-content:center; gap:.1rem; }
.sr-free-badge__ring strong{ font-family:var(--font-display); font-size:1.6rem; letter-spacing:.08em; color:#FBF9F3; font-weight:600; }
.sr-free-badge__ring em{ font-style:normal; font-size:.6rem; color:var(--gold-soft); line-height:1; }

/* Future bottle foreground container — asset arrives later */
.hero-product{ display:none; position:absolute; z-index:4; bottom:0; right:22%; height:82%; pointer-events:none; }

/* Load-in stagger (motion-safe) */
.sr-fade{ opacity:0; }
@media (prefers-reduced-motion: no-preference){
	@keyframes sr-fadeup{ from{ opacity:0; transform:translateY(18px); } to{ opacity:1; transform:none; } }
	.sr-fade{ animation:sr-fadeup .8s var(--ease-lux) forwards; }
	.sr-fade--1{ animation-delay:.1s; } .sr-fade--2{ animation-delay:.24s; } .sr-fade--3{ animation-delay:.38s; }
	.sr-fade--4{ animation-delay:.52s; } .sr-fade--5{ animation-delay:.66s; } .sr-fade--6{ animation-delay:.8s; }
	.sr-free-badge.sr-fade{ animation-name:sr-badgein; }
	@keyframes sr-badgein{ from{ opacity:0; transform:scale(.85); } to{ opacity:1; transform:scale(1); } }
}
@media (prefers-reduced-motion: reduce){
	.sr-fade{ opacity:1; }
	.sr-hero__video{ display:none; }
	.sr-hero--video{ background-image:url('/wp-content/uploads/2026/08/godavari-hero-poster.jpg'); background-size:cover; background-position:center 40%; }
}

/* Responsive video hero */
@media (max-width:1024px){
	.sr-free-badge{ right:7%; }
}
@media (max-width:820px){
	.sr-hero--video{ min-height:660px; align-items:flex-start; }
	.sr-hero__copy--video{ padding-top:2.4rem; max-width:100%; }
	.sr-hero__wash--video{ background:linear-gradient(180deg, rgba(251,249,243,.92) 0%, rgba(251,249,243,.78) 42%, rgba(251,249,243,.3) 72%, rgba(251,249,243,.1) 100%); }
	.sr-free-badge{ top:auto; bottom:14%; right:8%; width:104px; height:104px; }
	.sr-free-badge__ring{ width:88px; height:88px; }
	.sr-free-badge__ring strong{ font-size:1.3rem; }
	.hero-product{ right:6%; height:46%; }
}

/* v7.1 — container fix for video hero (width:100% broke centering) */
.sr-hero__vcontent{ width:auto; }
.sr-hero__copy--video{ padding-left:clamp(0px,2vw,2rem); }

/* v7.2 — video hero container: explicit width (flex item was shrink-to-fit) */
.sr-hero__vcontent{ width:min(var(--container), calc(100% - 2.5rem)); margin-inline:auto; }

/* ============ V8 · SITE COMPLETION (category pages, accordions, misc) ============ */
/* Category banner */
.san-cat-banner{ display:flex; align-items:center; gap:1.4rem; background:#fff; border:1px solid rgba(201,154,69,.35); border-radius:10px; padding:1rem 1.4rem; margin:0 0 1.8rem; box-shadow:var(--shadow-soft); }
.san-cat-banner__img{ flex:none; width:86px; height:86px; border-radius:50%; overflow:hidden; border:2px solid rgba(201,154,69,.5); }
.san-cat-banner__img img{ width:100%; height:100%; object-fit:cover; }
.san-cat-banner__copy p{ margin:0; color:#4A524D; }

/* Coming-soon empty state */
.san-coming-soon{ text-align:center; padding:3.2rem 1rem 3.6rem; }
.san-coming-soon svg{ width:44px; height:44px; color:var(--gold); margin-bottom:.8rem; }
.san-coming-soon h2{ font-size:1.5rem; margin:.2rem 0 .5rem; color:var(--charcoal); }
.san-coming-soon p{ color:#7A827C; margin:0 0 1.4rem; }

/* Accordions (FAQ, Pandit Seva, PDP FAQ) */
.entry-content details, .woocommerce-Tabs-panel details, .san-page details{ background:#fff; border:1px solid rgba(201,154,69,.35); border-radius:8px; margin:0 0 .7rem; padding:0; overflow:hidden; }
details > summary{ cursor:pointer; list-style:none; padding:.95rem 1.2rem; font-weight:600; color:var(--charcoal); position:relative; transition:color .25s; }
details > summary::-webkit-details-marker{ display:none; }
details > summary::after{ content:'+'; position:absolute; right:1.1rem; top:50%; transform:translateY(-50%); color:var(--gold); font-size:1.2rem; transition:transform .3s var(--ease-lux); }
details[open] > summary{ color:var(--teal); }
details[open] > summary::after{ transform:translateY(-50%) rotate(45deg); }
details > p, details > div{ padding:0 1.2rem 1rem; margin:0; color:#4A524D; }

/* Thank-you help block */
.san-thanks-help{ margin-top:1.8rem; padding:1.4rem; background:var(--sand); border-radius:10px; text-align:center; }
.san-thanks-help p{ margin:0 0 .9rem; color:#4A524D; }
.san-thanks-help__ctas{ display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; }

/* 404 */
.san-404{ text-align:center; padding:4.5rem 0; }
.san-404__icon svg{ width:46px; height:46px; color:var(--gold); }
.san-404 .san-hero__ctas{ display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; margin-top:1.2rem; }

/* ============ V9 · FINAL POLISH — trust panel, icon system, motion perf ============ */
/* Trust strip: premium floating panel spec */
.sr-trust__card{ padding:18px 24px; border-radius:12px; border:1px solid rgba(201,154,69,.25); background:rgba(255,255,255,.88); backdrop-filter:blur(4px); box-shadow:0 20px 44px -28px rgba(32,37,34,.3); }
.sr-trust .sr-trust__row{ padding:0; gap:16px; align-items:stretch; }
.sr-trust__item{ display:flex; align-items:center; justify-content:flex-start; gap:16px; }
.sr-trust__item svg{ width:32px; height:32px; color:var(--gold); flex-shrink:0; }
.sr-trust__item > div{ flex:1; min-width:0; }
.sr-trust__item strong{ font-size:.86rem; line-height:1.3; }
.sr-trust__item span{ font-size:.76rem; line-height:1.35; }

/* Icon sizing consistency across strips/tiles */
.sr-why__item svg{ width:30px; height:30px; }
.sr-whyk__icon svg{ width:24px; height:24px; }
.sr-tile svg{ width:26px; height:26px; }

/* Above-the-fold: trust strip must never wait for scroll animation */
.js .sr-trust [data-reveal]{ opacity:1; transform:none; }
/* Safety net: any [data-reveal] becomes visible even if JS/GSAP is delayed */
@media (prefers-reduced-motion: no-preference){
	@keyframes sr-reveal-safety{ to{ opacity:1; transform:none; } }
	.js:not(.gsap-on) [data-reveal]{ animation:sr-reveal-safety .55s var(--ease-lux) 1.6s forwards; }
}

/* Hero entrance: tighter, starts immediately */
.sr-fade{ animation-duration:.6s; }
.sr-fade--1{ animation-delay:.03s; } .sr-fade--2{ animation-delay:.12s; } .sr-fade--3{ animation-delay:.21s; }
.sr-fade--4{ animation-delay:.3s; } .sr-fade--5{ animation-delay:.39s; } .sr-fade--6{ animation-delay:.48s; }

/* Mobile trust: clean 2-col, left aligned */
@media (max-width:820px){
	.sr-trust .sr-trust__row{ grid-template-columns:1fr 1fr; gap:14px 12px; }
	.sr-trust__card{ padding:16px 16px; }
	.sr-trust__item svg{ width:28px; height:28px; }
	.sr-trust__item{ gap:12px; }
}
@media (max-width:560px){
	.sr-trust .sr-trust__row{ grid-template-columns:1fr 1fr; }
}

/* ============ V10 · SANATAANI SVG SYSTEM PLACEMENT ============ */
/* Trust strip per spec: grid gap 24, hover breathe */
.sr-trust .sr-trust__row{ gap:24px; }
.sr-trust__item > div{ display:flex; flex-direction:column; gap:4px; }
.sr-trust__item svg{ transition:opacity .25s, transform .3s var(--ease-lux); }

/* Why Kumbh — seal icons (circle lives inside the SVG now) */
.sr-whyk__icon--seal{ width:44px; height:44px; background:none; border:0; box-shadow:none; padding:0; }
.sr-whyk__icon--seal svg{ width:44px; height:44px; color:var(--gold); }

/* Mandala family */
.sr-mandala{ position:absolute; color:var(--gold); pointer-events:none; }
.sr-mandala svg{ width:100%; height:100%; display:block; }
.sr-article--all{ position:relative; overflow:hidden; }
.sr-mandala--card{ width:150px; height:150px; right:-20px; bottom:-20px; opacity:.22; }
.sr-footer{ position:relative; overflow:hidden; }
.sr-mandala--footer{ width:220px; height:220px; right:-45px; bottom:-45px; opacity:.24; }
.sr-footer__bottom, .sr-footer__grid{ position:relative; z-index:1; }

/* Newsletter lotus decoration (wide line-art) */
.sr-news__icon--deco svg{ width:76px; height:38px; color:var(--gold); }

/* Motion-safe fade-in for decorations */
@media (prefers-reduced-motion: no-preference){
	.sr-mandala{ opacity:0; animation:sr-deco-in 1.2s var(--ease-lux) .3s forwards; }
	@keyframes sr-deco-in{ to{ opacity:var(--deco-o,.22); } }
	.sr-mandala--card{ --deco-o:.22; } .sr-mandala--footer{ --deco-o:.24; }
}
@media (max-width:820px){
	.sr-mandala--footer{ width:130px; height:130px; right:-30px; bottom:-30px; }
	.sr-trust .sr-trust__row{ gap:14px 12px; }
}

/* v10.1 — footer banner background (owner-uploaded bg-footer-banner) */
.sr-footer{ background:#0F4448 url('/wp-content/uploads/2026/08/bg-footer-banner.png') no-repeat right center / cover; }
.sr-mandala--footer{ display:none; } /* baked-in mandala in the artwork replaces the SVG one */
@media (max-width:820px){
	.sr-footer{ background-position:right bottom; }
}

/* v10.2 — footer mandala: corner placement, readable text */
.sr-footer{ background-color:#0d3f43; background-size:1150px auto; background-position:right -230px bottom -300px; }
@media (max-width:820px){
	.sr-footer{ background-size:760px auto; background-position:right -180px bottom -220px; }
}
.sr-footer{ background-color:#013B43; } /* exact flat color of the artwork for a seamless blend */

/* ============ V11 · OWNER SVG ASSET PACK ============ */
/* Trust icons — owner artwork, normalized sizing */
.sr-ticon{ height:34px; width:auto; max-width:46px; flex-shrink:0; object-fit:contain; transition:opacity .25s, transform .3s var(--ease-lux); }
.sr-trust__item:hover .sr-ticon{ transform:translateY(-2px); }
/* Why Kumbh — artwork seals */
.sr-whyk__icon--img{ width:46px; height:46px; background:none; border:0; box-shadow:none; padding:0; display:grid; place-items:center; }
.sr-whyk__icon--img img{ width:44px; height:auto; max-height:50px; object-fit:contain; }
/* Lotus decorations */
.sr-news__icon--deco img{ width:84px; height:auto; }
.sr-story__lotus{ display:block; margin-bottom:.5rem; }
.sr-story__lotus img{ width:64px; height:auto; opacity:.9; }
/* Knowledge mandala artwork */
.sr-mandala--card img{ width:150px; height:auto; display:block; }
/* Section divider artwork replaces CSS title ornaments */
.sr-title--rule::before, .sr-title--rule::after{ display:none; }
.sr-title--rule span::before, .sr-title--rule span::after{ content:none; }
.sr-title{ margin-bottom:.6rem; }
.sr-divider-img{ display:flex; justify-content:center; margin:0 0 2rem; }
.sr-divider-img img{ height:22px; width:auto; opacity:.95; }
/* Arrow SVG in CTAs */
.sr-arrow{ display:inline-flex; align-items:center; }
.sr-arrow svg{ width:24px; height:8px; display:block; }
.sr-btn .sr-arrow svg{ width:22px; }
a:hover .sr-arrow, .sr-btn:hover .sr-arrow{ transform:translateX(3px); transition:transform .25s cubic-bezier(.22,1,.36,1); }
.sr-arrow{ transition:transform .25s cubic-bezier(.22,1,.36,1); }
@media (max-width:820px){
	.sr-ticon{ height:30px; }
	.sr-divider-img img{ height:18px; }
}

/* ============ V12 · SVG COVERAGE + VISIBILITY PASS ============ */
/* Why Kumbh seals — highlighted on white discs so artwork is clearly visible */
.sr-whyk__icon--img, .sr-whyk__icon--seal{ width:58px; height:58px; background:#fff; border:1px solid rgba(201,154,69,.45); border-radius:50%; box-shadow:0 10px 24px -12px rgba(32,37,34,.25); display:grid; place-items:center; padding:0; }
.sr-whyk__icon--img img{ width:44px; height:auto; max-height:48px; }
.sr-whyk__icon--seal svg{ width:44px; height:44px; color:var(--gold); }
.sr-whyk__list li{ gap:1.05rem; }

/* Purpose tiles + values strip artwork icons */
.sr-tile__img{ height:30px; width:auto; object-fit:contain; flex-shrink:0; }
.sr-why__img{ height:34px; width:auto; max-width:44px; object-fit:contain; }

/* Footer — flat brand teal + clearly visible owner mandala (overlap allowed) */
.sr-footer{ background:#013B43; background-image:none; }
.sr-mandala--footer{ display:block; width:360px; height:auto; right:-48px; bottom:-70px; opacity:.5; }
.sr-mandala--footer img{ width:100%; height:auto; display:block; }
@media (prefers-reduced-motion: no-preference){ .sr-mandala--footer{ --deco-o:.5; } }
@media (max-width:820px){
	.sr-mandala--footer{ width:210px; right:-30px; bottom:-40px; opacity:.42; }
	.sr-whyk__icon--img, .sr-whyk__icon--seal{ width:52px; height:52px; }
}

/* ============================================================
   SANATAANI V13 — representation notices · transparent navbar ·
   uploaded logo integration (colorful navbar / white footer)
   ============================================================ */

/* --- Representation notice component (subtle, never warning-styled) --- */
.san-rep-note{ font-size:12px; line-height:1.55; color:#6F6F6F; margin:.55rem 0 0; letter-spacing:.01em; font-style:normal; font-weight:400; }
.san-rep-note--center{ text-align:center; margin:1.15rem auto 0; max-width:62ch; }
.san-rep-note--hero{ font-size:11px; color:#7d7d78; margin-top:.25rem; }
.san-rep-note--pdp{ margin:.7rem 0 0; }
.san-shop .san-rep-note--pdp{ clear:both; }
.san-rep-note--card{ font-size:11px; line-height:1.45; margin:.3rem 0 0; }
ul.products li.product .san-rep-note--card{ padding:0 .1rem; }
figure .san-rep-note, figcaption .san-rep-note{ text-align:center; margin:.5rem auto 0; }
@media (max-width:820px){
	.san-rep-note{ font-size:11px; }
	.san-rep-note--card, .san-rep-note--hero{ font-size:10px; }
}

/* --- Navbar logo (colorful) & footer logo (white) --- */
.san-logo{ display:flex; align-items:center; }
.san-logo__img{ display:block; height:58px; width:auto; }
.san-header.is-scrolled .san-logo__img{ height:50px; }
.san-logo__img{ transition:height .3s var(--ease-lux, ease); }
.sr-footer__logoimg{ display:block; width:180px; height:auto; margin:0 0 1rem; }
@media (max-width:820px){
	.san-logo__img{ height:46px; }
	.san-header.is-scrolled .san-logo__img{ height:42px; }
	.sr-footer__logoimg{ width:150px; }
}

/* --- Transparent navbar at top; solid ivory returns on scroll --- */
.san-header:not(.is-scrolled){ background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; border-bottom-color:transparent; box-shadow:none; }
.san-header{ transition:background .35s, box-shadow .35s, border-color .35s; }

/* On the homepage, pull the video hero up beneath the transparent navbar
   so the river shows through it; content keeps its position via padding. */
.home .sr-hero--video{ margin-top:calc(-1 * var(--san-header-h, 88px)); padding-top:var(--san-header-h, 88px); }
.home .sr-hero--video::before{ content:""; position:absolute; inset:0 0 auto 0; height:150px; background:linear-gradient(180deg, rgba(251,249,243,.78) 0%, rgba(251,249,243,.34) 55%, rgba(251,249,243,0) 100%); z-index:1; pointer-events:none; }
.sr-hero__vcontent{ z-index:2; }
.sr-free-badge{ z-index:2; }

@media (max-width:820px){
	.home .sr-hero--video{ margin-top:calc(-1 * var(--san-header-h, 64px)); padding-top:var(--san-header-h, 64px); }
	.home .sr-hero--video::before{ height:110px; }
}

/* PDP: tabs/description span full width below both columns (fixes overlap
   of description/FAQ text under the sticky gallery). */
.single-product div.product .woocommerce-tabs{ grid-column:1 / -1; }
.single-product div.product .san-crosssell, .single-product div.product .related{ grid-column:1 / -1; }
/* Sticky gallery escapes its grid row in Chrome and overlaps the
   full-width description/FAQ below — static is correct here. */
.single-product div.product .woocommerce-product-gallery{ position:static; }

/* ============================================================
   SANATAANI V14 — owner refinements: bigger navbar logo ·
   nav simplified · article/arrow SVG visibility · footer polish
   ============================================================ */

/* Navbar logo — larger, clearly visible (v14.1 bigger per owner) */
.san-logo__img{ height:96px; }
.san-header.is-scrolled .san-logo__img{ height:78px; }
.san-header__inner{ align-items:center; }
.san-header__inner{ padding-top:.35rem; padding-bottom:.35rem; }
@media (max-width:820px){
	.san-logo__img{ height:68px; }
	.san-header.is-scrolled .san-logo__img{ height:58px; }
}

/* Arrows — larger so they read clearly */
.sr-arrow svg{ width:30px; height:10px; }
.sr-btn .sr-arrow svg{ width:26px; }
.sr-article__cta{ display:inline-flex; align-items:center; gap:.45rem; }
.sr-article__cta .sr-arrow svg{ width:28px; height:10px; }
.sr-article--all .sr-arrow{ margin-top:.4rem; }
.sr-article--all .sr-arrow svg{ width:34px; height:11px; }

/* Knowledge view-all mandala — fully visible, no awkward crop */
.sr-mandala--card{ width:132px; height:132px; right:8px; bottom:8px; opacity:.5; }
.sr-mandala--card img{ width:132px; }
@media (prefers-reduced-motion: no-preference){ .sr-mandala--card{ --deco-o:.5; } }

/* Footer — tidy alignment */
.sr-footer__grid{ align-items:start; }
.sr-footer__col h3{ margin-top:0; }
.sr-footer__bottom .container{ display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; row-gap:.55rem; }
.sr-footer__bottom p{ margin:0; }
.sr-footer__note{ flex:1 1 100%; max-width:none; text-align:center; font-size:.72rem; letter-spacing:.02em; color:rgba(244,239,226,.5); margin-top:.35rem; }
@media (min-width:821px){ .sr-footer__note{ white-space:nowrap; } }
@media (max-width:820px){
	.sr-footer__bottom .container{ flex-direction:column; text-align:center; }
}

/* ============================================================
   SANATAANI V15 — motion design layer: hero bottle · living
   micro-interactions · scroll-reveal choreography
   ============================================================ */

/* --- Hero bottle: cinematic entrance, then a slow devotional float --- */
.hero-product{ display:flex; align-items:flex-end; justify-content:center; right:23%; bottom:7%; height:74%; }
.hero-product__img{ height:100%; width:auto; display:block; opacity:0; transform:translateY(48px) scale(.94); filter:drop-shadow(0 38px 42px rgba(32,37,34,.42)); }
.hero-product::before{ /* warm halo behind the bottle */
	content:""; position:absolute; left:50%; bottom:10%; width:min(30vw,380px); aspect-ratio:1; transform:translateX(-50%);
	background:radial-gradient(circle, rgba(230,205,156,.5) 0%, rgba(230,205,156,.18) 42%, rgba(230,205,156,0) 70%);
	filter:blur(4px); opacity:0; z-index:-1; }
.hero-product::after{ /* soft ground shadow */
	content:""; position:absolute; left:50%; bottom:-16px; width:210px; height:30px; transform:translateX(-50%);
	background:radial-gradient(ellipse at center, rgba(32,37,34,.34) 0%, rgba(32,37,34,0) 68%); opacity:0; }
@keyframes sr-bottle-in{ to{ opacity:1; transform:translateY(0) scale(1); } }
@keyframes sr-soft-in{ to{ opacity:1; } }
@keyframes sr-bottle-float{ 0%,100%{ transform:translateY(0) rotate(0deg); } 50%{ transform:translateY(-11px) rotate(.45deg); } }
@keyframes sr-halo-breathe{ 0%,100%{ opacity:.85; } 50%{ opacity:.55; } }
.js .hero-product__img{ animation:sr-bottle-in 1.35s var(--ease-lux) .55s forwards; }
.js .hero-product::before{ animation:sr-soft-in 1.6s ease .85s forwards, sr-halo-breathe 7s ease-in-out 2.6s infinite; }
.js .hero-product::after{ animation:sr-soft-in 1.4s ease .95s forwards; }
.no-js .hero-product__img, .no-js .hero-product::before, .no-js .hero-product::after{ opacity:1; transform:none; }
@media (prefers-reduced-motion: no-preference){
	.hero-product{ animation:sr-bottle-float 7.5s ease-in-out 2.4s infinite; will-change:transform; }
}
@media (max-width:1180px){ .hero-product{ right:17%; height:64%; } }
@media (max-width:820px){ .hero-product{ display:none; } }

/* --- FREE seal: gentle breathing so the hero feels alive --- */
@keyframes sr-seal-breathe{ 0%,100%{ transform:scale(1); } 50%{ transform:scale(1.035); } }
@media (prefers-reduced-motion: no-preference){
	.sr-free-badge__ring{ animation:sr-seal-breathe 5.5s ease-in-out 2.8s infinite; }
}

/* --- Buttons: gold light-sweep on hover --- */
.sr-btn{ position:relative; overflow:hidden; }
.sr-btn::before{ content:""; position:absolute; top:0; bottom:0; left:-70%; width:46%;
	background:linear-gradient(105deg, rgba(255,255,255,0) 0%, rgba(255,255,255,.22) 50%, rgba(255,255,255,0) 100%);
	transform:skewX(-18deg); transition:left .01s; pointer-events:none; }
.sr-btn:hover::before{ left:130%; transition:left .7s var(--ease-lux); }
.sr-btn > *{ position:relative; }

/* --- Interactive polish --- */
.san-header__icon, .san-nav__list a, .san-announce__links a{ transition:color .3s var(--ease-lux), transform .3s var(--ease-lux); }
.san-announce__links a:hover{ color:#fff; }
.sr-cat:hover strong{ color:var(--teal); }
.sr-cat strong{ transition:color .3s; }
.sr-footer a{ transition:color .28s, padding-left .28s var(--ease-lux); }
.sr-footer__col ul a:hover{ padding-left:.35rem; color:#fff; }
.sr-footer__social a{ transition:transform .3s var(--ease-lux), background .3s; }
.sr-footer__social a:hover{ transform:translateY(-3px); }
.sr-news__form input{ transition:border-color .3s, box-shadow .3s; }
.sr-news__form input:focus{ border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,154,69,.18); }

/* --- Card lift refinement (slightly deeper, softer) --- */
.sr-coll:hover, .sr-article:hover{ box-shadow:0 30px 60px -26px rgba(32,37,34,.32); }
ul.products li.product{ transition:transform .35s var(--ease-lux); }
ul.products li.product:hover{ transform:translateY(-4px); }

/* --- Smooth scrolling everywhere (respect reduced motion) --- */
html{ scroll-behavior:smooth; }
@media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }

/* ============================================================
   SANATAANI V16 — reference-blueprint redesign:
   Kumbh Amrit PDP · Mantra Sangrah listing · detail pages
   ============================================================ */

/* ---------- Shared: breadcrumb ---------- */
.san-crumb{ display:flex; align-items:center; gap:.55rem; font-size:.78rem; letter-spacing:.04em; color:#8A8A80; padding:1rem 0 .2rem; }
.san-crumb a{ color:#8A8A80; text-decoration:none; transition:color .25s; }
.san-crumb a:hover{ color:var(--teal); }
.san-crumb em{ font-style:normal; color:var(--charcoal); }
.san-crumb span{ opacity:.5; }

/* ---------- Kumbh PDP ---------- */
.san-kumbh-pdp .san-shop{ padding-top:.4rem; }
.san-free-pill{ display:inline-block; font-size:.68rem; font-weight:700; letter-spacing:.18em; color:var(--teal); border:1px solid rgba(201,154,69,.55); background:rgba(201,154,69,.08); border-radius:999px; padding:.34rem .9rem; margin-bottom:.85rem; }
.san-pdp-sub{ font-family:var(--font-display); font-size:1.25rem; color:var(--charcoal); margin:.1rem 0 .35rem; }
.san-pdp-tagline{ display:inline-block; font-size:.92rem; letter-spacing:.06em; color:#5A625C; border-bottom:1px solid var(--gold); padding-bottom:.3rem; margin:0 0 1rem; }
.san-kumbh-pdp div.product .summary .price{ display:none; }

/* pricing card */
.san-price-card{ border:1px solid rgba(201,154,69,.35); background:#fff; border-radius:10px; padding:1.15rem 1.3rem; margin:1.1rem 0 1.3rem; max-width:430px; box-shadow:0 18px 40px -30px rgba(32,37,34,.25); }
.san-price-card__row{ display:flex; justify-content:space-between; align-items:baseline; gap:1rem; padding:.3rem 0; font-size:.92rem; color:#4A524D; }
.san-price-card__free{ font-family:var(--font-display); font-size:2rem; line-height:1; color:var(--teal); letter-spacing:.04em; }
.san-price-card__note{ margin:0 0 .5rem; font-size:.74rem; color:#7A9A7C; color:#6F8F74; }
.san-price-card__row--total{ border-top:1px dashed rgba(201,154,69,.5); margin-top:.5rem; padding-top:.75rem; }
.san-price-card__row--total span{ font-weight:600; color:var(--charcoal); }
.san-price-card__row--total strong{ font-family:var(--font-display); font-size:1.35rem; color:var(--terracotta); }

/* full-width rows inside the product grid */
.single-product div.product .san-pdp-wide{ grid-column:1 / -1; }
.single-product div.product .san-pdp-trust{ display:grid; grid-template-columns:repeat(5,1fr); gap:1rem; background:#fff; border:1px solid rgba(201,154,69,.28); border-radius:10px; padding:1rem 1.4rem; margin-top:.8rem; }
.san-pdp-trust__item{ display:flex; align-items:center; gap:.65rem; justify-content:center; }
.san-pdp-trust__item strong{ display:block; font-size:.8rem; color:var(--charcoal); }
.san-pdp-trust__item span{ font-size:.72rem; color:#7A827C; }
.single-product div.product .san-pdp-benefits{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; background:var(--ivory); border:1px solid rgba(201,154,69,.25); border-radius:10px; padding:1.2rem 1.4rem; }
.san-pdp-benefit{ display:flex; align-items:center; gap:.7rem; justify-content:center; font-size:.85rem; color:var(--charcoal); }
.san-pdp-benefit__ic{ flex:none; width:44px; height:44px; border-radius:50%; background:#fff; border:1px solid rgba(201,154,69,.45); display:grid; place-items:center; color:var(--gold); }
.san-pdp-benefit__ic svg{ width:22px; height:22px; }
.san-pdp-highlights{ text-align:center; padding:.6rem 0 0; }
.san-pdp-highlights h2{ font-size:1.35rem; margin-bottom:.8rem; }
.san-pdp-highlights ul{ list-style:none; margin:0 auto; padding:0; max-width:560px; text-align:left; }
.san-pdp-highlights li{ position:relative; padding:.3rem 0 .3rem 1.7rem; color:#4A524D; font-size:.95rem; }
.san-pdp-highlights li::before{ content:"\2726"; position:absolute; left:.3rem; color:var(--gold); }

/* purchase area */
.single-product div.product .san-buy{ text-align:center; padding:.5rem 0 1rem; }
.single-product div.product .san-buy form.cart{ justify-content:center; align-items:stretch; }
.san-buy__cod{ display:flex; align-items:center; justify-content:center; gap:.45rem; font-size:.85rem; color:var(--teal); margin:.2rem 0 .9rem; }
.san-buy__cod svg{ width:20px; height:20px; }
.san-buy__note{ display:inline-block; background:#fff; border:1px solid rgba(201,154,69,.3); border-radius:8px; padding:.7rem 1.2rem; }
.san-buy__note p{ margin:0; font-size:.85rem; color:var(--charcoal); }
.san-buy__note .san-rep-note{ margin-top:.3rem; }

/* gallery */
.san-gal__main{ border-radius:12px; overflow:hidden; border:1px solid rgba(201,154,69,.25); background:var(--sand); }
.san-gal__mainimg{ display:block; width:100%; height:auto; }
.san-gal__thumbs{ display:grid; grid-template-columns:repeat(4,1fr); gap:.7rem; margin-top:.7rem; }
.san-gal__thumb{ padding:0; border:1px solid rgba(201,154,69,.3); border-radius:8px; overflow:hidden; background:#fff; cursor:pointer; transition:border-color .25s, transform .3s var(--ease-lux); }
.san-gal__thumb img{ display:block; width:100%; height:88px; object-fit:cover; }
.san-gal__thumb:hover{ transform:translateY(-2px); }
.san-gal__thumb.is-active{ border-color:var(--teal); box-shadow:0 0 0 1px var(--teal); }

/* tabs — editorial */
.san-kumbh-pdp .woocommerce-tabs ul.tabs{ justify-content:flex-start; gap:2rem; border-bottom:1px solid rgba(201,154,69,.35); margin-top:1.5rem; }
.san-kumbh-pdp .woocommerce-tabs ul.tabs li a{ font-size:.85rem; letter-spacing:.04em; color:#6b6b60; padding:.8rem 0; transition:color .25s; }
.san-kumbh-pdp .woocommerce-tabs ul.tabs li.active a{ color:var(--teal); box-shadow:inset 0 -2px 0 var(--gold); }
.san-kumbh-pdp .woocommerce-Tabs-panel{ padding:1.6rem 0 .5rem; }
.san-tab-essence{ display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:2.2rem; align-items:start; }
.san-tab-essence h2{ font-size:1.45rem; margin-bottom:.7rem; }
.san-tab-essence__img{ margin:0; }
.san-tab-essence__img img{ width:100%; height:auto; border-radius:12px; border:1px solid rgba(201,154,69,.25); }
.san-why-list{ list-style:none; margin:0; padding:0; max-width:620px; }
.san-why-list li{ display:flex; align-items:center; gap:.7rem; padding:.45rem 0; color:#4A524D; }
.san-why-list svg{ width:20px; height:20px; color:var(--gold); flex:none; }
.san-important-box{ background:var(--ivory); border:1px solid rgba(201,154,69,.3); border-radius:8px; padding:.9rem 1.2rem; margin-top:1rem; font-size:.92rem; }

/* bottom trust band */
.san-pdp-bottomtrust{ border-top:1px solid rgba(201,154,69,.25); background:#fff; margin-top:2rem; }
.san-pdp-bottomtrust__grid{ width:min(var(--container),calc(100% - 2.5rem)); margin-inline:auto; display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; padding:1.4rem 0; }
.san-pdp-bottomtrust__item{ display:flex; align-items:center; gap:.7rem; justify-content:center; }
.san-pdp-bottomtrust__item img{ height:30px; width:auto; max-width:42px; object-fit:contain; }
.san-pdp-bottomtrust__item strong{ display:block; font-size:.82rem; color:var(--charcoal); }
.san-pdp-bottomtrust__item span{ font-size:.72rem; color:#7A827C; }

@media (max-width:1023px){
	.single-product div.product .san-pdp-trust{ grid-template-columns:repeat(3,1fr); row-gap:1.1rem; }
	.single-product div.product .san-pdp-benefits{ grid-template-columns:repeat(2,1fr); }
	.san-tab-essence{ grid-template-columns:1fr; }
}
@media (max-width:640px){
	.single-product div.product .san-pdp-trust{ grid-template-columns:repeat(2,1fr); }
	.san-pdp-trust__item, .san-pdp-benefit, .san-pdp-bottomtrust__item{ justify-content:flex-start; }
	.san-pdp-bottomtrust__grid{ grid-template-columns:repeat(2,1fr); }
	.san-gal__thumb img{ height:64px; }
	.san-kumbh-pdp .woocommerce-tabs ul.tabs{ gap:1.1rem; flex-wrap:wrap; }
}

/* ---------- Mantra Sangrah listing ---------- */
.san-mantra{ padding-bottom:3rem; }
.san-mantra__hero{ padding:1.2rem 0 1.6rem; }
.san-mantra__hero-grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:center; }
.san-mantra__hero-copy h1{ font-size:clamp(2.2rem,5vw,3.3rem); color:var(--charcoal); margin:0 0 .4rem; font-weight:500; }
.san-mantra__hero-sub{ font-family:var(--font-display); font-size:1.15rem; color:var(--teal); letter-spacing:.02em; margin:0 0 .9rem; }
.san-mantra__hero-lede{ max-width:40ch; color:#4A524D; margin:0 0 1.2rem; }
.san-mantra__hero-lotus img{ opacity:.8; }
.san-mantra__hero-img{ margin:0; position:relative; }
.san-mantra__hero-img img{ display:block; width:100%; height:auto; border-radius:14px; }
.san-mantra__hero-img::before{ content:""; position:absolute; inset:0; border-radius:14px; background:linear-gradient(90deg, var(--ivory) 0%, rgba(251,249,243,.4) 18%, rgba(251,249,243,0) 45%); pointer-events:none; }

.san-mantra__bar{ display:flex; align-items:center; justify-content:space-between; gap:1.2rem; flex-wrap:wrap; padding:.6rem 0 1.6rem; }
.san-mantra__filters{ display:flex; gap:.55rem; flex-wrap:wrap; }
.san-chip{ font-family:var(--font-body); font-size:.8rem; font-weight:600; letter-spacing:.05em; padding:.5rem 1.05rem; border-radius:999px; border:1px solid rgba(201,154,69,.4); background:#fff; color:var(--charcoal); cursor:pointer; transition:background .3s, color .3s, border-color .3s, transform .3s var(--ease-lux); }
.san-chip:hover{ transform:translateY(-1px); border-color:var(--teal); }
.san-chip.is-active{ background:var(--teal); border-color:var(--teal); color:#F4EFE2; }
.san-mantra__search{ display:flex; align-items:center; gap:.5rem; border:1px solid rgba(201,154,69,.4); border-radius:999px; background:#fff; padding:.45rem 1rem; color:#8A8A80; min-width:min(300px,100%); }
.san-mantra__search svg{ width:17px; height:17px; flex:none; }
.san-mantra__search input{ border:0; outline:0; background:transparent; font-family:var(--font-body); font-size:.86rem; color:var(--charcoal); width:100%; }

.san-mantra__section{ padding:.6rem 0 1.6rem; }
.san-mantra__section-head{ display:flex; align-items:baseline; justify-content:space-between; gap:1rem; margin-bottom:1.1rem; }
.san-mantra__section-head h2{ font-size:clamp(1.3rem,2.6vw,1.7rem); margin:0; }
.san-mantra__viewall{ background:none; border:0; cursor:pointer; font-family:var(--font-body); font-size:.78rem; font-weight:700; letter-spacing:.1em; color:var(--teal); display:inline-flex; align-items:center; gap:.4rem; padding:0; }
.san-mantra__viewall:hover .sr-arrow{ transform:translateX(3px); }

.san-mantra__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.3rem; }
.san-dcard{ display:flex; flex-direction:column; background:#fff; border:1px solid rgba(201,154,69,.25); border-radius:12px; overflow:hidden; text-decoration:none; transition:transform .35s var(--ease-lux), box-shadow .35s var(--ease-lux); }
.san-dcard:hover{ transform:translateY(-5px); box-shadow:0 28px 55px -28px rgba(32,37,34,.3); }
.san-dcard__img{ display:block; aspect-ratio:1/1; overflow:hidden; background:var(--sand); }
.san-dcard__img img{ width:100%; height:100%; object-fit:cover; transition:transform .6s var(--ease-lux); }
.san-dcard:hover .san-dcard__img img{ transform:scale(1.03); }
.san-dcard__body{ display:flex; flex-direction:column; gap:.3rem; padding:.9rem 1rem 1.1rem; }
.san-dcard__badge{ display:inline-flex; align-items:center; gap:.35rem; font-size:.62rem; font-weight:700; letter-spacing:.16em; color:var(--gold); }
.san-dcard__badge::before{ content:"\2726"; font-size:.7em; }
.san-dcard__title{ font-family:var(--font-display); font-size:1.05rem; font-weight:600; color:var(--charcoal); transition:color .3s; }
.san-dcard:hover .san-dcard__title{ color:var(--teal); }
.san-dcard__desc{ font-size:.8rem; color:#7A827C; line-height:1.5; }
.san-dcard__cta{ margin-top:.45rem; display:inline-flex; align-items:center; gap:.45rem; font-size:.7rem; font-weight:700; letter-spacing:.14em; color:var(--teal); }
.san-dcard:hover .san-dcard__cta .sr-arrow{ transform:translateX(3px); }
.san-mantra__empty{ text-align:center; color:#7A827C; padding:1.5rem 0; }

.san-mantra__banner{ position:relative; overflow:hidden; background:var(--maroon-deep); background:linear-gradient(120deg, #0A3E41 0%, #0F5558 70%); border-radius:14px; padding:clamp(1.8rem,4vw,2.8rem) clamp(1.4rem,4vw,3rem); color:#F4EFE2; margin:1rem 0 2rem; }
.san-mantra__banner h2{ color:#F4EFE2; font-size:clamp(1.4rem,3vw,1.9rem); margin:0 0 .5rem; }
.san-mantra__banner p{ max-width:52ch; color:rgba(244,239,226,.85); margin:0 0 1.2rem; }
.san-mantra__banner-mandala{ position:absolute; right:-40px; top:50%; transform:translateY(-50%); width:280px; opacity:.35; pointer-events:none; }
.san-mantra__banner-mandala img{ width:100%; height:auto; display:block; }

.san-mantra__mini{ display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; padding-bottom:1rem; }
.san-mantra__mini-item{ display:flex; align-items:center; gap:.7rem; justify-content:center; }
.san-mantra__mini-item svg{ width:26px; height:26px; color:var(--gold); flex:none; }
.san-mantra__mini-item strong{ display:block; font-size:.82rem; color:var(--charcoal); }
.san-mantra__mini-item span{ font-size:.72rem; color:#7A827C; }

@media (max-width:1023px){
	.san-mantra__grid{ grid-template-columns:repeat(2,1fr); }
	.san-mantra__hero-grid{ grid-template-columns:1fr; }
	.san-mantra__hero-img{ order:-1; }
	.san-mantra__mini{ grid-template-columns:repeat(2,1fr); }
	.san-mantra__mini-item{ justify-content:flex-start; }
}
@media (max-width:560px){
	.san-mantra__grid{ grid-template-columns:1fr 1fr; gap:.8rem; }
	.san-dcard__body{ padding:.7rem .75rem .9rem; }
	.san-dcard__title{ font-size:.95rem; }
	.san-mantra__banner-mandala{ width:180px; right:-30px; opacity:.25; }
}

/* ---------- Mantra detail pages ---------- */
.san-mantra-detail .san-prose__content{ font-size:1.02rem; }
.san-mantra-detail .san-prose__content h2{ margin-top:1.6rem; }
.san-mantra-detail .san-dev-verse{ font-size:1.35rem; line-height:1.9; color:var(--charcoal); background:#fff; border:1px solid rgba(201,154,69,.3); border-left:3px solid var(--gold); border-radius:8px; padding:1.1rem 1.4rem; }
.san-back-link{ margin-top:2rem; }
.san-back-link a{ color:var(--teal); text-decoration:none; font-weight:600; }

/* ============================================================
   SANATAANI V17 — final master polish: two-bottle hero ·
   Why Kumbh (image) · Sacred Words · nav refinements
   ============================================================ */

/* Hero: two-bottle composition — front dominant, second behind-right */
.hero-product{ display:flex; align-items:flex-end; justify-content:center; right:21%; bottom:6%; height:66%; }
.hero-product__img{ height:100%; width:auto; display:block; opacity:0; transform:translateY(42px) scale(.95); filter:drop-shadow(0 34px 38px rgba(32,37,34,.42)); }
.hero-product__img--front{ position:relative; z-index:2; }
.hero-product__img--back{ position:absolute; z-index:1; height:86%; right:-34%; bottom:2%; opacity:0; transform:translateY(42px) scale(.95); filter:drop-shadow(0 26px 30px rgba(32,37,34,.32)) brightness(.96); }
.js .hero-product__img--front{ animation:sr-bottle-in 1.3s var(--ease-lux) .5s forwards; }
.js .hero-product__img--back{ animation:sr-bottle-in-back 1.3s var(--ease-lux) .72s forwards; }
@keyframes sr-bottle-in-back{ to{ opacity:.92; transform:translateY(0) scale(1); } }
.no-js .hero-product__img{ opacity:1; transform:none; }
@media (max-width:1180px){ .hero-product{ right:14%; height:56%; } }
@media (max-width:820px){ .hero-product{ display:none; } }

/* Why Kumbh — image media (v17 restores section with photo instead of video) */
.sr-whyk__lede{ color:#4A524D; margin:.4rem 0 1.3rem; max-width:44ch; }
.sr-whyk__media img{ display:block; width:100%; height:auto; border-radius:12px; border:1px solid rgba(201,154,69,.25); box-shadow:0 28px 60px -30px rgba(32,37,34,.35); }
.sr-whyk .sr-btn{ margin-top:1.2rem; }

/* Sacred Words — subtle editorial band */
.sr-sacredwords{ padding:clamp(2.4rem,5vw,3.6rem) 0; background:#fff; border-block:1px solid rgba(201,154,69,.22); }
.sr-sacredwords__inner{ position:relative; text-align:center; overflow:hidden; padding:.4rem 0; }
.sr-sacredwords__lotus{ display:block; margin:0 auto .5rem; }
.sr-sacredwords__lotus img{ display:block; margin:0 auto; }
.sr-sacredwords__lotus img{ opacity:.85; }
.sr-sacredwords__title{ font-size:clamp(1.5rem,3.2vw,2.1rem); margin:0 0 .5rem; }
.sr-sacredwords__lede{ max-width:52ch; margin:0 auto 1.4rem; color:#4A524D; }
.sr-sacredwords__mandala{ position:absolute; right:-60px; top:50%; transform:translateY(-50%); width:220px; opacity:.14; pointer-events:none; }
.sr-sacredwords__mandala img{ width:100%; height:auto; display:block; }
@media (max-width:820px){ .sr-sacredwords__mandala{ width:140px; right:-40px; opacity:.1; } }

/* V17.1 — reveal system now IO-driven: smooth CSS transition + hard fail-safe */
.js [data-reveal]{ transition:opacity .75s var(--ease-lux), transform .75s var(--ease-lux); }
.js [data-reveal].is-revealed{ opacity:1; transform:none; }
/* absolute last-resort: everything becomes visible even if ALL JS fails */
@media screen{
	@keyframes sr-reveal-final{ to{ opacity:1; transform:none; } }
	.js [data-reveal]{ animation:sr-reveal-final .6s var(--ease-lux) 3.5s forwards; }
}

/* ============================================================
   SANATAANI V19 — Sacred Jal collection landing · About Us
   editorial story (reference blueprint)
   ============================================================ */

/* ---------- Sacred Jal ---------- */
.sj{ padding-bottom:1rem; }
.sj-hero{ position:relative; overflow:hidden; padding:1.2rem 0 2rem; }
.sj-hero__mandala{ position:absolute; right:6%; top:-40px; width:260px; opacity:.12; pointer-events:none; }
.sj-hero__mandala img{ width:100%; height:auto; display:block; }
.sj-hero__grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.25fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:center; }
.sj-hero__copy h1{ font-size:clamp(2.2rem,5vw,3.2rem); margin:.2rem 0 .7rem; font-weight:500; }
.sj-hero__copy p{ max-width:40ch; color:#4A524D; }
.sj-hero__lotus{ display:block; margin-top:1rem; opacity:.85; }
.sj-hero__img{ margin:0; position:relative; }
.sj-hero__img img{ display:block; width:100%; height:auto; aspect-ratio:16/8; object-fit:cover; border-radius:14px; }
.sj-hero__img::before{ content:""; position:absolute; inset:0; border-radius:14px; background:linear-gradient(90deg, var(--ivory) 0%, rgba(251,249,243,.35) 16%, rgba(251,249,243,0) 42%); pointer-events:none; }

.sj-feature{ display:grid; grid-template-columns:minmax(0,0.92fr) minmax(0,1fr); gap:clamp(1.5rem,4vw,3.2rem); background:#fff; border:1px solid rgba(201,154,69,.25); border-radius:14px; padding:clamp(1.4rem,3.4vw,2.6rem); box-shadow:0 26px 60px -38px rgba(32,37,34,.28); }
.sj-feature__media{ margin:0; }
.sj-feature__media img{ display:block; width:100%; height:auto; border-radius:10px; object-fit:cover; }
.sj-feature__media figcaption .san-rep-note{ text-align:center; }
.sj-feature__info h2{ font-size:clamp(1.7rem,3.4vw,2.3rem); margin:.5rem 0 .1rem; }
.sj-feature__desc{ color:#4A524D; font-size:.95rem; margin-top:.6rem; }
.sj-feature__cta{ margin-top:.4rem; }

.sj-why, .sj-how, .sj-explore{ padding:clamp(2rem,4.5vw,3.2rem) 0 0; }
.sj-why__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.1rem; }
.sj-how__grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.1rem; }
.sj-card{ background:#fff; border:1px solid rgba(201,154,69,.22); border-radius:12px; padding:1.5rem 1.3rem; text-align:center; transition:transform .35s var(--ease-lux), box-shadow .35s var(--ease-lux); }
.sj-card:hover{ transform:translateY(-4px); box-shadow:0 24px 48px -30px rgba(32,37,34,.28); }
.sj-card__ic{ display:inline-grid; place-items:center; width:52px; height:52px; border-radius:50%; border:1px solid rgba(201,154,69,.45); background:var(--ivory); color:var(--gold); margin-bottom:.8rem; }
.sj-card__ic svg{ width:24px; height:24px; }
.sj-card strong{ display:block; font-family:var(--font-display); font-size:1.05rem; font-weight:600; color:var(--charcoal); margin-bottom:.4rem; }
.sj-card p{ font-size:.85rem; color:#7A827C; line-height:1.6; margin:0; }

.sj-story{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:clamp(1.5rem,4vw,3rem); align-items:center; padding:clamp(2.2rem,5vw,3.4rem) 0 0; }
.sj-story__img{ margin:0; }
.sj-story__img img{ display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:14px; border:1px solid rgba(201,154,69,.22); }
.sj-story__copy h2{ font-size:clamp(1.5rem,3vw,2rem); margin-bottom:.7rem; }
.sj-story__copy p{ color:#4A524D; max-width:56ch; }

.sj-explore .sr-section-sub{ text-align:center; margin:-1.2rem 0 1.6rem; }
.sj-explore__grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:1.1rem; }
.sj-cat{ display:block; text-decoration:none; text-align:center; background:#fff; border:1px solid rgba(201,154,69,.22); border-radius:12px; padding:1rem 1rem 1.1rem; transition:transform .35s var(--ease-lux), box-shadow .35s var(--ease-lux); }
.sj-cat:hover{ transform:translateY(-4px); box-shadow:0 24px 48px -30px rgba(32,37,34,.28); }
.sj-cat__img{ display:block; border-radius:8px; overflow:hidden; margin-bottom:.7rem; }
.sj-cat__img img{ display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; transition:transform .6s var(--ease-lux); }
.sj-cat:hover .sj-cat__img img{ transform:scale(1.03); }
.sj-cat strong{ font-size:.9rem; color:var(--charcoal); }

.sj-banner, .ab-road{ position:relative; overflow:hidden; background:linear-gradient(120deg,#0A3E41 0%, #0F5558 70%); border-radius:14px; padding:clamp(1.8rem,4vw,2.8rem) clamp(1.4rem,4vw,3rem); color:#F4EFE2; margin:clamp(2.2rem,5vw,3.2rem) 0 1.4rem; }
.sj-banner h2, .ab-road h2{ color:#F4EFE2; font-size:clamp(1.4rem,3vw,1.9rem); margin:0 0 .35rem; }
.sj-banner p, .ab-road p{ color:rgba(244,239,226,.85); max-width:58ch; }
.sj-banner p{ margin:0 0 1.2rem; }
.sj-banner__mandala, .ab-road__mandala{ position:absolute; right:-46px; top:50%; transform:translateY(-50%); width:240px; opacity:.3; pointer-events:none; }
.sj-banner__mandala img, .ab-road__mandala img{ width:100%; height:auto; display:block; }

@media (max-width:1023px){
	.sj-hero__grid, .sj-feature, .sj-story{ grid-template-columns:1fr; }
	.sj-hero__img{ order:-1; }
	.sj-why__grid{ grid-template-columns:repeat(2,1fr); }
	.sj-explore__grid{ grid-template-columns:repeat(3,1fr); }
}
@media (max-width:640px){
	.sj-how__grid{ grid-template-columns:1fr; }
	.sj-explore__grid{ grid-template-columns:repeat(2,1fr); }
	.sj-why__grid{ grid-template-columns:1fr 1fr; gap:.8rem; }
	.sj-card{ padding:1.1rem .9rem; }
}

/* ---------- About Us ---------- */
.ab{ padding-bottom:1rem; }
.ab-hero{ padding:1rem 0 1.6rem; }
.ab-hero__grid{ display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.2fr); gap:clamp(1.5rem,4vw,3.5rem); align-items:center; }
.ab-hero__copy h1{ font-size:clamp(1.9rem,4.2vw,2.8rem); color:var(--teal); margin:0 0 .8rem; font-weight:500; line-height:1.25; }
.ab-hero__divider{ display:flex; align-items:center; gap:.8rem; margin:0 0 1rem; }
.ab-hero__divider span{ height:1px; width:56px; background:linear-gradient(90deg,transparent,var(--gold),transparent); }
.ab-hero__lede{ color:#4A524D; max-width:46ch; }
.ab-hero__img{ margin:0; position:relative; }
.ab-hero__img img{ display:block; width:100%; height:auto; aspect-ratio:16/8; object-fit:cover; border-radius:14px; }
.ab-hero__img::before{ content:""; position:absolute; inset:0; border-radius:14px; background:linear-gradient(90deg, var(--ivory) 0%, rgba(251,249,243,.3) 14%, rgba(251,249,243,0) 40%); pointer-events:none; }

.ab-split{ display:grid; grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr); gap:clamp(1.5rem,4vw,3rem); align-items:center; padding:clamp(1.8rem,4vw,2.6rem) 0; }
.ab-split--flip .ab-split__img{ order:2; }
.ab-split__img{ margin:0; }
.ab-split__img img{ display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; border-radius:14px; border:1px solid rgba(201,154,69,.22); }
.ab-split__img--product img{ aspect-ratio:4/5; object-fit:cover; }
.ab-split__copy h2{ font-size:clamp(1.4rem,2.8vw,1.9rem); margin-bottom:.7rem; }
.ab-split__copy p{ color:#4A524D; max-width:58ch; }
.ab-split__copy .sr-btn{ margin-top:.9rem; }

.ab-promises{ padding:clamp(1.6rem,4vw,2.4rem) 0 0; }
.ab-promises__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:1.1rem; }
.ab-promises .sj-card p{ font-size:.83rem; }

.ab-duo{ display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; padding:1.2rem 0 0; }
.ab-duo__card{ display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.3fr); gap:1.2rem; align-items:center; background:#fff; border:1px solid rgba(201,154,69,.22); border-radius:12px; padding:1.3rem; }
.ab-duo__card figure{ margin:0; }
.ab-duo__card figure img{ display:block; width:100%; height:auto; aspect-ratio:1/1.05; object-fit:cover; border-radius:8px; }
.ab-duo__card h2{ font-size:1.15rem; margin-bottom:.45rem; }
.ab-duo__card p{ font-size:.88rem; color:#4A524D; margin:0 0 .5rem; }
.ab-cta{ text-align:center; padding:clamp(1.8rem,4vw,2.6rem) 0; }
.ab-trust{ background:#fff; border-block:1px solid rgba(213,176,106,.3); margin-top:.5rem; }

@media (max-width:1023px){
	.ab-hero__grid, .ab-split, .ab-duo{ grid-template-columns:1fr; }
	.ab-hero__img{ order:-1; }
	.ab-split--flip .ab-split__img{ order:0; }
	.ab-promises__grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:640px){
	.ab-duo__card{ grid-template-columns:1fr; }
	.ab-duo__card figure img{ aspect-ratio:16/9; }
	.ab-promises__grid{ grid-template-columns:1fr 1fr; gap:.8rem; }
}

/* V19.1 — exact-reference pass: banner diya, road-ahead diya, duo flip */
.sj-banner{ padding-left:clamp(1.4rem,4vw,3rem); }
.sj-banner__diya{ position:absolute; left:50%; bottom:-6px; width:130px; pointer-events:none; }
.sj-banner__diya img{ width:100%; height:auto; display:block; border-radius:8px 8px 0 0; opacity:.95; }
.ab-road{ min-height:150px; }
.ab-road__diya{ position:absolute; right:0; top:0; bottom:0; width:min(34%,300px); pointer-events:none; }
.ab-road__diya img{ width:100%; height:100%; object-fit:cover; object-position:left center; display:block; opacity:.9;
	-webkit-mask-image:linear-gradient(90deg, transparent 0%, #000 34%); mask-image:linear-gradient(90deg, transparent 0%, #000 34%); }
.ab-road h2, .ab-road p{ position:relative; max-width:60%; }
.ab-duo__card--flip figure{ order:2; }
@media (max-width:900px){
	.sj-banner__diya{ display:none; }
	.ab-road__diya{ opacity:.55; width:44%; }
	.ab-road h2, .ab-road p{ max-width:100%; }
}
@media (max-width:640px){ .ab-duo__card--flip figure{ order:0; } .ab-road__diya{ display:none; } }

/* V20 — final asset integration: constrain new decorative art to the
   same visual size the temporary assets occupied (layout unchanged). */
.sj-hero__lotus img{ width:84px; height:auto; }
.ab-hero__divider img{ width:58px; height:auto; }
.sj-banner__mandala, .ab-road__mandala{ width:230px; }
.ab-duo__card figure img{ object-position:center; }

/* V21 — product slots hold 4:5 lifestyle assets again; a future transparent
   bottle asset only needs the file swapped (contain rules kept ready below). */
.ab-split__img--product img{ aspect-ratio:4/5; object-fit:cover; }
.sj-feature__media img{ object-fit:cover; }
.san-gal__main{ background:var(--ivory); }

/* V22 — gallery thumbs show the whole frame (tall product shots were
   centre-cropped into an unreadable slice). Same box size, no layout change. */
.san-gal__thumb{ background:var(--ivory); }
.san-gal__thumb img{ object-fit:contain; height:92px; }

/* V23 — per-bottle courier charging, order tracking link, checkout clarity. */

/* PDP price card: the per-bottle explanation line. */
.san-price-card__note--sub{
  margin:.6rem 0 0; padding-top:.6rem; border-top:1px solid rgba(0,0,0,.07);
  font-size:.78rem; line-height:1.55; color:#6F6F6F;
}

/* Cart / checkout: the product line reads FREE, not a rupee amount. */
.san-cart-free{
  display:inline-block; font-family:var(--font-display,Georgia,serif);
  font-weight:600; letter-spacing:.04em; color:#2F6B4F;
}
.woocommerce-cart .cart_item .product-price .san-cart-free,
.woocommerce-cart .cart_item .product-subtotal .san-cart-free{ font-size:1rem; }

/* Checkout: what the customer is actually paying, stated up front. */
.san-checkout-note{
  margin:0 0 1.4rem; padding:.95rem 1.15rem;
  background:var(--sand,#F6EFE3); border-left:4px solid var(--gold,#D9A441);
  border-radius:6px; font-size:.92rem; line-height:1.65; color:#3A332C;
}
.san-checkout-note strong{ color:#4A0B12; }

/* Thank-you page: the tracking link block. */
.san-thanks-track{
  margin-top:1.8rem; padding:1.5rem 1.4rem; text-align:center;
  background:var(--ivory,#FFF9EF); border:1px solid #E9DDCA; border-radius:10px;
}
.san-thanks-track h3{
  margin:0 0 .45rem; font-family:var(--font-display,Georgia,serif);
  font-size:1.1rem; letter-spacing:.03em; color:#4A0B12;
}
.san-thanks-track p{ margin:0 0 .8rem; color:#4A524D; font-size:.93rem; }
.san-thanks-track__link{
  display:inline-block; max-width:100%; overflow-wrap:anywhere; word-break:break-word;
  padding:.6rem .9rem; background:#fff; border:1px dashed #D9C7A8; border-radius:6px;
  font-size:.84rem; color:#4A0B12; text-decoration:none;
}
.san-thanks-track__link:hover{ background:var(--sand,#F6EFE3); }
.san-thanks-track__sent{ margin:.8rem 0 0; font-size:.85rem; color:#6F6F6F; }
.san-thanks-track__alt{ margin:.35rem 0 0; font-size:.82rem; color:#6F6F6F; }
@media (max-width:640px){
  .san-thanks-track__link{ font-size:.76rem; }
}

/* ==================================================================
   V24 — CONTACT US · SHOP · CART (approved reference blueprint)
   ================================================================== */

/* ---- Shared: breadcrumb ---- */
.sn-crumbs{ display:flex; align-items:center; gap:.5rem; padding:.9rem 0 .55rem; font-size:.78rem; letter-spacing:.06em; color:#7C837E; }
.sn-crumbs a{ color:#7C837E; text-decoration:none; }
.sn-crumbs a:hover{ color:var(--teal); }
.sn-crumbs span[aria-current]{ color:var(--charcoal); }

/* ---- Shared: page hero (copy left, image bleeding right) ---- */
.sn-phero{ background:var(--ivory); overflow:hidden; }
.sn-phero__grid{ display:grid; grid-template-columns:minmax(280px,40%) 1fr; align-items:stretch; }
.sn-phero__copy{
  display:flex; flex-direction:column; justify-content:center;
  padding-block:clamp(2rem,4.6vw,3.4rem);
  padding-left:max(1.25rem, calc((100vw - var(--container)) / 2));
  padding-right:clamp(1.25rem,3vw,2.6rem);
}
.sn-phero__copy h1{
  margin:0; font-family:var(--font-display); font-weight:500;
  font-size:clamp(1.85rem,3.6vw,2.85rem); line-height:1.15; letter-spacing:.01em; color:var(--teal);
}
.sn-phero__rule{ display:block; width:132px; height:14px; margin:1rem 0 1.05rem;
  background:
    radial-gradient(circle at 50% 50%, var(--gold) 0 3px, transparent 3.5px) 50% 50%/14px 14px no-repeat,
    linear-gradient(90deg, transparent, var(--gold-soft) 22%, var(--gold-soft) 78%, transparent) 50% 50%/100% 1px no-repeat;
}
.sn-phero__copy p{ margin:0; max-width:34ch; color:#5C635E; font-size:.95rem; line-height:1.75; }
.sn-phero__media{ margin:0; min-height:clamp(200px,24vw,300px); }
.sn-phero__media img{ display:block; width:100%; height:100%; object-fit:cover; object-position:center; }

/* ---- Shared: devotional CTA banner ---- */
.sn-cta{ position:relative; isolation:isolate; margin-top:clamp(2.4rem,5vw,4rem); background:var(--teal); overflow:hidden; }
.sn-cta__bg{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center right; z-index:-2; }
.sn-cta::after{ content:""; position:absolute; inset:0; z-index:-1;
  background:linear-gradient(90deg, rgba(10,62,65,.95) 0%, rgba(10,62,65,.86) 42%, rgba(10,62,65,.35) 72%, rgba(10,62,65,.12) 100%); }
.sn-cta__inner{ padding-block:clamp(2.2rem,4.6vw,3.4rem); color:#F4EFE2; }
.sn-cta__inner h2{ margin:0 0 .5rem; color:#FFF9EF; font-family:var(--font-display); font-weight:500;
  font-size:clamp(1.35rem,2.7vw,1.95rem); line-height:1.35; max-width:34ch; }
.sn-cta__inner p{ margin:0; color:rgba(244,239,226,.86); font-size:.93rem; }
.sn-cta__inner .sr-btn{ margin-top:1.25rem; }
@media (max-width:900px){
  .sn-cta::after{ background:linear-gradient(180deg, rgba(10,62,65,.92) 0%, rgba(10,62,65,.78) 100%); }
}

/* ---- Shared: category / product card ---- */
.sh-card{
  display:flex; flex-direction:column; text-decoration:none; overflow:hidden;
  background:#fff; border:1px solid rgba(213,176,106,.42); border-radius:12px;
  box-shadow:0 10px 26px -22px rgba(32,37,34,.5);
  transition:transform .35s var(--ease-lux,cubic-bezier(.22,1,.36,1)), box-shadow .35s ease, border-color .35s ease;
}
.sh-card:hover{ transform:translateY(-4px); border-color:var(--gold); box-shadow:0 18px 34px -22px rgba(32,37,34,.55); }
.sh-card__media{ display:block; background:var(--ivory); aspect-ratio:4/3; overflow:hidden; }
.sh-card__media img{ width:100%; height:100%; object-fit:contain; padding:.6rem; transition:transform .5s var(--ease-lux,cubic-bezier(.22,1,.36,1)); }
.sh-card:hover .sh-card__media img{ transform:scale(1.04); }
.sh-card__title{ display:block; padding:.85rem 1rem .1rem; font-family:var(--font-display); font-size:1.02rem;
  font-weight:500; color:var(--charcoal); letter-spacing:.01em; }
.sh-card__price{ display:block; padding:.15rem 1rem 1rem; font-size:.86rem; color:var(--teal); }
.sh-card__cta{ display:inline-flex; align-items:center; gap:.45rem; padding:.15rem 1rem 1rem;
  font-size:.72rem; letter-spacing:.16em; text-transform:uppercase; color:var(--teal-soft); }
.sh-card__cta .sr-arrow svg{ width:24px; transition:transform .3s ease; }
.sh-card:hover .sh-card__cta .sr-arrow svg{ transform:translateX(4px); }

/* ================= SHOP ================= */
.sh-layout{ display:grid; grid-template-columns:236px minmax(0,1fr); gap:clamp(1.2rem,2.6vw,2.2rem); align-items:start; padding-top:clamp(1.4rem,3vw,2.2rem); }
.sh-side{ position:sticky; top:calc(var(--san-header-h,80px) + 1rem); display:grid; gap:1.1rem; }
.sh-side__box{ background:#fff; border:1px solid rgba(213,176,106,.4); border-radius:12px; padding:1.1rem 1rem; }
.sh-side__title{ margin:0 0 .7rem; font-family:var(--font-display); font-size:1rem; font-weight:500; color:var(--teal); letter-spacing:.02em; }
.sh-cats{ list-style:none; margin:0; padding:0; display:grid; gap:.1rem; }
.sh-cats a{ display:flex; align-items:center; gap:.55rem; padding:.5rem .55rem; border-radius:8px;
  font-size:.85rem; color:var(--charcoal); text-decoration:none; transition:background .25s ease, color .25s ease; }
.sh-cats a:hover{ background:var(--sand); color:var(--teal); }
.sh-cats .is-current a{ background:var(--sand); color:var(--teal); font-weight:600; }
.sh-cats__dot{ flex:0 0 16px; width:16px; height:16px; color:var(--gold); }
.sh-cats__dot svg{ width:16px; height:16px; display:block; }
.sh-help{ position:relative; overflow:hidden; background:var(--sand); border:1px solid rgba(213,176,106,.4);
  border-radius:12px; padding:1.1rem 1rem 0; text-align:center; }
.sh-help h3{ margin:0 0 .35rem; font-family:var(--font-display); font-size:1rem; font-weight:500; color:var(--teal); }
.sh-help p{ margin:0 0 .8rem; font-size:.82rem; line-height:1.6; color:#5C635E; }
.sh-help__btn{ padding:.6rem 1.1rem; font-size:.72rem; min-height:0; }
.sh-help__img{ display:block; width:100%; height:96px; object-fit:cover; object-position:center 35%; margin-top:.9rem; border-radius:8px 8px 0 0; }

.sh-main .woocommerce-result-count{ margin:0; font-size:.82rem; color:#7C837E; }
.sh-main .woocommerce-ordering{ margin:0; }
.sh-main .woocommerce-ordering select{ padding:.5rem .7rem; font-size:.82rem; border:1px solid rgba(213,176,106,.5);
  border-radius:8px; background:#fff; color:var(--charcoal); }
.sh-main .woocommerce-notices-wrapper:empty{ display:none; }
.sh-main::before{ content:""; display:block; }
.sh-main .woocommerce-result-count,
.sh-main .woocommerce-ordering{ display:inline-block; vertical-align:middle; }
.sh-main .woocommerce-ordering{ float:right; }
.sh-main ul.products{ clear:both; }

.sh-catgrid{ padding-top:clamp(2rem,4vw,3rem); }
.sh-catgrid__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(1rem,2vw,1.5rem); }
.sh-catgrid__note{ margin-top:1rem; text-align:center; }

@media (max-width:1024px){
  .sh-layout{ grid-template-columns:200px minmax(0,1fr); }
}
@media (max-width:860px){
  .sh-layout{ grid-template-columns:1fr; }
  .sh-side{ position:static; grid-template-columns:1fr 1fr; display:grid; align-items:start; }
  .sh-catgrid__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:620px){
  .sh-side{ grid-template-columns:1fr; }
  .sh-catgrid__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:.85rem; }
}

/* ================= CONTACT US ================= */
.ct-main{ padding-top:clamp(1.6rem,3.4vw,2.6rem); }
.ct-cols{ display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); gap:clamp(1.2rem,2.4vw,2rem); align-items:start; }
.ct-card{ background:#fff; border:1px solid rgba(213,176,106,.42); border-radius:12px;
  padding:clamp(1.2rem,2.4vw,1.9rem); box-shadow:0 12px 30px -26px rgba(32,37,34,.55); }
.ct-card__title{ margin:0 0 1.2rem; font-family:var(--font-display); font-weight:500;
  font-size:1.18rem; color:var(--teal); text-align:center; letter-spacing:.02em; }
.ct-card__title--left{ text-align:left; }
.ct-star{ color:var(--gold); font-size:.72em; position:relative; top:-2px; }

.ct-field{ margin-bottom:1rem; }
.ct-field label{ display:block; margin-bottom:.35rem; font-size:.82rem; font-weight:600; color:var(--charcoal); letter-spacing:.02em; }
.ct-req{ color:var(--terracotta); }
.ct-field input, .ct-field textarea{
  width:100%; padding:.72rem .85rem; font-family:var(--font-body); font-size:.9rem; color:var(--charcoal);
  background:var(--ivory); border:1px solid rgba(213,176,106,.5); border-radius:8px;
  transition:border-color .25s ease, box-shadow .25s ease, background .25s ease;
}
.ct-field textarea{ resize:vertical; min-height:118px; line-height:1.65; }
.ct-field input::placeholder, .ct-field textarea::placeholder{ color:#A6ADA7; }
.ct-field input:focus, .ct-field textarea:focus{ outline:none; background:#fff;
  border-color:var(--teal-soft); box-shadow:0 0 0 3px rgba(57,123,122,.14); }
.ct-field input:user-invalid, .ct-field textarea:user-invalid{ border-color:var(--terracotta); box-shadow:0 0 0 3px rgba(166,93,72,.12); }
.ct-hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.ct-submit{ width:100%; justify-content:center; margin-top:.35rem; }
.ct-alert{ margin:0 0 1.1rem; padding:.75rem .9rem; border-radius:8px; font-size:.87rem; line-height:1.6; }
.ct-alert--ok{ background:rgba(57,123,122,.1); border-left:4px solid var(--teal-soft); color:#25443F; }
.ct-alert--err{ background:rgba(166,93,72,.1); border-left:4px solid var(--terracotta); color:#6B382C; }

.ct-info{ list-style:none; margin:0; padding:0; display:grid; gap:1.15rem; }
.ct-info li{ display:flex; gap:.8rem; align-items:flex-start; }
.ct-info__icon{ flex:0 0 34px; width:34px; height:34px; display:grid; place-items:center;
  background:var(--sand); border-radius:50%; color:var(--teal); }
.ct-info__icon svg{ width:19px; height:19px; }
.ct-info__body{ display:grid; gap:.15rem; min-width:0; }
.ct-info__body strong{ font-size:.85rem; color:var(--charcoal); font-weight:600; }
.ct-info__body a{ font-size:.88rem; color:var(--teal); text-decoration:none; overflow-wrap:anywhere; }
.ct-info__body a:hover{ text-decoration:underline; }
.ct-info__body em{ font-style:normal; font-size:.76rem; color:#8A918B; }
.ct-info__addr{ font-size:.86rem; color:#5C635E; line-height:1.6; white-space:pre-line; }
.ct-follow{ margin-top:1.5rem; padding-top:1.2rem; border-top:1px solid rgba(213,176,106,.35); }
.ct-follow strong{ display:block; margin-bottom:.65rem; font-size:.85rem; color:var(--charcoal); }
.ct-follow__row{ display:flex; gap:.6rem; flex-wrap:wrap; }
.ct-follow__btn{ width:38px; height:38px; display:grid; place-items:center; border-radius:50%;
  background:var(--sand); color:var(--teal); transition:background .25s ease, color .25s ease, transform .25s ease; }
.ct-follow__btn svg{ width:18px; height:18px; }
.ct-follow__btn:hover{ background:var(--teal); color:#F4EFE2; transform:translateY(-2px); }

.ct-always{ padding-top:clamp(2.2rem,4.4vw,3.4rem); }
.ct-always__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(1rem,2vw,1.6rem); }
.ct-always__item{ text-align:center; display:grid; gap:.4rem; justify-items:center; }
.ct-always__icon{ width:52px; height:52px; display:grid; place-items:center; border-radius:50%;
  background:var(--sand); color:var(--gold); margin-bottom:.3rem; }
.ct-always__icon svg{ width:26px; height:26px; }
.ct-always__item strong{ font-size:.92rem; font-weight:600; color:var(--charcoal); }
.ct-always__item span{ font-size:.8rem; line-height:1.6; color:#7C837E; max-width:20ch; }

@media (max-width:900px){
  .ct-cols{ grid-template-columns:1fr; }
  .ct-always__grid{ grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:1.8rem; }
}

/* ================= CART ================= */
.san-cart-page{ padding-top:clamp(1.4rem,3vw,2.2rem); }
.san-cart-page .woocommerce-cart-form table.shop_table{
  width:100%; border-collapse:separate; border-spacing:0; background:#fff;
  border:1px solid rgba(213,176,106,.42); border-radius:12px; overflow:hidden;
}
.san-cart-page .shop_table thead th{
  padding:.95rem 1rem; text-align:left; background:var(--sand);
  font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color:var(--teal); font-weight:600;
  border-bottom:1px solid rgba(213,176,106,.4);
}
.san-cart-page .shop_table td{ padding:1rem; border-bottom:1px solid rgba(213,176,106,.22); vertical-align:middle; font-size:.92rem; }
.san-cart-page .shop_table tbody tr:last-child td{ border-bottom:0; }
.san-cart-page .product-thumbnail img{ width:64px; height:64px; object-fit:contain; background:var(--ivory); border-radius:8px; padding:.25rem; }
.san-cart-page .product-name a{ color:var(--charcoal); text-decoration:none; font-weight:600; }
.san-cart-page .product-name a:hover{ color:var(--teal); }
.san-cart-page .product-remove a{ color:var(--terracotta); font-size:1.1rem; text-decoration:none; }
.san-cart-page .quantity input.qty{
  width:74px; padding:.5rem; text-align:center; font-size:.9rem;
  border:1px solid rgba(213,176,106,.5); border-radius:8px; background:var(--ivory);
}
.san-cart-page .actions{ padding:1rem !important; background:var(--ivory); }
.san-cart-page .coupon{ display:flex; gap:.55rem; flex-wrap:wrap; align-items:center; }
.san-cart-page .coupon label{ position:absolute; left:-9999px; }
.san-cart-page #coupon_code{ padding:.62rem .8rem; font-size:.86rem; border:1px solid rgba(213,176,106,.5);
  border-radius:8px; background:#fff; min-width:190px; }
.san-cart-page .actions .button{
  padding:.66rem 1.15rem; font-size:.74rem; letter-spacing:.12em; text-transform:uppercase; font-weight:600;
  border-radius:8px; border:1px solid var(--teal); background:var(--teal); color:#F4EFE2; cursor:pointer;
  transition:background .25s ease, transform .25s ease;
}
.san-cart-page .actions .button:hover:not(:disabled){ background:var(--maroon-deep); transform:translateY(-1px); }
.san-cart-page .actions .button:disabled{ background:var(--sand); border-color:rgba(213,176,106,.4); color:#A6ADA7; cursor:not-allowed; }

.san-cart-page .cart-collaterals{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,360px);
  gap:clamp(1.2rem,2.4vw,2rem); align-items:start; margin-top:clamp(1.4rem,3vw,2.2rem);
}
.san-cart-page .cart_totals{ background:#fff; border:1px solid rgba(213,176,106,.42); border-radius:12px;
  padding:1.2rem 1.3rem; box-shadow:0 12px 30px -26px rgba(32,37,34,.55); }
.san-cart-page .cart_totals h2{ margin:0 0 .9rem; font-family:var(--font-display); font-weight:500;
  font-size:1.1rem; color:var(--teal); }
.san-cart-page .cart_totals table{ width:100%; border-collapse:collapse; }
.san-cart-page .cart_totals th, .san-cart-page .cart_totals td{
  padding:.66rem 0; text-align:left; font-size:.88rem; border-bottom:1px solid rgba(213,176,106,.28); }
.san-cart-page .cart_totals td{ text-align:right; font-weight:600; color:var(--charcoal); }
.san-cart-page .cart_totals th{ font-weight:500; color:#5C635E; }
.san-cart-page .cart_totals tr.order-total th{ color:var(--charcoal); font-weight:600; }
.san-cart-page .cart_totals tr.order-total td{ color:var(--teal); font-size:1.02rem; }
.san-cart-page .cart_totals tr:last-child th, .san-cart-page .cart_totals tr:last-child td{ border-bottom:0; }
.san-cart-page .wc-proceed-to-checkout{ margin-top:1rem; }
.san-cart-page .checkout-button{
  display:flex; align-items:center; justify-content:center; gap:.5rem; width:100%; min-height:50px;
  padding:.9rem 1.2rem; background:var(--teal); color:#F4EFE2; text-decoration:none;
  font-size:.8rem; font-weight:600; letter-spacing:.12em; text-transform:uppercase; border-radius:8px;
  box-shadow:0 12px 28px -14px rgba(15,85,88,.55); transition:background .25s ease, transform .25s ease;
}
.san-cart-page .checkout-button:hover{ background:var(--maroon-deep); transform:translateY(-2px); }

.cr-trust{ list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.6rem; margin:1.1rem 0 0; padding:0; }
.cr-trust li{ display:grid; justify-items:center; text-align:center; gap:.2rem; }
.cr-trust__icon{ width:26px; height:26px; color:var(--gold); }
.cr-trust__icon svg{ width:22px; height:22px; }
.cr-trust strong{ font-size:.68rem; font-weight:600; color:var(--charcoal); line-height:1.3; }
.cr-trust span:not(.cr-trust__icon){ font-size:.62rem; color:#8A918B; line-height:1.35; }

.cr-cross__title{ margin:0 0 1rem; font-family:var(--font-display); font-weight:500; font-size:1.12rem; color:var(--teal); }
.cr-cross__grid{ display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(.8rem,1.6vw,1.2rem); }
.sh-card--sm .sh-card__media{ aspect-ratio:1/1; }
.sh-card--sm .sh-card__title{ font-size:.92rem; padding:.7rem .8rem .1rem; }
.sh-card--sm .sh-card__price, .sh-card--sm .sh-card__cta{ padding:.1rem .8rem .8rem; font-size:.78rem; }
.cr-cross__note{ margin-top:.85rem; }

.san-cart-page .wc-empty-cart-message, .san-cart-page .cart-empty{
  padding:2.2rem 1rem; text-align:center; background:#fff;
  border:1px solid rgba(213,176,106,.42); border-radius:12px; color:#5C635E; }
.san-cart-page .return-to-shop{ text-align:center; margin-top:1rem; }
.san-cart-page .return-to-shop .button{
  display:inline-block; padding:.85rem 1.7rem; background:var(--teal); color:#F4EFE2; text-decoration:none;
  border-radius:8px; font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; font-weight:600; }

@media (max-width:900px){
  .san-cart-page .cart-collaterals{ grid-template-columns:1fr; }
  .cr-cross__grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:720px){
  .sn-phero__grid{ grid-template-columns:1fr; }
  .sn-phero__copy{ padding-inline:1.25rem; padding-block:1.9rem 1.4rem; }
  .sn-phero__copy p{ max-width:none; }
  .sn-phero__media{ min-height:190px; }
  .san-cart-page .shop_table thead{ display:none; }
  .san-cart-page .shop_table, .san-cart-page .shop_table tbody,
  .san-cart-page .shop_table tr, .san-cart-page .shop_table td{ display:block; width:100%; }
  .san-cart-page .shop_table tr.cart_item{ position:relative; padding:.5rem 0 .9rem; border-bottom:1px solid rgba(213,176,106,.28); }
  .san-cart-page .shop_table td{ border-bottom:0; padding:.35rem 1rem; text-align:left; }
  .san-cart-page .shop_table td::before{ content:attr(data-title); display:block; margin-bottom:.15rem;
    font-size:.66rem; letter-spacing:.12em; text-transform:uppercase; color:#8A918B; }
  .san-cart-page .shop_table td.product-remove::before,
  .san-cart-page .shop_table td.product-thumbnail::before{ content:none; }
  .san-cart-page .shop_table td.product-remove{ position:absolute; right:.35rem; top:.5rem; padding:0; width:auto; }
  .san-cart-page .coupon{ width:100%; }
  .san-cart-page #coupon_code{ flex:1 1 auto; min-width:0; }
  .cr-cross__grid{ grid-template-columns:1fr 1fr; }
  .cr-trust{ grid-template-columns:repeat(2,minmax(0,1fr)); row-gap:1rem; }
}
@media (max-width:430px){
  .ct-always__grid{ gap:1.2rem; }
  .cr-cross__grid{ grid-template-columns:1fr 1fr; }
}

/* V24.1 — shop card links must not inherit the default underline. */
.san-shop ul.products li.product a,
.san-shop ul.products li.product a:hover{ text-decoration:none; }
.san-shop ul.products li.product .san-card__cat{ text-decoration:none; }
.sh-main .woocommerce-products-header{ display:none; }

/* V24.2 — cart actions row: coupon left, Update cart right (blueprint). */
.san-cart-page .actions{ display:flex; align-items:center; justify-content:space-between; gap:.8rem; flex-wrap:wrap; }
.san-cart-page .actions .coupon{ margin:0; }
.san-cart-page .actions > button[name="update_cart"],
.san-cart-page .actions > input[name="update_cart"]{ margin-left:auto; }
.san-cart-page .product-thumbnail img{ width:58px; height:72px; }
@media (max-width:720px){
  .san-cart-page .actions{ flex-direction:column; align-items:stretch; }
  .san-cart-page .actions > button[name="update_cart"],
  .san-cart-page .actions > input[name="update_cart"]{ margin-left:0; width:100%; }
}

/* V24.3 — on mobile the products come first; browse-by-category follows. */
@media (max-width:860px){
  .sh-main{ order:1; }
  .sh-side{ order:2; }
}

/* ==================================================================
   V25 — DESKTOP GRID & PROPORTION PASS (Shop · Kumbh PDP · Cart)
   The commerce pages move to a 1320px content grid with 40px side
   padding; the approved visual language is unchanged.
   ================================================================== */
body.post-type-archive-product,
body.tax-product_cat,
body.single-product,
body.woocommerce-cart{ --container:1320px; }
@media (min-width:1024px){
  body.post-type-archive-product .container,
  body.tax-product_cat .container,
  body.single-product .container,
  body.woocommerce-cart .container{ width:min(var(--container), calc(100% - 5rem)); }
}

/* Page hero scales up with the wider grid. */
.sn-phero__copy h1{ font-size:clamp(2.05rem,3.9vw,3.25rem); }
.sn-phero__copy{ padding-block:clamp(2.4rem,5vw,4.4rem); }
.sn-phero__media{ min-height:clamp(220px,25vw,350px); }
.sn-phero__copy p{ font-size:1rem; max-width:38ch; }

/* Section rhythm: hero → sections breathe evenly. */
.sh-layout{ grid-template-columns:248px minmax(0,1fr); gap:clamp(1.6rem,2.8vw,2.5rem); padding-top:clamp(1.8rem,3.4vw,2.8rem); }
.sh-catgrid{ padding-top:clamp(2.6rem,5vw,4rem); }
.sn-cta__inner{ padding-block:clamp(2.6rem,5vw,4rem); }

/* Shop sidebar: quieter relative to the main column. */
.sh-side__box{ padding:1.2rem 1.1rem; }
.sh-cats a{ padding:.55rem .6rem; font-size:.86rem; }

/* Category cards: roomier at the wider grid. */
.sh-catgrid__grid{ gap:clamp(1.2rem,2.2vw,1.75rem); }
.sh-card__media img{ padding:.9rem; }
.sh-card__title{ padding:1rem 1.25rem .15rem; font-size:1.12rem; }
.sh-card__cta{ padding:.25rem 1.25rem 1.15rem; }
.sh-card--sm .sh-card__title{ padding:.8rem 1rem .1rem; }
.sh-card--sm .sh-card__price, .sh-card--sm .sh-card__cta{ padding:.15rem 1rem .95rem; }

/* Kumbh PDP: information card + description readability. */
.san-price-card{ padding:1.4rem 1.5rem; }
.san-price-card__row{ padding:.42rem 0; font-size:.95rem; }
.single-product .woocommerce-tabs .woocommerce-Tabs-panel{ font-size:.98rem; line-height:1.72; }

/* Cart: table proportions per the approved column split. */
.san-cart-page .shop_table thead th{ padding:1.1rem 1.25rem; }
.san-cart-page .shop_table td{ padding:1.15rem 1.25rem; font-size:.95rem; }
.san-cart-page .product-thumbnail img{ width:70px; height:86px; }
@media (min-width:900px){
  .san-cart-page .shop_table col{}
  .san-cart-page .shop_table th.product-name,
  .san-cart-page .shop_table td.product-name{ width:46%; }
  .san-cart-page .shop_table th.product-price, .san-cart-page .shop_table td.product-price,
  .san-cart-page .shop_table th.product-quantity, .san-cart-page .shop_table td.product-quantity,
  .san-cart-page .shop_table th.product-subtotal, .san-cart-page .shop_table td.product-subtotal{ width:15%; }
}
.san-cart-page .cart-collaterals{ grid-template-columns:minmax(0,1fr) 348px; }
@media (max-width:900px){ .san-cart-page .cart-collaterals{ grid-template-columns:1fr; } }
.san-cart-page .cart_totals{ padding:1.4rem 1.5rem; }
.san-cart-page .cart_totals th, .san-cart-page .cart_totals td{ padding:.72rem 0; font-size:.92rem; }

/* V25.1 — cart fixes: the actions cell must stay a table cell (flex on a
   td breaks its colspan), and the thumbnail column needs a real width. */
.san-cart-page td.actions{ display:table-cell; }
.san-cart-page td.actions .coupon{ display:inline-flex; gap:.55rem; align-items:center; vertical-align:middle; }
.san-cart-page td.actions > .button{ float:right; }
.san-cart-page td.actions::after{ content:""; display:block; clear:both; }
@media (min-width:900px){
  .san-cart-page .shop_table th.product-thumbnail,
  .san-cart-page .shop_table td.product-thumbnail{ width:104px; }
  .san-cart-page .shop_table th.product-remove,
  .san-cart-page .shop_table td.product-remove{ width:44px; }
  .san-cart-page .shop_table th.product-name,
  .san-cart-page .shop_table td.product-name{ width:auto; }
}
@media (max-width:720px){
  .san-cart-page td.actions .coupon{ display:flex; width:100%; }
  .san-cart-page td.actions > .button{ float:none; width:100%; margin-top:.6rem; }
}

/* ==================================================================
   V26-TRUST — five-item trust strip: visible icons, even rhythm.
   Same approved ic-*.png assets; a soft gold chip + gentle contrast
   lift (display-only CSS) makes the pale gold art clearly readable.
   ================================================================== */
.sr-trust__row{
  display:grid; grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(1.1rem,2.2vw,1.75rem); align-items:center;
  padding:1.15rem clamp(1.1rem,2.2vw,1.75rem);
}
.sr-trust__item{ display:flex; align-items:center; gap:.8rem; min-width:0; }
.sr-trust__item .sr-ticon{
  flex:0 0 46px; width:46px; height:46px; object-fit:contain; padding:7px;
  background:rgba(201,154,69,.14); border:1px solid rgba(201,154,69,.28); border-radius:50%;
  filter:brightness(.9) saturate(1.4) contrast(1.18);
  box-sizing:border-box;
}
.sr-trust__item > div{ min-width:0; }
.sr-trust__item strong{ display:block; font-size:.85rem; font-weight:600; line-height:1.35; color:var(--charcoal); letter-spacing:.01em; }
.sr-trust__item span{ display:block; margin-top:.12rem; font-size:.76rem; line-height:1.45; color:#6F766F; }
@media (max-width:1024px){
  .sr-trust__row{ grid-template-columns:repeat(3,minmax(0,1fr)); row-gap:1.05rem; }
}
@media (max-width:640px){
  .sr-trust__row{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:.9rem; padding:1rem 1.1rem; }
  .sr-trust__item{ gap:.6rem; }
  .sr-trust__item .sr-ticon{ flex-basis:40px; width:40px; height:40px; padding:6px; }
  .sr-trust__item strong{ font-size:.8rem; }
  .sr-trust__item span{ font-size:.72rem; }
}

/* V26.1 — clip decorative bleed on narrow screens (shop sidebar image,
   footer mandala) without touching layout. */
.sh-help{ overflow:hidden; }
.sh-help__img{ max-width:100%; }
.sr-footer, footer.sr-footer, .site-footer{ overflow-x:clip; }
.sr-mandala--footer{ max-width:100vw; }
@media (max-width:640px){
  .sr-mandala--footer{ right:-40px; width:160px; }
}

/* V26.2 — mobile: the V25 desktop .sh-layout rule was overriding the
   earlier stacking media query (cascade order). Re-assert it last. */
@media (max-width:860px){
  .sh-layout{ grid-template-columns:1fr !important; }
  .sh-side{ position:static; }
}

/* V26.3 — trust strip: top-align items so all five headings start on
   the same line regardless of text wrapping. */
.sr-trust__row{ align-items:start; }
.sr-trust__item{ align-items:flex-start; }
.sr-trust__item .sr-ticon{ margin-top:1px; }

/* ==================================================================
   V27 — new hero composition (single feathered devotional scene,
   home-hero-kumbha-amrit.png) + trust strip breathing room.
   ================================================================== */
/* Hero scene: one image with its own base & glow — halo and ground
   shadow from the old two-bottle setup are switched off. */
.hero-product--scene{ right:12%; bottom:0; height:94%; align-items:flex-end; }
.hero-product--scene::before, .hero-product--scene::after{ display:none; }
.hero-product--scene .hero-product__img{ filter:drop-shadow(0 26px 38px rgba(32,37,34,.30)); }
@media (max-width:1366px){ .hero-product--scene{ right:8%; height:88%; } }
@media (max-width:1180px){ .hero-product--scene{ right:4%; height:78%; } }
@media (max-width:820px){ .hero-product--scene{ display:none; } }
@media (prefers-reduced-motion: no-preference){
  .hero-product--scene{ animation-name:sr-scene-float; }
  @keyframes sr-scene-float{ 0%,100%{ transform:translateY(0); } 50%{ transform:translateY(-8px); } }
}

/* Trust strip: proper breathing room around the chips (was cramped). */
.sr-trust__card.sr-trust__row{ padding:1.5rem clamp(1.5rem,2.8vw,2.25rem); }
.sr-trust .sr-trust__row{ padding:1.5rem clamp(1.5rem,2.8vw,2.25rem); }
.sr-trust__item{ gap:.9rem; }
@media (max-width:1024px){
  .sr-trust__card.sr-trust__row, .sr-trust .sr-trust__row{ padding:1.35rem 1.5rem; }
}
@media (max-width:640px){
  .sr-trust__card.sr-trust__row, .sr-trust .sr-trust__row{ padding:1.15rem 1.15rem; }
}

/* ==================================================================
   V28 — hero: the Kumbh Amrit bottle is the primary focus.
   Scene enlarged to full hero height (its feathered top is empty, so
   the cap keeps clear air below the navbar); moved to the central-
   right area; FREE seal relocated into clean sky beside the cap so
   it no longer merges with the kalash. Prayer Library page subtitle.
   ================================================================== */
.hero-product--scene{ right:16%; height:100%; bottom:0; }
.sr-free-badge{ top:16%; right:36%; bottom:auto; }
@media (max-width:1366px){
  .hero-product--scene{ right:11%; height:96%; }
  .sr-free-badge{ right:35%; top:15%; }
}
@media (max-width:1180px){
  .hero-product--scene{ right:3%; height:84%; }
  .sr-free-badge{ right:40%; top:13%; }
}
@media (max-width:820px){
  .sr-free-badge{ top:auto; bottom:14%; right:8%; }
}

/* Prayer Library page: Devanagari subtitle under the H1. */
.san-mantra__hero-dev{ margin:.35rem 0 .5rem; font-size:1.05rem; color:var(--terracotta); letter-spacing:.02em; }

/* ==================================================================
   V29 — MY ACCOUNT (SANATANI dashboard) · login/register · OTP row
   ================================================================== */
/* Account shell: 2-col on desktop */
.san-account .woocommerce-MyAccount-navigation{ float:none; width:auto; }
.san-account .woocommerce-MyAccount-content{ float:none; width:auto; }
.san-account .san-page .woocommerce,
.woocommerce-account .san-page .woocommerce{
  display:grid; grid-template-columns:250px minmax(0,1fr); gap:clamp(1.4rem,2.6vw,2.2rem); align-items:start;
}
.san-acc-hero{ grid-column:1 / -1; display:flex; align-items:center; gap:1.1rem;
  background:#fff; border:1px solid rgba(201,154,69,.28); border-radius:12px;
  padding:1.3rem 1.5rem; box-shadow:0 12px 30px -26px rgba(32,37,34,.5); }
.san-acc-hero__avatar{ flex:0 0 62px; width:62px; height:62px; display:grid; place-items:center;
  border-radius:50%; background:var(--teal); color:#F4EFE2; font-family:var(--font-display);
  font-size:1.6rem; font-weight:500; }
.san-acc-hero__info h1{ margin:0 0 .3rem; font-family:var(--font-display); font-weight:500;
  font-size:clamp(1.3rem,2.4vw,1.7rem); color:var(--teal); }
.san-acc-hero__meta{ margin:0; font-size:.86rem; color:#6F766F; display:flex; gap:.5rem; flex-wrap:wrap; }
.san-acc-verified{ font-style:normal; color:#2F6B4F; font-weight:600; }

.woocommerce-account .woocommerce-MyAccount-navigation ul{ list-style:none; margin:0; padding: .5rem;
  background:#fff; border:1px solid rgba(201,154,69,.28); border-radius:12px; }
.woocommerce-account .woocommerce-MyAccount-navigation li{ margin:0; }
.woocommerce-account .woocommerce-MyAccount-navigation a{
  display:block; padding:.7rem .85rem; border-radius:8px; text-decoration:none;
  font-size:.9rem; font-weight:500; color:var(--charcoal); transition:background .25s, color .25s; }
.woocommerce-account .woocommerce-MyAccount-navigation a:hover{ background:var(--sand); color:var(--teal); }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a{ background:var(--teal); color:#F4EFE2; }
.woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--customer-logout a{ color:var(--terracotta); }
.woocommerce-account .woocommerce-MyAccount-navigation .woocommerce-MyAccount-navigation-link--customer-logout a:hover{ background:rgba(166,93,72,.1); }

/* Hide WooCommerce's default dashboard greeting paragraphs (replaced by our header + cards). */
.san-account-dashboard .woocommerce-MyAccount-content > p:nth-of-type(1),
.san-account-dashboard .woocommerce-MyAccount-content > p:nth-of-type(2){ display:none; }

.san-acc-grid{ display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.1rem; }
.san-acc-card{ background:#fff; border:1px solid rgba(201,154,69,.28); border-radius:12px; padding:1.15rem 1.25rem; }
.san-acc-card--wide{ grid-column:1 / -1; }
.san-acc-card h3{ margin:0 0 .6rem; font-family:var(--font-display); font-weight:500; font-size:1.02rem; color:var(--teal); }
.san-acc-card address{ font-style:normal; font-size:.88rem; line-height:1.7; color:#4A524D; margin-bottom:.6rem; }
.san-acc-stat{ margin:.2rem 0 .6rem; font-size:.92rem; color:#4A524D; }
.san-acc-stat strong{ font-size:1.5rem; color:var(--charcoal); font-family:var(--font-display); margin-right:.3rem; }
.san-acc-order{ display:grid; gap:.25rem; margin:0 0 .6rem; font-size:.88rem; color:#4A524D; }
.san-acc-order strong{ color:var(--charcoal); }
.san-acc-status{ display:inline-block; width:max-content; padding:.15rem .6rem; border-radius:99px; font-size:.72rem; font-weight:600; letter-spacing:.04em; background:var(--sand); color:var(--charcoal); }
.san-acc-status--processing{ background:rgba(57,123,122,.14); color:#2F6B4F; }
.san-acc-status--completed{ background:rgba(47,107,79,.14); color:#2F6B4F; }
.san-acc-status--cancelled,.san-acc-status--failed{ background:rgba(166,93,72,.12); color:#8A4634; }
.san-acc-link{ font-size:.82rem; font-weight:600; color:var(--teal); text-decoration:none; }
.san-acc-link:hover{ text-decoration:underline; }
.san-acc-empty{ text-align:center; padding:2.2rem 1.4rem; }
.san-acc-empty__icon{ display:inline-block; width:44px; color:var(--gold); margin-bottom:.6rem; }
.san-acc-empty__icon svg{ width:44px; height:44px; }
.san-acc-empty h3{ margin:0 0 .35rem; }
.san-acc-empty p{ margin:0 0 1.1rem; color:#6F766F; font-size:.92rem; }

/* Account inner tables & forms follow the design system */
.woocommerce-account .woocommerce-MyAccount-content table.shop_table{ border:1px solid rgba(201,154,69,.28); border-radius:12px; overflow:hidden; border-collapse:separate; border-spacing:0; }
.woocommerce-account .woocommerce-MyAccount-content table.shop_table th{ background:var(--sand); font-size:.74rem; letter-spacing:.1em; text-transform:uppercase; color:var(--teal); padding:.8rem .9rem; }
.woocommerce-account .woocommerce-MyAccount-content table.shop_table td{ padding:.85rem .9rem; font-size:.9rem; }
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-button{ background:var(--teal); color:#F4EFE2; border-radius:8px; padding:.5rem 1rem; font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.woocommerce-account .woocommerce-MyAccount-content input.input-text,
.woocommerce-account .woocommerce-MyAccount-content select{
  padding:.65rem .8rem; border:1px solid rgba(201,154,69,.5); border-radius:8px; background:var(--ivory); width:100%; }
.woocommerce-account .woocommerce-MyAccount-content button[type="submit"]{
  background:var(--teal); color:#F4EFE2; border:0; border-radius:8px; padding:.8rem 1.6rem;
  font-weight:600; letter-spacing:.08em; text-transform:uppercase; font-size:.8rem; cursor:pointer; }

/* Logged-out My Account: login card */
.woocommerce-account:not(.logged-in) .san-page .woocommerce{ display:block; max-width:460px; margin-inline:auto; }
.woocommerce-account:not(.logged-in) form.login,
.woocommerce-account:not(.logged-in) form.register{
  background:#fff; border:1px solid rgba(201,154,69,.3); border-radius:12px;
  padding:1.6rem 1.6rem; box-shadow:0 16px 40px -30px rgba(32,37,34,.5); }
.woocommerce-account:not(.logged-in) form .form-row{ margin-bottom:1rem; }
.woocommerce-account:not(.logged-in) form label{ display:block; margin-bottom:.35rem; font-size:.84rem; font-weight:600; }
.woocommerce-account:not(.logged-in) form input.input-text{
  width:100%; padding:.72rem .85rem; border:1px solid rgba(201,154,69,.5); border-radius:8px; background:var(--ivory); }
.woocommerce-account:not(.logged-in) form button[type="submit"]{
  width:100%; background:var(--teal); color:#F4EFE2; border:0; border-radius:8px; padding:.85rem;
  font-weight:600; letter-spacing:.1em; text-transform:uppercase; font-size:.82rem; cursor:pointer; }

@media (max-width:860px){
  .san-account .san-page .woocommerce,
  .woocommerce-account .san-page .woocommerce{ grid-template-columns:1fr; }
  .san-acc-grid{ grid-template-columns:1fr; }
  .san-acc-hero{ flex-direction:column; text-align:center; }
  .san-acc-hero__meta{ justify-content:center; }
}

/* OTP row at checkout */
.san-otp{ margin:.4rem 0 1rem; padding:1rem 1.1rem; background:var(--sand); border:1px solid rgba(201,154,69,.35); border-radius:10px; }
.san-otp__label{ margin:0 0 .55rem; font-size:.85rem; font-weight:600; color:var(--charcoal); }
.san-otp__row{ display:flex; gap:.6rem; flex-wrap:wrap; align-items:center; }
.san-otp__row .button{ background:var(--teal); color:#F4EFE2; border:0; border-radius:8px; padding:.6rem 1rem; font-size:.78rem; letter-spacing:.06em; cursor:pointer; }
.san-otp__row .button:disabled{ opacity:.55; cursor:not-allowed; }
.san-otp__input{ width:120px; text-align:center; letter-spacing:.35em; font-size:1rem; padding:.55rem .6rem;
  border:1px solid rgba(201,154,69,.5); border-radius:8px; background:#fff; }
.san-otp__status{ margin:.55rem 0 0; font-size:.8rem; color:#6F766F; }
.san-otp__status.is-ok{ color:#2F6B4F; font-weight:600; }
.san-otp__status.is-err{ color:#8A4634; }
.san-otp.is-verified .san-otp__row{ display:none; }

/* ==================================================================
   V30 — SHOP reference-match: compact product cards, tighter hero,
   styled result/sort row. Display-only.
   ================================================================== */

/* Hero: tighter band; keep the photo's subject (right side) always in view */
.sn-phero__copy{ padding-block:clamp(2rem,3.4vw,3.2rem); }
.sn-phero__media{ min-height:clamp(210px,21vw,300px); }
.sn-phero__media img{ object-position:right bottom; }

/* Result count + sort row */
.sh-main .woocommerce-result-count{ padding-top:.55rem; }
.sh-main .woocommerce-ordering{ margin:0 0 1.15rem; }
.sh-main .woocommerce-ordering select{
  padding:.5rem 2.1rem .5rem .95rem; border:1px solid #E3D9C3; border-radius:10px;
  background:#fff; font-size:.85rem; color:#3D443F; cursor:pointer;
}

/* Product grid: real grid instead of floated columns, equal-height cards */
.woocommerce ul.products{
  display:grid !important; grid-template-columns:repeat(3,1fr); gap:1.6rem;
  margin:0 0 2.4rem; padding:0; list-style:none;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after{ content:none !important; }
.woocommerce ul.products li.product{
  float:none !important; width:auto !important; margin:0 !important;
  display:flex; flex-direction:column; text-align:center;
  background:#fff; border:1px solid #EDE3CF; border-radius:16px;
  box-shadow:0 10px 26px rgba(31,58,50,.06); overflow:hidden;
  padding:0 0 1.15rem;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link{
  display:flex; flex-direction:column; align-items:center; width:100%;
  text-decoration:none;
}
.woocommerce ul.products li.product .woocommerce-LoopProduct-link > img{
  width:100%; height:225px; object-fit:contain; object-position:center;
  background:#FBF4E6; padding:1.05rem; margin:0 0 .95rem;
  border-bottom:1px solid #F3EADA; box-sizing:border-box;
}
.woocommerce ul.products li.product .san-card__cat{
  font-size:.66rem; letter-spacing:.18em; text-transform:uppercase;
  color:#B0803B; font-weight:600; margin:0 .9rem;
}
.woocommerce ul.products li.product .san-card__title{
  font-size:1.06rem; line-height:1.4; color:#1F3A32; margin:.35rem 1rem .1rem;
}
.woocommerce ul.products li.product .san-card__sub{
  margin:.05rem 1rem .4rem; font-size:.8rem;
}
/* Compact FREE + courier price on cards (full wording stays on the product page) */
.woocommerce ul.products li.product .price{ margin:.15rem 0 .6rem; color:#1F3A32; font-weight:600; }
.woocommerce ul.products li.product .san-kumbh-price{
  display:flex; flex-direction:column; align-items:center; gap:.3rem;
}
.woocommerce ul.products li.product .san-kumbh-price__free{
  font-family:inherit; font-size:.78rem; letter-spacing:.16em; font-weight:700;
  color:#8A6420; background:rgba(201,154,69,.16); padding:.3rem .85rem; border-radius:999px;
}
.woocommerce ul.products li.product .san-kumbh-price__charge{
  font-size:.8rem; font-weight:500; color:#5C635E; padding:0 .9rem;
}
.woocommerce ul.products li.product .san-kumbh-price__total{ display:none; }
.woocommerce ul.products li.product .san-rep-note--card{
  font-size:.66rem; color:#A7ADA8; margin:0 auto .6rem; max-width:30ch; padding:0 .8rem;
}
.woocommerce ul.products li.product .button{
  margin:auto auto 0; width:calc(100% - 2.3rem); justify-content:center; text-align:center;
}
@media (max-width:1023px){
  .woocommerce ul.products{ grid-template-columns:repeat(2,1fr); gap:1.2rem; }
}
@media (max-width:560px){
  .woocommerce ul.products{ grid-template-columns:1fr; }
  .woocommerce ul.products li.product .woocommerce-LoopProduct-link > img{ height:250px; }
}

/* ==================================================================
   V31 — Shop grid: category cards inside the product grid
   (reference placement). Chip + note styling.
   ================================================================== */
.woocommerce ul.products li.san-catcard .san-soon{
  display:inline-block; margin:.15rem auto .6rem;
  font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; font-weight:600;
  color:#7C837E; background:#F3EFE4; border:1px solid #E7DFCC;
  padding:.3rem .85rem; border-radius:999px;
}
.woocommerce ul.products li.san-catcard .san-card__sub{ color:#7A827C; }
.sh-grid__note{
  clear:both; text-align:center; font-size:.72rem; color:#A7ADA8; margin:1.4rem 0 0;
}

/* ==================================================================
   V32 — SHOP master brief: compact contained hero, sidebar polish,
   4-col compact grid, text-link CTA, mobile category strip,
   pagination style. Scoped to the shop where it changes shared parts.
   ================================================================== */

/* Breadcrumb: tighter above the hero */
body.woocommerce-shop .sn-crumbs{ padding:.75rem 0 .4rem; }

/* Hero: contained premium band (~200-260px), text ≈46% / image ≈54%,
   soft ivory blend between copy and photo. Contact/Cart heroes untouched. */
body.woocommerce-shop .sn-phero{
  max-width:var(--container,1320px); margin:0 auto;
  border-radius:16px; border:1px solid rgba(213,176,106,.28);
}
body.woocommerce-shop .sn-phero__grid{ grid-template-columns:minmax(300px,46%) 1fr; }
body.woocommerce-shop .sn-phero__copy{
  padding-block:clamp(1.7rem,2.8vw,2.5rem);
  padding-left:clamp(1.4rem,3vw,2.8rem);
  padding-right:clamp(1rem,2vw,1.6rem);
}
body.woocommerce-shop .sn-phero__copy h1{ font-size:clamp(1.8rem,2.6vw,2.5rem); }
body.woocommerce-shop .sn-phero__copy p{ font-size:.92rem; }
body.woocommerce-shop .sn-phero__rule{ margin:.85rem 0 .9rem; }
body.woocommerce-shop .sn-phero__media{ position:relative; min-height:clamp(190px,16.5vw,260px); }
body.woocommerce-shop .sn-phero__media::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:linear-gradient(90deg, var(--ivory) 0%, rgba(251,249,243,0) 24%);
}

/* Sidebar: warm ivory, compact items */
body.woocommerce-shop .sh-side__box{ background:#FBF9F3; }
body.woocommerce-shop .sh-cats a{ padding:.42rem .55rem; font-size:.82rem; }
body.woocommerce-shop .sh-help{ padding:1rem .9rem 0; }
body.woocommerce-shop .sh-help__img{ height:88px; }

/* Product area header */
.sh-main .woocommerce-result-count{ font-size:.8rem; padding-top:.5rem; }
.sh-main .woocommerce-ordering select{ font-size:.8rem; padding:.42rem 1.8rem .42rem .8rem; }

/* Grid: 4 columns desktop, compact gaps */
.sh-main ul.products{ grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:16px !important; margin-bottom:1.8rem; }

/* Cards: compact premium (brief §12–§16) */
.sh-main ul.products li.product{ border-radius:12px; padding:0 0 .85rem; }
.sh-main ul.products li.product .woocommerce-LoopProduct-link > img{
  height:auto; aspect-ratio:1/1; padding:.8rem; margin:0 0 .65rem;
}
.sh-main ul.products li.product .san-card__cat{ font-size:.58rem; }
.sh-main ul.products li.product .san-card__title{ font-size:.9rem; margin:.28rem .65rem .05rem; }
.sh-main ul.products li.product .san-card__sub{ font-size:.72rem; margin:.05rem .65rem .35rem; }
.sh-main ul.products li.product .price{ margin:.1rem 0 .5rem; font-size:.85rem; }
.sh-main ul.products li.product .san-kumbh-price__free{ font-size:.66rem; padding:.24rem .7rem; }
.sh-main ul.products li.product .san-kumbh-price__charge{ font-size:.72rem; padding:0 .65rem; }
.sh-main ul.products li.product .san-rep-note--card{ font-size:.6rem; margin:0 auto .4rem; }
.sh-main ul.products li.product .san-soon{ font-size:.6rem; padding:.24rem .7rem; margin-bottom:.4rem; }

/* CTA: compact uppercase text link instead of a heavy block button */
.sh-main ul.products li.product a.button{
  margin:auto auto 0; width:auto; background:none !important; border:0; box-shadow:none;
  color:var(--teal,#0F5558) !important; font-size:.7rem; font-weight:700;
  letter-spacing:.16em; text-transform:uppercase;
  padding:.3rem .1rem; border-bottom:1px solid rgba(15,85,88,.4); border-radius:0; min-height:0;
}
.sh-main ul.products li.product a.button:hover{
  color:var(--teal-soft,#397B7A) !important; border-color:var(--teal-soft,#397B7A);
}

/* Pagination (compact, future-proof) */
.sh-main .woocommerce-pagination{ text-align:center; margin:0 0 1rem; }
.sh-main .woocommerce-pagination ul.page-numbers{ display:inline-flex; gap:.35rem; list-style:none; margin:0; padding:0; border:0; }
.sh-main .woocommerce-pagination ul.page-numbers li{ border:0; overflow:visible; }
.sh-main .woocommerce-pagination a.page-numbers,
.sh-main .woocommerce-pagination span.page-numbers{
  display:inline-flex; align-items:center; justify-content:center; min-width:34px; height:34px; padding:0 .5rem;
  border:1px solid rgba(213,176,106,.45); border-radius:8px; background:#fff;
  color:var(--charcoal,#2A2E2B); font-size:.8rem; text-decoration:none;
}
.sh-main .woocommerce-pagination span.current{ background:var(--teal,#0F5558); color:#fff; border-color:var(--teal,#0F5558); }

/* Responsive */
@media (max-width:1200px){
  .sh-main ul.products{ grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
}
@media (max-width:860px){
  .sh-layout{ grid-template-columns:1fr !important; }
  /* Sidebar collapses to a compact horizontal category strip — no giant
     sidebar eating the mobile viewport (brief §28). */
  body.woocommerce-shop .sh-side{ grid-template-columns:1fr !important; gap:.8rem; }
  body.woocommerce-shop .sh-side__box{ padding:.8rem .8rem .6rem; }
  body.woocommerce-shop .sh-side__title{ margin-bottom:.5rem; }
  body.woocommerce-shop .sh-cats{ display:flex; overflow-x:auto; gap:.4rem; padding-bottom:.25rem; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  body.woocommerce-shop .sh-cats::-webkit-scrollbar{ display:none; }
  body.woocommerce-shop .sh-cats li{ flex:0 0 auto; }
  body.woocommerce-shop .sh-cats a{ white-space:nowrap; border:1px solid rgba(213,176,106,.4); border-radius:999px; padding:.4rem .8rem; font-size:.78rem; }
  body.woocommerce-shop .sh-cats__dot{ display:none; }
  body.woocommerce-shop .sh-help{ display:none; }
  .sh-main ul.products{ grid-template-columns:repeat(2,minmax(0,1fr)) !important; gap:12px !important; }
  .sh-main ul.products li.product .san-card__title{ font-size:.85rem; }
  body.woocommerce-shop .sn-phero{ border-radius:12px; }
}
@media (max-width:400px){
  .sh-main ul.products{ grid-template-columns:1fr !important; }
}

/* V32.1 — mobile overflow fix: the nowrap category pill strip must not
   expand the stacked grid track (auto min-size → minmax(0,1fr)). */
@media (max-width:860px){
  .sh-layout{ grid-template-columns:minmax(0,1fr) !important; }
  .sh-side, .sh-main{ min-width:0; }
}
@media (max-width:400px){
  .sh-main ul.products{ grid-template-columns:minmax(0,1fr) !important; }
}

/* V32.2 — the sidebar's own grid track also needs a zero min so the
   nowrap pill strip scrolls instead of expanding the page. */
@media (max-width:860px){
  body.woocommerce-shop .sh-side{ grid-template-columns:minmax(0,1fr) !important; }
  body.woocommerce-shop .sh-side > *{ min-width:0; max-width:100%; }
}

/* V32.3 — owner request: no prices on grid cards for not-yet-available
   (out of stock) products. Kumbh Amrit keeps its FREE + courier display.
   Product pages still show the price. */
.woocommerce ul.products li.product.outofstock .price{ display:none; }

/* ==================================================================
   V33 — Mockup card design: full-bleed photo block, name, subtitle,
   (Kumbh only) teal ₹87. No tags, buttons, per-card notes.
   ================================================================== */
.sh-main ul.products li.product,
.woocommerce ul.products li.product{ padding:0 0 1.05rem; }
.woocommerce ul.products li.product .woocommerce-LoopProduct-link > img{
  aspect-ratio:1/1; height:auto; width:100%; object-fit:cover; object-position:center;
  padding:0; margin:0 0 .8rem; background:none; border-bottom:0; border-radius:12px 12px 0 0;
}
.sh-main ul.products li.product .woocommerce-LoopProduct-link > img{
  padding:0; margin:0 0 .8rem;
}
.woocommerce ul.products li.product .san-card__title{
  font-family:inherit; font-weight:600; color:#22302B; font-size:.95rem; margin:.1rem .8rem 0;
}
.sh-main ul.products li.product .san-card__title{ font-size:.95rem; }
.woocommerce ul.products li.product .san-card__sub,
.sh-main ul.products li.product .san-card__sub{
  font-size:.75rem; color:#8A918B; margin:.2rem .8rem .15rem;
}
.woocommerce ul.products li.product .san-card__price{
  display:block; margin:.25rem 0 0; color:var(--teal,#0F5558); font-weight:700; font-size:.95rem;
}
@media (max-width:860px){
  .sh-main ul.products li.product .san-card__title{ font-size:.88rem; }
}

/* ==================================================================
   V34 — Locked +91 prefix on every mobile field (site ships India-only)
   ================================================================== */
.san-tel{ position:relative; display:block; }
.san-tel__cc{
  position:absolute; left:1px; top:1px; bottom:1px; display:flex; align-items:center;
  padding:0 .75rem; border-radius:9px 0 0 9px;
  background:#F3EFE4; border-right:1px solid rgba(213,176,106,.42);
  font-size:.9rem; font-weight:600; color:#5C635E; pointer-events:none; user-select:none;
}
.san-tel input{ padding-left:3.6rem !important; }
.woocommerce form .form-row .san-tel{ width:100%; }
.woocommerce form .form-row .san-tel input{ width:100%; }

/* ==================================================================
   V35 — Cash on Delivery ceiling notes
   ================================================================== */
.san-cod-hint{
  display:flex; align-items:flex-start; gap:.5rem;
  margin:.9rem 0 0; font-size:.78rem; line-height:1.65; color:#7C837E;
}
.san-cod-hint__dot{
  flex:0 0 6px; width:6px; height:6px; margin-top:.5rem;
  border-radius:50%; background:var(--gold,#C99A45);
}
.woocommerce-info.san-cod-note{
  border-top-color:var(--gold,#C99A45);
  background:#FBF7EE;
}
.woocommerce-info.san-cod-note a{ color:var(--teal,#0F5558); font-weight:600; }

/* ==================================================================
   V36 — Account-required notice, address helpers, delivery pin
   ================================================================== */
.san-authnote{
  background:#FBF7EE; border:1px solid rgba(213,176,106,.42); border-left:3px solid var(--gold,#C99A45);
  border-radius:12px; padding:1.1rem 1.3rem; margin:0 0 1.6rem;
}
.san-authnote strong{ display:block; font-family:var(--font-display,Georgia,serif); font-weight:500;
  font-size:1.05rem; color:var(--teal,#0F5558); margin-bottom:.35rem; }
.san-authnote p{ margin:0; font-size:.88rem; line-height:1.7; color:#5C635E; }
.san-authnote__links{ margin-top:.7rem !important; display:flex; gap:.6rem; align-items:center; flex-wrap:wrap; }
.san-authnote__links a{ color:var(--teal,#0F5558); font-weight:600; text-decoration:underline; }
.san-authnote__links span{ color:#C3C8C4; }

.san-lostpw{ margin:.5rem 0 0 !important; font-size:.85rem; }
.san-lostpw a{ color:var(--teal,#0F5558); font-weight:600; }

.san-pin-note{ margin:.35rem 0 0 !important; font-size:.78rem; color:var(--teal-soft,#397B7A); font-weight:600; }

.san-geo{
  background:#FBF7EE; border:1px solid rgba(213,176,106,.4); border-radius:12px;
  padding:1rem 1.1rem; margin:1.2rem 0 .4rem;
}
.san-geo__head{ display:flex; gap:.7rem; align-items:flex-start; }
.san-geo__icon{ flex:0 0 auto; color:var(--gold,#C99A45); font-size:.7rem; line-height:1.6rem; }
.san-geo__head strong{ display:block; font-size:.92rem; color:var(--charcoal,#2A2E2B); }
.san-geo__head p{ margin:.2rem 0 0; font-size:.8rem; line-height:1.65; color:#6F766F; }
.san-geo__btn{
  margin-top:.8rem; background:#fff; border:1px solid var(--teal,#0F5558); color:var(--teal,#0F5558);
  padding:.6rem 1.1rem; border-radius:9px; font-size:.8rem; font-weight:600; cursor:pointer;
  letter-spacing:.03em; transition:background .2s, color .2s;
}
.san-geo__btn:hover:not(:disabled){ background:var(--teal,#0F5558); color:#fff; }
.san-geo__btn:disabled{ opacity:.6; cursor:default; }
.san-geo__status{ margin:.55rem 0 0 !important; font-size:.8rem; color:#6F766F; }
.san-geo__status.is-ok{ color:#2F855A; font-weight:600; }
.san-geo__status.is-warn{ color:#A65D48; }

/* ==================================================================
   V37 — Map location picker (Zepto/Blinkit style)
   ================================================================== */
.san-geo__actions{ display:flex; gap:.6rem; flex-wrap:wrap; margin-top:.85rem; }
.san-geo__btn--primary{ background:var(--teal,#0F5558); color:#fff; }
.san-geo__btn--primary:hover:not(:disabled){ background:var(--teal-soft,#397B7A); color:#fff; }

.san-map{ position:fixed; inset:0; z-index:99999; background:rgba(20,30,26,.55);
  display:flex; align-items:flex-end; justify-content:center; }
.san-map[hidden]{ display:none; }
.san-map__sheet{
  background:#fff; width:100%; max-width:620px; max-height:92vh;
  border-radius:18px 18px 0 0; display:flex; flex-direction:column; overflow:hidden;
  box-shadow:0 -12px 40px rgba(0,0,0,.28);
}
@media (min-width:700px){
  .san-map{ align-items:center; }
  .san-map__sheet{ border-radius:18px; max-height:86vh; }
}
.san-map__head{ display:flex; align-items:center; gap:1rem; padding:1rem 1.2rem;
  border-bottom:1px solid #EDE7DA; }
.san-map__head strong{ font-family:var(--font-display,Georgia,serif); font-weight:500;
  font-size:1.05rem; color:var(--teal,#0F5558); }
.san-map__close{ margin-left:auto; background:none; border:0; font-size:1.6rem; line-height:1;
  color:#8B9089; cursor:pointer; padding:0 .2rem; }
.san-map__close:hover{ color:var(--charcoal,#2A2E2B); }

.san-map__search{ position:relative; display:flex; gap:.5rem; padding:.85rem 1.2rem; }
.san-map__search input{ flex:1; padding:.65rem .85rem; border:1px solid #E3D9C3;
  border-radius:9px; font-size:.88rem; background:#FBF9F3; }
.san-map__search input:focus{ outline:2px solid rgba(15,85,88,.16); border-color:var(--teal-soft,#397B7A); }
.san-map__search button{ flex:0 0 auto; padding:.65rem .9rem; border:1px solid var(--teal,#0F5558);
  background:#fff; color:var(--teal,#0F5558); border-radius:9px; font-size:.8rem; font-weight:600; cursor:pointer; }
.san-map__search button:hover{ background:var(--teal,#0F5558); color:#fff; }
.san-map__results{ position:absolute; top:calc(100% - .4rem); left:1.2rem; right:1.2rem; z-index:5;
  margin:0; padding:.3rem; list-style:none; background:#fff; border:1px solid #EDE7DA;
  border-radius:10px; box-shadow:0 12px 28px -14px rgba(0,0,0,.3); max-height:220px; overflow:auto; }
.san-map__results[hidden]{ display:none; }
.san-map__results li{ padding:.55rem .7rem; border-radius:7px; font-size:.82rem;
  line-height:1.5; color:#3A4741; cursor:pointer; }
.san-map__results li:hover{ background:var(--ivory,#FBF9F3); color:var(--teal,#0F5558); }

.san-map__canvas{ position:relative; flex:1; min-height:300px; height:44vh; background:#EDE9E0; }
.san-map__crosshair{ position:absolute; inset:0; z-index:900; pointer-events:none;
  display:flex; align-items:center; justify-content:center; }
.san-map__crosshair span{
  position:relative; display:block; width:26px; height:26px; margin-bottom:26px;
  background:var(--teal,#0F5558); border:3px solid #fff; border-radius:50% 50% 50% 0;
  transform:rotate(-45deg); box-shadow:0 6px 14px -4px rgba(0,0,0,.45);
}
.san-map__crosshair span::after{ content:""; position:absolute; inset:7px; background:#fff; border-radius:50%; }

.san-map__foot{ padding:1rem 1.2rem 1.2rem; border-top:1px solid #EDE7DA; background:#fff; }
.san-map__label{ margin:0 0 .2rem; font-size:.68rem; letter-spacing:.16em; text-transform:uppercase; color:#8B9089; }
.san-map__addr{ margin:0 0 .85rem; font-size:.88rem; line-height:1.6; color:#2A2E2B;
  max-height:3.2rem; overflow:hidden; }
.san-map__confirm{ width:100%; padding:.9rem 1rem; border:0; border-radius:10px;
  background:var(--teal,#0F5558); color:#fff; font-size:.88rem; font-weight:700;
  letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.san-map__confirm:disabled{ opacity:.5; cursor:default; }
.san-map__confirm:hover:not(:disabled){ background:var(--teal-soft,#397B7A); }
.leaflet-container{ font:inherit; }

/* ==================================================================
   V38 — My Account: password change fieldset + show/hide toggle
   The theme does not inherit WooCommerce's own positioning rules, so
   <fieldset> fell back to the browser's groove border and the
   .show-password-input toggle rendered as a tiny default button.
   ================================================================== */
.woocommerce-account form fieldset,
.woocommerce-EditAccountForm fieldset{
  border:1px solid rgba(213,176,106,.42);
  border-radius:14px;
  background:#FBF9F3;
  padding:1.5rem 1.5rem 1.1rem;
  margin:2.2rem 0 1.5rem;
}
.woocommerce-account form fieldset legend,
.woocommerce-EditAccountForm fieldset legend{
  width:auto; padding:0 .65rem; margin-left:-.35rem; float:none;
  font-family:var(--font-display,Georgia,serif); font-weight:500;
  font-size:1.05rem; letter-spacing:.01em; color:var(--teal,#0F5558);
  border:0; background:none;
}
.woocommerce-account form fieldset .form-row:last-child{ margin-bottom:.4rem; }

/* Password field + the eye toggle that sits inside it */
.password-input{ position:relative; display:block; width:100%; }
.password-input input,
.password-input input.input-text{
  width:100%; padding-right:3rem !important;
}
.show-password-input{
  position:absolute; right:.9rem; top:50%; transform:translateY(-50%);
  width:24px; height:24px; padding:0; margin:0;
  border:0 !important; border-radius:6px; background-color:transparent !important;
  cursor:pointer; opacity:.5; transition:opacity .2s ease;
  background-repeat:no-repeat; background-position:center; background-size:21px 21px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F5558' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
  font-size:0; line-height:0; color:transparent; text-indent:-9999px;
  appearance:none; -webkit-appearance:none;
}
.show-password-input:hover{ opacity:.85; }
.show-password-input:focus-visible{ opacity:1; outline:2px solid rgba(15,85,88,.35); outline-offset:2px; }
.show-password-input.display-password{
  opacity:1;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230F5558' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3Cpath d='M3 3l18 18'/%3E%3C/svg%3E");
}

/* WooCommerce's password strength meter, in brand colours */
.woocommerce-password-strength{
  margin-top:.45rem; padding:.45rem .7rem; border-radius:8px;
  font-size:.76rem; font-weight:600; letter-spacing:.02em; text-align:left;
}
.woocommerce-password-strength.short,
.woocommerce-password-strength.bad{ background:rgba(166,93,72,.12); color:#A65D48; }
.woocommerce-password-strength.good{ background:rgba(201,154,69,.16); color:#8A6420; }
.woocommerce-password-strength.strong{ background:rgba(47,133,90,.12); color:#2F855A; }
.woocommerce-password-hint{ display:block; margin-top:.4rem; font-size:.76rem; line-height:1.6; color:#7C837E; }

/* ==================================================================
   V39 — Product reviews section
   ================================================================== */
.san-reviews{ padding:clamp(2.4rem,5vw,4rem) 0 clamp(1.6rem,3vw,2.4rem); background:var(--ivory,#FBF9F3); }
.san-reviews__summary{
  display:flex; align-items:center; gap:1.4rem; flex-wrap:wrap; justify-content:center;
  background:#fff; border:1px solid rgba(213,176,106,.4); border-radius:14px;
  padding:1.3rem 1.6rem; margin:0 auto 1.8rem; max-width:640px;
}
.san-reviews__score{ display:flex; align-items:center; gap:.75rem; flex-wrap:wrap; }
.san-reviews__score strong{ font-family:var(--font-display,Georgia,serif); font-size:2.1rem; font-weight:500; color:var(--teal,#0F5558); line-height:1; }
.san-reviews__stars{ color:var(--gold,#C99A45); font-size:1.05rem; letter-spacing:.12em; }
.san-reviews__stars i{ color:#E0DACB; font-style:normal; }
.san-reviews__count{ font-size:.82rem; color:#7C837E; }
.san-reviews__note{ margin:0; font-size:.78rem; color:#7C837E; }
.san-reviews__empty{ text-align:center; padding:1.6rem 1rem 2rem; color:#7C837E; }
.san-reviews__empty svg{ width:40px; height:40px; color:var(--gold,#C99A45); opacity:.6; }
.san-reviews__empty p{ margin:.7rem auto 0; max-width:46ch; font-size:.92rem; line-height:1.75; }
.san-reviews__body{ max-width:760px; margin:0 auto; }

/* WooCommerce review list + form, in brand */
.san-reviews #reviews .commentlist{ list-style:none; margin:0 0 1.6rem; padding:0; display:grid; gap:.9rem; }
.san-reviews #reviews .commentlist li{
  background:#fff; border:1px solid rgba(213,176,106,.34); border-radius:12px; padding:1.1rem 1.3rem;
}
.san-reviews #reviews .comment_container{ display:flex; gap:.9rem; align-items:flex-start; }
.san-reviews #reviews .comment_container img.avatar{
  width:42px; height:42px; border-radius:50%; flex:0 0 42px; border:1px solid rgba(213,176,106,.4);
}
.san-reviews #reviews .comment-text{ flex:1; min-width:0; }
.san-reviews #reviews .woocommerce-review__author{ font-weight:700; color:var(--charcoal,#2A2E2B); font-size:.92rem; }
.san-reviews #reviews .woocommerce-review__published-date{ font-size:.76rem; color:#8B9089; }
.san-reviews #reviews .woocommerce-review__verified{
  display:inline-block; margin-left:.4rem; padding:.14rem .5rem; border-radius:999px;
  background:rgba(47,133,90,.12); color:#2F855A; font-size:.66rem; font-weight:700; font-style:normal;
  letter-spacing:.04em; text-transform:uppercase;
}
.san-reviews #reviews .star-rating{ color:var(--gold,#C99A45); margin:.2rem 0 .45rem; }
.san-reviews #reviews .description p{ margin:0 0 .5rem; font-size:.92rem; line-height:1.75; color:#3A4741; }

.san-reviews #review_form_wrapper{
  background:#fff; border:1px solid rgba(213,176,106,.4); border-radius:14px; padding:1.4rem 1.6rem;
}
.san-reviews #reviews .comment-reply-title{
  display:block; font-family:var(--font-display,Georgia,serif); font-weight:500;
  font-size:1.15rem; color:var(--teal,#0F5558); margin-bottom:.4rem;
}
.san-reviews #reviews .comment-notes{ font-size:.82rem; color:#7C837E; margin-bottom:1rem; }
.san-reviews #reviews .comment-form-rating label{ display:block; font-size:.85rem; font-weight:600; margin-bottom:.3rem; }
.san-reviews #reviews p.stars a{ color:var(--gold,#C99A45); }
.san-reviews #reviews .comment-form-comment label,
.san-reviews #reviews .comment-form-author label,
.san-reviews #reviews .comment-form-email label{ display:block; font-size:.85rem; font-weight:600; margin-bottom:.3rem; color:var(--charcoal,#2A2E2B); }
.san-reviews #reviews textarea,
.san-reviews #reviews input[type=text],
.san-reviews #reviews input[type=email]{
  width:100%; padding:.75rem .9rem; border:1px solid #E3D9C3; border-radius:10px;
  background:#FBF9F3; font-size:.92rem; font-family:inherit;
}
.san-reviews #reviews textarea:focus,
.san-reviews #reviews input:focus{ outline:2px solid rgba(15,85,88,.16); border-color:var(--teal-soft,#397B7A); }
.san-reviews #reviews .form-submit input[type=submit]{
  background:var(--teal,#0F5558); color:#fff; border:0; border-radius:10px;
  padding:.85rem 1.8rem; font-size:.8rem; font-weight:700; letter-spacing:.12em;
  text-transform:uppercase; cursor:pointer;
}
.san-reviews #reviews .form-submit input[type=submit]:hover{ background:var(--teal-soft,#397B7A); }
.san-reviews #reviews .woocommerce-verification-required{
  background:#FBF7EE; border:1px solid rgba(213,176,106,.4); border-left:3px solid var(--gold,#C99A45);
  border-radius:10px; padding:1rem 1.2rem; font-size:.88rem; line-height:1.7; color:#5C635E; margin:0;
}
@media (max-width:600px){
  .san-reviews__summary{ flex-direction:column; text-align:center; gap:.8rem; }
  .san-reviews #review_form_wrapper{ padding:1.1rem 1.1rem; }
}

/* V39.1 — our section heading and empty state already say this. */
.san-reviews .woocommerce-Reviews-title,
.san-reviews .woocommerce-noreviews{ display:none !important; }
.san-reviews #reviews #comments:empty{ display:none; }
.san-reviews .woocommerce-verification-required{ text-align:center; }

/* ==================================================================
   V40 — "Added to cart" toast
   ================================================================== */
.san-toast{
  position:fixed; z-index:9998; right:1.25rem; bottom:1.25rem; max-width:340px;
  display:flex; align-items:flex-start; gap:.75rem;
  background:#fff; border:1px solid rgba(213,176,106,.5); border-left:3px solid var(--teal,#0F5558);
  border-radius:12px; padding:.9rem 1rem; box-shadow:0 16px 38px -16px rgba(15,85,88,.4);
  opacity:0; transform:translateY(14px); transition:opacity .3s ease, transform .3s var(--ease-lux,cubic-bezier(.22,1,.36,1));
}
.san-toast.is-in{ opacity:1; transform:none; }
.san-toast[hidden]{ display:none; }
.san-toast__tick{
  flex:0 0 26px; width:26px; height:26px; border-radius:50%;
  background:rgba(47,133,90,.13); color:#2F855A; display:grid; place-items:center;
}
.san-toast__tick svg{ width:15px; height:15px; }
.san-toast__body{ min-width:0; }
.san-toast__body strong{ display:block; font-size:.9rem; color:var(--charcoal,#2A2E2B); }
.san-toast__body [data-san-toast-item]{
  display:block; font-size:.8rem; line-height:1.5; color:#7C837E; margin-top:.1rem;
  overflow:hidden; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
}
.san-toast__links{ display:flex; gap:.9rem; margin-top:.55rem; }
.san-toast__links a{ font-size:.78rem; font-weight:600; letter-spacing:.02em;
  color:var(--teal,#0F5558); text-decoration:underline; }
.san-toast__links a:hover{ color:var(--teal-soft,#397B7A); }
.san-toast__go{ color:var(--gold-dark,#8A6420) !important; }
.san-toast__close{
  position:absolute; top:.35rem; right:.5rem; background:none; border:0;
  font-size:1.15rem; line-height:1; color:#B9BFB9; cursor:pointer; padding:.15rem;
}
.san-toast__close:hover{ color:var(--charcoal,#2A2E2B); }
@media (max-width:600px){
  .san-toast{ left:.75rem; right:.75rem; bottom:.75rem; max-width:none; }
}
/* The floating WhatsApp button sits bottom-right too — lift the toast above it */
@media (min-width:601px){
  .san-toast{ bottom:5.5rem; }
}

/* ============================================================
   V41 — Motion layer
   Subtle, premium, and opt-in: the `san-anim` class is added to
   <html> by JavaScript, so with JS disabled (or with
   prefers-reduced-motion) nothing is ever hidden.
   ============================================================ */

.san-anim .sr-rv{
  opacity:0;
  transform:translateY(18px);
}
.san-anim .sr-rv.sr-in{
  opacity:1;
  transform:none;
  transition:opacity .6s cubic-bezier(.22,.61,.36,1),
             transform .6s cubic-bezier(.22,.61,.36,1);
  transition-delay:var(--sr-d,0ms);
}

/* --- Hover: cards lift, images breathe ------------------------------- */
.sh-card,.san-card,li.product,.sr-trust__card,.sr-cats__item,.sr-collections__item{
  transition:transform .3s cubic-bezier(.22,.61,.36,1), box-shadow .3s ease;
}
.sh-card:hover,.san-card:hover,li.product:hover,
.sr-cats__item:hover,.sr-collections__item:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 34px rgba(42,46,43,.10);
}
/* The zoom has to be clipped by the link that wraps the image, otherwise a
   scaled photo spills over its neighbours. */
li.product > a.woocommerce-loop-product__link,
.sh-card__media,.san-card__media,
.sr-cats__item a,.sr-collections__item a{
  display:block; overflow:hidden;
}
li.product img,.sh-card img,.san-card img,
.sr-cats__item img,.sr-collections__item img{
  transition:transform .55s cubic-bezier(.22,.61,.36,1);
  will-change:transform;
}
li.product:hover img,.sh-card:hover img,.san-card:hover img,
.sr-cats__item:hover img,.sr-collections__item:hover img{ transform:scale(1.04); }

/* --- Buttons: press feedback ----------------------------------------- */
.button,.wp-element-button,.single_add_to_cart_button,
.sn-btn,.sr-btn,.san-btn,button[type=submit],input[type=submit]{
  transition:background-color .22s ease, color .22s ease,
             border-color .22s ease, box-shadow .22s ease,
             transform .12s ease;
}
.button:active,.wp-element-button:active,.single_add_to_cart_button:active,
.sn-btn:active,.sr-btn:active,.san-btn:active,
button[type=submit]:active,input[type=submit]:active{ transform:translateY(1px); }

/* --- Links and nav ---------------------------------------------------- */
a{ transition:color .2s ease, opacity .2s ease; }
.site-header a,.sn-nav a{ transition:color .2s ease; }

/* --- Form fields ------------------------------------------------------ */
input[type=text],input[type=email],input[type=tel],input[type=number],
input[type=password],input[type=search],textarea,select{
  transition:border-color .2s ease, box-shadow .2s ease, background-color .2s ease;
}

/* --- Respect the user's system setting -------------------------------- */
@media (prefers-reduced-motion:reduce){
  .san-anim .sr-rv,.san-anim .sr-rv.sr-in{
    opacity:1; transform:none; transition:none;
  }
  .sh-card,.san-card,li.product,.sr-trust__card,
  .sr-cats__item,.sr-collections__item,
  .sh-card img,.san-card img,li.product img,
  .button,.wp-element-button,.single_add_to_cart_button,
  .sn-btn,.sr-btn,.san-btn,a{ transition:none !important; }
  .sh-card:hover,.san-card:hover,li.product:hover,
  .sr-cats__item:hover,.sr-collections__item:hover{ transform:none; }
  .sh-card:hover img,.san-card:hover img,li.product:hover img{ transform:none; }
}
/* ============================================================
   V42 — "What happens next" panel (Track Order / order received /
   My Account order view)
   ============================================================ */

.san-tstat{
  margin:0 0 1.9rem;
  padding:1.35rem 1.5rem 1.5rem;
  border:1px solid #E6DFCF;
  border-left:4px solid var(--gold,#C99A45);
  border-radius:14px;
  background:linear-gradient(180deg,#FDFBF6 0%,#F8F4EA 100%);
}
.san-tstat--done{ border-left-color:#2F7D62; }
.san-tstat--off { border-left-color:#B08A8A; background:#FAF6F5; }

.san-tstat__head{ display:flex; gap:1rem; align-items:flex-start; }
.san-tstat__icon{
  flex:0 0 auto; width:42px; height:42px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:rgba(201,154,69,.13); color:var(--gold-dark,#8A6420);
}
.san-tstat--done .san-tstat__icon{ background:rgba(47,125,98,.12); color:#2F7D62; }
.san-tstat--off  .san-tstat__icon{ background:rgba(176,138,138,.16); color:#8A5A5A; }
.san-tstat__icon svg{ width:21px; height:21px; }

.san-tstat__copy{ min-width:0; }
.san-tstat__title{
  display:block; font-family:var(--serif,Georgia,'Times New Roman',serif);
  font-size:1.2rem; line-height:1.3; color:var(--teal,#0F5558); margin-bottom:.35rem;
}
.san-tstat__text{ margin:0; font-size:.94rem; line-height:1.6; color:var(--charcoal,#2A2E2B); }
.san-tstat__hi{
  margin:.5rem 0 0; font-size:.9rem; line-height:1.7;
  color:var(--gold-dark,#8A6420);
}

/* --- Four-step progress ---------------------------------------------- */
.san-tstat__steps{
  list-style:none; margin:1.35rem 0 0; padding:0;
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr));
  counter-reset:none;
}
.san-tstat__steps li{
  position:relative; text-align:center; padding-top:1.5rem; min-width:0;
}
/* connecting line */
.san-tstat__steps li::before{
  content:""; position:absolute; top:8px; left:-50%; width:100%; height:2px;
  background:#E6DFCF;
}
.san-tstat__steps li:first-child::before{ display:none; }
.san-tstat__steps li.is-done::before,
.san-tstat__steps li.is-now::before{ background:var(--gold,#C99A45); }

.san-tstat__dot{
  position:absolute; top:2px; left:50%; transform:translateX(-50%);
  width:14px; height:14px; border-radius:50%;
  background:#fff; border:2px solid #E6DFCF; box-sizing:border-box;
}
.san-tstat__steps li.is-done .san-tstat__dot{
  background:var(--gold,#C99A45); border-color:var(--gold,#C99A45);
}
.san-tstat__steps li.is-now .san-tstat__dot{
  background:var(--gold,#C99A45); border-color:var(--gold,#C99A45);
  box-shadow:0 0 0 4px rgba(201,154,69,.22);
}
.san-tstat__label{
  display:block; font-size:.76rem; letter-spacing:.045em; text-transform:uppercase;
  color:#8B8578;
}
.san-tstat__steps li.is-done .san-tstat__label,
.san-tstat__steps li.is-now .san-tstat__label{
  color:var(--teal,#0F5558); font-weight:600;
}

.san-tstat__courier{
  display:flex; flex-wrap:wrap; gap:.4rem 1.6rem;
  margin:1.25rem 0 0; padding-top:.9rem; border-top:1px solid #EDE7DA;
  font-size:.88rem; color:var(--charcoal,#2A2E2B);
}
.san-tstat__help{
  margin:.85rem 0 0; font-size:.86rem; color:#6F6A5F;
}
.san-tstat__help a{ color:var(--teal,#0F5558); font-weight:600; }

.san-track-hint{
  margin:0 0 1.25rem; padding:.85rem 1.1rem;
  border-radius:10px; background:#F8F4EA; border:1px solid #EDE7DA;
  font-size:.9rem; line-height:1.6; color:#5F5A50;
}

@media (max-width:600px){
  .san-tstat{ padding:1.15rem 1.05rem 1.25rem; }
  .san-tstat__head{ gap:.8rem; }
  .san-tstat__icon{ width:36px; height:36px; }
  .san-tstat__icon svg{ width:18px; height:18px; }
  .san-tstat__title{ font-size:1.06rem; }
  .san-tstat__label{ font-size:.66rem; letter-spacing:.03em; }
  .san-tstat__courier{ gap:.3rem; flex-direction:column; }
}

@media (prefers-reduced-motion:reduce){
  .san-tstat__steps li.is-now .san-tstat__dot{ box-shadow:none; }
}

/* --- WooCommerce's own tracking line + form button -------------------- */
/* Woo wraps the order number/date/status in <mark>, which browsers paint
   highlighter-yellow. Keep the emphasis, lose the highlighter. */
.woocommerce-order-overview__order mark,
.woocommerce mark,
mark.order-number,mark.order-date,mark.order-status{
  background:transparent;
  color:var(--teal,#0F5558);
  font-weight:600;
  padding:0;
}
.track_order p:first-of-type,
.woocommerce-form-track-order p:first-of-type{ color:#6F6A5F; }

.track_order .button,
.woocommerce-form-track-order .button,
.track_order button[type=submit],
.woocommerce-form-track-order button[type=submit]{
  display:inline-flex; align-items:center; justify-content:center;
  min-width:170px; padding:.85rem 1.7rem;
  background:var(--teal,#0F5558); color:#fff;
  border:1px solid var(--teal,#0F5558); border-radius:10px;
  font-size:.82rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase;
  cursor:pointer;
}
.track_order .button:hover,
.woocommerce-form-track-order .button:hover,
.track_order button[type=submit]:hover,
.woocommerce-form-track-order button[type=submit]:hover{
  background:var(--teal-soft,#397B7A); border-color:var(--teal-soft,#397B7A); color:#fff;
}
/* ============================================================
   V43 — Full order details on the Track Order result
   ============================================================ */

.san-odet{
  margin:1.9rem 0 0;
  padding:1.4rem 1.5rem 1.5rem;
  border:1px solid #EDE7DA;
  border-radius:14px;
  background:#FDFBF6;
}
.san-odet__h{
  margin:0 0 1.1rem;
  font-family:var(--serif,Georgia,'Times New Roman',serif);
  font-size:1.22rem; color:var(--teal,#0F5558);
}
.san-odet__grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(170px,1fr));
  gap:.95rem 1.6rem;
}
.san-odet__cell{ min-width:0; }
.san-odet__k{
  display:block; font-size:.7rem; letter-spacing:.09em; text-transform:uppercase;
  color:#8B8578; margin-bottom:.22rem;
}
.san-odet__v{
  display:block; font-size:.98rem; font-weight:600; color:var(--charcoal,#2A2E2B);
  word-break:break-word;
}
.san-odet__addr{
  margin-top:1.3rem; padding-top:1.1rem; border-top:1px solid #EDE7DA;
}
.san-odet__addr address{
  margin:.15rem 0 0; font-style:normal; font-size:.95rem; line-height:1.65;
  color:var(--charcoal,#2A2E2B);
}
.san-odet__phone{
  margin:.45rem 0 0; font-size:.92rem; color:var(--charcoal,#2A2E2B); letter-spacing:.02em;
}
.san-odet__fix{
  margin:.85rem 0 0; font-size:.84rem; line-height:1.6; color:#6F6A5F;
}

@media (max-width:600px){
  .san-odet{ padding:1.15rem 1.05rem 1.25rem; }
  .san-odet__grid{ grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:.85rem 1rem; }
  .san-odet__h{ font-size:1.08rem; }
}
/* ============================================================
   V44 — KUMBH AMRIT product page, built for a 45+ reader.
   Large type, one action, generous space.
   ============================================================ */

.san-kumbh-pdp .woocommerce-notices-wrapper{ max-width:1280px; margin:0 auto; }

/* --- Right column ---------------------------------------------------- */
.san-kumbh-pdp .product_title{
  font-size:2.6rem; line-height:1.18; margin:0 0 .35rem;
  color:var(--teal,#0F5558);
}
.kb-sub{
  margin:0 0 1.4rem; font-size:1.15rem; color:#6F6A5F;
  font-family:var(--serif,Georgia,'Times New Roman',serif);
}
.kb-price{ margin:0 0 1.5rem; }
.kb-price__free{
  display:block; font-size:2.5rem; line-height:1.1; font-weight:700;
  letter-spacing:.02em; color:var(--teal,#0F5558);
}
.kb-price__charge{
  display:block; margin-top:.4rem; font-size:1.05rem; color:var(--charcoal,#2A2E2B);
}
.kb-desc p{ margin:0 0 .9rem; font-size:1.06rem; line-height:1.7; color:var(--charcoal,#2A2E2B); }

.kb-points{ list-style:none; margin:1.5rem 0 2rem; padding:0; }
.kb-points li{
  display:flex; align-items:center; gap:.85rem;
  padding:.55rem 0; font-size:1.05rem; line-height:1.5; color:var(--charcoal,#2A2E2B);
}
.kb-points__ic{ flex:0 0 auto; width:30px; height:30px; color:var(--gold-dark,#8A6420); }
.kb-points__ic svg{ width:100%; height:100%; }

/* --- The one CTA ------------------------------------------------------ */
.kb-cta{
  display:inline-flex; align-items:center; justify-content:center; gap:.7rem;
  width:100%; max-width:420px; min-height:60px; padding:1rem 2rem;
  background:var(--teal,#0F5558); color:#fff !important;
  border:2px solid var(--teal,#0F5558); border-radius:10px;
  font-size:1.05rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  text-decoration:none; cursor:pointer;
  transition:background .22s ease, border-color .22s ease, transform .12s ease, box-shadow .22s ease;
}
.kb-cta:hover{ background:var(--teal-soft,#397B7A); border-color:var(--teal-soft,#397B7A); box-shadow:0 10px 26px rgba(15,85,88,.20); }
.kb-cta:active{ transform:translateY(1px); }
.kb-cta:focus-visible{ outline:3px solid var(--gold,#C99A45); outline-offset:3px; }
.kb-cta__bag{ width:24px; height:24px; display:inline-flex; }
.kb-cta__bag svg{ width:100%; height:100%; }
.kb-cod-line{
  display:flex; align-items:center; gap:.6rem;
  margin:1rem 0 0; font-size:1rem; color:#6F6A5F;
}
.kb-cod-line svg{ width:26px; height:26px; color:var(--gold-dark,#8A6420); flex:0 0 auto; }

/* --- Full-width sections ---------------------------------------------- */
.kb-wide{
  grid-column:1 / -1; justify-self:stretch;
  width:100%; max-width:1280px; margin:3.5rem auto 0; padding:0 1.25rem;
}
.kb-wide h2{
  font-size:2rem; line-height:1.25; text-align:center; margin:0 0 2rem;
  color:var(--teal,#0F5558);
}
.kb-why__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1.6rem; }
.kb-why__item{ text-align:center; padding:1.6rem 1.2rem; background:#FDFBF6; border:1px solid #EDE7DA; border-radius:14px; }
.kb-why__ic{ display:inline-flex; width:52px; height:52px; color:var(--gold-dark,#8A6420); margin-bottom:.8rem; }
.kb-why__ic svg{ width:100%; height:100%; }
.kb-why__item h3{ font-size:1.2rem; margin:0 0 .5rem; color:var(--teal,#0F5558); }
.kb-why__item p{ margin:0; font-size:1rem; line-height:1.6; color:#5F5A50; }

.kb-howto__grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:1.6rem; }
.kb-howto__card{ text-align:center; padding:1.9rem 1.3rem; background:#fff; border:1px solid #EDE7DA; border-radius:14px; }
.kb-howto__ic{ display:inline-flex; width:56px; height:56px; color:var(--gold-dark,#8A6420); margin-bottom:.9rem; }
.kb-howto__ic svg{ width:100%; height:100%; }
.kb-howto__card h3{ font-size:1.3rem; margin:0 0 .5rem; color:var(--teal,#0F5558); }
.kb-howto__card p{ margin:0; font-size:1rem; line-height:1.6; color:#5F5A50; }
.kb-usenote{ margin:1.6rem 0 0; text-align:center; font-size:1rem; color:var(--terracotta,#A65D48); }

.kb-trust{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:1.4rem;
  padding:1.9rem 1.25rem; background:#F8F4EA; border-radius:16px;
}
.kb-trust__item{ display:flex; align-items:center; gap:.9rem; }
.kb-trust__item img{ width:38px; height:auto; flex:0 0 auto; }
.kb-trust__item strong{ display:block; font-size:1.02rem; color:var(--charcoal,#2A2E2B); }
.kb-trust__item span{ display:block; font-size:.94rem; color:#6F6A5F; }

.kb-final{ text-align:center; padding:3rem 1.25rem 3.5rem; }
.kb-final h2{ margin-bottom:.5rem; }
.kb-final p{ margin:0 0 1.8rem; font-size:1.1rem; color:#6F6A5F; font-style:italic; }
.kb-final .kb-cta{ margin:0 auto; }

/* --- Quantity modal --------------------------------------------------- */
body.kb-lock{ overflow:hidden; }
.kb-modal{ position:fixed; inset:0; z-index:100000; display:flex; align-items:center; justify-content:center; padding:1rem; }
.kb-modal[hidden]{ display:none; }
.kb-modal__veil{ position:absolute; inset:0; background:rgba(28,32,30,.62); opacity:0; transition:opacity .22s ease; }
.kb-modal.is-in .kb-modal__veil{ opacity:1; }
.kb-modal__box{
  position:relative; width:100%; max-width:500px;
  background:#FDFBF6; border:1px solid var(--gold,#C99A45); border-radius:14px;
  box-shadow:0 26px 70px rgba(28,32,30,.30);
  padding:2.3rem 2rem 1.9rem; text-align:center;
  opacity:0; transform:translateY(14px) scale(.97);
  transition:opacity .26s ease, transform .26s cubic-bezier(.22,.61,.36,1);
}
.kb-modal.is-in .kb-modal__box{ opacity:1; transform:none; }
.kb-modal__x{
  position:absolute; top:.7rem; right:.9rem; width:40px; height:40px;
  background:none; border:0; font-size:1.7rem; line-height:1; color:#8B8578; cursor:pointer;
}
.kb-modal__x:hover{ color:var(--charcoal,#2A2E2B); }
.kb-modal__title{
  font-size:1.62rem; line-height:1.3; margin:0 0 1rem; color:var(--teal,#0F5558);
}
.kb-modal__prod{ margin:0 0 1.6rem; }
.kb-modal__prod strong{ display:block; font-size:1.12rem; color:var(--charcoal,#2A2E2B); }
.kb-modal__prod span{ display:block; margin-top:.25rem; font-size:.98rem; color:#6F6A5F; }

.kb-qty{ display:flex; align-items:stretch; justify-content:center; gap:0; margin:0 auto 1.5rem; max-width:260px; }
.kb-qty__btn{
  width:64px; height:64px; flex:0 0 64px;
  background:#fff; border:1px solid #E6DFCF; color:var(--teal,#0F5558);
  font-size:1.9rem; line-height:1; cursor:pointer;
  transition:background .18s ease, color .18s ease;
}
.kb-qty__btn:first-child{ border-radius:10px 0 0 10px; }
.kb-qty__btn:last-child{ border-radius:0 10px 10px 0; }
.kb-qty__btn:hover:not(:disabled){ background:var(--teal,#0F5558); color:#fff; }
.kb-qty__btn:disabled{ opacity:.35; cursor:not-allowed; }
.kb-qty__num{
  width:100px; height:64px; text-align:center;
  border:1px solid #E6DFCF; border-left:0; border-right:0; background:#fff;
  font-size:1.6rem; font-weight:700; color:var(--charcoal,#2A2E2B);
}

.kb-modal__total{
  display:flex; align-items:center; justify-content:space-between;
  padding:1rem 1.2rem; margin:0 0 1.1rem;
  background:#F8F4EA; border-radius:10px;
}
.kb-modal__total span{ font-size:1.02rem; color:#5F5A50; }
.kb-modal__total strong{ font-size:1.5rem; color:var(--teal,#0F5558); }
.kb-modal__cap{ margin:0 0 1rem; font-size:.95rem; line-height:1.6; color:var(--terracotta,#A65D48); }
.kb-modal__cap a{ color:var(--teal,#0F5558); font-weight:600; }
.kb-modal__err{ margin:0 0 .8rem; color:#A33; font-size:.98rem; }
.kb-modal__go.is-busy{ opacity:.75; cursor:progress; }
.kb-modal__fine{ margin:.9rem 0 0; font-size:.88rem; color:#8B8578; }

@media (max-width:600px){
  .san-kumbh-pdp .product_title{ font-size:1.95rem; }
  .kb-price__free{ font-size:2.1rem; }
  .kb-wide h2{ font-size:1.55rem; }
  .kb-wide{ margin-top:2.5rem; }
  .kb-modal__box{ max-width:none; width:94%; padding:2rem 1.2rem 1.6rem; }
  .kb-modal__title{ font-size:1.35rem; }
  .kb-qty__btn{ width:60px; flex:0 0 60px; }
}

@media (prefers-reduced-motion:reduce){
  .kb-modal__box,.kb-modal__veil{ transition:none; opacity:1; transform:none; }
  .kb-cta{ transition:none; }
  .kb-cta:active{ transform:none; }
}

/* ============================================================
   V45 — Checkout, step 2 of 2 (Kumbh Amrit flow)
   ============================================================ */

.ck-steps{
  display:flex; align-items:center; justify-content:center; gap:.9rem;
  max-width:620px; margin:0 auto 1rem;
}
.ck-steps__item{ display:flex; align-items:center; gap:.65rem; }
.ck-steps__n{
  display:flex; align-items:center; justify-content:center;
  width:38px; height:38px; border-radius:50%;
  background:#fff; border:2px solid #E6DFCF; color:#8B8578;
  font-size:1.05rem; font-weight:700;
}
.ck-steps__item.is-done .ck-steps__n{ background:var(--gold,#C99A45); border-color:var(--gold,#C99A45); color:#fff; }
.ck-steps__item.is-now  .ck-steps__n{ background:var(--teal,#0F5558); border-color:var(--teal,#0F5558); color:#fff; }
.ck-steps__l{ font-size:1rem; color:#6F6A5F; }
.ck-steps__item.is-now .ck-steps__l{ color:var(--teal,#0F5558); font-weight:600; }
.ck-steps__bar{ flex:1 1 auto; max-width:90px; height:2px; background:var(--gold,#C99A45); }
.ck-steps__sub{ margin:0 0 1.6rem; text-align:center; font-size:1rem; color:#6F6A5F; }

.ck-lang{
  display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:.5rem;
  margin:0 0 1.8rem;
}
.ck-lang__label{ font-size:.9rem; color:#8B8578; margin-right:.3rem; }
.ck-lang__btn{
  min-height:42px; padding:.5rem 1.1rem;
  background:#fff; border:1px solid #E6DFCF; border-radius:8px;
  font-size:1rem; color:var(--charcoal,#2A2E2B); cursor:pointer;
  transition:background .18s ease, border-color .18s ease, color .18s ease;
}
.ck-lang__btn:hover{ border-color:var(--gold,#C99A45); }
.ck-lang__btn.is-on{ background:var(--teal,#0F5558); border-color:var(--teal,#0F5558); color:#fff; }

/* Quantity row inside the order summary */
.ck-qtyrow td{ padding:1rem 0 !important; }
.ck-qty{ display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.ck-qty__label{ font-size:1.02rem; color:var(--charcoal,#2A2E2B); }
.ck-qty__ctl{ display:flex; align-items:stretch; }
.ck-qty__btn{
  width:48px; height:48px; background:#fff; border:1px solid #E6DFCF;
  color:var(--teal,#0F5558); font-size:1.5rem; line-height:1; cursor:pointer;
  transition:background .18s ease, color .18s ease;
}
.ck-qty__btn:first-child{ border-radius:8px 0 0 8px; }
.ck-qty__btn:last-child{ border-radius:0 8px 8px 0; }
.ck-qty__btn:hover{ background:var(--teal,#0F5558); color:#fff; }
.ck-qty__num{
  min-width:62px; height:48px; display:flex; align-items:center; justify-content:center;
  border:1px solid #E6DFCF; border-left:0; border-right:0; background:#fff;
  font-size:1.2rem; font-weight:700; color:var(--charcoal,#2A2E2B);
}
.ck-qtyrow.is-busy{ opacity:.55; }
.ck-qty__cap{ margin:.65rem 0 0; font-size:.92rem; color:var(--terracotta,#A65D48); }

/* Bigger, calmer form for a 45+ reader */
.woocommerce-checkout .woocommerce-billing-fields label,
.woocommerce-checkout .woocommerce-additional-fields label{
  font-size:1.02rem; margin-bottom:.4rem; display:block;
}
.woocommerce-checkout .woocommerce-billing-fields input.input-text,
.woocommerce-checkout .woocommerce-billing-fields textarea,
.woocommerce-checkout .woocommerce-billing-fields select,
.woocommerce-checkout .select2-container .select2-selection--single{
  min-height:54px; font-size:1.05rem;
}
.woocommerce-checkout #place_order{
  min-height:60px; font-size:1.05rem; letter-spacing:.08em;
}
.woocommerce-checkout #place_order.is-busy{ opacity:.7; cursor:progress; }

@media (max-width:600px){
  .ck-steps{ gap:.5rem; }
  .ck-steps__l{ font-size:.9rem; }
  .ck-steps__bar{ max-width:40px; }
  .ck-qty{ flex-direction:column; align-items:flex-start; gap:.7rem; }
}

/* [hidden] loses to any author display rule — restate it for our own blocks. */
.ck-qty__cap[hidden], .kb-modal__cap[hidden], .san-tstat[hidden]{ display:none !important; }

/* ============================================================
   V46 — Order confirmation card
   ============================================================ */
.oc-card{
  max-width:660px; margin:0 auto 2.5rem; padding:2.6rem 2rem 2.2rem;
  text-align:center; background:#FDFBF6;
  border:1px solid #EDE7DA; border-radius:16px;
  box-shadow:0 10px 34px rgba(28,32,30,.06);
}
.oc-card__tick{ display:inline-flex; width:74px; height:74px; margin-bottom:1.1rem; }
.oc-card__tick svg{ width:100%; height:100%; }
.oc-card__ring{ fill:none; stroke:#2F7D62; stroke-width:2.5; opacity:.35; }
.oc-card__check{
  fill:none; stroke:#2F7D62; stroke-width:4; stroke-linecap:round; stroke-linejoin:round;
  stroke-dasharray:40; stroke-dashoffset:40;
  animation:oc-draw .55s cubic-bezier(.22,.61,.36,1) .15s forwards;
}
@keyframes oc-draw{ to{ stroke-dashoffset:0; } }
.oc-card__title{ margin:0 0 .4rem; font-size:2.1rem; color:var(--teal,#0F5558); }
.oc-card__sub{ margin:0 0 1.9rem; font-size:1.08rem; color:#6F6A5F; }
.oc-card__grid{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:1.1rem 1.6rem; margin:0 0 1.6rem; padding:1.4rem 1.2rem;
  background:#fff; border:1px solid #EDE7DA; border-radius:12px; text-align:left;
}
.oc-card__grid dt{
  font-size:.72rem; letter-spacing:.09em; text-transform:uppercase; color:#8B8578; margin-bottom:.22rem;
}
.oc-card__grid dd{ margin:0; font-size:1.02rem; font-weight:600; color:var(--charcoal,#2A2E2B); }
.oc-card__mail{ margin:0 0 .4rem; font-size:1rem; color:var(--charcoal,#2A2E2B); }
.oc-card__next{ margin:0 0 1.8rem; font-size:1rem; color:#6F6A5F; }
.oc-card__ctas{ display:flex; flex-direction:column; align-items:center; gap:.9rem; }
.oc-card__go{ max-width:340px; }
.oc-card__cont{ font-size:1rem; color:var(--teal,#0F5558); font-weight:600; }

@media (max-width:600px){
  .oc-card{ padding:2rem 1.15rem 1.8rem; }
  .oc-card__title{ font-size:1.65rem; }
  .oc-card__grid{ grid-template-columns:1fr 1fr; }
}
@media (prefers-reduced-motion:reduce){
  .oc-card__check{ animation:none; stroke-dashoffset:0; }
}

/* ============================================================
   V47 — New SANATAANI logo (3:1 header lockup, 2:1 white mark)
   The previous artwork was 3:2, so the same pixel height now
   renders twice as wide — pull the height back to keep the
   header balanced against the navigation.
   ============================================================ */
.san-logo__img{ height:64px; }
.san-header.is-scrolled .san-logo__img{ height:54px; }
.sr-footer__logoimg{ width:210px; }
@media (max-width:1024px){
  .san-logo__img{ height:52px; }
  .san-header.is-scrolled .san-logo__img{ height:46px; }
}
@media (max-width:600px){
  .san-logo__img{ height:42px; }
  .san-header.is-scrolled .san-logo__img{ height:38px; }
  .sr-footer__logoimg{ width:180px; }
}

/* ============================================================
   V48 — Kumbh Amrit page, reference-design pass
   Eyebrow pill · gold ornament · dark trust band ·
   image CTA banner · closing trust row
   ============================================================ */

/* --- Eyebrow pill --------------------------------------------------- */
.kb-eyebrow{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.5rem 1.05rem; margin:0 0 1.1rem;
  background:#F6EEDC; border:1px solid #EADFC6; border-radius:999px;
  font-size:.74rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase;
  color:var(--gold-dark,#8A6420);
}
.kb-eyebrow svg{ width:17px; height:17px; }

/* --- Gold ornament under the subtitle -------------------------------- */
.kb-orn{ display:flex; align-items:center; gap:.55rem; margin:0 0 1.5rem; }
.kb-orn i{ display:block; width:64px; height:1px; background:linear-gradient(90deg,transparent,var(--gold,#C99A45)); }
.kb-orn i:last-child{ background:linear-gradient(90deg,var(--gold,#C99A45),transparent); }
.kb-orn b{ width:8px; height:8px; transform:rotate(45deg); background:var(--gold,#C99A45); }

.kb-maxnote{
  display:flex; align-items:center; gap:.55rem;
  margin:.9rem 0 0; font-size:.95rem; color:var(--gold-dark,#8A6420);
}
.kb-maxnote svg{ width:22px; height:22px; flex:0 0 auto; }

/* --- Section rhythm -------------------------------------------------- */
.kb-wide{ margin-top:5rem; }
.kb-wide h2{ letter-spacing:.02em; }
.kb-wide h2::after{
  content:""; display:block; width:74px; height:1px; margin:.85rem auto 0;
  background:linear-gradient(90deg,transparent,var(--gold,#C99A45),transparent);
}

/* --- WHY cards ------------------------------------------------------- */
.kb-why__item{ background:#fff; border-color:#EFE7D7; }

/* --- HOW TO USE: icon chip beside the copy --------------------------- */
/* Icon left, title stacked over the copy — a flex row put the heading and
   paragraph side by side and wrapped "Jal Arpan" onto two lines. */
.kb-howto__card{
  display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center;
  column-gap:1.1rem; text-align:left;
  background:#fff; border-color:#EFE7D7;
}
.kb-howto__ic{
  grid-row:1 / 3; width:58px; height:58px; margin:0;
  display:flex; align-items:center; justify-content:center;
  background:#F8F1E3; border-radius:50%; color:var(--gold-dark,#8A6420);
}
.kb-howto__ic svg{ width:30px; height:30px; }
.kb-howto__card h3{ grid-column:2; align-self:flex-end; margin:0 0 .3rem; }
.kb-howto__card p{ grid-column:2; align-self:flex-start; }

/* --- Trust strip on the deep teal band ------------------------------- */
.kb-trust{
  background:var(--teal,#0F5558);
  padding:2.1rem 1.6rem;
  border-radius:16px;
  gap:1.2rem 2rem;
}
.kb-trust__item{ align-items:flex-start; }
.kb-trust__item + .kb-trust__item{ border-left:1px solid rgba(255,255,255,.14); padding-left:2rem; }
.kb-trust__item img{ width:34px; filter:brightness(0) saturate(100%) invert(72%) sepia(38%) saturate(560%) hue-rotate(3deg) brightness(94%) contrast(89%); }
.kb-trust__item strong{ color:#FFF9EF; font-size:1rem; }
.kb-trust__item span{ color:rgba(255,249,239,.72); font-size:.9rem; line-height:1.5; }

/* --- CTA banner: image left, copy right ------------------------------ */
.kb-banner{
  display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  align-items:stretch; overflow:hidden;
  background:#FBF6EC; border:1px solid #EFE7D7; border-radius:18px;
}
.kb-banner__img{ position:relative; min-height:330px; }
.kb-banner__img img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
.kb-banner__copy{
  display:flex; flex-direction:column; justify-content:center; align-items:flex-start;
  padding:3rem 3rem 3rem 3.2rem;
}
.kb-banner__copy h2{ text-align:left; margin:0 0 .6rem; font-size:2.05rem; }
.kb-banner__copy h2::after{ display:none; }
.kb-banner__copy p{ margin:0 0 1.9rem; font-size:1.1rem; color:#6F6A5F; }
.kb-banner .kb-cta{ max-width:360px; }

/* --- Closing trust row ------------------------------------------------ */
.kb-ftrust{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:1.5rem; margin-top:3.2rem; padding-bottom:.5rem;
}
.kb-ftrust__item{ display:flex; align-items:center; gap:.9rem; }
.kb-ftrust__ic{
  flex:0 0 auto; width:50px; height:50px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:#F8F1E3; color:var(--gold-dark,#8A6420);
}
.kb-ftrust__ic svg{ width:26px; height:26px; }
.kb-ftrust__item strong{ display:block; font-size:1rem; color:var(--charcoal,#2A2E2B); }
.kb-ftrust__item span{ display:block; font-size:.9rem; color:#6F6A5F; }

@media (max-width:900px){
  .kb-banner{ grid-template-columns:1fr; }
  .kb-banner__img{ min-height:240px; }
  .kb-banner__copy{ padding:2.2rem 1.5rem; align-items:center; text-align:center; }
  .kb-banner__copy h2{ text-align:center; }
  .kb-banner .kb-cta{ margin:0 auto; }
  .kb-trust__item + .kb-trust__item{ border-left:0; padding-left:0; }
}
@media (max-width:600px){
  .kb-wide{ margin-top:3.2rem; }
  .kb-eyebrow{ font-size:.68rem; padding:.45rem .85rem; }
  .kb-banner__copy h2{ font-size:1.55rem; }
  .kb-howto__card{ align-items:center; }
}

/* ============================================================
   V49 — Kumbh Amrit PDP: responsive repair
   The WooCommerce product wrapper is a fixed two-column grid on
   this template, so below tablet the gallery and summary kept
   their desktop width and pushed the page ~1080px wide.
   ============================================================ */
@media (max-width:900px){
  .san-kumbh-pdp div.product{
    grid-template-columns:minmax(0,1fr) !important;
    gap:1.6rem !important;
  }
  .san-kumbh-pdp div.product > *{ min-width:0; max-width:100%; }
  .san-kumbh-pdp .woocommerce-product-gallery,
  .san-kumbh-pdp .summary.entry-summary{ width:100% !important; max-width:100% !important; }
  .san-kumbh-pdp .san-gal__main,
  .san-kumbh-pdp .san-gal__thumbs{ width:100%; max-width:100%; }
  .san-kumbh-pdp .san-gal__mainimg{ width:100%; height:auto; }
  .kb-cta{ max-width:100%; }
  .kb-wide{ padding-left:1.25rem; padding-right:1.25rem; }
}
/* Nothing on this page may exceed the viewport. */
.san-kumbh-pdp .kb-wide,
.san-kumbh-pdp .kb-why__grid,
.san-kumbh-pdp .kb-howto__grid,
.san-kumbh-pdp .kb-trust,
.san-kumbh-pdp .kb-banner,
.san-kumbh-pdp .kb-ftrust{ min-width:0; }
/* Scoped to page content only — a blanket `img{height:auto}` also hit the
   global header logo and blew it up to its natural size. */
.san-kumbh-pdp .kb-wide img,
.san-kumbh-pdp div.product img{ max-width:100%; }

/* ============================================================
   V50 — Checkout, reference design
   Two cards, large controls, calm ivory + teal.
   ============================================================ */

.woocommerce-checkout .san-shop,
.woocommerce-checkout .container{ max-width:1280px; }

.ck-crumb{ display:flex; align-items:center; gap:.5rem; margin:0 0 1.5rem; font-size:.92rem; color:#8B8578; }
.ck-crumb a{ color:#6F6A5F; }
.ck-crumb em{ font-style:normal; color:var(--charcoal,#2A2E2B); }

.ck-top{
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:1.2rem; margin:0 0 2rem;
}
.ck-top .ck-steps{ margin:0; }
.ck-secure{
  display:flex; align-items:center; gap:.8rem;
  padding:.85rem 1.2rem; background:#fff;
  border:1px solid #EFE7D7; border-radius:12px;
}
.ck-secure__ic{ width:34px; height:34px; color:var(--gold-dark,#8A6420); flex:0 0 auto; }
.ck-secure__ic svg{ width:100%; height:100%; }
.ck-secure strong{ display:block; font-size:.98rem; color:var(--charcoal,#2A2E2B); }
.ck-secure span{ display:block; font-size:.86rem; color:#8B8578; }

.ck-eyebrow{
  margin:0 0 .4rem; font-size:.8rem; font-weight:700;
  letter-spacing:.14em; text-transform:uppercase; color:var(--gold-dark,#8A6420);
}
.ck-title{ margin:0 0 .55rem; font-size:2.5rem; line-height:1.15; color:var(--teal,#0F5558); }
.ck-lede{ margin:0 0 .25rem; font-size:1.05rem; color:#5F5A50; }
.ck-lede--hi{ color:#6F6A5F; }
.ck-orn{ display:flex; align-items:center; gap:.5rem; margin:1.1rem 0 2.2rem; }
.ck-orn i{ display:block; width:150px; height:1px; background:linear-gradient(90deg,var(--gold,#C99A45),transparent); }
.ck-orn b{ width:8px; height:8px; transform:rotate(45deg); background:var(--gold,#C99A45); order:-1; }
.ck-orn{ flex-direction:row-reverse; justify-content:flex-end; }

/* --- Cards --- */
.ck-card{
  background:#fff; border:1px solid #EFE7D7; border-radius:14px;
  padding:1.9rem 1.8rem; box-shadow:0 6px 24px rgba(28,32,30,.04);
}
.ck-card__h{
  display:flex; align-items:center; gap:.75rem;
  margin:0 0 1.5rem; font-family:var(--sans,'Segoe UI',Roboto,Arial,sans-serif);
  font-size:1rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--teal,#0F5558);
}
.ck-card__ic{ width:30px; height:30px; color:var(--gold-dark,#8A6420); flex:0 0 auto; }
.ck-card__ic svg{ width:100%; height:100%; }

.woocommerce-checkout .woocommerce-billing-fields > h3{ display:none; }

/* Two fields per row where the reference pairs them */
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper{
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.1rem 1.3rem;
}
.woocommerce-checkout .woocommerce-billing-fields__field-wrapper > p{ margin:0; }
.woocommerce-checkout #billing_email_field,
.woocommerce-checkout #billing_address_1_field,
.woocommerce-checkout #billing_postcode_field,
.woocommerce-checkout #billing_state_field,
.woocommerce-checkout #billing_country_field,
.woocommerce-checkout #sanataani_marketing_consent_field,
.woocommerce-checkout .form-row-wide{ grid-column:1 / -1; }
.woocommerce-checkout .sanataani-hidden-field{ display:none !important; }

.woocommerce-checkout .woocommerce-billing-fields label{
  font-size:1rem; font-weight:600; color:var(--charcoal,#2A2E2B); margin-bottom:.45rem;
}
.woocommerce-checkout .woocommerce-billing-fields .description,
.woocommerce-checkout .woocommerce-billing-fields small{
  display:block; margin-top:.4rem; font-size:.88rem; color:#8B8578;
}
.woocommerce-checkout .woocommerce-billing-fields input.input-text,
.woocommerce-checkout .woocommerce-billing-fields select,
.woocommerce-checkout .select2-container .select2-selection--single{
  min-height:58px !important; font-size:1.02rem; border-radius:10px;
}

/* Pincode + Check */
.ck-pin{ display:flex; align-items:stretch; gap:0; }
.ck-pin input{ flex:1 1 auto; border-top-right-radius:0 !important; border-bottom-right-radius:0 !important; }
.ck-pin__btn{
  flex:0 0 auto; min-width:110px; padding:0 1.4rem;
  background:var(--teal,#0F5558); color:#fff; border:1px solid var(--teal,#0F5558);
  border-radius:0 10px 10px 0; font-size:1rem; font-weight:600; cursor:pointer;
  transition:background .2s ease;
}
.ck-pin__btn:hover:not(:disabled){ background:var(--teal-soft,#397B7A); }
.ck-pin__btn:disabled{ opacity:.6; cursor:progress; }
.ck-pin__msg{ margin:.5rem 0 0 !important; font-size:.92rem; }
.ck-pin__msg.is-ok{ color:#2F7D62; }
.ck-pin__msg.is-bad{ color:#A65D48; }
.ck-pin__msg[hidden]{ display:none !important; }

.ck-safe{
  display:flex; align-items:center; gap:.55rem;
  margin:1.6rem 0 0; padding-top:1.2rem; border-top:1px solid #F0EADD;
  font-size:.92rem; color:#8B8578;
}
.ck-safe svg{ width:20px; height:20px; flex:0 0 auto; }

/* --- Order summary --- */
.woocommerce-checkout #order_review_heading{
  margin:0 0 1.2rem; font-family:var(--sans,'Segoe UI',Roboto,Arial,sans-serif);
  font-size:1rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase;
  color:var(--teal,#0F5558);
}
.woocommerce-checkout #order_review{
  background:#fff; border:1px solid #EFE7D7; border-radius:14px;
  padding:1.9rem 1.7rem; box-shadow:0 6px 24px rgba(28,32,30,.04);
}
.woocommerce-checkout .woocommerce-checkout-review-order-table thead{ display:none; }
.woocommerce-checkout .woocommerce-checkout-review-order-table .cart_item{ display:none; }

.ck-prodrow td{ padding:0 0 1.1rem !important; border:0 !important; }
.ck-prod{ display:flex; align-items:center; gap:1rem; }
.ck-prod__media{ flex:0 0 auto; width:104px; border-radius:10px; overflow:hidden; background:#FBF6EC; }
.ck-prod__media img{ display:block; width:100%; height:auto; }
.ck-prod__body strong{ display:block; font-size:1.14rem; color:var(--charcoal,#2A2E2B); }
.ck-prod__body span{ display:block; margin-top:.2rem; font-size:.95rem; color:#6F6A5F; }

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  font-size:1rem; padding:.7rem 0 !important; border:0 !important;
}
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td{
  padding-top:1.1rem !important; border-top:1px solid #F0EADD !important;
}
.woocommerce-checkout .order-total th{ font-size:1.22rem; color:var(--teal,#0F5558); }
.woocommerce-checkout .order-total .amount{ font-size:1.55rem; color:var(--teal,#0F5558); }

.woocommerce-checkout #payment{ background:transparent; border-radius:0; }
.woocommerce-checkout #payment ul.payment_methods{
  padding:1rem 1.2rem; margin:1.2rem 0 0;
  background:#F2F7F4; border:1px solid #DCE9E1; border-radius:12px; list-style:none;
}
.woocommerce-checkout #payment ul.payment_methods li{ margin:0; }
.woocommerce-checkout #payment label[for="payment_method_cod"]{ font-size:1.06rem; font-weight:700; color:var(--charcoal,#2A2E2B); }
.woocommerce-checkout #payment .payment_box{ background:transparent !important; padding:.3rem 0 0 !important; margin:0 !important; font-size:.95rem; color:#5F5A50; }
.woocommerce-checkout #payment .payment_box::before{ display:none !important; }

.ck-trustbox{
  margin:1.2rem 0 0; padding:1.15rem 1.2rem;
  background:#FBF6EC; border:1px solid #EFE7D7; border-radius:12px;
  display:grid; gap:.95rem;
}
.ck-trustbox__item{ display:flex; align-items:flex-start; gap:.8rem; }
.ck-trustbox__ic{ width:30px; height:30px; flex:0 0 auto; color:var(--gold-dark,#8A6420); }
.ck-trustbox__ic svg{ width:100%; height:100%; }
.ck-trustbox__item strong{ display:block; font-size:.98rem; color:var(--charcoal,#2A2E2B); }
.ck-trustbox__item span{ display:block; font-size:.88rem; color:#6F6A5F; }
.ck-trustbox__tel{ display:inline-block; margin-top:.15rem; font-size:.9rem; color:var(--teal,#0F5558); font-weight:600; }

.woocommerce-checkout #place_order{
  width:100%; min-height:62px; margin-top:1.4rem;
  border-radius:11px; font-size:1.06rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
}
.ck-terms{ margin:.95rem 0 0; font-size:.9rem; line-height:1.6; text-align:center; color:#8B8578; }
.ck-terms a{ color:var(--teal,#0F5558); font-weight:600; }

/* --- Closing trust strip --- */
.ck-strip{
  display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:1.4rem;
  margin:2.6rem 0 0; padding:1.6rem 1.5rem;
  background:#fff; border:1px solid #EFE7D7; border-radius:14px;
}
.ck-strip__item{ display:flex; align-items:center; gap:.85rem; }
.ck-strip__ic{
  width:48px; height:48px; flex:0 0 auto; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:#F8F1E3; color:var(--gold-dark,#8A6420);
}
.ck-strip__ic svg{ width:25px; height:25px; }
.ck-strip__item strong{ display:block; font-size:1rem; color:var(--charcoal,#2A2E2B); }
.ck-strip__item span{ display:block; font-size:.89rem; color:#6F6A5F; }

@media (max-width:900px){
  .woocommerce-checkout .woocommerce-billing-fields__field-wrapper{ grid-template-columns:minmax(0,1fr); }
  .ck-title{ font-size:1.85rem; }
  .ck-top{ flex-direction:column; align-items:stretch; }
  .ck-secure{ justify-content:center; }
  .ck-card,
  .woocommerce-checkout #order_review{ padding:1.35rem 1.15rem; }
  .ck-orn i{ width:90px; }
}
@media (max-width:600px){
  .ck-prod__media{ width:84px; }
  .ck-pin__btn{ min-width:92px; padding:0 1rem; }
}

/* ============================================================
   V51 — Checkout: two-column canvas, field order, tidy header
   The reference puts Delivery Details and Order Summary side by
   side. The prose measure that suits an article is far too narrow
   for a form, so checkout gets the full page width.
   ============================================================ */

body.woocommerce-checkout .san-prose__content{ max-width:none; }
/* .ck-title is the page heading now — the template H1 only repeats it. */
body.woocommerce-checkout .san-page-head{ display:none; }

body.woocommerce-checkout form.checkout{
  display:grid;
  grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);
  column-gap:2.2rem;
  align-items:start;
}
body.woocommerce-checkout form.checkout > *{ grid-column:1 / -1; }
body.woocommerce-checkout form.checkout > .woocommerce-NoticeGroup{ grid-row:1; margin:0 0 1.3rem; }
body.woocommerce-checkout form.checkout > .ck-card--form{ grid-column:1; grid-row:2; }
body.woocommerce-checkout form.checkout > .ck-col2{ grid-column:2; grid-row:2; }
body.woocommerce-checkout form.checkout > #order_review_heading,
body.woocommerce-checkout form.checkout > .woocommerce-checkout-review-order{ grid-column:2; }

body.woocommerce-checkout .ck-lede{ max-width:58ch; }
body.woocommerce-checkout .san-checkout-note,
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout form.checkout_coupon{ max-width:none; }

/* Reading order for the delivery fields. The DOM order WooCommerce
   emits is not the order this audience expects to fill them in. */
body.woocommerce-checkout #billing_first_name_field{ order:1; }
body.woocommerce-checkout #billing_phone_field{ order:2; }
body.woocommerce-checkout #billing_email_field{ order:3; }
body.woocommerce-checkout #billing_postcode_field{ order:4; }
body.woocommerce-checkout #billing_address_1_field{ order:5; }
body.woocommerce-checkout #billing_landmark_field{ order:6; }
body.woocommerce-checkout #billing_city_field{ order:7; }
body.woocommerce-checkout #billing_state_field{ order:8; }
body.woocommerce-checkout #billing_country_field{ order:9; }
body.woocommerce-checkout #sanataani_marketing_consent_field{ order:20; }

/* City and State pair up; everything else stays full width. */
body.woocommerce-checkout #billing_city_field,
body.woocommerce-checkout #billing_state_field{ grid-column:auto; }

@media (max-width:1000px){
  body.woocommerce-checkout form.checkout{ grid-template-columns:minmax(0,1fr); }
  body.woocommerce-checkout form.checkout > .ck-card--form,
  body.woocommerce-checkout form.checkout > .ck-col2,
  body.woocommerce-checkout form.checkout > #order_review_heading,
  body.woocommerce-checkout form.checkout > .woocommerce-checkout-review-order{
    grid-column:1 / -1; grid-row:auto;
  }
  body.woocommerce-checkout form.checkout > .ck-col2{ margin-top:2rem; }
}
@media (max-width:900px){
  body.woocommerce-checkout #billing_city_field,
  body.woocommerce-checkout #billing_state_field{ grid-column:1 / -1; }
}

/* State keeps the same 58px control height as its neighbours. */
body.woocommerce-checkout #billing_state_field .select2-container--default .select2-selection--single,
body.woocommerce-checkout #billing_state_field .select2-selection__rendered{
  min-height:58px; line-height:56px;
}
body.woocommerce-checkout #billing_state_field .select2-selection__arrow{ height:56px; }

/* ============================================================
   V52 — Checkout, final brief: empty state, teal CTA, 45+ sizing
   ============================================================ */

/* --- Empty checkout: a way forward, not a dead end --- */
.ck-empty{
  max-width:640px; margin:2rem auto 3rem; padding:3rem 2rem;
  text-align:center; background:#fff;
  border:1px solid #EFE7D7; border-radius:16px;
  box-shadow:0 6px 24px rgba(28,32,30,.04);
}
.ck-empty__ic{ display:block; width:56px; height:56px; margin:0 auto 1.2rem; color:var(--gold-dark,#8A6420); }
.ck-empty__ic svg{ width:100%; height:100%; }
.ck-empty__t{ margin:0 0 .8rem; font-size:1.9rem; line-height:1.2; color:var(--teal,#0F5558); }
.ck-empty__p{ margin:0 0 .5rem; font-size:1.05rem; line-height:1.65; color:#5F5A50; }
.ck-empty__p--hi{ color:#6F6A5F; }
.ck-empty__cta{ margin:1.8rem 0 0; display:flex; flex-direction:column; align-items:center; gap:1rem; }
.ck-empty .san-btn--primary{
  display:inline-block; min-height:58px; padding:1.05rem 2.2rem;
  background:var(--teal,#0F5558); color:#fff !important;
  border:0; border-radius:11px;
  font-size:1.02rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase;
  transition:background .25s ease;
}
.ck-empty .san-btn--primary:hover{ background:var(--teal-soft,#397B7A); }
.ck-empty__alt{ font-size:.98rem; color:#6F6A5F; text-decoration:underline; }

/* --- Representation / ritual-use notes under the product card --- */
.ck-noterow td{ padding:0 0 1rem !important; border:0 !important; }
.ck-note{
  margin:0 0 .3rem !important; font-size:.84rem; line-height:1.5; color:#8B8578;
}

/* --- PLACE ORDER: deep sacred teal, the strongest thing on the page --- */
body.woocommerce-checkout #place_order{
  background:var(--teal,#0F5558) !important;
  border-color:var(--teal,#0F5558) !important;
  color:#fff !important;
  min-height:60px; font-size:1.06rem;
}
body.woocommerce-checkout #place_order:hover:not(:disabled){
  background:var(--teal-soft,#397B7A) !important;
  border-color:var(--teal-soft,#397B7A) !important;
}
body.woocommerce-checkout #place_order:disabled,
body.woocommerce-checkout #place_order.is-busy{ opacity:.72; cursor:progress; }

/* --- 45+ typography: nothing on this page is small --- */
body.woocommerce-checkout .ck-title{ font-size:2.45rem; }
body.woocommerce-checkout .woocommerce-billing-fields label{ font-size:1.02rem; }
body.woocommerce-checkout .woocommerce-billing-fields input.input-text,
body.woocommerce-checkout .woocommerce-billing-fields select{ font-size:1.05rem; }
body.woocommerce-checkout .order-total th{ font-size:1.22rem; }
body.woocommerce-checkout .order-total .amount{ font-size:1.5rem; }
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{ font-size:1.02rem; }

/* Focus has to be visible, not just a colour shift. */
body.woocommerce-checkout input:focus-visible,
body.woocommerce-checkout select:focus-visible,
body.woocommerce-checkout button:focus-visible,
body.woocommerce-checkout a:focus-visible{
  outline:3px solid var(--gold,#C99A45); outline-offset:2px;
}

/* Validation errors say so in words and shape, never in colour alone. */
body.woocommerce-checkout .woocommerce-invalid input.input-text,
body.woocommerce-checkout .woocommerce-invalid select{
  border-color:#A65D48 !important; border-width:2px !important;
}
body.woocommerce-checkout .woocommerce-error{
  font-size:1rem; line-height:1.6;
}

@media (max-width:900px){
  body.woocommerce-checkout .ck-title{ font-size:1.8rem; }
  .ck-empty{ padding:2.2rem 1.3rem; margin:1.2rem auto 2rem; }
  .ck-empty__t{ font-size:1.5rem; }
}

/* --- V52a · summary table breathing room + honest product image --- */
body.woocommerce-checkout .woocommerce-checkout-review-order-table th{
  padding-right:1.2rem !important; text-align:left; font-weight:600;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  text-align:right; white-space:nowrap; vertical-align:top;
}
body.woocommerce-checkout .ck-prodrow td,
body.woocommerce-checkout .ck-noterow td{ white-space:normal; text-align:left; }
.ck-prod__media{ display:flex; align-items:center; justify-content:center; aspect-ratio:1 / 1; }
.ck-prod__media img{ width:100%; height:100%; object-fit:contain; }
.ck-strip__item strong{ line-height:1.35; }

/* ============================================================
   V53 — Footer bottom bar on phones
   The disclaimer was pinned to one line and the legal links sat on
   the same row as the copyright, so both ran off the right edge of
   every phone. Nothing was scrollable, so it simply looked cut off.
   ============================================================ */
.sr-footer__note{ white-space:normal; }

@media (max-width:700px){
  .sr-footer__bottom .container{
    flex-direction:column; align-items:flex-start; gap:.75rem;
  }
  .sr-footer__bottom .container > p{ width:100%; max-width:100%; }
  .sr-footer__legal{ justify-content:flex-start; }
  .sr-footer__note{ line-height:1.6; }
}

/* ============================================================
   V54 — Checkout alignment and padding

   Three things were off: the two cards started at different
   heights because YOUR ORDER sat outside its card while
   DELIVERY DETAILS sat inside one; WooCommerce's #payment
   wrapper added its own border and 20px padding, so the COD
   box, PLACE ORDER and the terms line were all inset from the
   rest of the summary; and the amount cells were top-aligned,
   so ₹87 floated above a label that had wrapped to two lines.
   ============================================================ */

/* --- One card per column, both starting at the same y --- */
body.woocommerce-checkout form.checkout > .ck-col2{
  background:#fff;
  border:1px solid #EFE7D7;
  border-radius:14px;
  padding:1.9rem 1.8rem;
  box-shadow:0 6px 24px rgba(28,32,30,.04);
}
body.woocommerce-checkout .ck-card,
body.woocommerce-checkout form.checkout > .ck-col2{ padding:1.9rem 1.8rem; }

body.woocommerce-checkout #order_review{
  background:transparent;
  border:0;
  border-radius:0;
  padding:0;
  box-shadow:none;
}
body.woocommerce-checkout #order_review_heading{
  display:flex; align-items:center; gap:.75rem;
  margin:0 0 1.5rem;
  min-height:30px; /* matches the icon on DELIVERY DETAILS */
}

/* --- Nothing inside the summary is allowed its own inset --- */
body.woocommerce-checkout .woocommerce-checkout-review-order-table{
  border:0; margin:0; width:100%;
}
body.woocommerce-checkout #payment{
  padding:0; border:0; background:transparent; border-radius:0;
}
body.woocommerce-checkout #payment ul.payment_methods{
  margin:1.2rem 0 0;
}
body.woocommerce-checkout #payment .place-order{ padding:0; margin:0; }
body.woocommerce-checkout .woocommerce-privacy-policy-text{ margin:1.1rem 0 0; }
body.woocommerce-checkout .woocommerce-privacy-policy-text p{ margin:0; font-size:.92rem; line-height:1.6; }

/* --- Money lines up with its label, not above it --- */
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  vertical-align:middle;
}
body.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  min-width:5.5rem; padding-left:.5rem !important;
}
body.woocommerce-checkout .ck-prodrow td,
body.woocommerce-checkout .ck-qtyrow td,
body.woocommerce-checkout .ck-noterow td{
  min-width:0; padding-left:0 !important;
}

/* --- Even rhythm down the summary --- */
body.woocommerce-checkout .ck-prodrow td{ padding-bottom:1.2rem !important; }
body.woocommerce-checkout .ck-noterow td{ padding:.2rem 0 1.1rem !important; }
body.woocommerce-checkout .ck-qtyrow td{ padding:.2rem 0 1.1rem !important; }

/* --- Left card: the closing note sits flush with the fields --- */
body.woocommerce-checkout .ck-safe{ margin-bottom:0; }
body.woocommerce-checkout .san-geo{ margin:1.5rem 0 0; }

@media (max-width:900px){
  body.woocommerce-checkout .ck-card,
  body.woocommerce-checkout form.checkout > .ck-col2{ padding:1.25rem 1.15rem; }
  body.woocommerce-checkout .woocommerce-checkout-review-order-table td{ min-width:4.5rem; }
}

/* The checkout renders inside .san-prose__content, whose `h2` rule
   (two classes + a tag) outranks a single class — so the card heading
   kept a 2.2rem top margin and sat 35px below its opposite number. */
body.woocommerce-checkout .ck-card__h,
body.woocommerce-checkout .san-prose__content .ck-card__h{ margin-top:0; }

/* The language switcher was the one centred element on a
   left-aligned page, so it read as misaligned. */
body.woocommerce-checkout .ck-lang{ justify-content:flex-start; }

/* The bottle stepper had room to stay beside its label on a phone —
   stacking it read as a stray control floating under the heading. */
@media (max-width:600px){
  body.woocommerce-checkout .ck-qty{
    flex-direction:row; align-items:center; justify-content:space-between; gap:1rem;
  }
}

/* ============================================================
   V55 — Devotional CTA banner, tall variant

   cart-cta-banner.png is a tall source whose subject (the diya
   and its lotus plate) needs vertical room. In the standard
   277px band, object-fit:cover sliced the flame off the top or
   the plate off the bottom — there was no crop that kept both.
   Only the instances using that image get the taller band; the
   wide contact-page banner is untouched.
   ============================================================ */
.sn-cta--tall{
  display:flex; align-items:center;
  min-height:clamp(260px, 24vw, 430px);
}
.sn-cta--tall .sn-cta__bg{ object-position:100% 50%; }
.sn-cta--tall .sn-cta__inner{ width:100%; }

/* ============================================================
   V56 — "The product is FREE" reads the same everywhere

   FREE is the product price and is set larger and stronger than
   the courier charge on every surface. The charge is always
   labelled; it never sits as a bare figure beside the product.
   ============================================================ */

/* --- Order Now popup: a small bill, not a price tag --- */
.kb-bill{
  margin:1.4rem 0 0; padding:1.1rem 1.2rem;
  background:var(--ivory,#FBF9F3);
  border:1px solid #EFE7D7; border-radius:12px;
}
.kb-bill__row{
  display:flex; align-items:baseline; justify-content:space-between;
  gap:1rem; padding:.45rem 0;
  font-size:1.02rem; color:#5F5A50;
}
.kb-bill__row strong{ color:var(--charcoal,#2A2E2B); font-weight:600; }
.kb-bill__free{
  font-size:1.45rem !important; font-weight:700 !important;
  letter-spacing:.06em; color:var(--teal,#0F5558) !important;
}
.kb-bill__row--total{
  margin-top:.35rem; padding-top:.85rem;
  border-top:1px solid #EFE7D7;
}
.kb-bill__row--total span{ font-size:1.08rem; font-weight:600; color:var(--teal,#0F5558); }
.kb-bill__row--total strong{ font-size:1.5rem; color:var(--teal,#0F5558); }

.kb-modal__free{
  margin:.9rem 0 0; font-size:.95rem; line-height:1.6;
  color:#6F6A5F; text-align:center;
}
.kb-modal__prod span{ display:block; margin-top:.15rem; color:#6F6A5F; }

/* --- Product page: FREE labelled as the product price --- */
.kb-price__label{
  display:block; margin:-.2rem 0 .5rem;
  font-size:.78rem; font-weight:700; letter-spacing:.16em;
  text-transform:uppercase; color:#8B8578;
}
.kb-freenote{
  margin:.9rem 0 0; font-size:1rem; line-height:1.65;
  color:var(--teal,#0F5558); font-weight:600;
}

/* --- Checkout: the note under the total --- */
.ck-freerow td{ padding:.2rem 0 0 !important; border:0 !important; white-space:normal !important; }
.ck-freenote{
  margin:.6rem 0 0 !important; padding:.75rem .9rem;
  background:#F2F7F4; border:1px solid #DCE9E1; border-radius:10px;
  font-size:.95rem; line-height:1.6; color:#2F5D52; text-align:left;
}

/* --- Confirmation card --- */
.oc-card__free{ color:var(--teal,#0F5558) !important; font-weight:700; letter-spacing:.05em; }
.oc-card__free-note{
  margin:1.1rem 0 0; padding:.85rem 1rem;
  background:#F2F7F4; border:1px solid #DCE9E1; border-radius:10px;
  font-size:.97rem; line-height:1.65; color:#2F5D52;
}

/* --- My Account → order details --- */
.san-freebill{
  margin:0 0 1.6rem; padding:1.2rem 1.3rem;
  background:#fff; border:1px solid #EFE7D7; border-radius:12px;
}
.san-freebill__row{
  display:flex; align-items:baseline; justify-content:space-between;
  gap:1rem; padding:.4rem 0; font-size:1rem; color:#5F5A50;
}
.san-freebill__free{
  font-size:1.3rem; font-weight:700; letter-spacing:.05em;
  color:var(--teal,#0F5558);
}
.san-freebill__row--total{
  margin-top:.3rem; padding-top:.8rem; border-top:1px solid #F0EADD;
}
.san-freebill__row--total span,
.san-freebill__row--total strong{ color:var(--teal,#0F5558); font-weight:700; }
.san-freebill__row--total strong{ font-size:1.3rem; }
.san-freebill__note{
  margin:.9rem 0 0; font-size:.93rem; line-height:1.6; color:#6F6A5F;
}

@media (max-width:600px){
  .kb-bill{ padding:.95rem 1rem; }
  .kb-bill__free{ font-size:1.3rem !important; }
  .kb-bill__row--total strong{ font-size:1.35rem; }
}

/* FREE leads the cart and checkout lines; the charge follows it. */
.san-cart-free{
  display:inline-block;
  font-size:1.12rem; font-weight:700; letter-spacing:.05em;
  color:var(--teal,#0F5558);
}
body.woocommerce-checkout .cart-subtotal td .san-cart-free{ font-size:1.18rem; }
.ck-freenote--cart{ margin:1rem 0 0 !important; }

/* ============================================================
   V57 — Order tracking timeline

   One component, used on the Track Order result, the order-received
   page and My Account. Vertical at every width: a horizontal
   four-step bar is unreadable on a phone, and this audience is 45+.
   ============================================================ */
.san-track{
  margin:0 0 2rem; padding:1.7rem 1.6rem;
  background:#fff; border:1px solid #EFE7D7; border-radius:14px;
  box-shadow:0 6px 24px rgba(28,32,30,.04);
}
.san-track__head{ margin:0 0 1.5rem; }
.san-track__title{
  display:block; margin:0 0 .5rem;
  font-size:1.35rem; line-height:1.3; color:var(--teal,#0F5558);
}
.san-track__text{ margin:0; font-size:1.02rem; line-height:1.7; color:#5F5A50; }
.san-track__hi{ margin:.4rem 0 0; font-size:.95rem; line-height:1.7; color:#6F6A5F; }

.san-track__steps{ list-style:none; margin:0; padding:0; }
.san-track__step{
  position:relative; display:flex; align-items:flex-start; gap:1rem;
  padding:0 0 1.6rem 0; margin:0;
}
.san-track__step:last-child{ padding-bottom:0; }
/* the connecting rail */
.san-track__step::before{
  content:""; position:absolute; left:17px; top:36px; bottom:0;
  width:2px; background:#EFE7D7;
}
.san-track__step:last-child::before{ display:none; }
.san-track__step.is-done::before{ background:var(--teal-soft,#397B7A); }

.san-track__mark{
  flex:0 0 auto; width:36px; height:36px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  background:#fff; border:2px solid #E4DAC6; color:#fff;
  font-size:1.05rem; font-weight:700; line-height:1;
}
.san-track__step.is-done .san-track__mark{
  background:var(--teal,#0F5558); border-color:var(--teal,#0F5558);
}
.san-track__step.is-now .san-track__mark{
  background:var(--gold,#C99A45); border-color:var(--gold,#C99A45);
  box-shadow:0 0 0 5px rgba(201,154,69,.18);
}
.san-track__body{ padding-top:.35rem; }
.san-track__body strong{
  display:block; font-size:1.12rem; line-height:1.3; color:var(--charcoal,#2A2E2B);
}
.san-track__step.is-todo .san-track__body strong{ color:#9A958B; }
.san-track__step.is-now .san-track__body strong{ color:var(--teal,#0F5558); }
.san-track__when{
  display:block; margin-top:.2rem; font-size:.95rem; color:#8B8578;
}

.san-track__courier{
  margin:1.6rem 0 0; padding:1.2rem 1.3rem;
  background:var(--ivory,#FBF9F3); border:1px solid #EFE7D7; border-radius:12px;
}
.san-track__courier p{
  display:flex; justify-content:space-between; gap:1rem;
  margin:0 0 .5rem; font-size:1rem; color:#5F5A50;
}
.san-track__courier p span{ color:#8B8578; }
.san-track__courier p strong{ color:var(--charcoal,#2A2E2B); text-align:right; }
.san-track__pkg{
  display:inline-block; margin:.7rem 0 0; padding:.85rem 1.5rem;
  background:var(--teal,#0F5558); color:#fff !important;
  border-radius:9px; font-size:.98rem; font-weight:700; letter-spacing:.06em;
  transition:background .25s ease;
}
.san-track__pkg:hover{ background:var(--teal-soft,#397B7A); }

.san-track__help{ margin:1.3rem 0 0; font-size:.95rem; line-height:1.7; color:#6F6A5F; }
.san-track__help a{ color:var(--teal,#0F5558); font-weight:600; }

.san-track--off{ border-color:#E7D3CC; background:#FDF7F5; }
.san-track--off .san-track__title{ color:var(--terracotta,#A65D48); }

@media (max-width:600px){
  .san-track{ padding:1.25rem 1.15rem; }
  .san-track__title{ font-size:1.18rem; }
  .san-track__courier p{ flex-direction:column; gap:.15rem; }
  .san-track__courier p strong{ text-align:left; }
}
