/*
Theme Name: Functional Medicine Shop
Version: 1.0
Author: Sterr Bros
Author URI: http://www.sterr-bros.com/
Description: Customized theme for functionalgutsture.com
*/

/* THEME VARIABLES */
:root {
	
	/* Originals */
	--color-blue: #269FE9;
	--color-blue-dark: #0072FF;
	--color-blue-light: #4ACBD3;
	--color-charcoal: #222222;
	--color-charcoal-dark: #1A1A1A;
	--color-charcoal-light: #393939;
	--color-eggshell: #F7F7F0;
	--color-gold: #DDA536;
	--color-gold-dark: #B57D0F;
	--color-gold-light: #FFF4DE;
	--color-gray: #696969;
	--color-gray-dark: #444444;
	--color-gray-light: #9A9A9A;	
	--color-green: #1DB94C;
	--color-orange: #FFA500;
	--color-orange-dark: #E89703;
	--color-orange-light: #FFC34F;
	--color-peach: #EBC8A8;
	--color-peach-dark: #CAAB97;
	--color-peach-light: #F7E7D8;
	--color-red: #DD3636;
	--color-red-dark: #BF1818;
	--color-red-light: #FF4F4F;
	--color-white: #FFFFFF;
	
	/* NEW 2025 */
	--color-slate: #273842;
	--color-slate-dark: #1e2b33;
	--color-slate-light: #566e7b;
	--color-pink: #d19066;
	--color-pink-light: #f5e9df;
	--color-umber: #a3562c;
	--color-seafoam: #a8b9b4;
	--color-seafoam-dark: #748061;
	--color-seafoam-light: #e4ecea;
	--color-lightgray: #F5F5F5;
	--color-lightgray-dark: #DEDEDE;
	
	--font-oswald: "Oswald", sans-serif;
	--font-dancing: "Dancing Script", cursive;
	--font-open: "Open Sans", Helvetica, Arial, sans-serif;
}

.oswald {font-family: var(--font-oswald) !important;}
.dancing {font-family: var(--font-dancing) !important;}
.open-sans {font-family: var(--font-open) !important;}

/* GENERAL */
html {
    overflow-y: scroll;
	background: var(--color-lightgray-dark);
}
body {
	margin: 0;
	padding: 0em;
	font-family: var(--font-open);
	font-size: 16px;
	background: var(--color-white);
	color: var(--color-slate);
}
body.sticky-header  {
	padding-top: 81px;
}
img {
	max-width: 100%;
	height: auto;
}
* {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
}

a:link {color: var(--color-pink); -webkit-transition: .3s all; -o-transition: .3s all; transition: .3s all; outline: none;}
a:visited {color: var(--color-pink); outline: none;}
a:active {color: var(--color-umber); outline: none;}
a:hover {color: var(--color-umber); outline: none;}

h1, h2, h3, h4, h5, h6 {
	font-family: var(--font-oswald);
	font-weight: normal;
}

.aligncenter {
	display: block;
	margin: 1.5em auto;
}
.alignleft {
	float: left;
	margin: 0 1em .5em 0;
}
.alignright {
	float: right;
	margin: 0 0 .5em 1em;
}

.hidden {
	display: none;
}

.desktop-only {
	display: inherit;
}
.mobile-only {
	display: none;
}

.inner {
	max-width: 1200px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.inner.full {
	max-width: 100%;
}

.section {
	display: block;
	background: var(--color-white);
	clear: both;
	padding: 0;
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.section:after {
	content: '';
	display: block;
	clear: both;
}

button, a.button {
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	font-size: 16px;
	color: var(--color-white) !important;
	background: var(--color-gold);
	cursor: pointer;
	padding: 1em 3.5em;
	margin: 0;
	display: inline-block;
	border: none;
	text-decoration: none;
	-webkit-transition: .3s all;
	-o-transition: .3s all;
	transition: .3s all;
	text-transform: uppercase;
}
button:hover, .button:hover {
	background: var(--color-gold-dark);
}
button.blue, a.button.blue {
	background: var(--color-blue);
}
button.blue:hover, .button.blue:hover {
	background: var(--color-blue-dark);
}
button.dark, a.button.dark {
	background: var(--color-slate-light);
}
button.dark:hover, a.button.dark:hover {
	background: var(--color-slate);
}
button.orange, a.button.orange {
	background: var(--color-orange);
}
button.orange:hover, a.button.orange:hover {
	background: var(--color-orange-dark);
}

input {
	-webkit-transition: .3s all;
	-o-transition: .3s all;
	transition: .3s all;	
}

.clear {
	clear: both;
}

.fixed-bg {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;	
	-webkit-transition: none !important;	
	-o-transition: none !important;	
	transition: none !important;
}

.headline {
	font-family: var(--font-oswald);
}
.cursive {
	font-family: var(--font-dancing);
}

/* PREHEADER */
#preheader {
	background: var(--color-lightgray);
}
#preheader .inner {
	text-align: right;
}
#preheader a {
	display: inline-block;
	margin-left: 15px;
	height: 46px;
	text-decoration: none;
	transition: 0s all;
	vertical-align: middle;
}
#preheader a::before {
	content: '';
	display: inline-block;
	vertical-align: top;
	background: url('img/search-icons-gray.png');
	background-size: 44px 16px;
	background-position: left top;
	background-repeat: no-repeat;
	width: 22px;
	height: 16px;
	position: relative;
	margin: 0px;
	line-height: 24px;
	top: 15px;
}
#preheader a:hover::before {
	background-position-x: left -22px;
}
#preheader a.account::before {
	background-image: url('img/account-icons-gray.png');
}
#preheader a.cart::before {
	background-image: url('img/cart-icons-gray.png');
}
#preheader a.cart .cart-count {
	position: relative;
	top: 12px;
	font-size: 14px;
}
#preheader a.search::before {
	background-image: url('img/search-icons-gray.png');
	height: 26px;
	top: 10px;
	background-position-y: 5px;
}
#preheader a.search {
	margin-left: -5px;
}
#preheader a.search.active::before {
	display: none;
}
#preheader a.search.active span {
	display: inline-block;
	height: 36px;
	line-height: 36px;
	font-size: 13px;
	font-family: var(--font-oswald);
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--color-white);
	border: none;
	border-radius: 0 14px 14px 0;
	padding: 0 .5em;
	cursor: pointer;
	background: var(--color-pink);
	margin: 5px 0 0 0;
	vertical-align: top;
	transition: .3s all;
}
#preheader a.search.active:hover span {
	background: var(--color-umber);	
}
#preheader form {
	display: none;
	vertical-align: top;
	height: 46px;
	max-width: calc(100% - 52px);
}
#preheader form input {
	height: 36px; 
	margin: 5px 0;
	padding: 0 10px;
	max-width: 100%;
	width: 300px;
}

/* SHOP MENU */
#header-menu {
	position: relative;
	background: var(--color-white);
	z-index: 800;	
	border-bottom: 1px solid var(--color-lightgray-dark);
	overflow: visible;
	width: 100%;
}
body.sticky-header #header-menu {
	position: fixed;
	top: 0;
}
#header-menu .inner {
	overflow: visible;
}
#header-menu .menu {
	display: flex;
	justify-content: space-between;
	padding: 0;
	margin: 0;
	text-align: center;
	position: relative;
}
#header-menu .menu * {
	transition: .3s all;
}
#header-menu .menu > li {
	list-style: none;
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 120px;
}
body.sticky-header #header-menu .menu > li {
	height: 80px;
}

#header-menu .menu > li .links {
	position: relative;
}

#header-menu .menu > li > .links a {
	display: block;
	padding: 1em .5em 1em .5em;
	text-transform: uppercase;
	font-weight: normal;
	color: var(--color-slate);
	text-decoration: none;
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	font-size: 16px;
}
#header-menu .menu > li.menu-item-has-children > .links a:not(.all)::after {
	content: '∨';
	display: inline-block;
	padding-left: .3em;
	color: var(--color-slate-light);
	vertical-align: middle;
	margin-top: -6px;
	font-size: .8em;
	transition: .2s all ease-in-out;
}
#header-menu .menu > li.menu-item-has-children.open > .links a:not(.all)::after {
	transform: rotate(180deg);
	padding-left: 0;
	padding-right: .3em;
	padding-bottom: .4em;
}
#header-menu .menu > li > .links a:hover {
	color: var(--color-pink);
}
#header-menu .menu > li > .links a.all {
	color: var(--color-seafoam-dark);
	font-size: 12px;
	padding: 0;
	display: none;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: 12px;
	margin-left: -80px;
	width: 160px;
}
body.sticky-header #header-menu .menu > li > .links a.all {
	font-size: 10px;
	margin-top: 10px;
}
#header-menu .menu > li > .links a.all + a.all {
	margin-top: 30px;
}
body.sticky-header #header-menu .menu > li > .links a.all + a.all {
	margin-top: 24px;
}
#header-menu .menu > li:hover > .links a.all {
	display: block;
}
#header-menu .menu > li > .links a.all:hover {
	color: var(--color-pink);
}

#header-menu .menu > li.logo {
	flex-basis: 240px;
	flex-shrink: 0;
	text-align: left;
	padding: 0;
}
#header-menu .menu > li.logo > a {
	padding: 16px 40px 16px 0;
}

#header-menu .menu > li.menu-item-has-children > .links a:hover::after {
	color: var(--color-pink);
}
#header-menu .menu > li > .sub-menu {
	display: block;
	height: 0;
	opacity: 0;
	list-style: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	padding: 0;
	box-shadow: 0 1px 4px #888;
	background: var(--color-white);
	overflow: hidden;
}
#header-menu .menu > li > .sub-menu.loading {
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: center;
}
#header-menu .menu > li.menu-item-has-children.open > .sub-menu {
	opacity: 1;
	height: auto;
	padding: 0;
}
#header-menu .menu > li.menu-item-has-children.open > .sub-menu.loading {
	min-height: 300px;
}
#header-menu .menu > li > .sub-menu .submenu-heading {
	height: 60px;
	background: var(--color-lightgray);
	border-bottom: 1px solid var(--color-gray);
	color: var(--color-gray);
	color: var(--color-gray);
	line-height: 60px;
	text-align: left;
	padding: 0 20px;
	text-transform: uppercase;
	font-weight: 500;
	font-family: var(--font-oswald);
	font-size: 20px;
}
#header-menu .menu > li > .sub-menu .submenu-heading > a {
	display: block;
	float: right;
	font-size: 14px;
	text-decoration: none;
	text-transform: none;
	color: var(--color-gray);
}
#header-menu .menu > li > .sub-menu .submenu-heading > a:hover {
	color: var(--color-slate);
}
#header-menu .menu > li > .sub-menu .mobile-close {
	display: block;
	position: absolute;
	top: 60px;
	right: 0;
	z-index: 999;
	width: 30px;
	height: 30px;
	line-height: 30px;
	color: var(--color-white);
	background: var(--color-pink);
	border-top: none;
	border-right: none;
	cursor: pointer;
	transition: .3s all;
}
#header-menu .menu > li > .sub-menu .mobile-close:hover {
	background: var(--color-umber);
}

/* SHOP PRODUCTS SUBMENU */
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items {
	overflow-y: scroll;
	scrollbar-width: none;
	max-height: calc(100vh - 46px - 120px - 60px) /* Screen height - minus preheader, header, submenu heading */
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > a {
	display: block;
	padding: .2em 20px;
	width: 33.3%;
	text-decoration: none;
	text-align: left;
	border-right: 1px solid var(--color-gray);
	border-bottom: 1px solid var(--color-lightgray-dark);
	color: var(--color-gray);
	background: var(--color-lightgray);
	z-index: 200;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > a:hover {
	color: #333;
	background: var(--color-pink-light);
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > a {
	background: var(--color-pink);
	color: var(--color-white);
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > a::after {
	content: '>';
	display: inline-block;
	float: right;
	color: var(--color-white);
	margin: 0 5px;
	font-weight: normal;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details {
	display: none;
	position: absolute;
	z-index: 350;
	box-sizing: border-box;
	top: 75px;
	right: 21px;
	width: calc(.2 * (66.6% - 24px));
	height: 0;
	padding-top: calc( 1.33 * (.2 * (66.6% - 24px)));
	background: url(img/logo-vertical.png);
	background-color: var(--color-white);
	background-size: 90% auto;
	background-position: center center;
	background-repeat: no-repeat;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > .logo-details {
	display: block;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details:before {
	content: '';
	display: block;
	margin-top: 100%;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details .details {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: #fff;
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	text-decoration: none;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details .details img {
	width: 100%;
	height: 0;
	padding-top: 133.33%;
}
#header-menu .menu > li.test-kits > .sub-menu.shop-menu .submenu-items > li > .logo-details .details img {
	width: 100%;
	height: 0;
	padding-top: 100%;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details .details img.filled {
	background-position: center top;
	background-size: contain;
	background-repeat: no-repeat;
	background-color: var(--color-white);
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details .details .price {
	color: var(--color-pink);
	display: block;
	margin-top: .5em;
}

#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub {
	display: none;
	position: absolute;
	box-sizing: border-box;
	top: 60px;
	left: calc(33.3% + 24px);
	width: calc(66.6% - 24px);
	height: calc(100% - 60px);
	padding: 15px 20px 15px 0;
	text-align: left;
	list-style: none;
	z-index: 300;
	overflow-y: auto;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > .sub-sub {
	display: block;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > a.loading + .logo-details + .sub-sub {
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: left top;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li > a {
	clear: both;
	display: inline-block;
	max-width: 79%;
	color: #777;
	text-decoration: none;
	line-height: 1em;
	padding: .3em 0;
	z-index: 300;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li > a:hover {
	color: var(--color-pink);
	text-decoration: underline;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li.protected > a {
	font-style: italic;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li.all > a {
	color: var(--color-gray-dark);
	font-family: var(--font-oswald);
	padding-bottom: .5em;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li > .details {
	display: none;
}
#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li.protected > .details::before {
	content: 'Please login or register for FREE to get full access to all products.';
	background: url(img/apex-mega-bio.png) center bottom no-repeat var(--color-white);
	background-size: 90% auto;
	width: 100%;
	min-height: 170px;
	display: block;
	font-size: 16px;
	color: var(--color-gray);
}

/* STANDARD LINKS SUBMENU */
#header-menu .menu > li > .sub-menu.standard {
	display: flex;
	flex-wrap: wrap;
}
#header-menu .menu > li > .sub-menu.standard .submenu-heading {
	flex-basis: 100%;
}
#header-menu .menu > li > .sub-menu.standard .submenu-col {
	flex-basis: 50%;
	display: flex;
	flex-wrap: wrap;
	padding: 1em 0;
}
#header-menu .menu > li > .sub-menu.standard .submenu-col.left {
	border-right: 1px solid var(--color-gray);
}
#header-menu .menu > li > .sub-menu.standard li {
	display: block;
	flex-basis: 100%;
}
#header-menu .menu > li > .sub-menu.standard li > a {
	display: block;
	padding: .5em;
	margin: .5em;
	color: #777;
	text-decoration: none;
}
#header-menu .menu > li > .sub-menu.standard li > a:hover {
	color: var(--color-pink);
	text-decoration: underline;
}

/* MOBILE NAV */
#mobile-menu {
	display: none;	
	justify-content: space-between;
}
#mobile-menu .logo {
	padding: 30px 0;
	line-height: 0;
}
#mobile-menu .nav-toggle {
	display: block;
	margin: 0;
	width: 90px;
	height: 50px;
	padding: 35px 0;
	position: relative;
	text-align: center;
	z-index: 850;
}
#mobile-menu .nav-toggle a {
	display: block;
	width: 24px;
	height: 24px;
	margin: 13px auto 0 auto;
	padding-top: 5px;
}
#mobile-menu .nav-toggle a .lines {
	position: relative;
	display: block;
	height: 2px;
	margin-bottom: 4px;
	background: var(--color-slate);
	width: 100%;
	-webkit-transition: .3s ease all;
	-o-transition: .3s ease all;
	transition: .3s ease all;
}
#mobile-menu .nav-toggle a:hover .lines {
	background: var(--color-pink);
}
body.mobile-menu-open #mobile-menu .nav-toggle a .lines.top {
	-webkit-transform: rotate(45deg) translate(4px,2px);
	    -ms-transform: rotate(45deg) translate(4px,2px);
	        transform: rotate(45deg) translate(4px,2px);
}
body.mobile-menu-open #mobile-menu .nav-toggle a .lines.mid {
	display: none;
}
body.mobile-menu-open #mobile-menu .nav-toggle a .lines.bot {
	-webkit-transform: rotate(-45deg) translate(2px,0px);
	    -ms-transform: rotate(-45deg) translate(2px,0px);
	        transform: rotate(-45deg) translate(2px,0px);
}
#mobile-menu .cart a {
	display: inline-block;
	margin: 37px 0px;
	padding: 0px;
	height: 46px;
	width: 90px;
	text-decoration: none;
	text-align: center;
	transition: 0s all;
}
#mobile-menu .cart a::before {
	content: '';
	display: inline-block;
	vertical-align: top;
	background-image: url('img/cart-icons-gray.png');
	background-size: 44px 16px;
	background-position: left top;
	background-repeat: no-repeat;
	width: 22px;
	height: 16px;
	position: relative;
	margin: 0px;
	line-height: 24px;
	top: 15px;
}
#mobile-menu .cart a:hover::before {
	background-position-x: left -22px;
}
#mobile-menu .cart a .cart-count {
	position: relative;
	top: 12px;
	font-size: 14px;
}

/* METASLIDER */
.metaslider .slides [aria-hidden="true"] a {
	display: inherit !important; /* fix for metaslider hiding all slides ?? */
}

/* BITTERS CATEGORY PAGE */
#cat-page-banner .inner {
	line-height: 0;
	text-align: center;
}

/* TEST KITS CATEGORY PAGE */
#test-kits-cat-banner {
	height: 500px;
}
#test-kits-cat-banner .inner {
	width: 1900px;
	max-width: 1900px;
	position: absolute;
	left: 50%;
	margin-left: -950px;
}
#test-kits-cat-banner .caption-wrap {
	width: 600px;
	position: absolute;
	left: 50%;
	top: 10%;
	bottom: 10%;
	opacity: 1;
	background: var(--color-seafoam-light) !important;
	border-radius: 60px;
	color: var(--color-slate);
}
#test-kits-cat-banner .caption-wrap h2 {
	font-size: 39px;
	line-height: 1.2em;
	margin: 0 0 0em 0;
}
#test-kits-cat-banner .caption-wrap p {
	font-size: 17px;
	margin: 1em;
	text-align: left;
}
#test-kits-cat-banner .caption-wrap a {
	text-align: center;
}
#test-kits-cat-banner .flex-control-nav {
	bottom: 20px;
}
#test-kits-cat-banner .flex-control-nav a {
	background: var(--color-gray-light);
}
#test-kits-cat-banner .flex-control-nav a:hover {
	background: var(--color-slate);
}
#test-kits-cat-banner .flex-control-nav a.flex-active {
	background: var(--color-blue);
}

#test-kits-sidebar-slider {
	margin-bottom: 2em;
}
#test-kits-sidebar-slider .flexslider {
	background: none;
}
#test-kits-sidebar-slider .slides {
	padding: 0 !important;
}
#test-kits-sidebar-slider .slides li {
	padding: 0 0 50px 0 !important;
}
#test-kits-sidebar-slider .caption-wrap {
	width: 100%;
	position: relative;
	opacity: 1;
	background: #d3ecfb;
	border-radius: 30px;
	color: var(--color-slate);
}
#test-kits-sidebar-slider .caption-wrap .caption {
	padding: 20px 10px 10px 10px;
}
#test-kits-sidebar-slider .caption-wrap h2 {
	font-size: 20px;
	line-height: 1.2em;
	margin: 0 0 0em 0;
}
#test-kits-sidebar-slider .caption-wrap p {
	font-size: 14px;
	margin: 1em;
	text-align: left;
}
#test-kits-sidebar-slider .caption-wrap a {
	text-align: center;
}
#test-kits-sidebar-slider .flex-control-nav {
	bottom: 20px;
}
#test-kits-sidebar-slider .flex-control-nav a {
	background: var(--color-gray-light);
}
#test-kits-sidebar-slider .flex-control-nav a:hover {
	background: var(--color-slate);
}
#test-kits-sidebar-slider .flex-control-nav a.flex-active {
	background: var(--color-blue);
}


.category-subbanner {
	background: var(--color-pink-light);
}
.category-subbanner .inner {
	display: flex;
	justify-content: space-between;
}
.category-subbanner .inner > div {
	flex-basis: calc((100% - 200px) / 2);	
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
}
.category-subbanner .inner > div.rating {
	flex-basis: 200px;
}
.category-subbanner .menu-search {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.category-subbanner .menu-search form {
	position: relative;
	display: block;
	padding: 0 1em;
}
.category-subbanner .menu-search .mobile-search-close {
	display: none;
	position: absolute;
	left: 16px;
	width: 35px;
	height: 40px;
	background: var(--color-red);
	color: var(--color-white);
	line-height: 40px;
	font-size: 12px;
	border-radius: 14px 0 0 14px;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
	z-index: 0;
}
.category-subbanner .menu-search .mobile-search-close:hover {
	background: var(--color-red-dark);
}
.category-subbanner .menu-search input {
	display: inline-block;
	height: 40px;
	width: calc(80% - 60px);
	border: 1px solid #aaa;
	padding: .2em .5em;
	font-size: 16px;
	vertical-align: top;
}
.category-subbanner .menu-search button {
	display: inline-block;
	height: 40px;
	width: 60px;
	font-size: 14px;
	font-family: var(--font-oswald);
	letter-spacing: 0;
	text-transform: uppercase;
	color: var(--color-white);
	border: none;
	border-radius: 0 14px 14px 0;
	padding: 0 .5em;
	cursor: pointer;
	background: var(--color-pink);
}
.category-subbanner .menu-search button:hover {
	background: var(--color-imber);
}
.category-subbanner .rating img {
	margin: 1em auto 0 auto;
}
.category-subbanner .rating p {
	margin-top: 0;
	font-family: var(--font-oswald);
	font-size: 20px;
}
.category-subbanner .shipping p {
	font-family: var(--font-oswald);
	font-size: 20px;
}

/* HOME June 2025 */
.section h1 {
	font-size: 32px;
	line-height: 32px;
}
.section h1 .viewall {
	display: block;
	float: right;
	color: var(--color-gray);
	text-decoration: none;
	font-size: 16px;
}
.section h1 .viewall:hover {
	text-decoration: underline;
	color: var(--color-slate);
}
.section.lightgray {
	background: var(--color-lightgray);
}

.section.productslider {
	padding-top: 30px;
	padding-bottom: 30px;
}
.section.productslider .bx-wrapper .bx-next, 
.section.productslider .bx-wrapper .bx-prev {
	background-image: url('img/bxslider-controls.png');	
}

#home-blog {
	padding-top: 30px;
	padding-bottom: 30px;
}
#home-blog .articles {
	padding-top: 3em;
}
#home-blog .articles .post {
	flex-basis: 23%;
}
#home-blog .articles .post .postwrap {
	border: 1px solid var(--color-lightgray-dark);
	background: var(--color-lightgray);
}
#home-blog .articles .post .posttitle {
	background: var(--color-lightgray);
}
#home-blog .articles .post .posttitle a {
	color: var(--color-gray-dark);
	display: block;
}
#home-blog .articles .post .posttitle a:hover {
	color: var(--color-pink);
}
#home-blog .articles .post .postimg {
	line-height: 0;
}
#home-blog .articles .post .postimg a {
	display: block;
	line-height: 0;
}
#home-blog .articles .post .postimg a img {
	line-height: 0;
}
#home-blog .articles .post .excerpt-wrap {
	margin: 1em 20px;
	display: block;
}
#home-blog .articles .post .excerpt {
	margin: 0;
	display: block;
}
#home-blog .articles .post .readmore {
	background: var(--color-slate-light);
	color: var(--color-white) !important;
	width: calc(100% - 40px);
	margin: 1em 20px 20px 20px;
	padding: 1em;
}
#home-blog .articles .post .readmore:hover {
	background: var(--color-slate);
	color: var(--color-white) !important;
}


/* HOME PUBLIC July 2024 */
#home-control-health {
	background-color: var(--color-white);
	background-image: url(https://functionalmedicineshop.com/wp-content/uploads/2024/09/home-banner-couple.jpg);
	background-size: 1900px auto;
	background-position: center center;
	background-repeat: no-repeat;
}
#home-control-health .bg {
	position: absolute;
	width: 1200px;
	left: 50%;
	margin-left: -445px;
	z-index: 0;
}
#home-control-health .inner {
	display: flex;
	justify-content: space-between;
}
#home-control-health .image {
	z-index: 10;
	flex-basis: 40%;
	line-height: 0;
	padding-top: 30px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: end;
}
#home-control-health .image .name {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
}
#home-control-health .image p {
	color: var(--color-white);
	text-shadow: -2px -2px 6px black, -2px -2px 6px black, -2px -2px 6px black;
	font-size: 24px;
	line-height: 26px;
	text-align: center;
	margin: 0 auto .5em auto;
	letter-spacing: -1px;
}
#home-control-health .image p strong {
	font-size: 32px;
	letter-spacing: -2px;
}
#home-control-health .text {
	z-index: 10;
	flex-basis: 60%;
	padding: 40px 5%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#home-control-health .text h1 {
	font-size: 49px;
	line-height: 1.2em;
	margin: 0 0 0em 0;
}
#home-control-health .text p {
	font-size: 20px;
}
#home-control-health .text p.note {
	font-size: 16px;
	margin: 0;
}
#home-control-health .links {
	display: flex;
	justify-content: space-between;
	margin-top: 2em;
}
#home-control-health .links a {
	flex-basis: 45%;
	text-align: center;
	font-size: 20px;
	padding: .8em 1.5em;
	border: 3px solid var(--color-white);
	border-radius: 40px;
}

#home-simple-steps {
	background: linear-gradient(to bottom, #feffff 0%,#f7e7d8 100%);
	padding: 40px 0 30px;
	border-top: 8px solid var(--color-slate);
}
#home-simple-steps h2 {
	font-size: 45px;
	text-align: center;
	margin: 0;
}
#home-simple-steps p.subhead {
	font-size: 22px;
	text-align: center;
	margin: 0 0 2em 0;
}
#home-simple-steps .steps {
	display: flex;
	justify-content: space-evenly;
	padding-bottom: 10px;
}
#home-simple-steps .steps .step {
	flex-basis: 30%;
	display: flex;
	justify-content: space-between;
	flex-direction: column;
	position: relative;
	background: var(--color-white);
	border-radius: 20px;
	box-shadow: 0 1px 5px #0006;
	padding: 20px;
}
#home-simple-steps .steps .step .num-wrap {
	position: relative;
	text-align: center;
}
#home-simple-steps .steps .step .num {
	background: var(--color-blue);
	color: var(--color-white);
	border-radius: 25px;
	display: inline-block;
	height: 50px;
	width: 50px;
	line-height: 48px;
	font-size: 22px;
	text-align: center;
	margin: 0;
}
#home-simple-steps .steps .step .heading {
	text-align: center;
	font-size: 26px;
	font-family: var(--font-oswald);
	margin: .5em 0;
}
#home-simple-steps .steps .step .text {
	text-align: left;
}
#home-simple-steps .steps .step img {
	border-radius: 20px;
	margin-top: 10px;
}
#home-simple-steps .cta {
	display: flex;
	justify-content: center;
}
#home-simple-steps .cta div {
	flex-basis: 30%;
	text-align: center;
}
#home-simple-steps .cta a {
	margin-top: 15px;
	border: 3px solid var(--color-white);
	border-radius: 40px;
	font-size: 20px;
}

#home-press-logos {
	padding: 30px 0;
}
#home-press-logos .press {
	position: relative;
	display: flex;	
	left: 0;
	transition: 10s all linear;
}
#home-press-logos .press img {
	margin-right: 25px;
}
#home-press-logos .press img:last-child {
	margin-right: 0;
}
#home-press-logos .bx-wrapper {
	max-width: 100% !important;
	pointer-events: none;
}
#home-press-logos .bx-viewport {
	max-width: 100%;
	border: none;
	box-shadow: none;
	border-radius: 0;
	left: 0;
	right: 0;
}
#home-press-logos img {
	filter: grayscale(1);
	opacity: 0.6;
}

#home-longevity-roots h3 {
	font-size: 40px;
	text-align: center;
}
#home-products {
	background-image: url(//functionalmedicineshop.com/wp-content/uploads/2024/07/marble-bg.jpg);
	background-size: cover;
	background-position: center top;
	padding: 40px 0;
}
#home-products h4 {
	text-align: center;
	font-size: 40px;
	margin: 0;
}
#home-products p.subhead {
	font-size: 20px;
	text-align: center;
	margin: 0 0 1.5em 0;
}
#home-products .details {
	display: flex;
	justify-content: space-between;
}
#home-products .details .image {
	flex-basis: 30%;
}
#home-products .details .text {
	flex-basis: 60%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-radius: 60px 0 0 60px;
	background: #269fe933;
	padding: 20px 40px 30px 40px;
}
#home-products .details .text ul {
	padding: 0 0 1em 1em;
}
#home-products .details .text ul li {
	margin-bottom: 1em;
}
#home-products .details .text ul li:last-child {
	margin-bottom: 0;
}
#home-products .details .text a {
	width: 200px;
	text-align: center;
	border-radius: 40px;
	border: 3px solid var(--color-white);
}

#home-labs {
	background: var(--color-white);
	padding: 40px 0;
}
#home-labs h4 {
	text-align: center;
	font-size: 40px;
	margin: 0;
}
#home-labs p.subhead {
	font-size: 20px;
	text-align: center;
	margin: 0 0 1.5em 0;
}
#home-labs .details {
	display: flex;
	justify-content: space-between;
}
#home-labs .details .image {
	flex-basis: 30%;
}
#home-labs .details .text {
	flex-basis: 60%;
	display: flex;
	flex-direction: column;
	justify-content: center;
	border-radius: 0 60px 60px 0;
	background: #269fe933;
	padding: 20px 40px 30px 40px;
}
#home-labs .details .text p {
	margin: 1em 0 0 0;
}
#home-labs .details .text a {
	margin-top: 1em;
	width: 200px;
	text-align: center;
	border-radius: 40px;
	border: 3px solid var(--color-white);
}

#home-community-favorites {
	padding: 20px 0;
}
#home-community-favorites .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	overflow: visible;
}
#home-community-favorites .best-single {
	flex-basis: 50%;
}
#home-community-favorites .best-list {
	flex-basis: 50%;
	text-align: center;
}
#home-community-favorites .best-list h5 {
	font-size: 32px;
	border-bottom: 1px solid var(--color-gold);
	display: inline-block;
	width: auto;
	padding: .25em 0;
	margin: 0 0 1em 0;
}
#home-community-favorites .best-list .products {
	display: flex;
	justify-content: space-between;
}
#home-community-favorites .best-list .products .product {
	flex-basis: 30%;
}	
#home-community-favorites .best-list .products .product img {
	padding: 0 10px;
}
#home-community-favorites .best-list .products .product h6 {
	font-weight: 400;
	text-transform: uppercase;
	padding: 1em 0 0 0 !important;
	margin: 0;
	font-size: 1em;
	color: var(--color-gold);
}
#home-community-favorites .best-list .products .product .brand {
	display: block;
	font-size: 12px;
	color: var(--color-gray-light);
	padding: 0 0 .5em 0;
}
#home-community-favorites .best-list .products .product a {
	padding: .5em 2em;
	display: inline-block;
	margin: .5em 0 0 0;
}

#home-testimonials {
	background: var(--color-peach-light);
}
#home-testimonials .inner {
	padding: 80px 80px 20px 80px;
}
#home-testimonials .bx-viewport {
	background: #f7f7f7;
	box-sizing: content-box;
}
#home-testimonials .bx-wrapper .bx-pager.bx-default-pager a {
	background: var(--color-gray-light);
}
#home-testimonials .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: var(--color-slate);
}
#home-testimonials .review {
	padding: 20px;
	text-align: center;
}
#home-testimonials .review .stars {
	display: block;
	margin: 0 auto;
	height: 40px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
}
#home-testimonials .review .stars-1 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-1.png');
}
#home-testimonials .review .stars-2 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-2.png');
}
#home-testimonials .review .stars-3 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-3.png');
}
#home-testimonials .review .stars-4 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-4.png');
}
#home-testimonials .review .stars-5 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-5.png');
}
#home-testimonials .review h6 {
	margin-bottom: 0;
	font-size: 16px;
	margin-top: 1.5em;
}
#home-bottom-links {
	background: var(--color-peach-light);
}
#home-bottom-links .links {
	display: flex;
	gap: 2em;
	justify-content: center;
	margin: 2em auto;
}
#home-bottom-links .links a {
	flex: 0 1 270px;
	text-align: center;
	font-size: 20px;
	padding: .8em 1.5em;
	border: 3px solid var(--color-white);
	border-radius: 40px;
}

/* HOME PAGE TEST KITS */
#home-test-kit-slider {
	background: var(--color-lightgray);
}
#home-test-kit-slider .metaslider.ms-theme-outline .flexslider ol.flex-control-nav:not(.flex-control-thumbs) {
	bottom: 5px;
}
#home-test-kit-slider .metaslider.ms-theme-outline .flexslider ol.flex-control-nav:not(.flex-control-thumbs) li a {
	border: 2px solid var(--color-slate-light);
	width: 45px;
	height: 10px;
	border-radius: 10px;
}
#home-test-kit-slider .metaslider.ms-theme-outline .flexslider ol.flex-control-nav li a.flex-active, #home-test-kit-slider .metaslider.ms-theme-outline .flexslider ol.flex-control-nav:not(.flex-control-thumbs) li a:hover{
	border: 2px solid var(--color-slate);
	background: var(--color-gold);
}
#home-test-kit-slider .caption-wrap {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	display: flex;
	background: none;
	opacity: 1;
	line-height: inherit;
	font-size: inherit;
	pointer-events: none;
	background: rgba(255,255,255,0.25);
}
#home-test-kit-slider .caption-wrap .caption {
	text-align: center;
	width: 60%;
	padding: 30px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#home-test-kit-slider .caption-wrap .caption h1 {
	color: var(--color-slate-light);
	font-size: 49px;
	line-height: 1.2em;
	margin: 0em 0 .25em 0;
	text-shadow: 1px 1px 1px #fff, 0px 0px 2px #fff;
}
#home-test-kit-slider .caption-wrap .caption h2 {
	color: var(--color-slate);
	font-family: var(--font-open);
	font-size: 22px;
	margin: 0;
	text-shadow: 1px 1px 1px #fff, 0px 0px 2px #fff;
}
#home-test-kit-slider .caption-wrap .caption h3 {
	color: var(--color-slate-light);
	font-family: var(--font-open);
	font-size: 18px;
	font-weight: bold;
	margin: 1em 0 0 0;
	text-shadow: 1px 1px 1px #fff, 0px 0px 3px #fff;
	display: inline-block;
	max-width: 450px;
	text-align: left;
	margin: 4% 0 0 0;
}
#home-test-kit-slider .caption-wrap .caption .aside.left {
	text-align: left;
}
#home-test-kit-slider .caption-wrap .caption .aside.right {
	text-align: right;
}

#home-test-kit-slider .slide-16987 .caption-wrap .caption {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	justify-content: start;
}

#home-test-kit-slider .slide-16989 .caption-wrap .caption {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	justify-content: start;
	padding-left: 125px;
}
#home-test-kit-slider .slide-16989 .caption-wrap .caption h1 {
	text-align: left;
}
#home-test-kit-slider .slide-16989 .caption-wrap .caption h2 {
	text-align: left;
}
#home-test-kit-slider .slide-16989 .caption-wrap .caption h3 {
	max-width: 330px;
}

#home-test-kit-subheader {
	position: relative;
	background: var(--color-peach-light);
	z-index: 200;
	border-bottom: 1px solid var(--color-slate);
	overflow: visible;
	text-align: center;
}
#home-test-kit-subheader a {
	display: block;
	padding: 1em 1.5em;
	text-transform: uppercase;
	font-weight: 400;
	color: var(--color-slate);
	text-decoration: none;
	font-family: var(--font-oswald);
	letter-spacing: .2em;
	font-size: 13px;
}

#home-banner-slider .inner {
	max-width: 100%;
	max-height: 550px;
}
#home-banner-slider .bx-viewport {
	left: 0;
	border-radius: 0;
	border: none;
	box-shadow: none;
}
#home-banner-slider .slide {
	background-color: var(--color-white);
}
#home-banner-slider .slide-inner {
	display: flex;
	justify-content: space-between;
	max-width: 100%;
	width: 960px;
	margin: 0 auto;
	padding: 20px 0px;
	background-color: var(--color-white);
}
#home-banner-slider .slide-inner .text {
	flex-basis: 55%;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	max-width: 520px;	
	order: 2;
}
#home-banner-slider .slide-inner .text h1 {
	color: var(--color-slate);
	font-size: 49px;
	line-height: 1.2em;
	margin: 0 0 .25em;
	text-shadow: 1px 1px 1px #fff,0 0 2px #fff;
}
#home-banner-slider .slide-inner .text h2 {
	color: var(--color-slate-light);
	font-family: var(--font-open);
	font-size: 22px;
	margin: 0 0 .5em 0;
	text-shadow: 1px 1px 1px #fff,0 0 2px #fff;
}
#home-banner-slider .slide-inner .text h3 {
	color: var(--color-slate-light);
	font-family: var(--font-open);
	font-size: 18px;
	margin: 0 0 .5em 0;
	text-shadow: 1px 1px 1px #fff,0 0 2px #fff;
}
#home-banner-slider .slide-inner .info {
	margin: 20px 0;
}
#home-banner-slider .slide-inner .link .button {
	font-size: 20px;
	padding: .8em 2.5em;
	border: 3px solid var(--color-white);
	border-radius: 40px;
}
#home-banner-slider .slide-inner .note {
	font-size: 12px;
}
#home-banner-slider .slide-inner .image {
	display: flex;
	flex-direction: column;
	justify-content: start;
	flex-basis: 41%;
}
#home-banner-slider .slide.own-health .anim-text {
	overflow: hidden;
	position: relative;
}
#home-banner-slider .slide.own-health .anim-text h1:first-child {
	position: relative;
}
#home-banner-slider .slide.own-health .anim-text h1 {
	position: absolute;
	width: 100%;
	top: 0;
	left: 100%;
}
#home-banner-slider .slide.own-health .anim-text h1.active-in {
	left: 0%;
	transition: 1.5s ease-in;
}
#home-banner-slider .slide.own-health .anim-text h1.active-out {
	left: -100%;
	transition: .75s ease-in all;
}



#home-test-kit-discover {
	background: var(--color-peach);
}
#home-test-kit-discover h2 {
	font-size: 40px;
	text-align: center;
	margin: 1em 0;
}

#home-test-kit-targeted-panels {
	background: linear-gradient(to bottom, #ffffff 0%,#f5f5f5 100%);
}
#home-test-kit-targeted-panels .inner {
	padding: 40px 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#home-test-kit-targeted-panels h2 {
	font-size: 40px;
	text-align: center;
	margin: 0;
	flex-basis: 100%;
}
#home-test-kit-targeted-panels .panels {
	flex-basis: 100%;
	display: flex;
	justify-content: space-between;
	margin-top: 30px;
	text-align: left;
}
#home-test-kit-targeted-panels .panels .panel {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-basis: 31%;
	background: var(--color-white);
	border: 1px solid var(--color-gray-light);
	border-radius: 16px;
	overflow: hidden;
}
#home-test-kit-targeted-panels .panels .panel .title {
	padding: 20px 20px 0 20px;
	color: var(--color-gold);
	font-size: 20px;
	margin: 0 0 .5em 0;
}
#home-test-kit-targeted-panels .panels .panel .info {
	padding: 0 20px 0px 20px;
	font-size: 14px;
}
#home-test-kit-targeted-panels .panels .panel .bot img {
	margin: 1em auto 0 auto;
	max-width: 50%;
	display: block;
	border: none;
	box-shadow: none;
}
#home-test-kit-targeted-panels .panels .panel a {
	margin: 20px;
	padding: 1em;
	width: calc(100% - 40px);
	box-sizing: border-box;
	text-align: center;
	border-radius: 40px;
}
#home-test-kit-targeted-panels .shopall {
	margin: 40px auto 0 auto;
	border: 3px solid var(--color-white);
	border-radius: 40px;
	text-align: center;
	font-size: 20px;
	width: 31%;
}

#home-test-by-condition {
	padding-bottom: 20px;
}

#home-test-reports h2 {
	margin-top: 1em;
}

#home-test-kit-reviews-press {
	background: var(--color-gray-dark);
}
#home-test-kit-reviews-press > .inner {
	display: flex;
}
#home-test-kit-reviews-press > .inner > div {
	flex-basis: 50%;
}

#home-test-kit-testimonials {
}
#home-test-kit-testimonials .inner {
	padding: 80px 80px 20px 80px;
}
#home-test-kit-testimonials .bx-viewport {
	background: #f7f7f7;
	box-sizing: content-box;
}
#home-test-kit-testimonials .bx-wrapper .bx-pager.bx-default-pager a {
	background: var(--color-gray-light);
}
#home-test-kit-testimonials .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: var(--color-slate);
}
#home-test-kit-testimonials .review {
	padding: 20px;
	text-align: center;
}
#home-test-kit-testimonials .review .stars {
	display: block;
	margin: 0 auto;
	height: 40px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: auto 100%;
}
#home-test-kit-testimonials .review .stars-1 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-1.png');
}
#home-test-kit-testimonials .review .stars-2 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-2.png');
}
#home-test-kit-testimonials .review .stars-3 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-3.png');
}
#home-test-kit-testimonials .review .stars-4 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-4.png');
}
#home-test-kit-testimonials .review .stars-5 {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/stars-5.png');
}
#home-test-kit-testimonials .review h6 {
	margin-bottom: 0;
	font-size: 16px;
	margin-top: 1.5em;
}

#home-test-kit-press {
	display: flex;
	flex-direction: column;
	justify-content: center;	
}
#home-test-kit-press .inner {
	padding: 40px 0 60px 0;
	text-align: center;
}
#home-test-kit-press h2 {
	font-size: 32px;
	margin: 0;
	display: inline-block;
	position: relative;
	padding: 0 .5em 10px .5em;
	color: var(--color-lightgray);
}
#home-test-kit-press h2::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	right: 0;
	height: 4px;
	background-color: var(--color-gold);
}
#home-test-kit-press .bx-wrapper {
	padding: 0 75px;
}
#home-test-kit-press .bx-viewport {
	border: none;
	box-shadow: none;
	left: 0;
	border-radius: 0;
	margin-top: 20px;
}
#home-test-kit-press .bx-viewport img {
	/*box-shadow: 0 0 2px var(--color-gray-light);*/
	opacity: .8;
}	
#home-test-kit-press .bx-controls-direction a {
	transition: none;
}

#home-test-kit-quiz {
	background: var(--color-lightgray);
	padding: 40px 0;
}
#home-test-kit-quiz .inner {
	display: flex;
	justify-content: center;
}
#home-test-kit-quiz .text {
	flex-basis: 45%;
	padding: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#home-test-kit-quiz h2 {
	font-size: 40px;
	margin: 0em;
}
#home-test-kit-quiz p {
	font-size: 20px;
}
#home-test-kit-quiz a {
	margin-top: 15px;
	border: 3px solid var(--color-white);
	border-radius: 40px;
	font-size: 21px;
}
#home-test-kit-quiz .image {
	display: flex;
	flex-direction: column;
	justify-content: end;
	flex-basis: 25%;
	margin-left: 5%;
	overflow: hidden;
}
#home-test-kit-quiz .image img {
	max-width: 150%;
	width: 150%;
	left: -50%;
	position: relative;
}

#home-test-kit-guide {
	background: var(--color-peach-light);
}
#home-test-kit-guide .inner {
	padding: 10px 0 50px 0;
}
#home-test-kit-guide h2 {
	font-size: 32px;
}
#home-test-kit-guide .guide {
	background: var(--color-white);
	padding: 20px;
	text-align: center;
	width: 49%;
	margin: 0 auto;
}
#home-test-kit-guide .guide img {
	display: block;
	margin: 0 auto 20px auto;
}
#home-test-kit-guide .guide .button {
	width: 100%;
}

#home-test-kit-explore {
	background: var(--color-lightgray);
	text-align: center;
}
#home-test-kit-explore .shopall {
	width: auto;
	margin: 40px auto 0 auto;
	border: 3px solid var(--color-white);
	border-radius: 40px;
	text-align: center;
	font-size: 20px;
}

#home-test-kit-explore-2 {
	background: var(--color-white);
	text-align: center;
}
#home-test-kit-explore-2 .shopall {
	width: auto;
	margin: 40px auto 40px auto;
	border: 3px solid var(--color-white);
	border-radius: 40px;
	text-align: center;
	font-size: 20px;
}

#home-test-kit-quality {
	background: var(--color-lightgray);
}
#home-test-kit-quality .inner {
	display: flex;
	justify-content: space-between;
}
#home-test-kit-quality .text {
	flex-basis: 45%;
	padding: 60px 0;
}
#home-test-kit-quality .text h2 {
	color: var(--color-slate);
	font-size: 32px;
	line-height: 1.2em;
	margin: 0 0 1em 0;
}
#home-test-kit-quality .info {
	margin: 20px 0 30px -20px;
	border-spacing: 20px;
}
#home-test-kit-quality .info tr td:first-child {
	width: 16px;
}
#home-test-kit-quality .info tr td:first-child .circle {
	width: 16px;
	height: 16px;
	border-radius: 16px;
	overflow: hidden;
	margin-top: 2px;
}
#home-test-kit-quality .info tr td:first-child .circle.red {
	background-color: #e06942;
}
#home-test-kit-quality .info tr td:first-child .circle.orange {
	background-color: #eec655;
}
#home-test-kit-quality .info tr td:first-child .circle.green {
	background-color: #4e8271;
}
#home-test-kit-quality .info tr td:first-child .circle.blue {
	background-color: #20a7c1;
}
#home-test-kit-quality .info td {
	vertical-align: top;
}
#home-test-kit-quality .image {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-basis: 45%;
}

#home-test-kit-resources {
	background: var(--color-gold-light);
}
#home-test-kit-resources .inner {
	display: flex;
	justify-content: space-between;
}
#home-test-kit-resources .text {
	flex-basis: 45%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
#home-test-kit-resources .text h2 {
	color: var(--color-slate);
	font-size: 32px;
	line-height: 1.2em;
	margin: 0 0 1em 0;
}
#home-test-kit-resources .image {
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-basis: 40%;
	margin-right: 5%;
}
#home-test-kit-resources .image img {
	max-height: 80%;
}

#home-test-kit-faq {
	background: var(--color-lightgray);
	padding: 0 !important;
}
#home-test-kit-faq::before { 
	content: '';
	display: block;
	position: absolute;
	background: var(--color-white);
	width: 120%;
	height: 500px;
	left: -10%;
	top: 0;
	border-radius: 50%;
	z-index: 1;
}	
#home-test-kit-faq::after { 
	content: '';
	display: block;
	position: absolute;
	background: var(--color-white);
	width: 100%;
	top: 150px;
	bottom: 0;
	z-index: 2;
}	
#home-test-kit-faq .inner { 
	padding: 40px 0 40px 0;
	z-index: 10;
}
#home-test-kit-faq h2 {
	font-size: 32px;
	text-align: center; 
}
#home-test-kit-faq .faq-list {
	max-width: 960px;
	margin: 0 auto;
	border-top: 2px solid var(--color-peach);	
}
#home-test-kit-faq .faq {
	border-bottom: 2px solid var(--color-peach);	
	background: var(--color-white);	
	max-height: 44px;
	overflow: hidden;
	transition: max-height 3s;
	transition: background .3s;
}
#home-test-kit-faq .faq.active {
	background: var(--color-lightgray);	
	max-height: 1000px;
}
#home-test-kit-faq .faq .q {
	cursor: pointer;
	padding: 10px 50px 10px 10px;
	position: relative;
}
#home-test-kit-faq .faq.active .q {
	font-weight: bold;
}
#home-test-kit-faq .faq .q::after {
	content: url('https://functionalmedicineshop.com/wp-content/uploads/2024/01/down-arrow-gold.png');
	width: 20px;
	height: 20px;
	position: absolute;
	right: 10px;
	top: 11px;
	transition: .3s ease all;
}
#home-test-kit-faq .faq.active .q::after {
	transform: rotate(180deg);
}
#home-test-kit-faq .faq .a {
	display: none;
	padding: 10px;
}
#home-test-kit-faq .faq.active .a {
	display: block;	
}

#home-test-kit-cta .inner {
	display: flex;
	padding: 40px 0;
	justify-content: space-evenly;
}
#home-test-kit-cta .inner .text {
	flex-basis: 50%;
}
#home-test-kit-cta .inner .text h2 {
	font-size: 40px;
}
#home-test-kit-cta .inner .text h3 {
	font-size: 24px;
	margin-bottom: 1.5em;
}
#home-test-kit-cta .inner .text img {
	display: none;
}
#home-test-kit-cta .inner .image {
	flex-basis: 400px;
}

#home-test-kit-leaky-gut-class {
	background: var(--color-gold-light);
	text-align: center;
	padding-bottom: 2em;
}
#home-test-kit-leaky-gut-class .inner h2 {
	font-size: 40px;
	margin-bottom: 0;
	color: var(--color-gold);
}
#home-test-kit-leaky-gut-class .inner h3 {
	font-size: 24px;
	margin-top: 0;
	margin-bottom: 1.5em;
	color: var(--color-blue);
}
#home-test-kit-leaky-gut-class .inner h4 {
	font-size: 20px;
	margin-bottom: 1.5em;
}
#home-test-kit-leaky-gut-class .inner h5 {
	font-size: 20px;
	margin-bottom: -1em;
	font-style: italic;
}


#home-test-kit-find {
	background: var(--color-peach-light);
}
#home-test-kit-find .inner {
	padding: 40px 0 80px 0;
}
#home-test-kit-find .inner h2 {
	font-size: 32px;
}
#test-conditions {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#test-conditions .condition {
	flex-basis: 30%;
	background: var(--color-white);
	padding-top: 5px;
	text-align: center;
}
#test-conditions .condition h2 {
	padding: 0 20px;
}
#test-conditions .condition p {
	padding: 0 20px;
}
#test-conditions .condition-button {
	flex-basis: 30%;
	padding: 10px 20px 20px 20px;
	background: var(--color-white);
	text-align: center;
}
#test-conditions .condition-button .button {
	padding: 1em;
	width: 100%;
}	

#home-test-kit-how {
	background: var(--color-lightgray);
	text-align: center;
}
#home-test-kit-how .inner {
	padding: 80px 0;
	z-index: 10;
}
#home-test-kit-how h2 {
	margin: .25em 1em 1em 1em;
	font-size: 40px;
}
#home-test-kit-how h2 span {
	color: var(--color-gold);
}
#home-test-kit-how h3 {
	margin: 0;
	font-size: 24px;
}
#home-test-kit-how .steps {
	display: flex;
	justify-content: space-between;
	position: relative;
}
#home-test-kit-how .steps.set2 {
	margin-top: 30px;
}
#home-test-kit-how .steps::before {
	content: '';
	display: block;
	height: 2px;
	background: var(--color-peach);
	position: absolute;
	top: 20px;
	width: 100%;
	z-index: 1;
}
#home-test-kit-how .steps .step {
	flex-basis: 33%;
	position: relative;
}
#home-test-kit-how .steps .step .num-wrap {
	position: relative;
}
#home-test-kit-how .steps .step .num-wrap::before {
	content: '';
	display: block;
	height: 12px;
	background: var(--color-lightgray);
	position: absolute;
	top: 15px;
	width: calc(50% + 50px);
	z-index: 1;
}
#home-test-kit-how .steps .step.step2 .num-wrap::before,
#home-test-kit-how .steps .step.step5 .num-wrap::before {
	width: 100px;
	left: 50%;
	margin-left: -50px;
}
#home-test-kit-how .steps .step.step3 .num-wrap::before,
#home-test-kit-how .steps .step.step6 .num-wrap::before {
	right: 0;
}
#home-test-kit-how .steps .step .num {
	background: var(--color-gold);
	color: var(--color-white);
	border-radius: 20px;
	display: inline-block;
	height: 40px;
	width: 40px;
	line-height: 32px;
	text-align: center;
	border: 4px solid #fff;
	box-shadow: 0 0 0px 2px var(--color-peach-dark);
	margin: 0 0 1em 0;
	position: relative;
	z-index: 99;
}
#home-test-kit-how .steps .step .heading {
	font-weight: bold;
	color: var(--color-gold);
	font-size: 18px;
	padding: 0 10px;
	line-height: 1.1em;
	margin-bottom: 0;
}
#home-test-kit-how .steps .step .text {
	font-size: 14px;
	padding: 0 10px;
}

#home-test-kit-bestsellers .inner {
	padding: 20px 0 40px 0;
}
#home-test-kit-bestsellers .inner h2 {
	font-size: 32px;
}
#home-test-kit-bestsellers .inner .products h2 {
	font-size: 16px;
}

#home-test-kit-how.dark {
	/*background: var(--color-peach);*/
	background: var(--color-gray-dark);
	color: var(--color-white);
	padding: 0;
}
/*
#home-test-kit-how.dark::before { 
	content: '';
	display: block;
	position: absolute;
	background: var(--color-gray-dark);
	width: 120%;
	height: 500px;
	left: -10%;
	top: 0;
	border-radius: 50%;
	z-index: 1;
}	
#home-test-kit-how.dark::after { 
	content: '';
	display: block;
	position: absolute;
	background: var(--color-gray-dark);
	width: 100%;
	top: 150px;
	bottom: 0;
	z-index: 2;
}	
*/
#home-test-kit-how.dark .inner {
	padding: 40px 0 80px 0;
}
#home-test-kit-how.dark h2 {
	font-size: 45px;
}
#home-test-kit-how.dark h2 span {
	color: var(--color-peach);
}
#home-test-kit-how.dark .steps .step .num {
	background: var(--color-peach);
	color: var(--color-gray-dark);
}
#home-test-kit-how.dark .steps .step .num-wrap::before { 
	background: var(--color-gray-dark);
}
#home-test-kit-how.dark .steps .step .heading {
	color: var(--color-peach);
}


/* HOME PAGE */
#home-cta {
	background-color: var(--color-lightgray);
}
#home-cta .inner {
	display: flex;
	justify-content: space-between;
}
#home-cta .cta-box {
	flex-basis: 50%;
	text-align: right;
}
#home-cta .cta-box .text {
	display: inline-block;
	text-align: center;
	padding: 40px 60px 40px 0;
	width: 600px;	
}
#home-cta .cta-box .text h2 {
	font-size: 24px;
	margin: 0;
}
#home-cta .cta-box .text h3 {
	font-size: 24px;
	margin: .6em 0 0 0;
}
#home-cta .cta-box .text h4 {
	font-size: 24px;
	line-height: 1.1em;
	margin: 1em 0;
}
#home-cta .cta-box .text h5 {
	font-size: 20px;
	line-height: 1.2em;
	color: var(--color-blue);
	margin-bottom: 1.5em;
}
#home-cta .cta-box .text h5 strong {
	font-size: 22px;
	letter-spacing: 1px;
}
#home-cta .cta-box .text h6 {
	font-size: 16px;
	color: var(--color-slate-dark);
	margin: 1.5em 0 1em 0;
}
#home-cta .cta-box .text a.button:hover {
	background: var(--color-blue-dark);
}
#home-cta .cta-img {
	flex-basis: 50%;
	background-image: url('img/home-tablet-banner.png');
	background-size: cover;
	background-position: left top;
	display: flex;
	align-items: stretch;
}
#home-cta .cta-img .welcome-vid {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	background: rgba(255,255,255,.35);
}
#home-cta .cta-img .welcome-vid iframe {
	max-width: 100%;
}

#home-register {
	text-align: center;
	background: var(--color-slate-light);
	max-height: 0;
	padding: 0;
	transition: .3s all;
}
#home-register.active {
	max-height: 1000px;
	padding: 40px 0;
}
#home-register h2 {
	font-size: 24px;
	margin-top: 0;
	color: var(--color-white);
}
#home-register form {
	max-width: 344px;
	margin: 0 auto;
	background: var(--color-white);
}
#home-register form .username-row {
	display: none;
}
#home-register form .submit-row {
	text-align: center;
}
#home-register form .submit-row button {
	width: 100%;
	margin: 10px 10px 0 3px;
	background: var(--color-blue);
}
#home-register form .submit-row button:hover {
	background: var(--color-blue-dark);
}
#home-register .anr_captcha_field {
	padding: 0 10px 0 3px;
}
#home-register .woocommerce-notices-wrapper {
	background: var(--color-white);
}

#home-brands {
	text-align: center;
	padding: 40px 0;
	background: var(--color-white);
}
#home-brands h2 {
	font-size: 24px;
}
#home-brands .brands img {
	width: 190px;
	height: auto;
	padding: 0 15px;
	margin: 2px;
	border: 1px solid var(--color-peach);
}
#home-brands h3 {
	font-size: 30px;
	line-height: 1.1em;
}
#home-brands h3 span {
	font-size: 18px;
	line-height: 2em;
	color: var(--color-gold);
}
#home-brands h4 {
	font-size: 30px;
	margin-top: 0.5em;
}

#home-joinnow {
	background: var(--color-peach);
	padding: 40px 0;
	text-align: center;
}
#home-joinnow .inner {
	overflow: visible;
}
#home-joinnow h2 {
	font-size: 24px;
	margin: 0;
}
#home-joinnow h3 {
	font-size: 30px;
	line-height: 1.1em;
}
#home-joinnow h4 {
	font-size: 20px;
	line-height: 1.2em;
}

.discount {
	position: relative;
	overflow: visible;
	margin: 0 auto 2em auto;
	display: block;
	text-align: center;
}
.discount .discount-slide {
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	width: 200px;
	height: 50px;
	display: block;
}
.discount h5 {
	position: absolute;
	top: 0;
	left: -5%;
	width: 100%;
	height: 50px;
	font-size: 20px;
	line-height: 1.2em;
	color: var(--color-white);
	border: 2px solid var(--color-slate-light);
	background: var(--color-slate-light);
	display: inline-block;
	padding: 10px;
	margin: 0;
	z-index: 90;
	transition: all 1s ease;
}
.discount h5.active {
	left: -95%;
}
.discount #discount-hover {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	border: 2px dashed var(--color-slate-dark);
	background: var(--color-gold);
	z-index: 0;
	cursor: pointer;
	text-decoration: none;
}
.discount #discount-hover a {
	display: block;
	text-decoration: none;
	color: var(--color-slate);
}
.discount #discount-hover p.title {
	font-family: var(--font-dancing);
	font-size: 20px;
	font-weight: bold;
	line-height: 50px;
	color: var(--color-slate-dark);
	text-decoration: none;
	margin: 0;
}
.discount .discount-info {
	display: block;
	position: absolute;
	width: 100%;
	background: var(--color-slate);
	color: var(--color-white);
	padding: 1em;
	top: 60px;
	opacity: 0;
	transition: all 1s ease;
}
.discount .discount-info.active {
	opacity: 1;
}
.discount .discount-info::before {
	content: '';
	border: 10px solid transparent;
	border-bottom: 10px solid var(--color-slate);
	position: absolute;
	top: -20px;
	left: 50%;
	margin-left: -5px;
}
.discount .discount-info p {
	margin: 0;
	font-size: 14px;
}

#home-praise {
	background-image: url('img/herbs-background.jpg');
	padding: 80px 0;
	text-align: center;
}
#home-praise .inner {
	background: var(--color-white);
	padding: 40px 0;
}
#home-praise h2 {
	font-size: 24px;
	color: var(--color-peach-dark);
	margin: 0 0 2em 0;
}
#home-praise .reviews {
	display: flex;
	justify-content: space-between;
}
#home-praise .reviews .review {
	flex-basis: 25%;
	padding: 0 30px;
}
#home-praise .reviews .review img {
	width: 100px;
	heigth: 100px;
	border-radius: 50px;
}
#home-praise .reviews .review h4 {
	font-size: 14px;
	text-transform: uppercase;
	letter-spacing: .1em;
	margin: .5em 0 0 0;
}
#home-praise .reviews .review h5 {
	font-size: 20px;
	margin: 1em 0;
}
#home-praise .reviews .review p {
	font-size: 14px;
}

#home-articles {
	background: var(--color-lightgray);
	padding: 40px 0 20px 0;
	text-align: center;
}
#home-articles .articles .post {
	flex-basis: calc(90% / 3);
}
#home-articles .articles .post:last-child {
	display: none;
}

/* VIDEO TESTIMONIALS */
.video-testimonials {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.video-testimonials .video {
	flex-basis: 48%;
	margin: 1em 0;
}

/* FMA QUIZ POPUP */
#pum-18649.pum-active {
	opacity: 1 !important;
	display: block !important;
}
#pum-18649.pum-active .pum-container {
	opacity: 1 !important;
	display: block !important;
	background: var(--color-white);
	padding: 1em;
}
#pum-18649 .pum-container.loading::after {
	content: '';
	background-color: #ffffff;
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2999999999;
	opacity: .8;
}
#pum-18649 .pum-title {
	text-align: center;
	font-family: var(--font-oswald);
	font-weight: 400;
	font-size: 32px;
	line-height: 48px;
	border-bottom: 1px solid var(--color-gold);
	margin-bottom: 10px;
}
#pum-18649 .pum-content > p {
	margin: 10px auto;
}

/* FMA QUIZ FORM */
#fma-quiz .quiz-step {
	display: none;
}
#fma-quiz .quiz-step.active {
	display: block;
}
#fma-quiz .quiz-step h2 {
	text-align: center;
	margin: 0;
}
#fma-quiz .quiz-row {
	clear: both;
	border-top: 1px solid #ccc;
}
#fma-quiz .quiz-row::after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
#fma-quiz .quiz-row p {
	float: left;
	margin: .5em 0;
}
#fma-quiz .quiz-row .inputs {
	float: right;
	margin: .25em 0;
}
#fma-quiz .quiz-row.info {
	border: none;
}
#fma-quiz .quiz-row.info .inputs {
	margin: 0;
}
#fma-quiz .quiz-row.nav  {
	position: relative;
}
#fma-quiz .quiz-row.nav .progress {
	text-align: center;
	margin: 4px auto;
	width: calc(100% - 280px - 16px);
	background: var(--color-lightgray);
	border: 1px solid var(--color-gray-light);
	position: relative;
}
#fma-quiz .quiz-row.nav .progress h3 {
	line-height: 54px;
	font-size: 20px;
	position: relative;
	margin: 0;
	z-index: 10;
}
#fma-quiz .quiz-row.nav .progress::after {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	bottom: 0;
	background: var(--color-gray-light);
	z-index: 1;
}
#fma-quiz .quiz-step[data-quiz-step="1"] .quiz-row.nav .progress::after {
	width: 25%;
}
#fma-quiz .quiz-step[data-quiz-step="2"] .quiz-row.nav .progress::after {
	width: 50%;
}
#fma-quiz .quiz-step[data-quiz-step="3"] .quiz-row.nav .progress::after {
	width: 75%;
}
#fma-quiz .quiz-step[data-quiz-step="4"] .quiz-row.nav .progress::after {
	width: 100%;
}
#fma-quiz .quiz-row.nav a {
	position: absolute;
	top: 4px;
	padding: 1em 0;
	text-align: center;
	width: 140px;
}
#fma-quiz .quiz-row.nav .prev {
	left: 0;
}
#fma-quiz .quiz-row.nav .next {
	right: 0;
}
#fma-quiz .quiz-row.contact .inputs {
	float: none;
	margin: 1em 0;
	display: flex;
	justify-content: space-between;
}
#fma-quiz .quiz-row.submit {
	border: none;
	text-align: center;
}
#fma-quiz .quiz-row input[type="radio"] {
	float: left;
	display: none;
}
#fma-quiz .quiz-row input[type="radio"]:checked+label {
	background: var(--color-gold);
	color: var(--color-white);
}
#fma-quiz .quiz-row label {
	float: left;
	cursor: pointer;
	padding: .25em 1em;
	margin-left: .5em;
	background: #f5f5f5;
}
#fma-quiz .quiz-row.info label {
	background: none !important;
	font-size: 12px;
	padding: 0 .25em;
	color: var(--color-gray);
}
#fma-quiz .quiz-row input[type="text"] {
	flex-basis: 48%; 
	font-size: 16px;
	padding: .5em;
	background: #f8f8f8;
	border: 1px solid #999;
}
#fma-quiz .quiz-row input[type="text"].invalid {
	border: 1px solid #ff0000;
	background: #ff000011;
}
#fma-quiz .quiz-row input[type="submit"] {
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	font-size: 20px;
	color: var(--color-white) !important;
	background: var(--color-blue);
	cursor: pointer;
	padding: .5em 2em;
	margin: 0 0 16px 0;
	display: inline-block;
	border: none;
	border-radius: 10px;
	text-decoration: none;
	-webkit-transition: .3s all;
	-o-transition: .3s all;
	transition: .3s all;
}
#fma-quiz .quiz-row input[type="submit"]:hover {
	background: var(--color-blue-dark);
}

/* FMA QUIZ RESULTS */
.fma-quiz-score {
	display: flex;
	justify-content: center;
}
.fma-quiz-score .score {
	text-align: center;
	font-family: var(--font-oswald);
	font-weight: 400;
	font-size: 24px;
	line-height: 36px;
	border-bottom: 1px solid var(--color-gold);
	margin-bottom: 1em;
	padding: 0 1em;
	color: var(--color-gold);
}
.fma-quiz-score .score.gut strong {
	color: var(--color-red);
}
.fma-quiz-score .score.food strong {
	color: var(--color-green);
}
.fma-quiz-score .score.neural strong {
	color: var(--color-blue);
}
.fma-quiz-recommendation {
	text-align: center;
}
.fma-quiz-recommendation h2 {
	font-size: 38px;
}
.fma-quiz-recommendation h3 {
	font-size: 24px;
}
.fma-quiz-recommendation .recommended {
	margin-top: 30px;
}
.fma-quiz-recommendation .woocommerce ul.products.columns-4 {
	justify-content: center;
}
.fma-quiz-recommendation .woocommerce ul.products.columns-4 li.product {
	margin-left: 1% !important;
	margin-right: 1% !important;
}
.fma-quiz-recommendation .woocommerce ul.products.columns-4 li.product.blank {
	display: none;
}
.fma-quiz-recommendation .addall {
	margin-top: 10px;
	margin-bottom: 80px;
}
.fma-quiz-gifts {
	display: flex;
	justify-content: space-evenly;
	padding-bottom: 2em;
}
.fma-quiz-gifts .guide {
	flex-basis: 28%;
}
.fma-quiz-gifts .video {
	flex-basis: 50%;
}

/* LEAKY GUT QUIZ POPUP */
#pum-15880 .pum-container.loading::after {
	content: '';
	background-color: #ffffff;
	background-image: url(img/loading.gif);
	background-repeat: no-repeat;
	background-position: center;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2999999999;
	opacity: .8;
}
#pum-15880 .pum-title {
	text-align: center;
	font-family: var(--font-oswald);
	font-weight: 400;
	font-size: 32px;
	line-height: 48px;
	border-bottom: 1px solid var(--color-gold);
	margin-bottom: 0em;
}
#pum-15880 h2 {
	color: var(--color-gold);
	margin: 0;
	text-align: center;
}
#pum-15880 strong {
	font-weight: bold;
}

/* LEAKY GUT QUIZ FORM */
#leaky-gut-quiz .quiz-row {
	clear: both;
	border-top: 1px solid #ccc;
}
#leaky-gut-quiz .quiz-row::after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
#leaky-gut-quiz .quiz-row p {
	float: left;
	margin: .5em 0;
}
#leaky-gut-quiz .quiz-row .inputs {
	float: right;
	margin: .25em 0;
}
#leaky-gut-quiz .quiz-row.info {
	border: none;
}
#leaky-gut-quiz .quiz-row.info .inputs {
	margin: 0;
}
#leaky-gut-quiz .quiz-row.contact .inputs {
	float: none;
	margin: 1em 0;
	display: flex;
	justify-content: space-between;
}
#leaky-gut-quiz .quiz-row.submit {
	border: none;
	text-align: center;
}
#leaky-gut-quiz .quiz-row input[type="radio"] {
	float: left;
	display: none;
}
#leaky-gut-quiz .quiz-row input[type="radio"]:checked+label {
	background: var(--color-gold);
	color: var(--color-white);
}
#leaky-gut-quiz .quiz-row label {
	float: left;
	cursor: pointer;
	padding: .25em 1em;
	margin-left: .5em;
	background: #f5f5f5;
}
#leaky-gut-quiz .quiz-row.info label {
	background: none !important;
	font-size: 12px;
	padding: 0 .25em;
	color: var(--color-gray);
}
#leaky-gut-quiz .quiz-row input[type="text"] {
	flex-basis: 48%; 
	font-size: 16px;
	padding: .5em;
	background: #f8f8f8;
	border: 1px solid #999;
}
#leaky-gut-quiz .quiz-row input[type="text"].invalid {
	border: 1px solid #ff0000;
	background: #ff000011;
}
#leaky-gut-quiz .quiz-row input[type="submit"] {
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	font-size: 20px;
	color: var(--color-white) !important;
	background: var(--color-gold);
	cursor: pointer;
	padding: .5em 2em;
	margin: 0;
	display: inline-block;
	border: none;
	border-radius: 10px;
	text-decoration: none;
	-webkit-transition: .3s all;
	-o-transition: .3s all;
	transition: .3s all;
}
#leaky-gut-quiz .quiz-row input[type="submit"]:hover {
	background: var(--color-gold-dark);
}

/* LEAKY GUT QUIZ RESULTS */
.leaky-gut-quiz-score {
	text-align: center;
	font-family: var(--font-oswald);
	font-weight: 400;
	font-size: 24px;
	line-height: 36px;
	border-bottom: 1px solid var(--color-gold);
	margin-bottom: 1em;
	color: var(--color-gold);
}
.leaky-gut-quiz-score strong {
	color: var(--color-red);
}
.leaky-gut-quiz-recommendation {
	text-align: center;
}
.leaky-gut-quiz-test-buttons {
	text-align: center;
	margin: 2em 0;
	padding-bottom: 1em;
	border-bottom: 1px solid var(--color-gold);
}
.leaky-gut-quiz-test-buttons .button {
	margin: 0 3em 1em 3em;
}
.leaky-gut-quiz-gifts {
	display: flex;
	justify-content: space-evenly;
	padding-bottom: 2em;
}
.leaky-gut-quiz-gifts .guide {
	flex-basis: 28%;
}
.leaky-gut-quiz-gifts .video {
	flex-basis: 50%;
}

/* MCAS QUIZ FORM */
#mcas-quiz .quiz-row {
	clear: both;
	border-top: 1px solid #ccc;
	padding-bottom: 1em;
}
#mcas-quiz .quiz-row::after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
#mcas-quiz .quiz-row h2 {
	margin: .5em 0;
}
#mcas-quiz .quiz-row .inputs {
	margin: .25em 0;
}
#mcas-quiz .quiz-row.contact .inputs {
	margin: 1em 0;
	display: flex;
	justify-content: space-between;
}
#mcas-quiz .quiz-row.submit {
	border: none;
	text-align: center;
}
#mcas-quiz .quiz-row table {
	width: 100%;
	border-collapse: collapse;
}
#mcas-quiz .quiz-row table td {
	padding: .67em;
	vertical-align: top;
	background: #fafafa;
	border-bottom: 1px solid #ccc;
}
#mcas-quiz .quiz-row input[type="checkbox"] {
	width: 25px;
	height: 25px;
	margin: 0;
	cursor: pointer;
}
#mcas-quiz .quiz-row label {
	cursor: pointer;
	display: block;
}
#mcas-quiz .quiz-row input[type="text"] {
	flex-basis: 48%; 
	font-size: 16px;
	padding: .5em;
	background: #f8f8f8;
	border: 1px solid #999;
}
#mcas-quiz .quiz-row input[type="text"].invalid {
	border: 1px solid #ff0000;
	background: #ff000011;
}
#mcas-quiz .quiz-row input[type="submit"] {
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	font-size: 20px;
	color: var(--color-white) !important;
	background: var(--color-gold);
	cursor: pointer;
	padding: .5em 2em;
	margin: 0;
	display: inline-block;
	border: none;
	border-radius: 10px;
	text-decoration: none;
	-webkit-transition: .3s all;
	-o-transition: .3s all;
	transition: .3s all;
}
#mcas-quiz .quiz-row input[type="submit"]:hover {
	background: var(--color-gold-dark);
}

/* MCAS QUIZ RESULTS */
.mcas-quiz-score {
	text-align: center;
	font-family: var(--font-oswald);
	font-weight: 400;
	font-size: 24px;
	line-height: 36px;
	border-bottom: 1px solid var(--color-gold);
	margin-bottom: 1em;
	color: var(--color-gold);
}
.mcas-quiz-score strong {
	color: var(--color-red);
}
.mcas-quiz-recommendation {
	text-align: center;
}
.mcas-quiz-test-buttons {
	text-align: center;
	margin: 2em 0;
	padding-bottom: 1em;
	border-bottom: 1px solid var(--color-gold);
}
.mcas-quiz-test-buttons .button {
	margin: 0 3em 1em 3em;
}
.mcas-quiz-gifts {
	display: flex;
	justify-content: space-evenly;
	padding-bottom: 2em;
}
.mcas-quiz-gifts .guide {
	flex-basis: 28%;
}
.mcas-quiz-gifts .video {
	flex-basis: 50%;
}

/* PARASITE QUIZ FORM */
#parasite-quiz .quiz-row {
	clear: both;
	border-top: 1px solid #ccc;
	padding-bottom: 1em;
}
#parasite-quiz .quiz-row::after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
#parasite-quiz .quiz-row h2 {
	margin: .5em 0;
}
#parasite-quiz .quiz-row .inputs {
	margin: .25em 0;
}
#parasite-quiz .quiz-row.contact .inputs {
	margin: 1em 0;
	display: flex;
	justify-content: space-between;
}
#parasite-quiz .quiz-row.submit {
	border: none;
	text-align: center;
}
#parasite-quiz .quiz-row table {
	width: 100%;
	border-collapse: collapse;
}
#parasite-quiz .quiz-row table td {
	padding: 10px;
	vertical-align: top;
	background: #fafafa;
	border-bottom: 1px solid #ccc;
}
#parasite-quiz .quiz-row table tr td:first-child {
	width: 25px;
}
#parasite-quiz .quiz-row table tr td:last-child {
	padding: 0 10px;
}
#parasite-quiz .quiz-row input[type="checkbox"] {
	width: 25px;
	height: 25px;
	margin: 0;
	cursor: pointer;
}
#parasite-quiz .quiz-row label {
	cursor: pointer;
	display: block;
	line-height: 45px;
}
#parasite-quiz .quiz-row input[type="text"] {
	flex-basis: 48%; 
	font-size: 16px;
	padding: .5em;
	background: #f8f8f8;
	border: 1px solid #999;
}
#parasite-quiz .quiz-row input[type="text"].invalid {
	border: 1px solid #ff0000;
	background: #ff000011;
}
#parasite-quiz .quiz-row input[type="submit"] {
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	font-size: 20px;
	color: var(--color-white) !important;
	background: var(--color-slate-light);
	cursor: pointer;
	padding: .5em 2em;
	margin: 0;
	display: inline-block;
	border: none;
	border-radius: 10px;
	text-decoration: none;
	-webkit-transition: .3s all;
	-o-transition: .3s all;
	transition: .3s all;
}
#parasite-quiz .quiz-row input[type="submit"]:hover {
	background: var(--color-slate);
}

/* PARASITE QUIZ RESULTS */
.parasite-quiz-score {
	text-align: center;
	font-family: var(--font-oswald);
	font-weight: 400;
	font-size: 24px;
	line-height: 36px;
	border-bottom: 1px solid var(--color-pink);
	margin-bottom: 1em;
	color: var(--color-pink);
}
.parasite-quiz-score strong {
	color: var(--color-red);
}
.parasite-quiz-recommendation {
	text-align: center;
}
.parasite-quiz-recommendation ul {
	list-style-position: inside;
	font-variant: small-caps;
	font-size: 18px;
	padding-left: 0;
	line-height: 2em;
	background: var(--color-lightgray);
	color: var(--color-charcoal-dark);
	padding: 1em;
	border: 2px solid var(--color-seafoam);
}
.parasite-quiz-recommendation .next-steps {
	background: var(--color-peach-light);
	padding: 0em 1em 1em 1em;
	border: 2px solid var(--color-peach-dark);
	margin-bottom: 3em;
}
.parasite-quiz-recommendation .next-steps p {
	font-size: 18px;
}

/* HOME PAGE POPUP */
#home-popup {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255,.7);
	text-align: center;
	z-index: 999;
	display: none;
}
#home-popup .inner {
	max-width: 600px;
	background: var(--color-peach);
	margin: 10% auto 0 auto;
	box-shadow: 2px 2px 5px #333;
	border-radius: 0 0 30px 30px;
	border: 3px solid var(--color-white);
	overflow: hidden;
	position: relative;
}
#home-popup .inner .close {
	display: block;
	position: absolute;
	top: -3px;
	right: -3px;
	height: 30px;
	width: 30px;
	line-height: 30px;
	color: red;
	background: var(--color-white);
	z-index: 999;
	border-radius: 0 0 0 15px;
	cursor: pointer;
}
#home-popup .inner .close:hover {
	background: red;
	color: var(--color-white);
}
#home-popup .inner .title {
	background: var(--color-slate-light);
	padding: 10px 35px 10px 220px;
	text-align: left;
}
#home-popup .inner .title h2 {
	color: var(--color-white);
	font-family: var(--font-dancing);
	font-size: 40px;
	margin: 0;
}
#home-popup .inner .image {
	position: absolute;
	top: 5px;
	left: 10px;
	width: 200px;
}
#home-popup .inner .info {
	padding: 20px 10px 50px 220px;
	color: var(--color-slate);
	font-size: 16px;
	text-align: left;
}
#home-popup .inner .info input {
	display: inline-block;
	margin: 0px 2% 0 0;
	padding: 1em 1% 1em 3%;
	width: 44%;
	background: var(--color-white);
	box-shadow: inset 2px 2px 3px #bbb;
	border: none;
}
#home-popup .inner input[type="submit"] {
	box-sizing: border-box;
	padding: .9em 1.6em;
	border: 3px solid var(--color-white);
	margin: 0 -3px -3px -3px;
	background: var(--color-gold);
	color: var(--color-white) !important;
	font-size: 25px;
	text-decoration: none;
	font-variant: small-caps;
	border-radius: 30px 30px 0 0;
	display: block;
	width: calc(100% + 6px);
	cursor: pointer;
	transition: .3s all;
}
#home-popup .inner input[type="submit"]:hover {
	background: var(--color-gold-dark);
}

/* TEST CATEGORY BANNER*/
.test-cats-banner {
	margin: 0 0 40px 0;
	overflow: hidden;
	position: relative;
}
.test-cats-banner::before {
	content: '';
	display: block;
	position: absolute;
	width: 96%;
	left: 2%;
	top: 50px;
	height: 500px;
	border-radius: 50%;
	background: var(--color-white);
	background: -moz-linear-gradient(0deg, rgba(255,255,255,0) 50%, var(--color-gold-light) 100%);
	background: -webkit-linear-gradient(0deg, rgba(255,255,255,0) 50%, var(--color-gold-light) 100%);
	background: linear-gradient(0deg, rgba(255,255,255,0) 50%, var(--color-gold-light) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ffffff",endColorstr="var(--color-gold-light)",GradientType=1); 
	z-index: 1;
}
.test-cats-banner .cat-icons {
	display: flex;
	justify-content: space-between;
	position: relative;
	z-index: 10;
}
.test-cats-banner .cat-icons .icon {
	flex-basis: 10%;
	text-align: center;
	cursor: pointer;
	margin-top: 10px;
}
.test-cats-banner .cat-icons .icon[data-order="1"],
.test-cats-banner .cat-icons .icon[data-order="10"] {
	margin-top: 178px;
}
.test-cats-banner .cat-icons .icon[data-order="2"],
.test-cats-banner .cat-icons .icon[data-order="9"] {
	margin-top: 96px;
}
.test-cats-banner .cat-icons .icon[data-order="3"],
.test-cats-banner .cat-icons .icon[data-order="8"] {
	margin-top: 46px;
}
.test-cats-banner .cat-icons .icon[data-order="4"],
.test-cats-banner .cat-icons .icon[data-order="7"] {
	margin-top: 22px;
}
.test-cats-banner .cat-icons .icon .img {
	display: inline-block;
	border: none;
	box-shadow: none;
	background: var(--color-lightgray);
	border-radius: 40px;
	transition: .6s ease all;
}
.test-cats-banner .cat-icons .icon.active .img {
	background: var(--color-gold-light);
	box-shadow: 0 0 6px var(--color-gold);
}
.test-cats-banner .cat-icons .icon.active.gut .img {
	background: #ffaeae;
	box-shadow: 0 0 6px #ffaeae, 0 0 9px #ffaeae, 0 0 12px #ffaeae;
}
.test-cats-banner .cat-icons .icon.active.food .img {
	background: #f8eac6;
	box-shadow: 0 0 6px #f8eac6, 0 0 9px #f8eac6, 0 0 12px #f8eac6;
}
.test-cats-banner .cat-icons .icon.active.cardio .img {
	background: #fbcfb6;
	box-shadow: 0 0 6px #fbcfb6, 0 0 9px #fbcfb6, 0 0 12px #fbcfb6;
}
.test-cats-banner .cat-icons .icon.active.neural .img {
	background: #aadebf;
	box-shadow: 0 0 6px #aadebf, 0 0 9px #aadebf, 0 0 12px #aadebf;
}
.test-cats-banner .cat-icons .icon.active.toxins .img {
	background: #d3cbc5;
	box-shadow: 0 0 6px #d3cbc5, 0 0 9px #d3cbc5, 0 0 12px #d3cbc5;
}
.test-cats-banner .cat-icons .icon.active.hormones .img {
	background: #afc3d9;
	box-shadow: 0 0 6px #afc3d9, 0 0 9px #afc3d9, 0 0 12px #afc3d9;
}
.test-cats-banner .cat-icons .icon.active.nutrients .img {
	background: #dfa5cb;
	box-shadow: 0 0 6px #dfa5cb, 0 0 9px #dfa5cb, 0 0 12px #dfa5cb;
}
.test-cats-banner .cat-icons .icon.active.infection .img {
	background: #c6f5f8;
	box-shadow: 0 0 6px #c6f5f8, 0 0 9px #c6f5f8, 0 0 12px #c6f5f8;
}
.test-cats-banner .cat-icons .icon.active.autoimmune .img {
	background: #abaade;
	box-shadow: 0 0 6px #abaade, 0 0 9px #abaade, 0 0 12px #abaade;
}
.test-cats-banner .cat-icons .icon.active.breath .img {
	background: #fffec8;
	box-shadow: 0 0 6px #fffec8, 0 0 9px #fffec8, 0 0 12px #fffec8;
}
.test-cats-banner .cat-icons .icon .img img {
	border: none;
	box-shadow: none;
	opacity: .6;
	border-radius: 40px;
	transition: .6s ease all;
}
.test-cats-banner .cat-icons .icon.active .img img {
	opacity: 1;
}
.test-cats-banner .cat-icons .icon.hover .img img {
	opacity: 1;
}
.test-cats-banner .cat-icons .icon h4 {
	color: var(--color-gray-light);
	font-size: 17px;
	line-height: 20px;
	margin: 8px;
	transition: .6s ease all;
}
.test-cats-banner .cat-icons .icon.active h4 {
	color: var(--color-slate);
	font-size: 18px;
}
.test-cats-banner .cat-icons .icon.hover h4 {
	color: var(--color-slate);
	font-size: 18px;
}
.test-cats-banner .cat-cards {
	width: 600px;
	margin: -95px auto 0 auto;
	position: relative;
	z-index: 20;
}
.test-cats-banner .cat-cards .card {
	display: none;
	justify-content: space-between;
	border-radius: 10px;
	border: 1px solid var(--color-slate);
	overflow: hidden;
	width: 598px;
	padding: 20px;
	box-sizing: border-box;
	background: var(--color-white);
}
.test-cats-banner .cat-cards .card.active {
	display: flex;
}
.test-cats-banner .cat-cards .card .image {
	flex-basis: 40%;
}
.test-cats-banner .cat-cards .card .image img {
	box-shadow: none;
	border: none;
	width: auto;
	height: 215px;
}
.test-cats-banner .cat-cards .card .text {
	flex-basis: 55%;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.test-cats-banner .cat-cards .card .text .button {
	padding: .5em 1.5em;
	border-radius: 40px;
}

/* OPTIMAL ZONE ANIMATION */
.optimal-zone h2 {
	font-size: 32px;
	text-align: center;
	margin-top: 2em;
}
.optimal-zone .animation {
	display: flex;
	justify-content: center;
	margin-bottom: 60px;
}
.optimal-zone .animation .phone {
	width: 470px;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.optimal-zone .animation .phone img {
	border: none;
	box-shadow: none;
}
.optimal-zone .animation .phone > div {
	position: absolute;
	transition: 1s ease all;
	opacity: 0;
}
.optimal-zone .animation .phone .info {
	display: flex;
	align-items: center;
	justify-content: center;
	background: #1f385e;
	border-radius: 10px;
	color: #fff;
	height: 35%;
	width: 77%;
	padding: 30px;
}
.optimal-zone .animation.frame1 .phone .info {
	margin-top: -45%;
	margin-left: -50%;
}
.optimal-zone .animation.frame1 .phone .info.v1 {
	opacity: 1;
}
.optimal-zone .animation.frame2 .phone .info {
	margin-top: 45%;
	margin-left: -50%;
}
.optimal-zone .animation.frame2 .phone .info.v2 {
	opacity: 1;
}
.optimal-zone .animation .phone .info p {
	margin: 0;
}
.optimal-zone .animation .phone .zones {
	height: 30%;
	width: 69%;
}
.optimal-zone .animation.frame1 .phone .zones {
	margin-top: 0%;
	margin-left: 81%;
}
.optimal-zone .animation.frame1 .phone .zones.v1 {
	opacity: 1;
}
.optimal-zone .animation.frame2 .phone .zones {
	margin-top: -50%;
	margin-left: 76%;
}
.optimal-zone .animation.frame2 .phone .zones.v2 {
	opacity: 1;
}
.optimal-zone .animation .phone .results {
	height: 30%;
	width: 69%;
}
.optimal-zone .animation.frame1 .phone .results {
	margin-top: 50%;
	margin-left: -43%;
}
.optimal-zone .animation.frame1 .phone .results.v1 {
	opacity: 1;
}
.optimal-zone .animation.frame2 .phone .results {
	margin-top: 73%;
	margin-left: 81%;
}
.optimal-zone .animation.frame2 .phone .results.v2 {
	opacity: 1;
}

/* MEMBER HOME PAGE */
#member-discount-notice .inner {
	text-align: center;
	background: var(--color-white);
	color: var(--color-slate);
	padding-top: 6px;
	padding-bottom: 8px;
	letter-spacing: 1px;
}
#member-discount-notice .inner p {
	font-size: 15px;
	margin: 0;
}

#member-slider {
	background: var(--color-lightgray);
	padding: 0;
}
#member-slider .inner {
	overflow: hidden;
	width: 1900px;
}

#member-best {
	padding: 20px 0;
}
#member-best .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
	overflow: visible;
}
#member-best .best-single {
	flex-basis: 50%;
}
#member-best .best-list {
	flex-basis: 50%;
	text-align: center;
}
#member-best .best-list > h2 {
	font-size: 32px;
	border-bottom: 1px solid var(--color-gold);
	display: inline-block;
	width: auto;
	padding: .25em 0;
	margin-bottom: 1em;
}

#member-shop {
	background-image: url('img/shop-essentials-bg.jpg');
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center;
	padding: 140px 0;
}
#member-shop h2 {
	font-size: 40px;
	margin: 0 0 .5em 0;
	color: var(--color-white);
	text-shadow: 1px 1px 2px var(--color-slate-dark);
}

#member-featured {
	padding: 40px 0;
	text-align: center;
}
#member-featured .inner {
	overflow: visible;	
}
#member-featured .inner > h2 {
	font-size: 32px;
	border-bottom: 1px solid var(--color-gold);
	display: inline-block;
	width: auto;
	padding: .25em 0;
	margin-bottom: 1em;
}

#member-categories {
	background: var(--color-lightgray);
	padding: 40px 0;
	text-align: center;
}
#member-categories .inner > h2 {
	font-size: 32px;
	border-bottom: 1px solid var(--color-gold);
	display: inline-block;
	width: auto;
	padding: .25em 0;
	margin-bottom: 1em;
}

/* COLLAGEN BUNDLE */
.collagen-bundle-info {
	display: flex; 
	justify-content: space-between;
	flex-wrap: wrap;
}
.collagen-bundle-info > div {
	flex-basis: 45%;
}
.collagen-bundle-info > div .product {
	margin: 0 auto; 
	text-align: center; 
	width: 100% !important; 
	max-width: 360px;
}

/* MAIN WORDPRESS GENERATED CONTENT*/
#main {
	background: var(--color-white);
	overflow: hidden;
}
#main .inner {
	padding: 2em;
	background: var(--color-white);
}
#main .inner::after {
	content: '';
	display: block;
	height: 0;
	clear: both;
}

/* PAGES */
.content {
	width: 100%;
	display: inline-block;
}
.content > *:first-child, .content .text > *:first-child {
	margin-top: 0;
}
.content .text::after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
.content .page-title {
	text-align :center;
	padding-bottom: .3em;
	margin-bottom: .75em;
}

.content .page-subtitle {
	border-bottom: 1px solid var(--color-lightgray-dark);
	text-align :center;
	padding-bottom: 1em;
	margin-top: -.5em;
	margin-bottom: 2em;
}
.content p {
	margin-top: 0;
}
.content li {
	margin-bottom: .3em;
}
.content hr {
	border: none;
	border-bottom: 1px solid var(--color-pink-light);
	margin: 2em 0;	
}
.content a {
	color: var(--color-pink);
}
.content a:hover {
	color: var(--color-umber);
}
.content img {
	border: 2px solid var(--color-white);
	box-shadow: 2px 2px 3px #BBB;
}
.content img.plain {
	border: none;
	-webkit-box-shadow: none;
	        box-shadow: none;
}
.content .wp-caption img {
	margin: 5px;
}
.content .wp-caption-text {
	font-variant: small-caps;
	color: #FF584F;
	text-align: center;
	background: none;
	margin: 0;
	padding: .2em 0;
	font-weight: normal;
}

.content .video-wrapper {
	float: none;
	clear: both;
	width: 100%;
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 0px;
	height: 0;
	border: 1px solid #e5e5e5;
}
.content .video-wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.content .tweetbox {
	width: 100%;
	margin: 2em 0;
	border-top: 3px solid var(--color-peach);
	border-bottom: 3px solid var(--color-peach);
	text-align: center;
	padding: 1em 0;
	position: relative;
}
.content .tweetbox .icon {
	background: url(img/twitter-icon-large.png) 0 0 no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 50px;
	height: 50px;
}
.content .tweetbox p {
	color: var(--color-gold);
	font-size: 20px;
	margin: 0 0 1em 0;
	padding: 0 50px;
	text-align: center;
	font-family: var(--font-oswald);
}
.content .tweetbox em {
	font-style: normal;
}
.content .tweetbox a {
	background-color: var(--color-gray-light);
	background-image: linear-gradient(var(--color-white), var(--color-lightgray));
	border: 1px solid var(--color-gray-light);
	border-radius: 3px;
	color: var(--color-slate);
	cursor: pointer;
	font-weight: bold;
	height: 18px;
	max-width: 98%;
	overflow: hidden;
	position: relative;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
}
.content .tweetbox a span {
	padding: 0 3px 0 19px;
	white-space: nowrap;
	display: inline-block;
	font-size: 11px; 
	font-weight: 700;
	font-family: 'Helvetica Neue', Arial, sans-serif;
}
.content .tweetbox a i {
	background: url(img/twitter-icon.png) 0px 0px no-repeat;
	display: block;
	height: 13px;
	left: 2px;
	margin-top: -5px;
	position: absolute;
	top: 50%;
	width: 16px;
}

.content .nav-prev {
	float: left;
	width: 45%;
	text-align: left;
}
.content .nav-next {
	float: right;
	width: 45%;
	text-align: right;
}
.content .nav-prev a, .content nav-next a {
	color: #fff;
	background: var(--color-gold);
	padding: .5em 1.5em;
	text-decoration: none;
	border-radius: 10px;
}
.content .nav-prev a:hover, .content nav-next a:hover {
	background: var(--color-gold-dark);
}

.content .wp-pagenavi {
	margin: 12px 0;
	text-align: center;
}
.content .wp-pagenavi .pages {
	display: none;
}
.content .wp-pagenavi span.current, .content .wp-pagenavi .page, .content .wp-pagenavi .nextpostslink, .content .wp-pagenavi .previouspostslink {
	border: 1px solid #d3ced2;
	border-right: none;
	margin: 0;
	padding: 10px;
	display: inline-block;
	line-height: 1;
}
.content .wp-pagenavi .pages + * {
	border-radius: 3px 0 0 3px;
}
.content .wp-pagenavi > *:last-child {
	border-right: 1px solid #d3ced2;
	border-radius: 0 3px 3px 0;
}
.content .wp-pagenavi .current {
	font-weight: normal;
	background: #ebe9eb;
	color: #8a7e88;
}
.content .wp-pagenavi .page:hover {
	background: #ebe9eb;
	color: #8a7e88;
}
.content .wp-pagenavi .nextpostslink:hover, .content .wp-pagenavi .previouspostslink:hover {
	background: #ebe9eb;
	color: #8a7e88;
}

/* SIDEBAR */
#sidebar {
	float: right;
	width: 30%;
	position: relative;
	margin-top: 0;
}
#sidebar .sidebar-inner {
	max-height: 100vh;
	overflow: auto;
	box-sizing: content-box;
	padding-right: 1.25em;
	margin-right: -1.25em;
}
#sidebar .sidebar-inner.fixed {
	position: fixed;
	top: 80px;
}
#sidebar .sidebar-inner.fixed-bottom {
	position: absolute;
	bottom: 0;
	left: 0;
}

#sidebar #widgets .widget {
	margin-bottom: 2em;
	position: relative;
}
#sidebar #widgets .widget:last-child {
	margin-bottom: 0em;
}
#sidebar #widgets .widget::after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}

#sidebar #widgets h2 {
	font-size: 20px;
	font-weight: normal;
	margin-top: 0;
}
#sidebar .sidebar-inner.fixed #widgets h2,
#sidebar .sidebar-inner.fixed-bottom #widgets h2 {
	margin-top: 1em;
}

#sidebar #widgets .register {
	background: var(--color-lightgray);
	padding: 1em;
	font-size: 14px;
	border: 1px solid var(--color-gold);
}
#sidebar #widgets .register ul li {
	padding-bottom: .3em;
}
#sidebar #widgets .register a {
	display: block;
	width: 100%;
	text-align: center;
}
#sidebar #widgets .register a.login {
	margin-top: .5em;
	font-size: 12px;
}
#sidebar #widgets .register a.login {
	text-decoration: none;
	text-transform: uppercase;
}

#sidebar #widgets #searchform #s {
	float: left;
	width: calc(75% - 2px);
	height: 35px;
	border: 1px solid var(--color-gray-light);
	line-height: 35px;
	padding: 0 10px;
	box-sizing: border-box;
}
#sidebar #widgets #searchform #search_submit {
	float: left;
	width: calc(25% - 2px);
	height: 35px;
	border: 1px solid var(--color-gray-light);
	border-left: none;
	cursor: pointer;
	background: var(--color-pink);
	color: var(--color-white);
	box-sizing: border-box;
	transition: .3s all;
	font-family: var(--font-oswald);
	text-transform: uppercase;
}
#sidebar #widgets #searchform #search_submit:hover {
	background: var(--color-umber);
}

#sidebar #widgets ul {
	padding-left: 1em;
}
#sidebar #widgets ul li {
	padding-bottom: 1em;
}

#sidebar #widgets .widget > br {
	display: none;
}

#sidebar #widgets .recent-protocols {
	padding: 0;
	list-style: none;
}
#sidebar #widgets .recent-protocols li {
	padding-bottom: 1em;
	margin-bottom: 10px;
	border-bottom: 1px solid #eee;
}
#sidebar #widgets .recent-protocols li a {
	text-decoration: none;
}

#sidebar #widgets .recent-classes {
	padding: 0;
	list-style: none;
}
#sidebar #widgets .classes-cats {
	padding: 0;
	list-style: none;
}
#sidebar #widgets .classes-cats li ul {
	padding-top: 1em;
}
#sidebar #widgets .classes-cats li ul > li:last-child {
	padding-bottom: 0em;
}

#sidebar #widgets .recent-articles {
	padding: 0;
	list-style: none;
	margin-bottom: 30px;
}
#sidebar #widgets .recent-articles li {
	padding-bottom: .5em;
	display: flex;
	align-items: center;
}
#sidebar #widgets .recent-articles li a {
	flex: 85px 0 0;
	font-weight: normal;
	color: var(--color-pink);
	text-decoration: none;
}
#sidebar #widgets .recent-articles li a:hover {
	color: var(--color-umber);
}
#sidebar #widgets .recent-articles li a.info {
	flex-basis: calc(100% - 85px);
}
#sidebar #widgets .recent-articles li img {
	border-radius: 0px;
	box-shadow: 1px 1px 2px var(--color-lightgray-dark);
	width: 65px;
	height: 65px;
}

/* POSTS LIST */
#main.blog .content {
	width: 65%;
}
#main.blog .content.full {
	width: 100%;
}
.articles {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.articles .post {
	flex-basis: calc(92% / 2);
	text-align: center;
	margin-bottom: 60px;
}
.content.full .articles .post {
	flex-basis: calc(90% / 3);
	text-align: center;
	margin-bottom: 60px;
}
.articles .post .postwrap {
	border: 1px solid var(--color-lightgray-dark);
	background: var(--color-lightgray);
}

/* CLASSES LOAD MORE */
.alm-load-more-btn {
	background: var(--color-pink) !important;
}
.alm-load-more-btn:hover, .alm-load-more-btn.loading {
	background: var(--color-umber) !important;
}
.articles .alm-reveal {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.articles .alm-reveal::after {
	display: none !important;
}

/* SINGLE POST IN LIST */
#main.post .content {
	width: 65%;
}
#main.post .content.full {
	width: 100%;
}
.post .posttitle {
	background: var(--color-lightgray);
	color: var(--color-slate);
	margin: 0;
	padding: .5em;
	line-height: 1.2em;
}
.post .posttitle a {
	color: var(--color-slate);
	text-decoration: none;
}
.post .posttitle a:hover {
	color: var(--color-pink);
}
.post .postimg {
	width: 100%;
	position: relative;
}
.post .postimg img{
	width: 100%;
	height: auto;
	border: none;
	box-shadow: none;
}
.post .postimg:hover img{
	width: 100%;
	height: auto;
}
.post .postimg .play-icon {
	width: 20%;
	height: 0;
	padding-bottom: 20%;
	background: url('img/play-icon.png') 0 0 no-repeat;
	background-size: contain;
	position: absolute;
	top: 35%;
	left: 40%;
	opacity: .5;
	transition: all .3s ease;
}
.post .postimg:hover .play-icon {
	opacity: 1;
}
.post .excerpt {
	margin: 1em 2em;
	font-size: 14px;
	text-align: left;
	letter-spacing: .5px;
}
.post .readmore {
	margin: 1em 0 2em 0;
	text-transform: uppercase;
}

/* SINGLE POST */
.post .content .page-title + p img, .post .content .page-title + img {
	margin-top: -.67em;
}
.post .content .button {
	margin: 1em auto;
}

/* SINGLE CLASS POST IN LIST */
.classes-video {
	position: relative;
	padding: 56.25% 0 0 0;
}
.classes-video.hd2 {
	padding: 62.5% 0 0 0;
}
.classes-video.sd {
	padding: 76.25% 0 0 0;
}
.classes-video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* POST COMMENTS */
#comments {
	margin: 3em 0 0 0;
	padding: 3em 0 1em 0;
	border-top: 3px solid var(--color-peach);
}
#comments > h1 {
	font-size: 60px; 
	margin: 0; 
	text-align: center; 
	line-height: .8em; 
	font-family: var(--font-dancing);
}
#comments .leavecomment {
	border-bottom: 1px solid var(--color-peach);
	padding-bottom: 20px; 
	margin: 0;
	text-align: center;
}
#comments .leavecomment + hr {
	margin: 0 0 40px 0;
	display: none;
}
#comments > hr {
	margin-top: 0;
}
#comments .comment {
	position: relative;
	width: 100%;
	overflow: hidden;
	padding: 2em 0;
	border-bottom: 1px solid var(--color-peach-light);
}
#comments .comment:last-child {
	border-bottom: none;
}
#comments .comment .cimage {
	float: left;
	width: 10%;
	height: 0;
	padding-bottom: 12%;
}
#comments .comment .cimage img {
	width: 100%;
	height: auto;
}
#comments .comment .summary {
	float: right;
	width: 85%;
	font-size: 14px;
}
#comments .comment .summary p {
	margin: 0 0 .5em 0;
	color: #444;
}
#comments .comment.odd .summary p {
}
#comments .comment .review {
	text-align: center;
	margin: .5em 0 0 0;
}
#comments .comment .review .reviewer {
	color: var(--color-peach-dark);
	font-family: var(--font-oswald);
}
#comments .comment.odd .review {
}

#comments .comment-login {
	text-align: center;
	margin: 2em 0 1em 0;
}

#comments #commentform textarea {
	width: 100%;
	height: 150px;
	font-family: var(--font-open);
	padding: 3px 5px;
}
#comments #commentform .anr_captcha_field {
	text-align: center;
}
#comments #commentform .anr_captcha_field #anr_captcha_field_1 > div {
	margin: 0 auto;
}
#comments #commentform .form-submit {
	text-align: center;
}
#comments #commentform .form-submit #submit {
	display: inline-block;
	margin: 1em auto;
	cursor: pointer;
	width: auto;
	font-family: var(--font-oswald);
	color: var(--color-white);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: 16px;
	padding: 1em 3.5em;
	border: none;
	border-radius: 0;
	background: var(--color-slate-light);
	transition: .3s all;
}

/* SHOP LANDING PAGE */
.page-template-page-sibo-shop .content {
	position: relative;
	width: 100vw;
	margin-left: calc(-1 * (100vw - 1040px + 2em) / 2);
	padding: 1em 0;
}
#shop-tiles {
	width: 100%;
	margin: 0 auto;
	padding: 0 5px;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#shop-tiles .tile {
	display: flex;
	align-items: center;
	width: 31%;
	margin: 1.5% 0;
	height: 235px;
	position: relative;
	box-sizing: border-box;
	border-radius: 20px;
	border: 3px solid var(--color-white);
	box-shadow: 2px 2px 5px #666;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: auto 108%;
	background-color: #eee;
	text-decoration: none;
	transition: .7s all;
}
#shop-tiles .tile:nth-child(3n + 2) {
	margin-left: 3.5%;
	margin-right: 3.5%;
}
#shop-tiles .tile:hover {
	background-size: auto 118%;
}
#shop-tiles .tile.prokinetics {
	background-image: url('img/prokinetics-tile.jpg');	
}
#shop-tiles .tile.detox {
	background-image: url('img/detox-tile.jpg');	
}
#shop-tiles .tile.probiotics {
	background-image: url('img/probiotics-tile.jpg');	
}
#shop-tiles .tile.ebv {
	background-image: url('img/ebv-tile.jpg');	
}
#shop-tiles .tile.child-ebv {
	background-image: url('img/child-ebv-tile.jpg');	
}
#shop-tiles .tile.immune{
	background-image: url('img/immune-tile.jpg');	
}
#shop-tiles .tile.yeast {
	background-image: url('img/yeast-tile.jpg');	
}
#shop-tiles .tile.sibo {
	background-image: url('img/sibo-tile.jpg');	
}
#shop-tiles .tile.brain {
	background-image: url('img/brain-tile.jpg');	
}
#shop-tiles .tile.sulfur {
	background-image: url('img/sulfur-tile.jpg');	
}
#shop-tiles .tile.multivitamin {
	background-image: url('img/multivitamin-tile.jpg');	
}
#shop-tiles .tile.gut {
	background-image: url('img/gut-tile.jpg');	
}
#shop-tiles .tile.digestive {
	background-image: url('img/digestive-tile.jpg');	
}
#shop-tiles .tile.sleeping {
	background-image: url('img/sleeping-tile.jpg');	
}
#shop-tiles .tile.fatty {
	background-image: url('img/fatty-acid-tile.jpg');	
}
#shop-tiles .tile.pets {
	background-image: url('img/pets-tile-2.jpg');	
}
#shop-tiles .tile h2 {
	color: var(--color-white);
	text-align: center;
	width: 100%;
	text-shadow: 0px 0px 10px #000;
	padding: 0 .5em;
	font-size: 26px;
}

/* FOMO POPUP */
#fomo-popup-wrapper {
}
.fomo-popup {
	display: block;
	opacity: 0;
	position: fixed;
	bottom: 250px;
	right: -500px;
	background: var(--color-white);
	border-radius: 58px;
	overflow: hidden;
	border: 4px solid var(--color-white);
	padding: 5px 20px 5px 0px;
	transition: 1.6s all;
	height: 78px;
	box-sizing: border-box;
	box-shadow: 0 3px 12px #aaa;
	z-index: 999;
}
.fomo-popup.active {
	opacity: 1;
	right: 20px;
}
.fomo-popup .close {
	display: none;
	position: absolute;
	padding: 5px;
	top: 0;
	right: 6px;
	text-decoration: none;
	color: #222;
}
.fomo-popup .close:hover {
	color: red;
}
.fomo-popup .image {
	float: left;
	margin: -5px 15px 0 0;
	width: 70px;
	height: 70px;
	overflow: hidden;
	border-radius: 35px;
}
.fomo-popup .image a {
	display: block;
	text-align: center;
	background: #478544;
	position: relative;
	width: 70px;
	height: 70px;
}
.fomo-popup .image a img {
	min-height: 70px;
	width: 100%;
	background: var(--color-white);
	opacity: .95;
}
.fomo-popup .info {
	font-size: 12px;
	line-height: 1em;
	margin-top: 12px; /* 5px with "time ago" text */
	width: 200px;
	float: left;
}
.fomo-popup .info .customer-name {
}
.fomo-popup .info .customer-location {
}
.fomo-popup .info .customer-item a {
	color: var(--color-pink);
}
.fomo-popup .info .customer-item a:hover {
	color: var(--color-umber);
}
.fomo-popup .info .time-ago {
	display: block;
	color: #aaa;
	margin-top: 5px;
	font-size: 10px;
}

/* LOGIN/REGISTER BUTTON --NEW-- */
#login-register-new {
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 600;
	background: var(--color-blue);
	border: 1px solid var(--color-slate-light);
	padding: 1em;
	box-shadow: 2px 2px 3px var(--color-gray-dark);
	color: var(--color-white);
}
#login-register-new .close {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	padding: 5px 8px;
	color: var(--color-slate);
	font-weight: bold;
	font-size: 16px;
	text-transform: uppercase;
	cursor: pointer;
	transition: .3s all;
}
#login-register-new .close:hover {
	background: var(--color-red);
	color: var(--color-white);
}
#login-register-new h4 {
	font-size: 24px;
	margin: 0;
	text-align: center;
}
#login-register-new ul {
	font-size: 12px;
	padding-left: 1em;
}
#login-register-new a {
	display: block;
	text-align: center;
}
#login-register-new a.login {
	margin-top: .75em;
	color: var(--color-slate);
	font-size: 12px;
	text-decoration: none;
	text-transform: uppercase;
}
#login-register-new a.login:hover {
	color: var(--color-white);
}

/* LOGIN/REGISTER BUTTON */
#login-register {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 600;
}
#login-register #login_reg {
	display: block;
	padding: 1em 20px 1em 45px;
	text-align: center;
	text-decoration: none;
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--color-white);
	border-radius: 10px;
	box-shadow: 2px 2px 3px var(--color-gray-dark);
	background: url(img/user.png) 10px center no-repeat var(--color-gold);
}
#login-register #login_reg:hover {
	background-color: var(--color-gold-dark);
}

/* SHOP CART BUTTON */
#shop-cart {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 700;
}
#shop-cart #view_cart {
	display: block;
	padding: 1em 20px 1em 45px;
	text-align: center;
	text-decoration: none;
	font-family: var(--font-oswald);
	letter-spacing: .1em;
	text-transform: uppercase;
	color: var(--color-white);
	border-radius: 10px;
	box-shadow: 2px 2px 3px var(--color-gray-dark);
	background: url(img/cart.png) 10px center no-repeat var(--color-slate-light);
}
#shop-cart #view_cart:hover {
	background-color: var(--color-slate);
}

/* AJAX EDIT POST BUTTON */
#edit-post-ajax {
	display: none;
	position: fixed;
	top: 8px;
	right: 20px;
	z-index: 999;
}
#edit-post-ajax a {
	display: block;
	padding: 1em 2em;
	color: #fff;
	background-color: var(--color-pink);
	transition: .3s ease all;
}
#edit-post-ajax a:hover {
	background-color: var(--color-umber);
}

/* LOGIN PAGE */
.page-template-page-login #main .inner {
	text-align: center;
	max-width: 600px;
	padding-top: 5px;
}

/* SHOP DISCLAIMER */
#disclaimer {
	background: var(--color-white);
}
#disclaimer .inner {
	background: var(--color-white);
	padding: 0 2em 2em 2em;
}
#product-disclaimer {
	font-size: 12px;
	font-style: italic;
	text-align: center;
	margin: 0;
}

#apex-notice {
	clear: both;
	font-size: 12px;
}

/* FAQ TABS */
#faq-tabs {
	border: 1px solid #00000014;
}
#faq-tabs .tabs {
	display: flex;
}
#faq-tabs .tabs .tab {
	flex-basis: 50%;
	padding: 1em;
	font-size: 15px;
	text-align: center;
	background: #fafafa;
	border: 1px solid #00000014;
	border-top: none;
	cursor: pointer;
	color: var(--color-gold-dark);
	transition: .3s all ease;
}
#faq-tabs .tabs .tab.active {
	border-bottom: 1px solid var(--color-white);
	background: #fff;
	color: var(--color-gold);
}
#faq-tabs .tabs .tab:hover {
	color: var(--color-gold);
}
#faq-tabs .contents {
	background: #fff;
	padding: 1em;
}
#faq-tabs .contents .content {
	display: none;
}
#faq-tabs .contents .content.active {
	display: block;
}
.faq-top {
	display: inline-block;
	margin: 3px 0 0 6px;
	background: var(--color-gold);
	font-size: 10px;
	color: #fff !important;
	height: 16px;
	line-height: 14px;
	padding: 0 6px;
	border-radius: 10px;
	text-decoration: none;
	vertical-align: top;
}
.faq-top:hover {
	background: var(--color-gold-dark);
}

/* CLASSES PAGE (OLD) */
.webinar-list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.webinar-list .webinar {
	flex-basis: 48%;
	text-align: center;
	margin-bottom: 4%;
}
.webinar-list .webinar h3 {
	margin: 0 auto;
	padding: .5em;
	background: var(--color-lightgray);
	color: var(--color-gold-dark);
	font-size: 22px;
	border: 1px solid var(--color-gray-light);
	border-bottom: 0;
}
.webinar-list .webinar .video {
	position: relative;
	border: 1px solid var(--color-gray-light);
	border-top: 0;
	padding: 56.25% 0 0 0;
}
.webinar-list .webinar .video.sd {
	padding: 76.25% 0 0 0;
}

/* WPFORMS */
.wpforms-form {
	clear: both;
	border: 1px solid var(--color-gray-light);
	background: var(--color-lightgray);
	padding: 1em 1em 0 1em;
	margin: 1em 0;
	position: relative;
}
.wpforms-form input {
	width: 100%;
	box-sizing: border-box;	
}
.wpforms-form button {
	display: block !important;
	margin: 0 auto 1em auto !important;
	cursor: pointer;
	width: auto;
	font-family: var(--font-oswald);
	color: var(--color-white) !important;
	text-transform: uppercase;
	letter-spacing: .1em !important;
	font-size: 16px !important;
	padding: 1em 3.5em !important;
	border: none !important;
	border-radius: 0 !important;
	background: var(--color-slate-light) !important;
	transition: .3s all;
}
.wpforms-form button:hover {
	background: var(--color-slate) !important;
}
.wpforms-form textarea {
	box-sizing: border-box;	
}
.wpforms-form input, .wpforms-form textarea {
	max-width: 100% !important;
	font-family: var(--font-open);
}
.grecaptcha-badge {
	display: none !important;
}

/* CONTACT FORM  7*/
.wpcf7-form {
	clear: both;
	border: 1px solid var(--color-slate);
	background: var(--color-lightgray);
	padding: 1em 1em 0 1em;
	margin: 1em 0;
	position: relative;
}

.wpcf7-form h2 {
	margin-top: 0;
	font-weight: normal;
	color: var(--color-slate);
}
.wpcf7-form .note {
	font-style: italic;
	color: var(--color-slate);
}
.wpcf7-form .note a {
	color: var(--color-gold);
}
.wpcf7-form input {
	width: 100%;
	box-sizing: border-box;	
}
.wpcf7-form input[type="submit"] {
	display: inline-block;
	margin: 1em auto;
	cursor: pointer;
	width: auto;
	font-family: var(--font-oswald);
	color: var(--color-white);
	text-transform: uppercase;
	letter-spacing: .1em;
	font-size: 16px;
	padding: 1em 3.5em;
	border: none;
	border-radius: 0;
	background: var(--color-slate-light);
	transition: .3s all;
}
.wpcf7-form input[type="submit"]:hover {
	background: var(--color-slate);
}
.wpcf7-form .ajax-loader {
	display: block;
	margin: 0 auto;
}
.wpcf7-form textarea {
	box-sizing: border-box;	
}

.wpcf7-form .half {
	display: inline-block;
	width: 48%;
	margin: 0 0 1em 0;
	position: relative;
	vertical-align: top;
}
.wpcf7-form .half.first {
	margin-right: 3.5%;
}

.wpcf7-form input, .wpcf7-form textarea {
	padding: 3px 5px;
	width: 100%;
	font-family: var(--font-open);
	font-size: 16px;
}
.full-notice {
	border-radius: 3px;
	border: 1px solid orange;
	padding: 1em;
	margin-right: 1em;
	background: #FFE;
}
.full-notice p:last-child {
	margin-bottom: 0;
}
div.wpcf7-response-output {
	background: var(--color-white);
	padding: 1em !important;
	text-align: center;
	margin: -2em 0 1em 0 !important;
}
div.wpcf7-response-output:empty {
	display: none;
}

/* Heal Your Thyroid & Gut First opt-in */
.heal-thyroid-gut-optin {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
}
.heal-thyroid-gut-optin .image {
	display: flex;
	flex-direction: column;
	flex-basis: 45%;
	justify-content: start;
}
.heal-thyroid-gut-optin .image img {
	width: auto;
	max-height: 540px;
	margin: 0 auto 1.5em auto;
}
.heal-thyroid-gut-optin .image .arrow-text {
	background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2023/01/arrow-right-red.png');
	background-size: auto 60px;
	background-repeat: no-repeat;
	background-position: bottom center;
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	padding-bottom: 40px;
}
.heal-thyroid-gut-optin .form {
	flex-basis: 45%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

/* FOOTER */
#footer {
	background: var(--color-lightgray);
	background-size: cover;
	color: var(--color-slate);
	text-align: center;
	margin-top: 0em;
	padding: 2em;
}
#footer .inner {
	display: flex;
	justify-content: space-between;
}
#footer .inner > div {
	flex-basis: 23%;
}

#footer #contact a {
	display: block;
	line-height: 0;
}
#footer #contact .socials {
	padding: .5em;
}

#footer h3 {
	margin-top: 0;
}
#footer ul {
	list-style: none;
	padding: 0;
	border-top: 1px solid var(--color-seafoam);
	font-size: 14px;
}
#footer ul li.hide-footer {
	display: none;
}
#footer ul li a {
	display: block;
	padding: .3em;
	border-bottom: 1px solid var(--color-seafoam);
	color: var(--color-gray);
	text-decoration: none;
}
#footer ul li a:hover {
	background: none;;
	color: var(--color-slate);
}
#footer ul li ul {
	display: none;
}

/* COPYRIGHT */
#copyright {
	background: var(--color-lightgray-dark);
	color: var(--color-gray);
	text-align: center;
	padding: 1em;
	font-size: 13px;
	font-family: var(--font-oswald);
	letter-spacing: 1px;
}
#copyright a {
	color: var(--color-slate);
}

/* PAGE LOADING OVERLAY*/
#pageloading {
	display: block;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(255,255,255,.8);
	background-image: url('img/loading-transparent.gif');
	background-position: center;
	background-repeat: no-repeat;
	z-index: 0;
}
#pageloading.inactive {
	opacity: 0;
	z-index: 0;
	pointer-events: none;
}
#pageloading.active {
	opacity: 1 !important;
	z-index: 999 !important;
}

/* ELEMENTOR CUSTOM CSS */
li.elementor-icon-list-item {
	align-items: start !important;
}
span.elementor-icon-list-icon {
	margin-top: 0.35em !important;
}

/* MISCELLANEOUS */
.preload {
	display: none;	
}
div.AuthorizeNetSeal {
	margin: 0 auto !important;
	text-align: center;
}
.screen-reader-text {
    border: 0;
    clip: rect(1px,1px,1px,1px);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

.shaking {
  animation: shake .6s;
  /* When the animation is finished, start again */
  animation-iteration-count: 1;
}

@keyframes shake {
  0% {
    transform: translate(1px, 1px) rotate(0deg);
  }
  10% {
    transform: translate(-1px, -2px) rotate(-1deg);
  }
  20% {
    transform: translate(-3px, 0px) rotate(1deg);
  }
  30% {
    transform: translate(3px, 2px) rotate(0deg);
  }
  40% {
    transform: translate(1px, -1px) rotate(1deg);
  }
  50% {
    transform: translate(-1px, 2px) rotate(-1deg);
  }
  60% {
    transform: translate(-3px, 1px) rotate(0deg);
  }
  70% {
    transform: translate(3px, 1px) rotate(-1deg);
  }
  80% {
    transform: translate(-1px, -1px) rotate(1deg);
  }
  90% {
    transform: translate(1px, 2px) rotate(0deg);
  }
  100% {
    transform: translate(1px, -2px) rotate(-1deg);
  }
}

/* RESPONSIVE STYLES */
@media all and (max-width: 1600px) {
	#member-slider .inner {
		height: 420px;
	}
	#member-slider .slider-wrap {
		position: absolute;
		left: 50%;
		width: 1600px;
		margin-left: -800px;
	}
}

@media all and (max-width: 1200px) {
	.desktop-only {
		display: none;
	}
	.mobile-only {
		display: block;
	}
	.section {
		padding-left: 1em;
		padding-right: 1em;
	}
	.section#main, .section#disclaimer {
		padding: 0;
	}
	.inner {
		max-width: 100%;
	}
	
	#home-banner-slider .slide-inner {
		padding: 0 20px;
	}

	#home-control-health .text h1 {
		font-size: 40px;
	}
	#home-control-health .text p {
		font-size: 18px;
	}
	#home-control-health .links a {
		flex-basis: 48%;
		font-size: 18px;
	}
	#home-control-health .image p {
		font-size: 20px;
	}
	#home-control-health .image p strong {
		font-size: 28px;
	}
	
	#home-simple-steps .cta a {
		padding: 1em 2em;
	}
	
	#home-simple-steps h2 {
		font-size: 40px;
	}
	#home-products .details .image {
		flex-basis: 33%;
		margin-left: 3%;
	}
	
	#home-labs .details .image {
		flex-basis: 33%;
		margin-right: 3%;
	}
	
	#home-test-kit-faq .inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	#home-test-kit-how.dark .inner {
		padding-left: 20px;
		padding-right: 20px;
	}
	#home-banner-slider .slide-inner .text h1 {
		font-size: 40px
	}
	
	#home-test-kit-slider {
		padding: 0;
	}
	#home-test-kit-slider .caption-wrap .caption h1 {
		font-size: 40px;
	}
	#home-cta .cta-box .text {
		width: 100%;
		padding: 10% 5%;
	}
	#home-cta .cta-img {
		background-position: left -100px top;
	}
	#home-praise {
		padding: 80px 40px;
	}
	#home-articles {
		padding: 40px 40px 20px 40px;
	}
	#home-test-kit-slider .caption-wrap .caption h3 {
		margin: 4% 0 0 0;
	}
	
	#member-best .best-list {
		padding-right: 2%;
	}
	
	#member-featured .inner {
		padding: 0 2%;
	}

	#member-categories .inner {
		padding: 0 2%;
	}
	
	#test-kits-cat-banner {
		height: 42vw;
	}
	#test-kits-cat-banner .inner {
		width: 158%;
		margin-left: -79%;
	}
	#test-kits-cat-banner .caption-wrap {
		width: 31%;
		top: 5%;
	}
	#test-kits-cat-banner .caption-wrap h2 {
		font-size: 30px;
	}
	#test-kits-cat-banner .caption-wrap p {
		font-size: 15px;
		line-height: 1.2em;
	}
}

@media all and (max-width: 1024px) {
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details {
		width: 135px;
		padding-top: 180px;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .logo-details .details {
		width: 135px;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li > a {
		max-width: calc(100% - 155px);
	}
	
	#home-control-health  {
		background-size: 1600px auto;
		background-position: 40% 25%;
	}
	#home-control-health .text {
		padding-left: 2%;
		padding-right: 0%;
	}
	#home-control-health .text p {
		font-size: 16px;
	}
	#home-control-health .text p.note {
		font-size: 14px;
	}
	#home-control-health .image p {
		font-size: 19px;
	}
	#home-control-health .image p strong {
		font-size: 26px;
	}
	
	#home-simple-steps .cta div {
		flex-basis: 33%;
	}
	
	#home-banner-slider .slide-inner .text h1 {
		font-size: 42px;
	}
	#home-test-kit-how.dark h2 {
		font-size: 40px;
	}
	#home-test-kit-cta .inner .text {
		padding-right: 1em;
	}
	#home-test-kit-targeted-panels .shopall {
		width: auto;
		font-size: 18px;
	}	
	#home-test-kit-testimonials .inner {
		padding: 40px 20px 0 20px;
	}
	#home-test-kit-explore .shopall {
		width: auto;
		font-size: 18px;
	}
	#home-test-kit-quality .text {
		padding: 40px 0 20px 0;
	}
		
	.test-cats-banner {
		width: 640px;
		margin: 0 auto 40px auto;
	}
	.test-cats-banner::before {
		width: 100%;
		left: 0;
		height: 200px;
	}
	.test-cats-banner .cat-icons {
		height: 285px;
	}
	.test-cats-banner .cat-icons .icon {
		position: absolute;
		width: 112px;
		left: calc(50% - 56px);
		transition: .6s ease all;
		opacity: 1;
	}
	.test-cats-banner .cat-icons .icon.mobile1 {
		margin-top: 178px;
		left: calc(50% - 56px - 448px - 60px);
		opacity: 0;
	}
	.test-cats-banner .cat-icons .icon.mobile2 {
		margin-top: 96px;
		left: calc(50% - 56px - 336px - 45px);
		opacity: 0;
	}
	.test-cats-banner .cat-icons .icon.mobile3 {
		margin-top: 46px;
		left: calc(50% - 56px - 224px - 30px);
	}
	.test-cats-banner .cat-icons .icon.mobile4 {
		margin-top: 22px;
		left: calc(50% - 56px - 112px - 15px);
	}
	.test-cats-banner .cat-icons .icon.mobile5 {
		margin-top: 10px;
		left: calc(50% - 56px);
	}
	.test-cats-banner .cat-icons .icon.mobile6 {
		margin-top: 22px;
		left: calc(50% - 56px + 112px + 15px);
	}
	.test-cats-banner .cat-icons .icon.mobile7 {
		margin-top: 46px;
		left: calc(50% - 56px + 224px + 30px);
	}
	.test-cats-banner .cat-icons .icon.mobile8 {
		margin-top: 96px;
		left: calc(50% - 56px + 336px + 45px);
		opacity: 0;
	}
	.test-cats-banner .cat-icons .icon.mobile9 {
		margin-top: 178px;
		left: calc(50% - 56px + 448px + 60px);
		opacity: 0;
	}
	.test-cats-banner .cat-icons .icon.mobile10 {
		margin-top: 178px;
		left: calc(50% - 56px + 560px + 60px);
		opacity: 0;
	}
}

@media all and (max-width: 960px) {	
	#home-control-health {
		padding: 0;
	}
	#home-control-health .text {
		padding-right: 2%;
	}
	#home-control-health .text h1 {
		font-size: 32px;
	}
	#home-control-health .links {
		margin-top: 1em;
	}
	#home-control-health .links a {
		font-size: 16px;
	}
	#home-control-health .image p {
		font-size: 17px;
		line-height: 20px;
	}
	#home-control-health .image p strong {
		font-size: 24px;
	}
	
	#home-simple-steps h2 {
		font-size: 32px;
	}
	#home-simple-steps .steps .step .heading {
		font-size: 20px;
	}
	#home-simple-steps .cta div {
		flex-basis: 45%;
	}
	
	#home-products h4 {
		font-size: 32px;
	}
	
	#home-labs h4 {
		font-size: 32px;
	}
	
	#home-banner-slider .slide-inner .text {
		min-height: 340px;
	}
	#home-banner-slider .slide-inner .text h1 {
		font-size: 36px
	}
	#home-banner-slider .slide-inner .text h2 {
		font-size: 18px;
	}
	#home-banner-slider .slide-inner .link .button {
		font-size: 16px;
	}

	#home-test-kit-quiz h2 {
		font-size: 32px;
	}	
	#home-test-kit-quiz .text {
		flex-basis: 50%
	}
	#home-test-kit-quiz .image {
		flex-basis: 35%
	}
	#home-test-kit-quality .text {
		flex-basis: 52%;
	}
	#home-test-kit-quality .text h2 {
		font-size: 30px;
	}
	#home-test-kit-quality .info {
		margin-left: -10px;
		border-spacing: 10px;
	}
	#home-test-kit-quality .image {
		flex-basis: 48%;
	}	
	
	#home-test-kit-slider .inner {
		max-width: none;
		width: 150%;
		margin-left: -25%;
	}
	#home-test-kit-slider .caption-wrap {
		width: 68%;
		left: 16%;
	}
	#home-cta .cta-img {
		background-position: left -180px top;
	}
	
	#member-slider .inner {
		height: 340px;
	}
	#member-slider .slider-wrap {
		width: 1300px;
		margin-left: -650px;
	}	
	
	.optimal-zone .animation .phone {
		width: 385px;
	}	
	
	#test-kits-cat-banner .inner {
		margin-left: -82%;
	}
	#test-kits-cat-banner .caption-wrap {
		width: 35%;
		top: 5%;
		left: 48%;
		bottom: 15%;
	}
	#test-kits-cat-banner .caption-wrap h2 {
		font-size: 24px;
	}
	#test-kits-cat-banner .caption-wrap p {
		font-size: 12px;
		line-height: 1.1em;
		margin: 1em 0;
	}
	
	.heal-thyroid-gut-optin .image {
		flex-basis: 100%;
	}
	.heal-thyroid-gut-optin .image img {
		width: 500px;
		max-height: none;
	}
	.heal-thyroid-gut-optin .image .arrow-text {
		background-image: url('https://functionalmedicineshop.com/wp-content/uploads/2025/02/arrows-down-red.png');
		margin-bottom: 1em;
	}
	.heal-thyroid-gut-optin .form {
		flex-basis: 100%;
	}


	#copyright {
		z-index: 700;
	}
}

@media all and (max-width: 900px) {
	#home-blog .articles .post {
		flex-basis: 31.5%;
	}
	#home-blog .articles .post:nth-child(4) {
		display: none;
	}
}

@media all and (max-width: 780px) {
	#header-menu {
		padding: 0;
	}
	#header-menu .menu {
		padding: 0 1em;
	}
	#header-menu .menu > li > .links a.all {
		display: none;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > a {
		width: 44%;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > .logo-details {
		display: none;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub {
		left: calc(44% + 24px);
		width: calc(56% - 24px);
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li > a {
		max-width: 100%;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub > li > a:hover + .details {
		display: none;
	}
	
	#home-banner-slider .inner {
		max-height: none;
	}
	#home-banner-slider .slide-inner {
		flex-wrap: wrap;
		justify-content: center;
		padding: 0 10px;
	}
	#home-banner-slider .slide-inner .text {
		flex-basis: 100%;
		max-width: 100%;
		text-align: center;
		order: 0;
	}
	#home-banner-slider .slide-inner .image {
		flex-basis: 100%;
		max-width: 410px;
	}
	
	#home-control-health .text {
		padding-top: 2%;
		padding-bottom: 2%;
	}
	#home-control-health .text p.note {
		font-size: 12px;
	}
	#home-control-health .links a {
		font-size: 14px;
		flex-basis: 50%;
		padding: .8em 1em;
	}
	#home-control-health .image p {
		font-size: 14px;
		line-height: 16px;
	}
	#home-control-health .image p strong {
		font-size: 21px;
	}
	
	#home-simple-steps .steps {
		flex-wrap: wrap;
	}
	#home-simple-steps .steps .step {
		flex-basis: 60%;
		margin-bottom: 5%;
	}
	#home-simple-steps .steps .step:last-child {
		margin-bottom: 0%;
	}
	
	#home-test-kit-how.dark h2 {
		font-size: 29px;
		margin-bottom: 50px;
	}
	#home-test-kit-how .steps .step .heading {
		font-size: 16px;
	}
	#home-test-kit-targeted-panels h2 {
		font-size: 30px;
	}
	#home-test-kit-targeted-panels .panels .panel .bot img {
		max-width: 80%;
	}
	#home-test-kit-quiz .text {
		flex-basis: 55%;
	}
	#home-test-kit-quiz h2 {
		font-size: 32px;	
	}
	#home-test-kit-quiz p {
		font-size: 18px;
	}
	#home-test-kit-quiz a {
		font-size: 18px;
	}
	#home-test-kit-testimonials .review {
		padding: 10px;
	}
	#home-test-kit-testimonials .review .stars {
		height: 30px;
	}
	#home-test-kit-testimonials .review p {
		font-size: 14px;
	}
	#home-test-kit-quality .inner {
		flex-wrap: wrap;
		justify-content: center;
	}
	#home-test-kit-quality .text {
		flex-basis: 85%;
	}
	#home-test-kit-quality .text h2 {
		text-align: center;
	}
	#home-test-kit-quality .info {
		margin-bottom: 0;
	}
	#home-test-kit-quality .image {
		flex-basis: 85%;
		margin-bottom: 40px;
	}
	#home-test-kit-faq .inner {
		padding-bottom: 0px;	
	}
	
	#home-test-kit-cta .inner .text h1 {
		margin-top: 0;
	}
	#home-test-kit-cta .inner .image {
		flex-basis: 50%;
	}
	#home-cta .cta-img {
		background-position: left -240px top;
	}
	#home-brands .brands img {
		width: 150px;
	}
	#home-praise .reviews {
		flex-wrap: wrap;
	}
	#home-praise .inner {
		padding: 40px 0 10px 0;
	}
	#home-praise .reviews .review {
		flex-basis: 50%;
		padding: 0 30px 30px 30px;
	}
	#home-articles {
		padding: 40px;
	}
	#home-articles .articles .post {
		flex-basis: 48%;
		margin-bottom: 30px;
	}
	#home-articles .articles .post:last-child {
		display: block;
	}
	.articles .post {
		flex-basis: 100%;
	}
	
	#home-test-kit-slider .flexslider {
		margin-bottom: 30px;
	} 
	#home-test-kit-slider .metaslider.ms-theme-outline .flexslider ol.flex-control-nav:not(.flex-control-thumbs) {
		bottom: -25px;
	}	
	#home-test-kit-slider .caption-wrap .caption h1 {
		font-size: 40px;
	}
	#home-test-kit-slider .slide-16989 .caption-wrap .caption h1 {
		text-align: center;
	}
	#home-test-kit-slider .caption-wrap .caption h2 {
		font-size: 18px;
	}
	#home-test-kit-slider .slide-16989 .caption-wrap .caption h2 {
		text-align: center;
	}
	#home-test-kit-slider .caption-wrap .caption h3 {
		max-width: 80%;
		font-size: 16px;
		text-align: center;
	}
	#home-test-kit-slider .slide-16989 .caption-wrap .caption h3 {
		max-width: 80%;
	}
	#home-test-kit-slider .caption-wrap .caption .aside.left {
		text-align: center;
	}
	#home-test-kit-slider .caption-wrap .caption .aside.right {
		text-align: center;
	}
	#home-test-kit-slider .slide-16987 .caption-wrap .caption,
	#home-test-kit-slider .slide-16989 .caption-wrap .caption {
		padding-top: 16px;
		padding-left: 30px;
	}
	
	#main .inner {
		padding: 1em;
	}
	
	#member-slider .inner {
		height: 290px;
	}
	#member-slider .slider-wrap {
		width: 1100px;
		margin-left: -550px;
	}
	
	.optimal-zone .animation .phone {
		width: 315px;
	}	
	.optimal-zone .animation .phone .info p {
		font-size: 15px	
	}
	
	#test-kits-cat-banner {
		height: 55vw;
	}
	#test-kits-cat-banner .flexslider {
		background: #fff;
	}
	#test-kits-cat-banner .slides li {
		padding-bottom: 90px;
	}
	#test-kits-cat-banner .caption-wrap {
		top:2%;
		bottom: 12%;
	}
	
	.category-subbanner .inner {
		flex-wrap: wrap;
	}
	.category-subbanner .inner > div {
		flex-basis: 100% !important;
		text-align: center;
	}
	.category-subbanner .menu-search {
		order: 3;
		padding-bottom: 1em;
	}
	.category-subbanner .rating p {
		margin: 0;
	}
	
	#sidebar #widgets h2 {
		text-align: center;
	}
	#sidebar #widgets #searchform #s {
		width: calc(100% - 2px - 50px);
	}
	#sidebar #widgets #searchform #search_submit {
		width: 50px;
	}
	#sidebar #widgets .recent-articles li {
		flex-wrap: wrap;
	}
	#sidebar #widgets .recent-articles li a {
		flex: 100% 0 0;
		text-align: center;
	}
	#sidebar #widgets .recent-articles li a.info {
		flex: 100% 0 0;
		margin: .25em auto 1em auto;
	}
	.fomo-popup {
		display: none !important;
	}
	
	#footer {
		padding: 1em;
	}
}

@media all and (max-width: 704px) {
	.test-cats-banner {
		width: 576px;
	}
	.test-cats-banner .cat-icons .icon.mobile1 {
		left: calc(50% - 56px - 448px - 20px);
	}
	.test-cats-banner .cat-icons .icon.mobile2 {
		left: calc(50% - 56px - 336px - 15px);
	}
	.test-cats-banner .cat-icons .icon.mobile3 {
		left: calc(50% - 56px - 224px - 10px);
	}
	.test-cats-banner .cat-icons .icon.mobile4 {
		left: calc(50% - 56px - 112px - 5px);
	}
	.test-cats-banner .cat-icons .icon.mobile5 {
		left: calc(50% - 56px);
	}
	.test-cats-banner .cat-icons .icon.mobile6 {
		left: calc(50% - 56px + 112px + 5px);
	}
	.test-cats-banner .cat-icons .icon.mobile7 {
		left: calc(50% - 56px + 224px + 10px);
	}
	.test-cats-banner .cat-icons .icon.mobile8 {
		left: calc(50% - 56px + 336px + 15px);
	}
	.test-cats-banner .cat-icons .icon.mobile9 {
		left: calc(50% - 56px + 448px + 20px);
	}
	.test-cats-banner .cat-cards {
		width: 576px
	}
	.test-cats-banner .cat-cards .card {
		width: 574px
	}
}

@media all and (max-width: 640px) {
	.alignright, .alignleft {
		float: none;
		margin: 1em auto;
		display: block;
	}
	#preheader .cart,
	#preheader .account {
		display: none;
	}
	#mobile-menu {
		display: flex;
	}
	#header-menu .menu {
		display: block;
		background: var(--color-lightgray);
		width: 96%;
		position: absolute;
		left: 2%;
		top: 120px;
		border: none;
		border-top: none;
		z-index: 800;
		text-align: center;
		overflow: hidden;
		list-style: none;
		box-shadow: 0 1px 4px #888;
		padding: 0;
		margin: 0;
		max-height: 0;
		-webkit-transition: .6s ease-in all;
		-o-transition: .6s ease-in all;
		transition: .6s ease-in all;
	}
	body.mobile-menu-open #header-menu .menu {
		max-height: calc(100vh - 46px - 120px) /* Screen height - minus preheader, header */
	}
	#header-menu .menu .logo {
		display: none;
	}
	#header-menu .menu > li {
		border-bottom: 1px solid var(--color-gray);
		display: block;
		height: auto;
		padding: 0;
	}
	#header-menu .menu > li > .links a {
		display: block;
		text-decoration: none;
		font-family: var(--font-oswald);
		font-size: 20px;
		text-decoration: none;
		text-transform: uppercase;
		font-size: 13px;
		letter-spacing: .2em;
		display: block;
		padding: 1em;
		color: var(--color-slate);
		-webkit-transition: .3s all;
		-o-transition: .3s all;
		transition: .3s all;
	}
	#header-menu .menu > li.menu-item-has-children > a::after {
		left: calc(50% - 5px);
	}
	#header-menu .menu > li > .sub-menu {
		position: relative;
		top: 0;
		box-shadow: none;
	}
	#header-menu .menu > li > .sub-menu .mobile-close {
		display: none;
	}
	#header-menu .menu > li > .sub-menu .submenu-heading {
		font-size: 12px;
		height: 35px;
		line-height: 35px;
		border: none;
		background: var(--color-lightgray-dark);
	}
	#header-menu .menu > li > .sub-menu .submenu-heading > a {
		font-size: 12px;
	}
	#header-menu .menu > li > .sub-menu .submenu-heading > a span {
		display: none;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items {
		max-height: 500px;
		scrollbar-width: inherit;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > a {
		width: 100%;
		border-right: 0;
		text-align: center;
		padding: .5em 1em;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > a {
		background: var(--color-lightgray);
		color: var(--color-gray);
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > a:hover {
		background: var(--color-pink-light);
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li.active > a::after {
		display: none;
	}
	#header-menu .menu > li > .sub-menu.shop-menu .submenu-items > li > .sub-sub {
		display: none !important;
	}
	
	#shop-cart {
		display: none;
	}	
	
	#home-control-health  {
		padding-top: 300px;
		background-image: url(https://functionalmedicineshop.com/wp-content/uploads/2024/09/home-banner-couple-mobile.jpg);
		background-size: auto 300px;
		background-position: center top;
	}
	#home-control-health .inner {
		flex-wrap: wrap;
		justify-content: center;
	}
	#home-control-health .bg {
		width: 1600px;
		margin-left: -915px;
	}	
	#home-control-health .text {
		flex-basis: 100%;
		order: 1;
	}
	#home-control-health .text h1 {
		text-align: center;
	}
	#home-control-health .links a {
		flex-basis: 45%;
	}
	#home-control-health .image {
		flex-basis: 60%;
		order: 2;
		padding-top: 2%;
	}
	
	#home-simple-steps .steps .step {
		flex-basis: 70%
	}
	#home-simple-steps .cta a {
		font-size: 16px;
	}
	
	#home-products .details {
		flex-wrap: wrap;
		justify-content: center;
	}
	#home-products .details .image {
		flex-basis: 60%;
		margin: 0;
	}
	#home-products .details .text {
		flex-basis: 90%;
		border-radius: 60px;
	}
	#home-products .details .text a {
		margin: 0 auto;
	}
	
	#home-labs .details {
		flex-wrap: wrap;
		justify-content: center;
	}
	#home-labs .details .image {
		flex-basis: 60%;
		margin: 0;
		order: 1;
	}
	#home-labs .details .text {
		flex-basis: 90%;
		border-radius: 60px;
		order: 2;
	}
	#home-labs .details .text a {
		margin: 1em auto 0 auto;
	}
	
	#home-test-kit-own-health {
		background-position: right -16px bottom;
	}
	#home-test-kit-own-health .text h1 {
		font-size: 30px;
	}
	#home-test-kit-own-health .text h2 {
		font-size: 16px;
	}
	#home-test-kit-own-health .link .button {
		font-size: 14px;
	}
	#home-test-kit-faq::before { 
		width: 150%;
		left: -25%;
	}
	#home-test-kit-how.dark::before { 
		width: 150%;
		left: -25%;
	}
	#home-test-kit-targeted-panels .panels {
		flex-wrap: wrap;
		justify-content: center;
	}
	#home-test-kit-targeted-panels .panels .panel {
		flex-basis: 46%;
		margin: 2%;
	}
	#home-test-kit-targeted-panels .panels .panel .title {
		padding: 10px 10px 0 10px;
	}
	#home-test-kit-targeted-panels .panels .panel .info {
		padding: 0 10px 0 10px;
	}
	#home-test-kit-targeted-panels .panels .panel .bot img {
		width: 200px;
		max-width: 80%;
	}
	#home-test-kit-targeted-panels .panels .panel a {
		margin: 10px;
		width: calc(100% - 20px);
	}
	#home-test-kit-targeted-panels .shopall {
		margin: 20px auto 0 auto;
	}
	#home-test-kit-quiz h2 {
		font-size: 30px;
	}
	#home-test-kit-quiz p {
		font-size: 16px;
	}
	#home-test-kit-reviews-press > .inner {
		flex-wrap: wrap;
	}
	#home-test-kit-reviews-press > .inner > div {
		flex-basis: 100%;
	}
	#home-test-kit-press .inner {
		padding-bottom: 0px;
	}

	#home-test-kit-cta .inner .text {
		flex-basis: 100%;
		text-align:	center;
		padding: 0;
	}
	#home-test-kit-cta .inner .text img {
		display: block;
		max-width: 300px;
		margin: 0 auto;
	}
	#home-test-kit-cta .inner .image {
		display: none;
	}
	#home-cta .inner {
		flex-wrap: wrap;	
	}
	#home-cta .cta-box {
		flex-basis: 100%;
		order: 2;
	}
	#home-cta .cta-box .text {
		padding: 2em 2em 4em 2em;	
	}
	#home-cta .cta-img {
		flex-basis: 100%;
		order: 1;
		height: 300px;
		background-position: center top -35px;
		background-size: 640px auto;
	}
	
	#home-blog .articles .post {
		flex-basis: 48%;
	}
	#home-blog .articles .post:nth-child(3) {
		display: none;
	}

	
	#member-slider .inner {
		height: 250px;
	}
	#member-slider .slider-wrap {
		width: 960px;
		margin-left: -480px;
	}
	
	#member-best .inner {
		flex-wrap: wrap;
		justify-content: center;
	}
	#member-best .best-single {
		flex-basis: 80%;
	}
	#member-best .best-list {
		padding: 0 2%;
		flex-basis: 100%;
	}
	#member-best .best-list > h2 {
		margin-top: 0;
	}
	
	.video-testimonials .video {
		flex-basis: 100%;
	}
	
	#test-kits-cat-banner {
		height: 65vw;
	}
	#test-kits-cat-banner .slides li {
		padding-bottom: 130px;
	}
	#test-kits-cat-banner .caption-wrap a.button {
		padding: 1em; 
		width: 100%;
	}
		
	.test-cats-banner {
		width: 496px;
	}
	.test-cats-banner .cat-icons .icon {
		width: 96px;
	}
	.test-cats-banner .cat-icons .icon.mobile1 {
		left: calc(50% - 48px - 384px - 20px);
	}
	.test-cats-banner .cat-icons .icon.mobile2 {
		left: calc(50% - 48px - 288px - 15px);
	}
	.test-cats-banner .cat-icons .icon.mobile3 {
		left: calc(50% - 48px - 192px - 10px);
	}
	.test-cats-banner .cat-icons .icon.mobile4 {
		left: calc(50% - 48px - 96px - 5px);
	}
	.test-cats-banner .cat-icons .icon.mobile5 {
		left: calc(50% - 48px);
	}
	.test-cats-banner .cat-icons .icon.mobile6 {
		left: calc(50% - 48px + 96px + 5px);
	}
	.test-cats-banner .cat-icons .icon.mobile7 {
		left: calc(50% - 48px + 192px + 10px);
	}
	.test-cats-banner .cat-icons .icon.mobile8 {
		left: calc(50% - 48px + 288px + 15px);
	}
	.test-cats-banner .cat-icons .icon.mobile9 {
		left: calc(50% - 48px + 384px + 20px);
	}
	.test-cats-banner .cat-icons .icon h4 {
		font-size: 15px;
	}
	.test-cats-banner .cat-icons .icon.active h4 {
		font-size: 16px;
	}
	.test-cats-banner .cat-icons .icon.hover h4 {
		font-size: 16px;
	}
	.test-cats-banner .cat-cards {
		width: 496px
	}
	.test-cats-banner .cat-cards .card {
		width: 494px
	}
	.test-cats-banner .cat-cards .card .text h3 {
		margin-top: 0;
	}
	.test-cats-banner .cat-cards .card .text .link p {
		margin-bottom: 0;
	}
	
	.collagen-bundle-info > div {
		flex-basis: 100%;
	}
	
	.optimal-zone .animation .phone {
		width: 275px;
	}	
	.optimal-zone .animation .phone .info {
		padding: 20px;
	}
	.optimal-zone .animation .phone .info p {
		font-size: 13px	
	}

	.webinar-list .webinar {
		flex-basis: 100%;
	}
	
	#leaky-gut-quiz .quiz-row p {
		font-size: 13px;
	}
	#leaky-gut-quiz .quiz-row label {
		font-size: 13px;
	}
	#leaky-gut-quiz .quiz-row.info label {
		font-size: 10px;
	}
	
	#footer .inner {
		flex-direction: column;
	}
	#footer .inner > div {
		margin-top: 1em;
	}
	#footer .inner > div:nth-child(2) {
		margin-top: 2em;
	}
	#copyright span {
		display: block;
	}
	#copyright span.sep {
		display: none;
	}
}

@media all and (max-width: 560px) {
	#home-simple-steps p.subhead {
		font-size: 20px;
	}
	#home-simple-steps .steps .step {
		flex-basis: 90%;
	}
	#home-simple-steps .cta div {
		flex-basis: 48%;
	}
	#home-simple-steps .cta a {
		padding: 1em 1.5em;
	}
	
	#home-testimonials .inner {
		padding: 40px 40px 0px 40px;
	}
	
	#home-test-kit-quiz h2 {
		font-size: 27px;
	}
	#home-test-kit-quiz p {
		font-size: 16px;
	}
	#home-test-kit-quiz a {
		margin-top: 0;
	}
	#home-test-kit-quiz .image {
		flex-basis: 40%;
		margin-left: 2%;
	}
	#home-test-kit-quality .text {
		flex-basis: 100%;
	}
	#home-test-kit-quality .image {
		flex-basis: 100%;
	}
	
	#home-test-kit-slider .caption-wrap .caption {
		width: 65%
	}
	#home-test-kit-slider .caption-wrap .caption h1 {
		font-size: 30px;
	}
	#home-test-kit-slider .caption-wrap .caption h2 {
		font-size: 16px;
	}
	#home-test-kit-find .inner {
		padding: 40px 0;
	}
	
	#member-slider .inner {
		height: 210px;
	}
	#member-slider .slider-wrap {
		width: 800px;
		margin-left: -400px;
	}
		
	#test-kits-cat-banner {
		height: 84vw;
	}
	#test-kits-cat-banner .slides li {
		padding-bottom: 200px;
	}
	#test-kits-cat-banner .caption-wrap .caption {
		padding: 10px 15px;
	}
		
	.test-cats-banner {
		width: 320px;
	}
	.test-cats-banner .cat-icons {
		height: 255px;
	}
	.test-cats-banner .cat-icons .icon.mobile3 {
		opacity: 0;
	}
	.test-cats-banner .cat-icons .icon.mobile7 {
		opacity: 0;
	}
	.test-cats-banner .cat-cards {
		width: 320px;
	}
	.test-cats-banner .cat-cards .card {
		width: 318px;
		padding: 10px;
	}
	.test-cats-banner .cat-cards .card .image img {
		height: 175px;
	}
	.test-cats-banner .cat-cards .card .text {
		flex-basis: 55%;
	}
	.test-cats-banner .cat-cards .card .text h3 {
		margin-bottom: .5em;
	}
	.test-cats-banner .cat-cards .card .text p {
		font-size: 14px;
	}

	.optimal-zone .animation .phone {
		width: 235px;
	}
	
	#test-conditions .condition {
		flex-basis: 100%;
	}
	#test-conditions .condition.food {
		order: 1;
	}
	#test-conditions .condition.infections {
		order: 3;
	}
	#test-conditions .condition.environment {
		order: 5;
	}
	#test-conditions .condition-button {
		flex-basis: 100%;
		margin-bottom: 20px;
	}
	#test-conditions .condition-button.food {
		order: 2;
	}
	#test-conditions .condition-button.infections {
		order: 4;
	}
	#test-conditions .condition-button.environment {
		order: 6;
	}
	
	#home-test-kit-how .inner {
		padding: 80px 0;
	}
	.optimal-zone .animation .phone .info p {
		font-size: 12px	
	}

}

@media all and (max-width: 530px) {
	#home-test-kit-own-health .text {
		min-height: auto;
		padding: 20px 0 10px 0;
	}
	#home-test-kit-own-health .text h1 {
		font-size: 26px;
	}
	#home-test-kit-own-health .text h2 {
		font-size: 15px;
	}
	#home-test-kit-own-health .info {
		margin: 10px 0 20px 0;
	}
	#home-test-kit-how .steps .step .text {
		font-size: 12px;
	}
	#leaky-gut-quiz .quiz-row {
		text-align: center;
	}
	#leaky-gut-quiz .quiz-row p {
		float: none;
	}
	#leaky-gut-quiz .quiz-row .inputs {
		float: none;
		display: inline-block;
	}
}

@media all and (max-width: 480px) {	
	#home-control-health .bg {
		width: 1750px;
		margin-left: -1000px;
	}
	#home-control-health .links {
		flex-wrap: wrap;
		justify-content: center;
	}
	#home-control-health .links a {
		flex-basis: 60%;
		margin-bottom: 2%;
	}
	#home-control-health .image {
		flex-basis: 80%;
	}
	
	#home-simple-steps p.subhead {
		font-size: 15px;
	}
	#home-simple-steps .cta {
		justify-content: space-evenly;
	}
	#home-simple-steps .cta div {
		flex-basis: 45%;
	}
	#home-simple-steps .cta a {
		padding: .5em 1.5em;
	}
	
	#home-products h4 {
		line-height: 1.2em;
		margin-bottom: 10px;
	}
	#home-products p.subhead {
		margin: 0 0 .5em 0;
	}
	#home-products .details .image {
		flex-basis: 80%;
		margin: 0 0 1em 0;
	}
	
	#home-labs h4 {
		line-height: 1.2em;
		margin-bottom: 10px;
	}
	#home-labs p.subhead {
		margin: 0 0 .5em 0;
	}
	#home-labs .details .image {
		flex-basis: 80%;
		margin: 0 0 1em 0;
	}
	
	#home-test-kit-subheader a {
		padding: 1em 0;
		letter-spacing: 1px;
	}
	#home-test-kit-own-health {
		background-image: none;
	}
	#home-test-kit-own-health .text {
		flex-basis: 100%;
		text-align: center;
	}
	#home-test-kit-own-health .text h1 {
		font-size: 32px;
	}
	#home-test-kit-own-health .text h2 {
		font-size: 16px;
	}
	#home-test-kit-own-health .link .button {
		font-size: 16px;
	}
	#home-test-kit-targeted-panels .panels .panel {
		flex-basis: 80%;
		margin-top: 20px;
	}
	#home-test-kit-targeted-panels .panels .panel:first-child {
		margin-top: 0px;
	}
	#home-test-kit-targeted-panels .panels .panel:last-child {
		margin-top: 20px;
	}
	#home-test-kit-quiz .text {
		flex-basis: 100%;
		text-align: center;
	}
	#home-test-kit-quiz h2 {
		font-size: 30px;
	}
	#home-test-kit-quiz .image {
		display: none;
	}
	#home-test-kit-faq .faq {
		max-height: auto;
		font-size: 14px;
	}	
	
	#home-test-kit-slider .inner {
		width: 270%;
		margin-left: -115%;
	}
	#home-test-kit-slider .caption-wrap {
		width: 36%;
		left: 43%;
	}
	#home-test-kit-slider .caption-wrap .caption {
		padding: 10px;
	}
	#home-test-kit-how h2 {
		margin: .25em 0em 1em 0em;
		line-height: 1.2em;
	}
	#home-praise .reviews .review {
		flex-basis: 100%;
	}
	#home-articles .articles .post {
		flex-basis: 100%;
	}
	
	#home-blog .articles .post {
		flex-basis: 100%;
	}
	
	#pum-15880 .pum-container {
		min-width: 100px !important;
		max-width: 100% !important;
		padding: 10px !important;
	}
	#pum-15880 h2 {
		margin: .2em 0 0 0;
		line-height: 1.1em;
	}
	
	#main .inner {
		padding: 1em .5em;
	}
	
	#member-slider .inner {
		height: 160px;
	}
	#member-slider .slider-wrap {
		width: 620px;
		margin-left: -310px;
	}
	
	#member-best .best-single {
		flex-basis: 100%;
	}	
	
	#test-kits-cat-banner {
		height: auto;
		padding-bottom: 20px;
	}
	#test-kits-cat-banner .inner {
		position: relative;
		width: 300%;
		margin-left: -100%;
		margin-top: -3%;
	}
	#test-kits-cat-banner .slides li {
		padding-bottom: 30px;
	}
	#test-kits-cat-banner .caption-wrap {
		position: relative;
		left: 17.5%;
		width: 32%;
		top: 0%;
		bottom: 0%;
	}
	#test-kits-cat-banner .caption-wrap a.button {
		width: auto;
		padding: 1em 3em;
	}
	#test-kits-cat-banner .flex-control-nav {
		width: 20%;
		left: 23%;
		bottom: 0px;
	}
	
	.optimal-zone .animation .phone {
		width: 175px;
	}
	.optimal-zone .animation .phone .info {
		height: 40%;
	}
	.optimal-zone .animation .phone .info p {
		font-size: 10px	
	}

	#leaky-gut-quiz .quiz-row.contact .inputs {
		flex-wrap: wrap;
		margin: .5em 0 0 0;
	}
	#leaky-gut-quiz .quiz-row input[type="text"] {
		flex-basis: 100%;
		margin-bottom: .5em;
	}
	#leaky-gut-quiz .quiz-row p {
		margin-bottom: 0;
	}
	
	#main.blog .content {
		width: 100%;
	}
	#main.post .content {
		width: 100%;
	}
		
	#sidebar {
		width: 100%;
		float: none;
	}
	#sidebar #widgets #searchform #s {
		width: calc(75% - 2px);
	}
	#sidebar #widgets #searchform #search_submit {
		width: calc(25% - 2px);
	}
}

@media all and (max-width: 420px) {
	#mobile-menu .cart a::before {
		left: -2px;	
	}
	
	#home-banner-slider {
		padding-left: 0;
		padding-right: 0;
	}
	#home-banner-slider .slide-inner .text h1 {
		font-size: 30px;
	}
	
	#home-test-kit-targeted-panels .panels .panel {
		flex-basis: 100%;
	}
	
}

@media all and (max-width: 360px) {
	.test-cats-banner .cat-icons {
		width: 296px
	}
	.test-cats-banner .cat-cards {
		width: 296px
	}
	.test-cats-banner .cat-cards .card {
		width: 294px
	}	
}