.rounded-cir{
    border-radius: 40px;
}


#newSecSec{
    background-image: url('../img/home/DevotionalIntro--1.webp');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
}



#newthiSec{
        background-image: linear-gradient(182deg, #FFF3E0, #ffffff);
}
.Mimpact{
    box-shadow: 0px 0px 6px #ccc;
    border-radius: 20px;
    border-left: 3px solid #E88A1A;
    background-color: #fff;
    padding: 20px;
}
.Aimpact{
    box-shadow: 0px 0px 6px #ccc;
    border-radius: 20px;
    border-left: 3px solid #8B1E25;
    background-color: #fff;
    padding: 20px;
    
}
.Aimpact h2{
    color: #8B1E25!important;
} 
.Mimpact h2{
    color: #E88A1A!important;
}


/*Puja Timings start*/

/* Page Background */


.puja-section {
  padding: 60px 0 80px;
  background-color: #FFF3E0;
}


/* Typography */
.puja-title {
  
  font-size: 34px;
  margin-bottom: 1rem;
  color: #2f2418;
}

.puja-subtitle {
  font-size: 14px;
  line-height: 1.7;
  color: #7a6450;
  /*max-width: 550px;*/
}

/* Card Styling */
.puja-card {
  background: #ffffff;
  border-radius: 16px;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
  overflow: hidden;
  border: none;
}

.puja-card-header {
  padding: 22px 0;
  color: #ffffff;
}

.puja-card-header h2 {
  margin: 0;
 
  font-size: 22px;
}

/* Gradients for Headers */
.puja-card.daily .puja-card-header {
  background: linear-gradient(135deg, #f6b432, #f15b2a);
}

.puja-card.weekly .puja-card-header {
  background: linear-gradient(135deg, #b0232e, #7e0019);
}

/* Table Customization */
.puja-card-body {
  padding: 10px 0 24px;
}

.custom-table thead th {
  font-weight: 600;
  font-size: 14px;
  border-bottom:2px solid #E88A1A;
  padding-bottom: 12px;
  padding-top: 12px;
}

.daily .custom-table thead th {
  color: #8B1E25;
}

.weekly .custom-table thead th {
  color: #b44b4a;
  border-bottom-color: #f1c6c3;
}

.custom-table tbody td {
  font-size: 14px;
  color: #5a4634;
  padding-top: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid #cecece;
  width: 40%;
}


/* Remove border from last row */
.custom-table tbody tr:last-child td {
  border-bottom: none;
}

/* Time Column Colors */
.daily .time-col {
  color: #575757;
    font-weight: 500;
}

.weekly .time-col {
  color: #c3473a;
  font-weight: 600;
}
.h2.text-white{
    color: #fff!important;
}

/* CTA Button */
.puja-button {
  display: inline-block;
  padding: 12px 38px;
  border-radius: 50px;
  background: #8c1e24;
  color: #ffffff;
  text-decoration: none;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.03em;
  box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.puja-button:hover {
  background: #7a181e;
  color: #fff;
  transform: translateY(-2px);
  box-shadow: 0 14px 28px rgba(0, 0, 0, 0.22);
}



/*Puja Timings end*/



/* Section heading */
.festival-section {
  /*background-color: #faf7f2;*/
}

.img-wrap {
  position: relative;
  overflow: hidden;
}

/* dark overlay rising from bottom */
.overlay-bottom::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: 40%;              /* how high overlay reaches; tweak as needed */
  background: linear-gradient(
    to top,
    rgba(0, 0, 0, 0.75),
    rgba(0, 0, 0, 0)
  );
  pointer-events: none;
}

/* keep badge above overlay */
.date-badge {
  position: absolute;
  top: 18px;
  left: 22px;
  z-index: 2;
}


.section-title {
   font-size: 34px;
  font-weight: 600;
  /*font-size: 2.1rem;*/
  color: #24110b;
}

.section-subtitle {
  color: #7b6f66;
  font-size: 0.98rem;
}

/* Card */

.festival-card {
  border-radius: 22px;
  overflow: hidden;
  border: 0;
  background-color: transparent;
}

/* card body background like screenshot */
.festival-card .card-body {
  background: linear-gradient(
    to bottom,
    #faf3e8 0%,
    #fff9f0 40%,
    #ffffff 100%
  );
  padding: 26px 28px 30px;
}





.festival-img {
  height: 230px;
  object-fit: cover;
}

/* Date badge */

.date-badge {
  position: absolute;
  top: 18px;
  left: 22px;
  width: 64px;
  border-radius: 14px;
  background-color: #7c1f1f;
  color: #ffffff;
  overflow: hidden;
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.35);
  
}

.date-top {
  background-color: #ffffff;
  color: #7c1f1f;
  padding: 7px 0 7px;
  text-align: center;
}

.date-bottom {
  padding: 3px 0 11px;
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.2em;
}

.date-top .day {
  font-size: 1rem;
  font-weight: 600;
  line-height: 1;
}

.date-bottom .month {
  font-weight: 600;
}

/* color variants like screenshot */
.date-badge--amber { background-color: #a8481d; }
.date-badge--blue { background-color: #234e7f; }
.date-badge--crimson { background-color: #9b1024; }




.date-badge .month {
  font-size: 0.7rem;
  letter-spacing: 0.15em;
}

.date-badge .day {
  font-size: 14px;
  font-weight: 600;
}

/* Optional accent variants if you want slightly different tones */
.date-badge--amber {
  background-color: #a8481d;
}

.date-badge--blue {
  background-color: #234e7f;
}

.date-badge--crimson {
  background-color: #9b1024;
}

/* Typography inside card */
.card-title {
  font-weight: 500;
  color: #3a2317;
}

.card-text {
  color: #806c5c;
  font-size: 0.95rem;
}

/* Learn more link */
.learn-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.9rem;
  color: #c67923;
  text-decoration: none;
  font-weight: 500;
}

.learn-more .arrow {
  font-size: 1rem;
}

.learn-more:hover {
  color: #a25e16;
}


.puja-section {
  background: #fbf3e7;
  position: relative;
  overflow: hidden;
}

/* subtle yantra / center graphic if you want, optional
.puja-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("img/yantra.svg") center no-repeat;
  opacity: 0.12;
  pointer-events: none;
}
*/

.puja-title {
  
  font-weight: 600;
  font-size: 34px;
  color: #1f1f29;
}

.puja-subtitle {
  color: #7b6f66;
  font-size: 0.98rem;
}

/* items */
.puja-item {
  max-width: 180px;
}

.puja-circle {
  width: 180px;
  height: 120px;
  border-radius: 50%;
  padding: 6px;
  /*background: #d39221;*/
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.puja-circle img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.puja-name {
  font-size: 1.02rem;
  font-weight: 600;
  color: #7c1f1f;
}

.puja-desc {
  font-size: 0.86rem;
  color: #6d6b6b;
  margin-bottom: 0;
}

/* button */
.btn-view-all {
  border-radius: 999px;
  background-color: #b02028;
  color: #ffffff;
  font-weight: 500;
  border: none;
}

.btn-view-all:hover {
  background-color: #8f121c;
  color: #ffffff;
}

.puja-ser{
    background-image: url('../img/home/bg-sp.png');
    background-position: center, center;
    background-size: contain;
    background-repeat: no-repeat;
}

.puja-sche {background: linear-gradient(to top, #faf3e8 0%, #fff9f0 40%, #ffffff 100%); padding: 26px 28px 30px; box-shadow: 2px 8px 10px #ccc; border-radius: 40px;}
.puja-sche ul{
    columns: 2;
}
/* responsive tweaks */
@media (max-width: 575.98px) {
    .puja-sche ul{
        columns: 1;
    }
    .puja-sche ul li{
        margin-bottom: 10px;
    }
    .puja-section {
        padding: 30px 0 15px;
        background-color: #FFF3E0;
    }
    .Mimpact{
        margin-bottom: 20px;
    }
  .puja-circle {
    width: 100px;
    height: 100px;
  }
  .puja-item {
    max-width: 150px;
  }
}


.priest-services {
  background: #fff;
}

.priest-title {
  
  font-weight: 600;
  font-size: 34px;
}

.priest-subtitle {
  font-size: 0.98rem;
  color: #666;
}

.service-card {
  background: #ffffff;
  border-radius: 14px;
  padding: 18px 20px;
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.06);
}

.icon-wrap img {
  width: 42px;
  height: 42px;
}

.service-title {
  font-size: 1rem;
  color: #b02a2a;
  font-weight: 600;
}

.service-text {
  font-size: 0.9rem;
  color: #666;
}

.new-service-badge {
  position: absolute;
  right: 18px;
  top: -12px;
  background: #b02a2a;
  color: #fff;
  font-size: 0.7rem;
  padding: 4px 10px;
  border-radius: 999px;
}

.btn-request {
  background: #c62c2c;
  color: #fff;
  border-radius: 999px;
  padding: 10px 28px;
  font-size: 0.95rem;
  border: none;
}

.btn-request:hover {
  background: #a62121;
  color: #fff;
}

/* Image side */
.priest-image-wrap {
  position: relative;
 
 
  

}



.priest-image-wrap img {
  width: 100%;
  height: 100%;
  
}

/* Card wrapper spacing */
.priest-card {
  margin-bottom: 18px;
}

/* Outer card style */
.priest-card-inner {
  position: relative;
  background: #ffffff;
  border-radius: 20px;
  padding: 22px 28px 22px 32px;
  box-shadow: 0 14px 30px rgba(0, 0, 0, 0.06);
  display: flex;
  align-items: flex-start;
  overflow: hidden;
  
}


.priest-card-inner.red{
    border-left:5px solid #e63a3a;
}
.priest-card-inner.yellow{
    border-left:5px solid #f4a623;
}

/* Left color strip */
.left-strip {
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 4px;
  border-radius: 10px;
}

.left-strip-red {
  background: #e63a3a;
}

.left-strip-yellow {
  background: #;
}

/* Icon box */
.card-icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  /*background: #fff7ec;*/
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 18px;
  box-shadow: 0 3px 8px rgba(0, 0, 0, 0.05);
  flex-shrink: 0;
}

.card-icon img {
  /*max-width: 32px;*/
  /*max-height: 32px;*/
}

/* Text area */
.card-content {
  flex: 1;
}

.card-heading {
  font-size: 1rem;
  font-weight: 600;
  color: #b02a2a;
  margin-bottom: 6px;
}

.card-desc {
  font-size: 0.9rem;
  color: #555;
  margin-bottom: 12px;
}

/* Underline near bottom text */
.card-underline {
  display: inline-block;
  width: 55px;
  height: 3px;
  border-radius: 999px;
  background: #f4a623;
}

/* Tiny corner arrow bottom-right */
.card-corner-arrow {
  position: absolute;
  right: 18px;
  bottom: 16px;
  width: 10px;
  height: 10px;
  /*border-radius: 3px;*/
  border-right: 2px solid #f4a623;
  border-bottom: 2px solid #f4a623;
  /*transform: rotate(-45deg);*/
}

/* New Service pill overlapping third card */
.new-service-pill {
  position: absolute;
  right: 40px;
  top: -10px;
  background: #8b1a1a;
  color: #ffffff;
  font-size: 0.7rem;
  font-weight: 500;
  padding: 4px 12px;
  border-radius: 999px;
  box-shadow: 0 6px 15px rgba(0, 0, 0, 0.18);
}

/* Keep existing button style or reuse previous one */
.btn-request {
  background: #c62c2c;
  color: #fff;
  border-radius: 999px;
  padding: 10px 28px;
  font-size: 0.95rem;
  border: none;
}

.btn-request:hover {
  background: #a62121;
  color: #fff;
}

/* Small-screen tweak */
@media (max-width: 575.98px) {
  .priest-card-inner {
    padding: 18px 20px 18px 26px;
  }

  .new-service-pill {
    right: 20px;
  }
}



/* Responsive tweaks */
@media (max-width: 991.98px) {
  .priest-image-wrap {
    margin-top: 20px;
  }
}

@media (max-width: 575.98px) {
  

  .service-card {
    padding: 16px;
  }
}


/* Outer bar */
.availability-bar {
 background-image: linear-gradient(45deg, #FFFFFFE5, #FFFBEBE5);
  border-radius: 26px;
  padding: 16px 30px;
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.08);
}

/* Each item */
.availability-item {
  gap: 10px;
  margin: 6px 0;
}

/* Icon box */
.availability-icon {
  width: 48px;
  height: 48px;
  border-radius: 16px;
  background: #ffffff;
  border: 1px solid #ffd27a;
  display: flex;
  align-items: center;
  justify-content: center;
}

.availability-icon img {
  /*max-width: 26px;*/
  /*max-height: 26px;*/
}

/* Text */
.availability-text .label {
  display: block;
  font-size: 0.75rem;
  color: #999;
}

.availability-text .value {
  display: block;
  font-size: 0.9rem;
  font-weight: 600;
  color: #333;
}

/* Vertical divider between items */
.avail-divider {
  width: 1px;
  height: 40px;
  background: linear-gradient(to bottom, transparent, #f0c66c, transparent);
  margin: 0 14px;
}

/* Responsive behavior */
@media (max-width: 767.98px) {
  .availability-bar {
    padding: 14px 18px;
    justify-content: center;
  }

  .availability-item {
    width: 100%;
    justify-content: flex-start;
  }

  .avail-divider {
    display: none !important;
  }
}



.puja-books-section {
  background: #fdf1dd;
  position: relative;
}

.pb-title {
 
 font-size: 34px;
  font-weight: 600;
  color: #2d2d2d;
}

.pb-subtitle {
  font-size: 0.95rem;
  color: #555;
}







/* Bottom text + button */
.pb-help-text {
  font-size: 0.9rem;
  color: #555;
}

.pb-more-btn {
  background: #9b1b1f;
  color: #fff;
  border-radius: 999px;
  padding: 8px 28px;
  border: none;
}

.pb-more-btn:hover {
  background: #7b1418;
  color: #fff;
}

/* Responsive tweaks */
@media (max-width: 767.98px) {
  .book-card {
    /*max-width: 260px;*/
    margin: 0 auto;
  }
}



.temple-canteen-section {
  background: #fff;
}

/* Heading */
.tc-title {
  /*font-family: "Playfair Display", serif;*/
  font-weight: 600;
  font-size: 2.4rem;
  color: #1f2230;
}

.tc-subtitle {
  font-size: 0.95rem;
  color: #666;
}

/* Feature pills */
.tc-pill {
  background: #ffffff;
  border-radius: 999px;
  padding: 8px 16px;
    font-size: 0.8rem;
    color: #444;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .15);
    margin-left: 15px;
}

.tc-divider {
  border: 0;
  border-top: 1px solid #f0e0c7;
}

/* Menu cards */
.tc-menu-card {
  background: #ffffff;
  border-radius: 18px;
  box-shadow: 0 18px 35px rgba(0, 0, 0, 0.1);
  margin-bottom: 40px;
  align-items: center;
  display: flex;
}
.grad-border{
    border-bottom: 1px solid transparent;
    padding-bottom: 5px;
    background:linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, transparent 0%, #FFD230 25%, #000 50%, #FFD230 75%, transparent 100%) border-box;
}
.grad-border3{
    border-bottom: 3px solid transparent;
    padding-bottom: 5px;
    background:linear-gradient(#fff, #fff) padding-box, linear-gradient(90deg, transparent 0%, #FFD230 25%, #000 50%, #FFD230 75%, transparent 100%) border-box;
}

.grad-border0{
    border-bottom: 0px solid transparent;
    background:linear-gradient(transparent, transparent) padding-box, linear-gradient(90deg, transparent 0%, #FFD230 25%, #000 50%, #FFD230 75%, transparent 100%) border-box;
}

.tc-menu-img-wrap {
  width: 150px;
  
  border-radius: 18px 0px 0px 18px;
  overflow: hidden;
  margin-right: 14px;
  flex-shrink: 0;
}

.tc-menu-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.tc-menu-body {
  flex: 1;
  padding: 20px;
}

.tc-menu-title {
  font-size: 0.98rem;
  font-weight: 600;
  color: #3a2b2b;
}

.tc-price-badge {
  background: #ff8a00;
  color: #fff;
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 0.8rem;
}

.tc-menu-desc {
  font-size: 0.84rem;
  color: #555;
  margin-bottom: 6px;
}

.tc-menu-tag {
  display: inline-block;
  font-size: 0.7rem;
  padding: 3px 10px;
  border-radius: 999px;
  background: #fff4d6;
  color: #b4741b;
}

/* Right image + stats */
.tc-main-image-wrap {
  border-radius: 22px;
  overflow: hidden;
  box-shadow: 0 22px 40px rgba(0, 0, 0, 0.18);
}

.tc-stat-card {
  background: #ffffff;
  border-radius: 16px;
  padding: 16px 18px;
  box-shadow: 0 16px 30px rgba(0, 0, 0, 0.06);
}

.tc-stat-card h4 {
  margin-bottom: 2px;
  font-weight: 600;
  color: #b02121;
}

.tc-stat-card p {
  font-size: 0.85rem;
  color: #555;
  margin-bottom: 0;
}

/* Visit button */
.tc-visit-btn {
  background: #b32223;
  color: #fff;
  border-radius: 999px;
  padding: 9px 30px;
  border: none;
}

.tc-visit-btn:hover {
  background: #921a1b;
  color: #fff;
}

/* Opening hours */
.tc-clock-icon {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: #ffe6c4;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #c45a1a;
}

.tc-opening-title {
  font-size: 1.2rem;
  color: #7b1b21;
  font-weight: 600;
}

.tc-slot-card {
  background: #ffe9c9;
  border-radius: 18px;
  padding: 14px 16px;
  text-align: center;
}

.tc-slot-card h6 {
  font-size: 0.9rem;
  font-weight: 600;
  color: #E78C1A!important;
}

.tc-slot-card p {
  font-size: 0.85rem;
  margin-bottom: 0;
  color: #555;
}
.zin-99{
    z-index: 999;
}
.immg1{
    position: absolute;
    left:0px;
    top: 15px;
    z-index: 0;
    
}
.immg2{
    position: absolute;
    right: 0;
    bottom: 15px;
    z-index: 0;
}

/* Responsive tweaks */
@media (max-width: 991.98px) {
  .tc-main-image-wrap {
    margin-top: 12px;
  }
  .col-lg-6.pe-5{
      padding-right: 1rem !important;
  }
  .col-lg-6.ps-5{
          padding-left: 1rem !important;
  }
  
}

@media (max-width: 575.98px) {
  .tc-menu-card {
    padding: 0px 7px;
  }
  .tc-menu-body {
    flex: 1;
    padding: 5px;
}

  .tc-menu-img-wrap {
    width: 90px;
    
  }
}






 .videos-section {
            
            background: linear-gradient(180deg, #F8F6F1 0%, #F5F2ED 100%);
        }

        .section-header {
            text-align: center;
            margin-bottom: 20px;
        }

        .section-header h1 {
            font-size: 48px;
            font-weight: 700;
            color: #1A2332;
            margin-bottom: 15px;
            letter-spacing: -0.5px;
        }

        .section-header p {
            font-size: 18px;
            color: #666;
            font-weight: 400;
        }

        .icon-divider {
            /*width: 60px;*/
            height: 3px;
            /*background: linear-gradient(90deg, transparent, var(--gold-color) 50%, transparent);*/
            margin: 20px auto;
        }

        /* Swiper Container */
        .videos-swiper {
            padding: 20px 0;
        }

        .swiper-slide {
            height: auto !important;
        }

        /* Main Container */
        .event-slide-container {
            display: grid;
            
            grid-template-columns: 60% 40%;
            gap: 30px;
            align-items: flex-start;
           
        }

        /* Left Side - Featured Video */
        .featured-video-card {
            position: relative;
            border-radius: 16px;
            /*overflow: hidden;*/
            box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
            border: 3px solid #D4A574;
            aspect-ratio: 16 / 10;
            background: #000;
            cursor: pointer;
            width: 100%;
        }

        .featured-video-wrapper {
            position: relative;
            width: 100%;
            height: 100%;
        }

        .featured-video-wrapper iframe {
            width: 100%;
            height: 100%;
            border: none;
        }

        .play-button-overlay {
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            width: 80px;
            height: 80px;
            background: rgba(255, 255, 255, 0.9);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            transition: all 0.3s ease;
            z-index: 10;
        }

        .play-button-overlay:hover {
            background: rgba(255, 255, 255, 1);
            transform: translate(-50%, -50%) scale(1.1);
        }

        .play-button-overlay::after {
            content: '';
            width: 0;
            height: 0;
            border-left: 25px solid var(--primary-color);
            border-top: 15px solid transparent;
            border-bottom: 15px solid transparent;
            margin-left: 5px;
        }

        /* Event Info */
        .event-info {
            padding: 15px 20px 0px 20px;
            display: flex;
            border-radius: 0px 0px 10px 10px;
            flex-direction: column;
            justify-content: flex-start;
            background-image: linear-gradient(165deg, #fff, #FFFBEBF2);

        }

        .event-category {
            display: inline-block;
            background: var(--primary-color);
            color: white;
            
            border-radius: 4px;
            font-size: 13px;
            font-weight: 600;
            text-transform: uppercase;
            letter-spacing: 1px;
            
            width: fit-content;
        }

        .event-title {
            font-size: 30px;
            font-weight: 600;
            color: #1A2332;
            line-height: 1.3;
        }

        .event-description {
            font-size: 16px;
            color: #666;
            line-height: 1.3;
            
        }

        .divider-line {
            width: 60px;
            height: 4px;
            background: #D4A574;
            margin: 20px 0;
        }

        /* Right Side - Video Thumbnails */
        .thumbnails-column {
            display: flex;
            flex-direction: column;
            gap: 15px;
            justify-content: flex-start;
            width: 100%;
        }

        .thumbnail-card {
            position: relative;
            border-radius: 12px;
            overflow: hidden;
            cursor: pointer;
            aspect-ratio: 16 / 9;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
            transition: all 0.3s ease;
            border: 2px solid transparent;
            width: 100%;
            flex: 1;
        }

        .thumbnail-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.15);
            border-color: #D4A574;
        }

        .thumbnail-iframe {
            width: 100%;
            height: 100%;
            border: none;
            pointer-events: none;
        }

        .thumbnail-play-overlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0, 0, 0, 0.3);
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transition: opacity 0.3s ease;
            z-index: 5;
        }

        .thumbnail-card:hover .thumbnail-play-overlay {
            opacity: 1;
        }

        .thumbnail-play-icon {
            width: 50px;
            height: 50px;
            background: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
        }

        .thumbnail-play-icon::after {
            content: '';
            width: 0;
            height: 0;
            border-left: 12px solid var(--primary-color);
            border-top: 8px solid transparent;
            border-bottom: 8px solid transparent;
            margin-left: 2px;
        }

        /* Modal for Full Video */
        .video-modal {
            display: none;
            position: fixed;
            z-index: 9999;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            background-color: rgba(0, 0, 0, 0.95);
            align-items: center;
            justify-content: center;
            flex-direction: column;
        }

        .video-modal.active {
            display: flex;
        }

        .video-modal-content {
            width: 90%;
            max-width: 900px;
            aspect-ratio: 16 / 9;
        }

        .video-modal-content iframe {
            width: 100%;
            height: 100%;
            border: none;
        }

        .modal-close {
            position: absolute;
            top: 30px;
            right: 40px;
            color: white;
            font-size: 40px;
            cursor: pointer;
            font-weight: 300;
            transition: color 0.3s ease;
        }

        .modal-close:hover {
            color: #D4A574;
        }

        /* Swiper Navigation */
        .swiper-button-next,
        .swiper-button-prev {
            background: var(--primary-color);
            color: white !important;
            width: 50px;
            height: 50px;
            border-radius: 50%;
            display: flex !important;
            align-items: center;
            justify-content: center;
            top: auto;
            bottom: -70px;
            transition: all 0.3s ease;
        }

        .swiper-button-next::after,
        .swiper-button-prev::after {
            font-size: 20px;
        }

        .swiper-button-next:hover,
        .swiper-button-prev:hover {
            background: #C41530;
            transform: scale(1.1);
        }

        /* Responsive */
        @media (max-width: 1024px) {
            .event-slide-container {
                grid-template-columns: 1fr;
                gap: 20px;
            }

            .event-title {
                font-size: 28px;
            }

            .featured-video-card {
                aspect-ratio: 16 / 10;
            }

            .thumbnails-column {
                display: grid;
                grid-template-columns: 1fr 1fr;
                gap: 15px;
            }

            .thumbnail-card {
                aspect-ratio: 16 / 9;
            }
        }

        @media (max-width: 768px) {
                .puja-sche {
                    background: linear-gradient(to top, #faf3e8 0%, #fff9f0 40%, #ffffff 100%);
                    padding: 26px 28px 30px;
                    box-shadow: 2px 8px 10px #ccc;
                    border-radius: 15px;
                    margin: 10px 10px;
                    width: 94%;
                }
            .volunteer-section {
                margin: 40px 10px 10px 10px;
            }
            .gallery-swiper {
                padding: 0px 0 0px 0!important;
            }
            .videos-section .py-5 {
                padding-top: 2rem !important;
                padding-bottom: 2rem !important;
            }
            .thumbnails-column {
                display: grid;
                grid-template-columns: 1fr 0fr;
                gap: 0px;
            }
            .videos-section {
                padding: 0px 0px;
            }

            .section-header h1 {
                font-size: 32px;
            }

            .event-slide-container {
                gap: 20px;
            }

            .featured-video-card {
                border-width: 2px;
            }

            .event-title {
                font-size: 24px;
            }

            .event-description {
                font-size: 14px;
            }

            .swiper-button-next,
            .swiper-button-prev {
                width: 40px;
                height: 40px;
                bottom: -60px;
            }
        }
        
        
        
        .gallery-section {
            padding: 60px 20px;
            background: linear-gradient(180deg, #F8F6F1 0%, #F5F2ED 100%);
        }

        /* Section Header */
        .gallery-header {
            display: flex;
            justify-content: space-between;
            align-items: center;
            margin-bottom: 40px;
        }

        .gallery-title {
            font-size: 36px;
            font-weight: 700;
            color: #1A2332;
            margin: 0;
        }

        .gallery-nav {
            display: flex;
            gap: 15px;
        }

        .gallery-nav-btn {
            width: 50px;
            height: 50px;
            border-radius: 50%;
            border: 2px solid #D4A574;
            background: transparent;
            color: #D4A574;
            cursor: pointer;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 20px;
            transition: all 0.3s ease;
        }

        .gallery-nav-btn:hover {
            background: #D4A574;
            color: white;
            transform: scale(1.1);
        }

        /* Swiper Container */
        .gallery-swiper {
            padding: 10px 0 10px 0;
            position: relative;
        }

        .swiper-slide {
            height: auto;
        }

        /* Gallery Card */
        .gallery-card {
            position: relative;
            border-radius: 16px;
            overflow: hidden;
            box-shadow: 0 5px 20px rgba(0, 0, 0, 0.1);
            border: 3px solid #D4A574;
            aspect-ratio: 4 / 3;
            cursor: pointer;
            transition: all 0.3s ease;
            background: #000;
        }

        .gallery-card:hover {
            transform: translateY(-8px);
            box-shadow: 0 15px 35px rgba(0, 0, 0, 0.2);
        }

        .gallery-card img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        .gallery-overlay {
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background: rgba(0, 0, 0, 0.4);
            display: flex;
            align-items: center;
            justify-content: center;
            opacity: 0;
            transition: opacity 0.3s ease;
            z-index: 5;
        }

        .gallery-card:hover .gallery-overlay {
            opacity: 1;
        }

        .gallery-view-icon {
            width: 60px;
            height: 60px;
            background: white;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 24px;
            color: #208C8D;
        }

        /* Full Gallery Button */
        .full-gallery-btn-container {
            display: flex;
            justify-content: center;
            margin-top: 40px;
        }

        .full-gallery-btn {
            background: #C41530;
            color: white;
            border: none;
            padding: 14px 40px;
            border-radius: 50px;
            font-size: 16px;
            font-weight: 600;
            cursor: pointer;
            transition: all 0.3s ease;
            display: flex;
            align-items: center;
            gap: 10px;
        }

        .full-gallery-btn:hover {
            background: #A01029;
            transform: translateY(-3px);
            box-shadow: 0 10px 25px rgba(196, 21, 48, 0.3);
        }

        .full-gallery-btn::before {
            content: '👁️';
            font-size: 18px;
        }

        

        /* Swiper Navigation Buttons */
        .swiper-button-prev-gallery,
        .swiper-button-next-gallery {
            width: 45px;
            height: 45px;
            background: #ffffff;
            color: #E17100;
            border: 3px solid #FFB900 !important;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            cursor: pointer;
            position: absolute;
            top: 0px;
            right: 0;
            font-size: 20px;
            transition: all 0.3s ease;
            z-index: 10;
        }

        .swiper-button-prev-gallery {
            right: 65px;
        }

        .swiper-button-next-gallery:hover,
        .swiper-button-prev-gallery:hover {
            background: #E17100;
            transform: scale(1.1);
        }

        /* Responsive */
        @media (max-width: 1200px) {
            .gallery-swiper {
                padding: 20px 0 40px 0;
            }

            .swiper-button-prev-gallery,
            .swiper-button-next-gallery {
                top:0px;
            }

            .swiper-button-prev-gallery {
                right: 55px;
            }
        }

        @media (max-width: 768px) {
            .gallery-section {
                padding: 40px 15px;
            }
            

            .gallery-header {
                flex-direction: column;
                gap: 20px;
                margin-bottom: 30px;
                    align-items: flex-start;
            }

            .gallery-title {
                font-size: 28px;
            }

            .gallery-nav-btn {
                width: 45px;
                height: 45px;
                font-size: 18px;
            }

            .swiper-button-prev-gallery,
            .swiper-button-next-gallery {
                width: 40px;
                height: 40px;
                font-size: 18px;
            }

            .swiper-button-prev-gallery {
                right: 45px;
            }

            .modal-close {
                top: -35px;
                font-size: 35px;
            }
        }

        @media (max-width: 480px) {
            .gallery-title {
                font-size: 24px;
            }

            .full-gallery-btn {
                padding: 12px 30px;
                font-size: 14px;
            }
        }
        
            /* Puja Store Section */
        .puja-store-section {
          background: #FFF9EE;
        }
        
        /* Featured main card */
        .puja-featured-card {
          position: relative;
          background: #fff;
          border-radius: 24px;
          padding: 18px 18px 22px;
          box-shadow: 0 20px 40px rgba(255, 153, 51, 0.18);
          border: 1px solid rgba(255, 153, 51, 0.2);
        }
        
        .puja-featured-image-wrapper {
          border-radius: 20px;
          overflow: hidden;
          margin-bottom: 14px;
        }
        
        .puja-featured-image {
          width: 100%;
          height: auto;
          display: block;
          object-fit: cover;
        }
        
        .puja-featured-body {
          position: relative;
        }
        
        .puja-badge-main {
          position: absolute;
          top: 14px;
          left: 18px;
          z-index: 3;
          background: linear-gradient(135deg, #ff8126, #ff4b2b);
          color: #fff;
          border-radius: 999px;
          padding: 4px 12px;
          font-size: 12px;
          font-weight: 600;
        }
        
        .puja-pill {
          display: inline-block;
          border-radius: 999px;
          padding: 4px 12px;
          font-size: 11px;
          font-weight: 600;
          margin-bottom: 8px;
        }
        
        .puja-pill-bestseller {
          background: #ffe9bf;
          color: #c26a00;
        }
        
        .puja-featured-title {
          font-size: 20px;
          font-weight: 700;
          margin-bottom: 4px;
        }
        
        .puja-featured-subtitle {
          font-size: 13px;
          color: #6c6c6c;
          margin-bottom: 16px;
        }
        
        .puja-price-main {
          background: #ff3b30;
          color: #fff;
          padding: 8px 18px;
          border-radius: 999px;
          font-weight: 700;
          font-size: 16px;
        }
        
        /* Buttons */
        .puja-btn-main {
          background: linear-gradient(135deg, #ff8126, #ff4b2b);
          border: none;
          color: #fff;
          border-radius: 999px;
          font-weight: 600;
          font-size: 14px;
          padding: 10px 18px;
        }
        
        .puja-btn-main:hover {
          color: #fff;
          opacity: 0.9;
        }
        
        .puja-btn-ghost {
          width: 44px;
          height: 44px;
          border-radius: 50%;
          border: 1px solid #ffd0a8;
          background: #fff7e6;
          display: flex;
          align-items: center;
          justify-content: center;
          padding: 0;
        }
        
        /* Simple eye icon substitute */
        .puja-icon-eye {
          width: 16px;
          height: 16px;
          border-radius: 999px;
          border: 2px solid #ff6a00;
          position: relative;
          display: inline-block;
        }
        
        .puja-icon-eye::after {
          content: "";
          position: absolute;
          top: 50%;
          left: 50%;
          width: 6px;
          height: 6px;
          background: #ff6a00;
          border-radius: 50%;
          transform: translate(-50%, -50%);
        }
        
        /* Category pills */
        .puja-categories-wrapper {
          display: flex;
          flex-wrap: wrap;
          gap: 8px;
          margin-top: 10px;
        }
        
        .puja-category-pill {
          font-size: 11px;
          padding: 6px 12px;
          border-radius: 999px;
          background: #fff0d6;
          color: #754100;
        }
        
        .puja-btn-store {
          background: #7b0018;
          color: #fff;
          border-radius: 999px;
          font-weight: 600;
          padding: 10px 20px;
          border: none;
        }
        
        .puja-btn-store:hover {
          color: #7b0018;
          opacity: 0.9;
          border:1px solid #7b0018;
        }
        
        /* Right side product cards */
        .puja-product-card {
          position: relative;
          background: #fff;
          border-radius: 18px;
          padding: 12px 12px 16px;
          box-shadow: 0 10px 25px rgba(0, 0, 0, 0.06);
          border: 1px solid rgba(255, 153, 51, 0.18);
        }
        
        .puja-product-image-wrapper {
          border-radius: 16px;
          overflow: hidden;
          margin-bottom: 10px;
        }
        
        .puja-product-image {
          width: 100%;
          height: 190px;
          object-fit: cover;
        }
        
        .puja-product-body {
          font-size: 13px;
        }
        
        .puja-product-title {
          font-size: 16px;
          font-weight: 600;
          margin-bottom: 4px;
        }
        
        .puja-product-subtitle {
          font-size: 12px;
          color: #6c6c6c;
          margin-bottom: 10px;
        }
        
        .puja-price {
          background: #b1001c;
          color: #fff;
          padding: 6px 14px;
          border-radius: 999px;
          font-weight: 600;
          font-size: 13px;
        }
        
        /* Small badges on cards */
        .puja-badge {
          position: absolute;
          top: 10px;
          left: 12px;
          border-radius: 999px;
          padding: 3px 9px;
          font-size: 11px;
          font-weight: 600;
          color: #fff;
        }
        
        .puja-badge-premium {
          background: linear-gradient(135deg, #f5b200, #ff7a00);
        }
        
        .puja-badge-artisan {
          background: linear-gradient(135deg, #c96400, #8c3b00);
        }
        
        /* Outline view button */
        .puja-btn-outline {
          border-radius: 999px;
          border: 1px solid #ffb38a;
          font-size: 13px;
          font-weight: 500;
          color: #ff6a00;
          padding: 6px 14px;
          background: #fffaf2;
        }
        
        .puja-btn-outline:hover {
          background: #ffe1c6;
          color: #ff6a00;
        }
        
        /* Responsive tweaks */
        @media (max-width: 991.98px) {
          .puja-featured-card {
            margin-bottom: 24px;
          }
        }
        
        @media (max-width: 575.98px) {
          .puja-product-image {
            height: 170px;
          }
        }
        
        .events .carousel-control-next:focus, .events .carousel-control-next:hover, .events .carousel-control-prev:focus, .events .carousel-control-prev:hover {
                background-color: #dc3545!important;
            }
            .carousel-control-next-icon, .carousel-control-prev-icon {
                display: inline-block;
                width: 22px;
                height: 22px;
            }
            #eventsCarousel{
                position: relative;
            }
            #eventsCarousel .carousel-control-prev{
                width: 30px;
                position: absolute;
                top: 5px;
                align-items: flex-start;
                height: 30px;
                left: 78%;
                height: 30px;
                background: #fff;
                padding: 3px 2px 3px 2px;
                margin-top: 4px;
                border-radius: 2px;
            }
            #eventsCarousel .carousel-control-next{
                width: 30px;
                position: absolute;
                top: 5px;
                align-items: flex-start;
                right: 5%;
                 height: 30px;
                background: #fff;
                padding: 0px;
                margin-top: 4px;
                 padding: 3px 2px 3px 2px;
                 border-radius: 2px;
            }
                .events-title{
              
              font-weight: 600;
            }
            
            .events-info-card{
              background: #f6ead0;
              border-radius: 6px;
              overflow: hidden;
              min-height: 230px;
            }
            
            
            
            .events-date {
                position: absolute;
                right: -1%;
                border: 7px solid #fff;
                top: 46%;
                width: 15%;
                background: #FE8E46;
                color: #111;
                border-radius: 0;
                overflow: hidden;
                text-align: center;
            }
            
            .events-date-day{
              font-size: 46px;
              line-height: 1;
              font-weight: 800;
              padding-top: 12px;
            }
            
            .events-date-meta{
              /*background: rgba(255,255,255,.35);*/
              padding: 6px 0 10px;
            }
            
            .events-thumb{
              border-radius: 6px;
              overflow: hidden;
              background: #eee;
            }
            
            .events-thumb img{
              width: 100%;
              height: 275px;
              object-fit: cover;
              display: block;
            }
            
            .events-thumb-cta{
              position: absolute;
              left: 0; right: 0; bottom: 0;
              background: rgba(128, 0, 0, 0.9);
              color: #fff;
              padding: 12px 14px;
              display: flex;
              align-items: center;
              gap: 10px;
            }
            
            .events-hero{
              position: relative;
              border-radius: 6px;
              overflow: hidden;
              min-height: 520px;
            }
            
            .events-hero img{
              object-fit: cover;
            }
            
            .events-hero-overlay{
              position: absolute;
              left: 0;
              right: 0;
              bottom: 0;
              padding: 22px 18px;
              background: linear-gradient(to top, rgba(0,0,0,.78), rgba(0,0,0,0));
              color: #fff;
            }
            .events-info-inner{
              padding: 28px 221px 28px 26px;
            }
            
            /* Responsive tweaks */
            @media (max-width: 991.98px){
              .events-hero{ min-height: 380px; }
              .events-thumb img{ height: 200px; }
              .events-info-inner{
              padding: 28px 100px 28px 26px;
            }
              
            }
            
            @media (max-width: 575.98px){
              .events-date{ 
                  position: absolute;
        right: 0%;
        border: 7px solid #fff;
        top: 48%;
        width: 23%;
        background: #FE8E46;
        color: #111;
        border-radius: 0;
        overflow: hidden;
        text-align: center;
                  
              }
              .events-date-day{ font-size: 40px; }
              .events-info-inner{
              padding: 28px 100px 28px 26px;
            }
            }
        
        
        .blog-section {
                    padding: 80px 0;
                    background-color: #f5f5f5;
                }
                
                .section-title {
                   
                    font-size: 34px;
                    font-weight: 400;
                    color: #2c2c2c;
                    margin-bottom: 15px;
                    text-align: center;
                }
                
                .section-subtitle {
                    color: #666;
                    font-size: 1rem;
                    text-align: center;
                    margin-bottom: 50px;
                    max-width: 700px;
                    margin-left: auto;
                    margin-right: auto;
                }
                
                .blog-card {
                    background: #fff;
                    border-radius: 8px;
                    overflow: hidden;
                    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
                    transition: transform 0.3s ease, box-shadow 0.3s ease;
                    height: 100%;
                    display: flex;
                    flex-direction: column;
                    position: relative;
                }
                
                .blog-card:hover {
                    transform: translateY(-5px);
                    box-shadow: 0 5px 20px rgba(0,0,0,0.15);
                }
                
                .blog-image {
                    width: 100%;
                    height: 250px;
                    object-fit: cover;
                    display: block;
                }
                
                .blog-content {
                    padding: 25px;
                    flex-grow: 1;
                    display: flex;
                    flex-direction: column;
                }
                
                .blog-meta {
                    display: flex;
                    align-items: center;
                    gap: 15px;
                    margin-bottom: 15px;
                    font-size: 0.875rem;
                    color: #888;
                }
                
                .blog-meta span {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                    gap: 5px;
                    position: absolute;
                    top: 0;
                    right: 5px;
                    width: 15%;
                    z-index: 0;
                    background: #ffffff;
                    padding: 6px 5px 14px; /* extra bottom space */
                    font-size: 15px;
                    text-align: center;
                    color: #FF9800;
                    border: 4px solid #f5f6f7;
                    box-sizing: border-box;
                
                    /* 🔥 Cut-out triangle */
                    clip-path: polygon(
                        0 0,
                        100% 0,
                        100% 85%,
                        50% 100%,
                        0 85%
                    );
                }

                
                .blog-title {
                   
                    font-size: 21px;
                    font-weight: 500;
                    color: #2c2c2c;
                    margin-bottom: 15px;
                    line-height: 1.4;
                    display: -webkit-box;
                    -webkit-line-clamp: 2;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                }
                
                .blog-excerpt {
                    color: #666;
                    font-size: 0.95rem;
                    line-height: 1.6;
                    margin-bottom: 20px;
                    flex-grow: 1;
                    display: -webkit-box;
                    -webkit-line-clamp: 3;
                    -webkit-box-orient: vertical;
                    overflow: hidden;
                }
                
                .read-more {
                    color: #E88A1A;
                    font-weight: 500;
                    text-decoration: none;
                    display: inline-flex;
                    align-items: center;
                    gap: 8px;
                    transition: gap 0.3s ease;
                    margin-top: auto;
                }
                
                .read-more:hover {
                    gap: 12px;
                    color: #b89850;
                }
                
                .read-more::after {
                    content: '→';
                    font-size: 1.2rem;
                }
                
                .view-all-btn {
                    background-color: #8b1a1a;
                    color: #fff;
                    border: none;
                    padding: 12px 40px;
                    font-size: 1rem;
                    border-radius: 30px;
                    cursor: pointer;
                    transition: background-color 0.3s ease;
                    margin-top: 50px;
                }
                
                .view-all-btn:hover {
                    background-color: #6d1414;
                }
                
                .loading-spinner {
                    text-align: center;
                    padding: 50px;
                }
                
                .spinner-border {
                    width: 3rem;
                    height: 3rem;
                    color: #8b1a1a;
                }
                
                /* Responsive adjustments */
                @media (max-width: 768px) {
                    .section-title {
                        font-size: 2rem;
                    }
                    
                    .blog-image {
                        height: 200px;
                    }
                    
                    .blog-title {
                        font-size: 1.25rem;
                    }
                    
                    .blog-section {
                        padding: 50px 0;
                    }
                }
                
                .volunteer-section {
  background-color: #fff3df;
  border-radius: 20px;
}

.volunteer-title {
  font-size: 2rem;
  font-weight: 600;
  color: #8b1d1d;
}

.volunteer-text {
  color: #555;
  font-size: 1rem;
  line-height: 1.7;
}

.volunteer-list {
  list-style: none;
  padding-left: 0;
}

.volunteer-list li {
  position: relative;
  padding-left: 5px;
  margin-bottom: 12px;
  font-size: 0.95rem;
  color: #444;
}


.btn-join {
  background-color: #8b0000;
  color: #fff;
  padding: 10px 28px;
  border-radius: 25px;
  font-size: 0.95rem;
  transition: all 0.3s ease;
}

.btn-join:hover {
  background-color: #6e0000;
  color: #fff;
}

.volunteer-img-wrapper {
  border-radius: 20px;
  overflow: hidden;
}

.volunteer-img {
  border-radius: 20px;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* Responsive tweaks */
@media (max-width: 767px) {
  .volunteer-title {
    font-size: 1.6rem;
  }

  .volunteer-text {
    font-size: 0.95rem;
  }
}

        
