:focus {    outline: solid 3px #ccc !important}.level-1 > .rendered:focus-within .level-2 {    display: block !important}section {    -webkit-font-smoothing: antialiased;    -moz-osx-font-smoothing: grayscale}.rectangle-983, .breadcrumb {    display: none}@media only screen and (max-width:479px) {    #wrapper .main {        padding-top: 145px    }}@media only screen and (max-width:768px) {    .footer-links-section .footer-links-wrapper .footer-social {        width: 100%    }}.logoWrapper button {    background: 0 0;    border: 0;    border-radius: 0;    padding: 0;    line-height: normal}.productlandingbgimage {    background: #f2f2f2 url(../images/plp/fit4/fit4-plp-hero-mobile.jpg?$staticlink$);    background-position: top center;    background-repeat: no-repeat;    padding: 5px 0 35px}@media(min-width:480px) {    .productlandingbgimage {        background: #f2f2f2 url(../images/plp/fit4/fit4-plp-hero-tablet.jpg?$staticlink$);        background-position: top center;        background-repeat: no-repeat;        padding: 20px 0 50px    }}@media(min-width:768px) {    .productlandingbgimage {        background: url(../images/plp/fit4/fit4-plp-hero-desktop.jpg?$staticlink$), linear-gradient(to bottom, #ffffff 0%, #ffffff 385px, #f2f2f2 385px, #f2f2f2 100%);        background: url(../images/plp/fit4/fit4-plp-hero-desktop.jpg?$staticlink$), -webkit-linear-gradient(to bottom, #ffffff 0%, #ffffff 385px, #f2f2f2 385px, #f2f2f2 100%);        background: url(../images/plp/fit4/fit4-plp-hero-desktop.jpg?$staticlink$), -moz-linear-gradient(to bottom, #ffffff 0%, #ffffff 385px, #f2f2f2 385px, #f2f2f2 100%);        background-position: top center, top;        background-size: 1440px 575px, auto;        background-repeat: no-repeat, repeat;        padding: 20px 25px 50px    }}.fake-main {    background: #fff;    padding: 0 30px}.heroWrapper {    display: block;    background-color: rgba(255, 255, 255, .97);    box-sizing: border-box;    padding: 40px 15px 0;    margin: 135px auto 0;    width: calc(100% - 40px)}.productHero {}.fit4Logo {    display: block;    margin: 0 auto}.one2tenLogo {    display: block;    margin: 0 auto;    max-width: 170px}.one2tenText {    display: none}.logoWrapper .fit4-intro-text {    text-align: center;    margin-left: 5%;    margin-right: 5%;    padding-bottom: 1.5em}.logoWrapper .fit4-intro-text p {    margin: 0}@media(max-width:480px) {    .fit4Logo {        width: 315px    }}@media(min-width:480px) {    .fake-main {        width: calc(100% - 40px)    }    .heroWrapper {        background-color: rgba(255, 255, 255, .97);        padding: 40px 30px 0;        margin: 135px auto 0;        width: calc(100% - 40px)    }    .one2tenLogo {        display: none    }}@media(min-width:768px) {    .fake-main {        width: calc(100% - 20px)    }    .heroWrapper {        background-color: transparent;        margin: 40px auto 0;        width: calc(100% - 20px);        padding: 0    }    .productHero {        display: block;        width: 100%    }    .fit4Logo {        margin: 0 auto    }    .one2tenText {        display: block    }    .logoWrapper {        display: flex    }    .logoWrapper .fit4-intro-text {        max-width: 280px    }}@media(min-width:1024px) {    .fake-main {        width: calc(100% - 40px);        max-width: 1180px;        max-width: 1240px    }    .heroWrapper {        max-width: 1240px;        margin: 40px auto 0;        width: calc(100% - 40px);        padding: 0    }}.fake-main.top {    padding: 0 15px 25px}.stagesWrapper.mobile-slick {    display: block;    margin: 10px 0 0;    text-align: center}.mobile-slick .slick-slide img {    display: inline-block}.mobile-slick .slick-dots li {    border-radius: 50%;    display: inline-block;    width: 15px;    height: 15px;    background: #d5d5d5;    background: #6889a3;    margin: 0 7px}.mobile-slick .slick-dots li button {    width: 15px;    height: 15px;    opacity: 0}.mobile-slick .slick-dots li.slick-active {    background: #6889a3;    background: #d5d5d5}.stagesWrapper.mobile-slick .slick-slide img {    max-width: 250px !important;    margin: 0 0 50px}.stagesWrapper.mobile-slick .slick-dots {    bottom: -16px}.stagesWrapper.mobile-slick .slick-dots li {    width: 40px;    height: 40px;    background: #5998b8;    padding-top: 7px;    font: 500 22px/26px montserrat;    color: #fff;    margin: 0 7px}.stagesWrapper.mobile-slick .slick-dots li::before {    content: "1"}.stagesWrapper.mobile-slick .slick-dots li:nth-of-type(2) {    background: #3a6d8d}.stagesWrapper.mobile-slick .slick-dots li:nth-of-type(2)::before {    content: "2"}.stagesWrapper.mobile-slick .slick-dots li:nth-of-type(3) {    background: #983a47}.stagesWrapper.mobile-slick .slick-dots li:nth-of-type(3)::before {    content: "3"}.stagesWrapper.mobile-slick .slick-dots li:nth-of-type(4) {    background: #e17f40}.stagesWrapper.mobile-slick .slick-dots li:nth-of-type(4)::before {    content: "4"}.stagesWrapper.mobile-slick .slick-dots li.slick-active {    background: #d5d5d5}.stagesWrapper.desktop-only {    display: none}.stagesWrapper div {    position: relative;    padding: 1.5em 0;    margin: 0 0 1em;    min-height: 700px}.stagesWrapper div.stage-one {    background-color: #28759d}.stagesWrapper div.stage-two {    background-color: #2c5773}.stagesWrapper div.stage-three {    background-color: #983a48}.stagesWrapper div.stage-four {    background-color: #a3522a}.stagesWrapper div h2, .stagesWrapper div h3 {    text-align: center;    color: #fff;    padding: 0 1em}.stagesWrapper div ul li, .stagesWrapper div p {    color: #fff}.stagesWrapper div ul {    padding-right: 1em;    margin-bottom: 2em}.stagesWrapper div ul li {    font-weight: 700;    font-size: 1rem}.stagesWrapper div h2 {    font-size: 1.75rem;    font-weight: 800;    text-transform: uppercase;    margin-bottom: .125em}.stagesWrapper div h3 {    font-family: open-sans, Arial, sans-serif;    font-size: 1.125rem;    font-weight: 700}.stagesWrapper div img {    position: absolute;    bottom: 70px;    left: 0}.stagesWrapper div p.stage-heading {    position: absolute;    bottom: 1em;    left: 0;    width: 100%;    text-transform: uppercase;    padding: 0 1em;    margin: 0;    font-size: 1.3125rem;    line-height: 1.4em}.stagesWrapper div p.stage-heading span {    display: block;    font-size: 2.75rem;    font-weight: 800;    letter-spacing: 0;    opacity: .7}@media(min-width:680px) {    .fake-main.top {        padding: 0 30px 15px    }    .stagesWrapper.mobile-slick {        display: none    }    .stagesWrapper.desktop-only {        display: flex;        justify-content: center;        align-items: baseline;        flex-flow: wrap    }    .stagesWrapper div {        float: left;        width: 49%;        margin: 0 2% 1em 0    }    .stagesWrapper div:nth-child(even) {        margin-right: 0    }    .stagesWrapper div:nth-child(odd) {        clear: both    }}@media(min-width:1200px) {    .stagesWrapper.desktop-only {        justify-content: space-between;        flex-flow: wrap    }    .stagesWrapper div {        width: 24%;        margin: 0 1.3% 0 0;        min-height: 700px    }    .stagesWrapper div:nth-child(even) {        margin-right: 1.3%    }    .stagesWrapper div:nth-child(odd) {        clear: none    }    .stagesWrapper div:nth-child(4) {        margin-right: 0    }}.videoWrapper {    position: relative;    padding-bottom: 56.25%;    margin-bottom: 20px;    margin-top: 15px;    height: 0}.videoWrapper iframe {    position: absolute;    top: 0;    left: 0;    width: 100%;    height: 100%}@media(min-width:500px) {    .videoWrapper {        margin-top: 0    }}.featuresWrapper {    display: block;    width: calc(100% - 40px);    background: #e7e8e9;    text-align: center;    margin: 0 auto;    padding-bottom: 1px}.featuresWrapper .fitKit {    display: block;    background: url(../images/plp/fit4/fit4-plp-fitkit-background.jpg?$staticlink$) repeat-x;    margin-bottom: 10px}.featuresWrapper .fitKit img {    margin: 0 auto;    display: block}.featuresWrapper .features {    padding: 25px 15px}.featuresWrapper .features .mobile-slick {    display: block;    margin-bottom: 0;    padding: 0 25px 25px}.featuresWrapper .features .mobile-slick img {    display: block;    margin: auto}.featuresWrapper .features .mobile-slick img + img {    margin: 15px auto 5px}.featuresWrapper .features .mobile-slick .slick-dots {    width: calc(100% - 40px)}.featuresWrapper .features.desktop-only {    display: none}.featuresWrapper .features .featureBox {    display: flex;    flex-wrap: nowrap;    align-items: center;    background-color: #f2f2f2}.featuresWrapper .features .featureBox .feature-text-box {    padding: 1em 2em}.featuresWrapper .features .featureBox .feature-text-box p {    font-size: .875rem;    line-height: 1.5em;    font-weight: 600;    color: #333;    margin-top: .25em;    letter-spacing: 0}.featuresWrapper .features .featureBox .feature-text-box p.feature-descriptor {    text-transform: uppercase;    font-weight: 700;    margin-bottom: 0;    margin-top: 0}@media(min-width:500px) {    .featuresWrapper {        background: #fff;        padding: 0 20px 20px;        padding: 0 20px    }    .featuresWrapper .features {        padding: 0 0 20px 20px;        padding: 0 0 5px    }    .featuresWrapper .features.desktop-only {        display: block    }    .featuresWrapper .features .mobile-slick {        display: none    }    .featuresWrapper .features .featureBox {        margin: 0 0 20px    }    .featuresWrapper .features .featureBox div {        width: 58%;        text-align: center    }    .featuresWrapper .features .featureBox div + div {        display: flex;        width: 42%;        flex-direction: row-reverse    }    .featuresWrapper .features .featureBox div + div img {        margin: 0    }    .featuresWrapper .features .featureBox .featureFlip {        order: -1;        flex-flow: row    }}@media(min-width:768px) {    .featuresWrapper {        background: #fff;        width: calc(100% - 20px);        max-width: 1240px;        padding: 0 30px    }    .featuresWrapper .fitKit {        display: block;        width: 100%    }    .featuresWrapper .featureColumn {        width: 100%    }}@media(min-width:900px) {    .featuresWrapper {        display: flex;        justify-content: space-between;        flex-wrap: nowrap;        width: calc(100% - 20px)    }    .featuresWrapper .fitKit {        width: 35%;        margin-right: 20px    }    .featuresWrapper .featureColumn {        width: 65%;        margin-bottom: 10px    }}@media(min-width:1024px) {    .featuresWrapper {        width: calc(100% - 40px)    }}.fake-main.bottom {    padding: 0;    background: #f2f2f2}.qrWrapper {    background-color: #2f5a6f;    display: block;    width: 100%;    text-align: center;    padding: 5px 20px 30px}.qrWrapper .qr img {    display: block;    width: 260px;    margin: 10px auto 0}.qrWrapper h3 {    color: #fff;    font: 700 24px/26px 'open sans', sans-serif;    margin: 25px 25px 10px 30px;    padding: 0}.qrWrapper p {    font-size: 16px;    line-height: 24px;    color: #fff;    margin: 0 0 15px;    padding: 0}.qrWrapper a {    color: #fff;    text-decoration: none;    font-weight: 600}.qrWrapper a:hover {    color: #c6ecff}@media(min-width:768px) {    .qrWrapper {        display: flex;        flex-wrap: nowrap;        width: 100%;        flex-flow: row-reverse;        text-align: left;        padding: 0    }    .qrWrapper .qr {        width: 108%    }    .qrWrapper .qr img {        width: 100%;        margin: 0    }    .qrWrapper p {        font-size: 17px;        line-height: 25px;        color: #fff;        margin: 0 25px 25px 30px;        padding: 0    }}@media(min-width:830px) {    .qrWrapper .qr {        width: 77%    }}@media(min-width:900px) {    .qrWrapper .qr {        width: 53%    }    .qrWrapper .qr img {        width: 100%;        margin: 0    }}@media(min-width:1024px) {    .qrWrapper .qrText {        width: 100%    }    .qrWrapper .qr {        display: flex;        width: 255px    }}.pdpCTA {    text-align: center;    margin: 25px auto 20px}/*.pdpCTA .button {    margin: 0 auto;    font-size: 16px;    font-weight: 700;    background-color: #2f5a6f;    color: #fff;    border-color: #2f5a6f}*/.vipCTA {    text-align: center}.vipCTA p {    font-size: 20px;    margin: 30px 0 15px;    line-height: 1.2;    font-weight: 600;    letter-spacing: 0}.vipCTA .button {    margin: 0 auto;    font-size: 16px;    font-weight: 700;    background: #fff;    color: #e07f40;    border-color: #fff}