@charset "utf-8";

	html { font-family: "Roboto";	font-size: 22px; box-sizing: border-box; scroll-padding-top: 100px; }
	body { margin: 0; line-height: normal; box-sizing: border-box; scroll-padding-top: 100px; }

/* UNIT OVERVIEW */
		.overview_unit_name {
			font-size: 30px; /* Base size remains constant */
      transition: transform 0.3s ease; /* Animate the transform */
      display: inline-block; /* Prevents layout issues with scaling */
		}
		a:hover .overview_unit_name {
			transform: scale(1.0667);	
		}
		#overview_sp_image:hover {
			background-color: #92ca6a !important;
		}
		#overview_mp_image:hover {
			background-color: #59afb2 !important;
		}
		#overview_woz_image:hover {
			background-color: #4792bc !important;
		}
		#overview_bt_image:hover {
			background-color: #a194c7 !important;
		}





	
/* UNITS */
		.add-to-cart:hover	 {
			background-color:#555 !important;
		}
		.add-to-cart button:hover {
      background-color: inherit; /* Ensure button follows div's background */
    }		
		.add-to-cart {
			transition: background-color 0.3s;		
		}
/*		
		input {
				width: 50px;
				text-align: center;
				border: none;
				background: transparent;
				font-size: 16px;
				appearance: textfield;
				-moz-appearance: textfield;
				margin: 0;
				padding: 0;
				height: 100%;
		}
*/
		input[type=number] {
				-moz-appearance: textfield; /* Firefox */
				padding-block: 0; /* Override user agent padding-block */
				padding-inline: 0; /* Override user agent padding-inline */
				padding: 0; /* Fallback for broader compatibility */
		}	
			
		input::-webkit-inner-spin-button,
		input::-webkit-outer-spin-button {
				display: none; /* Hide spinners in Webkit browsers (Chrome, Safari) */
		}
		
		#simplemodal-overlay {
				background-color: #000;
		}		


/* CSS FOR UNIT SLIDERS */
	/* Container for the slider */
	.slider1 {
		 position: relative;
		 width: 100%;
		 max-width: 800px;
		 /*min-height: 400px;*/
		 margin: 0 auto;
		padding-bottom:30px;
		 overflow: hidden;
		 display: flex;
		 flex-direction: column;
	}

	/* Slides wrapper */
	.slides {
		 display: flex;
		 transition: transform 0.5s ease-in-out;
		 flex: 1;
		 touch-action: none;   
		 box-sizing: border-box;
		 width: 100%;
		 
		 flex: 0 0 auto; /* do not stretch */
	}

	/* Individual slide */
	.slide {
		 flex: 0 0 100%;
		 width: 100%;
/*		 min-height: 100%;*/
		 display: flex;
		 align-items: center;
		 justify-content: center;
		 box-sizing: border-box; 
		 
		 position: relative;
		 aspect-ratio: 16 / 9;
	}

	/* Content container for image or iframe */
	.slide-content {
		 width: 100%;
		 height: 100%;
		 display: flex;
		 align-items: center;
		 justify-content: center;
		 position: relative;

  	transition: opacity 0.25s ease-in-out;
	}

	.slide-content.fade {
		opacity: 0;
	}
	.slide-content img {
		 max-width: 100%;
		 max-height: 100%;
		 height: auto;
		 object-fit: contain;
	}

	.slide-content img[data-video-url], .slide-content img.play-button {
		cursor: pointer;
	}
	
	.slide-content img.play-button {
		position: absolute; 
		left: 50%; 
		top: 50%; 
		transform: translate(-50%,-50%); 
		opacity: 0.5;
		cursor: pointer;
		z-index: 10;
	}
	
	.slide-content iframe {
/*		 width: 100%;
		 max-width: 100%;
		 height: calc((100vw - 50px) * .5625);
		 max-height: 305px;
		 border: none;
		 aspect-ratio: 16/9;*/

		pointer-events: auto;
  	touch-action: auto;
		width: 100% !important;
    height: 100% !important;
/*    max-width: 100%;
    max-height: 100%;*/
    border: 0;              /* remove borders */
    display: block;         /* remove default inline spacing */
/*    aspect-ratio: 16 / 9;   /* maintain 16:9 ratio */
    object-fit: cover;      /* cover the container fully */	
	}

	/* Navigation arrows */
	.arrow {
		 position: absolute;
		 top: 50%;
		 transform: translateY(-50%);
		 background: #fff;
		 font-size: 1.8em;
		 width: 12px;
		 height: 20px;
		 border-radius: 50%;
		 padding: 0 0 2px 0;
		 cursor: pointer;
		 border: none;
		 display: flex;
		 align-items: center;
		 justify-content: center;
		 user-select: none;
		 transition: opacity 0.3s;
	}
/* Right arrow on video slide transparent background */
	.arrow.video-slide {
			background: transparent;  /* video shows through */
			color: #fff;              /* keep arrow visible */
			box-shadow: none;
	}
	
		.arrow.left {
			 left: 10px;
	}
	
	.arrow.right {
		 right: 10px;
	}
	
	.arrow.sp {
		color: #92ca6a;
	}
	.arrow.sp:hover {
		 background: #92ca6a;
		 color: #fff;
	}
	.arrow.mp {
				color: #59afb2;
			}
	.arrow.mp:hover {
				 background: #59afb2;
				 color: #fff;
			}
	.arrow.woz {
				color: #4792bc;
			}
	.arrow.woz:hover {
				 background: #4792bc;
				 color: #fff;
			}
	.arrow.bt {
		color: #a194c7;
	}
	.arrow.bt:hover {
		 background: #a194c7;
		 color: #fff;
	}

	.arrow.disabled {
		 opacity: 0;
		 pointer-events: none;
		 cursor: default;
	}
				 
			/* Pagination dots */
			.dots {
				 position: absolute;
				 bottom: 10px;
				 left: 50%;
				 transform: translateX(-50%);
				 display: flex;
				 gap: 8px;
			}

	.dot {
		 width: 10px;
		 height: 10px;
		 background: #bbb;
		 border-radius: 50%;
		 cursor: pointer;
		 transition: background 0.3s;
	}


	#silver-pulser .dots .dot.active {
		 background: #92ca6a;
	}
	#silver-pulser .dots .dot:hover {
		 background: #92ca6a;
	}
	#magnetic-pulser .dots .dot.active {
		 background: #59afb2;
	}
	#magnetic-pulser .dots .dot:hover {
		 background: #59afb2;
	}
	#water-ozonator .dots .dot.active {
		 background: #4792bc;
	}
	#water-ozonator .dots .dot:hover {
		 background: #4792bc;
	}
	#bio-tuner .dots .dot.active {
		 background: #a194c7;
	}
	#bio-tuner .dots .dot.hover {
		 background: #a194c7;
	}

	@media (hover: none) {
		 .arrow:hover, .dot:hover {
		 background: inherit;
		 color: inherit;
		 }
	}




/* WELLNESS PROGRAM */
		a:hover .download-guide	{
			background-color: #555 !important;
		}



/* KITS */
    .sota-kits-wrapper * {
        margin: 0;
        padding: 0;
        box-sizing: border-box;
    }

    .sota-kits-wrapper {
        font-family: 'Roboto', sans-serif;
        background-color: #edecec;
        line-height: 1.5;

				align-self: stretch;    }

    .sota-kits-wrapper .container {
        max-width: 1200px;
        margin: 0 auto;
        padding: 80px 20px;
    }

    .sota-kits-wrapper .header {
        text-align: center;
        margin-bottom: 50px;
    }

    .sota-kits-wrapper .header h1 {
        font-size: 50px;
        font-weight: 900;
        color: #4792bc;
        line-height: 1.2;
        margin-bottom: 20px;
    }

    .sota-kits-wrapper .header p {
        font-size: 22px;
        font-weight: 700;
        color: #555;
        line-height: 1.5;
    }

    .sota-kits-wrapper .products-container {
        display: flex;
        flex-wrap: wrap;
        gap: 50px;
        justify-content: center;
        padding: 10px;
    }

    .sota-kits-wrapper .product-card {
        background: white;
        border-radius: 50px;
        padding: 20px;
        padding-bottom: 40px;
        box-shadow: 1px 0px 11.4px 0px #c6c6c6;
        flex: 1 0 400px;
        max-width: 550px;
        display: flex;
        flex-direction: column;
    }

    .sota-kits-wrapper .product-image {
        width: 100%;
        /*height: 383px;*/
        border-radius: 50px;
        object-fit: cover;
        margin-bottom: 20px;
    }

    .sota-kits-wrapper .product-content {
        display: flex;
        flex-direction: column;
        gap: 20px;
				
				align-items: flex-start;
    }

    .sota-kits-wrapper .product-title {
        font-size: 30px;
        font-weight: 900;
        color: #4792bc;
        line-height: 1.17;
    }

    .sota-kits-wrapper .product-title .highlight {
        color: #92ca6a;
    }

    .sota-kits-wrapper .features-list {
        display: flex;
        flex-direction: column;
        gap: 10px;
    }

    .sota-kits-wrapper .feature-item, .sota-kits-wrapper .feature-item-spacer {
        display: flex;
        align-items: center;
        gap: 30px;
        min-height: 39px;
    }

    .sota-kits-wrapper .checkmark {
        width: 30px;
        height: 30px;
        flex-shrink: 0;
    }

    .sota-kits-wrapper .feature-text {
        font-size: 22px;
        font-weight: 700;
        color: #555;
/*        flex: 1;*/
    }

    .sota-kits-wrapper .feature-text .subscript {
        font-size: 14.19px;
        vertical-align: sub;
    }

    .sota-kits-wrapper .pricing-option {
        border: 1px solid #c6c6c6;
        border-radius: 20px;
        padding: 20px;
        display: flex;
        flex-direction: column;
        gap: 20px;
				
				width: 100%;
				align-items: flex-start;
    }

    .sota-kits-wrapper .pricing-header {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 10px;
        min-height: 32px;
				
				align-self: stretch;
    }

    .sota-kits-wrapper .pricing-label {
        font-size: 22px;
        font-weight: 700;
        color: #555;
        /*flex: 1;
        min-width: 250px;*/
				
				text-align: left;
    }

    .sota-kits-wrapper .pricing-amount {
        font-size: 25px;
        font-weight: 900;
        color: #555;
        text-align: right;
        white-space: nowrap;
    }

    .sota-kits-wrapper .add-to-cart-btn {
        background-color: #4792bc;
        color: white;
        font-size: 25px;
        font-weight: 900;
        text-transform: uppercase;
        letter-spacing: 2.5px;
        padding: 10px 20px;
        border: none;
        border-radius: 50px;
        cursor: pointer;
        transition: background-color 0.3s ease;
        white-space: nowrap;
    }

    .sota-kits-wrapper .add-to-cart-btn:hover {
        background-color: #3a7a9f;
    }

    .sota-kits-wrapper .add-to-cart-btn:active {
        transform: translateY(1px);
    }

    @media (max-width: 960px) {
        .sota-kits-wrapper .products-container {
            flex-direction: column;
            align-items: center;
        }

        .sota-kits-wrapper .product-card {
            max-width: 100%;
        }
    }

    @media (max-width: 480px) {
        .sota-kits-wrapper .container {
            padding: 40px 15px;
        }

        .sota-kits-wrapper .header h1 {
            font-size: 36px;
        }

        .sota-kits-wrapper .header p {
            font-size: 18px;
        }

        .sota-kits-wrapper .product-title {
            font-size: 24px;
        }

        .sota-kits-wrapper .feature-text {
            font-size: 18px;
        }

        .sota-kits-wrapper .feature-item-spacer {
            display:none;
        }

        .sota-kits-wrapper .pricing-label {
            font-size: 18px;
           /* min-width: 150px;*/

						text-align: left;
        }

        .sota-kits-wrapper .pricing-amount {
            font-size: 20px;
        }

        .sota-kits-wrapper .add-to-cart {
            font-size: 20px;
						margin-top: 10px;
        }
    }




/* LITE UNITS */
		.lite_add-to-cart:hover {
			background-color: #fff !important;
			color: #555 !important;
		}
		.lite_add-to-cart:hover div {
			background-color: #fff !important;
			color: #555 !important;
		}
		


/* UPGRADES & TESTIMONIALS & FAQs*/
		a:hover .blue_background_button {
			background-color: #555 !important;
		}




/* TESTIMONIAL SLIDERS */
    /* Reset parent Flexbox and float influence */
    .testimonials-wrapper {
      display: block !important;
      flex: none !important;
      align-items: initial !important;
      justify-content: initial !important;
      width: 100%;
      overflow: visible;
      box-sizing: border-box;
      clear: both !important; /* Prevent inherited floats */
    }

    /* General container styling */
    .testimonials-section {
      display: block !important;
      flex: none !important;
      align-items: initial !important;
      justify-content: initial !important;
      padding: 80px 20px;
			padding: clamp(1.82rem, 4.88vw, 3.64rem) clamp(0.45rem, 1.22vw, 0.91rem);
      background-color: #fff;
      color: #555;
      font-family: Roboto, sans-serif;
      overflow: visible;
      box-sizing: border-box;
      text-align: center;
    }

    .testimonials-content {
      display: block !important;
      flex: none !important;
      align-items: initial !important;
      justify-content: initial !important;
      max-width: 1200px;
      width: 100%;
      margin: 0 auto;
      overflow: visible;
      padding: 0 40px;
      box-sizing: border-box;
    }

    .testimonials-header {
      text-align: center;
    }

    .testimonials-title {
      font-size: 50px;
		font-size: clamp(1.64rem, 3.05vw, 2.27rem);
      line-height: 1.2;
      font-weight: 900;
      color: #4792bc;
    }

    .testimonials-subtitle {
      font-size: 22px;
      line-height: 1.4;
      color: #555;
      font-weight: bold;
      margin: 0;
    }

    /* Splide slider styling */
    .splide {
      max-width: 1080px;
      width: 100%;
      margin: 0 auto;
      padding-bottom: 30px;
		padding-bottom: clamp(0.68rem, 1.83vw, 1.36rem);
      overflow: visible;
      min-height: 300px;
    }

    .splide__track {
      overflow: hidden;
    }

    .splide__list {
      width: 100%;
		transition: transform 0.5s ease-in-out;
    }

    .splide__slide {
      background-color: #fff;
      border-radius: 24px;
		border-radius: clamp(0.57rem, 1.52vw, 1.14rem);
      padding: 20px;
		padding: clamp(0.45rem, 1.22vw, 0.91rem);
      box-sizing: border-box;
      min-height: 300px;
      width: 100%;
		transition: transform 0.5s ease-in-out;
    }

    .splide-content {
      overflow: hidden; /* Clearfix for floats */
    }

    .slide-image-container {
      float: left !important;
      width: 180px;
      padding: 10px;
      box-sizing: border-box;
      overflow: visible;
    }

    .slide-image {
      width: 150px !important;
      height: 150px !important;
      min-width: 150px !important;
      min-height: 150px !important;
      border-radius: 100px;
      object-fit: cover;
      display: block;
    }

    .slide-stars {
      width: 150px !important;
      height: 53px !important;
      min-width: 150px !important;
      min-height: 53px !important;
      object-fit: cover;
      display: block;
      margin-top: 10px;
    }

    .slide-text-container {
      margin-left: 20px !important;
      text-align: left;
      overflow: hidden; /* Clearfix for float */
    }

    .slide-text {
      font-size: 22px;
      line-height: 1.6;
      color: #555;
      font-weight: 500;
      margin: 0;
    }

    .slide-author {
      font-size: 25px;
			font-size: clamp(1.07rem, 1.52vw, 1.14rem);
      font-weight: bold;
      color: #555;
      margin: 10px 10px 0 0;
			text-align:right;
    }

    /* Navigation arrows */
    .splide__arrow {
      background: #555 !important;
      width: 40px !important;
      height: 40px !important;
      border-radius: 50%;
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      z-index: 10;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
      text-align: center;
      line-height: 40px !important;
      visibility: visible;
    }
/* Moves arrows outside of box */
    .splide__arrow--prev {
      left: -50px !important;
    }

    .splide__arrow--next {
      right: -50px !important;
    }

    .splide__arrow svg {
      fill: #fff !important;
      width: 20px;
      height: 20px;
      vertical-align: middle;
    }

    .splide__arrow:hover {
      background: #cae4e6 !important;
    }

    .splide__arrow:disabled {
      opacity: 0.5;
      pointer-events: none;
    }

    /* Pagination dots */
    .splide__pagination {
      bottom: -50px !important;
      z-index: 5;
      text-align: center;
    }

    .splide__pagination__page {
      width: 12px !important;
      height: 12px !important;
      background: #bbb;
      border-radius: 50%;
      display: inline-block;
      margin: 0 10px !important;
      transition: background 0.3s;
    }

    .splide__pagination__page.is-active {
      background: #007aff !important;
    }

    .splide__pagination__page:hover {
      background: #007aff !important;
    }






/* FAQ ACCORDION */               
    .accordion-container {
		flex: 1 1 60%;
      overflow: hidden;
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: flex-start;
      gap: 20px;
      font-size: 22px;
      color: #555;
    }

    .accordion-item {
      align-self: stretch;
      box-shadow: 0px 0px 5px -2px #191818;
      border-radius: 24px;
		border-radius:clamp(0.57rem, 1.52vw, 1.14rem);
      overflow: hidden;
      display: flex;
      flex-direction: column;
    }

    .accordion-header {
      display: flex;
      flex-direction: row;
      align-items: center;
      justify-content: space-between;
      padding: 10px 20px;
      cursor: pointer;
      transition: background-color 0.3s;
    }

    .accordion-header:hover {
      filter: brightness(95%);
    }

    .accordion-title {
      flex: 1;
      display: flex;
      flex-direction: row;
      align-items: flex-start;
      justify-content: center;
			font-size: 22px;
			transition: transform 0.3s ease;
			transform-origin: left center;
    }
    .accordion-title:hover {
			transform: scale(1.05);	
		}

    .accordion-title b {
      flex: 1;
      position: relative;
      line-height: 1.6;
    }

    .accordion-icon {
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 30px;
		font-size:clamp(1.18rem, 1.83vw, 1.36rem);
      font-weight: bold;
      flex-shrink: 0;
      transition: transform 0.3s;
    }

    .accordion-icon.minus {
      transform: rotate(180deg);
    }

    .accordion-content {
      max-height: 0;
      overflow: hidden;
      padding: 0 20px;
      transition: max-height 0.3s ease-out, padding 0.3s ease-out;
      font-size: 20px;
      line-height: 1.5;
      color: #333;
    }

    .accordion-content.open {
      padding: 0 20px 20px;
    }




/* ROTATE IMAGE */
	.image-animation-2 img {        
		 transition: transform 0.6s ease; /* Smooth rotation */
	}         
	.image-animation-2:hover img {
		 transform: rotate(360deg); /* Spin 360 degrees clockwise */
	}



/* STATS BAND */
	.center { text-align:center }


	@media (max-width: 960px) {
		.flex_sp-lite, .flex_bt-text, flex_mp-text, .flex_sp-text, .flex_woz-text {
			order:2 !important;
		}
		.flex_bt-lite, .flex_bt-unit, .flex_mp-unit, .flex_sp-unit, .flex_woz-unit {
			order:3 !important;
		}
		.flex_bt-number, .flex_mp-number, .flex_sp-number, .flex_woz-number {
			order:2 !important;
		}
		.flex_lite_text {
			order:1 !important;
			min-width:fit-content;
		}
	}
	@media (max-width: 750px) {
		.flex_lite_text {
			order:1 !important;
			min-width:fit-content;
		}
		.splide-content .slide-image-container {
		float: none !important;
		display: block !important;
		text-align: center;
		margin: 0 auto 20px auto;
		}
	}
	@media (max-width: 480px) {
		div {
			text-align: center;
		}	
		.add-to-cart {
			margin: 0 auto;
		}
		.flex_bt-text, .flex_mp-text, .flex_sp-text, .flex_woz-text {
			order:2 !important;
		}
		.flex_bt-unit, .flex_mp-unit, .flex_sp-unit, .flex_woz-unit {
			order:1 !important;
		}
		.flex_bt-number, .flex_mp-number, .flex_sp-number, .flex_woz-number {
			display:none !important;
		}
		.splide__pagination__page {
			margin: 7px !important;
		}
		#faq_read_more {
			align-self: center;
		}
	}