[class^="ccm-"],
[id^="ccm-"],
[class*=" ccm-"],
[class^="ccm-"] *,
[id^="ccm-"] *,
[class*=" ccm-"] * {
    text-transform: none;
    letter-spacing: normal;
}
[id^="ccm-"] textarea,
[class*=" ccm-"] textarea
[id^="ccm-"] input,
[class*=" ccm-"] input,
[id^="ccm-"] select,
[class*=" ccm-"] select {
    background: #fff !important;
}
.ccm-add-block {
    clear: both;
    width: 100%;
    float: left;
    line-height: 18px;
}
.ccm-block.clear.clearer,
.ccm-block-arrange.clear.clearer {
    clear: both;
    float: left;
    width: 100%;
    background: gold;
}
.m-item.ccm-block,
.m-item.ccm-block-arrange {
    clear: both !important;
    width: 100%;
}

/* Home Page
-------------------------------------------------------------- */

.desktop-layout {
    width: 100%;
}
.hero {
    width: 100%;
}
.mobile-hero-layout, 
.mobile-home-nav {
    display: none;
}
.dual-layout {
    clear: both;
}
.dual-layout .main {
    min-height: 0px;
}

/* home page slideshow */

#sequence {
    float: left;
    width: 100%;
}
#sequence .slide {
    opacity: 0;
    -webkit-transition: opacity 1s ease;
    -moz-transition: opacity 1s ease;
    -o-transition: opacity 1s ease;
    -ms-transition: opacity 1s ease;
    transition: opacity 1s ease;
}
#sequence .animate-in .slide {
    opacity: 1;
}
#sequence .sequence-prev,
#sequence .sequence-next {
    z-index: 200;
    top: 50%;
    font-size: 19px;
    line-height: 1;
    cursor: pointer;
}
#sequence .sequence-prev:hover,
#sequence .sequence-next:hover {
    color: #4fc7e7;
}
#sequence .sequence-prev {
    left: -25px;
}
#sequence .sequence-next {
    right: -25px;
}
.sequence-pagination {
    z-index: 200;
    bottom: 15px;
    left: 15px;
}
.sequence-pagination li {
    float: left;
    width: 8px;
    height: 8px;
    background: #fff;
    border: solid 1px #000;
    text-indent: -999em;
    border-radius: 5px;
    margin-right: 10px;
    cursor: pointer;
}
.sequence-pagination li.current {
    background: #000;
    border-color: #fff;
}

.desktop-layout iframe {
    width: 100% !important;
}

/* collections */

.home-collections-nav h2 {
    width: 100%;
    background: #4fc7e7;
    font: bold 30px 'spy sans', Helvetica, sans-serif;
    color: #fff;
    letter-spacing: .172em;
    padding: 5px 0;
    margin-top: 7px;
    text-align: center;
}
.home-collections-nav ul {
    width: 50%;
}
.home-collections-nav ul li {
    width: 100%;
    float: left;
    clear: both;
}
.home-collections-nav ul li a {
    text-transform: none;
    color: #4fc7e7;
    font: bold 22px/1 'spy sans', Helvetica, sans-serif;
    width: 96%;
    text-align: center;
    float: left;
    padding: 10px 2%;
    letter-spacing: .01em;
    -webkit-transition: background .3s ease;
    -moz-transition: background .3s ease;
    -o-transition: background .3s ease;
    -ms-transition: background .3s ease;
    transition: background .3s ease;
}
.home-collections-nav ul li a:hover {
    color: #fff;
    background: #4fc7e7;
}


/* Login Page
-------------------------------------------------------------- */

#login #central {
    margin-top: 25px;
}
#login .ccm-form label {
    text-transform: uppercase;
}
#login .ccm-form hr {
    margin: 20px 0;
    border-top: solid 1px #ddd;
    height: 0;
}
#login .ccm-input-text {
    width: 300px;
}
#login .ccm-input-submit {
    margin-top: 20px;
}

/* CMS Page styles
-------------------------------------------------------------- */
.cms-2_col_left .content h2 {
    margin-bottom: 15px;
    margin-top: 15px;
}
.cms-2_col_left .content h3 {
    letter-spacing: .1em;
    font-size: 14px;
}
.cms-2_col_left .content dl {
    border-bottom: solid 1px #000;
    margin-bottom: 30px;
}

.cms-2_col_left .content dt { 
    margin-bottom: 5px;
}
.cms-2_col_left .content dd {
    margin-bottom: 30px;
}
.cms-2_col_left .content p {
    text-transform: none;
    margin-bottom: 15px;
    letter-spacing: .03em;
}
.cms-2_col_left .content a {
    color: #4fc7e7;
    text-decoration: underline;
}
.cms-2_col_left .content a:hover {
    color: #000;
}
.cms-2_col_left .content address {
    margin-bottom: 15px;
    float: left;
    width: 100%;
    clear: both;
}
.cms-2_col_left .content address h2 {
    letter-spacing: .05em;
    margin-bottom: 5px;
}
.cms-2_col_left .content address p {
    margin-bottom: 5px;
}

/* Happy Lens
-------------------------------------------------------------- */

.happy-lens-shop-wrapper {
    display: none !important;
}

.happy-lens-shop-wrapper,
.happy-lens-demo-wrapper {
    background: #4fc7e7;
    width: 100%;
    float: left;
}
.happy-lens-demo-wrapper {
    min-height: 500px;
}
.happy-lens-shop,
.happy-lens-demo {
    float: left;
    width: 90%;
    margin: 15px 2%;
    padding: 15px 3%;
    background: #fff;
    border-radius: 9px;
}

.happy-lens-demo {
    min-height: 440px;
}
/* Happy Lens Shop */

.happy-lens-shop > img {
    float: left;
    width: 25%;
}
.happy-lens-shop ul {
    float: right;
    width: 75%;
}
.happy-lens-shop ul li {
    float: left;
    width: 30%;
    margin: 0 1.5%;
}
.happy-lens-shop ul li h2 {
    color: #fff;
    background: #4fc7e7;
    letter-spacing: 0;
    padding: 9px 0;
    text-align: center;
    font: 700 21px/1 "proxima-nova", sans-serif !important;
}
.happy-lens-shop ul li h3 {
    color: #f58026;
    letter-spacing: 0;
    margin: 7px 0;
    text-align: center;
    font: 700 13px/1 "proxima-nova", sans-serif !important;

}

/* Happy Lens Demo */

.happy-lens-demo h1 {
    font: 700 50px "proxima-nova",sans-serif;
    letter-spacing: 0;
    font-weight: bold;
    text-align: center;
}
.happy-lens-demo ul {
    float: left;
    width: 30%;
}
.happy-lens-demo ul li {
    float: left;
    margin: 0 15px 25px 0;
}
.happy-lens-demo ul li img {
    border: solid 7px #fff;
    border-radius: 72px;
}
.happy-lens-demo ul li img:hover,
.happy-lens-demo ul li.active img {
    border-color: #4fc7e7;
}
.happy-lens-demo .demo-info {
    float: right;
    width: 60%;
}
.happy-lens-demo .demo-product-img img {
    display: none;
    margin: 20px 0;
}
.happy-lens-demo .demo-product-img img.active {
    display:block;
}

.happy-lens-demo .demo-product-info {
    width: ;
    border: solid 3px #4fc7e7;
}
.happy-lens-demo .demo-product-title {
    background: #4fc7e7;
}
.happy-lens-demo .demo-product-title h2 {
    color: #fff;
    width: 100%;
    text-align: center;
    letter-spacing: .01em;
    padding: 5px 0;
    display: none;
    font: 700 18px/1 "proxima-nova",sans-serif;
}
.happy-lens-demo .demo-product-title h2.active {
    display: block;
}

.happy-lens-demo .demo-product-description {
    min-height: 40px;
    padding: 15px 10px;
}
.happy-lens-demo .demo-product-description p {
    color: #4fc7e7;
    font: 700 15px/1 "proxima-nova",sans-serif;
    line-height: 1;
    letter-spacing: 0;
    display: none;
}
.happy-lens-demo .demo-product-description p.active {
    display: block;
}

/* Content Form
-------------------------------------------------------------- */

.content-form {

}
.content-form h3 {
    float: left;
    width: 100%;
    clear: both;
    margin: 15px 0;
}

.content-form fieldset {
    clear: both;
    width: 100%;
    float: left;
    margin-bottom: 15px;
}
.content-form span,
.content-form fieldset label,
.content-form input {
    display: inline-block;
}
.content-form label.forpicker {
    display: none;
}
.content-form .span1 { width: 11.1%; }
.content-form .span2 { width: 22.2%; }
.content-form .span5 { width: 55.5%; }

.content-form hr {
    float: left;
    width: 100%;
    margin: 15px 0;
    border-top: solid 1px #4fc7e7;
}

/* Science of Happy */

.happy-science {}
.happy-science .intro {
    float: left;
    background: #4fc7e7;
}
.happy-science .intro .intro-image {
    width:47.309236947791%;
    float: left;
}
.happy-science .intro .intro-image img {
    width: 100%;
}
.happy-science .intro .intro-text {
    float: right;
    width: 48.51405%;
    margin-right: 3.212851405622%;
}
.happy-science .intro h1 {
    color: #fff;
    margin-top: 35px;
    letter-spacing: 0;
    font: 700 50px/1 "proxima-nova", sans-serif;
    text-align: center;
}
.happy-science .icons {
    color: #fff;
    text-align: center;
    line-height: 90px;
}
.happy-science .icons .icon-atom {
    font-size: 42px;
}
.happy-science .icons .icon-bright {
    font-size: 54px;
}
.happy-science .icons div {
    display: inline-block;
    vertical-align: middle;
}
.happy-science .intro .description p {
    color: #fff;
    font: 300 16px/24px "proxima-nova", sans-serif;
    text-transform: uppercase;
    letter-spacing: 0;
    text-align: justify;
}
.happy-science strong {
    font-weight: 700;
}
.happy-science p a {
    color: #fff;
    font-weight: 700;
    text-decoration: underline;
}
.happy-science p a:hover {
    color: #000;
}
.happy-science .intro .description p a:hover {
    color: #000;
}

.happy-science .body-copy {
    margin-bottom: 30px;
    background: #4fc7e7;
    float: left;
    width: 98.80952381%;
    clear: both;
}
.happy-science .body-copy p {
    font: 12px;
    line-height: 20px;
    color: #fff;
    font-family: "proxima-nova", sans-serif;
}

.happy-science .body-copy .heading {
    float: left;
    width: 43.125%;
    margin-top: 30px;
    margin-bottom: 30px;
    margin-left: 4.375%;
}
.happy-science .body-copy .heading h2 {
    color: #fff;
    letter-spacing: 0;
    margin-top: 160px;
    font: 700 30px/1 "proxima-nova", sans-serif;
    text-align: center;
}
.happy-science .body-copy .heading .icons {
    width: 100%;
    text-align: center;
}
.happy-science .body-copy .heading .icons div {
    display: inline-block;
}
.happy-science .body-copy ul {
    float: right;
    width: 43.125%;
    margin-top: 30px;
    margin-bottom: 30px;
    margin-right: 4.375%;
}

.happy-science .good-rays {
    background: #4fc7e7;
}

.happy-science .color-preference {
    background: #4fc7e7;
}

/* athlete page list
-------------------------------------------------------------- */

.athlete-page-list a,
.athlete-page-list ul {
    position: relative;
}
.athlete-page-list .m-item {
    position: relative;
    text-align: center;
}
.athlete-page-list .m-item img {
    display: inline-block;
}
.athlete-page-list img.off {
    position: absolute;
    z-index: 4;
    top: 0;
    left: 0;
    opacity: 1;
    transition: opacity .4s ease;
}
.athlete-page-list a:hover img.off {
    opacity: 0;
    transition: opacity .2s ease;
}
.athlete-page-list img.on {
    z-index: 3;
    top: 0%;
}
.athlete-page-list h3 {
    display: none;
}
.athlete-page-list .no-image {
    background: #4fc7e7;
    display: table;
}
.athlete-page-list .no-image a {
    display: table-cell;
    vertical-align: middle;
}
.athlete-page-list .no-image img {
    display: none;
}
.athlete-page-list .no-image h3 {
    display: block;
    font: 300 28px/1 "proxima-nova";
    letter-spacing: .05em;
    color: #fff;
}

/* athlete pages
-------------------------------------------------------------- */



.cms-athlete {}

.cms-athlete h3 {
    letter-spacing: .025em;
    font: 700 22px/1 "proxima-nova", sans-serif;
}
.cms-athlete .videos {
    width: 100%;
    float: left;
    clear: both;
}
.cms-athlete .instagram-feed .box-wrapper {
    margin-top: 10px;
    border: solid 3px #4fc7e7;
    padding: 7px;
}
.cms-athlete .bio {
    float: left;
    clear: both;
    margin-top: 15px;
    margin-bottom: 15px;
}
.cms-athlete .bio,
.cms-athlete .bio p {
    color: #4fc7e7;
    text-transform: none;
    letter-spacing: .025em;
    font: 300 22px/25px "proxima-nova", sans-serif;
}
.cms-athlete .bio p {
    margin: 0;
}
.cms-athlete .bio strong {
    color: #000;
    text-transform: uppercase;
}

/* happy snow page
-------------------------------------------------------------- */

@font-face {
  font-family: "spy-happy-snow";
  src:url("../fonts/spy-happy-snow.eot");
  src:url("../fonts/spy-happy-snow.eot?#iefix") format("embedded-opentype"),
    url("../fonts/spy-happy-snow.woff") format("woff"),
    url("../fonts/spy-happy-snow.ttf") format("truetype"),
    url("../fonts/spy-happy-snow.svg#spy-happy-snow") format("svg");
  font-weight: normal;
  font-style: normal;
}
[class^="spy-happy-snow-icon-"]:before,
[class*=" spy-happy-snow-icon-"]:before {
  font-family: "spy-happy-snow" !important;
  font-style: normal !important;
  font-weight: normal !important;
  font-variant: normal !important;
  text-transform: none !important;
  speak: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.spy-happy-snow-icon-anti-fog:before { content: "a"; }
.spy-happy-snow-icon-arc-lens:before { content: "b"; }
.spy-happy-snow-icon-face-foam:before { content: "c"; }
.spy-happy-snow-icon-flex-frames:before { content: "d"; }
.spy-happy-snow-icon-happy-lens:before { content: "e"; }
.spy-happy-snow-icon-helmet-compatible:before { content: "f"; }
.spy-happy-snow-icon-lock:before { content: "g"; }
.spy-happy-snow-icon-lock-steady:before { content: "h"; }
.spy-happy-snow-icon-pop:before { content: "i"; }
.spy-happy-snow-icon-push:before { content: "j"; }
.spy-happy-snow-icon-silicone-ribbing:before { content: "k"; }
.spy-happy-snow-icon-spectra:before { content: "l"; }
.spy-happy-snow-icon-uv-protection:before { content: "m"; }
.spy-happy-snow-icon-weather-flat:before { content: "n"; }
.spy-happy-snow-icon-weather-mixed:before { content: "o"; }
.spy-happy-snow-icon-weather-sunny:before { content: "p"; }

.cms-happy_snow {
    font-family: "museo-sans-rounded";
    font-weight: 900;
    font-size: 62.5%;
    letter-spacing: .01em;
}
.cms-happy_snow .m-container {
    width: 102%;
    float: left;
}
.cms-happy_snow .m-item img {
    width: 100%;
}
.cms-happy_snow sup {
    font-size: .5em;
}

/* video header */

.cms-happy_snow header .video-wrapper .header-img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.cms-happy_snow header .video-wrapper .header-img img {
    width: 100%;
    height: auto;
}
.cms-happy_snow header .video-wrapper#video-top {
    padding-bottom: 0;
}
.cms-happy_snow header .video-wrapper .logo {
    position: absolute;
    top: 32px;
    left: auto;
    right: 23px;
    z-index: 102;
    width: 107px;
}
.cms-happy_snow #video-header {
    position: absolute;
    z-index: 100;
    width: 100%;
    margin-top: 30px;
}
.cms-happy_snow #video-header h1 {
    font: 900 6.8em/.9em 'museo-sans-rounded';
    letter-spacing: .01em;
    text-align: center;
    color: #f58026;
}
.cms-happy_snow #video-header h2 {
    display: block;
    width: 30%;
    margin: 0 auto;
    padding: 7px 50px;
    background: #f58026;
    font: 900 2.7em/1 'museo-sans-rounded';
    letter-spacing: .01em;
    text-align: center;
    color: #fff;    
}

/* slogans */
.cms-happy_snow #slogans {
    float: left;
    clear: both;
    width: 100%;
    margin-bottom: 40px;
}
.cms-happy_snow #slogans li {
    padding-bottom: 20px;
}
.cms-happy_snow #slogans dl {
    width: 94%;
}
    .cms-happy_snow #slogans .see-better dl {
        margin-right: 6%;
    }
    .cms-happy_snow #slogans .feel-better dl {
        margin: 0 3%;
    }
    .cms-happy_snow #slogans .perform-better dl {
        margin-left: 6%;
    }

.cms-happy_snow #slogans dt {
    margin-bottom: 15px;
    font: 900 4.117em/1 "museo-sans-rounded";
    text-align: center;
    color: #f58026;    
}
.cms-happy_snow #slogans dd {
    padding: 10px 5px;
    border: solid 4px #f58026;
    font: 900 1.4em/2.2 "museo-sans-rounded";
    text-align: center;
    color: #4fc7e7;
}
/* snow-videos */

#happy-snow-videos {
    float: left;
    width: 100%;
    margin-bottom: 50px;
}


/* lens with benefits */
.cms-happy_snow #lens-with-benefits {
    padding-bottom: 50px;
}
.cms-happy_snow #lens-with-benefits h1 {
    text-align: center;
    color: #4fc7e7;
    letter-spacing: .01em;
    font: 900 7.1em/1 "museo-sans-rounded";
}
.cms-happy_snow #lens-with-benefits h2 {
    width: 57%;
    margin: 0 auto 10px;
    font: 900 2em "museo-sans-rounded";
    color: #fff;
    background: #4fc7e7;
    letter-spacing: .01em;
    text-align: center;
}
.cms-happy_snow .light-conditions .option {
    background: #4fc7e7;
    cursor: pointer;
    -webkit-transition: background-color .3s ease;
    -o-transition: background-color .3s ease;
    transition: background-color .3s ease;
}
    .cms-happy_snow .light-conditions .option:hover,
    .cms-happy_snow .light-conditions .option.active {
        background-color: #f58026;
    }
.cms-happy_snow .light-conditions .option .item-wrapper {
    border: solid 4px #4fc7e7;
    -webkit-transition: border-color .3s ease;
    -o-transition: border-color .3s ease;
    transition: border-color .3s ease;
}
    .cms-happy_snow .light-conditions .option:hover .item-wrapper, 
    .cms-happy_snow .light-conditions .option.active .item-wrapper {
        border-color: #f58026;
    }
.cms-happy_snow .light-conditions .option .icon-wrapper {
    display: inline-block;
    width: 18%;
    margin-top: 15px;
    vertical-align: top;
    text-align: center;    
}
.cms-happy_snow .light-conditions .option .spy-happy-snow-icon {
    font-size: 5em;
    line-height: 1;
    color: #fff;
}
.cms-happy_snow .light-conditions .option dl {
    display: inline-block;
    width: 77.2%;    
    padding: 10px 2%;
    background: #fff;
}
.cms-happy_snow .light-conditions .option dt {
    margin-bottom: 7px;
    font-size: 20px;
    line-height: 1;
    color: #4fc7e7;
    -webkit-transition: color .3s ease;
    -o-transition: color .3s ease;
    transition: color .3s ease;
}
    .cms-happy_snow .light-conditions .option.active dt {
        color: #f58026;
    }
.cms-happy_snow .light-conditions .option dd {
    font-size: 11px;
    line-height: normal;
    color: #4fc7e7;
    -webkit-transition: color .3s ease;
    -o-transition: color .3s ease;
    transition: color .3s ease;
}
    .cms-happy_snow .light-conditions .option.active dd {
        color: #f58026;
    }

.cms-happy_snow .benefits-wrapper {
    margin-bottom: 50px !important;
    float: left;
    clear: both;
}

.cms-happy_snow .lens-selector {
    float: left;
    clear: both;
    width: 20.883534136546%;
    margin-top: 0 !important;
    margin-bottom: 50px !important;
    text-align: center;
}
.cms-happy_snow .lens-selector li {
    display: none;
}
.cms-happy_snow .lens-selector li div {
    width: 75%;
    float: left;
    margin-bottom: 10px;
}
.cms-happy_snow .lens-selector li img {
    width: auto;
}
.cms-happy_snow .lens-selector li.active {
    display: block;
    cursor: pointer;
}
.cms-happy_snow .lens-selector li.shop-replacement img {
    border: none !important;
}
.cms-happy_snow .lens-selector li.active img {
    border: solid 3px #fff;
    -webkit-transition: border-color .3s ease;
    -o-transition: border-color .3s ease;
    transition: border-color .3s ease;
}
.cms-happy_snow .lens-selector li.active:hover img {
    border-color: #f58026;
}
.cms-happy_snow .lens-selector li.selected img,
.cms-happy_snow .lens-selector li.selected:hover img {
    border-color: #4fc7e7;
}
.cms-happy_snow .lens-selector figcaption {
    float: right;
    width: 21%;
    height: 41px;
    margin: 12% auto 0;
    padding: 5px 2% 0;
    background: #4fc7e7;
    font-size: 1.4em;
    line-height: normal;
    text-align: center;
    color: #fff;
    opacity: 0;
}
.cms-happy_snow .lens-selector li.selected figcaption {
    opacity: 1;
}


.cms-happy_snow .large-image {
    float: right;
    width: 79.11646586345401%;
    margin-bottom: 0 !important;
}
.cms-happy_snow .large-image li {
    display: none;
}
.cms-happy_snow .large-image li.active {
    display: block;
}
.cms-happy_snow .large-image figcaption {
    color: #4fc7e7;
    font-weight: 300;
    font-size: 1.5em;
    text-align: center;
    border: solid 3px #4fc7e7;
    padding: 10px 0;
}

/* shop happy lens in snow */

#shop-happy-lens-snow {
    float: left;
    clear: both;
    width: 94%;
    margin: 0 3% 50px !important;
}
#shop-happy-lens-snow h1 {
    background: #4fc7e7;
    font: 300 5em 'museo-sans-rounded';
    letter-spacing: .01em;
    text-align: center;
    color: #fff;
}

/* content frame */

#happy-snow-content-frame {
    float: left;
    width: 100%;
    margin-bottom: 60px !important;
}


/* lock steady lens system */

#lock-steady-lens-system {
    float: left;
    width: 100%;
    margin-bottom: 150px;
}
#lock-steady-lens-system hgroup {
    text-align: right;
}
#lock-steady-lens-system h1 {
    font: 900 5em/1 'museo-sans-rounded';
    letter-spacing: .01em;
    color: #4fc7e7;
}
#lock-steady-lens-system h2 {
    font: 900 1.8em/1 'museo-sans-rounded';
    letter-spacing: .01em;
    color: #4fc7e7;
}
#lock-steady-lens-system .animation {
    text-align: center;
}
#lock-steady-lens-system .animation img {
    width: auto;
    margin: 0 auto;
}
#lock-steady-lens-system ul {
    float: right;
    padding-top: 45px;
}
#lock-steady-lens-system li {
    display: block;
    clear: both;
    margin-bottom: 35px;
    cursor: pointer;
}
#lock-steady-lens-system .spy-happy-snow-icon {
    float: left;
    width: 22%;
    font-size: 8.8em;
    line-height: 1;
    color: #4fc7e7;
}
    #lock-steady-lens-system li:hover .spy-happy-snow-icon {
        color: #f58026;
    }
#lock-steady-lens-system dl {
    float: right;
    width: 74%;
    margin: 15px 0 0;
}
#lock-steady-lens-system dt {
    font-size: 4.4em;
    line-height: 1.05;
    color: #f58026;
}
#lock-steady-lens-system dd {
    font-size: 1.7em;
    color: #4fc7e7;
}

/* snow tech */
#snow-technology {
    position: relative;
}
#snow-technology h1 {
    font: 900 7.5em/1 'museo-sans-rounded';
    letter-spacing: 0.01em;
    text-align: center;
}
#snow-technology figure {}

#snow-technology ul {
    position: relative;
    top: 0;
    margin-top: -720px;
    margin-bottom: 720px;
}
#snow-technology li {
    position: absolute;
}
#snow-technology .border-line {
    position: absolute;
    border: solid 3px #4fc7e7;
    pointer-events: none;
}
    #snow-technology .happy-lens {
        top: 25px;
        left: -5px;
    }
    #snow-technology .happy-lens .border-line {
        top: 35px;
        left: 157px;
        width: 281px;
        height: 147px;
        border-left: none;
        border-bottom: none;
    }
    
    #snow-technology .spectra-lens {
        top: 433px;
        left: 118px;
    }
    #snow-technology .spectra-lens .border-line {
        top: -100px;
        left: 157px;
        width: 125px;
        height: 140px;
        border-top: none;
        border-left: none;
    }
   
    #snow-technology .flex-frames {
        top: 501px;
        left: 522px;
    }
    #snow-technology .flex-frames .border-line {
        top: -173px;
        left: 103px;
        width: 1px;
        height: 163px;
        border-top: none;
        border-right: none;
        border-bottom: none;
    }
    
    #snow-technology .uv-protection {
        top: 411px;
        left: 940px;        
    }
    #snow-technology .uv-protection .border-line {
        top: -47px;
        left: -123px;        
        width: 173px;
        height: 87px;
        border-top: none;
        border-right: none;
    }
    
    #snow-technology .lock-steady {
        top: 36px;
        left: 1013px;        
    }
    #snow-technology .lock-steady .border-line {
        top: 42px;
        left: -55px;        
        width: 106px;
        height: 95px;
        border-right: none;
        border-bottom: none;
    }
#snow-technology dl {
    width: 210px;
}
#snow-technology .spy-happy-snow-icon {
    height: 86px;
    margin-bottom: 20px;
    font-size: 86px;
    line-height: 1;
    text-align: center;
    color: #4fc7e7;
}
#snow-technology h2 {
    margin-bottom: 15px;
    font: 900 1.6em/1 'museo-sans-rounded';
    letter-spacing: .01em;
    text-align: center;
    color: #4fc7e7;
}
#snow-technology dd {
    font: 900 1em/normal 'museo-sans-rounded';
    color: #4fc7e7;
    text-align: center;
}

/* snow tech - bottom row */
#snow-tech-bottom {
    float: left;
    width: 91%;
    margin: 40px 4.5% 60px;
}
#snow-tech-bottom li {
    float: left;
    width: 19%;
    height: 130px;
    margin: 0 .5%;
    background: #4fc7e7;
    color: #fff;
    cursor: pointer;
}
#snow-tech-bottom dt {
    margin-top: 20px;
    font-size: 15px;
    line-height: 1;
    text-align: center;
}
#snow-tech-bottom .spy-happy-snow-icon {
    margin-top: 20px;
    font-size: 62px;   
    line-height: 1;
    text-align: center;
}
#snow-tech-bottom .text-wrapper {
    display: none;
    margin-top: 15px;
    font-size: 11px;
    line-height: normal;
    text-align: center;
}
#snow-tech-bottom li:hover {
    background: #fff;
    color: #4fc7e7;
}
#snow-tech-bottom li:hover .spy-happy-snow-icon {
    display: none;
}
#snow-tech-bottom li:hover .text-wrapper {
    display: block;
}

/* athletes pages */

#happy-snow-athletes {
    float: left;
    width: 100%;
    clear: both;
    margin-bottom: 25px;
}
#happy-snow-athletes .hdr {
    background: #f58026;
    padding: 10px 0;
    text-align: center;
    margin-bottom: 10px;
}
#happy-snow-athletes .hdr h2 {
    font: 900 3.5em/1 'museo-sans-rounded';
    letter-spacing: .01em;
    color: #fff;
}

/* Responsive
-------------------------------------------------------------- */

/* Widescreen [[ Blue ]] */
@media only screen and (min-width: 1280px)  {
    #snow-technology-smaller {
        display: none;
    }

}
/* Small Desktops [[ Brown ]] */
@media only screen and (min-width: 960px) and (max-width: 1279px) {
    #sequence .sequence-prev {
        left: -20px;
    }
    #sequence .sequence-next {
        right: -20px;
    }
    #snow-technology-smaller {
        display: block;
    }    
    #snow-technology {
        display: none;
    }

}
/* Tablet (Portrait) [[ Yellow ]] */
@media only screen and (min-width: 768px) and (max-width: 959px) {
    #sequence .sequence-prev {
        left: -20px;
    }
    #sequence .sequence-next {
        right: -20px;
    }
    #snow-technology-smaller {
        display: block;
    }    
    #snow-technology {
        display: none;
    }
}
/* Mobile Universal [[ Orange Border ]] */
@media only screen and (max-width: 767px) {   

    /* home page slideshow */

    #sequence-mobile {
        float: left;
        width: 100%;
    }
    #sequence-mobile .slide {
        opacity: 0;
        -webkit-transition: opacity 1s ease;
        -moz-transition: opacity 1s ease;
        -o-transition: opacity 1s ease;
        -ms-transition: opacity 1s ease;
        transition: opacity 1s ease;
    }
    #sequence-mobile .animate-in .slide {
        opacity: 1;
    }

    /* visibles and invisibles */

    .desktop-layout {
        display: none;
    }
    .mobile-hero-layout,
    .mobile-home-nav {
        display: block;
    }

    /* Home Navigation */
    .mobile-home-nav,
    .mobile-home-nav ul {
        width: 100%;
        clear: both;
        float: left;
    }
    .mobile-home-nav li {
        clear: both;
        width: 100%;
        float: left;
    }
    .mobile-home-nav a {
        clear: both;
        width: 100%;
        float: left;
        text-align: center;
        border-bottom: solid 1px #000;
        font: bold 16px/52px 'spy sans', Helvetica, sans-serif;
        letter-spacing: .3em;
    }    
    .cms-home .desktop-layout { display: none; }
    
    .cms-home .mobile-hero-layout {
        clear: both;
        float: left;
        display: block;
        width: 100%;
        margin-top: 10px;
    }
    .cms-home .mobile-hero-layout img {
        text-align: center;
        width: 100%;
        height: auto;
    }
    .cms-home .mobile-promos img {
        margin-bottom: 0px;
    }
    .cms-home .mobile-promo {
        width: 100%;
        float: left;
        background: #404040;
        text-align: center;
        text-transform: uppercase;
        color: #a6a6a6;
        letter-spacing: .2em;
        font-weight: normal;
        padding: 5px 0;
    }
    .happy-science .intro .intro-image {
        width: 100%;
        clear: both;
        margin: 0;
    }
    .happy-science .intro .intro-text,
    .happy-science .body-copy .heading,
    .happy-science .body-copy ul
     {
        width: 94%;
        clear: both;
        margin: 15px 3%;
    }
    .happy-science .body-copy {
        float: left;
    }
    .happy-science .good-rays,
    .happy-science .color-preference {
        background: none;
    }
    .happy-science .body-copy .heading h2 {
        margin-top: 15px;
    }
    .athlete-page-list li {
        float: none;
        clear: both;
        display: block;
        margin: 0 auto 20px !important;       
        padding-left: 0;
        padding-right: 0; 
    }

    .athlete-page-list li.no-image {
        max-width: 405px;
    }
    .athlete-page-list li.no-image h3 {
        margin-top: 0;
    }

    /* HAPPY SNOW PAGE */
    .cms-happy_snow header .video-wrapper#video-top {
        height: auto !important;
        width: auto !important;
    }

    .cms-happy_snow header .video-wrapper .header-img {
        position: relative;
        width: 100% !important;
        left: 0 !important;
        top: 0 !important; 
        height: auto !important;
    }
    .cms-happy_snow header .video-wrapper .logo {
        width: 50px;
    }
    .cms-happy_snow #video-header {
        position: relative;
        font-size: 40%;
    }
    .cms_happy_snow #video-header h2 {
        padding: 0 10px;
    }

    .cms-happy_snow #slogans {
        margin-top: 20px;
    }

    .cms-happy_snow #slogans li {
        padding-bottom: 20px;
    }
    .cms-happy_snow #slogans dl {
        margin: 0 3% !important;
    }
    .cms-happy_snow .light-conditions .option dl {
        width: 76%;
    }

    #shop-happy-lens-snow {
        font-size: 50%;
    }
    #shop-happy-lens-snow .pull-right {
        float: left;
    }
    #shop-happy-lens-snow .m-item.grid12-6 {
        width: 96% !important;
    }

    #lock-steady-lens-system {
        margin-bottom: 50px;
    }
    #snow-technology-smaller {
        display: none;
    }    
    #snow-technology h1 {
        font-size: 4em;
    }

    #snow-technology ul {
        margin-top: 0;
        margin-bottom: 0;
    }
    #snow-technology li {
        position: relative;
        top: auto !important;
        left: auto !important;
        float: left;
        text-align: center;
        margin: 0 auto 25px;
    }
    #snow-technology dl {
        width: 100%;
    }
    #snow-technology .border-line {
        display: none;
    }

    #snow-tech-bottom {
        width: 100%;
        margin: 40px 0;
    }
    #snow-tech-bottom li {
        width: 100%;
        margin: 0 0 15px;
    }

}
/* Mobile (Landscape) [[ Pink ]] */
@media only screen and (min-width: 480px) and (max-width: 639px) {
}
/* Mobile (Landscape - Large Mobile, iPhone 5, etc.) [[ Purple ]] */
@media only screen and (min-width: 640px) and (max-width: 767px) {    
}
/* Mobile (Portrait) [[ Gray ]] */
@media only screen and (min-width: 320px) and (max-width: 479px) {
}