/*------------------------------------*\
    #1 - RESET & CLEARFIX
\*------------------------------------*/


/**
* Eric Meyer's CSS Reset + Nicolas Gallagher's Clearfix
* https://github.com/reefat/css-reset
*/

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;
}

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;
}

button {
    background: none;
    border: 0;
    cursor: pointer;
    margin: 0;
    outline: 0;
    padding: 0;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    /* 1 */
    display: table;
    /* 2 */
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

main,
section,
article,
footer,
header {
    display: block;
}

a {
    color: inherit;
    text-decoration: none;
}

*,
:after,
:before {
    box-sizing: border-box;
}

html {
    background: #fff;
    -webkit-font-smoothing: antialiased;
    margin: 0;
    padding: 0;
}

body {
    color: #364364;
    font-size: 18px;
    line-height: 28px;
    font-family: Montserrat, sans-serif;
    background: url('../img/lines.svg') no-repeat center 85%;
}

b {
    font-weight: bold;
}

h3 {
    font-size: 52px;
    line-height: 66px;
    margin: 40 0 40 0;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 900px) {
    h3 {
        font-size: 42px;
        line-height: 56px;
        margin: 20 0 20 0;
        clear: both;
    }
    body {
        background: none;
    }
}

h5 {
    font-size: 26px;
    font-weight: bold;
}

h4 {
    font-size: 32px;
    line-height: 36px;
}

sup {
    vertical-align: super;
    font-size: smaller;
}

.dLeft {
    float: left;
    text-align: right;
    width: 50%;
    padding: 0 0 0 20%;
}

.dRight {
    float: right;
    text-align: left;
    width: 50%;
    padding: 0 20% 0 0;
}

header {
    position: relative;
    display: inline-table;
    width: 100%;
    height: 578px;
    background-image: 
        url('../img/head-lady.png'),
        url('../img/head-right.png'),
        url('../img/head.jpg');
    background-repeat: no-repeat;
    background-position:
        top left -5%,
        top right 1%,
        center center;
    background-size: contain, none, cover;
    margin: 0 auto;
}

header div#headerContent {
    background: url('../img/logo-anew.png') no-repeat, url('../img/head-protinol.png') no-repeat;
    background-position: right 38px, top 10px left 35%;
    position: relative;
    display: block;
    margin: 0 auto;
    max-width: 1200px;
    text-align: right;
    text-transform: uppercase;
    clear: both;
}

@media screen and (max-width: 1200px) {
    header {
        min-height: 578;
        background-image: 
            url('../img/head.jpg');
        background-repeat: no-repeat;
        background-position:
            center center;
        background-size: cover;
        margin: 0 auto;
    }

    header div#headerContent {
        background: url('../img/logo-anew.png') no-repeat, url('../img/head-protinol.png') no-repeat;
        background-position: right 10%, top 10px left 10%;
        background-size: 30%;
        padding: 0 15 0 15;
    }
}

@media only screen and (min-width: 320px) and (max-width: 767px) {
    header {
        background-image: 
            url('../img/head.jpg');
        background-repeat: no-repeat;
        background-position:
            center center;
        background-size: cover;
        margin: 0 auto;
        padding-bottom: 20;
    }
    
    header div#headerContent {
        background: url('../img/logo-anew.png') no-repeat, url('../img/head-protinol.png') no-repeat;
        background-position: right 10px top 10px, top 10px left 10px;
        text-align: center;
        background-size: 50%;
        padding: 0 15 0 15;
    }
    
}


header div#headerContent h1 {
    padding: 245 0 0 0;
    font-weight: bold;
    font-size: 52px;
    line-height: 60px;
}

header div#headerContent h2 {
    font-size: 30px;
    line-height: 35px;
}

header div#headerContent p {
    max-width: 770px;
    display: block;
    float: right;
    font-size: 22px;
    line-height: 32px;
    margin: 15px 0 0 0;
}

section {
    position: relative;
    display: block;
    margin: 0 auto;
    max-width: 1200px;
    text-align: center;
    clear: both;
}

#meetProtinol p.gold {
    color: ca9f51;
    font-weight: bold;
    margin: 10 0 0 0;
}

#meetProtinol ul {
    list-style: none;
    clear: right;
    margin: 40 0 0 -10;
}

#meetProtinol ul li {
    display: inline-block;
}

#meetProtinol ul li a {
    display: block;
    width: 400px;
    height: 245px;
    cursor: pointer;
    color: #fff;
    font-weight: bold;
    font: 20px;
    margin: 0;
}
#meetProtinol ul li a.mRed {
    background: url('../img/menu-1.png') no-repeat top left;
    text-align: right;
    padding: 93 35 0 0;
}

#meetProtinol ul li a.mGold {
    background: url('../img/menu-2.png') no-repeat top left;
    text-align: right;
    padding: 93 50 0 0;
}

#meetProtinol ul li a.mPurple {
    background: url('../img/menu-3.png') no-repeat top left;
    text-align: right;
    padding: 93 45 0 0;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 900px) {
    #meetProtinol ul li a {
        display: block;
        width: 350px;
        height: 245px;
        cursor: pointer;
        color: #fff;
        font-weight: bold;
        font: 18px;
        margin: 0;
    }
    #meetProtinol ul li a.mRed {
        background: url('../img/menu-1.png') no-repeat top left;
        background-size: contain;
        text-align: right;
        padding: 80 15 0 0;
    }

    #meetProtinol ul li a.mGold {
        background: url('../img/menu-2.png') no-repeat top left;
        background-size: contain;
        text-align: right;
        padding: 80 35 0 0;
    }

    #meetProtinol ul li a.mPurple {
        background: url('../img/menu-3.png') no-repeat top left;
        background-size: contain;
        text-align: right;
        padding: 80 32 0 0;
    }
}

#meetProtinol a.video {
    margin: 50 0;
    display: block;
}

#meetProtinol img {
    max-height: 100%;
    max-width: 100%;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 900px) and (-webkit-device-pixel-ratio: 3) {
    #meetProtinol {
        padding: 0 15 0 15;
    }
}

#productLines p.sDesc {
    font-size: 22px;
    line-height: 28px;
}

#productLines article {
    display: block;
    position: relative;
    min-height: 400px;
    margin: 50 0 0 0;
    border-radius: 40px 0px 40px 0;
    border: #809cb6 solid 1px;
}

#productLines article {
    display: flex;
    position: relative;
    min-height: 400px;
    margin: 50 0 0 0;
    border-radius: 40px 0px 40px 0;
    border: #809cb6 solid 1px;
    color: #28231d;
    background: #fff;
    align-items: center;
}

#productLines article a.product {
    display: block;
    width: 25%;
    float: left;
    text-align: center;
    font-size: 16px;
    line-height: 22px;
    font-weight: bold;
    padding: 10px;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 900px) {
    #productLines article {
        display: block;
        position: relative;
        min-height: 400px;
        margin: 30 10 0 10;
        border-radius: 40px 0px 40px 0;
        border: #809cb6 solid 1px;
        color: #28231d;
        background: #fff;
        align-items: center;
    }

    #productLines article a.product {
        display: block;
        width: 100%;
        float: none;
        text-align: center;
        font-size: 16px;
        line-height: 22px;
        font-weight: bold;
        padding: 10px;
    }
    .dLeft {
        float: none;
        text-align: center;
        width: 100%;
        padding: 20;
    }

    .dRight {
        float: none;
        text-align: center;
        width: 100%;
        padding: 20;
    }
    #productLines article#red {
        display: flex;
        flex-direction: column-reverse;
    }
    #productLines article#purple {
        display: flex;
        flex-direction: column-reverse;
    }
}

#productLines article a.product span.capacity {
    font-weight: normal;
}

#productLines article a.product img {
    max-height: 100%;
    max-width: 100%;
    margin: 0 0 15 0;
}

#productLines article a.product span.buttonBuy {
    display: block;
    width: 184px;
    height: 42px;
    line-height: 42px;
    font: 14px;
    font-weight: bold;
    margin: 10 auto;
    color: #fff;
    background: #7f29c4;
    border-radius: 4px;
    text-transform: uppercase;
}

#productLines article a.product:hover span.buttonBuy {
    background: #6A17AD;
}

#productLines article#purple .catDesc p.info b {
    color: #6a4d7e;
}

#productLines article#gold .catDesc p.info b {
    color: #ca9f51;
}

#productLines article#red .catDesc p.info b {
    color: #b72f31;
}

#productLines article .catDesc p.info {
    margin: 5 0 0 0;
    font-size: 17px;
    line-height: 22px !important;
}

#productLines article .catDesc p.age {
    font-size: 18px;
    line-height: 24px;
    text-transform: uppercase;
}

#productLines article .catDesc p.hInfo {
    font-size: 26px;
    line-height: 24px;
    margin: 30 0 0 0;
    font-variant: small-caps;
    font-weight: bold;
}

#productLines article img.model {
    position: absolute;
    left: 0;
    top: -23;
    overflow: hidden;
}

#productLines article img.modelR {
    position: absolute;
    right: 0;
    top: -23;
    overflow: hidden;
}

#shots article {
    display: flex;
    position: relative;
    min-height: 400px;
    margin: 50 0 0 0;
    border-radius: 40px 0px 40px 0;
    border: #809cb6 solid 1px;
    color: #28231d;
    align-items: center;
    background: #f8f9fd;
}
.quote-wrapper {
    width: 160px;
    height: 160px;
    position: absolute;
    margin: auto 0;
    display: flex;
    transform: rotate(-15deg);
    right: 30;
    z-index: 10;
    margin: -80 10 0 0;
}

.text {
    width: 100%;
    height: 100%;
    background: radial-gradient( ellipse at center, rgba(127, 41, 191, 1) 0%, rgba(127, 41, 191, 1) 70%, rgba(127, 41, 191, 0) 70.3%);
    position: relative;
    margin: 0;
    color: white;
}

.text p {
    font-size: 18px;
    line-height: 19px;
    font-weight: bold;
    font-variant: small-caps;
    padding: 0;
    text-align: center;
}

.text::before {
    content: "";
    width: 50%;
    height: 100%;
    float: left;
    shape-outside: polygon( 0 0, 98% 0, 50% 6%, 23.4% 17.3%, 6% 32.6%, 0 50%, 6% 65.6%, 23.4% 82.7%, 50% 94%, 98% 100%, 0 100%);
    shape-margin: 7%;
}

.text p::before {
    content: "";
    width: 50%;
    height: 100%;
    float: right;
    shape-outside: polygon( 2% 0%, 100% 0%, 100% 100%, 2% 100%, 50% 94%, 76.6% 82.7%, 94% 65.6%, 100% 50%, 94% 32.6%, 76.6% 17.3%, 50% 6%);
    shape-margin: 7%;
}

#shots .text p::before {
    content: "";
    width: 50%;
    height: 100%;
    float: right;
    shape-outside: polygon( 2% 0%, 100% 0%, 100% 100%, 2% 100%, 50% 94%, 76.6% 82.7%, 94% 65.6%, 100% 50%, 94% 32.6%, 76.6% 17.3%, 50% 6%);
    shape-margin: 7%;
}

#shots article a.product {
    display: block;
    position: relative;
    width: 100%;
    float: right;
    right: 0;
    text-align: center;
    font-size: 16px;
    line-height: 22px;
    font-weight: bold;
    padding: 10px;
    margin-left: 25%;
}
@media only screen and (min-device-width: 320px) and (max-device-width: 900px) {
    .quote-wrapper {
        width: 160px;
        height: 160px;
        position: relative;
        margin: 0 35%;
        display: flex;
        transform: rotate(-15deg);
        z-index: 10;
    }

}
#shots article a.product span.capacity {
    font-weight: normal;
}

#shots article a.product img {
    max-height: 100%;
    max-width: 100%;
    margin: 0 0 15 0;
}

#shots article a.product span.buttonBuy {
    display: block;
    width: 184px;
    height: 42px;
    line-height: 42px;
    font: 14px;
    font-weight: bold;
    margin: 10 auto;
    color: #fff;
    background: #7f29c4;
    border-radius: 4px;
    text-transform: uppercase;
}

#shots article a.product:hover span.buttonBuy {
    background: #6A17AD;
}

#shots article #wizaz {
    background: url('../img/wizaz.png') no-repeat;
    background-position: right top;
    position: relative;
    display: block;
    text-align: right;
    clear: both;
    padding: 40 0 0 0;
    margin: 15 auto;
}

#shots article #wizaz p {
    display: inline-block;
    float: right;
    margin: 0 0 0 5;
    font-weight: bold;
}

#shots article #wizaz svg {
    float: right;
}

#shots article #wizaz svg.icon {
    display: block;
    height: 18px;
    margin: 5 3 auto;
    width: 102px;
}

#shots #ashots img.model {
    position: absolute;
    left: 0;
    bottom: 0;
    overflow: hidden;
}

#shots #ashots .catDesc {
    display: block;
    position: inherit;
    z-index: 2;
    width: 50%;
    left: 25%;
    text-align: right;
}

#shots #ashots .catDesc p.info {
    margin: 25 0 25 0;
    font-size: 17px;
    line-height: 22px;
}

@media only screen and (max-width: 950px) {
    #meetProtinol {
        padding: 0 15 0 15;
    }
    #shots #ashots img.model {
        display: none;
    }
    
    #productLines article img.model {
        display: none;
    }

    #productLines article img.modelR {
        display: none;
    }
    #shots article a.product {
        display: block;
        position: relative;
        width: 100%;
        float: none;
        right: 0;
        text-align: center;
        font-size: 16px;
        line-height: 22px;
        font-weight: bold;
        padding: 10px;
        margin: 30 0 -10 0;
    }
}

@media only screen and (min-device-width: 320px) and (max-device-width: 900px) {
    #shots article {
        display: block;
        position: relative;
        min-height: 400px;
        margin: 30 10 0 10;
        border-radius: 40px 0px 40px 0;
        border: #809cb6 solid 1px;
        color: #28231d;
        align-items: center;
        background: #f8f9fd;
        padding: 10;
    }
    #shots #ashots .catDesc {
        display: block;
        position: inherit;
        float: none;
        z-index: 2;
        width: 100%;
        left: 0;
        text-align: center;
    }
    #shots article #wizaz {
        background: url('../img/wizaz.png') no-repeat;
        background-position: center top;
        position: relative;
        display: block;
        text-align: center;
        clear: both;
        padding: 40 0 0 0;
        margin: 15 auto;
    }
    #shots article #wizaz p {
        float: none;
    }
    #shots article #wizaz svg {
        float: none;
    }
    #shots article #wizaz svg.icon {
        display: inline;
    }
}


#footnotes {
    text-align: left;
}

#footnotes ul {
    float: left;
    list-style: none;
    color: #28231d;
    font-size: 14px;
    line-height: 18px;
    margin: 20 0 50 0;
}

#testers {
    display: table;
    padding: 10 0 50 0;
    margin-top: 40;
    width: 100%;
    background: #fbfbff;
    max-width: none;
}

#testers h3 {
    clear: both;
    display: block;
}

#testers h3 span {
    font-size: 22px;
}

#testers div {
    display: block;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
}

#testers div article {
    display: inline-block;
    max-width: 387px;
    min-height: 670px;
    padding: 40 10 40 10;
    margin-right: 14;
    margin-bottom: 10px;
    background: #fff;
    border-radius: 40px 0 40px 0;
    color: #28231d;
    font-size: 18px;
    line-height: 24px;
}

#testers div article:last-child {
    margin-right: 0;
}

#testers div article a {
    line-height: 50px;
    color: #7f29c4;
    font-weight: bold;
}
#testers div article img {
    max-height: 95%;
    max-width: 95%;
}

#testers div article a:hover {
    color: #6A17AD;
}

#testers div article p {
    position: relative;
    display: block;
    max-height: 200px;
    background: #fff;
    -webkit-background-clip: text;
    overflow: hidden;
}

#testers div article p:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(to bottom, transparent 20%, #fff 100%);
    background-image: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.001) 20%, #fff 95%, #fff 100%);
}

#testers div article a.buttonMore {
    display: block;
    max-width: 250px;
    height: 42px;
    line-height: 42px;
    font-size: 14px;
    font-weight: bold;
    margin: 10 auto;
    color: #fff;
    background: #7f29c4;
    border-radius: 4px;
    text-transform: uppercase;
}

#testers div article a.buttonMore:hover {
    background: #6A17AD;
}

@media only screen and (min-device-width: 320px) and (max-device-width: 900px) {
    #testers h3 {
        clear: both;
        display: block;
        font-size: 1.3em;
        font-weight: bold;
        padding: 15;
    }

    #testers h3 span {
        font-size: 22px;
        font-weight: normal;
        line-height: 28px;
    }
}

#seeMore {
    width: 100%;
    max-width: none;
    background: #f0f0f0;
    color: #646464;
    text-transform: uppercase;
    font-size: 22px;
    min-height: 100px;
    line-height: 100px;
}

@media only screen and (max-width: 1200px) {
    #footnotes {
        padding: 0 10 0 10;
    }
}

@media only screen and (min-width: 320px) and (max-width: 767px) {
    #footnotes {
        padding: 0 20 0 20;
    }
    
    #testers div article {
        margin-right: 0;
    }
    
    #seeMore {
        line-height: normal;
        padding: 20;
    }
    #seeMore div p {
        display: block;
    }
    #seeMore div p a {
        display: block;
        clear: both;
        float: none;
        margin: 20;
    }
}

#seeMore div {
    display: block;
    max-width: 1200px;
    text-align: center;
    margin: 0 auto;
}

#seeMore div p {
    display: inline-block;
    align-items: center;
}

#seeMore div a {
    display: inline-block;
    height: 42px;
    line-height: 42px;
    padding: 0 30 0 30;
    font-size: 14px;
    font-weight: bold;
    margin: 10 0 0 20;
    color: #fff;
    background: #000;
    border-radius: 4px;
    text-transform: uppercase;
}