/*-------------------------------- RESET CSS ---------------------------------------*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{border:0;font-size:100%;font:inherit;vertical-align:baseline;margin:0;padding:0}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}table{border-collapse:collapse;border-spacing:0}
/*============================ END RESET CSS =======================================*/


/* Merriweather */
@font-face {
    font-family: "Merriweather";
	font-weight: 300;
	font-style: normal;
    src: url(../fonts/Merriweather-Light.ttf);
	font-display: swap;
}
@font-face {
    font-family: "Merriweather";
	font-weight: 400;
	font-style: normal;
    src: url(../fonts/Merriweather-Regular.ttf);
	font-display: swap;
}
@font-face {
    font-family: "Merriweather";
	font-weight: 700;
	font-style: normal;
    src: url(../fonts/Merriweather-Bold.ttf);
	font-display: swap;
}

/* Rubik */
@font-face {
    font-family: "Rubik";
	font-weight: 400;
	font-style: normal;
    src: url(../fonts/Rubik-Regular.ttf);
	font-display: swap;
}
@font-face {
    font-family: "Rubik";
	font-weight: 500;
	font-style: normal;
    src: url(../fonts/Rubik-Medium.ttf);
	font-display: swap;
}
@font-face {
    font-family: "Rubik";
	font-weight: 700;
	font-style: normal;
    src: url(../fonts/Rubik-Bold.ttf);
	font-display: swap;
}

html,
body{
	margin: 0;
	padding: 0;
	font-size: 15px;
	line-height: 21px;
	height: 100%;
	color: var(--darkgray);
	font-family: 'Helvetica', sans-serif;
	font-family: 'Rubik', sans-serif;
	font-weight: 400;	
	-webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
    -moz-osx-font-smoothing: grayscale;

	scroll-behavior: smooth;

	touch-action: manipulation;
}

:root {
	--indigo: #407BFF;
	--indigo_rgb: 64 123 255;
	
	--purple: #7788FF;
	--purple_rgb: 119 136 255;

	--cyan: #1EB7E4;
	--cyan_rgb: 30 183 228;

	--darkgray: #222E33;
	--darkgray_rgb: 34 46 51;

    --mediumgray: #aaaaaa;
	--mediumgray_rgb: 170 170 170;

	--gray: #E2E4E5;
	--gray_rgb: 226 228 229;

	--lightgray: #F0F0F0;
	--lightgray_rgb: 240 240 240;
	
	--yellow : #FFC300;
	--yellow_rgb: 255 195 0;


	--darkblue: #1F2630;
	--darkblue_rgb: 31 38 48;

	--blue: #1976D2;
	--blue_rgb: 25 118 210;

	--green: #4CAF50;
	--green_rgb: 76 175 80;

	--red: #ef4444;
	--red_rgb: 239 68 68;

	--orange: #fca423;
	--orange_rgb: 252 164 35;


    --gradient:       linear-gradient( 90deg , rgb(var(--cyan_rgb) / 15%) , rgb(var(--purple_rgb) / 20%) );
    --gradient_light: linear-gradient( 90deg , rgb(var(--cyan_rgb) / 8%) , rgb(var(--purple_rgb) / 13%) );
	--gradient_tmates: linear-gradient(90deg, rgb(var(--cyan_rgb) / 100%), rgb(var(--purple_rgb) / 100%));
}

.bkg_gradient {
	background-image: var(--gradient);
}
.bkg_gradient_light {
	background-image: var(--gradient_light);
}
.bkg_gradient_tmates {
	background-image: var(--gradient_tmates);
}
.bkg_indigo {
	background: var(--indigo);
}
.bkg_purple {
	background: var(--purple);
}

a {
    text-decoration: none;
}
a:not(.button),
a:not(.button):focus,
a:not(.button):active,
a:not(.button):visited {
    color: inherit;
}
a:not(.button):hover {
	color: var(--indigo);
}

.rubik {
	font-family: 'Rubik', sans-serif;
}
.merriweather {
	font-family: "Merriweather", serif;
}


.indigo {
	color: var(--indigo);
}
.blue {
	color: var(--indigo);
}
.green {
	color: var(--green);
}
.orange {
	color: var(--orange);
}
.lightgray {
	color: var(--lightgray);
}
.yellow {
	color: var(--yellow);
}
.white {
	color: #fff;
}

.bkg_lightgray {
    background: rgb(var(--lightgray_rgb) / 100%);
}
.bkg_indigo_8 {
	background: rgb(var(--indigo_rgb) / 8%);
}

.regular {
	font-weight: 400;
}
.medium {
	font-weight: 500;
}
.bold {
	font-weight: 700;
}
.underline {
	text-decoration: underline;
}
.italic {
	font-style: italic;
}
.left {
	text-align: left;
}
.center {
	text-align: center;
}
.right {
	text-align: right;
}
.justify {
	text-align: justify;
}
hr {
	border: 0;
	border-top: 1px solid rgb(var(--indigo_rgb) / 20%);
}

strong {
	font-weight: bold;
}
.spacer_10 {
	display: table;
	width: 100%;
	height: 10px;
}
.spacer_25 {
	display: table;
	width: 100%;
	height: 25px;
}
.spacer_50 {
	display: table;
	width: 100%;
	height: 50px;
}
.spacer_100 {
	display: table;
	width: 100%;
	height: 100px;
}
input,
select {
	display: table;
	width: 100%;
    width: calc(100% - 4px);
    border: 1px solid;
    border-color: rgb(var(--indigo_rgb) / 30%);
    background: #fff;
    font-size: 20px;
    font-weight: 400;
    padding: 10px 0;
    border-radius: 8px;
    margin: 5px 0;
    text-align: left;
    text-indent: 10px;
    transition: all .2s;
}
.input_big {
	font-size: 25px;
    font-weight: 700;
	padding: 10px 0;
	margin: 13px 0;
	text-indent: 20px;
}
textarea {
    font-family: 'Rubik', sans-serif;
    display: block;
    width: calc(100% - 2px);
    background: #fff;
    border: 1px solid;
    border-color: rgb(var(--indigo_rgb) / 30%);
    border-radius: 8px;
    margin: 13px 0;
    text-align: left;
    resize: vertical;
    overflow-y: auto;
    text-indent: 0px;
    padding: 10px;
	font-size: 15px;
    line-height: 21px;
    text-overflow: ellipsis;
    box-sizing: border-box;
}
select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    /* background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAh0lEQVQ4T93TMQrCUAzG8V9x8QziiYSuXdzFC7h4AcELOPQAdXYovZCHEATlgQV5GFTe1ozJlz/kS1IpjKqw3wQBVyy++JI0y1GTe7DCBbMAckeNIQKk/BanALBB+16LtnDELoMcsM/BESDlz2heDR3WePwKSLo5eoxz3z6NNcFD+vu3ij14Aqz/DxGbKB7CAAAAAElFTkSuQmCC); */
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='25' fill='none'%3E%3Cg clip-path='url(%23a)'%3E%3Cpath fill='%2300203E' d='M19.68 9.486 12 17.433 4.32 9.486a1.134 1.134 0 1 1 1.633-1.573L12 14.173l6.053-6.26a1.134 1.134 0 0 1 1.634 1.573z'/%3E%3C/g%3E%3Cdefs%3E%3CclipPath id='a'%3E%3Cpath fill='%23fff' d='M0 24.5h24V.5H0z'/%3E%3C/clipPath%3E%3C/defs%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center right 7px;
	text-align-last: left;
}
input:active,
input:focus,
select:active,
select:focus,
textarea:focus,
textarea:active {
	border-color: rgb(var(--indigo_rgb) / 50%);
    outline: 0;
    /* box-shadow: 0 0 0 0.2rem rgb(var(--indigo_rgb) / 25%); */
}
.field_valid {
	border-color: rgb(var(--indigo_rgb) / 100%) !important;
}
.field_error {
	border-color: rgb(var(--red_rgb) / 100%) !important;
}
input[type=radio]:active,
input[type=radio]:focus {
    box-shadow: none;
    border-color: initial;
}

input[type=checkbox],
input[type=radio] {
    width: auto;
    display: inline-block;
    vertical-align: middle;
    margin: 5px 5px;
    transform: scale(1.5);
	border-radius: initial;
}

input[type=checkbox]+label,
input[type=radio]+label {
    display: inline-block;
    vertical-align: middle;
    width: 100%;
    max-width: calc(100% - 50px);
}
.radio_checkbox_100 {
    display: inline-block;
    vertical-align: middle;
    width: 100px;
    margin-right: 10px;
}
.radio_checkbox_150 {
    display: inline-block;
    vertical-align: middle;
    width: 150px;
    margin-right: 10px;
}
.radio_checkbox_200 {
    display: inline-block;
    vertical-align: middle;
    width: 200px;
    margin-right: 10px;
}

input[type=checkbox]+label:hover,
input[type=radio]+label:hover {
    cursor: pointer;
}

input[type=checkbox]:hover,
input[type=radio]:hover {
    cursor: pointer !important;
}

.input_label {
	font-weight: 500;
}

.input_relative {
	display: table;
	width: 100%;
	position: relative;
}
.input_relative span {
	position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0%, -50%);
}

.input_line_big {
	display: table;
	width: 100%;
	position: relative;
	border-bottom: 3px solid;
	border-color: rgb(var(--indigo_rgb) / 30%);
	text-align: center;
}
.input_line_big_valid,
.input_line_big_valid:active,
.input_line_big_valid:focus {
	border-color: rgb(var(--indigo_rgb) / 100%);
}
.input_line_big input {
	display: table;
    width: 200px;
    font-size: 100px;
	padding: 0 10px;
    margin: auto;
    font-weight: 500;
	text-indent: 0;
	text-align: center;
    border: 0;
	background: transparent;
    box-shadow: none; 
}
.input_line_big span {
	position: absolute;
    bottom: 10px;
    right: 10px;
}

input[type=radio] {
	display: inline-block;
	vertical-align: middle;
	width: 19px;
	height: 19px;
	border-radius: 100%;
}
input[type=radio]:active,
input[type=radio]:focus {
	box-shadow: none;
	border-color: initial;
}
input[type=radio]:hover {
	cursor: pointer;
}
::placeholder {
	font-weight: 400;
	color: rgb(var(--darkblue_rgb) / 30%);
}
::-ms-input-placeholder {
	font-weight: 400;
	color: rgb(var(--darkblue_rgb) / 30%);
}
.section {
	display: table;
	width: 100%;
}
.section_inner {
	display: table;
	width: 95%;
	margin: auto;
}
.row {
    display: grid;
    /* padding: 10px; */
    /* column-gap: 10px; */
    /* row-gap: 10px; */
}
.row_top {
    align-items: top;
}
.row_center {
    align-items: center;
}
.row_bottom {
    align-items: bottom;
}
.row_1 {
    grid-template-columns: 1fr;
}
.row_2 {
    grid-template-columns: 1fr 1fr;
}
.row_3 {
    grid-template-columns: 1fr 1fr 1fr;
}
.row_4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
}
.row_5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}


.row_2 .row_item:nth-child(2n+1) {
    padding-right: 10px;
}
.row_2 .row_item:nth-child(2n+2) {
    padding-left: 10px;
}

.row_3 .row_item:nth-child(3n+1) {
    padding-right: 10px;
}
.row_3 .row_item:nth-child(3n+2) {
    padding: 0 10px;
}
.row_3 .row_item:nth-child(3n+3) {
    padding-left: 10px;
}

.row_4 .row_item:nth-child(4n+1) {
    padding-right: 10px;
}
.row_4 .row_item:nth-child(4n+2) {
    padding-left: 10px;
	padding-right: 10px;
}
.row_4 .row_item:nth-child(4n+3) {
    padding-left: 10px;
	padding-right: 10px;
}
.row_4 .row_item:nth-child(4n+4) {
    padding-left: 10px;
}

.row_1 .row_item {
	padding: 0 !important;
}

.inline_middle {
	display: inline-block;
	vertical-align: middle;
}
.inline_top {
	display: inline-block;
	vertical-align: top;
}
.inline_bottom {
	display: inline-block;
	vertical-align: bottom;
}
.alert {
	display: table;
    width: 100%;
	margin: 10px auto 10px auto;    
    padding: 13px 15px;    
    text-align: center;
    box-sizing: border-box;
    border-radius: 8px;
	font-size: 15px;
	line-height: 18px;
	color: rgb(var(--darkblue_rgb) / 80%);
}
.alert i {
    margin-right: 10px;
}
.alert_blue {
	font-size: 17px;
	line-height: 23px;
    background: rgb(var(--indigo_rgb) / 10%);
}
.alert_blue i {
	color: var(--indigo);
	margin-right: 10px;
}
.alert_indigo {
	font-size: 17px;
	line-height: 23px;
    /* background: rgb(var(--indigo_rgb) / 8%); */
    background-image: var(--gradient_light);
}
.alert_indigo i {
	color: var(--indigo);
	margin-right: 10px;
}
.alert_green {
    font-size: 17px;
    line-height: 23px;
    background: rgb(var(--green_rgb) / 15%);
    border: 1px solid rgb(var(--green_rgb) / 20%);
}
.alert_green i {
	color: var(--green);
	margin-right: 10px;
}
.alert_yellow {
	background: #fff0d4;
	border: 1px solid #ffdea8;
}
.alert_red {
	color: var(--red);
	background: #fef2f2;
	border: 1px solid #fee2e1;
}
.alert_yellow i {
	color: #f97316;
	margin-right: 10px;
}

.alert_rounded {
	display: table;
    margin: 0px auto;
    padding: 7px 12px;
    border-radius: 100px;
    font-size: 15px;
    line-height: 23px;    
    /* border: 1px solid rgb(var(--green_rgb) / 40%); */
	box-sizing: border-box;
    border: 0;
}
.alert_rounded i {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;	
	margin-right: 10px;
}
.alert_rounded span {
	display: inline-block;
	vertical-align: middle;
}
.alert_blue i {
	color: var(--indigo);
}
.alert_green i {
	color: var(--green);
}
.alert_orange i {
	color: var(--orange);
}
.alert_rounded_big,
.alert_rounded_big i {
    font-size: 25px;
    line-height: 30px;
}
.alert_rounded_big span {
    margin-right: 10px;
}

.alert_field {
	display: table;
    width: 100%;
	margin: 10px auto 10px auto;    
    padding: 0px 5px 0px 7px;    
    text-align: left;
    box-sizing: border-box;
	font-size: 15px;
	line-height: 18px;
	color: var(--red);
}
.alert_field i {
    margin-right: 5px;
}

.alert_white_border {
	border: 1px solid #fff;
    color: #fff;
    font-size: 20px;
    line-height: 25px;
    padding: 10px 30px;
}

.button {
    display: table;
    width: 100%;
    font-weight: 500;
    text-align: center;
    text-transform: none;
    padding: 25px 30px;
    margin: auto;
	letter-spacing: 2px;
	font-weight: 500;
    background: var(--indigo);
	background-image: linear-gradient( 90deg , rgb(var(--cyan_rgb) / 5%) 20% , rgb(var(--purple_rgb) / 5%) );
    color: #fff;
    border-radius: 8px;
    border: 0;
    position: relative;
    text-decoration: none;
    box-sizing: border-box;

	user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    text-decoration: none;

	transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s;
}
.button:hover {
	cursor: pointer;
	opacity: 0.9;	
	/* background-image: linear-gradient( 135deg , rgb(var(--purple_rgb) / 100%) 20% , rgb(var(--cyan_rgb) / 100%) ); */
}
.button i {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translate(0, -50%);
	margin: auto;
}
.button_next {
	max-width: 400px;
	margin-top: 33px;
}
.button_next_div_fixed .button_next {
	margin: auto;
}

.button_processing {
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}
.button_processing .button_spinner {
    display: block !important;    
}
.button_processing.pulse_button {
	animation: none;
}

.pulse_button {
	box-shadow: 0 0 0 0 rgb(var(--indigo_rgb) / 70%);
	transform: scale(1);
	animation: pulse 1.5s infinite;
}
.pulse_button:hover {
	animation: none;
}
@keyframes pulse {
	0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgb(var(--indigo_rgb) / 70%);
	}
	70% {
		transform: scale(1);
		box-shadow: 0 0 0 10px rgb(var(--indigo_rgb) / 0%);
	}
	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgb(var(--indigo_rgb) / 0%);
	}
}








/*------------ WEIGHTLOSS LANDING -----------------*/
/* .body_landing {
    background-image: linear-gradient(90deg, rgb(var(--cyan_rgb) / 10%), rgb(var(--purple_rgb) / 20%));
} */
.landing_hero {
	/* background-image: linear-gradient(90deg, rgb(var(--cyan_rgb) / 10%), rgb(var(--purple_rgb) / 25%)); */
}
.landing_page .section_inner{
	max-width: 1000px;	
}
.landing_hero .section_inner {
	max-width: 1200px;	
}

.landing_topnav {
	/* background: #dbeafb; */
	/* background-image: linear-gradient(90deg, rgb(var(--cyan_rgb) / 5%), rgb(var(--purple_rgb) / 5%)); */
	border-bottom: 1px solid rgb( var(--indigo_rgb) / 5% );
    position: relative;
    z-index: 100;
}
.landing_topnav .section_inner {
	max-width: 95% !important;
	padding: 13px 0;
}
.landing_topnav .logo {
	display: table;	
	margin: 0;
	float: left;
}
.landing_topnav .logo img {
	width: auto;
	height: 33px;
}
.landing_topnav .menu {
	display: table;
	float: right;
}
.landing_topnav .menu_item {
	display: inline-block;
	vertical-align: middle;
	margin: 0 10px;
	font-size: 15px;
}
.landing_topnav .menu_item:not(.button):hover {
	cursor: pointer;
	color: var(--indigo);
}
.menu .menu_item:last-child {
    margin-right: 0;
}
.landing_topnav .button {
	padding: 10px 15px;
    letter-spacing: 0;
}
.landing_topnav .button i {
	position: relative;
    top: initial;
    right: initial;
    transform: translate(0, 0);
    font-size: 13px;
	margin-left: 5px;
}
.landing_topnav .button_spinner {
    width: 15px;
    height: 15px;
    top: 11px;
    right: 11.5px;
    border-width: 2px;
}
.landing_topnav .menu_item.button_topnav_signin_desktop {
    display: inline-block;
}
.landing_topnav .menu_item.button_topnav_signin_mobile {
    display: none;
    width: auto;
    padding: 10px;
}
.landing_topnav .menu_item.button_topnav_signin_mobile i {
    margin: 0;
}
.landing_sticky {
    position: sticky;
    top: 33px;
    left: 0;
}

.landing_hero_row {
	grid-template-columns: 3fr 2fr;
}
.landing_hero_left {
    width: 90%;
    max-width: 500px;
	padding: 8vh 0;
}
.landing_hero h1 {    
	font-size: 40px;
	line-height: 55px;
}
.landing_hero h2 {
	font-size: 25px;
	line-height: 30px;
}
.landing_hero h3 {
	font-size: 18px;
	line-height: 25px;
	margin: 10px 0;
}
.hero_benefits {
    display: table;
    width: 100%;
    margin-top: 33px;
}
.benefit_icon {
	display: inline-block;
	vertical-align: middle;
	width: 40px;
	height: 40px;
	background: var(--gradient_light);
	margin-right: 5px;
	border-radius: 100%;
	position: relative;
}
.benefit_icon i {		
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 17px;
	color: var(--indigo);
}
.benefit_text {
    max-width: calc(100% - 50px);
	display: inline-block;
	vertical-align: middle;
}
.hero_animation_item {
    display: table;        
	aspect-ratio: 2 / 3;
    width: 100%;
    height: 100%;
    max-height: 100%;
	border-radius: 8px;
    padding: 10px 0;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;	
}
.hero_img {
    display: table;
    width: 100%;
    height: 100%;
    border-radius: 8px;
	/* background-image: url('/assets/img/weight-loss/landing_hero/hero_img_1.jpg'); */
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.landing_hero_right {
    position: relative;
    display: grid;
    overflow: hidden;
}
.landing_hero_right_row {
    position: absolute;
    top: -33px;
    right: 0;
    width: 100%;

}
/* .landing_hero_right_row .row_item:nth-child(1) {
    margin-top: -100px;
} */
.landing_hero_right_animation_1 {
    transform: translateY(0);
    animation: scroll_vertical 25s linear infinite;
    box-sizing: border-box;
}
.landing_hero_right_row .row_item:nth-child(2) {
    margin-top: -50px;
}
.landing_hero_right_animation_2 {
    transform: translateY(0);
    animation: scroll_vertical 30s linear infinite;
    box-sizing: border-box;
}

.landing_hero_right_row .row_item:nth-child(1) .hero_animation_item:nth-child(odd) .hero_img {
    background-color: rgb(var(--cyan_rgb) / 100%);
}
.landing_hero_right_row .row_item:nth-child(1) .hero_animation_item:nth-child(even) .hero_img {
    background-color: rgb(var(--purple_rgb) / 100%);
}
.landing_hero_right_row .row_item:nth-child(2) .hero_animation_item:nth-child(odd) .hero_img {
    background-color: rgb(var(--purple_rgb) / 100%);
}
.landing_hero_right_row .row_item:nth-child(2) .hero_animation_item:nth-child(even) .hero_img {
    background-color: rgb(var(--cyan_rgb) / 100%);
}
.button_hero {
    margin-top: 30px;
}
.button_gradient {    
    background-image: linear-gradient(90deg, rgb(var(--cyan_rgb) / 100%) 20%, rgb(var(--purple_rgb) / 100%));
    transition-duration: .33s;
}
.button_gradient:hover {
    background-image: linear-gradient(90deg, rgb(var(--purple_rgb) / 100%) 20%, rgb(var(--cyan_rgb) / 100%));
}
.hero_stock {
    margin-top: 20px;
    font-size: 15px;
    padding: 7px 20px;
}
.hero_stock i {    
    margin-right: 5px;
    border-radius: 100%;
    font-size: 11px;
    color: rgb(var(--green_rgb) / 100%);
    box-shadow: 0 0 0 0 rgb(var(--green_rgb) / 70%);
    transform: scale(1);
    animation: stock_pulse 1.5s infinite;
}
.landing_logos {
    display: flex;
    white-space: nowrap;
    width: 100%;
    overflow: hidden;
    transform: translateX(0);
    padding: 20px 0;
	/* background: #cadffb; */
    background-image: linear-gradient(90deg, rgb(var(--cyan_rgb) / 20%), rgb(var(--purple_rgb) / 25%));	
    box-sizing: border-box;
    position: relative;
	border-bottom: 1px solid rgb(var(--indigo_rgb) / 5%);
}
.landing_logos_images {
    height: 25px;
    animation: scroll_horizontal 40s linear infinite;
}
.landing_logos img {
    display: inline-block;
    vertical-align: middle;
    margin: 0 10px;
    width: auto;
    max-height: 100%;
    color:rgb( var(--indigo_rgb) / 50% );
}
.landing_logos_text {
    display: table;
    width: 130px;
    height: 100%;
    min-height: 55px;
    position: absolute;
    top: 0;
    left: 50%;    
    transform: translate(-50%, 0);
    z-index: 10;
    background: var(--indigo);
    padding: 0;
    text-align: center;
    font-size: 11px;
    line-height: 17px;
    font-weight: 500;
    color: #fff;
    border-top-left-radius: 8px;
    border-top-right-radius: 8px;
}
.landing_logos_text span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 1;
}


.section_pad100 {
    padding: 100px 0;    
}
.section_pad300 {
    padding: 300px 0;    
}
.section_pad50 {
    padding: 50px 0;    
}
.section_pad100_50 {
    padding: 100px 0 50px 0;    
}
.section_landing_light {
	background: rgb(255 255 255 / 50%);
}
.section_landing h1 {
	font-size: 33px;
    line-height: 45px;
    max-width: 670px;
    margin-left: auto;
    margin-right: auto;
}
.landing_percentage_row {
    align-items:center
}
.landing_percentage_row_item_left {
    max-width: 80%;
}
.landing_percentage_left {
    display: table;
    float: left;
    font-size: 200px;
    line-height: 200px;   
    background-image: var(--gradient_tmates);;
    color: transparent;
    background-clip: text;
}
.landing_percentage_right {
    display: table;
    float: left;    
	margin-top: 25px;
}
.landing_percentage_symbol {   
    font-size: 120px;
    line-height: 110px;
    background-image: var(--gradient_tmates);;
    color: transparent;
    background-clip: text;
}
.landing_percentage_text {
    font-size: 15px;
    line-height: 18px;
    text-align: center;
}
.landing_percentage_row h2 {
    margin: 0;
}


.square {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: 100%;
    max-height: 100%;
    background: rgb(var(--indigo_rgb) / 8%);
    /* background-image: var(--gradient); */
    border-radius: 33px;
	overflow: hidden;
	position: relative;
    box-sizing: border-box;
}
.square_bkg_img {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.square_bkg_img_animated_container {
	background:var(--gradient);
	border-radius: 33px;
}
.square_bkg_img_animated {
	animation: squareBkgFloat 3s ease-in-out infinite alternate;
	background-color: transparent;
}
@keyframes squareBkgFloat {
	from { 
		transform: translateY(-30x) rotate(0deg);
	}
	to {
		transform: translateY(20px) rotate(5deg);
	}
}
.square5_img {
	display: table;
	width: auto;
	height: 100%;
	position: absolute;
	top: 50%;
	right: -10px;
	transform: translate(0%, -50%);
}
.square5_icon {
	display: table;
	width: 40px;
	height: 40px;
	position: absolute;
	top: 15px;
	left: 15px;
	border-radius: 100%;
	/* background-color: rgb( var(--lightgray_rgb) / 90% ); */
	background: #fff;
	color: var(--indigo);
}
.square5_icon i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.square5_text {
	display: table;
	width: 60%;
	height: auto;
	position: absolute;
	bottom: 15px;
	left: 15px;
}
.square5_text_1 {
	font-size: 20px;
	line-height: 25px;
	margin-bottom: 5px;
}
.square5_text_2 {
	font-size: 14px;
    line-height: 17px;
}


.faq_contact {
    display: table;
    width: 100%;
    text-decoration: none;
}
.faq_contact_icon {
    display: inline-block;
    vertical-align: middle;
    width: 35px;
    height: 35px;
    background: rgb(var(--indigo_rgb) / 10%);
    margin-right: 5px;
    border-radius: 100%;
    position: relative;
}
.faq_contact_icon i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 15px;
    color: var(--indigo);
}
.faq_contact_text {
    display: inline-block;
    vertical-align: middle;
}
.faq_item {
    display: table;
    width: 100%;
    margin-bottom: 10px;
    padding: 20px;
    background: rgb(var(--indigo_rgb) / 8%);
    border-radius: 8px;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
}
.faq_item_open,
.faq_item:hover {
    background: rgb(var(--indigo_rgb) / 13%);
    cursor: pointer
}
.faq_title {
    font-size: 17px;
    line-height: 25px;
    max-width: calc(100% - 20px);

    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    text-decoration: none;
}
.faq_chevron {
    position: absolute;
    top: 23px;
    right: 20px;
    font-size: 15px;

    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    text-decoration: none;
}
.faq_chevron i {
	transition-duration: 0.15s;
}
.faq_item_open i {
	-webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg);	
}
.faq_answer {
    display: none;
    margin-top: 20px;
}
.faq_item_open .faq_answer {
    display: block;
}

.item_better {
	position: relative;
}
.item_better_icon {
	display: table;
	width: 100px;
	height: 100px;
	background: var(--gradient_light);
	margin: 20px auto;
	border-radius: 100%;
	position: relative;	
}
.item_better_icon i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	font-size: 33px;
	color: var(--indigo);
}
.item_better_title { 
	display: table;
    width: 90%;
	margin: 20px auto 10px auto;
	font-size: 20px;
    line-height: 25px;
}
.item_better_text { 
	display: table;
    width: 90%;
	margin: auto;
}

.button_landing_testimonials {
    max-width: 90%;
    margin-left: 0;
}
.landing_page .row_landing_faq {
    /* border: 5px solid rgb(var(--indigo_rgb) / 8%); */
    /* box-sizing: border-box; */
}
.landing_page .weightloss_review_gradient_bottom {
    background: linear-gradient(to top, rgb(235 242 254) 5%, rgba(0 0 0 / 0%) 30%);
}
.row_landing_faq .row_item:nth-child(2n+1) {
	padding-bottom: 150px;
}
.row_landing_faq .row_item {
	position: relative;
}
.landing_faq_contact_desktop {
    display: block;   
	position: absolute;
	left: 0;	
	bottom: 0;
}
.landing_faq_contact_mobile {
    display: none;
}




.landing_box_footer {
	display: table;
	width: 90%;
	max-width: 500px;
	margin: 30px auto 0 auto;
}
.section_prefooter {	
	display: flex;
	white-space: nowrap;
	width: 100%;
	overflow: hidden;
	transform: translateX(0);
	padding: 50px 0;
	/* background: rgb( var(--indigo_rgb) / 70% );	 */
	box-sizing: border-box;
	position: relative;
}
.section_prefooter_animation {
	animation: scroll_horizontal 70s linear infinite;
}
.section_prefooter_text {
	display: inline-block;
	vertical-align: middle;
	margin: 0 5px;
	font-size: 50px;
	line-height: 60px;
}

.section_footer {
	/* background-image: linear-gradient(90deg, rgb(var(--cyan_rgb) / 100%) 20%, rgb(var(--purple_rgb) / 100%)); */
	background: var(--indigo);
	padding: 50px 0;
}
.section_footer .row_item {
	display: table;
	margin: 0 auto;
}
.logo_footer {
	display: table;
	margin: 0 0 20px 0;
	width: auto;
	height: 50px;
}
a.footer_link {
	display: table;
	margin: 0 0 10px 0;
	color: #fff !important;
}
a.footer_link:hover,
a.footer_link:active,
a.footer_link:focus {
	color: #fff;
	text-decoration: underline;
	transition-duration: 0.15s;
}
.footer_contact {
    display: table;
    width: 100%;
	margin: 10px 0;
    text-decoration: none;
}
.footer_title {
	display: none;
	margin-bottom: 30px;
}
.footer_contact_icon {
    display: inline-block;
    vertical-align: middle;
    width: 35px;
    height: 35px;
    background: #fff;
    margin-right: 8px;
    border-radius: 100%;
    position: relative;
}
.footer_contact_icon i {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 15px;
    color: var(--indigo);
}
.footer_contact_text {
    display: inline-block;
    vertical-align: middle;
	max-width: calc(100% - 50px);
}
.legiscript_logo {
	display: table;
	margin: 0;
}
.legiscript_logo img {
	display: table;
	width: 120px;
	height: auto;
}
.footer_logo {
	display: table;
	width: 80vw;
	max-width: 500px;
	height: auto;
	margin: 50px auto 0 auto;
	opacity: 0.1;
}
/*=========== END WEIGHTLOSS LANDING ===============*/








/*---------------- INTAKE 1 -------------------*/
.intake_topnav {
	background: transparent;
	border-bottom: 1px solid rgb( var(--indigo_rgb) / 5% );
}
.intake_topnav .section_inner {
	max-width: 1000px;
	padding: 13px 0;
}
.intake_topnav .logo {
	display: table;	
	margin: auto;
}
.intake_topnav .logo img {
	width: auto;
	height: 33px;
}
/* .intake_topnav .logo_icon {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: 40px;
	margin-right: 8px;
}
.intake_topnav .logo_icon_loading {
	animation: dual-ring-spinner 1.5s linear infinite;
}
.intake_topnav .logo_text {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: 9px;
} */


.section_intake .section_inner {
	max-width: 600px;
}




.intake_progress {
	display: table;
	width: 100%;
	margin: 10px auto 30px auto;
	text-align: center;
}
.intake_progress_hidden {
	display: none;
}
.progress_back_div {
	display: inline-block;
	vertical-align: middle;
	width: 40px;
	font-size: 20px;
    line-height: 0px;
	color: var(--indigo);
	text-align: left;
}
.back_button {
	padding: 7px 10px;
	border-radius: 8px;
}
.back_button:hover {
	cursor: pointer;
	background: var(--indigo);
	color: #fff;
}
.progress_bar {
	display: inline-block;
	vertical-align: middle;
	width: calc(100% - 120px);
	margin: 0 10px;
	background: rgb(var(--indigo_rgb) / 20%);
	border-radius: 8px;
}
.progress_bar_inner {
	display: table;
	width: 100%;
	background: var(--indigo);
	background-image: linear-gradient( 135deg , rgb(var(--cyan_rgb) / 100%) , rgb(var(--purple_rgb) / 100%) );
	width: 7%;
	height: 13px;
	border-radius: 8px;

	transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s;
}
.progress_step_container {
	display: inline-block;
	vertical-align: middle;
	width: 60px;	
	text-align: right;
}
.progress_step {
	color: var(--indigo);
	font-weight: 500;
}



.intake_q {
	display: table;
	width: 100%;	
	max-width: 600px;
	margin: 0 auto 70px auto;	
}
.intake_q_mtop {
	margin-top: 40px;
}
.intake_q_hide {
	display: none;
}
h1 {
	font-family: "Merriweather", serif;
	font-size: 27px;
	line-height: 33px;
	margin-bottom: 20px;
	font-weight: 700;
}
h2 { 
	font-family: "Merriweather", serif;
	font-size: 23px;
	line-height: 29px;
	margin-bottom: 15px;
	font-weight: 700;
}
h3 { 
	font-family: "Merriweather", serif;
	font-size: 20px;
	line-height: 25px;
	margin-bottom: 15px;
	font-weight: 700;
}
.intake_q h3 {
	margin-bottom: 5px;
}
p { 
	font-size: 15px;
	line-height: 20px;
	margin-bottom: 10px;
	font-weight: 500;
}
.p_small {
	font-size: 13px;
	line-height: 15px;
	font-weight: 400;
}


.underline_wavy {
	text-decoration: underline;
    text-decoration-color: rgb(var(--indigo_rgb) / 70%);
    text-decoration-style: wavy;
}
.underline_double {
	text-decoration: underline;
    text-decoration-color: rgb(var(--indigo_rgb) / 70%);
    text-decoration-style: double;
}
.text_bgk_green {
	background: rgb(var(--green_rgb) / 50%);
    padding: 0 5px;
    border-radius: 5px;
}
.text_bgk_indigo {
	background: rgb(var(--indigo_rgb) / 15%);
    padding: 0 5px;
    border-radius: 5px;
}
.weightloss_stories {
	display: table;
	width: 100%;
	margin: 20px auto 0 auto;
	padding: 30px 0 10px 0;
	border-radius: 33px;
	background: linear-gradient(rgb(var(--purple_rgb) / 10%), transparent);
}
.weightloss_stories_title {
	/* color: var(--indigo); */
}
.weightloss_stories_img_div {	
    display: flex;
	white-space: nowrap;
	width: 95vw;
    max-width: 600px;
	overflow: hidden;
    transform: translateX(0);
	margin: 30px auto 20px auto;
}
.weightloss_stories_img {	
	display: inline-block;
	width: auto;
	height: 170px;
	margin: 0 5px;	
}
.weightloss_stories_animate {
	animation: scroll_horizontal 40s linear infinite;
}
.weightloss_stories_rating {
	display: table;
	margin: auto;
	width: 150px;
	height: auto;
}

.weightloss_review {
	display: table;
	width: 100%;
	max-width: 500px;
	margin: 30px auto;
	position: relative;
	/* padding-top: 30px; */
	/* border-top: 1px solid rgb(var(--indigo_rgb) / 10%); */
}
.weightloss_review:not(#weightloss_review_1) {
	display: none;
}
.weightloss_review_img_container {
	display: table;
    width: 95%;
    position: relative;
    margin: auto;
}
.weightloss_review_img {
	display: table;
	width: 100%;
	border-radius: 30px;
}
.weightloss_review_gradient_top {
	position: absolute; 
	top:0px; 
	left:0px; 
	width:100%; 
	height:100%;
	background:transparent;
	background: linear-gradient(to bottom, rgba(228 238 252) 5%, rgba(0 0 0 / 0%) 30%);
}
.weightloss_review_gradient_bottom {
	position: absolute; 
	bottom:0px; 
	left:0px; 
	width:100%; 
	height:100%;
	background:transparent;
	background: linear-gradient(to top, rgb(228 238 252) 5%, rgba(0 0 0 / 0%) 30%);
}
.weightloss_review_text {
	position: absolute;
	left: 5%;
	right: 5%;
	bottom: -70px;

	display: table;
	width: 90%;
	margin: auto;
	padding: 20px;
	border-radius: 20px;
	background: #fff;
	box-shadow: 0px 0px 10px rgb(var(--indigo_rgb) / 20%);
	box-sizing: border-box;
}
.weightloss_review_text p {
	font-size: 15px;
    line-height: 19px;
    margin-bottom: 10px;
}
.weightloss_review_text i {
	color: var(--yellow);
	margin-right: 3px;
}

.weightloss_research_bullet {
	max-width: calc(100% - 50px);
}


.button_q {
	display: table;
	margin: 10px auto;
	width: 95%;
	color: var(--indigo);
	background: rgb(255 255 255 / 70%);
    border: 2px solid;
	border-color: rgb(var(--indigo_rgb) / 30%);
	padding: 10px;
	border-radius: 8px; 
	box-sizing: border-box;
	font-size: 20px;

	user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    text-decoration: none;

	transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s;
}
.button_q_active,
.button_q:hover {
	color: #fff;
	background: var(--indigo);
	border-color: rgb(var(--indigo_rgb) / 100%);
	cursor: pointer;
}
.button_gender {
	padding: 30px 10px;
	font-weight: 500;
}
.button_gender i {
	font-size: 40px;
}
.button_gender div {
	margin: 10px auto auto auto;
}

.bmi_calc {
	display: table;
	width: 100%;
}
#bmi_value {
	font-size: 35px;
}
.bmi_graph {
	display: table;
	width: 100%;
	height: 17px;
	border-radius: 8px;
	margin: 10px auto 20px auto;
	position: relative;

	--tw-gradient-to-position: 80%;
	--tw-gradient-to: #ef4444 var(--tw-gradient-to-position);
	--tw-gradient-via-position: 40%;
	--tw-gradient-stops: var(--tw-gradient-from), #00b67a var(--tw-gradient-via-position), var(--tw-gradient-to);
	--tw-gradient-from-position: 10%;
	--tw-gradient-from: #fc8513 var(--tw-gradient-from-position);
	background-image: linear-gradient(90deg, var(--tw-gradient-stops));
}
.bmi_graph_dot {
    display: table;
    width: 20px;
    height: 20px;
	position: absolute;
    top: -3px;
	left: 0%;
    background: #fff;
	border: 2px solid rgb(var(--indigo_rgb) / 70%);
	border-radius: 100%;

	transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s;
}

.weight_graph {
	display: table;
    width: 100%;
    margin: 30px auto 50px auto;
    padding: 40px 0 0 0;
    border-radius: 33px;
    background: linear-gradient(rgb(var(--indigo_rgb) / 10%), transparent);
	position: relative;
}
.weight_graph_img {
	display: table;
	width: 100%;
}
.weight_graph_w {
	position: absolute;    
    font-size: 15px;
    background: #fff;
	border: 1px solid rgb(var(--indigo_rgb) / 20%);
    border-radius: 8px;
    padding: 3px 5px;
}
.weight_graph_w1 {
	top: 12%;
    left: 10%;
}
.weight_graph_w2 {
	top: 25%;
    left: 33.5%;
}
.weight_graph_w3 {
	top: 50%;
    left: 56%;
}
.weight_graph_w4 {
	top: 67%;
    left: 77.5%;
	min-width: 70px;
}

.backed_by_science_logos {
	display: table;
    width: 100%;
    /* max-width: 350px; */
    margin: 30px auto;
    filter: grayscale(1);
    opacity: 0.5;

	/* border-top: 1px solid rgb(var(--indigo_rgb) / 10%);
    border-bottom: 1px solid rgb(var(--indigo_rgb) / 10%); */
    padding: 10px 0;
}
.backed_by_science_logos_mobile {
	display: none;
	width: 90%;
	max-width: 450px;
	margin: 30px auto;
    filter: grayscale(1);
    opacity: 0.5;

	/* border-top: 1px solid rgb(var(--indigo_rgb) / 10%);
    border-bottom: 1px solid rgb(var(--indigo_rgb) / 10%); */
    padding: 10px 0;
}
.intake_medical_logos {
	display: block;
    width: 100%;
    margin: 30px auto;
	text-align: center;    
}
.intake_medical_logos img {
	display: inline-block;
	vertical-align: middle;
	margin: 5px;	
	opacity: 0.7;
}
.intake_medical_logos_grayscale img {
	filter: grayscale(1);
    opacity: 0.5;
}

.button_checkbox {
	display: table;
	width: 100%;
	padding: 15px;
	margin: 10px auto;
	text-align: left;
	background: #fff;
	border: 1px solid rgb(var(--indigo_rgb) / 30%);
	border-radius: 8px;
	position: relative;
	box-sizing: border-box;

	user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    text-decoration: none;

	transition-property: all;
    transition-timing-function: cubic-bezier(.4,0,.2,1);
    transition-duration: .15s;
}
.button_checkbox_q {
	display: table;
	max-width: calc(100% - 30px);
}
.button_checkbox i {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translate(0%,-50%);
	font-size: 20px;
	color: rgb(var(--indigo_rgb) / 30%);
}
.button_checkbox:not(.button_checkbox_selected) .icon_checked {
	display: none;
}
.button_checkbox_selected .icon_checked {
	display: block;
}
.button_checkbox_selected .icon_notchecked {
	display: none;
}
.button_checkbox:hover,
.button_checkbox_selected {
	cursor: pointer;
	background-color: var(--indigo);
	border-color: var(--indigo);
	color: #fff;
}
.button_checkbox_selected i,
.button_checkbox:hover i {
	color: #fff;
}

.eligibility_progress {
	display: table;
	width: 100%;
	margin: 20px auto;
	background: rgb(var(--indigo_rgb) / 10%);
	border-radius: 8px;
}
.eligibility_progress_inner {
	display: table;
	width: 100%;
	background-image: linear-gradient( 135deg , rgb(var(--cyan_rgb) / 100%) , rgb(var(--purple_rgb) / 100%) );
	width: 0%;
	height: 13px;
	border-radius: 8px;
}
.eligibility_progress_inner_load {
	-webkit-transition: width 18s ease-in-out;
    -moz-transition: width 18s ease-in-out;
    -o-transition: width 18s ease-in-out;
    transition: width 18s ease-in-out;

    width:100%;
}
/*============== END INTAKE 1 =================*/





/*--------------- PRODUCT SELECT -----------*/
.section_product .section_inner {
	max-width: 600px;
	padding: 25px 0 100px 0;
}
.benefits_tab {
	display: table;
    width: 100%;
    margin: 8px auto;
    padding: 20px 20px;
    background: rgb(var(--indigo_rgb) / 5%);
    border: 1px solid rgb(var(--indigo_rgb) / 10%);
    border-radius: 8px;
    box-sizing: border-box;
}
.benefits_tab i {
	display: inline-block;
    vertical-align: middle;
    font-size: 30px;
    color: rgb(var(--indigo_rgb) / 100%);
    margin-right: 20px;
    width: 30px;
    text-align: center;
}
.benefits_tab div {
	display: inline-block;
	vertical-align: middle;
	max-width: calc(100% - 60px);
}
.benefits_tab svg {
	display: inline;
    height: 15px;
    width: 70px;
    margin-bottom: -2px;
    margin-left: -7px;
}

.data_stats_img {
	display: table;
	width: 100%;
	margin: 10px auto 50px auto;
}
.data_stats_img_mobile {
	display: none;
	width: 100%;
	margin: 10px auto 50px auto;
}
.secure_badge {
	display: table;
	width: 100%;
	margin: 33px auto 0 auto;
	max-width: 300px;
}

.product_select {
	display: table;
    width: 100%;
    margin: 0px auto 30px auto;
    /* padding: 20px 20px 120px 20px; */
	padding: 20px 20px 50px 20px;
    /* background: rgb(var(--indigo_rgb) / 10%); */
	background: linear-gradient(transparent ,rgb(var(--indigo_rgb) / 10%));
    border-radius: 8px;
    box-sizing: border-box;
	position: relative;

    user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;   
}
.product_option {
	display: table;
    margin: 30px auto 30px auto;
    max-width: 300px;
    background: #fff;    
    border-radius: 50px;
}
.product_option .row_item {
	min-width: 150px;
	padding: 15px 20px;
	border-radius: 50px;
	box-sizing: border-box;
	position: relative;
}
.product_glp1_before {
    min-height: 520px;
}
.product_option_glp1_before .row_item {
	min-width: 230px;
}
.glp1_q_button {
    margin: 25px 0 0 0;
    padding: 15px 0;
    width: 200px;
    background: var(--mediumgray);
}
.glp1_q_button i {
    right: initial;
    left: 15px;
}
.product_option .row_item:hover {
	cursor: pointer;	
}
.product_option_selected {	
	background: rgb(var(--indigo_rgb) / 100%);
	color: #fff;
	font-weight: bold;
}
.product_option_period_discount {
	display: table;
    position: absolute;
    z-index: 10;
    top: -12px;
    right: -27px;
    padding: 3px 7px;
    font-size: 13px;
    font-weight: bold;
    background: var(--red);
    color: #fff;
    border-radius: 8px;
}

.product_option_glp1_before_choose_emoji {
	display: table;
    position: absolute;
    z-index: 10;
    top: 15px;
    padding: 10px 5px;
    font-size: 30px;
    font-weight: bold;
    background: rgb(255 255 255 / 100%);
    color: #fff;
    border-radius: 100%;
}
.product_option_glp1_before_choose_emoji_left {
	left: -10px;
}
.product_option_glp1_before_choose_emoji_right {
	right: -10px;
}
.product_option_selected .product_option_glp1_before_choose_emoji {
	background: rgb(var(--indigo_rgb) / 100%);
}
#glp1_q_drug_suggestion_alert_if_more_3_months {
	display: none;
	margin-top: -15px;
	text-align: left;
}
#glp1_q_drug_suggestion_alert_if_more_3_months i {
	margin-right: 5px;
}

.product_item {
	display: flex; 
    justify-content: space-between; 
    /* gap: 10px;	 */
    align-items: center;

	width: 100%;
	background: #fff;
	margin: 10px auto;
	padding: 10px;
	border: 2px solid rgb(var(--indigo_rgb) / 20%);
	border-radius: 8px;
	box-sizing: border-box;
	position: relative;
}
.product_item:hover {
	cursor: pointer;
	border: 2px solid rgb(var(--indigo_rgb) / 100%);
}
.product_item_selected {
	cursor: pointer;
	border: 2px solid rgb(var(--indigo_rgb) / 100%);
}
.product_item_selected .product_item_icon i {
	color: rgb(var(--indigo_rgb) / 100%);
}
.product_item_icon_selected {
	display: none;
}
.product_item_selected .product_item_icon_selected {
	display: block;
}
.product_item_selected .product_item_icon_not_selected {
	display: none;
}
.product_item_icon {
	flex: 0 0 5%;
	text-align: left;	
}
.product_item_icon i {
	font-size: 25px;
	color: rgb(var(--indigo_rgb) / 30%);
}
.product_item_img {
	flex: 0 0 25%;	
	text-align: center;
}
.product_item_img img {
	display: table;
    width: 100%;
    max-width: 100px;
    margin: 10px auto;
    height: auto;
}
.product_item_info {
	flex: 0 0 70%;
	text-align: left;
}
.product_item_info_title {
	font-size: 20px;
    text-transform: capitalize;
	margin-bottom: 0px;
}
.product_item_info_dosage_text {
    max-width: 280px;
	margin-top: 5px;
	margin-bottom: 10px;
	font-size: 13px;
	line-height: 15px;
	font-style: italic;
	opacity: 0.5;	
}
.product_item_info_dosage {
	font-weight: 500;
	font-style: normal;
}
.product_item_info_text {
	max-width: 280px;
}
.product_item_info_price {
	font-size: 20px;
	margin-top: 10px
}
.product_item_info_price_value {
	display: inline-block;
	vertical-align: middle;
}
.product_item_info_price_month {
	display: inline-block;
	vertical-align: middle;
	font-size: 13px;
	opacity: 0.8;
}
.product_item_tag {
	display: table;
    position: absolute;
	z-index: 10;
    top: 10px;
    right: 10px;
    padding: 5px 10px;
    font-size: 13px;    
    color: #fff;
    border-radius: 8px;
}
.product_item_tag_popular {
	background: rgb(var(--indigo_rgb) / 100%);
}
.product_item_tag_effective {
	background: rgb(var(--green_rgb) / 100%);
}

.product_item_tag_blue {
	background: rgb(var(--indigo_rgb) / 100%);
}
.product_item_tag_green {
	background: rgb(var(--green_rgb) / 100%);
}
.product_item_tag_orange {
	background: rgb(var(--orange_rgb) / 100%);
}
.product_item_stock {
	display: table;
    position: absolute;
	z-index: 10;
    top: 70px;
    right: 10px;
    padding: 5px 10px;
    font-size: 13px;	
}
.product_item_stock i {
	margin-right: 5px;
	border-radius: 100%;
	box-shadow: 0 0 0 0 rgb(var(--green_rgb) / 70%);
	transform: scale(1);
	animation: stock_pulse 1.5s infinite;
}
@keyframes stock_pulse {
    0% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(92, 184, 92, 0.77);
	}
	70% {
		transform: scale(1);
		box-shadow: 0 0 0 8px rgba(226, 39, 38, 0);
	}
	100% {
		transform: scale(0.95);
		box-shadow: 0 0 0 0 rgba(226, 39, 38, 0);
	}
}

.button_add_to_cart .button_spinner {
    top: 18px;
    right: 8px;
}
.button_proceed_checkout {
	max-width: 100%;
    margin-top: 33px;
}
.button_proceed_checkout .button_spinner {
    top: 20px;
}


.product_money_back_guarantee {
	position: absolute;
    right: 0;
    bottom: 0;
    display: table;
    width: 100%;
    margin: auto;
    padding: 15px 10px;
	text-align: center;
    box-sizing: border-box;
    /* background: rgb(var(--indigo_rgb) / 10%);	 */
    background-image: var(--gradient_light);
	border-radius: 0 0 8px 8px;
}
.product_money_back_guarantee_inner {
	display: table;
	width: 100%;
	max-width: 500px;
	margin: auto;
}
.product_money_back_guarantee img {
	display: inline-block;
	vertical-align: middle;
	width: 60px;
	height: auto;
	margin-right: 13px;
}
.product_money_back_guarantee span {
	display: inline-block;
	vertical-align: middle;
	max-width: calc(100% - 85px);
	text-align: left;
}

/*============== END PRODUCT SELECT =================*/





/*--------------- CHECKOUT -----------*/
.section_checkout {
	min-height: 100vh;
}
.section_checkout {
	grid-template-columns: 4fr 3fr;
}
.checkout_left {
	background: #fff;
	border-right: 1px solid rgb(var(--indigo_rgb) / 20%);
}
.checkout_left_inner {
	display: table;
	float: right;
	width: 95%;
	max-width: 600px;
	padding: 50px 20px 100px 0;
    box-sizing: border-box;
}
.checkout_logo {
	display: table;
	width: auto;
	height: 40px;
}
.checkout_secure_top {

}
.checkout_secure_top_icon {
	display: inline-block;
	vertical-align: middle;
	margin-right: 5px;
	width: 40px;
	height: 40px;
	background: rgb(var(--green_rgb) / 100%);
	border-radius: 100%;
	position: relative;	
}
.checkout_secure_top_icon i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
}
.checkout_secure_top_text {	
	display: inline-block;
	vertical-align: middle;	
	font-size: 13px;
	line-height: 15px;
	text-align: left;	
}
.checkout_alert {
	display: table;
    width: 100%;
    margin: 10px auto 10px auto;
    padding: 10px 15px;    

	background: rgb(var(--yellow_rgb) / 15% ) ;
    border: 1px solid var(--yellow);    
    border-radius: 8px;
    color: rgb(var(--darkblue_rgb) / 80%);
	box-sizing: border-box;
}
.checkout_alert i {
	display: inline-block;
	vertical-align: middle;
	font-size: 20px;
	color: var(--orange);
    margin-right: 10px;
}
.checkout_alert div {
	display: inline-block;
	vertical-align: middle;
	max-width: calc(100% - 50px);
}
.section_checkout input,
.section_checkout select {
	font-size: 18px;
	background-color: rgb(var(--indigo_rgb) / 3%);
	border: 1px solid;
    border-color: rgb(var(--indigo_rgb) / 30%);
}
.section_checkout input:active,
.section_checkout select:active,
.section_checkout input:focus,
.section_checkout select:focus {
	border-color: rgb(var(--indigo_rgb) / 70%);
}
.section_checkout .field_error {
    background-color: rgb(var(--red_rgb) / 3%);
}
.section_checkout ::placeholder {
	font-size: 17px;
}
.section_checkout ::-ms-input-placeholder {
	font-size: 17px;
}
.section_checkout .alert_rounded {
	width: 100%;
	text-align: center;
	border: 0;
}
.section_checkout .alert_rounded i {
	font-size: 15px;
}
.tcpa {
	margin: 20px 0;
	text-align: justify;
	font-size: 15px;
	line-height: 17px;
	color: rgb(var(--darkblue_rgb) / 50%);
}
.button_complete_purchase {
	max-width: 100%;
    margin-top: 33px;
	font-size: 20px;
    font-weight: 700;
	padding: 20px 20px;
}
.button_complete_purchase i {
	font-size: 15px;
}
.button_complete_purchase_text_small {
	display: table;
	max-width: 90%;
	font-size: 15px;
    font-weight: 300;
    letter-spacing: 0;
    margin: 5px auto 0 auto;
}
.button_complete_purchase .button_spinner {
    top: 15px;
}
.cc_number_div {
	position: relative;
}
.cc_icons {
	position: absolute;
	top: 10px;
	right: 10px;
}

.checkout_right_inner {
	display: table;
	float: left;
	width: 95%;
	max-width: 450px;
	padding: 20px 0 100px 20px;
	position: sticky;
	top: 30px;
    box-sizing: border-box;
}
.checkout_box {
	display: table;
	width: 100%;
	border: 1px solid rgb(var(--indigo_rgb) / 20%);
	border-radius: 8px;
	padding: 20px 30px;
	box-sizing: border-box;
	background: #fff;
}
.checkout_summary_scroll {
	display: none;
}
.checkout_summary .row_2 {
	grid-template-columns: 3fr 1fr;
}
.checkout_summary_img {
	display: inline-block;
	vertical-align: middle;
}
.checkout_summary_img img {
	display: table;
	width: auto;
	height: 100px;
	margin-right: 10px;
}

.checkout_summary_product {
	display: inline-block;
	vertical-align: middle;
}
.checkout_summary_product_name {
	font-size: 25px;
	line-height: 30px;
	margin-bottom: 5px;
    text-transform: capitalize;
}
.checkout_summary_product_text {
	font-size: 15px;
	color: rgb(var(--darkblue_rgb) / 70%);
}
.checkout_summary_product_type {
	margin-top: 3px;
}
.checkout_summary_price {
	margin-top: 10px;
}
.checkout_summary p {
	font-size: 15px;
	line-height: 17px;
}
.checkout_summary_total p {
	font-size: 20px;
	line-height: 25px;
}

.checkout_reviews {
	margin: 35px auto;
}
.checkout_reviews_title {
	font-size: 20px;
	line-height: 25px;
}
.checkout_reviews_stars {
	display: table;
	width: auto;
	height: 25px;
	margin: 15px auto;
}
.checkout_review {
	margin: 25px auto;
}
.checkout_review_title {
	
}
.checkout_review_text {
	font-size: 15px;
	line-height: 18px;
}
.checkout_review_stars {	
	margin-top: 8px;
}
.checkout_review_stars i {
	color: var(--yellow);
	margin-right: 3px;
}
.checkout_review_img {
	display: table;
	width: 35px;
	height: 35px;
	margin-right: 5px;
	border-radius: 100%;
	background-image: url('../images/weightloss_review_4.jpg');
	background-size: cover; 
	background-position: center;
	background-repeat: no-repeat;
}
.checkout_review_name {

}
.checkout_review_verified {
	font-size: 13px;
	line-height: 15px;
}

.checkout_guarantee {
	display: table;
	width: 100%;
}
.checkout_guarantee_icon {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
	width: 50px;
	height: 50px;
	background: rgb(var(--indigo_rgb) / 100%);
    border-radius: 100%;
    position: relative;
}
.checkout_guarantee_icon i {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
	font-size: 23px;
}
.checkout_guarantee_text {
	display: inline-block;
    vertical-align: middle;
    width: calc(100% - 65px);
    font-size: 15px;
    line-height: 18px;
	text-align: left;
}

.checkout_help {
	margin: 35px auto;
	position: relative;
}
.checkout_help_available {
	font-size: 15px;
	line-height: 18px;
	text-align: right;
}
.checkout_help_available i {
	margin-right: 5px;
	border-radius: 100%;
	box-shadow: 0 0 0 0 rgb(var(--green_rgb) / 70%);
	transform: scale(1);
	animation: stock_pulse 1.5s infinite;
}
.checkout_help_title {
	margin: 5px 0 0 0;
}
.checkout_help_alert {
	padding: 7px 12px 7px 0;
}
.checkout_help_alert span {
	display: inline-block;
	vertical-align: middle;
	max-width: calc(100% - 60px);	
}
.checkout_help_alert img {
	display: table;
	float: right;
	width: 40px;
	height: auto;
	border-radius: 100%;
}

.checkout_phone {
	font-size: 20px;
}
.checkout_phone i {
	margin: 0 5px 0 0;
}
.checkout_phone a {
	text-decoration: none;
}

#checkout_countdown_weightloss {
	display: inline-block;
	width: 45px;    
}
/*============== END CHECKOUT =================*/





/*--------------- THANKYOU -----------*/
.section_order .section_inner {
	max-width: 700px;	
}
.button_get_magic_link {
	letter-spacing: 0;
}
.order_tab {
    display: table;
    width: 100%;
    margin: auto;
    padding: 0;
    /* background: rgb(var(--indigo_rgb) / 10%); */
    background: var(--gradient_light);
    border-radius: 8px;
    box-sizing: border-box;
    position: relative;
    /* border: 2px solid var(--indigo); */    
    /* user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none; */
}
.order_tab_title {    
    display: table;
    width: 100%;
    margin:  auto;
    padding: 0 10px 30px 10px;
    font-size: 20px;
	line-height: 25px;
    font-weight: 500;
    color: var(--indigo);
    text-align: center;
    box-sizing: border-box;
    /* background: rgb(var(--indigo_rgb) / 10%); */
    background-image: var(--gradient_light);
    /* border-radius: 8px 8px 0 0; */
    border-radius: 8px;
}
.order_tab_icon {
    display: table;
    width: 100px;
    height: 100px;
    background: var(--indigo);
    margin: -50px auto 20px auto;
    border-radius: 100%;
    position: relative;
}
.order_tab_icon i {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 33px;
    color: var(--lightgray);
}
.order_tab_body {
    display: table;
    width: 100%;
    margin: 20px auto;
    box-sizing: border-box;
}
.order_tab_body_inner {
    display: table;
    width: 95%;
    margin: auto;
    padding: 20px;
    box-sizing: border-box;
    text-align: center;
}
.order_tab_body_inner .row_item p {
	margin-bottom: 5px;;
}
.order_tab .button {
    max-width: 250px;
    padding: 20px 0;
}
.order_tab .button .button_spinner {
    top: 18px;
    right: 10px;
    width: 20px;
    height: 20px;
    border-width: 3px;
}
.order_tab .faq_contact {
	display: inline-block;
    vertical-align: middle;
    width: auto;
    margin: 10px;
}
.row_3fr1fr {
    grid-template-columns: 3fr 1fr;
}
.row_2fr1fr {
    grid-template-columns: 2fr 1fr;
}
/*============== END THANKYOU =================*/






/*------------------ ANIMATIONS ---------------------*/
@keyframes scroll_horizontal {
	0% {
		transform: translateX(0);
		-ms-transform: translateX(0);
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
	100% {
		transform: translateX(-100%);
		-ms-transform: translateX(-100%);
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
	}
}
@keyframes scroll_vertical {
	0% {
		transform: translateY(0);
		-ms-transform: translateY(0);
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
    100% {
		transform: translateY(-100%);
		-ms-transform: translateY(-100%);
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
}









/* ----------------- LOADER LOGO SPIN ------------------ */
.loader {
    position: fixed;
    z-index: 100000;
    height: 100%;
    width: 100%;
    text-align: center;
    top: 0;
    left: 0;
    /* opacity: 0.977; */
	background: #DEEEFE;
	background-image: var(--gradient_tmates);
}

.loader_inner {
    position: relative;
    margin: 0px auto;
    display: block;
    top: 40%;
}

.loader_logo {
	display: table;
	margin: auto;
	width: 80vw;
	max-width: 800px;
    height: auto;
	position: fixed;
    left: 50%;
    right: 50%;
    transform: translate(-50%, 0%);
    bottom: 0;
    margin: auto;
    margin-bottom: 50px;
    opacity: 0.3;
}
.loader_logo img {
    display: table;
    width: 100%;
    margin: auto;
}

.loader_spinner {
    width: 170px;
    height: 170px;
    position: absolute;
    border-radius: 50%;
    border: 3px solid;
    border-color: #fff transparent #fff transparent;
    margin: auto;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    animation: dual-ring-spinner 1.5s linear infinite;
}

@keyframes dual-ring-spinner {
    0% {
        transform: rotate(0deg);
    }

    100% {
        transform: rotate(360deg);
    }
}

/*================== END LOADER LOGO SPIN ================*/

/* ----------------- LOADER PURE CSS ------------------ */
.loaderCSS {
    margin: 0px auto;
    font-size: 5px;
    position: relative;
    text-indent: -9999em;
    border-top: 0.7em solid rgba(255, 255, 255, 0.1);
    border-right: 0.7em solid rgba(255, 255, 255, 0.1);
    border-bottom: 0.7em solid rgba(255, 255, 255, 0.1);
    border-left: 0.7em solid #F8F8FF;
    -webkit-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: load8 0.33s infinite linear;
    animation: load8 0.33s infinite linear;
}

.loaderCSS,
.loaderCSS:after {
    border-radius: 50%;
    width: 5em;
    height: 5em;
}

@-webkit-keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

@keyframes load8 {
    0% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }

    100% {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }
}

/*=============== END LOADER PURE CSS ==================*/

.button_spinner {
    display: none;
    position: absolute;
    /* top: 20px;
    right: 20px; */
	top: 19px;
    right: 7px;

    width: 25px;
    height: 25px;
    -webkit-animation: button_spinner infinite .75s linear;
    -moz-animation: button_spinner infinite .75s linear;
    -o-animation: button_spinner infinite .75s linear;
    animation: button_spinner infinite .75s linear;
    border: 4px solid rgba(255, 255, 255, .7);
    border-top-color: rgba(255, 255, 255, .2);
    border-right-color: rgba(255, 255, 255, .2);
    border-bottom-color: rgba(255, 255, 255, .2);
    border-radius: 100%;
}

@keyframes button_spinner {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}








/*--- MODALS ---*/
.modal {
	display: none;
	width: 100%;
	height: 100vh;
	position: fixed;
	z-index: 100;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.7);
}
.modal_inner {
	position: absolute;
	top: 11vh;
    left: 50%;
    transform: translate(-50%,0%);
	display: table;
	width: 95%;
	max-width: 700px;
	padding: 50px;
	background: #fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-radius: 8px;
	box-shadow: 0 0 10px 0 #333;
}
.modal_close {
	position: absolute;
    top: 10px;
    right: 10px;
    width: 25px;
    border-radius: 100%;
}
.modal_close:hover {
	cursor: pointer;
	background-color: rgb(136 136 136 / 15%);
}
.modal_phone {
	display: table;
	margin: 40px auto 15px auto;
}
.modal_phone img {
	display: inline-block;
	vertical-align: middle;
	width: auto;
	height: 30px;
	margin-right: 10px;
}
.modal_phone span {
	display: inline-block;
	vertical-align: middle;
	font-size: 30px;
}
.modal_agents_live {
	display: table;
	margin: auto;
}
.modal_agents_live .green_circle_live {
	width: 15px;
    height: 15px;
    margin-right: 5px;
    /* box-shadow: 0 0 0 0.2rem rgb(92 184 92 / 30%); */
}
.modal_agents_live .modal_agents_live_text {
	display: inline-block;
	vertical-align: middle;
	font-size: 17px;
	line-height: 21px;
}
.button_modal_close {
	width: 100%;
    max-width: 500px;
    margin-top: 20px;
}
.modal p {
	color: #555;
	text-align: justify;
}
.modal a {
	color: #555;
}

.section_general h1 {
	font-size: 33px;
    line-height: 45px;
}


/*----------- MEDIA QUERIES -------------*/
@media only screen and (max-width: 1000px) {
    /*----------- LANDING MOBILE ---------*/
    .landing_percentage_row_item_left {
        max-width: 100%;
    }
    .landing_percentage {
        display: table;
        margin: auto;
    }
    .landing_percentage_left {
        font-size: 150px;
        line-height: 150px;
    }
    .landing_percentage_right {
        margin-top: 15px;
    }
    .landing_percentage_symbol {
        font-size: 85px;
        line-height: 73px;
    }
}
@media only screen and (max-width: 600px) {
    /*----------- LANDING MOBILE ---------*/
    .landing_topnav .button {
        padding: 10px;
    }
    .landing_topnav .menu_item {
        margin: 0 5px;
    }
    .landing_topnav .menu_item.button_topnav_signin_desktop {
        display: none;
    }
    .landing_topnav .menu_item.button_topnav_signin_mobile {
        display: inline-block;
        margin: 0;
        padding: 10px 15px;
    }
    .landing_topnav .button_spinner {
        right: 6.5px;
    }

    .landing_hero_row {
        grid-template-columns: 1fr;
    }
    .landing_hero_left {
        width: 100%;
        max-width: 100%;
        padding: 30px 0 30px 0;
    }
	.landing_hero_right {
		height: 40vh;
		min-height: 300px;
		border-top-left-radius: 8px;
		border-top-right-radius: 8px;
	}
	
	/* .landing_hero_right_row {
		grid-template-columns: 1fr;
	}
	.landing_hero_right_animation_1, 
	.landing_hero_right_animation_2 {
		animation: scroll_horizontal 30s linear infinite;
	} */
	.hero_animation_item {
		height: 50vw;
		padding: 5px 0;
	}
	.hero_img {
		width: 100%;
		height: 50vw;
	}
	.hero_benefits {
		margin-top: 10px;
	}


    .landing_hero h1 {
        font-size: 30px;
        line-height: 35px;
        text-align: center;
    }
    .landing_hero h2 {
        font-size: 20px;
        line-height: 25px;
        text-align: center;
    }
	.button_hero {
		margin-top: 20px;
	}
    .landing_logos_images {
        height: 15px;
        animation: scroll_horizontal 30s linear infinite;
    }
    .landing_logos_text {
        width: 110px;
        font-size: 9px;
        line-height: 13px;
    }
    .section_landing h1 {
        font-size: 25px;
        line-height: 35px;
        max-width: 95%;
        margin-bottom: 30px;
    }	
    .section_landing.section_pad100 {
        padding: 50px 0;
    }

    .square,
	.square_bkg_img_animated_container,
	.product_hero_left img {
        border-radius: 8px;
    }
    .row_squares {
        grid-template-columns: 1fr;
    }
    .row_squares_1 {
        padding: 0 !important;
    }
    .row_squares_2 {
        padding: 0 !important;
        margin-top: 10px;
    }
    .row_squares .row_item.mt_10 {
        margin-top: 0;
    }
    .square5_img {
        right: -15px;
    }
    .square5_icon {
        top: 10px;
        left: 10px;
    }
    .square5_text {
        bottom: 10px;
        left: 10px;
    }
    .square5_text_1 {
        font-size: 17px;
        line-height: 21px;
    }
    .square5_text_2 {
        font-size: 13px;
        line-height: 15px;
    }
	.square_bkg_img_mobile {
		max-height: 250px;
	}

	.square_long_icon {
		width: 40px;
		height: 40px;
	}
	.square_long_icon i {
		font-size: 20px;
	}

	.landing_sticky {
		position: relative;
		top: 0;
		left: 0;
	}

    .landing_percentage_row {
        grid-template-columns: 1fr;
    }
    .landing_percentage_row_item_right {
        margin-top: 33px;
    }
    .landing_percentage_row h2 {
        display: table;
        margin: auto;
    }

    .row_landing_better {
        grid-template-columns: 1fr 1fr;
    }
    .row_3.row_landing_better .row_item:nth-child(2n+1) {
		padding: 0 5px 0 0;
	}
	.row_3.row_landing_better .row_item:nth-child(2n+2) {
		padding: 0 0 0 5px;
	}

    .row_landing_testimonials {
        grid-template-columns: 1fr;
    }
    .row_2.row_landing_testimonials .row_item {
        padding: 0;
    }
    .row_landing_testimonials h1 {
        text-align: center;
    }
    .button_landing_testimonials {
        max-width: 100%;
    }
    .landing_testimonials_benefits {
        display: table;
        margin: auto;
    }
    .row_landing_testimonials_reviews {
        margin-bottom: 70px;
    }

    .benefit_text {
        
    }

    .row_landing_faq {
        grid-template-columns: 1fr;
    }
    .row_2.row_landing_faq .row_item {
        padding: 0;
    }
    .row_landing_faq h1 {
        text-align: center;
    }
    .landing_faq_contact {
        margin: auto;
        text-align: center;
    }
    .landing_faq_contact_desktop {
        display: none;   
    }
    .landing_faq_contact_mobile {
        display: block;
        margin-top: 33px;
    }
    .faq_contact {
        margin: 10px auto;
    }
	
	.section_footer .row_3 {
		grid-template-columns: 1fr;
	}	
	.section_footer .row_item {
		display: table;
		margin: 30px auto 0 auto;
		padding: 0;
		text-align: left;
	}
	.section_footer .row_item:nth-child(1) {
		text-align: left;
	}
    .section_footer .row_item:nth-child(2),
    .section_footer .row_item:nth-child(3) {
		text-align: center;
	}
	.footer_contact {
		width: 250px;
		margin: 10px 0;
	}
	.footer_contact_text {
		max-width: calc(100% - 50px);
		text-align: left;
	}
	a.footer_link {
		/* margin: 0 0 10px 0; */
        margin: 0 auto 10px auto;
	}
	.section_prefooter {
		padding: 30px 0;
	}
	.section_prefooter_text {
		font-size: 35px;
		line-height: 40px;
	}

	/*------------ INTAKE MOBILE ----------*/
	/* .row_1,
    .row_2,
    .row_3,
    .row_4,
    .row_5,
    .topnav .row_2 {
        grid-template-columns: 1fr;
    } */

	.row_2 .row_item:nth-child(2n+1) {
		padding-right: 5px;
	}
	.row_2 .row_item:nth-child(2n+2) {
		padding-left: 5px;
	}
	
	.row_3 .row_item:nth-child(3n+1) {
		padding-right: 5px;
	}
	.row_3 .row_item:nth-child(3n+2) {
		padding: 0 5px;
	}
	.row_3 .row_item:nth-child(3n+3) {
		padding-left: 5px;
	}

	#view_age .row_3 {
		grid-template-columns: 1fr;
	}
	#view_age .row_3 .row_item {
		padding-left: 0;
		padding-right: 0;
	}

	.row_benefits {
		grid-template-columns: 1fr;
	}
	.row_benefits .row_item {
		padding: 0 !important;
	}
	.benefits_tab {
		margin: 5px auto;
	}
    
    .weightloss_stories_img {
        height: 130px;
    }

	.back_button:hover {
		background: initial;
		color: inherit;
	}
	.back_button:active {
		cursor: pointer;
		background: var(--indigo);
		color: #fff;
	}
	.button_checkbox:hover:not(.button_checkbox_selected) {		
		color: initial;
		background-color: #fff;
        border-color: rgb(var(--indigo_rgb) / 30%);
	}
	.button_checkbox:hover:not(.button_checkbox_selected) i {
		color: rgb(var(--indigo_rgb) / 30%);
	}
	.intake_q_mtop {
		margin-top: 20px;
	}
	.intake_progress {
		margin: 10px auto 20px auto;
	}
	.weight_graph {
		margin: 30px auto 20px auto;
	}
	.weight_graph_w1 {
		top: 12%;
		left: 7%;
	}
	.weight_graph_w2 {
		top: 22%;
		left: 30.5%;
	}
	.weight_graph_w3 {
		top: 45%;
		left: 53%;
	}
	.weight_graph_w4 {
		top: 63%;
		left: 73.5%;
		min-width: 70px;
	}

	.backed_by_science_logos {
		display: none;
	}
	.backed_by_science_logos_mobile {
		display: table;
		margin: 20px auto;
	}

	/* .intake_q {
		margin-bottom: 150px;
	}
	.button_next_div_fixed {
		position: fixed;
        width: 100%;
        left: 0;
        bottom: 0;
        background: #fff;
        padding: 15px 10px 30px 10px;
        box-sizing: border-box;
        box-shadow: 0px 0px 10px rgb(0 0 0 / 30%);
	} */

	.product_select {
		padding: 0px 5px 110px 5px;
	}
	.product_item {
		gap: 10px;
	}
	.product_item_icon {
		order: 1;
		flex: 0 0 5%;
		align-self: flex-start;
	}
	.product_item_img {
		order: 3;
		flex: 0 0 23%;
	}
	.product_item_info {
		order: 2;
		flex: 0 0 63%;
		margin-top: 3px;
		align-self: flex-start;
	}
	.product_item {
		padding: 50px 10px 25px 5px;
	}
	.product_item_img img {
		max-width: 100px;
		margin: 0;
	}
	.product_item_tag {
		top: 5px;
		left: 5px;
	}
	.product_item_stock {
		top: 5px;
		right: 0;
	}
	.product_item_info_text {
		font-size: 15px;
	}
	.product_money_back_guarantee {
		padding: 10px 10px;
	}
	.product_money_back_guarantee span {
		font-size: 15px;
	}
    .product_option_glp1_before .row_item {
        min-width: 45vw;
    }

	.data_stats_img {
		display: none;
	}
	.data_stats_img_mobile {
		display: table;
	}

	/*--- CHECKOUT MOBILE ---*/
	.section_checkout {
		grid-template-columns: 1fr;
	}
	.checkout_left,
	.checkout_right {
		padding: 0 !important;
	}
	.checkout_left_inner,
	.checkout_right_inner {
		float: none;
		width: 95%;
		max-width: 95%;
		padding: 20px 0 70px 0;
        margin: auto;
	}
	.button_complete_purchase i {
		font-size: 15px;
	}
	.button_complete_purchase_text_small {
		font-size: 13px;
		line-height: 15px;
	}
	.checkout_summary_scroll {
		display: table;
	}
	.checkout_box {
		padding: 20px 15px;
	}
	.cc_icons {
		right: 15px;
	}
	.cc_icons svg {
		width: 25px;
	}
	.checkout_alert,
	.checkout_alert div {
		text-align: left;
	}
    .checkout_summary_product_name {
        font-size: 20px;
        line-height: 25px;
    }

    .button_complete_purchase .button_spinner {
        /* top: 32px; */
        right: 7px;
    }

    .order_tab_body_inner {
        width: 100%;
    }
    .alert_order_card span {
        max-width: calc(100% - 45px);
    }

	.row_2 .row_item.product_hero_left,
	.row_2 .row_item.product_hero_right {
		padding: 0;
	}
} /* --- END MEDIA QUERIES --- */

@media only screen and (max-width: 360px) {
    .landing_topnav .menu_item.button_topnav_signin_desktop,
    .landing_topnav .menu_item.button_topnav_signin_mobile {
        display: none;
    }    
}










/*----------------------------- HOMEPAGE ----------------------------*/
.menu_open .menu_full {
    right: 0;    
}
.menu_full .menu_button_right_icon i {
    margin-left: 0;
    margin-right: 5px;
}
.menu_full .menu_item:last-child {
    margin: 0;
}
.menu_overlay {
    display: none;
    opacity: 0;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100vw;
    height: 100vh; 
    background: linear-gradient(to left, var(--darkgray), rgb(var(--darkgray_rgb) / 50%));
    transition: all 0.3s ease-out;
}
.menu_open .menu_overlay {
    opacity: 1;
    display: table;
    transition: all 0.3s ease-in;
}
.menu_mobile_icon {
    display: none;
	float: right;
	font-size: 23px;
	background: var(--indigo);
	color: var(--lightgray);
	padding: 7px 12px;
	border-radius: 4px;
}
.menu_mobile_icon_close {
    opacity: 0;
    display: none;
	position: absolute;
	top: 20px;
	right: 20px;
    font-size: 40px;
    color: var(--lightgray);
    transition: all 0.3s ease-out;
}
.menu_open .menu_mobile_icon_close {
    opacity: 1;
    display: table;
    transition: all 1s ease-in;
}
.mobile_menu_logo {
    opacity: 0;
    display: none;
    margin: auto;
    width: 80vw;
    max-width: 800px;
    height: auto;
    position: fixed;
    left: 50%;
    right: 50%;
    transform: translate(-50%, 0%);
    bottom: 0;
    margin: auto;
    margin-bottom: 50px;
    transition: all 0.3s ease-out;
}
.menu_open .mobile_menu_logo {
    opacity: 0.3;
    display: table;
    transition: all 1s ease-in;
}


.menu_item_has_submenu {
    position: relative;
}
.menu_item_has_submenu .submenu {
	position: absolute;
    top: 33px;
    left: 0;
    min-width: 200px;
    background: #e5e7ff;
    border: 1px solid rgb(var(--indigo_rgb) / 33%);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    opacity: 0;
    pointer-events: none;
    transform: translateY(10px) scale(0.98);
    transition: all 0.25s cubic-bezier(.4,0,.2,1);
    z-index: 200;
    padding: 12px 0;
}
.menu_item_has_submenu .submenu::before {
    content: '';
    position: absolute;
    top: -8px;
    left: 32px;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-bottom: 8px solid rgb(var(--indigo_rgb) / 100%);
    z-index: 201;    
}
.menu_item_has_submenu:hover .submenu,
.menu_item_has_submenu:focus-within .submenu,
.menu_item_has_submenu.menu_submenu_open .submenu {
    opacity: 1;
    pointer-events: auto;
    transform: translateY(0) scale(1);
}
.submenu_item {
    display: block;
    padding: 10px 24px;
    color: #fff;
    text-decoration: none;
    font-family: 'Rubik', sans-serif;
    font-size: 16px;
    transition: background 0.18s;
    border: none;
    background: none;
}
.submenu_item:hover {
	background: rgb(var(--indigo_rgb) / 100%);
    color: #fff !important;
}
.submenu_arrow {
    margin-left: 8px;
    font-size: 14px;
    transition: transform 0.2s;
}
.menu_item_has_submenu:hover .submenu_arrow,
.menu_item_has_submenu.menu_submenu_open .submenu_arrow {
    transform: rotate(-180deg);
}




.homepage .landing_hero_row {
	grid-template-columns: 1fr 1fr;
}
.homepage .landing_hero_row .landing_hero_left {
	padding: 10vh 0;
}
/* .homepage .landing_hero_row .landing_hero_right {
	background-image: url('/assets/img/homepage/landing_hero/homepage_hero.jpg');
	background-size: cover;
	background-position: center;
	border-bottom-left-radius: 200px;
    border-top-right-radius: 200px;
} */
.homepage .button_hero {
	/* max-width: 350px; */
    margin-left: 0;
    margin-right: 0;
}
.homepage .alert_rounded {
	/* margin-left: 0;
    margin-right: 0; */
}


.row_product_item {
	background: rgb(var(--indigo_rgb) / 8%);
    border-radius: 20px;
    overflow: hidden;
    position: relative;
    box-sizing: border-box;
    padding: 20px 20px 0 20px !important;
    margin: 10px;	
	transition: transform 1s ease;
}
.row_product_item:hover img {
	transition: transform 1s ease;
	transform: translateX(20px) translateY(5px) rotate(3deg) scale(1.1);
	/* animation: homeProductHover 2s ease-in-out alternate infinite; */
}
/* @keyframes homeProductHover {
	0% {
		transform: translateX(0) translateY(0) rotate(0deg);
	}
	100% {
		transform: translateX(20px) translateY(5px) rotate(3deg);
	}
} */
.row_product_item:hover {
	cursor: pointer;
	background: rgb(var(--indigo_rgb) / 15%);
}
.row_product_item:hover .row_product_arrow {
	background: var(--indigo);
}
.row_product_item:hover .row_product_arrow i {
	color: var(--lightgray);
}
.row_product_title {
	/* max-width: 60%; */
	text-align: center;
	margin: 10px 0;
}
.row_product_title h3 {
	margin-bottom: 10px;
}
.row_product_item img {
	/* display: table;
    width: auto;
    height: 100%;
	max-height: 100px;
    position: absolute;
    top: 50%;
    right: 50px;
    transform: translate(0%, -50%); */
	display: table;
    width: 100%;
    margin: auto;
}
.row_product_arrow {
	display: table;
    width: 30px;
    height: 30px;
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translate(0%, -50%);
    background: rgba(255 255 255 / 70%);
    border-radius: 100%;
}
.row_product_arrow i {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 15px;
	color: var(--indigo);
}
.homepage_step {
	display: table;
	width: 90%;
	max-width: 350px;
	float: right;
	align-items: center;
	margin: 20px 0 70px 0;
}
.homepage_step_number {
    display: table;
    width: 70px;
    height: 70px;
    margin: 20px auto;
    position: relative;
    /* background: var(--gradient_light); */
	border: 3px solid var(--indigo);
    border-radius: 100%;
}
.homepage_step_number span {
	position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    font-size: 40px;
    color: var(--indigo);
}
.homepage_step_title {
    font-size: 30px;
    line-height: 40px;
	margin-bottom: 15px;
}
.homepage_step_text {
    font-size: 20px;
    line-height: 25px;
}
.homepage_step_img {
	display: table;
	width: 100%;
	height: auto;	
}
.homepage_step:last-child {
	margin-bottom: 0;
}
.homepage_step:nth-child(odd) .homepage_step_img {
	border-bottom-right-radius: 100px;
	border-top-left-radius: 100px;
}
.homepage_step:nth-child(even) .homepage_step_img {
	border-bottom-left-radius: 100px;
	border-top-right-radius: 100px;
}

.section_landing_verticals .row_2 {
	grid-template-columns: 3fr 2fr;
}
.section_landing_verticals_left {
	height: 100%;
	padding: 0 !important;
}
.section_landing_verticals_img {
	height: 100%;
    background-size: cover;
    background-position: center;
	background-image: url(../images/default.jpg);
}
.section_landing_verticals_img_glp1 {
	background-image: url(../images/glp1.jpg);
}
.section_landing_verticals_img_minoxidil {
	background-image: url(../images/minoxidil.jpg);
}
.section_landing_verticals_img_hydroquinone {
	background-image: url(../images/hydroquinone.jpg);
}
.section_landing_verticals_img_sidenafil {
	background-image: url(../images/sidenafil.jpg);
}
.section_landing_verticals_img_phentermine {
	background-image: url(../images/phentermine.jpg);
}
.section_landing_verticals_right {
	padding: 27vh 5vw !important;
}
.section_landing_verticals_right .alert_white_border {
	margin: 0 0 25px 0;
}
.section_landing_verticals_text_container {
	display: table;
	margin: 0;
	padding: 0;
}
.section_landing_verticals_text {
	font-size: 45px;
	line-height: 45px;
	padding: 13px 0;
	color: #fff;
	transition: all 0.5s ease;
}
.section_landing_verticals_text:hover,
.section_landing_verticals_text_active {
	cursor: pointer;
	transform: scale(1.15);
}
.section_landing_verticals_text_container:hover .section_landing_verticals_text:not(:hover),
.section_landing_verticals_text_container:hover .section_landing_verticals_text:not(.section_landing_verticals_text_active) {
	filter: blur(5px);
}

@media only screen and (max-width: 800px) {
	.section_landing_verticals .row_2 {
		grid-template-columns: 1fr;
	}
	.section_landing_verticals_right {
		padding: 50px 0 !important;
	}
	.section_landing_verticals_text_container {
		width: 100%;
		margin: auto;
		text-align: center;
	}
    .section_landing_verticals_text {
        font-size: 35px;
	    line-height: 35px;
    }
	.section_landing_verticals_left {
		height: 40vh;
	}
}


/*---------- HOMEPAGE PRODUCT CAROUSEL ---------*/
#product_carousel_div {
    width: 100%;
    margin-top: 50px
}
#product_carousel {
    width: calc(100vw - 50px);
    padding: 0 0 0 20vw;
    box-sizing: border-box;
    margin: auto;
    text-align: center;
    /* -webkit-mask: linear-gradient(90deg, transparent, var(--cyan) 10%, var(--purple) 90%, transparent); */
    mask: linear-gradient(
            90deg,
            transparent 0%,       /* fully transparent at very start */
            /*transparent 3%,      /* keep transparent longer */
            var(--cyan) 20%,      /* start solid color later */
            var(--purple) 80%,    /* solid color until 70% */
            /*transparent 99%,      /* start fading out earlier */
            transparent 100%      /* fully transparent at end */
    );
}
.owl-carousel .product_carousel_item {
    width: 300px; /* fixed width */
    box-sizing: border-box;
    margin: 0;
}
#product_carousel .owl-stage {
    display: flex !important;
    align-items: stretch;
    padding-right: 0 !important;
}
#product_carousel .owl-item {
    display: flex;
}
#product_carousel .item {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
}
.product_carousel_item {
  display: flex;
  flex-direction: column;
  /* Make container take full height if needed */
  height: 100%;
}
.product_carousel_item img {
  /* Push image to bottom */
  margin-top: auto;
  margin-bottom: 0;
  /* Optional: keep image size consistent */
  max-width: 100%;
  height: auto;
  display: block;
}
.owl-carousel .owl-stage {
    overflow: hidden;
}
.owl-theme .owl-nav.disabled+.owl-dots {
    margin: 30px auto 30px -20vw;
}
.owl-theme .owl-dots .owl-dot span {
    width: 15px;
    height: 15px;
    background: rgb(var(--indigo_rgb) / 20%);
}
.owl-theme .owl-dots .owl-dot.active span,
.owl-theme .owl-dots .owl-dot:hover span {
    background: rgb(var(--indigo_rgb) / 100%);
}

.product_carousel_nav {
    display: flex;
    justify-content: right;
    gap: 11px;
    margin: 0 5vw 33px 0;
}
.product_carousel_nav button {
    background: rgb(var(--indigo_rgb) / 100%);
    color: #fff;
    border: none;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    font-size: 20px;
    cursor: pointer;
    transition: background 0.2s;
	transition: box-shadow 0.35s cubic-bezier(.4,0,.2,1), transform 0.25s cubic-bezier(.4,0,.2,1);
    box-shadow: 0 2px 8px rgb(var(--indigo_rgb) / 10%);
}
.product_carousel_nav button:hover {
    background: rgb(var(--indigo_rgb) / 100%);
	box-shadow:
        0 8px 24px rgb(var(--indigo_rgb) / 38%),
        0 1.5px 4px rgb(var(--indigo_rgb) / 30%),
        0 0.5px 1px rgb(var(--indigo_rgb) / 27%);
    transform: translateY(-4px) scale(1.03);
    z-index: 2;
}

@media only screen and (max-width: 800px) {
    #product_carousel_div {
        margin-top: 40px;
    }
    #product_carousel {
        width: 100vw;
        padding: 0;
        mask: linear-gradient(
            to right,
            var(--cyan) 20%,      /* start solid color later */
            var(--purple) 80%,    /* solid color until 70% */
            transparent 100%   /* fade to transparent at right edge */
        );
    }
    .owl-carousel .product_carousel_item {
        width: 250px !important;
    }
    .owl-theme .owl-nav.disabled+.owl-dots {
        margin: 30px auto;
    }
}

/*------------ HOMEPAGE GRID MATRIX ------------*/
.section_landing_grid_matrix .section_inner {
	max-width: 1500px;
}
.landing_grid_matrix {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: repeat(2, 45vh); /* adjust height as needed */
	gap: 16px;
}

.landing_grid_matrix_item {
	display: flex;
	/* align-items: center; */
	justify-content: left;
	font-weight: bold;	
	border-radius: 20px;
	padding: 33px;
	box-sizing: border-box;
	position: relative;
}
.landing_grid_matrix_item::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none; 
  border-radius: 20px
}

.landing_grid_matrix_item1 {
	grid-column: 1 / span 2; /* spans columns 1 and 2 */
	grid-row: 1;
	background: var(--indigo);
	align-items: start;
    
}
.landing_grid_matrix_item1::after {
	background: linear-gradient(
		to top,
		transparent 0%,     
		rgb(var(--darkblue_rgb) / 100%) 100%    
	);
  z-index: 1;
}
.landing_grid_matrix_item1 .landing_grid_matrix_item_title {
	color: rgb(var(--lightgray_rgb) / 100%);
}

.landing_grid_matrix_item2 {
	grid-column: 3;
	grid-row: 1;
	background: var(--indigo);
	align-items: start;
}
.landing_grid_matrix_item2::after {
	background: linear-gradient(
		to top,
		transparent 0%,     
		rgb(var(--green_rgb) / 100%) 100%
	);
  z-index: 1;
}
.landing_grid_matrix_item2 .landing_grid_matrix_item_title {
	color: rgb(var(--lightgray_rgb) / 100%);
}

.landing_grid_matrix_item3 {
	grid-column: 4;
	grid-row: 1;
	background: var(--indigo);
	align-items: start;
}
.landing_grid_matrix_item3::after {
	background: linear-gradient(
		to top,
		transparent 0%,     
		rgb(var(--indigo_rgb) / 100%) 100%    
	);
  z-index: 1;
}
.landing_grid_matrix_item3 .landing_grid_matrix_item_title {
	color: rgb(var(--lightgray_rgb) / 100%);
}

.landing_grid_matrix_item4 {
	grid-column: 1;
	grid-row: 2;
	background: var(--indigo);
	align-items: end;
}
.landing_grid_matrix_item4::after {
	background: linear-gradient(
		to top,
		rgb(var(--blue_rgb) / 100%) 0%,     
		transparent 100%    
	);
  z-index: 1;
}
.landing_grid_matrix_item4 .landing_grid_matrix_item_title {
	color: rgb(var(--lightgray_rgb) / 100%);
}

.landing_grid_matrix_item5 {
	grid-column: 2;
	grid-row: 2;
	background: var(--indigo);
	align-items: end;
}
.landing_grid_matrix_item5::after {
	background: linear-gradient(
		to top,
		rgb(var(--darkblue_rgb) / 100%) 0%,     
		transparent 100%    
	);
  z-index: 1;
}
.landing_grid_matrix_item5 .landing_grid_matrix_item_title {
	color: rgb(var(--lightgray_rgb) / 100%);
}

.landing_grid_matrix_item6 {
	grid-column: 3 / span 2; /* spans columns 3 and 4 */
	grid-row: 2;
	background: var(--indigo);	
	align-items: end;
}
.landing_grid_matrix_item6::after {
	background: linear-gradient(
		to bottom,
		transparent 0%,
		rgb(var(--lightgray_rgb) / 50%) 100%		
	);
  z-index: 1;
}
.landing_grid_matrix_item6 .landing_grid_matrix_item_title {
	color: rgb(var(--indigo_rgb) / 100%);
}

.landing_grid_matrix_item_title {
	font-size: 40px;
    line-height: 50px;
    display: table;
    max-width: 60%;
    margin: 0;
	z-index: 10;
}

@media (max-width: 600px) {
	.landing_grid_matrix {
		grid-template-columns: 1fr;
		grid-template-rows: repeat(6, 50vh); /* adjust row height as needed */
	}
	.landing_grid_matrix_item1,
	.landing_grid_matrix_item2,
	.landing_grid_matrix_item3,
	.landing_grid_matrix_item4,
	.landing_grid_matrix_item5,
	.landing_grid_matrix_item6 {
		grid-column: 1;
		grid-row: auto;
	}
}




/*------------ HOMEPAGE TESTIMONIALS ------------*/
.testimonial {
    width: 50%;
    max-width: 500px;
	aspect-ratio: 2 / 1;
    margin: auto;
    position: relative;
    border-bottom-left-radius: 30px;
    border-top-right-radius: 30px;
    overflow: hidden;
}
.testimonial_img {
	background-size: cover;
    background-position: center;
}
.testimonial_text {
	height: 100%;
    margin: auto;
    padding: 20px 20px 50px 20px !important;
    background: #fff;
    box-shadow: 0px 0px 10px rgb(var(--indigo_rgb) / 20%);
    box-sizing: border-box;
}
.testimonial_text p {
	font-size: 15px;
    line-height: 19px;
    margin-bottom: 10px;
	/* height: 100%;
    max-height: 100px;
    overflow: scroll; */
}
.testimonial_text i {
	color: var(--yellow);
	margin-right: 3px;
}
.testimonial_stars_name {
	position: absolute;
	bottom: 20px;
}

.scroller {
    /* max-width: 95vw; */
    max-width: calc(100vw - 1rem);
}  
.scroller__inner {
    padding-block: 1rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}
.scroller[data-animated="true"] {
    overflow: hidden;
    -webkit-mask: linear-gradient(
        90deg,
        transparent,
        var(--cyan) 10%,
        var(--purple) 90%,
        transparent
    );
    mask: linear-gradient(
        90deg, 
        transparent, 
        var(--cyan) 10%,
        var(--purple) 90%,
        transparent
    );
}
.scroller[data-direction="right"] {
    --_animation-direction: reverse;
}
.scroller[data-direction="left"] {
    --_animation-direction: forwards;
}
.scroller[data-speed="fast"] {
    --_animation-duration: 100s;
}
.scroller[data-speed="medium"] {
    --_animation-duration: 50s;
}
.scroller[data-speed="slow"] {
    --_animation-duration: 100s;
}
.scroller[data-animated="true"] .scroller__inner {
    width: max-content;
    flex-wrap: nowrap;
    animation: scroll var(--_animation-duration)
      var(--_animation-direction, forwards) linear infinite;
}
.scroller[data-animated="true"] .scroller__inner:hover {
    animation-play-state: paused;
}
@keyframes scroll {
    to {
        transform: translate(calc(-50% - 0.5rem));
    }
}
/*============ END HOMEPAGE TESTIMONIALS =============*/


@media only screen and (max-width: 800px) {
	.menu_mobile_icon {
		display: table;
	}
	.menu_full {
		position: fixed;
        z-index: 200;
        top: 0;
        right: -100vw;
        width: 100vw;
        height: 100vh;
        padding: 70px 0 20px 0;
        background: var(--gradient_tmates);
        color: #919fb4;
        border-radius: 0;
        box-sizing: border-box;
        -webkit-transition: all 0.2s ease-in-out;
        -moz-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
	}        
    .menu_full .menu_item {
        display: table;
        width: 90%;
        margin: 15px auto !important;
        font-size: 35px;
        color: #fff;
        text-align: center;
    }    
    .menu_full .button {
        margin-top: 30px;
        padding: 20px 0;
        font-size: 20px;
    }
    .menu_full .button i {
        font-size: 17px;
        position: absolute;
        top: 50%;
        left: 15px;
        transform: translate(0, -50%);
        margin: auto;
    }	
	.homepage .landing_hero_row .landing_hero_left {
		padding: 30px 0;
	}
	/* .homepage .landing_hero_row .landing_hero_right {
		border-radius: 8px 8px 0 0;
	} */
	.row_products {
		grid-template-columns: 1fr;
	}
	.row_product_item img {
		/* right: 40px; */
	}
	.row_product_title {
		/* max-width: 60%; */
	}	
    
    .testimonial.row_2 {
        grid-template-columns: 1fr;
        max-width: 250px;
		aspect-ratio: inherit;
		border-radius: 8px;
    }
    .testimonial_img {
        width: 100%;
        height: 250px;
    }
}

@media only screen and (max-width: 600px) {
	.homepage .landing_hero_row {
		grid-template-columns: 1fr;
	}
	.homepage .button_hero {
		max-width: 100%;
	}
	.homepage .alert_rounded {
		margin-left: auto;
		margin-right: auto;
	}
	.homepage_step {
		float: none;
		margin: 30px auto 50px auto;		
	}
	.homepage_steps {
        grid-template-columns: 1fr;
    }
    .row_2.homepage_steps .row_item {
        padding: 0;
    }
    .homepage_steps h1 {
        text-align: center;
    }
    .homepage_steps .button {
        max-width: 100%;
    }
    .homepage_steps_text {
        text-align: center;
    }
    .homepage_steps {
        margin-bottom: 70px;
    }
	.homepage_steps_top_text {
		text-align: center;
	}
	.row_product_title h3 {
		font-size: 18px;
	}
}
/*============================ END HOMEPAGE =======================*/







/*---------------------- PRODUCT PAGES ----------------------------*/
.section_product_hero .section_inner {
	max-width: 1300px;
}
.section_product_hero_row.row_2 {
	grid-template-columns: 4fr 3fr;
}
.product_hero_left {
	
}
.product_hero_left img {
	display: table;
	width: 100%;
	height: auto;
	position: sticky;
	top: 10px;
	background-image: var(--gradient);
    border-radius: 33px;
	border: 1px solid rgb(var(--indigo_rgb) / 10%);
	box-sizing: border-box;
}
.product_hero_right h1 {
	font-size: 40px;
    line-height: 45px;
	text-transform: capitalize;
	margin-bottom: 10px;
}
.product_hero_price {	
	margin: 30px 0;
}
.product_hero_price_no {
	display: inline-block;
    vertical-align: middle;
	font-size: 35px;
    line-height: 40px;	
}
.product_hero_price_month {
	display: inline-block;
    vertical-align: middle;
	padding-left: 5px;
	font-size: 15px;
    line-height: 18px;	
}
.product_hero_variant_title {
	font-size: 18px;
    line-height: 23px;
}
.product_hero_variant_div {
	display: table;
	width: 100%;
	margin: 20px 0;
}
.product_hero_variant {
	display: inline-block;
	vertical-align: top;
	font-weight: 500;
	text-transform: capitalize;
	margin: 10px 3px 10px 0;
	padding: 10px 20px;		
	border-radius: 30px;
	border: 2px solid var(--indigo);
	background: rgb(var(--indigo_rgb) / 5%);

	user-select: none;
    -moz-user-select: none;
    -khtml-user-select: none;
    -webkit-user-select: none;
    -o-user-select: none;
    text-decoration: none;
}
.product_hero_variant:hover,
.product_hero_variants_selected {
	background: var(--indigo);
	color: #fff;
	cursor: pointer;
}
.product_hero_reviews {
	margin-bottom: 20px;
}
.product_hero_reviews i {
	color: var(--yellow);
    margin-right: 3px;
}
.product_hero_description {
	margin: 30px 0;
	font-size: 18px;
    line-height: 25px;
}
.product_hero_description div {
	margin-bottom: 10px;
}
.product_hero_benefits {
	margin: 30px 0;
}
.product_hero_benefits h3 {
	font-size: 18px;
	line-height: 25px;
	margin-bottom: 10px;
}

.product_hero_accordion {
    margin: 50px auto 0 auto;
}
.product_hero_accordion .faq_item {
	background: transparent;
	border-bottom: 1px solid rgb(var(--indigo_rgb) / 20%);
    border-radius: 0;
	margin-bottom: 0;
    padding: 20px 0;
}
.product_hero_accordion .faq_item_open,
.product_hero_accordion .faq_item:hover {
	/* background: rgb(var(--indigo_rgb) / 5%); */
    background: transparent;
}
.product_hero_accordion .faq_item_open i {
	-webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    transform: rotate(135deg);
}
.product_hero_accordion .faq_item:last-child {
	margin-bottom: 0;
}
.product_hero_accordion .faq_item .faq_chevron {
    right: 0;
}

@media only screen and (max-width: 800px) {
	.section_product_hero_row,
	.section_product_hero_row.row_2 {
		grid-template-columns: 1fr;
	}
	.product_hero_right h1 {
		font-size: 35px;
		line-height: 40px;
		margin: 30px 0 10px 0;
	}
}
/*===================== END PRODUCT PAGES ==========================*/















/*--------------------------- GENERAL PAGES -----------------------*/
.general_page {
	font-size: 18px;
    line-height: 27px;
}
.general_page .section_pad100 {
    padding: 50px 0;
}
.general_page .section_inner {
	max-width: 1000px;	
}
ul {
	list-style-type: disclosure-closed;
	list-style-position: inside;
}
ul li {
	padding-left: 10px;
	margin-bottom: 10px;
}
.general_page_img {
	display: table;
	width: 100%;
	margin-bottom: 40px;
	border-bottom-left-radius: 100px;
    border-top-right-radius: 100px;

}
@media only screen and (max-width: 800px) {
	.general_page_img {
		border-bottom-left-radius: 30px;
		border-top-right-radius: 30px;
	}
}
@media only screen and (max-width: 600px) {

}
/*========================= END GENERAL PAGES =======================*/










/*--- Google Translate ---*/
.skiptranslate {
    display: none !important;
}
.body_lang_es {
    position: initial !important;
    top: 0 !important;
}
.body_lang_es .landing_logos_text {
    width: 180px;
}
/*=== END Google Translate ===*/












.mt_10 {
    margin-top: 10px;
}
.mt_25 {
    margin-top: 25px;
}
.mt_50 {
    margin-top: 50px;
}
.mb_10 {
    margin-bottom: 10px;
}
.mb_25 {
    margin-bottom: 25px;
}
.mb_50 {
    margin-bottom: 50px;
}
.mx_10 {
    margin-left: 10px;
    margin-right: 10px;
}
.my_10 {
    margin-top: 10px;
    margin-bottom: 10px;
}
.mx_25 {
    margin-left: 25px;
    margin-right: 25px;
}
.my_25 {
    margin-top: 25px;
    margin-bottom: 25px;
}
.my_50 {
    margin-top: 50px;
    margin-bottom: 50px;
}
.px_10 {
    padding-left: 10px;
    padding-right: 10px;
}
.px_20 {
    padding-left: 20px;
    padding-right: 20px;
}
.py_10 {
    padding-top: 10px;
    padding-bottom: 10px;
}
.py_20 {
    padding-top: 20px;
    padding-bottom: 20px;
}