@charset "UTF-8";
@keyframes blink {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-webkit-keyframes blink {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-moz-keyframes blink {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-webkit-keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-moz-keyframes appear {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes jump {
    0% {
        transform: translateY(0);
    }
    60% {
        transform: translateY(-20px);
    }
    100% {
        transform: translateY(0);
    }
}
@-webkit-keyframes jump {
    0% {
        transform: translateY(0);
    }
    60% {
        transform: translateY(-20px);
    }
    100% {
        transform: translateY(0);
    }
}
@-moz-keyframes jump {
    0% {
        transform: translateY(0);
    }
    60% {
        transform: translateY(-20px);
    }
    100% {
        transform: translateY(0);
    }
}
@keyframes weight {
    0% {
        transform: rotate(-48deg);
    }
    100% {
        transform: rotate(48deg);
    }
}
@-webkit-keyframes weight {
    0% {
        transform: rotate(-48deg);
    }
    100% {
        transform: rotate(48deg);
    }
}
@-moz-keyframes weight {
    0% {
        transform: rotate(-48deg);
    }
    100% {
        transform: rotate(48deg);
    }
}
@keyframes hammer {
    0% {
        transform: rotate(28deg);
    }
    100% {
        transform: rotate(2deg);
    }
}
@-webkit-keyframes hammer {
    0% {
        transform: rotate(28deg);
    }
    100% {
        transform: rotate(2deg);
    }
}
@-moz-keyframes hammer {
    0% {
        transform: rotate(28deg);
    }
    100% {
        transform: rotate(2deg);
    }
}
@keyframes appear-hammer {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    60% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@-webkit-keyframes appear-hammer {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    60% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@-moz-keyframes appear-hammer {
    0% {
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    60% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}
@keyframes scale {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    70% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(1.2);
        opacity: 0;
    }
}
@-webkit-keyframes scale {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    70% {
        transform: scale(1);
        opacity: 1;
    }
    100% {
        transform: scale(1.2);
        opacity: 0;
    }
}
@-moz-keyframes scale {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    70% {
        transform: scale(0.8);
        opacity: 1;
    }
    100% {
        transform: scale(1);
        opacity: 0;
    }
}
@keyframes hoop {
    0% {
        transform: translateX(0px);
    }
    30% {
        transform: translateX(-40px);
    }
    40% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(50px);
    }
    100% {
        transform: translateX(0px);
    }
}
@-webkit-keyframes hoop {
    0% {
        transform: translateX(0px);
    }
    30% {
        transform: translateX(-40px);
    }
    40% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(50px);
    }
    100% {
        transform: translateX(0px);
    }
}
@-moz-keyframes hoop {
    0% {
        transform: translateX(0px);
    }
    30% {
        transform: translateX(-40px);
    }
    40% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(50px);
    }
    100% {
        transform: translateX(0px);
    }
}
@keyframes danse {
    0% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(-10px);
    }
    70% {
        transform: translateX(10px);
    }
    100% {
        transform: translateX(0px);
    }
}
@-webkit-keyframes danse {
    0% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(-10px);
    }
    70% {
        transform: translateX(10px);
    }
    100% {
        transform: translateX(0px);
    }
}
@-moz-keyframes danse {
    0% {
        transform: translateX(0px);
    }
    50% {
        transform: translateX(-10px);
    }
    70% {
        transform: translateX(10px);
    }
    100% {
        transform: translateX(0px);
    }
}
@keyframes hamburger {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@-webkit-keyframes hamburger {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@-moz-keyframes hamburger {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(0);
    }
}
@keyframes blink-cursor {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-webkit-keyframes blink-cursor {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@-moz-keyframes blink-cursor {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}
@keyframes bottleDance {
    0% {
        transform: rotate(0deg);
    }
    5% {
        transform: rotate(5deg);
    }
    95% {
        transform: rotate(-5deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
@-webkit-keyframes bottleDance {
    0% {
        transform: rotate(0deg);
    }
    5% {
        transform: rotate(5deg);
    }
    95% {
        transform: rotate(-5deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
@-moz-keyframes bottleDance {
    0% {
        transform: rotate(0deg);
    }
    5% {
        transform: rotate(5deg);
    }
    95% {
        transform: rotate(-5deg);
    }
    100% {
        transform: rotate(0deg);
    }
}
@keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
@-webkit-keyframes fadein {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}
:root {
    --mainColor: hsl(212, 15%, 50%);
    --mainColor_h: 212;
    --mainColor_s: 15%;
    --mainColor_l: 50%;
    --mainColorLight: hsl(var(--mainColor_h), var(--mainColor_s), calc(var(--mainColor_l) + 7%));
    --mainColorDark: hsl(calc(var(--mainColor_h) + 1), calc(var(--mainColor_s) + 39%), calc(var(--mainColor_l) - 26%));
    --primaryColor: hsl(43, 71%, 55%);
    --primaryColor_h: 43;
    --primaryColor_s: 71%;
    --primaryColor_l: 55%;
    --CTA: hsl(44, 100%, 50%);
    --CTA_h: 44;
    --CTA_s: 100%;
    --CTA_l: 50%;
}

.slick-dots {
    bottom: unset;
    top: 100%;
    z-index: 0;
    left: 0;
}
@media (max-width: 767px) {
    .slick-dots li {
        width: 20px;
        height: 20px;
    }
}
@media (min-width: 768px) {
    .slick-dots li {
        width: 30px;
        height: 30px;
    }
}
.slick-dots li.slick-active button:before {
    opacity: 1;
}
.slick-dots li button::before {
    content: "";
    position: static;
    display: block;
    background-color: var(--mainColor);
    border-radius: 50%;
}
@media (max-width: 767px) {
    .slick-dots li button {
        width: 20px;
        height: 20px;
    }
    .slick-dots li button::before {
        width: 10px;
        height: 10px;
    }
}
@media (min-width: 768px) {
    .slick-dots li button {
        width: 30px;
        height: 30px;
    }
    .slick-dots li button::before {
        width: 20px;
        height: 20px;
    }
}

.slick-dots li {
    margin: 0;
}
.slick-dots li button {
    padding: 5px;
}

.vjs-poster,
.vjs-poster:focus {
    background-color: transparent;
    background-size: cover !important;
    background-position: 50% 50% !important;
}

.video .video-js {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
}
.video .video-js .vjs-big-play-button {
    width: 1.5em;
    height: 1.5em;
    margin: 0;
    transform: translate(-50%, -50%);
    background-color: transparent;
    border: 2px solid;
    border-radius: 50%;
}
@media (max-width: 767px) {
    .video .video-js .vjs-big-play-button {
        font-size: 8em;
    }
}
@media (min-width: 768px) {
    .video .video-js .vjs-big-play-button {
        font-size: 12em;
    }
}
.video.transparent-poster .vjs-paused:not(.vjs-has-started) video {
    opacity: 0;
}
.video.has-custom-play .video-js .vjs-big-play-button {
    color: #fff;
}
@media (max-width: 767px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        font-size: 5.5em;
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
    }
}
@media (min-width: 768px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        font-size: 8em;
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
    }
}
@media (min-width: 1025px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    }
}
.video.has-custom-play .video-js .vjs-big-play-button .vjs-icon-placeholder {
    position: relative;
    display: block;
    width: 81px;
    height: 90px;
    margin: auto;
    line-height: 0;
}
.video.has-custom-play .video-js .vjs-big-play-button .vjs-icon-placeholder::before {
    content: "";
    mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="80.29" height="90"><path fill="currentColor" d="M0 60.25V9.42C0 1.03 5.94-2.4 13.21 1.79l17.61 10.17c7.26 4.19 19.15 11.06 26.41 15.25l17.61 10.17c7.26 4.19 7.26 11.06 0 15.25L57.23 62.79c-7.26 4.19-19.15 11.06-26.41 15.25L13.21 88.21C5.94 92.4 0 88.97 0 80.58V60.25z"/></svg>')
        no-repeat;
    -webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="80.29" height="90"><path fill="currentColor" d="M0 60.25V9.42C0 1.03 5.94-2.4 13.21 1.79l17.61 10.17c7.26 4.19 19.15 11.06 26.41 15.25l17.61 10.17c7.26 4.19 7.26 11.06 0 15.25L57.23 62.79c-7.26 4.19-19.15 11.06-26.41 15.25L13.21 88.21C5.94 92.4 0 88.97 0 80.58V60.25z"/></svg>')
        no-repeat;
    position: absolute;
    left: 15%;
    transition: all 0.4s;
    transform-origin: center;
    display: block;
    background-color: #fff;
}
@media (max-width: 767px) {
    .video.has-custom-play .video-js .vjs-big-play-button .vjs-icon-placeholder {
        transform: scale(0.4);
    }
    .video.has-custom-play .video-js .vjs-big-play-button .vjs-icon-placeholder::before {
        top: -12%;
    }
}
@media (min-width: 768px) {
    .video.has-custom-play .video-js .vjs-big-play-button .vjs-icon-placeholder {
        transform: scale(0.6);
    }
}
@media (hover: hover) and (pointer: fine) {
    .video.has-custom-play .video-js .vjs-big-play-button:hover .vjs-icon-placeholder::before {
        transform: scale(1.075);
        transition: all 0.4s;
    }
}

/* http://meyerweb.com/eric/tools/css/reset/
   v2.0-modified | 20110126
   License: none (public domain)
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

/* make sure to set some focus styles for accessibility */
:focus {
    outline: 0;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

body {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: "";
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
    -webkit-appearance: none;
    -moz-appearance: none;
}

input[type="search"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

textarea {
    overflow: auto;
    vertical-align: top;
    resize: vertical;
}

/**
 * Correct `inline-block` display not defined in IE 6/7/8/9 and Firefox 3.
 */
audio,
canvas,
video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    max-width: 100%;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
    display: none;
    height: 0;
}

/**
 * Address styling not present in IE 7/8/9, Firefox 3, and Safari 4.
 * Known issue: no IE 6 support.
 */
[hidden] {
    display: none;
}

/**
 * 1. Correct text resizing oddly in IE 6/7 when body `font-size` is set using
 *    `em` units.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
    font-size: 100%;
    /* 1 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
    -ms-text-size-adjust: 100%;
    /* 2 */
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
    outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
    outline: 0;
}

/**
 * 1. Remove border when inside `a` element in IE 6/7/8/9 and Firefox 3.
 * 2. Improve image quality when scaled in IE 7.
 */
img {
    border: 0;
    /* 1 */
    -ms-interpolation-mode: bicubic;
    /* 2 */
}

/**
 * Address margin not present in IE 6/7/8/9, Safari 5, and Opera 11.
 */
figure {
    margin: 0;
}

/**
 * Correct margin displayed oddly in IE 6/7.
 */
form {
    margin: 0;
}

/**
 * Define consistent border, margin, and padding.
 */
fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct color not being inherited in IE 6/7/8/9.
 * 2. Correct text not wrapping in Firefox 3.
 * 3. Correct alignment displayed oddly in IE 6/7.
 */
legend {
    border: 0;
    /* 1 */
    padding: 0;
    white-space: normal;
    /* 2 */
    *margin-left: -7px;
    /* 3 */
}

/**
 * 1. Correct font size not being inherited in all browsers.
 * 2. Address margins set differently in IE 6/7, Firefox 3+, Safari 5,
 *    and Chrome.
 * 3. Improve appearance and consistency in all browsers.
 */
button,
input,
select,
textarea {
    font-size: 100%;
    /* 1 */
    margin: 0;
    /* 2 */
    vertical-align: baseline;
    /* 3 */
    *vertical-align: middle;
    /* 3 */
}

/**
 * Address Firefox 3+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
    line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 6+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 * 4. Remove inner spacing in IE 7 without affecting normal text inputs.
 *    Known issue: inner spacing remains in IE 6.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    /* 2 */
    cursor: pointer;
    /* 3 */
    *overflow: visible;
    /* 4 */
}

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
    cursor: default;
}

/**
 * 1. Address box sizing set to content-box in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 * 3. Remove excess padding in IE 7.
 *    Known issue: excess padding remains in IE 6.
 */
input[type="checkbox"],
input[type="radio"] {
    box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
    *height: 13px;
    /* 3 */
    *width: 13px;
    /* 3 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
    -webkit-appearance: textfield;
    /* 1 */
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    /* 2 */
    box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 3+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 6/7/8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
    overflow: auto;
    /* 1 */
    vertical-align: top;
    /* 2 */
}

/**
 * Remove most spacing between table cells.
 */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

html,
button,
input,
select,
textarea {
    color: #222;
}

::-moz-selection {
    background: #b3d4fc;
    text-shadow: none;
}

::selection {
    background: #b3d4fc;
    text-shadow: none;
}

img {
    vertical-align: middle;
}

fieldset {
    border: 0;
    margin: 0;
    padding: 0;
}

textarea {
    resize: vertical;
}

.chromeframe {
    margin: 0.2em 0;
    background: #ccc;
    color: #000;
    padding: 0.2em 0;
}

.br {
    white-space: pre;
}
@media (min-width: 375px) {
    .br--not-small-mobile {
        display: block;
    }
}
@media (max-width: 374px) {
    .br--small-mobile {
        display: block;
    }
}
@media (min-width: 375px) and (max-width: 767px) {
    .br--mobile {
        display: block;
    }
}
@media (max-width: 574px) {
    .br--mobile-max {
        display: block;
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .br--tablet {
        display: block;
    }
}
@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .br--tablet-landscape {
        display: block;
    }
}
@media (min-width: 1025px) {
    .br--desktop {
        display: block;
    }
}

body {
    font-family: "Lato", sans-serif;
    font-weight: bold;
    font-size: 22px;
    line-height: 40px;
    color: #484747;
}
@media (max-width: 767px) {
    body {
        font-size: 14px;
        line-height: 19px;
    }
}

h2 {
    margin-bottom: 20px;
    font-size: 40px;
    font-weight: 900;
    color: #292929;
}
h2 .sub-title {
    padding-top: 10px;
    font-size: 30px;
    font-weight: bold;
    color: #6d7f93;
}
@media (max-width: 767px) {
    h2 {
        margin-bottom: 10px;
        font-size: 18px;
    }
    h2 .sub-title {
        padding-top: 4px;
        font-size: 16px;
    }
}

p {
    margin: 15px 0;
}

.btn {
    margin-top: 21px;
    padding: 0.35em 0.5em;
    font-weight: 900;
    font-size: 30px;
    text-decoration: none;
    color: #fff;
    background-image: linear-gradient(
        to bottom,
        var(--CTA),
        hsl(calc(var(--CTA_h) - 5), calc(var(--CTA_s) + 17%), calc(var(--CTA_l) + 4%))
    );
    border: solid 1px #ffffff;
    box-shadow: 10px 10px 6px 0 rgba(255, 255, 255, 0.16);
    border-radius: 35px;
    display: inline-block;
    font-family: "Roboto", sans-serif;
}
.cart--toggle .btn,
.cart--sections .btn {
    background-image: linear-gradient(
        to bottom,
        hsl(var(--CTA_h), var(--CTA_s), calc(var(--CTA_l) + 16%)),
        hsl(calc(var(--CTA_h) - 12), var(--CTA_s), calc(var(--CTA_l) + 10%))
    );
    border: solid 0px transparent;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
}
.btn:hover {
    text-decoration: none;
    color: #fff;
    background-image: linear-gradient(to bottom, var(--CTA), var(--CTA));
}
@media (min-width: 768px) and (max-width: 1199px) {
    .btn {
        font-size: 22px;
    }
}
@media (max-width: 767px) {
    .btn {
        font-size: 14px;
        padding: 10px 20px;
        line-height: 1;
    }
}
.btn.disabled,
.btn:disabled {
    opacity: 1;
    background-image: linear-gradient(
        to bottom,
        hsl(var(--CTA_h), calc(var(--CTA_s) * 0), calc(var(--CTA_l) + 25%)),
        hsl(var(--CTA_h), calc(var(--CTA_s) * 0), calc(var(--CTA_l) + 20%))
    );
}

.citation {
    font-size: 9px;
    line-height: 1;
}
@media (max-width: 767px) {
    .citation {
        font-size: 7px;
    }
}

sup {
    font-size: 65%;
    line-height: 1;
}

.disclaimer {
    margin-top: 15px;
    margin-bottom: 6px;
    font-size: 14px;
    line-height: 1;
}
@media (max-width: 767px) {
    .disclaimer {
        margin-top: 26px;
    }
}
@media (max-width: 767px) {
    .disclaimer {
        font-size: 12px;
    }
}

.fa-rating {
    position: relative;
    white-space: nowrap;
    vertical-align: middle;
}
.fa-rating:before {
    content: "";
    font-family: "FontAwesome";
    font-weight: 400;
    vertical-align: baseline;
    letter-spacing: 8px;
}

.rating {
    text-align: center;
    display: block;
    line-height: 1em;
    font-size: 16px;
}

.rating .fa-rating.s-5:before {
    content: "";
}

.rating .fa-rating.s-4-5:before {
    content: "";
}

.rating .fa-rating.s-4:before {
    content: "";
}

.rating .fa-rating.s-3-5:before {
    content: "";
}

.rating .fa-rating.s-3:before {
    content: "";
}

.rating .fa-rating.s-2-5:before {
    content: "";
}

.rating .fa-rating.s-2:before {
    content: "";
}

.rating .fa-rating.s-1-5:before {
    content: "";
}

.rating .fa-rating.s-1:before {
    content: "";
}

.rating .fa-rating.s-0-5:before {
    content: "";
}

.rating .fa-rating.s-0:before {
    content: "　　　　　";
}

.icon {
    overflow: hidden;
    display: inline-block;
    width: 1em;
    height: 1em;
    margin: 0;
    text-align: center;
    vertical-align: middle;
    font-size: 1em;
    /* default-size */
    fill: currentColor;
    /* default color */
    color: currentColor;
    /* default color when currentColor is used */
    box-sizing: content-box;
    pointer-events: none;
}

:focus,
:focus-visible {
    outline: 0 none;
}

section {
    padding: 60px 0;
}
@media (max-width: 991px) {
    section {
        overflow: hidden;
    }
}
@media (max-width: 767px) {
    section {
        padding: 30px 0;
    }
}

picture,
img {
    width: 100%;
}

b {
    font-weight: bold;
}

.bg-wrap,
.leaky .video:after {
    content: "";
    position: absolute;
    top: -58px;
    right: 0;
    bottom: -20px;
    left: 0;
    z-index: -1;
    width: 100%;
    height: calc(100% - 22px);
    margin-left: -100px;
    background-image: url("https://cdn.gundrymd.com/images/thenewgutfix_230201a/back_d.jpeg");
}
@media (max-width: 767px) {
    .bg-wrap,
    .leaky .video:after {
        margin-left: 70px;
    }
}

@media (min-width: 520px) {
    .modal--label .modal-dialog {
        max-width: 90%;
        margin-right: auto;
        margin-left: auto;
    }
}
.modal-dialog img {
    width: auto;
    max-width: 90vw;
    height: auto;
    max-height: 95vh;
    margin: auto;
}

.rating {
    font-size: 30px;
    text-align: left;
}
.rating .fa-rating {
    letter-spacing: 2px;
    color: #dfb03c;
}

.video {
    position: relative;
    width: 50%;
    margin: 0 auto;
    padding: 0;
    text-align: center;
}
.video video-js {
    position: absolute;
    top: 0;
    left: 0;
}
.video img.placeholder {
    width: 100%;
}
.video .btn {
    opacity: 0;
}
.video .btn.show {
    opacity: 1;
}

body.variant-A section:not(.top):not(.typewriter-wrap),
body.variant-A footer,
body.variant-A .cta-wrapper {
    display: none;
}
body.variant-A section.cart {
    position: absolute;
}

.salesBanner {
    cursor: pointer;
}
@media (min-width: 1025px) {
    .salesBanner {
        overflow: hidden;
        position: relative;
        height: 120px;
    }
    .salesBanner img {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        width: auto;
        min-width: 1920px;
    }
}
.salesBanner.isSticky {
    position: sticky;
    top: 0;
    z-index: 999;
}

.video {
    overflow: hidden;
    position: relative;
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}
@media (max-width: 374px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        transform: translate(-50%, -50%) scale(0.8);
    }
}
@media (min-width: 375px) and (max-width: 767px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        transform: translate(-50%, -50%) scale(0.9);
    }
}
@media (min-width: 768px) {
    .video.has-custom-play .video-js .vjs-big-play-button {
        transform: translate(-50%, -50%) scale(0.8);
    }
}
.video.is-muted-autoplay .vjs-big-play-button {
    display: none;
}
.video .vjs-big-play-button {
    color: var(--mainColor);
}
.video__placeholder {
    width: 100%;
    opacity: 0;
}
@media (hover: hover) and (pointer: fine) {
    .video:hover .vjs-big-play-button {
        color: hsla(calc(var(--mainColor_h) + 1), calc(var(--mainColor_s) + 39%), calc(var(--mainColor_l) - 26%), 0.5);
    }
}

.vslSection {
    overflow: visible;
    position: relative;
    z-index: 1;
    padding-top: 0;
    padding-bottom: 0;
    text-align: center;
    background-color: hsl(var(--mainColor_h), var(--mainColor_s), calc(var(--mainColor_l) + 40%));
}
.vslSection__title {
    color: var(--mainColor);
    line-height: 1.4;
}
@media (max-width: 767px) {
    .vslSection__title {
        margin-bottom: 1em;
        font-size: 20px;
    }
}
@media (min-width: 768px) {
    .vslSection__title {
        margin-bottom: 1.25em;
        font-size: 24px;
    }
}
@media (max-width: 889px) {
    .vslSection .video {
        max-width: 540px;
    }
}
@media (min-width: 890px) {
    .vslSection .video {
        max-width: 682px;
    }
}
.vslSection .cta-wrap {
    margin-top: 0;
}
.vslSection--framed {
    padding-inline: 15px;
}
.vslSection--framed .vslSection__title {
    color: #fff;
}
.vslSection--framed .video {
    border-radius: 8px;
}
.vslSection--hasTitle {
    background-color: var(--mainColor);
}
.vslSection--hasTitle:not(.vslSection--framed) .vslSection__title {
    margin-block: 0;
    color: #fff;
}
@media (max-width: 374px) {
    .vslSection--hasTitle:not(.vslSection--framed) .vslSection__title {
        font-size: 22px;
    }
}
@media (min-width: 375px) and (max-width: 767px) {
    .vslSection--hasTitle:not(.vslSection--framed) .vslSection__title {
        font-size: 26px;
    }
}
@media (max-width: 767px) {
    .vslSection--hasTitle:not(.vslSection--framed) .vslSection__title {
        padding-block: 0.5em;
    }
}
@media (min-width: 768px) {
    .vslSection--hasTitle:not(.vslSection--framed) .vslSection__title {
        padding-block: 0.5em;
        font-size: 30px;
    }
}
@media (min-width: 521px) {
    .vslSection--hasTitle:not(.vslSection--framed) .video {
        border-top-right-radius: 2px;
        border-top-left-radius: 2px;
    }
}
body.v2-01:not(.gundry) .features + .vslSection {
    margin-top: 60px;
}
@media (max-width: 767px) {
    body.v2-01:not(.gundry) .features + .vslSection {
        margin-top: 30px;
    }
}

.top {
    padding-top: 18px;
    text-align: center;
    background-image: var(--top_bgimg_d);
    background-size: cover;
    background-repeat: no-repeat;
    color: #ffffff;
}
@media (max-width: 767px) {
    body.v2-01 .top {
        padding-bottom: 100px;
        background-size: cover;
    }
}
@media (min-width: 768px) {
    body.v2-01 .top {
        padding-bottom: 140px;
    }
}
body.v2-01.show-promoBanner:not(.show-promoBanner--club) .top {
    padding-top: 0;
}
.top .content {
    margin: 0 0 305px;
}
body.v2-01 .top .content {
    margin: 0;
}
.top .content h1 {
    position: relative;
    z-index: 1;
    padding: 5px 0;
    font-size: 50px;
    font-weight: bold;
    font-family: "Roboto", sans-serif;
    line-height: 1.2;
    background-color: hsla(
        calc(var(--mainColor_h) + 1),
        calc(var(--mainColor_s) + 39%),
        calc(var(--mainColor_l) - 26%),
        0.5
    );
}
.top .content h1 span b {
    color: #ff6868;
}
body.v2-01.banner .top .content h1 {
    font-weight: normal;
    font-size: 30px;
    letter-spacing: -0.4px;
    padding: 28px 0;
    background-color: #fcfcfe;
    box-shadow: 0 3px 6px 0 #1c3a5e;
    color: #1c3a5e;
    background-image: var(--top_bgbanner_d);
    background-position-y: center;
    background-position-x: 70%;
    background-repeat: no-repeat;
}
body.v2:not(.banner) .top .content h1 span {
    display: block;
}
@media (max-width: 767px) {
    body.v2-01.banner .top .content h1 {
        font-size: 20px;
        padding: 7px 15px;
        background-image: var(--top_bgbanner_m);
        background-position-x: right;
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    body.v2-01.banner .top .content h1 {
        font-size: 30px;
        padding: 4px 8px;
        background-position-x: right;
    }
}
@media (min-width: 1025px) {
    body.v2-01:not(.banner) .top .content h1 {
        font-size: 40px;
    }
    body.v2-01:not(.banner) .top .content h1 span {
        display: inline-block;
    }
}
body.v2-01:not(.banner) .vslSection--hasTitle ~ .top .content h1 {
    padding-block: 12px;
    color: var(--mainColor);
    background-color: #c5d260;
}
@media (max-width: 767px) {
    body.v2-01:not(.banner) .vslSection--hasTitle ~ .top .content h1 {
        font-size: 20px;
    }
}
@media (min-width: 768px) {
    body.v2-01:not(.banner) .vslSection--hasTitle ~ .top .content h1 {
        font-size: 28px;
    }
}
body.show-promoBanner:not(.show-promoBanner--club) .top .content h1 {
    display: none;
}
body.v2-01 .top--cartToggle,
body.v2-01 .top--cartToggleSections {
    padding-block: 0;
}
body.v2-01.show-promoBanner:not(.show-promoBanner--club) .top--cartToggle,
body.v2-01.show-promoBanner:not(.show-promoBanner--club) .top--cartToggleSections {
    padding-bottom: 0;
}
.top--cartToggle .content h1,
.top--cartToggleSections .content h1 {
    background-color: var(--mainColor);
}
@media (min-width: 1025px) {
    .top--cartToggleSections {
        display: none;
    }
}
.top--cartToggleSections + .cart--toggle {
    padding-top: 1em;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .top .content h1 {
        font-size: 24px;
    }
}
@media (max-width: 767px) {
    .top {
        padding-top: 6px;
        background-size: contain;
        background-image: var(--top_bgimg_m);
    }
    .top .content h1 {
        font-size: 20px;
    }
    .top--cartToggle {
        padding: 0;
    }
}
:root {
    --cartToggleSubscriptionModeDefaultRadius: 8px;
}

.cart {
    --btnWideMaxWidth: 256px;
    text-align: center;
    color: var(--mainColor);
}
@media (min-width: 768px) {
    .cart {
        padding-block: 30px;
    }
}
.cart h2 {
    font-family: "Lato", sans-serif;
    font-weight: 900;
    color: var(--mainColor);
}
@media (max-width: 767px) {
    .cart h2 {
        margin-bottom: 10px;
        font-size: 20px;
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    .cart h2 {
        margin-bottom: 10px;
        font-size: 26px;
    }
}
@media (min-width: 1200px) {
    .cart h2 {
        margin-bottom: 15px;
        font-size: 35px;
    }
}
.cart__details {
    position: relative;
    z-index: 0;
    max-width: 520px;
    margin-right: auto;
    margin-left: auto;
    padding-inline: 15px;
    font-family: "Roboto", sans-serif;
    font-weight: bold;
    line-height: 1;
}
.cart__products {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: var(--btnWideMaxWidth);
    margin-inline: auto;
    margin-bottom: 10px;
}
.cart__product {
    width: 30%;
    line-height: 1;
    color: var(--mainColor);
    background-color: white;
    border: 1px solid var(--mainColor);
    border-radius: 14px;
    user-select: none;
}
@media (hover: hover) and (pointer: fine) {
    .cart__product {
        cursor: pointer;
    }
}
.wide-buttons .cart__product {
    width: 31%;
}
@media (max-width: 767px) {
    .wide-buttons .cart__product {
        padding: 4px 0;
    }
}
@media (max-width: 767px) {
    .cart__product {
        padding-top: 6.5px;
        padding-bottom: 6.5px;
        font-size: 26px;
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    .cart__product {
        padding-top: 7px;
        padding-bottom: 7px;
        font-size: 28px;
    }
}
@media (min-width: 1200px) {
    .cart__product {
        padding-top: 7px;
        padding-bottom: 7px;
        font-size: 30px;
    }
}
.cart__product.active {
    color: white;
    background-color: var(--mainColor);
    border-color: var(--mainColor);
    pointer-events: none;
}
.cart__img {
    position: relative;
    z-index: -1;
    width: 65%;
    margin: 0 auto;
}
.cart__img--unit1,
.cart__img--unit3,
.cart__img--unit6 {
    display: none;
}
.cart--unit1 .cart__img--unit1 {
    display: block;
}
.cart--unit3 .cart__img--unit3 {
    display: block;
}
.cart--unit6 .cart__img--unit6 {
    display: block;
}
.cart .price {
    font-size: var(--priceFontSize, 30px);
    color: var(--mainColor);
}
@media (max-width: 767px) {
    .cart .price {
        margin-bottom: 5px;
    }
}
@media (min-width: 768px) {
    .cart .price {
        --priceFontSize: 40px;
        margin-bottom: 10px;
    }
}
@media (max-width: 1024px) {
    .cart .price {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
.cart .price__prefix {
    margin-inline-end: 5px;
}
.cart .summary {
    margin-block-end: 15px;
    line-height: 1.2;
    color: #484747;
}
@media (max-width: 1024px) {
    .cart .summary {
        line-height: 1.4;
    }
}
.cart .retail {
    font-weight: normal;
    font-size: var(--retailFontSize, 14px);
}
.cart .retail__value {
    text-decoration: line-through;
}
@media (min-width: 768px) and (max-width: 1199px) {
    .cart .retail {
        --retailFontSize: 16px;
    }
}
@media (min-width: 1200px) {
    .cart .retail {
        --retailFontSize: 24px;
    }
}
.cart .saving {
    font-size: var(--savingFontSize, 14px);
}
@media (min-width: 768px) and (max-width: 1199px) {
    .cart .saving {
        --savingFontSize: 16px;
    }
}
@media (min-width: 1200px) {
    .cart .saving {
        --savingFontSize: 26px;
    }
}
.cart .shipping {
    font-size: var(--shippingFontSize, 14px);
}
.cart .shipping__value {
    display: inline-block;
}
.cart .shipping .icon {
    font-size: 1.6em;
    color: var(--mainColor);
}
@media (min-width: 768px) and (max-width: 1199px) {
    .cart .shipping {
        --shippingFontSize: 16px;
    }
}
@media (max-width: 1024px) {
    .cart .shipping::before {
        content: "+";
    }
}
@media (min-width: 1200px) {
    .cart .shipping {
        --shippingFontSize: 26px;
    }
}

.cart-toggle {
    --btnWideMaxWidth: 275px;
}
@media (max-width: 374px) {
    .cart-toggle {
        --btnWideMaxWidth: 100%;
    }
}
.cart-toggle h2 {
    position: relative;
    padding-bottom: 20px;
    font-weight: normal;
}
.cart-toggle h2 b {
    display: block;
    font-size: 32px;
}
@media (max-width: 767px) {
    .cart-toggle h2 b {
        margin-top: 15px;
    }
}
.cart-toggle h2::after {
    content: "";
    display: block;
    --size: 70px;
    width: var(--size);
    height: 2px;
    background-color: #c5d260;
    border-radius: 5px;
    position: absolute;
    bottom: 0;
    left: calc(50% - var(--size) / 2);
}
.cart-toggle--v02 h2 {
    margin-bottom: 0.75em;
    padding-bottom: 0;
}
.cart-toggle--v02 h2 b {
    font-size: inherit;
    font-weight: 900;
}
.cart-toggle--v02 h2::after {
    content: none;
}
.cart-toggle--v02 .retail {
    --retailFontSize: 16px;
    margin-top: 0.5em;
    margin-bottom: 0.25em;
}
.cart-toggle--v02 .saving {
    --savingFontSize: 18px;
}
.cart-toggle--v02 .price {
    --priceFontSize: 36px;
}
.cart-toggle .cart__savingTitle {
    display: none;
}
.cart-toggle .cart__optionsSelect {
    color: #484747;
    font-size: 18px;
    font-weight: normal;
    margin: 10px 0;
}
.cart-toggle .cart__products-title {
    position: relative;
    margin: 20px auto;
    color: var(--mainColor);
    font-size: 14px;
    font-weight: normal;
}
.cart-toggle .cart__products-title b {
    display: block;
    font-size: 20px;
}
.cart-toggle .cart__products-title::before {
    --size: 70px;
    position: absolute;
    top: -20px;
    left: calc(50% - var(--size) / 2);
    display: block;
    width: var(--size);
    height: 2px;
    background-color: #c5d260;
    border-radius: 5px;
}
.cart-toggle .cart__products {
    flex-direction: column;
    align-items: center;
    row-gap: 6px;
}
.cart-toggle .cart__product {
    width: 100%;
    border-radius: var(--cartToggleSubscriptionModeDefaultRadius);
    font-size: 20px;
    padding: 10px 0;
}
.cart-toggle .active .cart__products-title::before {
    content: "";
}
.cart-toggle .shipping .icon {
    display: none;
}
.cart-toggle .retail {
    color: var(--mainColor);
}
.cart-toggle .price__prefix {
    font-size: var(--pricePrefixFontSize, 16px);
}

.btn-cart-style {
    font-size: var(--btnCartStyleFontSize, 20px);
    font-weight: bold;
    text-transform: uppercase;
}
.cart-toggle .btn-cart-style {
    margin-top: 15px;
    padding-block: 15px;
    line-height: 1;
}
@media (max-width: 374px) {
    .btn-cart-style {
        --btnCartStyleFontSize: 18px;
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    .btn-cart-style {
        --btnCartStyleFontSize: 22px;
    }
}
@media (min-width: 1200px) {
    .btn-cart-style {
        --btnCartStyleFontSize: 30px;
    }
}
.cart-toggle .btn-cart-style.btn,
.cart-sections .btn-cart-style.btn {
    border-radius: var(--cartToggleSubscriptionModeDefaultRadius);
}
.btn-cart-style.btn--wide {
    margin-inline: auto;
    border-radius: 14px;
    width: auto;
    min-width: var(--btnWideMaxWidth, 256px);
}
.btn-cart-style.btn--wideSS {
    margin-inline: auto;
    border-radius: 14px;
}
@media (max-width: 767px) {
    .btn-cart-style.btn--wideSS {
        width: auto;
        min-width: var(--btnWideMaxWidth, 256px);
    }
}
@media (min-width: 768px) {
    .btn-cart-style.btn--wideSS {
        width: 80%;
    }
}

.subscribe-wrap {
    overflow: hidden;
    position: relative;
    height: auto;
    max-height: calc(30px + 1em);
    padding-inline: 15px;
    border: 1px solid var(--mainColor);
    border-radius: 4px;
    transition: all 250ms ease-in-out;
}
@media (max-width: 767px) {
    .subscribe-wrap {
        --radioSize: 22px;
        --radioSelectedSize: 14px;
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .subscribe-wrap {
        --radioSize: 30px;
        --radioSelectedSize: 22px;
    }
}
@media (min-width: 1025px) {
    .subscribe-wrap {
        --radioSize: 36px;
        --radioSelectedSize: 26px;
    }
}
.cart-toggle .subscribe-wrap {
    border-width: 3px;
}
.cart-toggle .subscribe-wrap:not(.active) {
    max-height: 58px;
    border-color: transparent;
    box-shadow: 0px 3px 6px #00000029;
}
.cart-toggle .subscribe-wrap:not(.active) .cart__products-title {
    visibility: hidden;
}
@media (max-width: 374px) {
    .subscribe-wrap {
        font-size: 18px;
    }
    html:lang(es) .subscribe-wrap {
        padding-inline: 10px;
        font-size: 16px;
    }
}
@media (min-width: 375px) and (max-width: 519px) {
    html:lang(es) .subscribe-wrap {
        font-size: 18px;
    }
}
@media (min-width: 375px) and (max-width: 767px) {
    .subscribe-wrap {
        font-size: 20px;
    }
}
@media (min-width: 768px) {
    .subscribe-wrap {
        font-size: 26px;
    }
}
.subscribe-wrap + .subscribe-wrap {
    margin-top: 15px;
}
.subscribe-wrap__option {
    position: relative;
    padding-block: 15px;
    text-transform: uppercase;
    color: hsl(calc(var(--mainColor_h) - 2), calc(var(--mainColor_s) - 14%), calc(var(--mainColor_l) + 17%));
}
@media (max-width: 374px) {
    html:lang(es) .subscribe-wrap__option {
        padding-left: 20px;
    }
}
@media (hover: hover) and (pointer: fine) {
    .subscribe-wrap__option {
        cursor: pointer;
    }
}
.active .subscribe-wrap__option {
    color: var(--mainColor);
    pointer-events: none;
}
.cart-toggle .subscribe-wrap__option {
    padding-bottom: 20px;
}
@media (max-width: 374px) {
    .cart-toggle .subscribe-wrap__option {
        font-size: 18px;
        padding-block: 16px;
    }
}
@media (min-width: 375px) and (max-width: 413px) {
    .cart-toggle .subscribe-wrap__option {
        font-size: 22px;
    }
}
@media (min-width: 414px) {
    .cart-toggle .subscribe-wrap__option {
        font-size: 24px;
    }
}
.subscribe-wrap__radio {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    flex: 0 0 auto;
    display: inline-block;
    width: var(--radioSize);
    height: var(--radioSize);
    margin-right: 5px;
    font-weight: 900;
    background-color: #fff;
    border: 1px solid var(--mainColor);
    border-radius: 50%;
}
.subscribe-wrap__radio::after {
    width: var(--radioSelectedSize);
    height: var(--radioSelectedSize);
}
.subscribe-wrap__radio::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0);
    transform-origin: center;
    transition: transform 250ms ease-in-out;
    background-color: var(--mainColor);
    border-radius: 50%;
}
.active .subscribe-wrap__radio:after {
    transform: translate(-50%, -50%) scale(1);
    transform-origin: center;
}
.cart-toggle--vipBadge .subscribe-wrap__radio + span,
.cart-toggle--v02 .subscribe-wrap__radio + span {
    font-size: var(--subscribeModefontSize);
}
@media (max-width: 374px) {
    .cart-toggle--vipBadge .subscribe-wrap__radio + span {
        --subscribeModefontSize: 16px;
    }
}
@media (min-width: 375px) and (max-width: 413px) {
    .cart-toggle--vipBadge .subscribe-wrap__radio + span {
        --subscribeModefontSize: 18px;
    }
}
@media (min-width: 414px) and (max-width: 429px) {
    .cart-toggle--vipBadge .subscribe-wrap__radio + span {
        --subscribeModefontSize: 21px;
    }
}
.cart-toggle--v02 .subscribe-wrap__radio + span {
    --subscribeModefontSize: 24px;
}
.subscribe-wrap__subscribe-info {
    position: relative;
    margin-top: -10px;
    padding-block: 6px 15px;
    font-size: 0.8em;
    color: hsl(calc(var(--mainColor_h) - 2), calc(var(--mainColor_s) - 14%), calc(var(--mainColor_l) + 17%));
    cursor: pointer;
}
.subscribe-wrap__subscribe-info span {
    position: relative;
    display: inline-block;
    width: 1.25em;
    height: 1.2em;
    margin-left: 0.5em;
    font-weight: normal;
}
.subscribe-wrap__subscribe-info span::after {
    content: "";
    position: absolute;
    top: -0.15em;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    border: 1px solid currentColor;
    border-radius: 50%;
}
.subscribe-wrap--subscribe-info {
    max-height: calc(30px + 1em);
}
.subscribe-wrap--subscribe-info.subscribe {
    max-height: calc(39px + 2em);
}
.cart-toggle .subscribe-wrap--subscribe-info.subscribe {
    max-height: calc(45px + 2em);
}
.subscribe-wrap.active,
.cart-toggle .subscribe-wrap.active,
.subscribe-wrap--subscribe-info.active,
.cart-toggle .subscribe-wrap--subscribe-info.active {
    max-height: 1500px;
}

.subscribe-wrap__vip-badge,
.cart__vip-badge {
    overflow: hidden;
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 100%;
    height: 100%;
    color: #fff;
    pointer-events: none;
}
.subscribe-wrap__vip-badge::before,
.cart__vip-badge::before {
    content: attr(data-extra);
    display: block;
    float: right;
    position: relative;
    top: -15px;
    right: -53px;
    max-width: 136px;
    padding: 2em 4em 0.5em;
    font-size: 11px;
    background-image: linear-gradient(to right, var(--CTA), hsl(var(--CTA_h), var(--CTA_s), calc(var(--CTA_l) - 3%)));
    transform: rotate(34deg);
}

.cart-toggle--v02 .cart__details[data-check="un-subscribe"] .subscribe-wrap__vip-badge {
    display: none;
}

.purchase-box {
    margin-block-end: 15px;
    color: var(--mainColor);
}
.purchase-box__label {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 2;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.cart-toggle .purchase-box__label {
    justify-content: flex-start;
}
.cart-toggle--v02 .purchase-box__label {
    justify-content: center;
}
.cart-sections .summary .purchase-box__label {
    display: none;
}
.purchase-box__checkbox {
    position: absolute;
    opacity: 0;
    cursor: pointer;
}
.purchase-box__checkmark {
    position: relative;
    display: inline-block;
    flex-shrink: 0;
    height: 1.5em;
    width: 1.5em;
    margin-inline-end: 7.5px;
    font-size: 20px;
    text-align: left;
    line-height: 1.2;
    background-color: initial;
    border: 1px solid var(--mainColor);
    border-radius: 4px;
}
.purchase-box__checkmark::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: none;
    font-family: "FontAwesome";
    font-size: 1.25em;
    font-weight: normal;
}
.checked .purchase-box__checkmark::after {
    display: block;
}
.cart-toggle .purchase-box__checkmark,
.cart-sections .purchase-box__checkmark {
    font-size: 16px;
}
@media (max-width: 374px) {
    .purchase-box__text {
        font-size: 14px;
    }
}
@media (min-width: 375px) {
    .purchase-box__text {
        font-size: 18px;
    }
}
.cart-toggle .purchase-box__text {
    opacity: 0.75;
}
.purchase-box__disclaimer {
    font-size: 12px;
    font-weight: normal;
    line-height: 1.4;
    text-align: left;
}
.cart-toggle .purchase-box__disclaimer {
    margin-top: 1em;
}
.cart-toggle--v02 .purchase-box__disclaimer {
    overflow: hidden;
    height: auto;
    max-height: 0;
    margin-top: 0;
    transition: all 250ms ease-in-out;
}
.cart-toggle--v02 .purchase-box__label.checked + .purchase-box__disclaimer {
    max-height: 250px;
    margin-top: 1em;
}
.purchase-box__disclaimer a {
    color: var(--mainColor);
    text-decoration: underline;
}
.purchase-box__disclaimer a:hover {
    text-decoration: none;
}

.benefits-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    row-gap: 0.25em;
    margin-block: 15px;
    margin-inline: auto;
}
html[lang="en"] .cart:not(.cart--sections) .benefits-list {
    max-width: 340px;
}
.benefits-list__item {
    display: flex;
    align-items: center;
    column-gap: 0.25em;
    flex: 1 1 50%;
    text-align: left;
    line-height: 1.4;
    color: #484747;
}
@media (max-width: 374px) {
    .benefits-list__item {
        font-size: 12px;
    }
}
@media (min-width: 375px) and (max-width: 767px) {
    .benefits-list__item {
        font-size: 14px;
    }
}
@media (min-width: 768px) {
    .benefits-list__item {
        font-size: 16px;
    }
    .cart-toggle .benefits-list__item,
    .cart-sections .benefits-list__item {
        line-height: 2.2;
    }
}
html[lang="es"] .benefits-list__item:nth-child(odd) {
    flex: 1 1 40%;
}
html[lang="es"] .benefits-list__item:nth-child(even) {
    flex: 1 1 60%;
}
.benefits-list .fa {
    font-size: 1.25em;
    color: #c5d260;
}

.morning-sale-disclaimer {
    display: none;
}
body.show-promoBanner .morning-sale-disclaimer {
    display: inline;
}

.modal--cart .modal-dialog,
.modal--info .modal-dialog {
    justify-content: center;
}
.modal--cart .modal-content,
.modal--info .modal-content {
    max-width: 375px;
    border: 0 none;
    border-radius: 40px 40px 38px 38px;
}
.modal--cart .modal-header,
.modal--info .modal-header {
    position: relative;
    justify-content: center;
    padding-inline: 15px;
    border-bottom: 0 none;
    border-top-right-radius: 38px;
    border-top-left-radius: 38px;
}
.modal--cart .modal-title,
.modal--info .modal-title {
    font-size: 22px;
    font-weight: 700;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    line-height: 1.2;
}
@media (max-width: 374px) {
    .modal--cart .modal-title,
    .modal--info .modal-title {
        font-size: 20px;
    }
}
.modal--cart .modal-title small,
.modal--info .modal-title small {
    font-size: 80%;
}
.modal--cart .close,
.modal--info .close {
    opacity: 1;
    position: absolute;
    right: 0;
    width: 2.6em;
    height: 95%;
    margin-inline: 0;
    padding-block: 0;
    font-weight: 100;
    color: #fff;
}
@media (max-width: 374px) {
    .modal--cart .close,
    .modal--info .close {
        right: -0.5rem;
    }
}
.modal--cart .close::before,
.modal--info .close::before {
    content: "";
    position: absolute;
    top: 52.5%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 1.2em;
    height: 1.2em;
    border: 1px solid currentColor;
    border-radius: 50%;
}
@media (max-width: 374px) {
    .modal--cart .close + .modal-title,
    .modal--info .close + .modal-title {
        font-size: 18px;
    }
}
@media (min-width: 375px) and (max-width: 413px) {
    .modal--cart .close + .modal-title,
    .modal--info .close + .modal-title {
        font-size: 20px;
    }
}
.modal--cart .modal-body,
.modal--info .modal-body {
    padding-inline: 15px;
}
.modal--cart .modal-footer,
.modal--info .modal-footer {
    padding: 0 15px 15px;
    border-top: 0 none;
}
.modal--cart .modal-header {
    background-color: var(--mainColor);
}
.modal--cart .modal-body {
    padding-block: 15px;
}
.modal--cart .modal-body__cta {
    width: 100%;
    padding-inline: 5px;
    font-size: var(--modalCartBtnFontSize, 20px);
    font-weight: 600;
    border-radius: 14px;
}
@media (max-width: 374px) {
    .modal--cart .modal-body__cta {
        --modalCartBtnFontSize: 18px;
    }
}
.modal--cart .modal-body__cta--subscribe {
    margin-top: 0;
    line-height: 1.4;
}
.modal--cart .modal-body__cta--subscribe small {
    display: block;
    font-size: 0.8em;
}
.modal--cart .modal-body__cta--regular {
    margin-top: 15px;
    line-height: 1.3;
    color: #394889;
    background-color: #fff;
    background-image: none;
    border-color: 1px solid var(--mainColor);
}
.modal--cart .amount {
    text-align: center;
    font-weight: 700;
    line-height: 1.2;
}
.modal--cart .amount__periodicity {
    font-size: 0.68em;
    font-weight: 500;
}
.modal--cart .amount--continuity {
    font-size: 50px;
    color: #394889;
}
@media (max-width: 374px) {
    .modal--cart .amount--continuity {
        font-size: 46px;
    }
}
.modal--cart .amount--regular {
    margin-top: 15px;
    font-size: 20px;
    color: #ec5822;
}
@media (max-width: 374px) {
    .modal--cart .amount--regular {
        font-size: 16px;
    }
}
.modal--cart .amount--regular .amount__value {
    text-decoration: line-through;
}
.modal--cart .disclaimer {
    margin-block: 0 10px;
    margin-inline: 0;
    font-weight: 600;
    line-height: 1.4;
    text-align: left;
}
.modal--cart .disclaimer b {
    font-weight: 900;
}
.modal--cart .disclaimer a {
    color: var(--mainColor);
}
.modal--popover .modal-body__cta-wrapper {
    display: flex;
    flex-direction: column-reverse;
}
.modal--popover .modal-body__cta {
    padding-block: 0.35em;
    border-radius: var(--cartToggleSubscriptionModeDefaultRadius);
}
.modal--popover .modal-body__cta--subscribe {
    margin-top: 15px;
    padding-block: 0.65em;
}
.modal--popover .modal-body__cta--regular {
    --modalCartBtnFontSize: 16px;
    padding-block: 1.04em;
}
@media (max-width: 374px) {
    .modal--popover .modal-body__cta--regular {
        --modalCartBtnFontSize: 14px;
    }
}
.modal--popover .modal-footer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}
.modal--popover .modal-footer > * {
    flex: 0 1 calc(50% - 30px / 2);
    margin: 0;
}
.modal--popover .modal-footer .benefits-list {
    position: relative;
    flex-wrap: nowrap;
    flex-direction: column;
    justify-content: flex-start;
    align-self: flex-start;
    width: 55%;
    z-index: 1;
}
.modal--popover .modal-footer .benefits-list:first-child:last-child {
    margin-inline: auto;
}
.modal--popover .modal-footer .benefits-list__item {
    white-space: nowrap;
}
.modal--popover .modal-footer .benefits-list__item:nth-child(even) {
    padding-left: 0;
}
@media (max-width: 374px) {
    .modal--popover .modal-footer .benefits-list__item {
        line-height: 2.5;
    }
}
@media (min-width: 375px) {
    .modal--popover .modal-footer .benefits-list__item {
        line-height: 2.65;
    }
}
.modal--popover .modal-footer .benefits-list .fa {
    margin-right: 0.5em;
}
.modal--popover .modal-footer picture {
    position: relative;
    justify-content: flex-end;
    align-self: flex-end;
    min-width: 45%;
    margin-top: calc(-1 * 30px);
    margin-right: -5px;
    margin-bottom: -15px;
    pointer-events: none;
}
.modal--popover .modal-footer picture img {
    width: 100%;
}
.modal--info .modal-header {
    background-color: #a7cd06;
}
.modal--info .modal-body {
    padding-block: 30px;
}
.modal .info-list {
    font-weight: normal;
    line-height: 1.4;
}
@media (max-width: 374px) {
    .modal .info-list {
        font-size: 16px;
    }
}
@media (min-width: 375px) {
    .modal .info-list {
        font-size: 18px;
    }
}
.modal .info-list__item {
    padding-left: 1.5em;
}
.modal .info-list__item .fa {
    margin-inline: -1.5em 0.25em;
    color: #a7cd06;
}
.modal .info-list__item + .info-list__item {
    margin-top: 1em;
}

.popover-wrapper {
    position: relative;
}

.purchase-popover {
    --popoverTitleFontSize: 18px;
    --popoverTitleFontWeight: bold;
    opacity: 0;
    visibility: hidden;
    position: absolute;
    left: 50%;
    bottom: 100%;
    height: auto;
    max-height: 350px;
    margin-bottom: 0.2em;
    padding: 1em;
    font-family: "Roboto", sans-serif;
    color: var(--popoverColor, var(--mainColor));
    background-image: linear-gradient(
        to bottom,
        hsl(var(--CTA_h), var(--CTA_s), calc(var(--CTA_l) + 16%)),
        hsl(calc(var(--CTA_h) - 12), var(--CTA_s), calc(var(--CTA_l) + 10%))
    );
    border-radius: var(--cartToggleSubscriptionModeDefaultRadius);
    transform: translate(-50%, -25px);
    transition: all 250ms ease-in-out;
    pointer-events: none;
}
.purchase-popover::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -0.5em;
    width: 0;
    height: 0;
    border-top: 0.5em solid hsl(calc(var(--CTA_h) - 12), var(--CTA_s), calc(var(--CTA_l) + 10%));
    border-left: 0.45em solid transparent;
    border-right: 0.45em solid transparent;
    transform: translateX(-50%);
}
.purchase-popover__title {
    font-size: var(--popoverTitleFontSize);
    font-weight: var(--popoverTitleFontWeight);
}
.purchase-popover__body {
    display: flex;
    justify-content: center;
    align-items: center;
    column-gap: 0.5em;
}
.purchase-popover__cta {
    font-weight: var(--popoverTitleFontWeight);
    color: inherit;
}
.purchase-popover__cta:hover {
    color: inherit;
}
.cart-sections .purchase-popover__cta,
.cart-toggle .purchase-popover__cta {
    font-size: var(--popoverTitleFontSize);
    background-image: none;
    padding-inline: 2em;
}
.purchase-popover__cta--regular {
    background: var(--popoverDeclineBg, none);
}
.cart-sections .purchase-popover__cta--regular,
.cart-toggle .purchase-popover__cta--regular {
    border: 1px solid var(--popoverDeclineBg, var(--mainColor));
}
.purchase-popover__cta--subscribe {
    background: var(--popoverProceedBg, #fff);
    border: 1px solid var(--popoverProceedBg, #fff);
}
.purchase-popover--show {
    opacity: 1;
    visibility: visible;
    transform: translate(-50%, 0);
    pointer-events: all;
}
.purchase-popover--once ~ .btn.cta {
    pointer-events: none;
}
.cart-toggle .purchase-popover {
    width: calc(var(--btnWideMaxWidth) + 30px);
}
@media (max-width: 374px) {
    .cart-toggle .purchase-popover {
        --btnWideMaxWidth: calc(100% - 30px / 2);
    }
}

.notificationText {
    padding: 0;
}
.notificationText .container-lg {
    padding: 0;
    max-width: 500px;
}
.notificationText p {
    margin: 8px 0;
    font-size: 16px;
    text-align: center;
    line-height: 18px;
}
.notificationText p .highlight__red {
    color: #ff1d1d;
    font-weight: 900;
    font-size: 18px;
}
.notificationText p .highlight__green {
    color: #4aad15;
}
.v2 .highlight__red {
    color: #ff1d1d;
    font-weight: 900;
    font-size: 18px;
}
.v2 .highlight__green {
    color: #4aad15;
}
.v2 .notificationText p .highlight__green {
    color: #95de6e;
}

body:not(.v2) .notificationText + .cart {
    padding-top: 0;
}
@media (min-width: 768px) {
    body:not(.v2) .notificationText + .cart h2 {
        margin-bottom: 0;
        margin-top: -8px;
        font-size: 40px;
    }
}

@media (max-width: 767.98px) {
    .notificationText p {
        margin: 5px 0 0;
        font-size: 12px;
        line-height: 14px;
    }
    .notificationText p .highlight__red {
        font-size: 13px;
    }
    .notificationText + .cart h2 {
        margin: 0;
        font-size: 20px;
    }
    body:not(.v2) .cart .products {
        margin-top: -12px;
    }
}

.features {
    padding-top: 0;
}
@media (min-width: 1200px) {
    body.v2-01:not(.gundry) .features {
        padding-bottom: 0;
    }
}
.features ul li {
    font-size: 40px;
    font-weight: 800;
    color: var(--mainColor);
    text-align: center;
}
@media (min-width: 1200px) {
    body.v2-01 .features ul li,
    body.spCart .features ul li {
        font-size: 22px;
        line-height: 1.2;
    }
}
.cart .features ul li {
    font-size: 12px !important;
}
.features ul li img,
.features ul li svg {
    width: auto;
    max-height: 180px;
    margin-bottom: 10px;
}
@media (min-width: 1200px) {
    body.v2-01 .features ul li img,
    body.spCart .features ul li img,
    body.v2-01 .features ul li svg,
    body.spCart .features ul li svg {
        max-height: 95px;
    }
}
.features ul li svg {
    max-width: 180px;
}
@media (min-width: 1200px) {
    body.v2-01 .features ul li svg,
    body.spCart .features ul li svg {
        max-width: 95px;
    }
}
.features ul li svg {
    width: 100%;
    height: 100%;
    color: var(--mainColor);
}
.features ul li .rating-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
}
.features ul li .rating-wrap img {
    margin: auto 0 10px;
}
.features ul li .rating-wrap .stars {
    position: absolute;
    width: 120px;
}
.features ul li .rating-wrap .stars .amount {
    color: #373737;
    font-size: 36px;
    font-weight: 900;
    margin-bottom: 11px;
}
.features ul li .rating-wrap .stars .rating {
    text-align: center;
    font-size: 26px;
}
.features ul li .rating-wrap .stars .rating .fa-rating {
    overflow-wrap: break-word;
    max-width: 100%;
    padding-left: 4%;
    white-space: initial;
    line-height: 23px;
}
.features ul li .rating-wrap .stars .rating .fa-rating:before {
    overflow-wrap: anywhere;
    letter-spacing: 12px;
}
@media (min-width: 1200px) {
    body.v2-01 .features ul li .rating-wrap .stars,
    body.spCart .features ul li .rating-wrap .stars {
        top: 14px;
        width: 75px;
    }
    body.v2-01 .features ul li .rating-wrap .amount,
    body.spCart .features ul li .rating-wrap .amount {
        font-size: 20px;
        margin-bottom: 5px;
    }
    body.v2-01 .features ul li .rating-wrap .rating,
    body.spCart .features ul li .rating-wrap .rating {
        padding-left: 2px;
        font-size: 18px;
    }
    body.v2-01 .features ul li .rating-wrap .rating .fa-rating,
    body.spCart .features ul li .rating-wrap .rating .fa-rating {
        line-height: 1;
    }
    body.v2-01 .features ul li .rating-wrap .rating .fa-rating:before,
    body.spCart .features ul li .rating-wrap .rating .fa-rating:before {
        letter-spacing: 2px;
    }
}
.features ul li .title span {
    display: block;
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .features {
        padding: 0;
    }
    body.v2-01 .features,
    body.spCart .features {
        padding-bottom: 5px;
    }
    .features ul li {
        font-size: 16px;
        line-height: 14px;
    }
    .features ul li .rating-wrap .stars {
        width: 59px;
    }
    .features ul li .rating-wrap .stars .amount {
        font-size: 22px;
        margin-bottom: 5px;
    }
    .features ul li .rating-wrap .stars .rating {
        font-size: 14px;
    }
    .features ul li .rating-wrap .stars .rating .fa-rating {
        line-height: 12px;
    }
    .features ul li .rating-wrap .stars .rating .fa-rating:before {
        letter-spacing: 4px;
    }
    .features ul li img,
    .features ul li svg {
        max-height: 75px;
    }
    .features ul li svg {
        max-width: 75px;
    }
    .features ul li .title span {
        display: inline-block;
    }
    body.v2-01 .features ul li .title span,
    body.spCart .features ul li .title span {
        display: block;
    }
}
@media (max-width: 767px) {
    .features ul li {
        padding: 0;
        font-size: 12px;
        line-height: 14px;
    }
    .features ul li img,
    .features ul li svg {
        max-height: 53px;
        margin-bottom: 5px;
    }
    .features ul li svg {
        max-width: 53px;
    }
    .features ul li .rating-wrap img {
        margin-bottom: 1px;
    }
    .features ul li .rating-wrap .stars {
        width: 43px;
    }
    .features ul li .rating-wrap .stars .amount {
        font-size: 14px;
        margin-bottom: 3px;
    }
    .features ul li .rating-wrap .stars .rating {
        font-size: 10px;
        line-height: 7px;
    }
    .features ul li .rating-wrap .stars .rating .fa-rating {
        line-height: 9px;
    }
    .features ul li .rating-wrap .stars .rating .fa-rating:before {
        letter-spacing: 2px;
    }
}
.typewriter-wrap {
    margin-top: -250px;
    padding-top: 0;
}
.typewriter-wrap .container-lg {
    display: flex;
}
.typewriter-wrap .container-lg .product-img {
    display: inline-block;
    margin-right: 5px;
    transition: transform 0.3s ease;
    transform: rotate(0deg);
}
.typewriter-wrap .container-lg .product-img.start {
    -webkit-animation: bottleDance cubic-bezier(1, -0.12, 0.06, 1.13) 0.6s 2;
    -moz-animation: bottleDance cubic-bezier(1, -0.12, 0.06, 1.13) 0.6s 2;
    animation: bottleDance cubic-bezier(1, -0.12, 0.06, 1.13) 0.6s 2;
}
.typewriter-wrap .container-lg .typewriter {
    width: 75%;
    margin-left: 48px;
    padding-top: 253px;
    font-family: "Roboto", sans-serif;
    font-size: 30px;
    color: #292929;
}
.typewriter-wrap .container-lg .typewriter .promo {
    margin-bottom: 5px;
}
.typewriter-wrap .container-lg .typewriter .phrases {
    position: relative;
    font-size: 50px;
    color: var(--mainColor);
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase {
    position: absolute;
    left: 0;
    top: 0;
    overflow: hidden;
    display: flex;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase #content {
    display: none;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons {
    display: inline-block;
    width: 130px;
    height: 120px;
    position: relative;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .digestion .st0 {
    fill: #76bdf6;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .digestion .st1 {
    opacity: 0.11;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .digestion .dots {
    fill: #3689c9;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap {
    position: absolute;
    left: -100px;
    display: inline-block;
    opacity: 0;
    width: 100px;
    transition: all 0.5s ease;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start {
    opacity: 1;
    left: 0;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.digestion .dots {
    -webkit-animation: appear 1s, jump 1s;
    -webkit-animation-fill-mode: forwards;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: ease-in-out;
    -moz-animation: appear 1s, jump 1s;
    -moz-animation-fill-mode: forwards;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: ease-in-out;
    animation: appear 1s, jump 1s;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    animation-timing-function: ease-in-out;
    opacity: 0;
    transform-origin: center;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.digestion .dots:nth-child(2) {
    animation-delay: 0.6s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.digestion .dots:nth-child(3) {
    animation-delay: 0.15s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.digestion .dots:nth-child(4) {
    animation-delay: 0.3s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.digestion .dots:nth-child(5) {
    animation-delay: 0.45s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.weight .hand {
    -webkit-animation: weight 1s alternate infinite;
    -moz-animation: weight 1s alternate infinite;
    animation: weight 1s alternate infinite;
    transform-origin: center;
    transform: rotate(-48deg);
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.joints #hammer {
    -webkit-animation-timing-function: ease-in-out;
    -webkit-animation: hammer 0.6s alternate infinite;
    animation-timing-function: ease-in-out;
    -moz-animation: hammer 0.6s alternate infinite;
    -moz-animation-timing-function: ease-in-out;
    animation: hammer 0.6s alternate infinite;
    transform-origin: center;
    transform: rotate(28deg);
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.joints #mark3 {
    -webkit-animation: appear 1.5s ease-in infinite;
    -moz-animation: appear 1.5s ease-in infinite;
    animation: appear 1.5s ease-in infinite;
    opacity: 0;
    animation-delay: 0.2s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.joints #mark1 {
    -webkit-animation: appear 1.5s ease-in infinite;
    -moz-animation: appear 1.5s ease-in infinite;
    animation: appear 1.5s ease-in infinite;
    opacity: 0;
    animation-delay: 0.4s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.joints #mark2 {
    -webkit-animation: appear 1.5s ease-in infinite;
    -moz-animation: appear 1.5s ease-in infinite;
    animation: appear 1.5s ease-in infinite;
    opacity: 0;
    animation-delay: 0.8s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.fatigue .z_1 {
    transform-origin: center;
    -webkit-animation: scale 2s infinite;
    -moz-animation: scale 2s infinite;
    animation: scale 2s infinite;
    opacity: 0;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.fatigue .z_2 {
    transform-origin: center;
    -webkit-animation: scale 2s infinite;
    -moz-animation: scale 2s infinite;
    animation: scale 2s infinite;
    opacity: 0;
    animation-delay: 0.2s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.energy .hoop {
    transform: translateX(0px);
    -webkit-animation: hoop 2s ease-in-out infinite;
    -moz-animation: hoop 2s ease-in-out infinite;
    animation: hoop 2s ease-in-out infinite;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.energy g.pants,
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.energy g.legs {
    -webkit-animation: danse 1s ease-in-out infinite;
    -moz-animation: danse 1s ease-in-out infinite;
    animation: danse 1s ease-in-out infinite;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.energy .topBody {
    animation-direction: reverse;
    -webkit-animation: danse 1s ease-in-out infinite;
    -moz-animation: danse 1s ease-in-out infinite;
    animation: danse 1s ease-in-out infinite;
    animation-delay: 0.2s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.craving #x {
    opacity: 0;
    -webkit-animation: blink 1.3s infinite;
    -moz-animation: blink 1.3s infinite;
    animation: blink 1.3s infinite;
    animation-delay: 0.7s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start.craving #Hamburger {
    transform-origin: center;
    -webkit-animation: hamburger 1s ease-in-out infinite;
    -moz-animation: hamburger 1s ease-in-out infinite;
    animation: hamburger 1s ease-in-out infinite;
    animation-delay: 0.5s;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .text {
    padding-top: 35px;
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .text:after {
    content: "|";
    display: inline;
    -webkit-animation: blink-cursor 0.7s infinite;
    -moz-animation: blink-cursor 0.7s infinite;
    animation: blink-cursor 0.7s infinite;
    color: var(--mainColor);
}
.typewriter-wrap .container-lg .typewriter .phrases .phrase .typed-cursor {
    opacity: 0;
    display: none;
}

@media (min-width: 768px) and (max-width: 991px) {
    .typewriter-wrap {
        margin-top: -100px;
    }
    .typewriter-wrap .container-lg .typewriter {
        padding-top: 110px;
        margin-left: 10px;
    }
    .typewriter-wrap .container-lg .typewriter .promo {
        font-size: 26px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases {
        font-size: 16px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase {
        display: flex;
        font-size: 40px;
        margin-top: 49px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .icon-wrap {
        width: 140px;
        margin-top: 11px;
        margin-right: 16px;
        margin-left: 20px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .text {
        align-self: center;
    }
}
@media (max-width: 767px) {
    .typewriter-wrap {
        margin-top: -90px;
        padding-bottom: 30px;
    }
    .typewriter-wrap .container-lg .typewriter {
        padding-top: 98px;
        margin-left: 10px;
    }
    .typewriter-wrap .container-lg .typewriter .promo {
        font-size: 14px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases {
        font-size: 16px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .icons {
        height: 80px;
        width: 64px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap {
        width: 50px;
        left: -50px;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .icons .icon-wrap.start {
        left: 0;
    }
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .text {
        padding-top: 5px;
    }
}
@media (max-width: 320px) {
    .typewriter-wrap .container-lg .typewriter .phrases .phrase .icons {
        margin-right: 9px;
    }
}
.leaky {
    background-color: #f3f3f3;
}
.leaky .video {
    position: relative;
    margin: 120px auto 60px;
    z-index: 1;
    width: 53%;
}
@media (max-width: 767px) {
    .leaky .video {
        width: 60%;
        margin: 40px auto 30px;
    }
    .leaky .video:after {
        width: 90%;
        margin-left: -24px;
        top: -22px;
    }
}
.lectins img {
    margin: 66px 0;
}
.lectins .pyramid {
    position: relative;
    margin-top: 68px;
}
.lectins .pyramid h2 {
    font-size: 35px;
}
.lectins .pyramid .nav {
    margin-bottom: 100px;
    width: 783px;
}
.lectins .pyramid .nav picture {
    width: 100%;
    text-align: center;
}
.lectins .pyramid .nav picture img {
    width: auto;
    margin: 0 auto;
}
.lectins .pyramid .nav .slick-dots {
    position: relative;
}
.lectins .pyramid .nav .slick-dots li {
    height: auto;
    opacity: 0.5;
    width: 100%;
}
.lectins .pyramid .nav .slick-dots li img {
    margin: 0;
    width: 100%;
}
.lectins .pyramid .nav .slick-dots li.slick-active,
.lectins .pyramid .nav .slick-dots li:hover {
    opacity: 1;
    transition: opacity ease 0.2s;
}
.lectins .pyramid .slider {
    position: absolute;
    right: 0;
    top: 0;
    padding-top: 55px;
}
.lectins .pyramid .slider .item {
    text-align: center;
}
.lectins .pyramid .slider .item .title {
    font-size: 35px;
    font-weight: bold;
    color: var(--primaryColor);
    text-align: left;
}
.lectins .pyramid .slider .item .content {
    font-size: 22px;
    font-weight: bold;
    line-height: 40px;
    color: #292929;
    text-align: left;
    margin: 28px 0;
    min-height: 120px;
}
.lectins .pyramid .slider .item picture,
.lectins .pyramid .slider .item img {
    max-width: 100%;
    width: auto;
    display: inline-block;
}
.lectins .pyramid .slider .slick-list .slick-slide img {
    margin: 0;
}
.lectins .pyramid .slider .slick-prev,
.lectins .pyramid .slider .slick-next {
    width: 42px;
    color: var(--primaryColor);
    top: 60%;
    opacity: 0.7;
    z-index: 2;
}
.lectins .pyramid .slider .slick-prev:hover,
.lectins .pyramid .slider .slick-next:hover {
    opacity: 1;
}
.lectins .pyramid .slider .slick-prev:before,
.lectins .pyramid .slider .slick-next:before {
    content: none;
}
.lectins .pyramid .slider .slick-prev img,
.lectins .pyramid .slider .slick-next img {
    margin: 0;
}
.lectins .pyramid .slider .slick-next {
    right: -10px;
}
.lectins .pyramid .slider .slick-prev {
    left: -10px;
}
.lectins .pyramid .slider .slick-prev img {
    transform: rotate(180deg);
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    .lectins .pyramid .nav {
        margin-bottom: 100px;
        width: 783px;
        padding: 0 90px 0 0;
    }
    .lectins .pyramid .slider {
        padding-top: 0;
        top: 60px;
    }
    .lectins .pyramid .slider .item .content {
        margin: 8px 0;
        line-height: 33px;
    }
    .lectins .pyramid .slider .item .title {
        text-align: left;
        font-size: 30px;
    }
    .lectins .pyramid .slider .item img,
    .lectins .pyramid .slider .item picture {
        max-width: 80%;
    }
    .lectins .pyramid .slider .slick-prev,
    .lectins .pyramid .slider .slick-next {
        width: 33px;
        top: 66%;
    }
    .lectins .pyramid .slider .slick-prev {
        left: 17px;
    }
    .lectins .pyramid .slider .slick-next {
        right: 17px;
    }
}
@media (max-width: 767px) {
    .lectins .container-lg > picture img {
        margin: 15px 0;
    }
    .lectins .pyramid {
        margin-top: 30px;
    }
    .lectins .pyramid h2 {
        font-size: 17px;
    }
    .lectins .pyramid .nav {
        margin-bottom: 0;
    }
    .lectins .pyramid .nav .slick-dots {
        bottom: 0;
    }
    .lectins .pyramid .nav .slick-dots li img {
        width: auto;
    }
    .lectins .pyramid .slider {
        position: relative;
        padding-top: 30px;
    }
    .lectins .pyramid .slider .item .title {
        font-size: 18px;
        text-align: center;
    }
    .lectins .pyramid .slider .item .content {
        font-size: 14px;
        line-height: 22px;
        margin: 11px 0;
        min-height: 66px;
    }
    .lectins .pyramid .slider .slick-prev,
    .lectins .pyramid .slider .slick-next {
        z-index: 2;
        width: 22px;
        top: 67%;
    }
    .lectins .pyramid .slider .slick-prev {
        left: 40px;
    }
    .lectins .pyramid .slider .slick-next {
        right: 40px;
    }
    .lectins .pyramid .slider .slick-slide picture,
    .lectins .pyramid .slider .slick-slide .img {
        max-width: 100%;
    }
}
.approach .container-lg,
.quality .container-lg {
    background-repeat: repeat-y;
    background-position: left top;
    background-size: 153%;
    position: relative;
    z-index: 0;
    padding: 55px;
}
@media (min-width: 992px) {
    .approach .container-lg,
    .quality .container-lg {
        background-image: var(--FAQ_bgimg_d);
    }
}
@media (max-width: 991px) {
    .approach .container-lg,
    .quality .container-lg {
        background-image: var(--FAQ_bgimg_m);
    }
}
.approach .container-lg:after,
.quality .container-lg:after {
    content: "";
    width: calc(100% - 60px);
    height: calc(100% - 60px);
    position: absolute;
    left: 30px;
    top: 30px;
    z-index: -1;
    background-color: #fff;
}
.approach .container-lg .wrap:after,
.approach .container-lg .wrap:before,
.quality .container-lg .wrap:after,
.quality .container-lg .wrap:before {
    content: "";
    background-color: #fff;
    width: 240px;
    height: 240px;
    display: block;
    position: absolute;
    z-index: -1;
}
.approach .container-lg .wrap:before,
.quality .container-lg .wrap:before {
    right: 0;
    top: 0;
}
.approach .container-lg .wrap:after,
.quality .container-lg .wrap:after {
    left: 0;
    bottom: 0;
}
.approach .container-lg .blue,
.quality .container-lg .blue {
    color: #3c516d;
    display: block;
    margin: 15px 0;
}
.approach .container-lg p:last-child,
.quality .container-lg p:last-child {
    font-weight: 900;
}

@media (max-width: 767px) {
    .approach .container-lg:after,
    .quality .container-lg:after {
        width: calc(100% - 30px);
        height: calc(100% - 30px);
        left: 15px;
        top: 15px;
    }
    .approach .container-lg .wrap:before,
    .quality .container-lg .wrap:before {
        top: 15px;
        width: 200px;
    }
    .approach .container-lg .wrap:after,
    .quality .container-lg .wrap:after {
        bottom: 15px;
        height: 480px;
    }
    .approach .container-lg .wrap ul li .icon img,
    .quality .container-lg .wrap ul li .icon img {
        max-height: 60px;
    }
}
.ingredients .container-lg .content {
    text-align: center;
    font-size: 30px;
    line-height: 50px;
    position: relative;
    font-weight: 900;
}
.ingredients .container-lg .content:before,
.ingredients .container-lg .content:after {
    content: "";
    position: absolute;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
}
.ingredients .container-lg .content:before {
    background-image: var(--ingredients_bgimg_right_d);
    top: 0;
    right: 0;
    background-position: top right;
}
.ingredients .container-lg .content:after {
    background-image: var(--ingredients_bgimg_left_d);
    bottom: 0;
    left: 0;
    background-position: bottom left;
}
.ingredients .container-lg .content ul {
    padding: 189px 0;
}
.ingredients .container-lg p:last-child {
    font-weight: 900;
}

@media (max-width: 767px) {
    .ingredients .container-lg .content {
        font-size: 14px;
        line-height: 24px;
        padding-bottom: 65px;
        padding-top: 25px;
    }
    .ingredients .container-lg .content:before,
    .ingredients .container-lg .content:after {
        content: "";
        position: absolute;
    }
    .ingredients .container-lg .content:before {
        background-image: var(--ingredients_bgimg_right_m);
    }
    .ingredients .container-lg .content:after {
        background-image: var(--ingredients_bgimg_left_m);
    }
    .ingredients .container-lg .content ul {
        padding: 45px 0;
    }
}
.moneyBack {
    text-align: center;
    padding-top: 0;
}
.moneyBack .container-lg {
    padding: 0 10%;
}
.moneyBack .container-lg img {
    max-width: 30%;
}
.moneyBack .container-lg h2 {
    color: var(--primaryColor);
}

@media (min-width: 768px) {
    .moneyBack .container-lg p {
        font-size: 30px;
    }
    .moneyBack .container-lg h2 {
        font-size: 40px;
    }
}
@media (max-width: 767px) {
    .moneyBack p {
        margin: 4px 0;
    }
    .moneyBack h2 {
        font-size: 14px;
    }
}
.reviews .gundry img {
    width: 77px;
    border-radius: 50%;
}
.reviews .review .title .rating {
    display: inline;
    margin-right: 10px;
}
.reviews .review .title span {
    font-size: 30px;
    font-weight: 900;
}
.reviews .review .author {
    font-size: 18px;
    color: hsla(var(--mainColor_h), var(--mainColor_s), var(--mainColor_l), 0.75);
    margin-top: 15px;
    line-height: 1;
}
.reviews .review .date {
    font-size: 18px;
    color: #ccc;
}
@media (max-width: 767px) {
    .reviews .review .title .rating {
        margin-right: 5px;
        font-size: 12px;
    }
    .reviews .review .title span {
        font-size: 16px;
    }
    .reviews .review .author {
        font-size: 14px;
    }
    .reviews .review .date {
        font-size: 14px;
    }
}
.reviews .slick-dots {
    bottom: unset;
    top: 100%;
    z-index: 0;
    left: 0;
}
.reviews .slick-dots li.slick-active button:before {
    opacity: 1;
}
.reviews .slick-dots li button::before {
    content: "";
    display: block;
    border-radius: 50%;
    position: static;
}
.reviews .slick-prev,
.reviews .slick-next {
    width: 40px;
    height: 100%;
    z-index: 1;
}
.reviews .slick-prev:before,
.reviews .slick-next:before {
    font-family: "FontAwesome";
    font-size: 80px;
    color: var(--mainColor);
}
@media (max-width: 767px) {
    .reviews .slick-prev:before,
    .reviews .slick-next:before {
        font-size: 30px;
    }
}
.reviews .slick-prev {
    left: 2%;
}
.reviews .slick-prev:before {
    content: "";
}
@media (max-width: 767px) {
    .reviews .slick-prev {
        left: -4%;
    }
}
.reviews .slick-next {
    right: 2%;
}
.reviews .slick-next:before {
    content: "";
}
@media (max-width: 767px) {
    .reviews .slick-next {
        right: -4%;
    }
}

.reviewList {
    padding: 0 90px;
}
@media (max-width: 767px) {
    .reviewList {
        padding: 0 25px;
    }
}
.reviewList .review {
    position: relative;
    padding: 80px 100px 0;
}
.reviewList .review:before,
.reviewList .review:after {
    content: "";
    display: block;
    width: 64px;
    height: 55px;
    position: absolute;
    transform-origin: left;
    mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="65" height="52"><g fill="currentColor" transform="translate(-2.135 -.791)"><path d="M18.21 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.04.02-2.23.55-3.17.28z"/><path d="M51.66 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.17.02-2.24.55-3.17.28z"/></g></svg>')
        no-repeat;
    -webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="65" height="52"><g fill="currentColor" transform="translate(-2.135 -.791)"><path d="M18.21 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.04.02-2.23.55-3.17.28z"/><path d="M51.66 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.17.02-2.24.55-3.17.28z"/></g></svg>')
        no-repeat;
    background-color: var(--mainColor);
}
.reviewList .review:before {
    left: 0px;
    top: 60px;
    transform: scale(1.4);
}
.reviewList .review:after {
    right: -60px;
    bottom: 30px;
    transform: scale(1.4) rotate(180deg);
}
@media (max-width: 767px) {
    .reviewList .review {
        padding: 10px;
    }
    .reviewList .review:before,
    .reviewList .review:after {
        width: 120px;
    }
    .reviewList .review:before {
        position: static;
        width: 70px;
        margin: 0 auto;
        transform: scale(0.6);
    }
    .reviewList .review:after {
        content: none;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .reviewList .review {
        padding: 80px 100px 0;
    }
}

@media (max-width: 519px) {
    .reviews-video {
        width: 100vw;
        margin-left: -15px;
    }
}
@media (min-width: 520px) and (max-width: 767px) {
    .reviews-video {
        padding: 0 25px;
    }
}
@media (min-width: 768px) {
    .reviews-video {
        padding: 0 90px;
    }
}
@media (max-width: 767px) {
    .reviews-video.slick-dotted.slick-slider {
        margin-bottom: 15px;
        margin-top: 30px;
    }
}
@media (min-width: 768px) {
    .reviews-video.slick-dotted.slick-slider {
        margin-bottom: 30px;
        margin-top: 60px;
    }
}
.reviews-video .slick-track {
    display: flex;
}
.reviews-video .slick-slide {
    flex-grow: 1;
    height: auto;
    min-height: 100%;
}
@media (max-width: 374px) {
    .reviews-video .slick-slide {
        margin: 0 0.25em;
    }
}
@media (min-width: 375px) {
    .reviews-video .slick-slide {
        margin: 0 0.5em;
    }
}
.reviews-video .slick-slide > div {
    height: 100%;
    padding-bottom: 0.75em;
}
.reviews-video .review,
.reviews-video .content {
    display: flex !important;
    flex-direction: column;
}
.reviews-video .review {
    overflow: hidden;
    height: 100%;
    background-color: #fff;
    box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.16);
    border-radius: 3px;
}
.reviews-video .title {
    padding-top: 0.5em;
}
@media (max-width: 767px) {
    .reviews-video .title {
        padding-inline: 10px;
    }
}
@media (min-width: 768px) {
    .reviews-video .title {
        padding-inline: 15px;
    }
}
.reviews-video .content {
    flex: 1 1 auto;
    padding-block: 0.5em;
}
@media (max-width: 767px) {
    .reviews-video .content {
        padding-inline: 10px;
    }
}
@media (min-width: 768px) {
    .reviews-video .content {
        padding-inline: 15px;
    }
}
.reviews-video .author {
    justify-self: flex-end;
    margin-bottom: 0.5em;
    text-align: right;
}
.reviews-video + .disclaimer {
    margin-bottom: 0;
    text-align: center;
}
@media (max-width: 767px) {
    .reviews-video + .disclaimer {
        margin-top: 3em;
    }
}
@media (min-width: 768px) {
    .reviews-video + .disclaimer {
        margin-top: 3.5em;
    }
}

.reviews .stars {
    font-size: 46px;
    font-weight: 900;
    line-height: 39px;
    text-align: center;
    color: #373737;
}
.reviews .stars .rating {
    text-align: center;
    font-size: 56px;
}
.reviews .stars .rating .fa-rating:before {
    letter-spacing: 4px;
}
.reviews .review .title > span {
    color: var(--mainColor);
}
.reviews .review .author {
    color: #6d7f93;
    font-size: 22px;
}
.reviews .review .date {
    font-size: 22px;
}

@media (max-width: 767px) {
    .reviews .rating {
        font-size: 14px;
    }
    .reviews .rating .fa-rating:before {
        letter-spacing: 3px;
    }
    .reviews .stars {
        font-size: 20px;
        line-height: 16px;
    }
    .reviews .stars .rating {
        font-size: 21px;
    }
    .reviews .gundry img {
        width: 34px;
    }
    .reviews .review .author {
        font-size: 14px;
    }
    .reviews .review .date {
        font-size: 14px;
    }
}
.gundryReview {
    background-repeat: repeat-y;
    background-position: left top;
    background-size: 153%;
    margin: 0 auto;
    font-size: 26px;
    font-weight: normal;
    color: #fff;
}
@media (min-width: 992px) {
    .gundryReview {
        background-image: var(--FAQ_bgimg_d);
    }
}
@media (max-width: 991px) {
    .gundryReview {
        background-image: var(--FAQ_bgimg_m);
    }
}
.gundryReview .rating {
    margin-block-end: 25px;
    font-size: 43px;
}
@media (max-width: 767px) {
    .gundryReview .rating {
        margin-block-end: 10px;
        font-size: 21px;
    }
}
.gundryReview__title {
    font-family: "Caveat", cursive;
    display: flex;
    flex-direction: column;
    align-items: center;
    font-size: 30px;
    text-align: center;
    font-weight: normal;
    margin-block-end: 55px;
}
@media (max-width: 767px) {
    .gundryReview__title {
        font-size: 24px;
    }
}
.gundryReview__title img {
    width: 88px;
    border-radius: 50%;
}
@media (max-width: 767px) {
    .gundryReview__title img {
        width: 44px;
    }
}
.gundryReview__title .title {
    margin-block: 5px;
}
.gundryReview__wrap {
    position: relative;
    text-align: left;
    font-family: "Caveat", cursive;
}
.gundryReview__wrap:before,
.gundryReview__wrap:after {
    content: "";
    display: block;
    width: 64px;
    height: 55px;
    position: absolute;
    transform-origin: left;
    mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="65" height="52"><g fill="currentColor" transform="translate(-2.135 -.791)"><path d="M18.21 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.04.02-2.23.55-3.17.28z"/><path d="M51.66 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.17.02-2.24.55-3.17.28z"/></g></svg>')
        no-repeat;
    -webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" width="65" height="52"><g fill="currentColor" transform="translate(-2.135 -.791)"><path d="M18.21 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.04.02-2.23.55-3.17.28z"/><path d="M51.66 51.03c-5.2-.13-9.59-1.6-12.39-6-.99-1.56-1.54-3.35-1.6-5.2-.53-5.6 1.46-10.53 3.6-15.46a64.15 64.15 0 017.59-13.46c2.67-3.46 5.6-6.93 10.26-8.26 1.13-.31 2.31-.36 3.46-.13 2.4.53 3.2 2.13 2 4.53-1.6 3.33-4 6.26-6 9.33-1 1.49-1.89 3.05-2.67 4.66-.67 1.46-.27 2.27 1.33 2.67 5.06 1.2 7.06 5.46 7.06 9.99.05 3.81-.58 7.6-1.87 11.19-1.46 4-4.26 5.46-7.6 5.86-1.17.02-2.24.55-3.17.28z"/></g></svg>')
        no-repeat;
    background-color: hsl(calc(var(--mainColor_h) - 3), calc(var(--mainColor_s) + 9%), calc(var(--mainColor_l) + 46%));
}
.gundryReview__wrap:before {
    left: 0px;
    top: -60px;
    transform: scale(1.4);
}
@media (max-width: 767px) {
    .gundryReview__wrap:before {
        transform: scale(0.6);
    }
}
.gundryReview__wrap:after {
    right: -60px;
    bottom: -40px;
    transform: scale(1.4) rotate(180deg);
}
@media (max-width: 767px) {
    .gundryReview__wrap:after {
        transform: scale(0.6) rotate(180deg);
    }
}
.gundryReview__mainImg {
    position: relative;
    max-width: 386px;
    margin-inline: auto;
    z-index: 0;
}
@media (min-width: 768px) {
    .gundryReview__mainImg {
        margin-block-end: 55px;
    }
}
@media (max-width: 767px) {
    .gundryReview__mainImg {
        max-width: 210px;
    }
}
.gundryReview__mainImg:before,
.gundryReview__mainImg:after {
    content: "";
    background-color: hsl(calc(var(--mainColor_h) - 3), calc(var(--mainColor_s) + 9%), calc(var(--mainColor_l) + 46%));
    position: absolute;
    display: block;
    z-index: -1;
}
.gundryReview__mainImg::before {
    width: 85%;
    height: 90%;
    left: -23px;
    bottom: -23px;
}
@media (max-width: 767px) {
    .gundryReview__mainImg::before {
        left: -10px;
        bottom: -10px;
    }
}
.gundryReview__mainImg::after {
    width: 60%;
    height: 55%;
    right: -15px;
    top: -10px;
}
@media (max-width: 767px) {
    .gundryReview__mainImg::after {
        right: -5px;
        bottom: -7px;
    }
}
.gundryReview p {
    margin-block-end: 30px;
    font-size: 26px;
}
@media (max-width: 767px) {
    .gundryReview p {
        font-size: 20px;
        line-height: 1;
        margin-block-end: 15px;
    }
}
.gundryReview .disclaimer {
    font-size: 16px;
    margin-top: 90px;
}
@media (max-width: 767px) {
    .gundryReview .disclaimer {
        margin-top: 35px;
        font-size: 10px;
        line-height: 12px;
    }
}

.quality .container-lg .wrap:before {
    left: 0;
    right: initial;
}
.quality .container-lg .wrap:after {
    right: 0;
    left: initial;
}
.quality .container-lg .wrap h2 {
    margin-bottom: 43px;
}
.quality .container-lg .wrap li {
    align-items: center;
}
.quality .container-lg .wrap li:hover .icon {
    transform: scale(1.1);
}
.quality .container-lg .wrap li:not(:last-child) {
    margin-bottom: 70px;
}
.quality .container-lg .wrap li .icon-wrap {
    max-width: 127px;
}
.quality .container-lg .wrap li .icon-wrap .icon {
    transition: transform ease 0.5s;
    font-size: 4.5em;
    color: hsla(var(--mainColor_h), var(--mainColor_s), var(--mainColor_l), 0.75);
}

@media (max-width: 767px) {
    .quality .container-lg .wrap ul li {
        text-align: center;
    }
    .quality .container-lg .wrap ul li:not(:last-child) {
        margin-bottom: 30px;
    }
    .quality .container-lg .wrap ul li .icon-wrap {
        margin: 0 auto;
        margin-bottom: 10px;
    }
}
.about {
    text-align: center;
    overflow: hidden;
}
.about .row {
    background-color: #e2e3dd;
    text-align: left;
}
.about .row .content {
    padding-top: 20px;
    color: #262424;
    z-index: 1;
}
.about .row .img-wrap {
    padding: 0;
}
.about .row .img-wrap picture {
    height: 100%;
}
.about .row .img-wrap picture img {
    height: 100%;
    width: auto;
    float: right;
    z-index: -1;
}
.about .btn {
    margin-top: 100px;
}

@media (max-width: 991.98px) {
    .about .btn {
        margin-top: 25px;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .about .row .img-wrap picture img {
        margin-right: -40%;
    }
}
@media (max-width: 767px) {
    .about .row {
        background-color: #deddd9;
    }
    .about .row .img-wrap picture img {
        width: 100%;
    }
}
.FAQ {
    background-repeat: repeat-y;
    background-position: left top;
    background-size: 153%;
    margin-bottom: 0;
    color: #fff;
    text-align: center;
}
@media (min-width: 992px) {
    .FAQ {
        background-image: var(--FAQ_bgimg_d);
    }
}
@media (max-width: 991px) {
    .FAQ {
        background-image: var(--FAQ_bgimg_m);
    }
}
.FAQ .container-lg {
    text-align: left;
    padding-top: 52px;
}
.FAQ .container-lg h2 {
    color: #fff;
    text-align: center;
}
.FAQ .container-lg ul li {
    margin-bottom: 0;
}
.FAQ .container-lg ul li .question {
    font-size: 30px;
    border-bottom: 1px solid #dfdada;
    padding: 60px 30px 13px 0;
    margin-bottom: 19px;
    display: block;
    width: 100%;
    position: relative;
    cursor: pointer;
}
.FAQ .container-lg ul li .question[aria-expanded="true"] svg {
    transform: rotate(-180deg);
}
.FAQ .container-lg ul li .question svg {
    width: 28px;
    height: 28px;
    position: absolute;
    right: 0;
    top: 67px;
    -webkit-transition: transform 0.4s;
    /* Safari prior 6.1 */
    transition: transform 0.4s;
}
.FAQ .container-lg ul li .question svg .active-path {
    fill: #fff;
}
.FAQ .container-lg ul li .answer {
    margin-bottom: 0;
}
.FAQ .container-lg ul li .answer > div {
    padding-bottom: 20px;
}
.FAQ .container-lg ul li .answer > div ul li {
    margin-left: 12px;
    list-style-type: disc;
}
.FAQ .btn {
    margin-top: 5px;
}
.FAQ--opt .answer {
    font-weight: normal;
}
.FAQ--opt .FAQ__link {
    color: #aacaff;
    text-decoration: underline;
}
.FAQ--opt .FAQ__link--a {
    font-weight: bold;
    text-decoration: none;
}

@media (max-width: 767px) {
    .FAQ {
        padding: 15px 0 35px;
    }
    .FAQ .container-lg {
        padding-top: 0;
    }
    .FAQ .container-lg ul {
        padding: 15px 5px 0 5px;
    }
    .FAQ .container-lg ul li .question {
        font-size: 14px;
        padding: 10px 16px 10px 0;
        margin-bottom: 15px;
    }
    .FAQ .container-lg ul li .question svg {
        width: 10px;
        height: 40px;
        top: -2px;
        right: 2px;
    }
    .FAQ .container-lg ul li .question svg .active-path {
        fill: #fff;
    }
    .FAQ .container-lg ul li .answer {
        margin-bottom: 0;
        line-height: 22px;
    }
    .FAQ .container-lg ul li .answer > div {
        padding-bottom: 20px;
    }
    .FAQ .btn {
        margin-top: 30px;
    }
}
.FAQ {
    font-weight: 500;
}

.sources {
    margin-bottom: 0;
}
.sources h2 {
    cursor: pointer;
    border-bottom: solid 1px #272626;
    position: relative;
    padding-bottom: 20px;
    text-align: center;
}
.sources h2[aria-expanded="true"] svg {
    transform: rotate(-180deg);
}
.sources h2 svg {
    width: 28px;
    height: 28px;
    position: absolute;
    right: 0;
    top: 7px;
    -webkit-transition: transform 0.4s;
    /* Safari prior 6.1 */
    transition: transform 0.4s;
}
.sources h2 svg .active-path {
    fill: #292929;
}
.sources #sources {
    font-weight: normal;
}
.sources #sources ol {
    list-style: none;
    word-break: break-all;
    counter-reset: my-awesome-counter;
}
.sources #sources ol li {
    counter-increment: my-awesome-counter;
}
.sources #sources ol li:before {
    content: counter(my-awesome-counter) ". ";
    font-weight: bold;
}

@media (max-width: 767px) {
    .sources h2 {
        text-align: center;
        padding-bottom: 15px;
    }
    .sources h2 svg {
        height: 11px;
        width: 11px;
        top: 9px;
    }
}
.tabs .nav .slick-dots {
    position: relative;
    bottom: initial;
}
.tabs .nav .slick-dots li {
    width: 33%;
    height: auto;
    margin: 0;
}
.tabs .nav .slick-dots li .item {
    overflow: hidden;
    display: block;
    margin: 0 2px;
    padding: 28px 0;
    font-size: 40px;
    font-weight: bold;
    text-align: center;
    color: #fff;
    background-color: var(--mainColor);
    border: 2px solid var(--mainColor);
}
.tabs .nav .slick-dots li.slick-active .item,
.tabs .nav .slick-dots li:hover .item {
    transition: all ease 0.2s;
    background-color: #fff;
    color: var(--mainColor);
}
.tabs .items .item .wrap {
    position: relative;
    background-color: #fff;
    box-shadow: 0px 0px 6px 0 rgba(0, 0, 0, 0.6);
    /*margin: 0 45px 25px 0; */
}
.tabs .items .item .wrap:before {
    content: "";
    background: var(--tabs_bgimg) no-repeat;
    background-size: cover;
    z-index: -1;
    position: absolute;
    width: calc(100% - 95px);
    height: calc(100% - 95px);
    bottom: -60px;
    left: -60px;
}
.tabs .items .item.supplement {
    padding: 0 0px 40px 0px;
}
.tabs .items .item.supplement .wrap {
    width: 50%;
    margin: 0 auto;
    cursor: pointer;
    display: block;
    position: relative;
}
.tabs .items .item.supplement .wrap:hover:after {
    z-index: 0;
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    background-color: rgba(0, 0, 0, 0.3);
    color: #fff;
    font-size: 1.6em;
    text-align: center;
    line-height: 1.6em;
    position: absolute;
    left: 0;
    top: 0;
    padding-top: 55%;
}
.tabs .items .item.supplement .wrap:before {
    width: calc(100% + 60px);
    height: calc(100% + 30px);
    left: -30px;
    bottom: -30px;
}
.tabs .items .item.text,
.tabs .items .item.video {
    padding: 0 5px 100px 60px;
}
.tabs .items .item.text .wrap,
.tabs .items .item.video .wrap {
    margin: 0;
    padding: 15px;
}
.tabs .items .item.text .wrap .video,
.tabs .items .item.video .wrap .video {
    width: 42%;
}
.tabs .items .item.text .wrap .video video-js,
.tabs .items .item.video .wrap .video video-js {
    position: relative;
}
.tabs .items .item.text .wrap picture,
.tabs .items .item.text .wrap img,
.tabs .items .item.video .wrap picture,
.tabs .items .item.video .wrap img {
    margin: 0 auto;
}
.tabs .items .item.benefits {
    padding: 0 47px 70px 5px;
}
.tabs .items .item.benefits .wrap {
    padding: 0;
}
.tabs .items .item.benefits .wrap:before {
    left: 140px;
    right: auto;
}
.tabs .items .item.benefits .wrap .video-js {
    position: relative;
}
.tabs .items .item.benefits .wrap .row {
    justify-content: center;
}
.tabs .items .item.benefits .wrap .row .icons {
    padding: 0 15px 0 83px;
}
.tabs .items .item.benefits .wrap .row > div:last-child {
    margin-top: -130px;
}
.tabs .icon {
    width: 100%;
}
.tabs .icon--tabs {
    fill: hsla(var(--mainColor_h), var(--mainColor_s), var(--mainColor_l), 0.7);
    color: hsla(var(--mainColor_h), var(--mainColor_s), var(--mainColor_l), 0.3);
}
@media (min-width: 1200px) {
    .tabs .icon--tabs {
        font-size: 6.2em;
    }
}
@media (min-width: 890px) and (max-width: 1199px) {
    .tabs .icon--tabs {
        font-size: 5em;
    }
}
@media (min-width: 375px) and (max-width: 889px) {
    .tabs .icon--tabs {
        font-size: 6.2em;
    }
}
@media (min-width: 375px) and (max-width: 889px) and (orientation: portrait) {
    .tabs .icon--tabs {
        font-size: 5.5em;
    }
}
@media (max-width: 374px) {
    .tabs .icon--tabs {
        font-size: 5em;
    }
}

.wrap__img-container {
    position: relative;
    width: 60%;
    margin-right: auto;
    margin-left: auto;
}
.wrap__img-container::before {
    content: "";
    position: absolute;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(var(--mainColor), 0.35);
}
.wrap__img-container img {
    position: relative;
}
@media (min-width: 768px) {
    .wrap__img-container {
        margin-top: 38px;
    }
    .wrap__img-container::before {
        top: -23px;
        left: 23px;
    }
}
@media (max-width: 767px) {
    .wrap__img-container {
        margin-top: 24px;
    }
    .wrap__img-container::before {
        top: -9px;
        left: 9px;
    }
}

.benefits .row .icons {
    align-self: center;
    background-color: #f3f3f3;
    width: 60%;
    float: right;
}
.benefits .row .icons li {
    padding: 5px;
}
.benefits .row .icons li:hover .icon {
    transform: scale(1.1);
}
.benefits .row .icons li .title {
    font-size: 19px;
    display: block;
    line-height: 25px;
    text-align: center;
    font-weight: 900;
    color: #292929;
}
.benefits .row .icons li .icon {
    padding: 6px 0;
    transition: transform ease 0.5s;
}
.benefits .row .img-wrap {
    padding: 0 35px 0 0;
}

@media (min-width: 768px) {
    .benefits .icons {
        order: 1;
    }
    .benefits .img-wrap {
        order: 2;
    }
}
.tabs .nav .slick-dots li .item {
    font-size: 29px;
}

@media (max-width: 991px) {
    .benefits .row .icons .row li .title {
        font-size: 15px;
        line-height: 18px;
    }
    .benefits .row .icons .row li .icon {
        padding: 0;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .tabs .items .item.benefits .wrap .row .icons {
        padding: 0 15px 0 53px;
    }
}
@media (max-width: 767px) {
    .tabs .container-lg {
        padding: 0;
    }
    .tabs .container-lg h2 {
        padding: 0 15px;
    }
    .tabs .container-lg .nav {
        padding: 0 15px;
    }
    .tabs .container-lg .nav .slick-dots li .item {
        font-size: 13px;
        padding: 10px 0;
    }
    .tabs .container-lg .items.slick-dotted.slick-slider {
        margin-bottom: 0;
    }
    .tabs .container-lg .items .slick-slider {
        margin: 0 -15px 0;
    }
    .tabs .container-lg .items .slick-slide {
        overflow: hidden;
    }
    .tabs .container-lg .items .item {
        padding: 0 0px 20px 15px;
    }
    .tabs .container-lg .items .item .wrap {
        padding: 7px;
        margin-right: 15px;
    }
    .tabs .container-lg .items .item .wrap:before {
        left: auto;
        bottom: -15px;
        right: 15px;
        width: 100%;
        height: calc(100% - 30px);
        margin-right: 15px;
    }
    .tabs .container-lg .items .item.supplement {
        padding: 0 0 15px 0;
    }
    .tabs .container-lg .items .item.supplement .wrap {
        width: 85%;
        margin: 0 auto;
    }
    .tabs .container-lg .items .item.supplement .wrap:before {
        width: calc(100% + 30px);
        height: calc(100% + 30px);
        bottom: -15px;
        left: -15px;
    }
    .tabs .container-lg .items .item.video {
        padding: 0 15px 25px 5px;
    }
    .tabs .container-lg .items .item.video .wrap:before {
        width: 100%;
        left: 15px;
        bottom: -25px;
        height: calc(100% - 20px);
    }
    .tabs .container-lg .items .item.video .wrap picture,
    .tabs .container-lg .items .item.video .wrap img {
        width: 80%;
    }
    .tabs .container-lg .items .item.benefits {
        padding: 0 0px 15px 0;
    }
    .tabs .container-lg .items .item.benefits .wrap {
        margin-left: 15px;
    }
    .tabs .container-lg .items .item.benefits .wrap:before {
        left: 15px;
        right: auto;
    }
    .tabs .container-lg .items .item.benefits .wrap .row .icons {
        padding: 0 15px;
        margin: 0 auto;
        max-width: 96%;
        width: 100%;
        float: inherit;
        padding-bottom: 50px;
    }
    .tabs .container-lg .items .item.benefits .wrap .row > div:last-child {
        margin-top: -44px;
    }
    .tabs .container-lg .items .item.benefits .wrap .row > div:last-child .img-wrap {
        padding: 0;
        width: 70%;
        margin: 0 auto;
        box-shadow: 3px 0 11px -1px rgba(0, 0, 0, 0.4);
    }

    .benefits .row {
        background: none;
    }
    .benefits .row > .img-wrap {
        z-index: 1;
        max-width: 77%;
        text-align: right;
        margin-left: auto;
        margin-right: 15px;
        box-shadow: 3px 3px 6px 0 rgba(0, 0, 0, 0.16);
    }
    .benefits .row .icons {
        background-color: #f3f3f3;
        max-width: 91%;
        padding-top: 76px;
        margin-top: -76px;
        z-index: 0;
    }
    .benefits .row .icons .row li {
        padding: 8px 2px;
    }
    .benefits .row .icons .row li .title {
        font-size: 14px;
    }
    .benefits .row .icons .row li .img-wrap {
        padding: 0;
    }
}
@media (min-width: 768px) and (max-width: 991px) {
    .tabs .items .item.benefits .wrap .row .icons {
        padding: 0 15px 0 53px;
    }
}
.stickyCTA {
    position: sticky;
    left: 0;
    background: rgba(255, 255, 255, 0.7);
    text-align: center;
    width: 100%;
    padding: 8px;
    z-index: 999;
    display: flex;
    align-items: center;
    justify-content: center;
}
@media (max-width: 767px) {
    .stickyCTA {
        top: calc(100% - 58px);
        margin-block-end: -58px;
        min-height: 58px;
    }
}
@media (min-width: 768px) and (max-width: 1199px) {
    .stickyCTA {
        top: calc(100% - 69px);
        margin-block-end: -69px;
        min-height: 69px;
    }
}
@media (min-width: 1200px) {
    .stickyCTA {
        top: calc(100% - 81px);
        margin-block-end: -81px;
        min-height: 81px;
    }
}
.stickyCTA .btn {
    max-width: 365px;
    width: 90%;
    cursor: pointer;
    margin-top: 0;
}
.stickyCTA .btn--wide {
    margin-inline: auto;
    border-radius: 14px;
    width: auto;
    min-width: var(--btnWideMaxWidth, 256px);
}
.stickyCTA .btn--wideSS {
    margin-inline: auto;
    border-radius: 14px;
}
@media (max-width: 767px) {
    .stickyCTA .btn--wideSS {
        width: auto;
        min-width: var(--btnWideMaxWidth, 256px);
    }
}
@media (min-width: 768px) {
    .stickyCTA .btn--wideSS {
        width: 80%;
    }
}
.stickyCTA ~ .studies {
    padding-bottom: 0;
}
@media (max-width: 767px) {
    .stickyCTA ~ .studies {
        margin-block-end: 65px;
    }
    .stickyCTA ~ .studies [class^="container"] {
        margin-bottom: 15px;
    }
}
@media (min-width: 768px) {
    .stickyCTA ~ .studies {
        margin-block-end: 82px;
    }
    .stickyCTA ~ .studies [class^="container"] {
        margin-bottom: 30px;
    }
}
.stickyCTA ~ footer {
    padding-bottom: 55px;
}

footer {
    background: #f3f3f3;
    text-align: center;
    color: #292929;
    position: relative;
    overflow: hidden;
}
footer .container-lg {
    position: static;
    margin-bottom: 40px;
}
footer .container-lg .row {
    position: relative;
}
footer .container-lg .row:after {
    content: "";
    width: 100%;
    height: 2px;
    left: 0;
    bottom: 0;
    position: absolute;
    display: block;
    background: #292929;
}
footer ul {
    padding: 60px 0 8px;
}
footer ul li a {
    color: #292929;
    text-decoration: none;
}
footer ul li a:hover {
    color: #292929;
}
footer img {
    width: 191px;
}
footer .text {
    margin: 0 7%;
}
footer .text .copyright {
    font-size: 24px;
    margin-bottom: 20px;
}
footer .text p {
    font-size: 22px;
    line-height: 30px;
}
footer .text p:not(:last-child) {
    margin-bottom: 20px;
}
footer .text p.fda {
    border: solid 2px #292929;
    padding: 11px 15px;
}

@media (max-width: 767px) {
    footer .container-lg:first-child {
        margin-bottom: 10px;
    }
    footer .container-lg:first-child:after {
        content: none;
    }
    footer .container-lg ul {
        padding: 3px 0;
        border-bottom: 2px solid #fff;
        margin: 15px 0 0;
    }
    footer .container-lg ul li {
        padding: 0 5px !important;
    }
    footer .container-lg ul li a {
        font-size: 12px;
    }
    footer .container-lg img {
        width: 40px;
    }
    footer .container-lg .text {
        margin: 0;
    }
    footer .container-lg .text p,
    footer .container-lg .text .copyright {
        font-size: 9px;
        line-height: 15px;
    }
    footer .container-lg .text p:not(:last-child) {
        margin-bottom: 6px;
    }
}
.promo-banner:not(.promo-banner--v02) .countdown {
    position: absolute;
    z-index: 1;
    left: 50%;
    text-align: left;
    line-height: 1;
    color: #fff;
    white-space: nowrap;
}
@media (max-width: 374px) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        bottom: 18%;
    }
}
@media (min-width: 375px) and (max-width: 767px) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        bottom: 20%;
    }
}
@media (max-width: 767px) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        text-shadow: 0 2px 2px #16529e;
    }
}
@media (max-width: 767px) and (orientation: portrait) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        width: 145px;
        transform: translateX(-63%);
        font-size: 30px;
    }
}
@media (max-width: 767px) and (orientation: landscape) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        bottom: 16%;
        transform: translateX(-113%);
        width: 148px;
        font-size: 31px;
    }
}
@media (min-width: 768px) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        text-shadow: 0 2px 4px #020b1b;
    }
}
@media (min-width: 768px) and (max-width: 1024px) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        bottom: 12%;
        transform: translateX(-114%);
    }
}
@media (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        width: 168px;
        font-size: 35px;
    }
}
@media (min-width: 768px) and (max-width: 1024px) and (orientation: landscape) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        width: 215px;
        font-size: 45px;
    }
}
@media (min-width: 1025px) {
    .promo-banner:not(.promo-banner--v02) .countdown {
        bottom: 12%;
        transform: translateX(-192%);
        width: 215px;
        font-size: 45px;
    }
}
@media (max-width: 374px) and (orientation: portrait) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-92%);
    }
}
@media (max-width: 374px) and (orientation: landscape) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-155%);
    }
}
@media (min-width: 375px) and (max-width: 519px) and (orientation: portrait) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-106%);
    }
}
@media (min-width: 375px) and (max-width: 519px) and (orientation: landscape) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-155%);
    }
}
@media (min-width: 520px) and (max-width: 767px) and (orientation: portrait) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-76%);
    }
}
@media (min-width: 520px) and (max-width: 767px) and (orientation: landscape) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-155%);
    }
}
@media (max-width: 767px) {
    .promo-banner.promo-banner--v01 .countdown {
        text-shadow: 0 2px 2px #a16811;
    }
}
@media (min-width: 768px) {
    .promo-banner.promo-banner--v01 .countdown {
        text-shadow: 0 2px 4px #895c08;
    }
}
@media (min-width: 768px) and (max-width: 819px) and (orientation: portrait) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-116%);
    }
}
@media (min-width: 768px) and (max-width: 819px) and (orientation: landscape) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-123%);
    }
}
@media (min-width: 820px) and (max-width: 1024px) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-96%);
    }
}
@media (min-width: 1025px) {
    .promo-banner.promo-banner--v01 .countdown {
        transform: translateX(-198%);
    }
}
.promo-banner.promo-banner--v02 .countdown {
    overflow: hidden;
    display: flex;
    justify-content: center;
    gap: 0.1em;
    margin-top: 0.25em;
    font-weight: 900;
    line-height: 1;
    text-align: center;
    color: white;
}
@media (max-width: 767px) {
    .promo-banner.promo-banner--v02 .countdown {
        font-size: 9vw;
    }
}
@media (min-width: 768px) and (max-width: 889px) {
    .promo-banner.promo-banner--v02 .countdown {
        font-size: 7.5vw;
    }
}
@media (min-width: 890px) and (max-width: 1024px) {
    .promo-banner.promo-banner--v02 .countdown {
        font-size: 6vw;
    }
}
@media (min-width: 1025px) and (max-width: 1199px) {
    .promo-banner.promo-banner--v02 .countdown {
        font-size: 5vw;
    }
}
@media (min-width: 1200px) {
    .promo-banner.promo-banner--v02 .countdown {
        font-size: 4vw;
    }
}
.countdown__digit {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    width: 0.9em;
    height: 1em;
    padding: 0 0.15em;
    background-color: black;
    border-radius: 3px;
}
.countdown__digit:nth-child(even):not(:last-child) {
    margin-right: 0.15em;
}
.countdown__digit::after {
    content: "";
    opacity: 0.9;
    position: absolute;
    top: 50%;
    right: 0;
    left: 0;
    height: 33.33%;
    background: linear-gradient(180deg, #5050503b 0%, #5050505c 5%, #50505000 100%);
    z-index: 1;
}
.countdown .rotateY > * {
    animation: rotateY ease-in-out 1s infinite;
}

.countdown-legend {
    overflow: hidden;
    display: flex;
    justify-content: center;
    gap: 0.25em;
    margin-top: 0.15em;
    font-weight: normal;
    text-align: center;
}
@media (max-width: 767px) {
    .countdown-legend {
        font-size: 9vw;
    }
}
@media (min-width: 768px) and (max-width: 889px) {
    .countdown-legend {
        font-size: 7.5vw;
    }
}
@media (min-width: 890px) and (max-width: 1024px) {
    .countdown-legend {
        font-size: 6vw;
    }
}
@media (min-width: 1025px) and (max-width: 1199px) {
    .countdown-legend {
        font-size: 5vw;
    }
}
@media (min-width: 1200px) {
    .countdown-legend {
        font-size: 4vw;
    }
}
@media (max-width: 767px) {
    .countdown-legend span {
        flex: 0 0 6.25em;
        width: 6.25em;
        font-size: 0.3em;
    }
}
@media (min-width: 768px) and (max-width: 889px) {
    .countdown-legend span {
        flex: 0 0 7.75em;
        width: 7.75em;
        font-size: 0.25em;
    }
}
@media (min-width: 890px) and (max-width: 1024px) {
    .countdown-legend span {
        flex: 0 0 9.5em;
        width: 9.5em;
        font-size: 0.2em;
    }
}
@media (min-width: 1025px) {
    .countdown-legend span {
        flex: 0 0 10.25em;
        width: 10.25em;
        font-size: 0.185em;
    }
}

@keyframes rotateY {
    0% {
        transform: translateY(0%);
    }
    98% {
        transform: translateY(-210%);
    }
    100% {
        transform: translateY(-200%);
    }
}
@-webkit-keyframes rotateY {
    0% {
        transform: translateY(0%);
    }
    98% {
        transform: translateY(-210%);
    }
    100% {
        transform: translateY(-200%);
    }
}
@-moz-keyframes rotateY {
    0% {
        transform: translateY(0%);
    }
    98% {
        transform: translateY(-210%);
    }
    100% {
        transform: translateY(-200%);
    }
}
.promo-banner-anchor {
    display: block;
    margin-top: 0;
    height: 0;
}

.promo-banner {
    display: none;
    overflow: hidden;
    position: sticky;
    top: 0;
    z-index: 9;
    margin-bottom: 0;
    padding: 0;
    border-image: none;
}
body.show-promoBanner:not(.show-promoBanner--club) .promo-banner {
    display: block;
}
@media (hover: hover) and (pointer: fine) {
    .promo-banner {
        cursor: pointer;
    }
}
.promo-banner img {
    border-image: 0;
}
@media (min-width: 1025px) {
    .promo-banner img {
        width: 1920px;
    }
}
@media (min-width: 890px) and (max-width: 1024px) {
    .promo-banner img {
        width: 1140px;
    }
}
@media (min-width: 520px) and (max-width: 889px) {
    .promo-banner img {
        width: 890px;
    }
}
@media (min-width: 520px) {
    .promo-banner img {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
    }
}
@media (min-width: 520px) and (max-width: 767px) and (orientation: landscape) {
    .promo-banner img {
        transform: translateX(-54%);
    }
}
@media (max-width: 519px) {
    .promo-banner img {
        width: 100%;
    }
}
.promo-banner__title {
    font-weight: 900;
    text-align: center;
}
@media (max-width: 767px) {
    .promo-banner__title {
        font-size: 7vw;
    }
}
@media (min-width: 768px) and (max-width: 889px) {
    .promo-banner__title {
        font-size: 4.5vw;
    }
}
@media (min-width: 890px) and (max-width: 1024px) {
    .promo-banner__title {
        font-size: 4vw;
    }
}
@media (min-width: 1025px) and (max-width: 1199px) {
    .promo-banner__title {
        font-size: 3.5vw;
    }
}
@media (min-width: 1200px) {
    .promo-banner__title {
        font-size: 2.5vw;
    }
}
.promo-banner__subtitle b {
    font-weight: inherit;
}
@media (max-width: 767px) {
    .promo-banner__subtitle {
        display: block;
        font-size: 22px;
        font-size: 6vw;
    }
    .promo-banner__subtitle b {
        font-size: 28px;
        font-size: 7vw;
    }
}
.promo-banner--morning-sale:not(.promo-banner--v02) {
    background-color: #1952a5;
}
body.show-promoBanner:not(.show-promoBanner--club) .promo-banner--morning-sale + .cart {
    margin-top: 10px;
}
@media (max-width: 767px) {
    body.show-promoBanner:not(.show-promoBanner--club) .promo-banner--morning-sale + .cart {
        padding-top: 20px;
    }
}
@media (min-width: 768px) {
    body.show-promoBanner:not(.show-promoBanner--club) .promo-banner--morning-sale + .cart {
        padding-top: 30px;
    }
}
@media (min-width: 1025px) {
    body.show-promoBanner:not(.show-promoBanner--club) .promo-banner--morning-sale + .saveBanner {
        margin-top: 10px;
    }
}
@media (min-width: 520px) and (max-width: 659px) {
    .promo-banner--v01 img {
        transform: translateX(-60%);
    }
}
@media (min-width: 660px) and (max-width: 819px) {
    .promo-banner--v01 img {
        transform: translateX(-54%);
    }
}
.promo-banner--v02 {
    background: #fbb017 0%;
    background: linear-gradient(90deg, #fbb017 0%, #c46219 100%);
    padding: var(--promoBannerBlockPadding, 1em) 15px;
    line-height: 1.1;
    color: #fff;
}
.promo-banner--v02 .promo-banner__image {
    position: absolute;
    bottom: 0;
    width: auto;
    z-index: -1;
}
.promo-banner--v02 .promo-banner__image--right {
    height: 90%;
}
@media (max-width: 767px) {
    .promo-banner--v02 .promo-banner__image--right {
        right: 0;
    }
}
@media (min-width: 768px) {
    .promo-banner--v02 .promo-banner__image--right {
        right: 50%;
    }
}
@media (min-width: 768px) and (max-width: 889px) {
    .promo-banner--v02 .promo-banner__image--right {
        transform: translateX(150%);
    }
}
@media (min-width: 890px) and (max-width: 1199px) {
    .promo-banner--v02 .promo-banner__image--right {
        transform: translateX(190%);
    }
}
@media (min-width: 1200px) {
    .promo-banner--v02 .promo-banner__image--right {
        transform: translateX(190%);
    }
}
@media (max-width: 767px) {
    .promo-banner--v02 .promo-banner__image--left {
        left: -6%;
        height: 85%;
    }
}
@media (min-width: 768px) {
    .promo-banner--v02 .promo-banner__image--left {
        left: 50%;
        height: 75%;
    }
}
@media (min-width: 768px) and (max-width: 889px) {
    .promo-banner--v02 .promo-banner__image--left {
        transform: translateX(-355%);
    }
}
@media (min-width: 890px) and (max-width: 1199px) {
    .promo-banner--v02 .promo-banner__image--left {
        transform: translateX(-400%);
    }
}
@media (min-width: 1200px) {
    .promo-banner--v02 .promo-banner__image--left {
        transform: translateX(-410%);
    }
}
.promo-banner .disclaimer {
    margin-top: 0.75em;
    text-align: center;
    font-weight: normal;
}
@media (max-width: 767px) {
    .promo-banner .disclaimer {
        font-size: 12px;
    }
}
@media (min-width: 768px) {
    .promo-banner .disclaimer {
        font-size: 16px;
    }
}
