/**

 * Theme Name:     Hello Elementor Child
 * Author:         Elementor Team
 * Template:       hello-elementor
 * Text Domain:	   hello-elementor-child
 * Description:    Hello Elementor is a lightweight and minimalist WordPress theme that was built specifically to work seamlessly with the Elementor site builder plugin. The theme is free, open-source, and designed for users who want a flexible, easy-to-use, and customizable website. The theme, which is optimized for performance, provides a solid foundation for users to build their own unique designs using the Elementor drag-and-drop site builder. Its simplicity and flexibility make it a great choice for both beginners and experienced Web Creators.
 */

.site-title.show,
h1.entry-title,
.home h1.entry-title {
  display: none;
}
/* Header */
/* *****************************Home page***************************** */
.custom-menu-cart,
.custom-menu-cart .elementor-menu-cart__toggle .elementor-button-icon {
  position: relative;
}

.cart-top-icon {
  position: absolute;
  top: 2px;
  left: -12%;
  transform: translateX(-52%);
  z-index: 10;
}

.Header-main .elementor-menu-cart__toggle .elementor-button svg {
  fill: transparent !important;
}
svg.e-font-icon-svg.e-eicon-cart-medium {
  z-index: 9999;
}
.custom-menu-cart.elementor-menu-cart--items-indicator-bubble
  .elementor-menu-cart__toggle
  .elementor-button-icon
  .elementor-button-icon-qty[data-counter] {
  color: #fff;
  height: 26px;
  width: 26px;
  line-height: 25px;
  z-index: 999;
  font-size: 14px;
}

/***************************** Banner section *****************************/
.shade-home img {
  width: 1920px;
}
.hero-banner,
.Shop-all,
.elementor-element.elementor-element-c5370d1.Balance.elementor-widget.elementor-widget-heading,
label.elementor-field-label {
  position: relative;
}

/* Bubble 1 – Down Right */
.bubble-1 img {
  position: absolute;
  top: -742px;
  left: 38%;
  animation: bubbleMove1 6s ease-in-out infinite;
}

@keyframes bubbleMove1 {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(40px, 60px);
  }
}

/* Bubble 2 – Up Left */
.bubble-2 img {
  position: absolute;
  top: -740px;
  right: 8%;
  animation: bubbleMove2 7s ease-in-out infinite;
}

@keyframes bubbleMove2 {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(-40px, -50px);
  }
}

/* Bubble 3 – Down Left */
.bubble-3 img {
  position: absolute;
  left: -10%;
  top: -494px;
  animation: bubbleMove3 8s ease-in-out infinite;
}

@keyframes bubbleMove3 {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(-60px, 40px);
  }
}

/* Bubble 4 – Up Right */
.bubble-4 img {
  position: absolute;
  top: -220px;
  left: 35%;
  animation: bubbleMove4 6.5s ease-in-out infinite;
}

@keyframes bubbleMove4 {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(50px, -35px);
  }
}

/* Bubble 5 – Zigzag */
.bubble-5 img {
  position: absolute;
  right: 13%;
  top: -320px;
  animation: bubbleMove5 7.5s ease-in-out infinite;
}

@keyframes bubbleMove5 {
  0% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(30px, 70px);
  }
  100% {
    transform: translate(-30px, 0);
  }
}

/* Bubble 6 – Left Up */
.bubble-6 img {
  position: absolute;
  top: -100px;
  left: 15%;
  animation: bubbleMove6 8.5s ease-in-out infinite;
}

@keyframes bubbleMove6 {
  0%,
  100% {
    transform: translate(0, 0);
  }
  50% {
    transform: translate(-40px, -95px);
  }
}
.shade-home img {
  width: 1920px;
}

.banner-btn .elementor-button:hover {
  background-image: linear-gradient(
    70deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 1) 100%,
    rgba(255, 255, 255, 1) 62%
  );
  transform: translateY(-8px);
}

.banner-btn .elementor-button::before {
  content: "";
  position: absolute;
  top: 0;
  left: -150%;
  width: 150%;
  height: 100%;
  background: linear-gradient(
    120deg,
    transparent 0%,
    rgba(255, 255, 255, 0.22) 150%,
    transparent 100%
  );
  transition: left 1.2s ease;
}

.banner-btn .elementor-button:hover::before {
  left: 150%;
}
.abs img.attachment-large.size-large.wp-image-1436 {
  min-width: 835px;
}

/* ****************************Wave slider Section *****************************/
.wave-text-wrapper {
  width: 100%;
  overflow: hidden;
}
.wave-text-wrapper svg text {
  opacity: 1;
  mix-blend-mode: normal;
}
.wave-marquee .item {
  font-size: 29px;
  font-weight: 700;
  letter-spacing: 2px;
  white-space: nowrap;
  padding-right: 40px;
  background: linear-gradient(to bottom, #e6a21f 0%, #f7b33b 45%, #f36723 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.wave-marquee .owl-stage {
  display: flex;
  align-items: center;
}
/* ****************************Choose Your Experience Section*****************************/
.wave-box {
  /* filter: drop-shadow(0px 10px 17.5px rgba(0, 0, 0, 0.1)); */
  background-image: linear-gradient(
    0deg,
    #f9ee9a 0%,
    #f9ee9a 2%,
    #fffefb 44%,
    #fff5f0 58%,
    #fdd8e1 82%,
    #fdd8e1 100%
  );
  border: 0px solid #25ace7;
}
.wave-box {
  box-shadow: 0px 10px 17.5px rgba(0, 0, 0, 0.1);
}
.wave-box img.attachment-large.size-large.wp-image-281 {
  height: 390px;
  width: 290px;
}
.wave-box-2 {
  /* filter: drop-shadow(0px 10px 17.5px rgba(0, 0, 0, 0.1)); */
  background-image: linear-gradient(
    0deg,
    #a0d6fd 0%,
    #a0d6fd 13%,
    #ffd6f1 41%,
    #f7eff2 59%,
    #57ec83 126%,
    #57ec83 100%
  );
  border: 0px solid #25ace7;
}
.wave-box-2 {
  box-shadow: 0px 10px 17.5px rgba(0, 0, 0, 0.1);
}
.wave-box-2 img.attachment-large.size-large.wp-image-281 {
  height: 390px;
  width: 290px;
}
.btn-wave-2 .elementor-button,
.elementor-button.btn-wave-2 {
  background-image: linear-gradient(
    82deg,
    #f356ae 0%,
    #f356ae 7%,
    #4ec9ef 51%,
    #4ec9ef 100%
  );
  background-size: 200% 200%;
  background-position: left center;
  border: none;
  color: #ffffff;

  transition:
    background-position 0.6s ease,
    transform 0.4s ease,
    box-shadow 0.4s ease;
}

.btn-wave-2 .elementor-button:hover,
.elementor-button.btn-wave-2:hover {
  background-position: right center;

  transform: translateY(-6px) scale(1.05);

  box-shadow: 0px 12px 25px rgba(0, 0, 0, 0.25);
}
.btn-wave .elementor-button {
  background-image: linear-gradient(
    82deg,
    #f7b33b 0%,
    #f36723 33%,
    #811539 99%,
    #811539 100%
  );
  background-size: 200% 200%;
  background-position: left center;
  border: none;
  color: #ffffff;

  transition:
    background-position 0.6s ease,
    transform 0.4s ease,
    box-shadow 0.4s ease;
}

.btn-wave .elementor-button:hover {
  background-position: right center;

  transform: translateY(-6px) scale(1.05);

  box-shadow: 0px 12px 25px rgba(0, 0, 0, 0.25);
}

.animation-1 {
  transition: transform 0.3s ease;
}
.animation-1:hover {
  transform: translateY(-5px);
}
.Wave-btn .elementor-button {
  background-image: url("../img/rectangle-4-copy-5.webp");

  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;

  padding: 18px 40px;
  border-radius: 999px;
  transition:
    background-position 0.6s ease,
    transform 0.4s ease,
    box-shadow 0.4s ease;
}

.Wave-btn .elementor-button {
  position: relative;
  overflow: hidden;
  padding: 18px 40px;
  border-radius: 999px;
  z-index: 1;
}

.Wave-btn .elementor-button:hover {
  transform: translateY(-6px) scale(1.05);
}

.Wave-btn .elementor-button:hover::before {
  transform: scale(1.1);
  background-position: right center;
}

/* ***********************The New Wave*****************************/
.Main-new {
  position: relative;
  z-index: 1;
}
.Mood {
  opacity: 0.76;
}

/***************************** Hover text section *****************************/
.hover-text p:hover {
  transform: scale(1.12);
}
.hover-text p {
  transition: transform 0.4s ease;
  display: inline-block; /* required for transform to work on inline elements */
}
/*****************************Ride section *****************************/

.ride-main {
  position: relative;
  overflow: hidden;
}

/*****************************Testimonial slider*****************************/
.wave-testimonial-slider {
  padding: 40px 0;
}
.testimonial-carowsel .elementor-testimonial img {
  position: absolute;
  top: 4%;
  left: 85%;
}
.testimonial-outer
  .testimonial-carowsel.elementor-widget-testimonial-carousel
  .elementor-testimonial__text {
  margin-top: 20px;
  font-style: normal;
}
.testimonial-outer .elementor-widget-testimonial-carousel .swiper-slide {
  padding: 0;
}

.ride-car .elementor-testimonial img {
  position: absolute;
  top: 4%;
  left: 44%;
}
.ride-car .elementor-testimonial__text {
  margin-top: 60px;
}
.ride-car span.elementor-testimonial__name {
  position: absolute;
  top: 53%;
  left: 0;
  text-align: center;
  padding: 0 20px;
  margin-top: 20px;
}
.testimonial-content {
  font-size: 16px;
  line-height: 1.6;
}

cite.elementor-testimonial__cite {
  margin: 0;
}
span.elementor-testimonial__name {
  position: relative;
}
.testimonial-carowsel span.elementor-testimonial__name::before {
  content: "";
  position: absolute;
  left: 6%;
  top: -60%;
  width: 30px;
  height: 1px;
  background-color: #f7b33b;
}
.elementor-167
  .elementor-element.elementor-element-4b2abc2
  .elementor-main-swiper
  .swiper-slide {
  opacity: 0.76;
}
.elementor-testimonial__text {
  margin-bottom: 70px;
}

.elementor-swiper-button svg {
  display: none;
}
.elementor-swiper-button-prev::before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/arrow-left-icon_svgstack_com_11681770054167.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.elementor-swiper-button-next::before {
  content: "";
  display: block;
  width: 32px;
  height: 32px;
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/arrow-right-icon_svgstack_com_11721770054178.svg");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.testimonial-outer
  .testimonial-carowsel
  .elementor-main-swiper
  .elementor-swiper-button-prev {
  left: -6px;
}

.testimonial-outer
  .testimonial-carowsel
  .elementor-main-swiper
  .elementor-swiper-button-next {
  right: -6px;
}

.testimonial-outer .elementor-testimonial__text {
  height: 210px;
}
.testimonial-outer cite.elementor-testimonial__cite {
  margin: 0;
}
/* Slide 1 */
.testimonial-carowsel .swiper-slide:nth-child(1) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(3) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(5) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(7) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(9) .elementor-testimonial {
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/Rectangle-8-copy-7-1.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 56px;
  border-radius: 16px;
  position: relative;
  border-radius: 24px;
  font-style: normal;
}

/* Slide 2 */
.testimonial-carowsel .swiper-slide:nth-child(2) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(4) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(6) .elementor-testimonial,
.testimonial-carowsel .swiper-slide:nth-child(8) .elementor-testimonial {
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/Rectangle-8-copy-6.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  padding: 56px;
  border-radius: 16px;
  position: relative;
  border-radius: 24px;
  font-style: normal;
}

/*****************************Accordian section*****************************/
.e-n-accordion {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

/*****************************Image Slider section*****************************/

.Ride-outer .owl-carousel .owl-item img {
  width: 100%;
  height: 509px;
  object-fit: cover;
  border-radius: 120px;
}
.brez-owl-slider .item {
  border-radius: 28px;
  overflow: hidden;
}

.brez-owl-slider img {
  width: 100%;
  display: block;
  border-radius: 28px;
}

/*************************************Footer section  ***************************/
.footer-form span.elementor-button-icon {
  position: absolute;
  top: -170%;
  right: 0%;
}

.footer-form .elementor-column.elementor-col-100,
.footer-form .elementor-column[data-col="100"] {
  width: 83%;
}
.footer-form #form-field-email:focus {
  background-color: transparent;
  outline: none;
  box-shadow: none;
}
.elementor-message.elementor-message-success.elementor-message-svg {
  position: absolute;
  top: 60%;
}
.footer-form
  .elementor-878
  .elementor-element.elementor-element-ebbfdc8
  .elementor-field-group {
  margin-bottom: 0;
}
/* .elementor-kit-7 a {
  font-family: "Neue Haas Display" !important;
} */
/*************************************Single product css  ***************************/

.woo-variation-gallery-wrapper .woo-variation-gallery-slider img {
  border-radius: 80px !important;
}

.woo-variation-gallery-slider .wvg-single-gallery-image-container img {
  height: 858px !important;
  width: 673px !important;
}
.woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image img {
  width: 185px;
  height: 195px;
  border-radius: 40px;
}
.woo-variation-gallery-thumbnail-slider.woo-variation-gallery-thumbnail-columns-3.slick-initialized.slick-slider {
  margin-left: 20px !important;
  margin-right: 20px !important;
}
.woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image {
  opacity: 1;
}
.woo-variation-gallery-thumbnail-slider .slick-slide {
  border: none !important;
  box-sizing: border-box;
}
.postid-4577 .elementor-878 .elementor-element.elementor-element-5343b6a {
  margin-top: 0 !important;
}
.woo-variation-gallery-thumbnail-slider
  .slick-slide.slick-current.slick-active.slick-center
  img {
  border: 2px solid #fd8759 !important;
}
a.woo-variation-gallery-trigger.woo-variation-gallery-trigger-position-top-right {
  display: none;
}
.woocommerce
  .elementor-4579
  .elementor-element.elementor-element-eb74f31
  .price {
  background: linear-gradient(180deg, #d75c3c 0%, #e6a21f 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  color: transparent;
}
.postid-4577 button.single_add_to_cart_button.button.alt {
  background-image: linear-gradient(
    82deg,
    rgb(247, 179, 59) 0%,
    rgb(243, 103, 35) 33%,
    rgb(129, 21, 57) 99%,
    rgb(129, 21, 57) 100%
  );
  background-size: 200% 200%;
}
.postid-5734 button.single_add_to_cart_button.button.alt {
  background-image: linear-gradient(
    82deg,
    #f356ae 0%,
    #f356ae 7%,
    #4ec9ef 51%,
    #4ec9ef 100%
  );
  background-size: 200% 200%;
}
.elementor-5050 .elementor-element.elementor-element-fb70050,
.elementor-element.elementor-element-bdb8887.e-grid.e-con-full.grid-two.e-con.e-child {
  --width: 26%;
}

#dosing-accordion .e-n-accordion-item-title-text::before {
  content: "";
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/bottle-svgrepo-com-copy.webp");
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 35px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}
#Feeling-states .e-n-accordion-item-title-text::before {
  content: "";
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/heart-svgrepo-com.webp");
  background-size: contain;
  background-repeat: no-repeat;
  width: 30px;
  height: 35px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}
#Flavor .e-n-accordion-item-title-text::before {
  content: "";
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/Layer-54.webp");
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 35px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}
#Ingredients .e-n-accordion-item-title-text::before {
  content: "";
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/leaf-two-svgrepo-com.webp");
  background-size: contain;
  background-repeat: no-repeat;
  width: 30px;
  height: 35px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}
#Product-disclaimer .e-n-accordion-item-title-text::before {
  content: "";
  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/notepad-svgrepo-com.webp");
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 35px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: middle;
}
.Single-product-acordian .e-n-accordion {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 20px;
}
#dosing-accordion p strong {
  font-size: 25px;
  letter-spacing: 1px;
  line-height: 67px;
  color: #000000;
  font-family: "Neue Haas Display";
}
#dosing-accordion p,
.single-product li,
#Flavor p,
#Ingredients p,
#Product-disclaimer p {
  font-size: 22px;
  letter-spacing: 0px;
  line-height: 32px;
  color: #000000;
  font-weight: 400;
  font-family: "Neue Haas Display";
}
ul li::marker {
  color: #fd8759;
}
#Feeling-states ul {
  column-count: 2;
  column-gap: 40px; /* space between columns */
}
.postid-5734 .single-product-btn .elementor-button {
  position: relative;
  background: transparent;
  border-radius: 50px; /* adjust if needed */
  border: 2px solid transparent;

  background-image:
    linear-gradient(#ffffff, #ffffff),
    linear-gradient(0deg, #4b0c32 0%, #c51f42 31%, #f05123 68%, #f2cd5d 100%);

  background-origin: border-box;
  background-clip: padding-box, border-box;
  border-color: transparent;
}
.postid-4577 .single-product-btn .elementor-button {
  position: relative;
  background: transparent;
  border-radius: 50px; /* adjust if needed */
  border: 2px solid transparent;

  background-image:
    linear-gradient(#ffffff, #ffffff),
    linear-gradient(
      0deg,
      #29b45b 0%,
      #2f67b2 24%,
      #039dbf 54%,
      #f4c516 78%,
      #55c66d 100%
    );

  background-origin: border-box;
  background-clip: padding-box, border-box;
  border-color: transparent;
}
.elementor-4579 .elementor-element.elementor-element-69a51e1 .elementor-button {
  background-color: #00000000;
  font-family: "Canela Trial";
  font-size: 37px;
  font-weight: 400;
  fill: #000000;
  color: #000000;
  border-style: solid;
  border-width: 1px 1px 1px 1px;
  border-color: #00000000;
  border-radius: 45px 45px 45px 45px;
  padding: 10px 160px 10px 160px;
}
.postid-4577 .single-product-btn .elementor-button-text::before {
  content: "";
  display: inline-block;
  width: 59px;
  height: 65px;
  margin-right: 10px;

  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/Group-30.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  vertical-align: middle;
}
.postid-5734 .single-product-btn .elementor-button-text::before {
  content: "";
  display: inline-block;
  width: 59px;
  height: 65px;
  margin-right: 10px;

  background-image: url("http://dev.zeroguess.us/n14/Wave/wp-content/uploads/2026/02/Group-32.webp");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;

  vertical-align: middle;
}
/* parent wrapper */
.elementor-element.elementor-element-0b4c553.shape-first {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  pointer-events: none;
}

/* inner wrapper */
.elementor-element.elementor-element-0b4c553 .e-con-inner {
  position: relative;
  width: 100%;
  height: 100%;
}

/* GREEN GLOW — faster */
.elementor-element.elementor-element-6a8a415.shape10 {
  position: absolute;
  width: 600px;
  height: 600px;
  left: 10%;
  top: 20%;

  background: radial-gradient(circle, #37f3b4 0%, rgba(55, 243, 180, 0) 70%);
  filter: blur(40px);

  animation: floatWave1 4s ease-in-out infinite;
}

/* BLUE GLOW — faster */
.elementor-element.elementor-element-8c1f76f.shape9 {
  position: absolute;
  width: 500px;
  height: 500px;
  right: 15%;
  top: 10%;

  background: radial-gradient(circle, #0305d6 0%, rgba(3, 5, 214, 0) 70%);
  filter: blur(40px);

  animation: floatWave2 7s ease-in-out infinite;
}

/* FAST floating motion */
@keyframes floatWave1 {
  0% {
    transform: translate(0, 0) scale(1);
  }
  25% {
    transform: translate(80px, -50px) scale(1.18);
  }
  50% {
    transform: translate(-60px, 40px) scale(1.22);
  }
  75% {
    transform: translate(40px, 60px) scale(1.15);
  }
  100% {
    transform: translate(0, 0) scale(1);
  }
}

@keyframes floatWave2 {
  0% {
    transform: translate(0, 0) scale(1);
  }
  25% {
    transform: translate(-40px, 35px) scale(1.1);
  }
  50% {
    transform: translate(-70px, -20px) scale(1.16);
  }
  75% {
    transform: translate(-25px, -40px) scale(1.1);
  }
  100% {
    transform: translate(0, 0) scale(1);
  }
}
/*************************************Media Queryies  ***************************/
/* vip css */

.home .elementor-element.elementor-element-2a0afab img, .page.page-id-2276 .elementor-element.elementor-element-2a0afab img {
    filter: unset !important;
}
.main-banner {
	position: relative;
    z-index: 9;
}
#Ingredients p:nth-child(1) {
    margin-bottom: 20px !important;
}


/* responsive start */

@media (max-width: 1680px) {
  .Balance::after,
  .Balance-2::after {
    top: 20%;
  }
  .hero-banner
    .elementor-element.elementor-element-36f5ab7.e-con-full.e-flex.e-con.e-child {
    width: 53%;
  }
}
@media (max-width: 1440px) {
  .e-n-accordion {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }

  .elementor-167 .elementor-element.elementor-element-0f83550 img,
  .elementor-167 .elementor-element.elementor-element-f0d3d6e img,
  .elementor-167 .elementor-element.elementor-element-f1d2956 img,
  .elementor-167 .elementor-element.elementor-element-ece7399 img,
  .elementor-167 .elementor-element.elementor-element-119a2a6 img,
  .elementor-167 .elementor-element.elementor-element-1701bac img {
    width: 30%;
  }
  .Balance::after {
    left: 87%;
    top: 15%;
  }
  .elementor-167 .elementor-element.elementor-element-bc80638 {
    padding: 20px 50px 40px 40px !important;
  }
  .bubble-1 img {
    top: -542px;
    animation: bubbleFloatTopBottom 15s ease-in-out infinite;
  }
  .bubble-2 img {
    animation: bubbleFloatTopBottom 15s ease-in-out infinite;
    top: -640px;
  }
  .hover-text p:hover {
    transform: scale(1.12);
  }
  .grid-two.elementor-5050 .elementor-element.elementor-element-fb70050,
  .grid-two.elementor-element.elementor-element-bdb8887.e-grid.e-con-full.grid-two.e-con.e-child {
    width: 30%;
  }

  /* Bubble 3 – Down Left */
  .bubble-3 img {
    position: absolute;
    left: -10%;
    top: -294px;
    animation: bubbleMove3 8s ease-in-out infinite;
  }

  @keyframes bubbleMove3 {
    0%,
    100% {
      transform: translate(0, 0);
    }
    50% {
      transform: translate(-60px, 40px);
    }
  }
}
@media (max-width: 1300px) {
  .elementor-167 .elementor-element.elementor-element-bc80638 {
    padding: 50px 50px 40px 40px !important;
  }
  .testimonial-outer .testimonial-carowsel .elementor-swiper-button-next {
    right: 0px;
  }
  .testimonial-outer .testimonial-carowsel .elementor-swiper-button-prev {
    left: 0px;
  }
}
@media (max-width: 1280px) {
  .Balance::after {
    left: 78%;
    top: 15%;
  }
  .elementor-167 .elementor-element.elementor-element-bc80638 {
    padding: 20px 50px 40px 40px !important;
  }
  .hover-text p:hover {
    transform: scale(1.12);
  }
  .Balance-2::after {
    left: 88%;
  }
  h2 {
    font-size: 46px;
    letter-spacing: -1px;
    line-height: 79px;
  }
  .hover-text p:hover {
    transform: scale(1.12);
  }
  .e-n-accordion {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (max-width: 1024px) {
  .Balance::after {
    left: 78%;
  }

  .hero-banner
    .elementor-167
    .elementor-element.elementor-element-2c0a13c
    .elementor-heading-title {
    font-size: 55px;
    line-height: 65px;
  }
  .e-n-accordion {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }

  .Ride-outer .owl-carousel .owl-item img {
    width: 100%;
    height: 509px;
    object-fit: cover;
    border-radius: 80px;
  }
  .mobile-ride-slider .elementor-element .swiper .elementor-swiper-button,
  .mobile-ride-slider .elementor-element .swiper ~ .elementor-swiper-button,
  .mobile-ride-slider .elementor-lightbox .swiper .elementor-swiper-button,
  .mobile-ride-slider .elementor-lightbox .swiper ~ .elementor-swiper-button {
    color: hsla(0, 0%, 93%, 0.9);
    cursor: pointer;
    display: inline-flex;
    font-size: 25px;
    position: absolute;
    top: 120%;
    transform: translateY(-50%);
    z-index: 1;
  }
  .testimonial-outer .elementor-element .swiper .elementor-swiper-button,
  .testimonial-outer .elementor-element .swiper ~ .elementor-swiper-button,
  .testimonial-outer .elementor-lightbox .swiper .elementor-swiper-button,
  .testimonial-outer .elementor-lightbox .swiper ~ .elementor-swiper-button {
    color: hsla(0, 0%, 93%, 0.9);
    cursor: pointer;
    display: inline-flex;
    font-size: 25px;
    position: absolute;
    top: 110%;
    transform: translateY(-50%);
    z-index: 1;
  }
  .testimonial-outer
    .testimonial-carowsel
    .elementor-main-swiper
    .elementor-swiper-button-next,
  .mobile-ride-slider
    .ride-car
    .elementor-main-swiper
    .elementor-swiper-button-next {
    right: 44%;
  }
  .testimonial-outer
    .testimonial-carowsel
    .elementor-main-swiper
    .elementor-swiper-button-prev,
  .mobile-ride-slider
    .ride-car
    .elementor-main-swiper
    .elementor-swiper-button-prev {
    left: 44%;
  }
  .woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image img {
    width: 100%;
    height: auto;
    border-radius: 40px;
  }
  .banner-btn .elementor-button::before {
    display: none;
  }
}
@media (max-width: 768px) {
  .e-n-accordion {
    grid-template-columns: 1fr;
  }
  .Shop-all::after {
    left: 64%;
    top: -3%;
  }
  .Balance::after {
    left: 78%;
  }
  .mobile-ride-slider .elementor-element .swiper .elementor-swiper-button,
  .mobile-ride-slider .elementor-element .swiper ~ .elementor-swiper-button,
  .mobile-ride-slider .elementor-lightbox .swiper .elementor-swiper-button,
  .mobile-ride-slider .elementor-lightbox .swiper ~ .elementor-swiper-button {
    color: hsla(0, 0%, 93%, 0.9);
    cursor: pointer;
    display: inline-flex;
    font-size: 25px;
    position: absolute;
    top: 110%;
    transform: translateY(-50%);
    z-index: 1;
  }
  .testimonial-outer .elementor-element .swiper .elementor-swiper-button,
  .testimonial-outer .elementor-element .swiper ~ .elementor-swiper-button,
  .testimonial-outer .elementor-lightbox .swiper .elementor-swiper-button,
  .testimonial-outer .elementor-lightbox .swiper ~ .elementor-swiper-button {
    color: hsla(0, 0%, 93%, 0.9);
    cursor: pointer;
    display: inline-flex;
    font-size: 25px;
    position: absolute;
    top: 110%;
    transform: translateY(-50%);
    z-index: 1;
  }
  .mobile-ride-slider .elementor-testimonial__text {
    height: auto;
  }

  .wave-text-wrapper text {
    font-size: 58px;
    letter-spacing: 2px;
  }
  .wave-text-wrapper svg {
    height: 40px;
  }
  #dosing-accordion p strong {
    font-size: 22px;
  }
  #dosing-accordion p,
  .single-product li,
  #Flavor p,
  #Ingredients p,
  #Product-disclaimer p {
    font-size: 20px;
  }
}
@media (max-width: 540px) {
  .woo-variation-gallery-slider .wvg-single-gallery-image-container img {
    height: 458px !important;
    object-fit: cover;
  }
  .woo-variation-gallery-wrapper .wvg-gallery-thumbnail-image img {
    width: 210px;
    height: 110px;
    border-radius: 20px;
    object-fit: cover;
  }
}
@media (max-width: 425px) {
  .testimonial-outer
    .testimonial-carowsel
    .elementor-main-swiper
    .elementor-swiper-button-next,
  .mobile-ride-slider
    .ride-car
    .elementor-main-swiper
    .elementor-swiper-button-next {
    right: 38%;
  }
  .elementor-4579 .elementor-element.elementor-element-5f4a9a2 .cart button,
  .elementor-4579 .elementor-element.elementor-element-5f4a9a2 .cart .button {
    padding: 15px 60px 15px 60px !important;
    transition: all 0.2s;
  }
  .woo-variation-gallery-thumbnail-slider.woo-variation-gallery-thumbnail-columns-3.slick-initialized.slick-slider {
    margin-left: 0px !important;
    margin-right: 0px !important;
  }
  .ride-car .elementor-swiper-button-prev {
    left: 41% !important;
  }
  .owl-carousel .owl-item img {
    height: 420px !important;
    object-fit: cover;
}
}

/* ===== Scroll offset fix: Shop All section headers (Task 9) ===== */
/* The shop page is a WooCommerce listing — apply scroll-margin-top to
   product titles and the main content area so sticky-header (~80px)
   does not overlap on anchor navigation. */
.woocommerce ul.products,
.woocommerce-loop-product__title,
.e-con,
.elementor-section {
  scroll-margin-top: 80px;
}


/* ===== Mobile: Reduce whitespace above Balanced Flow / Conscious Elevation (Tasks 1-2) ===== */
/* Container f66ee78 wraps the shop-nav section; it has margin-top:100px on desktop
   with no mobile override, so Elementor inherits it. Reduce to 30px on mobile. */
@media (max-width: 767px) {
  .elementor-element.elementor-element-f66ee78 {
    margin-top: 30px !important;
  }
}

/* ===== Hero visual fixes ===== */

/* Fix wave/ripple element: anchor to hero bottom instead of top:66%
   (top:66% only clipped correctly at MacBook Air 900px viewport height;
   at larger viewports a gap appeared between the wave and the hero edge) */
.elementor-element-39e4c5c {
  top: auto !important;
  bottom: 0 !important;
  background-size: cover !important;
  background-position: center bottom !important;
}

/* Remove the 100px gap between the hero section and the section below it */
.elementor-element-f43d00a {
  margin-top: 0 !important;
}


/* 1e6ab9e is a static (layout-spacer) copy of the product image; Elementor sets
   opacity:0 in settings but never generated the CSS rule, leaving it visible
   and creating a semi-transparent box over the gradient background */
.elementor-element-1e6ab9e {
  opacity: 0 !important;
}

/* Center arrow background-image vertically with the heading text.
   Generated CSS uses fixed px offsets (12–22px) which don't center correctly
   at all viewport sizes. */
.elementor-element-33250e4,
.elementor-element-6470e8b {
  background-position: 100% 50% !important;
}

/* Seamless wave scroll animations */
@keyframes wave-scroll-left {
  from { background-position-x: 0px; }
  to   { background-position-x: calc(-1 * var(--wave-tile-w, 800px)); }
}
@keyframes wave-scroll-right {
  from { background-position-x: 0px; }
  to   { background-position-x: var(--wave-tile-w, 800px); }
}
.bg-wave-left {
  animation: wave-scroll-left var(--wave-duration, 22s) linear infinite !important;
  background-position-y: bottom !important;
}
.bg-wave-right {
  animation: wave-scroll-right var(--wave-duration, 22s) linear infinite !important;
  background-position-y: bottom !important;
}

/* Shop page — match the magic-mushroom product page header appearance.
   The product page hero uses Layer-34-copy-2-2.webp at natural size (auto),
   positioned 0% 0%, with margin-top:-150px pulling it behind the transparent header.
   Applying the same image to the body at the same settings replicates the look. */
body.woocommerce-shop {
  background-image: url('https://groovewithwave.com/wp-content/uploads/2026/02/Layer-34-copy-2-2.webp') !important;
  background-size: auto !important;
  background-position: 0% 0% !important;
  background-repeat: no-repeat !important;
}
/* Remove white background from primary so the body gradient shows through, matching the
   magic-mushroom hero section which is 1631px tall and bleeds behind all content */
body.woocommerce-shop #primary {
  background: transparent !important;
}

/* Logo on cart/checkout uses the same colored logo as all other pages — no swap needed. */

@media (max-width: 767px) {
  /* "The New Wave" mobile section — push heading down to sit just above the pineapple */
  .elementor-element-7fc476b {
    --padding-top: 15vh !important;
    padding-top: 15vh !important;
  }


}


/* The New Wave — pull pills bar up into the section, transparent so it doesn't clip image */
.elementor-element-e74215a {
  background: transparent !important;
}
@media (max-width: 767px) {
  .elementor-element-e74215a {
    --margin-top: 16px !important;
  }
}

/* Ripple/water section — purely decorative, must never intercept clicks */
.elementor-element-39e4c5c,
.elementor-element-39e4c5c * {
  pointer-events: none !important;
}

/* Hero — cap height on large/widescreen monitors.
   max-height alone cannot beat min-height (min-height wins per CSS spec),
   so we override min-height itself using min() to cap at 900px. */
.elementor-element-4f3604e {
  min-height: min(100vh, 900px) !important;
}

/* Wave animation section before "Ride the Wave" — mirrors footer wave */
.elementor-element-w1a2b3c {
  position: relative !important;
  overflow: hidden !important;
}
.elementor-element-w_bg1111 {
  width: 100% !important;
  min-height: 20vh !important;
  background-image: url('https://groovewithwave.com/wp-content/uploads/2026/01/Clip-path-group-scaled.png') !important;
  background-repeat: repeat-x !important;
  background-size: auto 100% !important;
}
.elementor-element-w_bg2222,
.elementor-element-w_bg3333 {
  position: absolute !important;
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
  min-height: 20vh !important;
  background-repeat: repeat-x !important;
  background-size: auto 100% !important;
}
.elementor-element-w_bg2222 {
  background-image: url('https://groovewithwave.com/wp-content/uploads/2026/03/2.1-scaled.png') !important;
  top: 26% !important;
}
.elementor-element-w_bg3333 {
  background-image: url('https://groovewithwave.com/wp-content/uploads/2026/03/3.1-scaled.png') !important;
  top: 74% !important;
}

/* Ride the Wave — text paragraph: constrain width and center for readability */
.elementor-element-c7091bd,
.elementor-element-2808f67,
.elementor-element-54c8d41 {
  max-width: 1200px !important;
  align-self: center !important;
  padding-left: 40px !important;
  padding-right: 40px !important;
}

.elementor-element-c7091bd p,
.elementor-element-2808f67 p,
.elementor-element-54c8d41 p {
  line-height: 1.65 !important;
}

/* Mobile — "The New Wave": reduce gap + shift background down */
@media (max-width: 767px) {
  .elementor-element-2060c98 {
    margin-top: -240px !important;
  }
  .elementor-element-9869b07 {
    --margin-top: 32px !important;
  }
  .elementor-element-9869b07 {
    --margin-bottom: -200px !important;
  }
  .elementor-element-de34f86 {
    position: relative !important;
    z-index: 10 !important;
  }

  /* Ride the Wave — wave floats above heading on mobile */
  .elementor-element-d1126bc {
    --position: relative !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    width: 100% !important;
    --z-index: auto !important;
  }

  /* Slow and smooth wave animation on mobile */
  .elementor-element-f96f440 .bg-wave-left,
  .elementor-element-f96f440 .bg-wave-right {
    --wave-duration: 90s !important;
  }

  /* Match "View Tri-Blends" button width to "View Magic Mushrooms" */
  .elementor-4579 .elementor-element.elementor-element-d587571 .elementor-button {
    width: 100%;
  }

  /* Space between feature cards nav arrows and Shop now button */
  .elementor-element-e74215a {
    padding-top: 40px !important;
  }
}

/* Narrow phones (≤420px, e.g. iPhone 17 Pro 393px) — boxes above New Wave background */
@media (max-width: 420px) {
  /* Strip background from parent so it no longer covers the boxes */
  .elementor-element-9869b07:not(.elementor-motion-effects-element-type-background),
  .elementor-element-9869b07 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: none !important;
  }
  /* Apply background only to the New Wave content area */
  .elementor-element-2060c98 {
    background-image: url("https://groovewithwave.com/wp-content/uploads/2026/02/Layer-29.webp") !important;
    background-position: bottom left !important;
    background-size: cover !important;
    margin-top: 0 !important;
  }
  .elementor-element-9869b07 {
    --margin-bottom: 0px !important;
  }
}

/* Product sub-pages — fix excess footer whitespace on mobile */
@media (max-width: 767px) {
  body.postid-4577 .elementor-element-a1060f6,
  body.postid-5734 .elementor-element-a1060f6 {
    min-height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  body.postid-4577 .elementor-element-ad9aa08,
  body.postid-5734 .elementor-element-ad9aa08 {
    --row-gap: 8px !important;
  }
  body.postid-4577 .elementor-element-7a7d262,
  body.postid-5734 .elementor-element-7a7d262 {
    --row-gap: 4px !important;
  }
}

/* Ride the Wave carousel — uniform square images */
.brez-owl-slider .item {
  overflow: hidden;
}
.brez-owl-slider .item img {
  width: 100%;
  aspect-ratio: 1 / 1;
  object-fit: cover;
  display: block;
}
