 
:root {
  /* Primary Colors - रोमांटिक और सॉफ्ट */
  --primary: #f503a2;           /* सॉफ्ट मैजेंटा - नेचुरल लगे */
  --primary-gradient: linear-gradient(135deg, #FF99FF 0%, #f503a2 100%);
  --primary-light: #FFCCFF;     /* बहुत हल्का */
  --primary-dark: #CC66CC;      /* सॉफ्ट डार्क वर्जन */
  
  /* Secondary & Accent Colors */
  --secondary: #B388EB;         /* सॉफ्ट पर्पल */
  --secondary-gradient: linear-gradient(135deg, #D9BBFF 0%, #B388EB 100%);
  --gold: #FFCC00;              /* सॉफ्ट गोल्ड */
  --gold-gradient: linear-gradient(135deg, #FFE066 0%, #FFCC00 100%);
  
  /* Background & Surface Colors */
  --light: #FFF9FF;             /* वार्म व्हाइट with pink tint */
  --blush-pink: #f8e2e7;        /* ब्लश पिंक - बहुत सॉफ्ट */
  --cream: #FFF5E6;             /* क्रीम - गर्मजोशी */
  
  /* Text & Neutral Colors */
  --dark: #000080;              /* डीप पर्पल-ब्राउन - आँखों के लिए आरामदायक */
  --gray: #888888;              /* सॉफ्ट ग्रे */
  
  /* Wedding Special Colors */
  --rose-gold: #E6B0AA;         /* रोज़ गोल्ड - ट्रेंडी */
  --peach-blush: #FFDAB9;       /* पीच ब्लश */
  --lavender-mist: #E6E6FA;     /* लैवेंडर मिस्ट */
  
  /* Special Gradients */
  --wedding-gradient: linear-gradient(135deg, 
    rgba(255, 204, 255, 0.3) 0%, 
    rgba(255, 230, 242, 0.5) 50%, 
    rgba(230, 230, 250, 0.3) 100%
  );
  
  --button-gradient: linear-gradient(135deg, #FF99FF 0%, #FF66CC 100%);
  --card-gradient: linear-gradient(135deg, #FFFFFF 0%, #FFF9FF 100%);
}



@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800&display=swap");

body {
  font-family: "Poppins", sans-serif;
  color: #333;
  overflow-x: hidden;
}
::-webkit-scrollbar {
  height: 6px;
  width: 6px;
}

::-webkit-scrollbar-thumb {
  background-color: #f503a2;
  border-radius: 10px;
}

::-webkit-scrollbar-track {
  background: transparent;
}
a {
  color: inherit;
  text-decoration: none;
}
h1,
h2,
h3,
h4,
h5 {
  font-family: "Playfair Display", serif;
  font-weight: 600;
}


h2{
    color:var(--dark);
}

.row p {
  text-align: justify;
}

 
.bg-gradient-color {
  background: linear-gradient(135deg, var(--secondary), var(--gold));
}
.text-pink {
  color: #f503a2;
}
.text-chocolaty {
  color: var(--dark)!important;
}

.text-blue{
    color: var(--dark)!important;
}

.bg-blue{
    background-color: var(--dark)!important;
}

.border-pink-1{
    border:1px solid var(--primary)!important;
}

.bg-pink {
  background-color: var(--primary) !important;
}
.blush-pink {
  background-color: #f8e2e7;
}


.bg-gold{
    background-color:var(--gold);
}


.bg-chocolaty {
  background-color: #ebbbbf;
}
.border-chocolaty {
  border: 2px solid #ebbbbf;
}
.border-pink {
  border: 2px solid #f503a2;
}
.light-bg {
  background-color: var(--blush-pink);
}

.textShadow {
  -webkit-text-stroke: 1px #ebbbbf;
}
.navbar {
  background-color: rgba(255, 255, 255, 0.95);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
}

.navbar-brand {
  font-family: "Playfair Display", serif;
}

.nav-link {
  font-weight: 500;
  color: var(--dark) !important;
  transition: color 0.3s ease;
}

.nav-link:hover {
  color: var(--primary) !important;
}

.hero-section {
  background: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)),
    url("../images/hero-banner.avif") no-repeat center center;
  background-size: cover;
  color: white;
  position: relative;
}

/* ===============================
   BUTTON STYLE
================================*/
.btn-style{
    position: relative;
    overflow: hidden;

    background-color: #f503a2;
    color: #fff;
    font-weight: 500;
    border-radius: 50rem;
    padding: 12px 28px;
    border: none;
    cursor: pointer;

    z-index: 1;
    transition:
        color 0.3s ease,
        transform 0.3s ease;
}

/* Gradient hover layer (same as section) */
.btn-style::before{
    content: "";
    position: absolute;
    inset: 0;

    background: linear-gradient(135deg, 
        #000080 0%, 
        #f503a2 33%, 
        #FFCC00 66%, 
        #FFE066 100%
    );
    background-size: 400% 400%;

    transform: translateX(-100%);
    transition: transform 0.6s cubic-bezier(.4,0,.2,1);
    z-index: -1;
}

/* Hover effect */
.btn-style:hover::before{
    transform: translateX(0);
    animation: gradientShift 6s ease infinite;
}

.btn-style:hover{
    color: #000;
    transform: translateY(-2px);
}

.btn-whatsapp {
  background-color: #25d366;
  border-color: #25d366;
  color: white;
  font-weight: 500;
  transition: all 0.3s ease;
  border-radius: 50rem !important;
   font-size:14px;
}

.btn-whatsapp:hover {
  background-color: #128c7e;
  border-color: #128c7e;
  color: white;
  transform: translateY(-2px);
}

.btn-outline-light {
  transition: all 0.3s ease;
}

.btn-outline-light:hover {
  transform: translateY(-2px);
}

.contact-form {
  background: rgba(255, 255, 255, 0.9);
}

.form-control {
  padding: 12px 15px!important;
  margin-bottom: 15px;
  border: 1px solid #ddd!important;
  border-radius: 5px;
  background-color: #fff!important;
  box-shadow: none!important;
}
.stat-text {
  font-weight: 500;
}

.navbar .dropdown-menu .dropdown-item {
  white-space: wrap !important;
}
/* ===== Varmala Slider Navigation ===== */
.varmala-slider .owl-nav {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin-top: 30px;
}

.varmala-slider .owl-nav button.owl-next,
.varmala-slider .owl-nav button.owl-prev {
  background: #fff;
  padding: 0px 15px !important;
  border: 3px solid var(--gold);
  border-radius: 10px;
  color: var(--gold);
  transition: all 0.3s ease;
}

.varmala-slider .owl-nav button.owl-next:hover,
.varmala-slider .owl-nav button.owl-prev:hover {
  background: var(--gold);
  color: #fff;
}

/* ===== Pricing Slider Navigation ===== */
.Pricing-slider .owl-nav {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin-top: 30px;
}

.Pricing-slider .owl-nav button.owl-next,
.Pricing-slider .owl-nav button.owl-prev {
  background: var(--primary-dark);
  padding: 0px 15px !important;
  border: 3px solid var(--primary-dark);
  border-radius: 10px;
  color: #fff;
  transition: all 0.3s ease;
}

.Pricing-slider .owl-nav button.owl-next:hover,
.Pricing-slider .owl-nav button.owl-prev:hover {
  background: #fff;
  color: var(--primary-dark);
}

/* ===== Rated Slider Navigation ===== */
.Rated-slider .owl-nav {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin-top: 30px;
}

.Rated-slider .owl-nav button.owl-next,
.Rated-slider .owl-nav button.owl-prev {
  background: var(--primary-dark);
  padding: 0px 15px !important;
  border: 3px solid var(--primary-dark);
  border-radius: 10px;
  color: #fff;
  transition: all 0.3s ease;
}

.Rated-slider .owl-nav button.owl-next:hover,
.Rated-slider .owl-nav button.owl-prev:hover {
  background: #fff;
  color: var(--primary-dark);
}
/* ===== Reviews Slider Navigation ===== */
.Reviews-slider .owl-nav {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin-top: 30px;
}

.Reviews-slider .owl-nav button.owl-next,
.Reviews-slider .owl-nav button.owl-prev {
  background: #ebbbbf;
  padding: 0px 15px !important;
  border: 3px solid #ebbbbf;
  border-radius: 10px;
  color: #fff;
  transition: all 0.3s ease;
}

.Reviews-slider .owl-nav button.owl-next:hover,
.Reviews-slider .owl-nav button.owl-prev:hover {
  background: #fff;
  color: #ebbbbf;
}
/* owl-nav span  */
.owl-nav button.owl-prev span,
.owl-nav button.owl-next span {
  font-size: 40px;
  line-height: 0.8;
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 3px;
}

.small-icon-size {
  width: 50px;
  height: 50px;
  flex-shrink: 0;
}
.faqs .accordion-button:focus {
  border-color: inherit;
  box-shadow: none;
  z-index: 2;
}
.faqs .accordion-button:not(.collapsed) {
  color: var(--dark);
  background-color: var(--blush-pink);
}
.faqs .accordion-button {
  background-color: var(--blush-pink);
  font-size: 1.1rem !important;
  font-weight: 600 !important;
  color:var(--dark);
}
.faqs .accordion-item {
  margin-bottom: 25px;
}

.whatsapp-float {
  bottom: 10px;
  right: 30px;
  width: 60px;
  height: 60px;
  background-color: #25d366;
  transition: all 0.3s ease;
}

.whatsapp-float:hover {
  transform: scale(1.1);
}

.frame-size {
  width: 140px;
  height: 140px;
  display: inline-block;
}

.feature-list li {
  margin-bottom: 10px;
  padding-left: 25px;
  position: relative;
}

.feature-list li:before {
  content: "\f00c";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  color: #28a745;
}

.negative-list li {
  margin-bottom: 10px;
  padding-left: 25px;
  position: relative;
}

.negative-list li:before {
  content: "\f00d";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  left: 0;
  color: #dc3545;
}

.urgency-banner {
  /*background: linear-gradient(135deg, #ff6b6b 0%, #ee5a24 100%);*/
 background: 
    radial-gradient(circle at 20% 30%, rgba(204, 102, 204, 0.4) 0%, transparent 50%),
    radial-gradient(circle at 80% 70%, rgba(153, 51, 153, 0.3) 0%, transparent 50%),
    linear-gradient(135deg, #CC66CC 0%, #993399 100%);
}





.btn-yellow{
	position: relative;
	overflow: hidden;
	background: linear-gradient(135deg, #FFD700 0%, #FFF9C4 50%, #FFB300 100%);
	border: 1px solid #FFB300;
	color: #000;
	font-weight: 600;
	z-index: 1;
    border-radius:50rem;
	transition:
		color 0.35s ease,
		transform 0.35s cubic-bezier(.4,0,.2,1);
}

/* Sliding white layer (GPU smooth) */
.btn-yellow::before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #ffffff;
	z-index: -1;

	transform: translateX(-105%);
	transition: transform 0.6s cubic-bezier(.4,0,.2,1);
	will-change: transform;
}

/* Hover effect */
.btn-yellow:hover::before{
	transform: translateX(0);
}

.btn-yellow:hover{
	color: #cc00cc!important;
	transform: translateY(-2px);
}

.text-dark-blue{
    color:var(--dark)!important;
}


.gradient-purple {
  background: linear-gradient(135deg, #9B5DE5 0%, #C77DFF 50%, #7B2CBF 100%);
}

.gift-card {
  transition: all 0.3s ease;
}

.gift-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 15px 40px rgba(0, 0, 0, 0.15);
}

/*.gift-img {*/
/*  height: 300px;*/
/*  object-fit: cover;*/
/*}*/
.gift-img {
   width: 100%;
     
    display: block;
    height: auto;
}

.timeline-line {
  width: 4px;
}

.big-icon-size {
  width: 70px;
  height: 70px;
}
.icon-size {
  width: 60px;
  height: 60px;
}

.discount-banner {
  background: linear-gradient(135deg, var(--primary) 0%, var(--secondary) 100%);
}

.video-wrapper {
  padding-top: 56.25%;
}

.cta-section {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
    url("https://cdn.pixabay.com/photo/2017/02/15/13/40/flowers-2068692_1280.jpg")
      no-repeat center center;
  background-size: cover;
}
/* Hero Section */
.hero-section-category-detail {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><rect width="100" height="100" fill="%23f8e2e7"/><path d="M30,30 Q50,10 70,30 T90,50 T70,70 T50,90 T30,70 T10,50 T30,30" fill="%23e8b4b8" opacity="0.3"/></svg>');
  background-size: cover;
}
.hero-section-contact {
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='1600' height='900' viewBox='0 0 1600 900'><rect width='1600' height='900' fill='%23EBBBBF'/><g opacity='0.2' fill='none' stroke='%23b96b7f' stroke-width='2'><path d='M50 250 Q400 50 750 250 T1450 250'/><path d='M0 650 Q350 450 700 650 T1600 650'/></g><g fill='%23c77a8f' opacity='0.25'><circle cx='300' cy='180' r='30'/><circle cx='1250' cy='220' r='25'/><circle cx='900' cy='700' r='20'/></g><g opacity='0.45' fill='%23a84d63'><path d='M260 200c0-10 8-18 18-18h20a4 4 0 0 1 4 4v28a4 4 0 0 1-4 4h-20c-10 0-18-8-18-18z'/><rect x='740' y='520' width='120' height='70' rx='8' ry='8' fill='%23a84d63'/><path d='M740 520l60 40 60-40' fill='none' stroke='%23ffffff' stroke-width='2'/><path d='M1240 380a50 50 0 1 1-25 95l-25 20 10-30a50 50 0 0 1 40-85z' fill='%2325D366'/></g></svg>");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}





.hundred-width-size {
  width: 100px;
  height: 100px;
  flex-shrink: 0;
}

.cart-item:last-child {
  border-bottom: none;
  margin-bottom: 0;
}

.quantity-btn {
  background: #fcf6d9;
  transition: all 0.3s ease;
}

.quantity-btn:hover {
  background-color: var(--blush-pink);
}

.quantity-input {
  width: 40px;
}
.progress-step-number {
  width: 35px;
  height: 35px;
  flex-shrink: 0;
}
.coupon-btn {
  background: linear-gradient(135deg, var(--primary-dark), var(--gold));
  transition: all 0.3s ease;
}

.coupon-btn:hover {
  background: linear-gradient(135deg, var(--gold), var(--primary-dark));
}

.trust-item:last-child {
  margin-bottom: 0;
}

/* Floating Petals Animation */
@keyframes float {
  0% {
    transform: translateY(0) rotate(0deg);
    opacity: 0.7;
  }
  50% {
    transform: translateY(-20px) rotate(180deg);
    opacity: 1;
  }
  100% {
    transform: translateY(-40px) rotate(360deg);
    opacity: 0;
  }
}

.petal {
  position: absolute;
  background-color: var(--primary);
  border-radius: 50% 50% 50% 0;
  width: 15px;
  height: 15px;
  opacity: 0.7;
  animation: float 8s infinite linear;
}
      /* Hero Section */
      .hero-section-blogs {
        background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><rect width='100' height='100' fill='%23f8e2e7'/><path d='M10,90 Q30,70 50,90 T90,90' fill='none' stroke='%23e8b4b8' stroke-width='2' opacity='0.3'/><circle cx='25' cy='30' r='8' fill='%23f2c6cc' opacity='0.35'/><circle cx='75' cy='50' r='10' fill='%23e8b4b8' opacity='0.25'/><path d='M20,20 Q30,10 40,20 T60,20 T80,40' fill='none' stroke='%23f2c6cc' stroke-width='2' opacity='0.25'/></svg>");

        /* background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><rect width='100' height='100' fill='%23f8e2e7'/><path d='M0,70 Q25,60 50,70 T100,70 L100,100 L0,100 Z' fill='%23d4af37' opacity='0.15'/><path d='M0,80 Q25,70 50,80 T100,80 L100,100 L0,100 Z' fill='%23f7d477' opacity='0.15'/><circle cx='20' cy='30' r='8' fill='%23d4af37' opacity='0.2'/><circle cx='80' cy='40' r='6' fill='%23f7d477' opacity='0.25'/></svg>"); */
        background-position: center;
        text-align: center;
        position: relative;
        overflow: hidden;
      }


      .sidebar-widget h4 {
        font-size: 1.3rem;
        margin-bottom: 20px;
        padding-bottom: 10px;
        border-bottom: 1px solid #eee;
      }

      .blog-search-box button {
        right: 6px;
        top: 3px;
      }

      .playfair-family {
        font-family: "Playfair Display", serif;
      }
      
      .categories-list a {
        transition: all 0.3s ease;
      }

      .categories-list a:hover {
        color: var(--primary);
        padding-left: 5px;
      }
      
.blogs-card {
  transition: all 0.3s ease;
  background-color: var(--light);
}

.blogs-card:hover {
  transform: translateY(-10px);
  background-color: var(--primary);
  color: white;
}
.blogs-card:hover .blog-test {
  color: white;
}
.product-hero {
  background: linear-gradient(to right, #fff9ef, #f4efe7);
}
.tab-btn {
  border: none;
  background: transparent;
  color: var(--primary);
  border: 2px solid var(--primary);
}
.tab-btn.active {
  background: var(--primary);
  color: white;
}
.sticky-container {
  position: sticky;
  top: 90px;
}
.thumb-img {
  height: 100px;
}
.rated-section-bg {
  background: linear-gradient(to right, #e8d5c4, #d2bba3);
}
.small-text {
  font-size: 13px;
}
.details-height {
  height: 130px;
  overflow-y: auto;
  overflow-x: hidden;
}
.countdown-timer {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin: 30px 0;
}

.pre-booking-section {
  background: linear-gradient(135deg, #e83e8c 0%, #fd7e14 100%);
  color: white;
  padding: 80px 0;
  text-align: center;
}
.img-height {
  height: 250px;
}

.hero-section-category {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><rect width="100" height="100" fill="%23f8e2e7"/><path d="M30,30 Q50,10 70,30 T90,50 T70,70 T50,90 T30,70 T10,50 T30,30" fill="%23e8b4b8" opacity="0.2"/></svg>');
}

.search-box button {
  right: 20px;
  top: 7px;
  width: 45px;
  height: 45px;
}

.product-badge {
  top: 15px;
  left: 15px;
}
/*.product-card img {*/
/*  width: 100%;*/
/*  height: 250px;*/
/*  object-fit: cover;*/
/*  display: block;*/
/*}*/
.product-card img {
    width: 100%;
    
    display: block;
    height: 100%;
   
}
.quick-view-btn {
  top: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  opacity: 0;
  transition: all 0.3s ease;
}

.product-card:hover .quick-view-btn {
  opacity: 1;
}

.cta-banner {
  background: linear-gradient(135deg, var(--primary), var(--secondary));
}

.sidebar {
  position: sticky;
  top: 80px;
}

.trust-icon {
  background: linear-gradient(135deg, var(--primary), var(--secondary));
}
.margin-bottom {
  margin-bottom: 80px;
}
.hero-section-product {
     background: 
    url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='100' viewBox='0 0 100 100'><rect width='100' height='100' fill='%23f8e2e7'/><path d='M0,60 Q25,40 50,60 T100,60 L100,100 L0,100 Z' fill='%23e8b4b8' opacity='0.25'/><path d='M0,70 Q25,50 50,70 T100,70 L100,100 L0,100 Z' fill='%23f2c6cc' opacity='0.25'/></svg>");

  background-position: center;
  text-align: center;
  position: relative;
  
}
 
.cat-dropdown-menu {
  max-height: 300px;
  overflow-y: auto;
}



/* Hero Section */
      .blog-hero {
        background: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.5)),
          url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="100" height="100" viewBox="0 0 100 100"><rect width="100" height="100" fill="%23f8e2e7"/><path d="M30,30 Q50,10 70,30 T90,50 T70,70 T50,90 T30,70 T10,50 T30,30" fill="%23e8b4b8" opacity="0.3"/></svg>');
        background-size: cover;
        background-position: center;
      }
            .highlight-box {
        background-color: var(--blush-pink);
        border-left: 4px solid var(--gold);
      }
      
      
 .contact-us-page .wpcf7 form input.wpcf7-submit  {
     background-color:var(--dark)!important;
 } 
      
/* CF7 submit button – FINAL FIX */
.wpcf7 form input.wpcf7-submit{
  appearance: none !important;
  -webkit-appearance: none !important;
  color: #fff !important;
  font-weight: 600 !important;

  
  border-radius: 50rem !important;
  
 
  /* 🔥 magic */
  background-image: radial-gradient(circle at center, #000 0%, #000 100%);
  background-repeat: no-repeat;
  background-size: 0% 0%;
  background-position: center;

  transition:
    background-size 0.6s cubic-bezier(.22,.61,.36,1),
    color 0.3s ease,
    transform 0.3s ease,
    box-shadow 0.3s ease !important;
}

/* Hover: center se charo taraf fill */
.wpcf7 form input.wpcf7-submit:hover{
  background-size: 250% 250%;
  color: #fff !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 35px rgba(0,0,0,0.35);
}
      
      
 del{
     color:#000!important;
 }    
 
 
 .dropdown-item.active, .dropdown-item:active{
    background-color:var(--primary);
 }
 
 
 
 
 
 
  .element {
    position: relative;
    overflow: hidden;
    

    /* MAIN GRADIENT - ORIGINAL */
    background: linear-gradient(135deg, 
        #000080 0%, 
        #f503a2 33%, 
        #FFCC00 66%, 
        #FFE066 100%
    );
    background-size: 400% 400%;
    animation: gradientShift 15s ease infinite;
}

/* Gradient animation - ORIGINAL */
@keyframes gradientShift {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}

/* ===============================
   MULTIPLE HEARTS USING PSEUDO ELEMENTS
================================*/

/* HEART 1 */
.element::before {
    content: "❤";
    position: absolute;
    font-size: 40px;
    color: #ff4d6d;
    text-shadow: 0 0 20px #ff4d6d;
    animation: heartMove1 20s linear infinite;
    z-index: 1;
    opacity: 0;
}

/* HEART 2 */
.element::after {
    content: "❤";
    position: absolute;
    font-size: 35px;
    color: #FFCC00;
    text-shadow: 0 0 15px #FFCC00;
    animation: heartMove2 18s linear infinite 2s;
    z-index: 1;
    opacity: 0;
}

 

/* ===============================
   HEART MOVEMENT ANIMATIONS
================================*/

/* Heart 1 - Diagonal movement */
@keyframes heartMove1 {
    0% {
        left: -50px;
        top: 100%;
        opacity: 0;
        transform: scale(0.5);
    }
    10% {
        opacity: 0.8;
        transform: scale(0.8);
    }
    20% {
        left: 15%;
        top: 80%;
        transform: scale(1);
    }
    35% {
        left: 40%;
        top: 60%;
        transform: scale(1.1);
    }
    50% {
        left: 70%;
        top: 40%;
        transform: scale(1);
    }
    65% {
        left: 90%;
        top: 20%;
        transform: scale(0.9);
    }
    80% {
        left: 60%;
        top: 5%;
        transform: scale(0.7);
    }
    90% {
        left: 30%;
        top: -10%;
        opacity: 0.3;
        transform: scale(0.6);
    }
    100% {
        left: -20px;
        top: -50px;
        opacity: 0;
        transform: scale(0.4);
    }
}

/* Heart 2 - Zigzag movement */
@keyframes heartMove2 {
    0% {
        left: 100%;
        top: 100%;
        opacity: 0;
        transform: scale(0.5);
    }
    10% {
        opacity: 0.8;
        transform: scale(0.8);
    }
    25% {
        left: 85%;
        top: 70%;
        transform: scale(1);
    }
    40% {
        left: 60%;
        top: 85%;
        transform: scale(1.2);
    }
    55% {
        left: 40%;
        top: 50%;
        transform: scale(0.9);
    }
    70% {
        left: 20%;
        top: 75%;
        transform: scale(1.1);
    }
    85% {
        left: 5%;
        top: 30%;
        transform: scale(0.7);
    }
    95% {
        left: 50%;
        top: -5%;
        opacity: 0.3;
        transform: scale(0.5);
    }
    100% {
        left: 100%;
        top: -30px;
        opacity: 0;
        transform: scale(0.3);
    }
}

 

/* ===============================
   PULSE EFFECT FOR HEARTS
================================*/
@keyframes heartPulse {
    0%, 100% { 
        transform: scale(1);
        opacity: 0.8;
    }
    50% { 
        transform: scale(1.3);
        opacity: 1;
    }
}

/* Add pulse to main hearts */
.element::before,
.element::after {
    animation: 
        heartMove1 20s linear infinite,
        heartPulse 1.5s ease-in-out infinite;
}

.element::after {
    animation: 
        heartMove2 18s linear infinite 2s,
        heartPulse 2s ease-in-out infinite;
}

 
 
/* ===============================
   RESPONSIVE ADJUSTMENTS
================================*/
@media (max-width: 768px) {
    .element::before,
    .element::after {
        font-size: 30px;
    }
    
    @keyframes heartMove1 {
        0% { left: -30px; top: 100%; }
        100% { left: 100%; top: -30px; }
    }
    
    @keyframes heartMove2 {
        0% { left: 100%; top: 100%; }
        100% { left: -30px; top: -30px; }
    }
}
 
 
 
 
.woocommerce-loop-product__title{
    display: -webkit-box;
    -webkit-line-clamp: 2;   /* ðŸ‘ˆ 2 lines only */
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    color:var(--dark);
    font-size: 1.4rem !important;
}
 
.woocommerce .products .product {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    padding: 5px;
} 
 
 