/*
 * LiveDarshanHub — Premium Homepage Design Override
 * Devotional Luxury Aesthetic: Deep Saffron · Temple Gold · Sacred Dark
 * File: assets/css/ldh-homepage-premium.css
 * HOW TO LOAD: Enqueue this AFTER ldh-homepage.css in class-ldh-frontend.php
 *   wp_enqueue_style('ldh-homepage-premium', LDH_PLUGIN_URL.'assets/css/ldh-homepage-premium.css', ['ldh-homepage'], LDH_VERSION);
 */

/* ══════════════════════════════════════════════════════════════
   PREMIUM FONTS
══════════════════════════════════════════════════════════════ */
@import url('https://fonts.googleapis.com/css2?family=Cinzel+Decorative:wght@700;900&family=Cinzel:wght@400;600;700&family=Lora:ital,wght@0,400;0,500;0,600;1,400;1,500&display=swap');

/* ══════════════════════════════════════════════════════════════
   GLOBAL TOKENS
══════════════════════════════════════════════════════════════ */
:root {
    --ldh-saffron:    #FF6B00;
    --ldh-saffron-dk: #CC3C00;
    --ldh-gold:       #D4AF37;
    --ldh-gold-lt:    #FFD060;
    --ldh-cream:      #FFFBF5;
    --ldh-parchment:  #FFF5E8;
    --ldh-deep:       #0D0400;
    --ldh-dark:       #1A0800;
    --ldh-maroon:     #5A1A00;
    --ldh-text:       #2A0E00;
    --ldh-muted:      #7A4A2A;
    --ldh-radius:     14px;
    --ldh-shadow:     0 4px 32px rgba(42,14,0,.12);
    --fh: 'Cinzel', Georgia, serif;
    --fb: 'Lora', Georgia, serif;
}

/* ══════════════════════════════════════════════════════════════
   SECTION HEADINGS — global upgrade
══════════════════════════════════════════════════════════════ */
.ldh-home-section__label {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    font-family: 'Cinzel', serif !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: .18em !important;
    text-transform: uppercase !important;
    color: var(--ldh-saffron) !important;
    background: rgba(255,107,0,.07);
    border: 1px solid rgba(255,107,0,.2);
    padding: 5px 16px !important;
    border-radius: 100px !important;
    margin-bottom: 12px !important;
}
.ldh-home-section__title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
    font-weight: 900 !important;
    color: var(--ldh-text) !important;
    line-height: 1.2 !important;
    margin: 0 0 12px !important;
}
.ldh-home-section__desc {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .95rem !important;
    color: var(--ldh-muted) !important;
    line-height: 1.7 !important;
}
.ldh-home-section__header {
    margin-bottom: 40px !important;
}
.ldh-home-section__header--center {
    text-align: center !important;
}

/* ══════════════════════════════════════════════════════════════
   HERO SECTION — elevated premium
══════════════════════════════════════════════════════════════ */
.ldh-hero {
    min-height: 100vh !important;
    background: linear-gradient(160deg, #0D0200 0%, #1A0800 40%, #0F0A1A 100%) !important;
}
/* Stronger, richer top accent line */
.ldh-hero::before {
    height: 3px !important;
    background: linear-gradient(90deg, transparent, var(--ldh-saffron) 20%, var(--ldh-gold) 50%, var(--ldh-saffron) 80%, transparent) !important;
    animation: none !important;
}
/* Deeper Om watermark */
.ldh-hero::after {
    font-size: 32rem !important;
    color: rgba(212,175,55,.06) !important;
    animation: none !important;
}
/* Richer overlay for video/image bg */
.ldh-hero__video-overlay {
    background:
        linear-gradient(to bottom, rgba(13,4,0,.25) 0%, rgba(13,4,0,.65) 50%, rgba(13,4,0,.92) 100%),
        linear-gradient(105deg, rgba(90,26,0,.5) 0%, transparent 60%) !important;
}
/* Stronger glows */
.ldh-hero__glow--a {
    background: radial-gradient(circle, rgba(255,120,0,.35) 0%, transparent 70%) !important;
    filter: blur(100px) !important;
}
.ldh-hero__glow--b {
    background: radial-gradient(circle, rgba(212,175,55,.2) 0%, transparent 70%) !important;
}
/* Hero H1 — Cinzel Decorative */
.ldh-hero__h1 {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: clamp(2.2rem, 4vw, 3.6rem) !important;
    line-height: 1.12 !important;
    letter-spacing: .01em !important;
    text-shadow: 0 3px 32px rgba(0,0,0,.7), 0 0 80px rgba(255,107,0,.12) !important;
}
.ldh-hero__accent {
    background: linear-gradient(90deg, var(--ldh-gold-lt) 0%, #FFE090 50%, var(--ldh-gold) 100%) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}
/* Badge */
.ldh-badge--default {
    background: rgba(212,175,55,.1) !important;
    border: 1px solid rgba(212,175,55,.28) !important;
    color: rgba(255,215,100,.8) !important;
    font-family: 'Cinzel', serif !important;
    font-size: .68rem !important;
    letter-spacing: .14em !important;
    padding: 7px 18px !important;
    border-radius: 100px !important;
}
/* Subtitle */
.ldh-hero__sub {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: 1.05rem !important;
    color: rgba(255,220,170,.65) !important;
    line-height: 1.8 !important;
}
/* Search */
.ldh-hero__search-row {
    border-radius: 14px !important;
    box-shadow: 0 8px 40px rgba(0,0,0,.35), 0 0 0 1px rgba(212,175,55,.15) !important;
    overflow: hidden !important;
}
.ldh-hero__sinput {
    font-family: 'Lora', serif !important;
    font-size: .95rem !important;
    padding: 16px 22px !important;
}
.ldh-hero__sbtn {
    background: linear-gradient(135deg, var(--ldh-saffron), var(--ldh-saffron-dk)) !important;
    font-family: 'Cinzel', serif !important;
    letter-spacing: .08em !important;
    padding: 0 32px !important;
    font-size: .8rem !important;
    transition: all .25s !important;
}
.ldh-hero__sbtn:hover {
    background: linear-gradient(135deg, #FF8C22, var(--ldh-saffron)) !important;
    box-shadow: 0 4px 24px rgba(255,107,0,.45) !important;
}
/* Stats bar */
.ldh-hero__stats {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(212,175,55,.22) !important;
    border-radius: 16px !important;
    backdrop-filter: blur(12px) !important;
}
.ldh-hero__sitem strong {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: 1.6rem !important;
    color: var(--ldh-gold-lt) !important;
}
.ldh-hero__sitem span {
    font-family: 'Cinzel', serif !important;
    font-size: .58rem !important;
    letter-spacing: .12em !important;
    color: rgba(255,215,100,.5) !important;
}
/* Player */
.ldh-player {
    border: 1px solid rgba(212,175,55,.25) !important;
    border-radius: 18px !important;
    box-shadow: 0 0 0 1px rgba(255,107,0,.1), 0 32px 80px rgba(0,0,0,.55), 0 0 80px rgba(255,107,0,.06) !important;
    background: rgba(10,2,0,.7) !important;
}
.ldh-player__live-tag {
    background: rgba(34,197,94,.9) !important;
    font-family: 'Cinzel', serif !important;
    letter-spacing: .14em !important;
    border-radius: 8px !important;
    box-shadow: 0 0 16px rgba(34,197,94,.4) !important;
}
.ldh-player__bar {
    background: rgba(13,4,0,.75) !important;
    border-top: 1px solid rgba(212,175,55,.12) !important;
}
.ldh-player__tname {
    font-family: 'Cinzel', serif !important;
    font-size: .88rem !important;
    letter-spacing: .04em !important;
}
.ldh-player__thumbs {
    background: rgba(10,2,0,.6) !important;
    border-top: 1px solid rgba(212,175,55,.08) !important;
    padding: 12px 16px !important;
    gap: 8px !important;
}
.ldh-player__thumb {
    border-radius: 10px !important;
    width: 54px !important;
    height: 54px !important;
    border: 2px solid rgba(212,175,55,.18) !important;
    transition: all .22s !important;
}
.ldh-player__thumb.is-active {
    border-color: var(--ldh-saffron) !important;
    box-shadow: 0 0 14px rgba(255,107,0,.5) !important;
    transform: scale(1.12) !important;
}
/* Mantra ticker */
.ldh-hero-ticker {
    background: rgba(40,10,0,.5) !important;
    border-top: 1px solid rgba(212,175,55,.15) !important;
    border-bottom: 1px solid rgba(255,107,0,.1) !important;
    padding: 11px 0 !important;
}
.ldh-hero-ticker__track span {
    font-size: .85rem !important;
    color: rgba(255,220,150,.82) !important;
    letter-spacing: .04em !important;
}

/* ══════════════════════════════════════════════════════════════
   UPCOMING FESTIVALS STRIP — premium cards
══════════════════════════════════════════════════════════════ */
.ldh-events-strip {
    background: linear-gradient(135deg, var(--ldh-dark), #2A1000) !important;
    border-bottom: 1px solid rgba(212,175,55,.12) !important;
    padding: 0 !important;
}
.ldh-events-strip__inner {
    padding: 28px 24px !important;
}
.ldh-events-strip__head {
    margin-bottom: 20px !important;
}
.ldh-events-strip__label {
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    color: var(--ldh-gold-lt) !important;
    letter-spacing: .14em !important;
}
.ldh-events-strip__all {
    font-family: 'Cinzel', serif !important;
    font-size: .7rem !important;
    color: rgba(212,175,55,.5) !important;
    letter-spacing: .08em !important;
    transition: color .2s !important;
}
.ldh-events-strip__all:hover { color: var(--ldh-gold-lt) !important; }

.ldh-event-card {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(212,175,55,.14) !important;
    border-radius: 14px !important;
    padding: 14px 16px !important;
    transition: all .22s !important;
    backdrop-filter: blur(8px) !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 6px !important;
    cursor: default !important;
}
.ldh-event-card:hover {
    background: rgba(212,175,55,.07) !important;
    border-color: rgba(212,175,55,.3) !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 8px 28px rgba(0,0,0,.3) !important;
}
.ldh-event-card--urgent {
    background: rgba(255,107,0,.08) !important;
    border-color: rgba(255,107,0,.35) !important;
    box-shadow: 0 0 20px rgba(255,107,0,.1) !important;
}
.ldh-event-card__icon {
    font-size: 1.8rem !important;
    margin-bottom: 4px !important;
    filter: drop-shadow(0 0 10px rgba(255,160,0,.3)) !important;
}
.ldh-event-card__name {
    font-family: 'Cinzel', serif !important;
    font-size: .78rem !important;
    color: rgba(255,215,100,.9) !important;
    letter-spacing: .04em !important;
    display: block !important;
}
.ldh-event-card__desc {
    font-family: 'Lora', serif !important;
    font-size: .68rem !important;
    font-style: italic !important;
    color: rgba(255,200,150,.5) !important;
    line-height: 1.4 !important;
}
.ldh-event-card__date {
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    color: rgba(212,175,55,.6) !important;
    letter-spacing: .06em !important;
}
.ldh-event-card__when {
    font-family: 'Cinzel', serif !important;
    font-size: .65rem !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(255,200,100,.45) !important;
    margin-top: auto !important;
}
.ldh-event-card__when--soon {
    color: #4ade80 !important;
}

/* ══════════════════════════════════════════════════════════════
   TODAY'S BHAKTI SECTION
══════════════════════════════════════════════════════════════ */
.ldh-bhakti-section {
    background: linear-gradient(180deg, var(--ldh-parchment) 0%, var(--ldh-cream) 100%) !important;
    border-top: 1px solid rgba(212,175,55,.1) !important;
    border-bottom: 1px solid rgba(212,175,55,.12) !important;
}
.ldh-bhakti-heading__title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: 1.6rem !important;
    font-weight: 900 !important;
    background: linear-gradient(135deg, var(--ldh-maroon), var(--ldh-saffron) 50%, var(--ldh-gold)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}
.ldh-bhakti-heading__sub {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .88rem !important;
    color: var(--ldh-muted) !important;
}
/* Bhakti column cards */
.ldh-bhakti-col {
    border-radius: 18px !important;
    border: 1px solid rgba(212,175,55,.14) !important;
    box-shadow: var(--ldh-shadow) !important;
}
.ldh-bhakti-col:hover {
    box-shadow: 0 10px 40px rgba(42,14,0,.14) !important;
    transform: translateY(-3px) !important;
}
.ldh-bhakti-col__head {
    background: linear-gradient(135deg, var(--ldh-dark), #2A1000) !important;
    border-bottom: 2px solid rgba(212,175,55,.2) !important;
    padding: 14px 20px !important;
}
.ldh-bhakti-col__icon { font-size: 1.5rem !important; }
.ldh-bhakti-col__title {
    font-family: 'Cinzel', serif !important;
    font-size: .88rem !important;
    color: rgba(255,215,100,.9) !important;
    letter-spacing: .08em !important;
}
.ldh-bhakti-col__sub {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    color: rgba(255,200,140,.5) !important;
}
/* Aarti list */
.ldh-aarti-item {
    padding: 10px 20px !important;
}
.ldh-aarti-item--live {
    background: linear-gradient(90deg, rgba(255,107,0,.06), rgba(255,255,255,.8)) !important;
    border-left: 3px solid var(--ldh-saffron) !important;
}
.ldh-aarti-item__body strong {
    font-family: 'Cinzel', serif !important;
    font-size: .8rem !important;
    color: var(--ldh-text) !important;
}
.ldh-aarti-item__body span {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    color: var(--ldh-muted) !important;
}
.ldh-aarti-item__clock {
    font-family: 'Cinzel', serif !important;
    font-weight: 700 !important;
    color: var(--ldh-saffron) !important;
}
/* Mantra card */
.ldh-mantra-card {
    background: linear-gradient(135deg, #FFFBF5, var(--ldh-parchment)) !important;
    border-radius: 14px !important;
    margin: 14px 16px !important;
    padding: 22px 20px !important;
    border: 1px solid rgba(212,175,55,.18) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.5) !important;
}
.ldh-mantra-card__text {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: var(--ldh-text) !important;
    text-align: center !important;
    background: linear-gradient(135deg, var(--ldh-maroon), var(--ldh-saffron)) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
}
.ldh-mantra-card__meaning {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    background: rgba(255,255,255,.8) !important;
    border-left: 3px solid var(--ldh-gold) !important;
    border-radius: 0 10px 10px 0 !important;
    font-size: .82rem !important;
    color: var(--ldh-maroon) !important;
    line-height: 1.7 !important;
}
.ldh-mantra-card__copy {
    background: linear-gradient(135deg, var(--ldh-saffron), var(--ldh-saffron-dk)) !important;
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    letter-spacing: .08em !important;
    padding: 10px 28px !important;
    border-radius: 100px !important;
    box-shadow: 0 4px 18px rgba(255,107,0,.35) !important;
    transition: all .22s !important;
}
.ldh-mantra-card__copy:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 28px rgba(255,107,0,.5) !important;
}
/* Panchang */
.ldh-panchang-item__label {
    font-family: 'Cinzel', serif !important;
    font-size: .6rem !important;
    color: var(--ldh-saffron) !important;
    letter-spacing: .1em !important;
}
.ldh-panchang-item__val {
    font-family: 'Cinzel', serif !important;
    font-size: .8rem !important;
    color: var(--ldh-text) !important;
}
/* Temple Spotlight */
.ldh-spotlight-card {
    border-radius: 14px !important;
    overflow: hidden !important;
    border: 1px solid rgba(212,175,55,.14) !important;
    box-shadow: var(--ldh-shadow) !important;
}
.ldh-spotlight-card__body {
    background: linear-gradient(135deg, #fff, var(--ldh-cream)) !important;
}
.ldh-spotlight-card__name a {
    font-family: 'Cinzel', serif !important;
    font-size: 1.15rem !important;
}
.ldh-spotlight-card__meta span {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .75rem !important;
    background: rgba(255,107,0,.06) !important;
    border: 1px solid rgba(255,107,0,.14) !important;
}
.ldh-spotlight-card__desc {
    font-family: 'Lora', serif !important;
    font-size: .9rem !important;
    color: var(--ldh-muted) !important;
    line-height: 1.75 !important;
}

/* ══════════════════════════════════════════════════════════════
   LIVE TEMPLES SLIDER
══════════════════════════════════════════════════════════════ */
.ldh-live-cards-section {
    background: linear-gradient(135deg, var(--ldh-dark) 0%, #0A0200 100%) !important;
    border-top: 1px solid rgba(212,175,55,.1) !important;
    border-bottom: 1px solid rgba(212,175,55,.08) !important;
    padding: 44px 0 !important;
    position: relative !important;
    overflow: hidden !important;
}
.ldh-live-cards-section::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(ellipse at 50% 0%, rgba(34,197,94,.06) 0%, transparent 70%) !important;
    pointer-events: none !important;
}
.ldh-live-cards-head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 24px !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}
.ldh-live-cards-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: rgba(34,197,94,.1) !important;
    border: 1px solid rgba(34,197,94,.25) !important;
    color: #4ade80 !important;
    font-family: 'Cinzel', serif !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 5px 14px !important;
    border-radius: 100px !important;
    box-shadow: 0 0 16px rgba(34,197,94,.15) !important;
}
.ldh-live-cards-title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: clamp(1.2rem, 2.5vw, 1.8rem) !important;
    color: #fff !important;
    margin: 0 !important;
    text-shadow: 0 2px 20px rgba(0,0,0,.5) !important;
}
.ldh-live-cards-viewall {
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(212,175,55,.6) !important;
    text-decoration: none !important;
    transition: color .2s !important;
    border: 1px solid rgba(212,175,55,.2) !important;
    padding: 7px 18px !important;
    border-radius: 100px !important;
}
.ldh-live-cards-viewall:hover {
    color: var(--ldh-gold-lt) !important;
    border-color: rgba(212,175,55,.4) !important;
    background: rgba(212,175,55,.06) !important;
}
.ldh-live-card-sm {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(212,175,55,.14) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    transition: all .25s !important;
    text-decoration: none !important;
}
.ldh-live-card-sm:hover {
    transform: translateY(-4px) !important;
    border-color: rgba(255,107,0,.3) !important;
    box-shadow: 0 10px 32px rgba(0,0,0,.4) !important;
}
.ldh-live-card-sm__img {
    border-radius: 0 !important;
}
.ldh-live-card-sm__badge {
    background: rgba(34,197,94,.9) !important;
    font-family: 'Cinzel', serif !important;
    font-size: .6rem !important;
    letter-spacing: .12em !important;
    border-radius: 6px !important;
    box-shadow: 0 0 12px rgba(34,197,94,.4) !important;
}
.ldh-live-card-sm__name {
    font-family: 'Cinzel', serif !important;
    font-size: .78rem !important;
    color: rgba(255,215,100,.9) !important;
    letter-spacing: .03em !important;
    line-height: 1.35 !important;
}
.ldh-live-card-sm__state {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .68rem !important;
    color: rgba(255,180,100,.5) !important;
}
.ldh-live-slider-arrow {
    background: rgba(255,255,255,.07) !important;
    border: 1px solid rgba(212,175,55,.2) !important;
    border-radius: 50% !important;
    color: var(--ldh-gold-lt) !important;
    width: 40px !important;
    height: 40px !important;
    transition: all .2s !important;
}
.ldh-live-slider-arrow:hover {
    background: rgba(255,107,0,.15) !important;
    border-color: rgba(255,107,0,.4) !important;
}

/* ══════════════════════════════════════════════════════════════
   FEATURED TEMPLES & HOME SECTIONS
══════════════════════════════════════════════════════════════ */
.ldh-home-section--white {
    background: #fff !important;
}
.ldh-home-section--light {
    background: linear-gradient(180deg, var(--ldh-cream), var(--ldh-parchment)) !important;
}
.ldh-home-section {
    padding: 72px 0 !important;
}
.ldh-home-section__cta {
    text-align: center !important;
    margin-top: 40px !important;
}
/* Buttons */
.ldh-btn {
    font-family: 'Cinzel', serif !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    border-radius: 100px !important;
    padding: 13px 32px !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
    transition: all .25s !important;
}
.ldh-btn--primary, .ldh-btn--live {
    background: linear-gradient(135deg, var(--ldh-saffron), var(--ldh-saffron-dk)) !important;
    color: #fff !important;
    box-shadow: 0 4px 20px rgba(255,107,0,.4) !important;
    border: none !important;
}
.ldh-btn--primary:hover, .ldh-btn--live:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 32px rgba(255,107,0,.55) !important;
    color: #fff !important;
}
.ldh-btn--outline {
    background: transparent !important;
    border: 2px solid rgba(255,107,0,.4) !important;
    color: var(--ldh-saffron) !important;
}
.ldh-btn--outline:hover {
    background: rgba(255,107,0,.06) !important;
    border-color: var(--ldh-saffron) !important;
    transform: translateY(-2px) !important;
    color: var(--ldh-saffron-dk) !important;
}
.ldh-btn--ghost {
    background: transparent !important;
    border: 1.5px solid rgba(255,255,255,.15) !important;
    color: rgba(255,220,170,.55) !important;
}
.ldh-btn--ghost:hover {
    border-color: rgba(212,175,55,.3) !important;
    color: rgba(255,220,170,.8) !important;
}
.ldh-btn--lg {
    padding: 16px 48px !important;
    font-size: .88rem !important;
}

/* ══════════════════════════════════════════════════════════════
   EXPLORE DIRECTORY SECTION
══════════════════════════════════════════════════════════════ */
.ldh-explore-section {
    background: linear-gradient(180deg, var(--ldh-dark) 0%, #0A0200 100%) !important;
    padding: 72px 0 !important;
    border-top: 1px solid rgba(212,175,55,.08) !important;
    position: relative !important;
    overflow: hidden !important;
}
.ldh-explore-section::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(ellipse at 50% 100%, rgba(255,107,0,.06) 0%, transparent 65%) !important;
    pointer-events: none !important;
}
.ldh-explore-section .ldh-home-section__label { color: var(--ldh-gold-lt) !important; background: rgba(212,175,55,.1) !important; border-color: rgba(212,175,55,.25) !important; }
.ldh-explore-section .ldh-home-section__title { color: #fff !important; }
.ldh-explore-tabs {
    display: flex !important;
    gap: 8px !important;
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(212,175,55,.15) !important;
    border-radius: 100px !important;
    padding: 5px !important;
}
.ldh-explore-tab {
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    padding: 9px 20px !important;
    border-radius: 100px !important;
    border: none !important;
    background: transparent !important;
    color: rgba(255,215,100,.5) !important;
    cursor: pointer !important;
    transition: all .22s !important;
}
.ldh-explore-tab--active {
    background: linear-gradient(135deg, var(--ldh-saffron), var(--ldh-saffron-dk)) !important;
    color: #fff !important;
    box-shadow: 0 4px 16px rgba(255,107,0,.4) !important;
}
/* Deity cards */
.ldh-deity-card {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(212,175,55,.14) !important;
    border-radius: 14px !important;
    padding: 22px 16px !important;
    text-align: center !important;
    transition: all .25s !important;
    text-decoration: none !important;
}
.ldh-deity-card:hover {
    background: rgba(212,175,55,.08) !important;
    border-color: rgba(212,175,55,.35) !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 12px 36px rgba(0,0,0,.4) !important;
}
.ldh-deity-card__icon {
    font-size: 2.2rem !important;
    margin-bottom: 10px !important;
    display: block !important;
    filter: drop-shadow(0 0 14px rgba(212,175,55,.3)) !important;
}
.ldh-deity-card__name {
    font-family: 'Cinzel', serif !important;
    font-size: .82rem !important;
    color: rgba(255,215,100,.9) !important;
    letter-spacing: .04em !important;
    display: block !important;
    margin-bottom: 4px !important;
}
.ldh-deity-card__count {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .68rem !important;
    color: rgba(255,180,100,.45) !important;
}
/* State cards */
.ldh-state-card {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(212,175,55,.12) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    transition: all .22s !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}
.ldh-state-card:hover {
    background: rgba(255,107,0,.07) !important;
    border-color: rgba(255,107,0,.3) !important;
    transform: translateY(-2px) !important;
}
.ldh-state-card__name {
    font-family: 'Cinzel', serif !important;
    font-size: .78rem !important;
    color: rgba(255,215,100,.85) !important;
    flex: 1 !important;
}
.ldh-state-card__count {
    font-family: 'Cinzel', serif !important;
    font-size: .65rem !important;
    background: rgba(212,175,55,.1) !important;
    color: rgba(212,175,55,.6) !important;
    padding: 2px 8px !important;
    border-radius: 100px !important;
}
/* Type cards */
.ldh-type-card {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid rgba(212,175,55,.1) !important;
    border-radius: 12px !important;
    padding: 14px 18px !important;
    transition: all .22s !important;
    text-decoration: none !important;
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
}
.ldh-type-card:hover {
    background: rgba(212,175,55,.06) !important;
    border-color: rgba(212,175,55,.28) !important;
    transform: translateY(-2px) !important;
}
.ldh-type-card__icon { font-size: 1.5rem !important; flex-shrink: 0 !important; }
.ldh-type-card__name {
    font-family: 'Cinzel', serif !important;
    font-size: .78rem !important;
    color: rgba(255,215,100,.88) !important;
}
.ldh-type-card__count {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .68rem !important;
    color: rgba(255,180,100,.4) !important;
}
.ldh-type-card__arrow {
    margin-left: auto !important;
    color: rgba(212,175,55,.35) !important;
    font-size: .9rem !important;
    transition: transform .2s !important;
}
.ldh-type-card:hover .ldh-type-card__arrow { transform: translateX(4px) !important; color: rgba(212,175,55,.65) !important; }

/* ══════════════════════════════════════════════════════════════
   WHY US — FEATURE CARDS
══════════════════════════════════════════════════════════════ */
.ldh-features-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 24px !important;
}
@media(max-width:860px){ .ldh-features-grid { grid-template-columns: repeat(2, 1fr) !important; } }
@media(max-width:560px){ .ldh-features-grid { grid-template-columns: 1fr !important; } }
.ldh-feature-card {
    background: #fff !important;
    border: 1px solid rgba(212,175,55,.12) !important;
    border-radius: 18px !important;
    padding: 32px 24px !important;
    box-shadow: var(--ldh-shadow) !important;
    transition: all .25s !important;
    text-align: center !important;
    position: relative !important;
    overflow: hidden !important;
}
.ldh-feature-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: 0; right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, var(--ldh-saffron), var(--ldh-gold)) !important;
    opacity: 0 !important;
    transition: opacity .25s !important;
}
.ldh-feature-card:hover { transform: translateY(-6px) !important; box-shadow: 0 16px 48px rgba(42,14,0,.14) !important; }
.ldh-feature-card:hover::before { opacity: 1 !important; }
.ldh-feature-card__icon {
    font-size: 2.6rem !important;
    display: block !important;
    margin-bottom: 16px !important;
    filter: drop-shadow(0 0 12px rgba(255,107,0,.2)) !important;
}
.ldh-feature-card__title {
    font-family: 'Cinzel', serif !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    color: var(--ldh-maroon) !important;
    margin: 0 0 10px !important;
    letter-spacing: .04em !important;
}
.ldh-feature-card__desc {
    font-family: 'Lora', serif !important;
    font-size: .84rem !important;
    color: var(--ldh-muted) !important;
    line-height: 1.7 !important;
    margin: 0 !important;
}

/* ══════════════════════════════════════════════════════════════
   BLOG HIGHLIGHTS
══════════════════════════════════════════════════════════════ */
.ldh-blog-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 24px !important;
}
@media(max-width:860px){ .ldh-blog-grid { grid-template-columns: 1fr 1fr !important; } }
@media(max-width:560px){ .ldh-blog-grid { grid-template-columns: 1fr !important; } }
.ldh-blog-card {
    background: #fff !important;
    border-radius: 16px !important;
    border: 1px solid rgba(212,175,55,.1) !important;
    box-shadow: var(--ldh-shadow) !important;
    overflow: hidden !important;
    transition: all .25s !important;
    display: flex !important;
    flex-direction: column !important;
}
.ldh-blog-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 14px 48px rgba(42,14,0,.14) !important;
    border-color: rgba(255,107,0,.2) !important;
}
.ldh-blog-card__thumb {
    display: block !important;
    overflow: hidden !important;
    aspect-ratio: 16/9 !important;
}
.ldh-blog-card__thumb img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    transition: transform .4s !important;
    display: block !important;
}
.ldh-blog-card:hover .ldh-blog-card__thumb img { transform: scale(1.06) !important; }
.ldh-blog-card__body {
    padding: 22px 20px !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}
.ldh-blog-card__date {
    font-family: 'Cinzel', serif !important;
    font-size: .65rem !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    color: var(--ldh-saffron) !important;
    display: block !important;
    margin-bottom: 8px !important;
}
.ldh-blog-card__title {
    font-family: 'Cinzel', serif !important;
    font-size: .92rem !important;
    font-weight: 700 !important;
    color: var(--ldh-text) !important;
    line-height: 1.4 !important;
    margin: 0 0 10px !important;
    overflow-wrap: break-word !important;
}
.ldh-blog-card__title a { color: inherit !important; text-decoration: none !important; transition: color .2s !important; }
.ldh-blog-card:hover .ldh-blog-card__title a { color: var(--ldh-saffron) !important; }
.ldh-blog-card__excerpt {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .82rem !important;
    color: var(--ldh-muted) !important;
    line-height: 1.65 !important;
    margin: 0 0 14px !important;
    flex: 1 !important;
}
.ldh-blog-card__link {
    font-family: 'Cinzel', serif !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: var(--ldh-saffron) !important;
    text-decoration: none !important;
    transition: letter-spacing .2s !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
}
.ldh-blog-card:hover .ldh-blog-card__link { letter-spacing: .14em !important; }

/* ══════════════════════════════════════════════════════════════
   SUPPORT US SECTION — emotional premium
══════════════════════════════════════════════════════════════ */
.ldh-home-support {
    background: linear-gradient(160deg, var(--ldh-dark) 0%, #0A0200 100%) !important;
    border-top: 1px solid rgba(212,175,55,.08) !important;
    position: relative !important;
    overflow: hidden !important;
    padding: 80px 0 !important;
}
.ldh-home-support::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        radial-gradient(ellipse at 20% 50%, rgba(255,107,0,.08), transparent 55%),
        radial-gradient(ellipse at 80% 30%, rgba(212,175,55,.05), transparent 55%) !important;
    pointer-events: none !important;
}
.ldh-home-support__badge {
    font-family: 'Cinzel', serif !important;
    font-size: .68rem !important;
    letter-spacing: .16em !important;
    background: rgba(212,175,55,.1) !important;
    border: 1px solid rgba(212,175,55,.22) !important;
    padding: 5px 16px !important;
    border-radius: 100px !important;
    color: rgba(212,175,55,.75) !important;
    display: inline-block !important;
    margin-bottom: 16px !important;
}
.ldh-home-support__title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: clamp(1.6rem, 3vw, 2.6rem) !important;
    color: #fff !important;
    line-height: 1.2 !important;
    margin: 0 0 16px !important;
    text-shadow: 0 2px 30px rgba(0,0,0,.5) !important;
}
.ldh-home-support__accent {
    color: var(--ldh-gold-lt) !important;
}
.ldh-home-support__sub {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: 1rem !important;
    color: rgba(255,220,170,.55) !important;
    line-height: 1.75 !important;
    margin: 0 0 32px !important;
}
.ldh-home-support__card {
    background: rgba(255,255,255,.05) !important;
    border: 1px solid rgba(212,175,55,.12) !important;
    border-radius: 14px !important;
    padding: 18px 20px !important;
    display: flex !important;
    gap: 14px !important;
    align-items: flex-start !important;
    transition: all .22s !important;
}
.ldh-home-support__card:hover {
    background: rgba(255,107,0,.06) !important;
    border-color: rgba(255,107,0,.2) !important;
    transform: translateX(4px) !important;
}
.ldh-home-support__card-icon { font-size: 2rem !important; flex-shrink: 0 !important; }
.ldh-home-support__card strong {
    font-family: 'Cinzel', serif !important;
    font-size: .85rem !important;
    color: rgba(255,215,100,.85) !important;
    display: block !important;
    margin-bottom: 4px !important;
    letter-spacing: .04em !important;
}
.ldh-home-support__card p {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .8rem !important;
    color: rgba(255,200,150,.5) !important;
    line-height: 1.6 !important;
    margin: 0 !important;
}
/* CTA box */
.ldh-home-support__cta-box {
    background: linear-gradient(160deg, rgba(40,10,0,.8), rgba(20,5,0,.9)) !important;
    border: 1px solid rgba(212,175,55,.2) !important;
    border-radius: 20px !important;
    padding: 40px 36px !important;
    text-align: center !important;
    position: relative !important;
    overflow: hidden !important;
    box-shadow: 0 16px 60px rgba(0,0,0,.5) !important;
}
.ldh-home-support__cta-box::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: 0; right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, var(--ldh-gold), var(--ldh-saffron), var(--ldh-gold), transparent) !important;
}
.ldh-home-support__diya {
    font-size: 3rem !important;
    display: block !important;
    margin-bottom: 16px !important;
    filter: drop-shadow(0 0 20px rgba(212,175,55,.5)) !important;
}
.ldh-home-support__cta-title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: 1.4rem !important;
    color: var(--ldh-gold-lt) !important;
    margin: 0 0 12px !important;
}
.ldh-home-support__cta-desc {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .88rem !important;
    color: rgba(255,200,150,.55) !important;
    line-height: 1.7 !important;
    margin: 0 0 20px !important;
}
.ldh-home-support__cta-desc strong { color: rgba(255,215,100,.75) !important; }
.ldh-home-support__quote {
    background: rgba(255,255,255,.04) !important;
    border-left: 3px solid var(--ldh-gold) !important;
    border-radius: 0 10px 10px 0 !important;
    padding: 14px 18px !important;
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .82rem !important;
    color: rgba(255,200,150,.55) !important;
    line-height: 1.65 !important;
    margin: 0 0 24px !important;
    text-align: left !important;
}
.ldh-home-support__quote cite {
    font-size: .75rem !important;
    color: rgba(212,175,55,.5) !important;
    font-style: normal !important;
}
.ldh-home-support__btn-primary {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: linear-gradient(135deg, var(--ldh-saffron), var(--ldh-saffron-dk)) !important;
    color: #fff !important;
    font-family: 'Cinzel', serif !important;
    font-size: .8rem !important;
    font-weight: 700 !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    padding: 14px 30px !important;
    border-radius: 100px !important;
    text-decoration: none !important;
    box-shadow: 0 4px 20px rgba(255,107,0,.45) !important;
    transition: all .22s !important;
    margin-bottom: 10px !important;
    width: 100% !important;
    justify-content: center !important;
}
.ldh-home-support__btn-primary:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 32px rgba(255,107,0,.6) !important;
    color: #fff !important;
}
.ldh-home-support__btn-secondary {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: transparent !important;
    border: 1.5px solid rgba(212,175,55,.25) !important;
    color: rgba(255,215,100,.6) !important;
    font-family: 'Cinzel', serif !important;
    font-size: .78rem !important;
    letter-spacing: .07em !important;
    text-transform: uppercase !important;
    padding: 12px 28px !important;
    border-radius: 100px !important;
    text-decoration: none !important;
    transition: all .22s !important;
    width: 100% !important;
    justify-content: center !important;
}
.ldh-home-support__btn-secondary:hover {
    background: rgba(212,175,55,.07) !important;
    border-color: rgba(212,175,55,.4) !important;
    color: var(--ldh-gold-lt) !important;
}
.ldh-home-support__trust {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    margin-top: 16px !important;
    font-family: 'Cinzel', serif !important;
    font-size: .62rem !important;
    letter-spacing: .08em !important;
    color: rgba(255,200,100,.35) !important;
    flex-wrap: wrap !important;
}

/* ══════════════════════════════════════════════════════════════
   SUBMIT CTA SECTION
══════════════════════════════════════════════════════════════ */
.ldh-submit-cta-section {
    background: linear-gradient(135deg, var(--ldh-saffron-dk) 0%, #8B2000 50%, var(--ldh-maroon) 100%) !important;
    position: relative !important;
    overflow: hidden !important;
    padding: 80px 0 !important;
    text-align: center !important;
}
.ldh-submit-cta-section::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        radial-gradient(ellipse at 50% -20%, rgba(255,200,0,.15), transparent 60%),
        url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='rgba(255,255,255,0.04)' stroke-width='0.5'%3E%3Ccircle cx='30' cy='30' r='25'/%3E%3Ccircle cx='30' cy='30' r='15'/%3E%3C/g%3E%3C/svg%3E") !important;
    background-size: auto, 60px 60px !important;
    pointer-events: none !important;
}
.ldh-submit-cta__glow {
    background: radial-gradient(ellipse at 50% 50%, rgba(255,200,0,.15), transparent 70%) !important;
}
.ldh-submit-cta__icon {
    font-size: 3rem !important;
    display: block !important;
    margin: 0 auto 16px !important;
    filter: drop-shadow(0 0 20px rgba(255,200,0,.4)) !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-submit-cta__title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
    color: #fff !important;
    margin: 0 0 12px !important;
    text-shadow: 0 2px 20px rgba(0,0,0,.4) !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-submit-cta__desc {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: 1rem !important;
    color: rgba(255,230,200,.7) !important;
    margin: 0 0 32px !important;
    line-height: 1.7 !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-submit-cta__inner .ldh-btn--primary {
    background: #fff !important;
    color: var(--ldh-saffron-dk) !important;
    box-shadow: 0 6px 28px rgba(0,0,0,.3) !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-submit-cta__inner .ldh-btn--primary:hover {
    background: var(--ldh-gold-lt) !important;
    color: var(--ldh-maroon) !important;
    box-shadow: 0 10px 40px rgba(0,0,0,.4) !important;
}

/* ══════════════════════════════════════════════════════════════
   MOBILE OVERRIDES
══════════════════════════════════════════════════════════════ */
@media (max-width: 860px) {
    .ldh-home-section { padding: 48px 0 !important; }
    .ldh-explore-section { padding: 48px 0 !important; }
    .ldh-live-cards-section { padding: 32px 0 !important; }
    .ldh-bhakti-section__inner { padding: 16px !important; }
    .ldh-bhakti-row1 { grid-template-columns: 1fr !important; }
    .ldh-home-support { padding: 52px 0 !important; }
    .ldh-submit-cta-section { padding: 52px 0 !important; }
    .ldh-features-grid { grid-template-columns: 1fr 1fr !important; }
}
@media (max-width: 560px) {
    .ldh-home-section__title { font-size: 1.5rem !important; }
    .ldh-features-grid { grid-template-columns: 1fr !important; }
    .ldh-events-strip__row { grid-template-columns: 1fr 1fr !important; }
    .ldh-blog-grid { grid-template-columns: 1fr !important; }
    .ldh-home-support__cta-box { padding: 28px 20px !important; }
}


/* ══════════════════════════════════════════════════════════════
   DEVOTIONAL COLOUR PALETTE RESET
   Warm saffron-cream-gold — feels like a real temple
══════════════════════════════════════════════════════════════ */
:root {
    /* Hero: warm amber-maroon, NOT pitch black */
    --ldh-hero-bg:     linear-gradient(160deg, #2A0800 0%, #3D1200 35%, #1A0A20 100%);
    /* Body sections: warm cream & parchment */
    --ldh-body-warm:   #FFFBF4;
    --ldh-body-light:  #FFF6E8;
    --ldh-body-gold:   #FFF0D4;
    /* Bhakti section: warm sunrise */
    --ldh-bhakti-bg:   linear-gradient(160deg, #FFF8EE 0%, #FFF2D8 50%, #FFECC4 100%);
    /* Cards */
    --ldh-card-bg:     #FFFDF8;
    --ldh-card-border: rgba(212,175,55,.2);
    /* Live section: deep warm (not black) */
    --ldh-live-bg:     linear-gradient(160deg, #1A0600 0%, #2A1000 100%);
    /* Explore section: rich maroon-amber */
    --ldh-explore-bg:  linear-gradient(160deg, #2A0A00 0%, #1A0600 100%);
    /* Support: deep warm amber */
    --ldh-support-bg:  linear-gradient(160deg, #1E0800 0%, #2A1200 50%, #1A0A18 100%);
}

/* Hero — warm amber instead of cold dark */
.ldh-hero {
    background: var(--ldh-hero-bg) !important;
}
.ldh-hero__video-overlay {
    background:
        linear-gradient(to bottom, rgba(30,8,0,.15) 0%, rgba(30,8,0,.6) 45%, rgba(20,5,0,.93) 100%),
        linear-gradient(105deg, rgba(100,30,0,.45) 0%, transparent 60%) !important;
}
/* Stronger saffron-gold glows in hero */
.ldh-hero__glow--a {
    background: radial-gradient(circle, rgba(255,140,30,.4) 0%, transparent 70%) !important;
}
.ldh-hero__glow--b {
    background: radial-gradient(circle, rgba(212,175,55,.22) 0%, transparent 70%) !important;
}

/* Main body background — warm cream */
.ldh-homepage {
    background: var(--ldh-body-warm) !important;
}
.ldh-home-section--white { background: #fff !important; }
.ldh-home-section--light { background: var(--ldh-body-light) !important; }

/* Events strip — warm amber glow instead of dark */
.ldh-events-strip {
    background: linear-gradient(135deg, #2A0E00 0%, #3D1800 100%) !important;
    border-bottom: 1px solid rgba(212,175,55,.2) !important;
    position: relative !important;
}
.ldh-events-strip::after {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background: radial-gradient(ellipse at 50% 100%, rgba(255,140,0,.08) 0%, transparent 70%) !important;
    pointer-events: none !important;
}

/* Live section — warm not black */
.ldh-live-cards-section {
    background: var(--ldh-live-bg) !important;
    border-top: 2px solid rgba(255,107,0,.15) !important;
    border-bottom: 2px solid rgba(212,175,55,.12) !important;
}
.ldh-live-cards-section::before {
    background: radial-gradient(ellipse at 50% 0%, rgba(255,130,0,.1) 0%, transparent 65%) !important;
}

/* Explore section — warm amber */
.ldh-explore-section {
    background: var(--ldh-explore-bg) !important;
    border-top: 2px solid rgba(255,107,0,.15) !important;
    border-bottom: 2px solid rgba(212,175,55,.1) !important;
}
.ldh-explore-section::before {
    background: radial-gradient(ellipse at 50% 100%, rgba(255,120,0,.08) 0%, transparent 60%) !important;
}

/* Support section — warm */
.ldh-home-support {
    background: var(--ldh-support-bg) !important;
}

/* CTA submit section — pure saffron gradient */
.ldh-submit-cta-section {
    background: linear-gradient(135deg, #C83800 0%, #8B2000 50%, #5A1A00 100%) !important;
}

/* ══════════════════════════════════════════════════════════════
   BHAKTI SECTION — Full Premium Redesign
   Warm sunrise, temple morning feeling
══════════════════════════════════════════════════════════════ */
.ldh-bhakti-section {
    background: var(--ldh-bhakti-bg) !important;
    border-top: 3px solid rgba(255,107,0,.25) !important;
    border-bottom: 3px solid rgba(212,175,55,.2) !important;
    position: relative !important;
    overflow: hidden !important;
}
/* Warm Om watermark */
.ldh-bhakti-section::after {
    content: 'ॐ' !important;
    position: absolute !important;
    right: -2% !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    font-size: 20rem !important;
    color: rgba(212,175,55,.06) !important;
    font-family: serif !important;
    pointer-events: none !important;
    line-height: 1 !important;
}
.ldh-bhakti-section::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important;
    background:
        radial-gradient(ellipse at 10% 50%, rgba(255,140,0,.08), transparent 50%),
        radial-gradient(ellipse at 90% 30%, rgba(212,175,55,.07), transparent 50%) !important;
    pointer-events: none !important;
}
/* Section heading */
.ldh-bhakti-heading {
    padding: 40px 24px 4px !important;
}
.ldh-bhakti-heading__tag {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: rgba(255,107,0,.1) !important;
    border: 1px solid rgba(255,107,0,.25) !important;
    color: #CC4400 !important;
    font-family: 'Cinzel', serif !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    padding: 5px 16px !important;
    border-radius: 100px !important;
    margin-bottom: 12px !important;
}
.ldh-bhakti-heading__title {
    font-family: 'Cinzel Decorative', serif !important;
    font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
    font-weight: 900 !important;
    background: linear-gradient(135deg, #8B2500, #FF6B00 50%, #D4AF37) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    letter-spacing: .02em !important;
}
.ldh-bhakti-heading__sub {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .92rem !important;
    color: #9B6B40 !important;
}
.ldh-bhakti-heading__line {
    width: 60px !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, #FF6B00, #D4AF37, transparent) !important;
    border-radius: 2px !important;
    margin: 10px auto 0 !important;
}

/* Column cards — warm white on parchment bg */
.ldh-bhakti-col {
    background: #fff !important;
    border: 1px solid rgba(212,175,55,.22) !important;
    border-radius: 20px !important;
    box-shadow: 0 4px 28px rgba(130,60,0,.1) !important;
    transition: box-shadow .28s, transform .22s !important;
}
.ldh-bhakti-col:hover {
    box-shadow: 0 12px 48px rgba(130,60,0,.15) !important;
    transform: translateY(-4px) !important;
}
/* Column header — warm maroon gold */
.ldh-bhakti-col__head {
    background: linear-gradient(135deg, #4A1000, #7A2500) !important;
    border-bottom: 2px solid rgba(255,160,50,.35) !important;
    padding: 15px 20px !important;
    border-radius: 20px 20px 0 0 !important;
}
.ldh-bhakti-col__title {
    font-family: 'Cinzel', serif !important;
    font-size: .92rem !important;
    color: #FFE0A0 !important;
    letter-spacing: .07em !important;
}
.ldh-bhakti-col__sub {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    color: rgba(255,200,130,.6) !important;
    font-size: .68rem !important;
}
.ldh-bhakti-col__icon { font-size: 1.6rem !important; }

/* ── AARTI LIST ── premium timeline */
.ldh-aarti-list {
    padding: 8px 0 4px !important;
}
.ldh-aarti-item {
    display: grid !important;
    grid-template-columns: 2rem 1fr auto !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 11px 20px !important;
    border-bottom: 1px solid rgba(255,200,100,.12) !important;
    transition: background .2s !important;
    position: relative !important;
}
.ldh-aarti-item:last-child { border-bottom: none !important; }
.ldh-aarti-item:hover { background: rgba(255,240,200,.4) !important; }
.ldh-aarti-item--live {
    background: linear-gradient(90deg, rgba(255,107,0,.07), rgba(255,255,255,.9)) !important;
    border-left: 4px solid #FF6B00 !important;
    padding-left: 16px !important;
}
.ldh-aarti-item--done { opacity: .45 !important; }
.ldh-aarti-item__icon { font-size: 1.1rem !important; text-align: center !important; }
.ldh-aarti-item__body strong {
    font-family: 'Cinzel', serif !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: #3A1000 !important;
    display: block !important;
    letter-spacing: .03em !important;
}
.ldh-aarti-item__body span {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .68rem !important;
    color: #9B6B40 !important;
    display: block !important;
    margin-top: 1px !important;
}
.ldh-aarti-item__time { text-align: right !important; }
.ldh-aarti-item__clock {
    font-family: 'Cinzel', serif !important;
    font-size: .88rem !important;
    font-weight: 700 !important;
    color: #CC4400 !important;
    display: block !important;
}
.ldh-aarti-item__status {
    font-family: 'Cinzel', serif !important;
    font-size: .58rem !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    display: block !important;
    color: #C4A060 !important;
}
.ldh-aarti-item--live .ldh-aarti-item__status {
    color: #CC4400 !important;
    font-weight: 800 !important;
    animation: ldh-pulse-text 2s ease-in-out infinite !important;
}
@keyframes ldh-pulse-text {
    0%,100% { opacity: 1; }
    50% { opacity: .6; }
}

/* ── MANTRA CARD ── sacred & atmospheric */
.ldh-mantra-card {
    background: linear-gradient(160deg, #FFFBF2, #FFF5E0) !important;
    border: 1px solid rgba(212,175,55,.25) !important;
    border-radius: 16px !important;
    margin: 16px 16px 0 !important;
    padding: 24px 20px !important;
    text-align: center !important;
    position: relative !important;
    overflow: hidden !important;
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    gap: 14px !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.6), 0 2px 16px rgba(180,80,0,.06) !important;
}
/* Large Om behind mantra */
.ldh-mantra-card::before {
    content: 'ॐ' !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -50%) !important;
    font-size: 7rem !important;
    color: rgba(212,175,55,.1) !important;
    font-family: serif !important;
    pointer-events: none !important;
    line-height: 1 !important;
}
.ldh-mantra-card__om {
    display: block !important;
    font-family: serif !important;
    font-size: 2rem !important;
    color: rgba(212,175,55,.5) !important;
    line-height: 1 !important;
    margin-bottom: -4px !important;
}
.ldh-mantra-card__text {
    font-family: 'Noto Sans Devanagari', serif !important;
    font-size: 1.3rem !important;
    font-weight: 700 !important;
    background: linear-gradient(135deg, #8B2500, #CC4400, #D4AF37) !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
    background-clip: text !important;
    line-height: 1.5 !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-mantra-card__meaning {
    background: rgba(255,240,210,.7) !important;
    border-left: 3px solid #D4AF37 !important;
    border-radius: 0 10px 10px 0 !important;
    padding: 10px 14px !important;
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .82rem !important;
    color: #7A4A20 !important;
    line-height: 1.7 !important;
    text-align: left !important;
    width: 100% !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-mantra-card__copy {
    background: linear-gradient(135deg, #FF6B00, #CC3C00) !important;
    color: #fff !important;
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: .09em !important;
    padding: 10px 28px !important;
    border-radius: 100px !important;
    box-shadow: 0 4px 18px rgba(255,107,0,.4) !important;
    border: none !important;
    cursor: pointer !important;
    transition: all .22s !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-mantra-card__copy:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 8px 28px rgba(255,107,0,.55) !important;
}
.ldh-mantra-tip {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px !important;
    background: rgba(255,240,200,.5) !important;
    border: 1px solid rgba(212,175,55,.2) !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    margin: 10px 16px 16px !important;
}
.ldh-mantra-tip span { font-size: 1rem !important; flex-shrink: 0 !important; }
.ldh-mantra-tip p {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .75rem !important;
    color: #9B6B40 !important;
    line-height: 1.55 !important;
    margin: 0 !important;
}

/* ── PANCHANG ── real data, beautifully displayed */
.ldh-panchang-card {
    padding: 6px 0 12px !important;
    flex: 1 !important;
}
.ldh-panchang-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
}
.ldh-panchang-item {
    display: flex !important;
    flex-direction: column !important;
    padding: 10px 16px !important;
    border-bottom: 1px solid rgba(212,175,55,.1) !important;
    border-right: 1px solid rgba(212,175,55,.1) !important;
    transition: background .2s !important;
}
.ldh-panchang-item:hover { background: rgba(255,240,200,.4) !important; }
.ldh-panchang-item:nth-child(even) { border-right: none !important; }
.ldh-panchang-item__label {
    font-family: 'Cinzel', serif !important;
    font-size: .6rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .1em !important;
    color: #CC4400 !important;
    margin-bottom: 3px !important;
}
.ldh-panchang-item__val {
    font-family: 'Cinzel', serif !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: #3A1000 !important;
    line-height: 1.3 !important;
}
.ldh-panchang-item__val em {
    font-style: normal !important;
    background: rgba(255,107,0,.12) !important;
    color: #CC4400 !important;
    border-radius: 5px !important;
    padding: 1px 6px !important;
    font-size: .7rem !important;
    margin-left: 4px !important;
    font-family: 'Cinzel', serif !important;
}
.ldh-panchang-item--highlight {
    background: linear-gradient(135deg, rgba(255,107,0,.05), rgba(212,175,55,.04)) !important;
}
.ldh-panchang-item--highlight .ldh-panchang-item__val { color: #CC4400 !important; }
.ldh-panchang-divider {
    grid-column: 1/-1 !important;
    height: 1px !important;
    background: linear-gradient(90deg, transparent, rgba(212,175,55,.3), transparent) !important;
    margin: 4px 0 !important;
}
.ldh-panchang-timings {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-column: 1/-1 !important;
}
.ldh-panchang-timing {
    display: flex !important;
    flex-direction: column !important;
    padding: 9px 16px !important;
}
.ldh-panchang-timing__label {
    font-family: 'Cinzel', serif !important;
    font-size: .58rem !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    margin-bottom: 3px !important;
}
.ldh-panchang-timing--warn .ldh-panchang-timing__label { color: #DC2626 !important; }
.ldh-panchang-timing--good .ldh-panchang-timing__label { color: #16A34A !important; }
.ldh-panchang-timing__val {
    font-family: 'Cinzel', serif !important;
    font-size: .76rem !important;
    font-weight: 700 !important;
    color: #3A1000 !important;
}
.ldh-panchang-special {
    grid-column: 1/-1 !important;
    background: linear-gradient(135deg, rgba(255,107,0,.08), rgba(212,175,55,.06)) !important;
    border: 1px solid rgba(255,140,0,.22) !important;
    border-radius: 10px !important;
    padding: 8px 16px !important;
    font-family: 'Cinzel', serif !important;
    font-size: .72rem !important;
    color: #7A3500 !important;
    font-weight: 700 !important;
    text-align: center !important;
    letter-spacing: .05em !important;
    margin: 6px 14px !important;
}

/* ── LIVE PANCHANG badge ── shows it updates automatically */
.ldh-panchang-live-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    background: rgba(34,197,94,.1) !important;
    border: 1px solid rgba(34,197,94,.25) !important;
    color: #15803d !important;
    font-family: 'Cinzel', serif !important;
    font-size: .58rem !important;
    font-weight: 700 !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    padding: 3px 10px !important;
    border-radius: 100px !important;
    margin-left: 8px !important;
    vertical-align: middle !important;
}
.ldh-panchang-live-dot {
    width: 5px !important;
    height: 5px !important;
    border-radius: 50% !important;
    background: #22c55e !important;
    display: inline-block !important;
    animation: ldh-pulse-live 1.8s ease-in-out infinite !important;
}
@keyframes ldh-pulse-live {
    0%,100% { opacity: 1; transform: scale(1); }
    50% { opacity: .5; transform: scale(.7); }
}

/* ── TEMPLE SPOTLIGHT ── warm premium */
.ldh-spotlight-card {
    background: #fff !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    border: 1px solid rgba(212,175,55,.2) !important;
    box-shadow: 0 4px 24px rgba(130,60,0,.1) !important;
}
.ldh-spotlight-card__body {
    background: linear-gradient(135deg, #fff, #FFFBF4) !important;
    padding: 24px 28px !important;
}
.ldh-spotlight-card__name {
    font-family: 'Cinzel', serif !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    margin: 0 0 10px !important;
}
.ldh-spotlight-card__name a { color: #3A1000 !important; }
.ldh-spotlight-card__name a:hover { color: #FF6B00 !important; }
.ldh-spotlight-card__meta span {
    background: rgba(255,107,0,.07) !important;
    border: 1px solid rgba(255,107,0,.15) !important;
    color: #7A4A20 !important;
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .75rem !important;
    padding: 4px 12px !important;
    border-radius: 20px !important;
}
.ldh-spotlight-card__desc {
    font-family: 'Lora', serif !important;
    font-size: .9rem !important;
    color: #7A4A20 !important;
    line-height: 1.75 !important;
}

/* ══════════════════════════════════════════════════════════════
   FESTIVALS STRIP — "Auto-updates" treatment
   Shows devotees that festivals are always current
══════════════════════════════════════════════════════════════ */
.ldh-events-strip__head {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    margin-bottom: 22px !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
}
/* Add "Auto-Updated" badge next to label */
.ldh-events-strip__label::after {
    content: '● Auto-Updated' !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    background: rgba(34,197,94,.12) !important;
    border: 1px solid rgba(34,197,94,.25) !important;
    color: #4ade80 !important;
    font-size: .58rem !important;
    padding: 2px 9px !important;
    border-radius: 100px !important;
    margin-left: 10px !important;
    font-weight: 600 !important;
    letter-spacing: .08em !important;
    vertical-align: middle !important;
    animation: ldh-pulse-text 2.5s ease-in-out infinite !important;
}
/* Festival cards — richer */
.ldh-event-card {
    background: rgba(255,255,255,.06) !important;
    border: 1px solid rgba(212,175,55,.18) !important;
    border-radius: 16px !important;
    padding: 16px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
    transition: all .25s !important;
    cursor: default !important;
    position: relative !important;
    overflow: hidden !important;
    backdrop-filter: blur(8px) !important;
}
.ldh-event-card::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: 0; right: 0 !important;
    height: 2px !important;
    background: linear-gradient(90deg, transparent, rgba(212,175,55,.4), transparent) !important;
}
.ldh-event-card:hover {
    background: rgba(212,175,55,.1) !important;
    border-color: rgba(212,175,55,.4) !important;
    transform: translateY(-4px) !important;
    box-shadow: 0 10px 32px rgba(0,0,0,.35) !important;
}
.ldh-event-card--urgent {
    background: rgba(255,107,0,.1) !important;
    border-color: rgba(255,107,0,.4) !important;
    box-shadow: 0 0 24px rgba(255,107,0,.12) !important;
}
.ldh-event-card--urgent::before {
    background: linear-gradient(90deg, transparent, rgba(255,107,0,.6), transparent) !important;
}
.ldh-event-card__icon {
    font-size: 2rem !important;
    margin-bottom: 4px !important;
    display: block !important;
    line-height: 1 !important;
    filter: drop-shadow(0 0 8px rgba(255,160,0,.35)) !important;
}
.ldh-event-card__name {
    font-family: 'Cinzel', serif !important;
    font-size: .8rem !important;
    font-weight: 700 !important;
    color: rgba(255,215,100,.95) !important;
    letter-spacing: .04em !important;
    display: block !important;
    line-height: 1.3 !important;
}
.ldh-event-card__desc {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .68rem !important;
    color: rgba(255,200,150,.55) !important;
    line-height: 1.45 !important;
    display: block !important;
}
.ldh-event-card__date {
    font-family: 'Cinzel', serif !important;
    font-size: .75rem !important;
    color: rgba(212,175,55,.65) !important;
    letter-spacing: .06em !important;
    display: block !important;
}
.ldh-event-card__when {
    font-family: 'Cinzel', serif !important;
    font-size: .64rem !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    color: rgba(212,175,55,.5) !important;
    margin-top: auto !important;
    display: block !important;
    padding-top: 4px !important;
    border-top: 1px solid rgba(255,255,255,.06) !important;
}
.ldh-event-card__when--soon {
    color: #4ade80 !important;
    font-weight: 700 !important;
}

/* ══════════════════════════════════════════════════════════════
   MOBILE OVERRIDES
══════════════════════════════════════════════════════════════ */
@media (max-width: 860px) {
    .ldh-bhakti-section::after { display: none !important; }
    .ldh-bhakti-heading { padding: 28px 16px 4px !important; }
}
@media (max-width: 580px) {
    .ldh-mantra-card { margin: 12px 12px 0 !important; }
    .ldh-mantra-tip { margin: 8px 12px 12px !important; }
    .ldh-aarti-item { padding: 10px 14px !important; }
    .ldh-panchang-item { padding: 8px 12px !important; }
}

/* Festival strip — 8 items, responsive grid */
.ldh-events-strip__row {
    display: grid !important;
    grid-template-columns: repeat(8, 1fr) !important;
    gap: 10px !important;
}
@media(max-width:1200px){ .ldh-events-strip__row { grid-template-columns: repeat(4, 1fr) !important; } }
@media(max-width:760px) { .ldh-events-strip__row { grid-template-columns: repeat(2, 1fr) !important; } }
@media(max-width:480px) { .ldh-events-strip__row { grid-template-columns: repeat(2, 1fr) !important; } }

/* ══════════════════════════════════════════════════════════════
   MOBILE FIXES — Panchang visibility + slider polish
══════════════════════════════════════════════════════════════ */

/* Bhakti row — stack on mobile, panchang fully visible */
@media (max-width: 960px) {
    .ldh-bhakti-row1 {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
    .ldh-bhakti-col {
        width: 100% !important;
        min-width: 0 !important;
    }
    .ldh-panchang-card {
        overflow: visible !important;
    }
    .ldh-panchang-grid {
        grid-template-columns: 1fr 1fr !important;
        width: 100% !important;
    }
    .ldh-bhakti-section__inner {
        padding: 16px 16px 28px !important;
    }
    /* Spotlight — stack on mobile too */
    .ldh-spotlight-card {
        flex-direction: column !important;
    }
    .ldh-spotlight-card__img-wrap {
        width: 100% !important;
        height: 200px !important;
    }
    .ldh-spotlight-card__body {
        flex-direction: column !important;
        align-items: flex-start !important;
    }
}

@media (max-width: 600px) {
    .ldh-panchang-grid {
        grid-template-columns: 1fr 1fr !important;
    }
    .ldh-panchang-item {
        padding: 8px 12px !important;
    }
    .ldh-panchang-item__val {
        font-size: .76rem !important;
    }
    .ldh-panchang-timings {
        grid-template-columns: 1fr !important;
    }
    .ldh-bhakti-heading {
        padding: 24px 14px 4px !important;
    }
    .ldh-bhakti-heading__title {
        font-size: 1.4rem !important;
    }
}

/* Live slider — mobile arrow always visible, touch hint */
.ldh-live-slider-wrap {
    position: relative !important;
    cursor: grab !important;
}
.ldh-live-slider-wrap:active { cursor: grabbing !important; }
.ldh-live-slider-track {
    user-select: none !important;
    -webkit-user-select: none !important;
    transition: transform .35s cubic-bezier(.22,.68,0,1.2) !important;
}
/* Arrow buttons — bigger tap targets on mobile */
@media (max-width: 680px) {
    .ldh-live-slider-arrow {
        width: 40px !important;
        height: 40px !important;
        font-size: 1.4rem !important;
        flex-shrink: 0 !important;
        z-index: 3 !important;
        position: relative !important;
    }
    .ldh-live-slider-arrow--prev { order: 1 !important; }
    .ldh-live-slider-track-wrap  { order: 2 !important; }
    .ldh-live-slider-arrow--next { order: 3 !important; }
    .ldh-live-card-sm {
        flex: 0 0 145px !important;
        padding: 10px 12px !important;
    }
    .ldh-live-card-sm__img {
        height: 90px !important;
        margin: -10px -12px 8px !important;
    }
    .ldh-live-card-sm__name { font-size: .78rem !important; }
    .ldh-live-card-sm__state { font-size: .65rem !important; }
    .ldh-live-cards-head {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 8px !important;
    }
    .ldh-live-cards-viewall { align-self: flex-end !important; }
}

/* Swipe hint on mobile — subtle shimmer on first load */
@media (max-width: 760px) {
    .ldh-live-slider-track-wrap::after {
        content: '' !important;
        position: absolute !important;
        top: 0; right: 0; bottom: 0 !important;
        width: 40px !important;
        background: linear-gradient(to right, transparent, rgba(26,6,0,.5)) !important;
        pointer-events: none !important;
        z-index: 2 !important;
        border-radius: 0 10px 10px 0 !important;
    }
    .ldh-live-slider-track-wrap {
        position: relative !important;
    }
}


/* ══════════════════════════════════════════════════════════════
   MOBILE FIXES — Panchang + Slider
══════════════════════════════════════════════════════════════ */

/* ── Bhakti row1: stack on mobile ── */
@media (max-width: 900px) {
    .ldh-bhakti-row1 {
        grid-template-columns: 1fr 1fr !important;
        gap: 16px !important;
    }
    .ldh-panchang-col {
        grid-column: 1 / -1 !important; /* full width on tablet */
    }
    .ldh-panchang-grid {
        grid-template-columns: repeat(4, 1fr) !important;
    }
    .ldh-panchang-item:nth-child(even) {
        border-right: 1px solid rgba(212,175,55,.1) !important;
    }
    .ldh-panchang-item:nth-child(4n) {
        border-right: none !important;
    }
}
@media (max-width: 600px) {
    /* Stack ALL bhakti cols single column */
    .ldh-bhakti-row1 {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
    .ldh-panchang-col {
        grid-column: auto !important;
    }
    /* Panchang — 2 col grid, fully visible */
    .ldh-panchang-grid {
        grid-template-columns: 1fr 1fr !important;
    }
    .ldh-panchang-item {
        padding: 9px 12px !important;
    }
    .ldh-panchang-item:nth-child(even) {
        border-right: none !important;
    }
    .ldh-panchang-item:nth-child(4n) {
        border-right: none !important;
    }
    .ldh-panchang-item__label {
        font-size: .58rem !important;
    }
    .ldh-panchang-item__val {
        font-size: .78rem !important;
    }
    .ldh-panchang-timings {
        grid-template-columns: 1fr 1fr !important;
    }
    .ldh-panchang-timing {
        padding: 8px 12px !important;
    }
    .ldh-panchang-special {
        margin: 6px 10px !important;
        font-size: .68rem !important;
    }
    /* Bhakti section inner padding */
    .ldh-bhakti-section__inner {
        padding: 14px 14px 28px !important;
    }
}

/* ── Live slider — mobile full visibility ── */
.ldh-live-slider-wrap {
    position: relative !important;
    touch-action: pan-y !important; /* allow vertical scroll, horizontal managed by JS */
}
.ldh-live-slider-track-wrap {
    overflow: hidden !important;
    border-radius: 12px !important;
    cursor: grab !important;
}
.ldh-live-slider-track-wrap:active {
    cursor: grabbing !important;
}
.ldh-live-slider-track {
    display: flex !important;
    gap: 14px !important;
    transition: transform .35s cubic-bezier(.22,.68,0,1.2) !important;
    will-change: transform !important;
    user-select: none !important;
    -webkit-user-select: none !important;
}

/* Arrows — always visible and well-sized on mobile */
.ldh-live-slider-arrow {
    flex-shrink: 0 !important;
    width: 40px !important;
    height: 40px !important;
    border-radius: 50% !important;
    border: 2px solid rgba(255,160,50,.35) !important;
    background: rgba(255,255,255,.08) !important;
    color: var(--ldh-gold-lt, #FFD060) !important;
    font-size: 1.4rem !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all .2s !important;
    padding: 0 !important;
    z-index: 3 !important;
    -webkit-tap-highlight-color: transparent !important;
    touch-action: manipulation !important;
}
.ldh-live-slider-arrow:hover,
.ldh-live-slider-arrow:active {
    background: rgba(255,107,0,.25) !important;
    border-color: rgba(255,107,0,.6) !important;
    color: #fff !important;
    transform: scale(1.1) !important;
}
@media (max-width: 480px) {
    .ldh-live-slider-arrow {
        width: 36px !important;
        height: 36px !important;
        font-size: 1.2rem !important;
    }
    /* Card width on small phones */
    .ldh-live-card-sm {
        flex: 0 0 150px !important;
        min-width: 150px !important;
    }
    .ldh-live-card-sm__img,
    .ldh-live-card-sm__no-img {
        height: 90px !important;
    }
}
@media (max-width: 360px) {
    .ldh-live-card-sm {
        flex: 0 0 130px !important;
        min-width: 130px !important;
    }
}

/* ── Swipe hint on mobile (shows first visit) ── */
.ldh-swipe-hint {
    display: none !important;
    text-align: center !important;
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .7rem !important;
    color: rgba(255,200,150,.35) !important;
    margin-top: 10px !important;
    animation: ldh-fade-hint 3s ease-in-out forwards !important;
}
@keyframes ldh-fade-hint {
    0%  { opacity: 0; }
    20% { opacity: 1; }
    80% { opacity: 1; }
    100%{ opacity: 0; }
}
@media (max-width: 760px) {
    .ldh-swipe-hint { display: block !important; }
}

/* ── Panchang "Live" badge — properly sized on all screens ── */
.ldh-panchang-live-badge {
    font-size: .55rem !important;
    padding: 2px 8px !important;
    vertical-align: middle !important;
    margin-left: 6px !important;
}
@media (max-width: 480px) {
    .ldh-panchang-live-badge { display: none !important; } /* clean on very small screens */
    .ldh-bhakti-col__title { font-size: .82rem !important; }
}

/* ── Festival strip responsive ── */
@media (max-width: 1100px) {
    .ldh-events-strip__row {
        grid-template-columns: repeat(4, 1fr) !important;
    }
}
@media (max-width: 680px) {
    .ldh-events-strip__row {
        grid-template-columns: repeat(2, 1fr) !important;
    }
    .ldh-events-strip__inner {
        padding: 20px 14px !important;
    }
    .ldh-event-card {
        padding: 12px !important;
    }
    .ldh-event-card__icon { font-size: 1.5rem !important; }
    .ldh-event-card__name { font-size: .72rem !important; }
    .ldh-event-card__desc { display: none !important; } /* hide desc on tiny screens */
}
@media (max-width: 380px) {
    .ldh-events-strip__row {
        grid-template-columns: repeat(2, 1fr) !important;
        gap: 8px !important;
    }
}
/* ══════════════════════════════════════════════════════
   MANTRA — Day-of-week Deity Banner
   Shown above the mantra card with today's presiding deity
   ══════════════════════════════════════════════════════ */
.ldh-mantra-day-banner {
    margin: 0 16px 0 !important;
    padding: 12px 16px !important;
    background: linear-gradient(135deg,
        color-mix(in srgb, var(--deity-color, #FF6B00) 12%, #1A0600),
        color-mix(in srgb, var(--deity-color, #FF6B00) 6%, #120400)
    ) !important;
    border: 1px solid color-mix(in srgb, var(--deity-color, #FF6B00) 35%, transparent) !important;
    border-radius: 12px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    position: relative !important;
    overflow: hidden !important;
}
/* Fallback for browsers without color-mix */
@supports not (color: color-mix(in srgb, red 50%, blue)) {
    .ldh-mantra-day-banner {
        background: linear-gradient(135deg, #2A0A00, #1A0400) !important;
        border-color: rgba(255,107,0,.3) !important;
    }
}
.ldh-mantra-day-banner__left {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-mantra-day-banner__icon {
    font-size: 1.6rem !important;
    line-height: 1 !important;
    flex-shrink: 0 !important;
}
.ldh-mantra-day-banner__day {
    font-family: 'Cinzel', serif !important;
    font-size: .65rem !important;
    font-weight: 700 !important;
    letter-spacing: .1em !important;
    text-transform: uppercase !important;
    color: rgba(255,230,180,.5) !important;
    margin-bottom: 2px !important;
}
.ldh-mantra-day-banner__deity {
    font-family: 'Lora', serif !important;
    font-size: .82rem !important;
    font-weight: 700 !important;
    color: rgba(255,230,160,.9) !important;
    line-height: 1.2 !important;
}
/* Large background icon */
.ldh-mantra-day-banner__ring {
    font-size: 2.6rem !important;
    opacity: .08 !important;
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    line-height: 1 !important;
    pointer-events: none !important;
    user-select: none !important;
}

/* Mantra count badge */
.ldh-mantra-card__meta {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    position: relative !important;
    z-index: 1 !important;
}
.ldh-mantra-card__count {
    font-family: 'Cinzel', serif !important;
    font-size: .65rem !important;
    font-weight: 700 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    color: rgba(212,175,55,.6) !important;
    background: rgba(212,175,55,.08) !important;
    border: 1px solid rgba(212,175,55,.2) !important;
    padding: 3px 10px !important;
    border-radius: 100px !important;
}

/* Day description below tip */
.ldh-mantra-day-desc {
    font-family: 'Lora', serif !important;
    font-style: italic !important;
    font-size: .72rem !important;
    color: rgba(155,107,64,.7) !important;
    line-height: 1.55 !important;
    text-align: center !important;
    padding: 6px 16px 14px !important;
    margin: 0 !important;
}

@media (max-width: 480px) {
    .ldh-mantra-day-banner { margin: 0 12px 0 !important; padding: 10px 14px !important; }
    .ldh-mantra-day-banner__icon { font-size: 1.3rem !important; }
    .ldh-mantra-day-banner__deity { font-size: .78rem !important; }
    .ldh-mantra-day-desc { padding: 6px 12px 12px !important; }
}
