.home-2015 .hero .slide-content, .home-2015 .hero .slick-dots, .home-2015 .category-cta, .home-2015 .feature-banner .title-block, .home-2015 .featured-products .slider-container, .home-2015 .spotlight, .home-2015 .about-bb, .home-2015 .featured-brands .brands-list { margin: 0 auto; max-width: 1130px; padding-left: 10px; padding-right: 10px; }

@media screen and (max-width: 450px) { .home-2015 .hero .slide-content, .home-2015 .hero .slick-dots, .home-2015 .category-cta, .home-2015 .feature-banner .title-block, .home-2015 .featured-products .slider-container, .home-2015 .spotlight, .home-2015 .about-bb, .home-2015 .featured-brands .brands-list { padding-left: 10px; padding-right: 10px; } }

.home-2015 .feature-banner:after, .home-2015 .about-bb:after { clear: both; content: ''; display: block; }

.home-2015 .featured-brands .ir { display: block; height: 0; overflow: hidden; text-indent: 100%; width: 0; }

.home-2015 .hero .slick-prev:before, .home-2015 .hero .slick-next:before, .home-2015 .featured-products .slick-prev:before, .home-2015 .featured-products .slick-next:before, .home-2015 .featured-products .slick-dots button:before { background-image: url(../images/do-sprites.png); content: ''; }

@media (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 192), (min-resolution: 192dppx) { .home-2015 .hero .slick-prev:before, .home-2015 .hero .slick-next:before, .home-2015 .featured-products .slick-prev:before, .home-2015 .featured-products .slick-next:before, .home-2015 .featured-products .slick-dots button:before { background-image: url(../images/do-sprites@2x.png); background-size: 139px 225px; } }

/******************************************************************************* 2015 - Homepage styles */
.cms-index-index .main-container { padding-top: 0; padding-left: 0; padding-right: 0; max-width: 100%; }

.cms-index-index .breadcrumbs { display: none; }

/******************************************************************************* 2015 - Hero Slider (Slick) */
.home-2015 .hero ul { list-style: none; margin-bottom: 0; }

.home-2015 .hero li { margin-left: 0; }

.home-2015 .hero .slider { height: 0; overflow: hidden; padding-bottom: 27.69%; }

.home-2015 .hero .slider.slick-initialized { height: inherit; overflow: visible; padding-bottom: 0; }

/******************************************************************************* 2015 - Hero Slider - Slides */
.home-2015 .hero .hero-slide { position: relative; }

.home-2015 .hero .hero-slide .mobile { display: none; }

@media screen and (max-width: 550px) { .home-2015 .hero .hero-slide .desktop { display: none; }
  .home-2015 .hero .hero-slide .mobile { display: block; } }

.home-2015 .hero .slide-image { width: 100%; }

.home-2015 .hero .slide-content { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; position: absolute; top: 0; left: 0; right: 0; bottom: 0; padding: 0 100px; }

.home-2015 .hero .slide-content .title { color: #000; font-size: 48px; letter-spacing: .05em; margin-bottom: 5px; max-width: 375px; }

.home-2015 .hero .slide-content .subtitle { color: #2e2e2e; font-size: 16px; font-weight: 400; margin-bottom: 15px; }

.home-2015 .hero .slide-content .button { color: #fff; display: block; font-size: 13px; font-weight: 400; height: 40px; letter-spacing: .1em; line-height: 40px; padding: 0; width: 160px; }

@media screen and (max-width: 1000px) { .home-2015 .hero .slide-content { padding: 0 60px; }
  .home-2015 .hero .slide-content .title { font-size: 36px; line-height: 1; } }

@media screen and (max-width: 650px) { .home-2015 .hero .slide-content .title { font-size: 24px; } }

.home-2015 .hero .slide-content { display: none; }

.home-2015 .hero .slide-link { display: block; }

/******************************************************************************* 2015 - Hero Slider - Previous/Next controls */
.home-2015 .hero .slick-prev:focus, .home-2015 .hero .slick-next:focus { outline: none; }

.home-2015 .hero .slick-slider { position: relative; }

.home-2015 .hero .slick-prev, .home-2015 .hero .slick-next { position: absolute; top: 0; bottom: 0; font-size: 0; overflow: hidden; padding: 0; text-indent: 100%; width: 100px; z-index: 1; }

.home-2015 .hero .slick-prev:before, .home-2015 .hero .slick-next:before { height: 34px; margin: auto; width: 19px; position: absolute; top: 0; bottom: 0; }

.home-2015 .hero .slick-prev { left: 0; }

.home-2015 .hero .slick-prev:before { background-position: -1px -147px; left: 40px; }

.home-2015 .hero .slick-prev:hover { background-image: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.25))); background-image: -webkit-linear-gradient(right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); background-image: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); }

.home-2015 .hero .slick-prev:hover:before { background-position: -53px -147px; }

.home-2015 .hero .slick-next { right: 0; }

.home-2015 .hero .slick-next:before { background-position: -27px -147px; right: 40px; }

.home-2015 .hero .slick-next:hover { background-image: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.25))); background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); }

.home-2015 .hero .slick-next:hover:before { background-position: -79px -147px; }

@media screen and (max-width: 1000px) { .home-2015 .hero .slick-prev, .home-2015 .hero .slick-next { width: 60px; }
  .home-2015 .hero .slick-prev:before { left: 20px; }
  .home-2015 .hero .slick-next:before { right: 20px; } }

/******************************************************************************* 2015 - Hero Slider - Pager controls (Slick dots) */
.home-2015 .hero .slick-dots button:focus { outline: none; }

.home-2015 .hero { margin-bottom: 50px; }

.home-2015 .hero .slick-dots { position: absolute !important; left: 0; right: 0; font-size: 0; height: 50px; }

@media screen and (min-width: 1025px) { .home-2015 .hero .slick-dots { clear: both; position: relative; }
  .home-2015 .hero .slick-dots:before { background: #c4c2b9; content: ''; margin-left: -200%; position: absolute; top: 0; bottom: 0; width: 400%; } }

.home-2015 .hero .slick-dots > li { display: inline-block; position: relative; vertical-align: top; width: 33.33%; }

.home-2015 .hero .slick-dots button { height: 50px; width: 100%; background-color: #c4c2b9; border-radius: 0; font-size: 16px; font-weight: 400; letter-spacing: .1em; line-height: 1.2; padding: 10px; }

@media screen and (max-width: 950px) { .home-2015 .hero .slick-dots button { font-size: 14px; } }

@media screen and (max-width: 600px) { .home-2015 .hero .slick-dots button { font-size: 12px; } }

.home-2015 .hero .slick-dots button:hover, .home-2015 .hero .slick-dots .slick-active button { background-color: #9c9a93; }

.home-2015 .hero .slick-dots .slick-active button { position: relative; }

.home-2015 .hero .slick-dots .slick-active button:before { border-left: 9px solid transparent; border-right: 9px solid transparent; border-bottom: 7px solid #9c9a93; content: ''; margin: auto; width: 9px; position: absolute; top: -7px; left: 0; right: 0; }

/******************************************************************************* 2015 - Confidence Booster Banner */
.home-2015 .confidence-booster { margin-bottom: 30px; }

/******************************************************************************* 2015 - Category CTA Grid */
.home-2015 .category-cta .card-grid[data-columns] .category-card > img { width: auto; }

.home-2015 .category-cta { margin-top: 40px; }

.home-2015 .category-cta + .hr { margin-top: -5px; }

.home-2015 .category-cta .title { margin-bottom: 20px; }

.home-2015 .category-cta .title > a { border-bottom: 3px solid #2dafb4; color: #535454; }

.home-2015 .category-cta .title > a:hover { color: #2dafb4; }

.home-2015 .category-cta .category-card { background-image: url(../images/cms/home-2015/category-cta-bg.jpg); display: block; font-size: 13px; height: 160px; margin-bottom: 70px; position: relative; }

.home-2015 .category-cta .category-card .cta { background-color: #19aeb4; border: 3px solid #fff; border-radius: 2px; color: #fff; font-size: 13px; font-weight: 400; display: block; height: 40px; letter-spacing: .1em; padding: 8px; text-transform: uppercase; width: 155px; z-index: 2; position: absolute; top: 75px; right: 30px; }

.home-2015 .category-cta .category-card > img { position: absolute; top: 0; left: 0; }

.home-2015 .category-cta .category-card:hover .cta { background-color: #f9c550; border: 3px solid #f9c550; outline-color: #f9c550; }

.home-2015 .category-cta { position: relative; padding-bottom: 60px; }

.home-2015 .category-cta .read-more-block-link { color: #535454; display: block; font-size: 14px; letter-spacing: .16em; text-align: center; text-transform: uppercase; position: absolute; left: 0; right: 0; bottom: 30px; }

.home-2015 .category-cta .read-more-block-link:after { border-top: 5px solid #535454; border-left: 6px solid transparent; border-right: 6px solid transparent; content: ''; display: inline-block; margin-left: 5px; vertical-align: middle; position: relative; bottom: 2px; }

.home-2015 .category-cta .read-more-block-link:hover { color: #26c7cd; }

.home-2015 .category-cta .read-more-block-link:hover:after { border-top-color: #26c7cd; }

.home-2015 .category-cta .read-more-block-link.less:after { border-top: 0; border-bottom: 5px solid #535454; }

.home-2015 .category-cta .read-more-block-link.less:hover:after { border-bottom-color: #26c7cd; }

/******************************************************************************* 2015 - Feature Banners - Lifestyle Products */
.home-2015 .hr + .feature-banner { margin-top: -50px; }

.home-2015 .feature-banner { margin: auto; margin-top: 20px; max-width: 1300px; }

.home-2015 .feature-banner .banner { float: left; width: 60%; }

.home-2015 .feature-banner .product { float: right; width: 40%; }

@media screen and (max-width: 650px) { .home-2015 .feature-banner .banner, .home-2015 .feature-banner .product { float: none; width: 100%; }
  .home-2015 .feature-banner .banner { height: 435px; } }

.home-2015 .feature-banner .title-block { background-image: url(../images/cms/home-2015/section-title-bg.png); background-position: top center; background-repeat: no-repeat; background-size: auto 100%; margin-bottom: 10px; padding: 35px 10px; text-align: center; }

.home-2015 .feature-banner .title-block .title { font-size: 30px; letter-spacing: .16em; line-height: 1.1; margin-bottom: 4px; }

.home-2015 .feature-banner .title-block .title span { display: block; font-size: 16px; font-style: italic; font-weight: 700; letter-spacing: .16em; margin-bottom: 8px; }

.home-2015 .feature-banner .title-block .tagline { font-size: 16px; }

.home-2015 .feature-banner .banner { background-position: right top; background-size: cover; position: relative; }

.home-2015 .feature-banner .banner img { display: none; width: 100%; }

.home-2015 .feature-banner .banner-content { background-image: -webkit-gradient(linear, left bottom, left top, color-stop(70%, rgba(0, 0, 0, 0.6)), to(transparent)); background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.6) 70%, transparent); background-image: linear-gradient(to top, rgba(0, 0, 0, 0.6) 70%, transparent); position: absolute; left: 0; right: 0; bottom: 0; }

.home-2015 .feature-banner .banner-content .title { color: #fff; font-size: 24px; letter-spacing: .16em; margin: 20px 30px; }

.home-2015 .feature-banner .category-list { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-line-pack: center; align-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; background-color: rgba(62, 63, 62, 0.75); list-style: none; height: 80px; width: 100%; margin-bottom: 0; padding-left: 30px; }

@media screen and (max-width: 1100px) { .home-2015 .feature-banner .category-list { height: 115px; } }

@media screen and (max-width: 375px) { .home-2015 .feature-banner .category-list { height: 135px; } }

.home-2015 .feature-banner .category-list > li { display: inline-block; line-height: 2.5; margin-left: 0; margin-right: 30px; }

@media screen and (max-width: 1225px) { .home-2015 .feature-banner .category-list > li { margin-right: 15px; } }

.home-2015 .feature-banner .category-list a { border-bottom: 2px solid #2dafb4; color: #fff; font-size: 14px; letter-spacing: .16em; text-transform: uppercase; }

.home-2015 .feature-banner .category-list a:hover { color: #26c7cd; }

.ie8 .home-2015 .feature-banner .category-list, .ie9 .home-2015 .feature-banner .category-list { padding-top: 20px; }

.home-2015 .feature-banner .product { background-color: #f2f2ed; }

.home-2015 .feature-banner .product .title { color: #535454; font-size: 22px; letter-spacing: .1em; line-height: 1.2; margin-bottom: 0; padding: 20px 25px 0; }

.home-2015 .feature-banner .product .title span { display: block; font-size: 14px; font-weight: 400; letter-spacing: .16em; margin-bottom: 10px; }

.home-2015 .feature-banner .product img { margin: auto; min-height: 250px; }

.home-2015 .feature-banner .product { padding-bottom: 80px; position: relative; }

.home-2015 .feature-banner .product .cta { background-color: #e2e0d8; height: 80px; padding: 0 30px; position: absolute; left: 0; right: 0; bottom: 0; }

.home-2015 .feature-banner .product .price { color: #3f4040; font-size: 30px; font-weight: 900; letter-spacing: .1em; line-height: 80px; margin-right: 20px; vertical-align: middle; }

.home-2015 .feature-banner .product .button { font-size: 13px; font-weight: 400; letter-spacing: .1em; height: 40px; line-height: 40px; padding: 0; width: 190px; }

@media screen and (max-width: 1100px) { .home-2015 .feature-banner .product { padding-bottom: 115px; }
  .home-2015 .feature-banner .product .cta { height: 115px; text-align: center; }
  .home-2015 .feature-banner .product .price { display: block; line-height: 1; margin-top: 15px; margin-right: 0; margin-bottom: 8px; } }

/******************************************************************************* 2015 - Feature Banners - Lifestyle Products */
.home-2015 .pain-management .banner { float: right; }

.home-2015 .pain-management .product { float: left; padding-bottom: 115px; }

.home-2015 .pain-management .product .cta { padding-top: 20px; height: 115px; }

.home-2015 .pain-management .category-list { height: 115px; }

@media screen and (max-width: 1100px) { .home-2015 .pain-management .product .cta { padding-top: 0; } }

@media screen and (max-width: 975px) { .home-2015 .pain-management .product .cta, .home-2015 .pain-management .category-list { height: 135px; } }

@media screen and (max-width: 425px) { .home-2015 .pain-management .product .cta, .home-2015 .pain-management .category-list { height: 155px; } }

@media screen and (max-width: 770px) { .home-2015 .active-lifestyles .banner { background-image: url(../images/cms/home-2015/feature-banner-lifestyles-t.jpg) !important; }
  .home-2015 .pain-management .banner { background-image: url(../images/cms/home-2015/feature-banner-pain-t.jpg) !important; }
  .home-2015 .athletes .banner { background-image: url(../images/cms/home-2015/feature-banner-athletes-t.jpg) !important; } }

/******************************************************************************* 2015 - Featured Products Carousel (Slick) */
.home-2015 .featured-products .title { margin-top: 50px; margin-bottom: 25px; text-align: center; }

/******************************************************************************* 2015 - Featured Products - Slides */
.home-2015 .featured-products .products-grid { margin: 0 -15px; }

.home-2015 .featured-products .products-grid li { margin: 0 15px; text-align: center; }

/******************************************************************************* 2015 - Featured Products - Previous/Next controls */
.home-2015 .featured-products .products-grid { position: relative; }

.home-2015 .featured-products .slick-prev, .home-2015 .featured-products .slick-next { font-size: 0; overflow: hidden; text-indent: 100%; width: 100px; position: absolute; top: 0; bottom: 0; }

.home-2015 .featured-products .slick-prev:before, .home-2015 .featured-products .slick-next:before { height: 34px; margin: auto; width: 19px; position: absolute; top: 0; bottom: 0; }

.home-2015 .featured-products .slick-prev:focus, .home-2015 .featured-products .slick-next:focus { outline: 0; }

.home-2015 .featured-products .slick-prev { left: -85px; }

.home-2015 .featured-products .slick-prev:before { background-position: -1px -147px; right: 30px; }

.home-2015 .featured-products .slick-prev:hover { background-image: -webkit-gradient(linear, right top, left top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.25))); background-image: -webkit-linear-gradient(right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); background-image: linear-gradient(to left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); }

.home-2015 .featured-products .slick-prev:hover:before { background-position: -53px -147px; }

.home-2015 .featured-products .slick-next { right: -85px; }

.home-2015 .featured-products .slick-next:before { background-position: -27px -147px; left: 30px; }

.home-2015 .featured-products .slick-next:hover { background-image: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), to(rgba(255, 255, 255, 0.25))); background-image: -webkit-linear-gradient(left, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); background-image: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.25)); }

.home-2015 .featured-products .slick-next:hover:before { background-position: -79px -147px; }

@media screen and (max-width: 1280px) { .home-2015 .featured-products .slider-container { position: relative; padding: 0 60px; }
  .home-2015 .featured-products .products-grid { position: static; }
  .home-2015 .featured-products .slick-prev, .home-2015 .featured-products .slick-next { width: 40px; }
  .home-2015 .featured-products .slick-prev { left: 20px; }
  .home-2015 .featured-products .slick-prev:before { left: 0px; }
  .home-2015 .featured-products .slick-next { right: 20px; }
  .home-2015 .featured-products .slick-next:before { left: 19px; } }

/******************************************************************************* 2015 - Featured Products - Pager controls (Slick dots) */
.home-2015 .featured-products { margin-bottom: 70px; }

.home-2015 .featured-products .slick-dots { height: 50px; margin: auto; text-align: center; position: absolute; left: 0; right: 0; bottom: -50px; }

.home-2015 .featured-products .slick-dots > li { display: inline-block; margin: 10px 3px; }

.home-2015 .featured-products .slick-dots button { font-size: 0; overflow: hidden; padding: 7px; text-indent: 100%; }

.home-2015 .featured-products .slick-dots button:before { background-position: -121px -148px; display: block; height: 13px; width: 14px; }

.home-2015 .featured-products .slick-dots button:focus { outline: 0; }

.home-2015 .featured-products .slick-active button:before { background-position: -105px -149px; height: 12px; width: 12px; }

/******************************************************************************* 2015 - Spotlight Articles */
.home-2015 .spotlight .bg-fullscreen { margin-bottom: 0; }

/******************************************************************************* 2015 - About BB Block */
.home-2015 .about-bb { margin: 90px auto; }

.home-2015 .about-bb .about-content { float: left; padding-right: 30px; width: 50%; }

.home-2015 .about-bb .about-content .title { margin-top: 0; }

.home-2015 .about-bb .about-content p:last-child { margin-bottom: 0; }

.home-2015 .about-bb .about-media { display: block; float: right; margin-top: 15px; max-width: 50%; }

.home-2015 .about-bb .about-media p { margin: 4px 0 0; text-align: center; }

@media screen and (max-width: 950px) { .home-2015 .about-bb .about-content, .home-2015 .about-bb .about-media { float: none; width: 100%; margin: auto; max-width: 500px; }
  .home-2015 .about-bb .about-media { margin-top: 30px; } }

/******************************************************************************* 2015 - Featured Brands */
.home-2015 .featured-brands { background-color: #2e2e2e; background-size: cover; padding-top: 40px; padding-bottom: 50px; margin-bottom: -30px; }

@media screen and (max-width: 770px) { .home-2015 .featured-brands { margin-bottom: -40px; } }

.home-2015 .featured-brands .title { color: #fff; font-size: 30px; font-weight: 700; letter-spacing: .16em; margin-bottom: 50px; text-align: center; }

.home-2015 .featured-brands .title span { display: block; font-size: 16px; font-style: italic; font-weight: 400; margin-bottom: 5px; }

.home-2015 .featured-brands .brands-list { text-align: center; }

.home-2015 .featured-brands .brands-list li { display: inline-block; margin-bottom: 30px; vertical-align: middle; }

.home-2015 .featured-brands { position: relative; }

.home-2015 .featured-brands .read-more-block-link { color: #fff; font-weight: 400; letter-spacing: .16em; text-align: center; text-transform: uppercase; position: absolute; left: 0; right: 0; bottom: 35px; }

.home-2015 .featured-brands .read-more-block-link:after { border-top: 5px solid #fff; border-left: 5px solid transparent; border-right: 5px solid transparent; content: ''; display: inline-block; margin-left: 5px; position: relative; bottom: 3px; }

.home-2015 .featured-brands .read-more-block-link.less:after { border-top: 0; border-bottom: 5px solid #fff; }

.home-2015 .featured-brands .read-more-block-link:hover { color: #26c7cd; }

.home-2015 .featured-brands .read-more-block-link:hover:after { border-top: 5px solid #26c7cd; }

.home-2015 .featured-brands .read-more-block-link.less:hover:after { border-top: 0; border-bottom: 5px solid #26c7cd; }
