/* fonts */
@font-face {
  font-family: 'NeueMontreal-Bold';
  src: url("/App_Themes/Resolution/fonts/NeueMontreal-Bold.otf") format("opentype"); }
@font-face {
  font-family: 'NeueMontreal-Regular';
  src: url("/App_Themes/Resolution/fonts/NeueMontreal-Regular.otf") format("opentype"); }
/* colors */
@-webkit-keyframes bounce {
  from {
    transform: translateY(0); }
  to {
    transform: translateY(-5px); } }
@keyframes bounce {
  from {
    transform: translateY(0); }
  to {
    transform: translateY(-5px); } }
* {
  font-family: 'NeueMontreal-Regular', Arial, sans-serif; }

html,
body {
  background-color: #e7e8e9;
  font-family: 'NeueMontreal-Regular', Arial, sans-serif;
  position: relative; }

.o-layout {
  background-color: #e7e8e9; }

h1,
h2 {
  font-family: 'NeueMontreal-Regular', Arial, sans-serif; }

h1 {
  font-weight: normal; }

h2 {
  font-size: 2.25em; }

h3 {
  color: #2f353d; }

p {
  color: #2f353d;
  line-height: 1.5em;
  font-family: 'NeueMontreal-Regular', Arial, sans-serif; }

a.button {
  display: inline-block;
  transition: all 0.3s ease;
  margin-top: 1em;
  color: #fff;
  text-transform: uppercase; }

a.button.orange {
  background-color: #FF581D;
  color: #fff !important; }

a.button.orange:hover {
  background-color: #fc2d17;
  transition: all 0.3s ease; }

.icon {
  max-width: 32px;
  max-height: 32px; }

.sr-only {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden; }

/* layout */
.container {
  width: 92.76316%;
  max-width: 1190px;
  margin: 0 auto;
  display: block;
  overflow: hidden; }

footer .m-col4.span3 {
  float: right; }

/* carousel styles */
.m-section .slick-list {
  margin-bottom: 1em; }
.m-section .slick-dots {
  position: relative;
  bottom: 0; }
.m-section .slick-dots li button:before {
  color: #fff;
  opacity: 0.25;
  font-size: 12px; }
.m-section .slick-dots li.slick-active button:before {
  color: #fff;
  opacity: 0.75; }
.m-section .slick-next.slick-arrow,
.m-section .slick-prev.slick-arrow {
  width: 3rem;
  height: 4.75rem;
  background-color: rgba(33, 37, 48, 0.5);
  z-index: 1;
  border-radius: 3px;
  opacity: 0;
  transition: opacity 0.3s ease; }
  .m-section .slick-next.slick-arrow:hover,
  .m-section .slick-prev.slick-arrow:hover {
    background-color: rgba(33, 37, 48, 0.9); }
.m-section .slick-slider:hover .slick-next.slick-arrow,
.m-section .slick-slider:hover .slick-prev.slick-arrow {
  opacity: 1;
  transition: opacity 0.3s ease; }
.m-section .slide {
  padding: 1em; }
  .m-section .slide img {
    width: 100%; }

/* home page styles */
.overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  opacity: 0; }
  @media (min-width: 768px) {
    .overlay {
      opacity: 1; } }

.overlay-2 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.2);
  opacity: 1; }

.overlay-25 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.25);
  opacity: 1; }

.overlay-3 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.35);
  opacity: 1; }

.theme {
  color: #FF581D; }

main {
  position: relative; }

#banner {
  position: relative;
  height: auto;
  background-color: #000;
  overflow: hidden; }
  #banner #RseriesLogo-wrapper {
    position: absolute;
    top: 5vh;
    left: 0;
    z-index: 5;
    width: 100%;
    padding: 0 1em; }
    #banner #RseriesLogo-wrapper svg {
      width: 150px; }
  #banner .slick {
    margin: 0;
    position: relative; }
  #banner .slick-list {
    margin-bottom: 0; }
  #banner .slick-dots-container {
    position: absolute;
    display: inline-block;
    right: 25px;
    width: 20px;
    height: auto;
    top: 40%;
    top: 40vh;
    z-index: 8; }
  #banner .slick-dots li button:before {
    font-size: 12px;
    opacity: 0.5;
    color: #fff; }
  #banner .slick-dots li.slick-active button:before {
    opacity: 1;
    color: #fc2d17; }
  #banner .slide {
    height: 80vh;
    position: relative;
    -ms-display: flex;
    display: flex;
    align-items: flex-end;
    padding-bottom: 20vh; }
    #banner .slide.hero0 {
      background: url("/App_Themes/Resolution/images/A7R-SNE-Banner-sml.jpg") center center no-repeat;
      background-size: cover; }
      #banner .slide.hero0 h1 {
        text-transform: uppercase;
        font-family: 'SST-Light', 'SST-Roman', Arial, sans-serif;
        font-weight: normal;
        font-size: 3em; }
        #banner .slide.hero0 h1 .heavy {
          font-family: 'SST-Heavy', 'SST-Roman', Arial, sans-serif; }
    #banner .slide.hero1 {
      background: url("/App_Themes/Resolution/images/CraigParry-hero.jpg") center center no-repeat;
      background-size: cover; }
    #banner .slide.hero2 {
      background: url("/App_Themes/Resolution/images/JasonCharlesHill-hero.jpg") center center no-repeat;
      background-size: cover; }
    #banner .slide.hero3 {
      background: url("/App_Themes/Resolution/images/LukeTscharke-hero.jpg") top center no-repeat;
      background-size: cover; }
    #banner .slide.hero4 {
      background: url("/App_Themes/Resolution/images/MarkGaler-hero.jpg") center center no-repeat;
      background-size: cover; }
    #banner .slide.hero5 {
      background: url("/App_Themes/Resolution/images/MeghanMaloney-hero.jpg") bottom center no-repeat;
      background-size: cover; }
    #banner .slide.hero6 {
      background: url("/App_Themes/Resolution/images/PatKay-hero.jpg") center center no-repeat;
      background-size: cover; }
    #banner .slide .caption {
      width: 100%; }
    #banner .slide .caption {
      position: relative;
      display: block;
      text-align: left; }
      #banner .slide .caption a {
        display: block;
        width: 100%;
        height: 100%; }
        #banner .slide .caption a:hover {
          text-decoration: none; }
      #banner .slide .caption .caption-inner {
        height: 100%; }
        #banner .slide .caption .caption-inner .cred {
          display: block; }
      #banner .slide .caption .caption-inner.light {
        color: #fff; }
        #banner .slide .caption .caption-inner.light h1, #banner .slide .caption .caption-inner.light h2 {
          color: #fff;
          line-height: 1em;
          display: inline-block;
          text-align: left;
          margin-bottom: 0; }
        #banner .slide .caption .caption-inner.light p {
          color: #fff;
          font-size: 1.2em; }
        #banner .slide .caption .caption-inner.light .icon {
          display: inline-block;
          width: 25px;
          height: 18px;
          background: url("/App_Themes/Resolution/images/icons-UI.png") -130px -29px;
          background-size: 156px 55px;
          vertical-align: top;
          margin-right: 5px; }
        #banner .slide .caption .caption-inner.light .cred {
          color: #fff;
          margin-top: 2em; }
          #banner .slide .caption .caption-inner.light .cred dt {
            font-family: 'NeueMontreal-Bold', Arial, sans-serif; }
          #banner .slide .caption .caption-inner.light .cred dd {
            margin-left: 0;
            margin-bottom: 0.5em; }
      #banner .slide .caption .caption-inner.dark {
        color: #242320; }
        #banner .slide .caption .caption-inner.dark h2 {
          color: #242320;
          line-height: 1em;
          display: inline-block;
          text-align: left;
          margin-bottom: 0; }
        #banner .slide .caption .caption-inner.dark p {
          color: #242320;
          font-size: 1.2em; }
        #banner .slide .caption .caption-inner.dark .icon {
          display: inline-block;
          width: 25px;
          height: 18px;
          background: url("/App_Themes/Resolution/images/icons-UI.png") -105px -29px;
          background-size: 156px 55px;
          vertical-align: top;
          margin-right: 5px; }
        #banner .slide .caption .caption-inner.dark .cred {
          color: #242320;
          margin-top: 2.5em; }
          #banner .slide .caption .caption-inner.dark .cred dt {
            font-family: 'NeueMontreal-Bold', Arial, sans-serif; }
          #banner .slide .caption .caption-inner.dark .cred dd {
            margin-left: 0;
            margin-bottom: 0.5em; }
      @media (max-width: 767px) {
        #banner .slide .caption .caption-inner .cred {
          margin-top: 1.25em !important; }
        #banner .slide .caption .caption-inner.small-light .icon {
          display: inline-block;
          width: 25px;
          height: 18px;
          background: url("/App_Themes/Resolution/images/icons-UI.png") -130px -29px;
          background-size: 156px 55px;
          vertical-align: top;
          margin-right: 5px; }
        #banner .slide .caption .caption-inner.small-light h2,
        #banner .slide .caption .caption-inner.small-light div.cred {
          color: #fff; } }
    @media (min-width: 768px) {
      #banner .slide.hero0 {
        background: url("/App_Themes/Resolution/images/A7R-SNE-Banner.jpg") center center no-repeat;
        background-size: cover; }
        #banner .slide.hero0 h1 {
          font-size: 4em; } }
    @media (min-width: 1200px) {
      #banner .slide.hero0 {
        background: url("/App_Themes/Resolution/images/A7R-SNE-Banner.jpg") center center no-repeat;
        background-size: cover; }
      #banner .slide.hero1 {
        background: url("/App_Themes/Resolution/images/CraigParry-hero@2x.jpg") center center no-repeat;
        background-size: cover; }
      #banner .slide.hero2 {
        background: url("/App_Themes/Resolution/images/JasonCharlesHill-hero@2x.jpg") center center no-repeat;
        background-size: cover; }
      #banner .slide.hero3 {
        background: url("/App_Themes/Resolution/images/LukeTscharke-hero@2x.jpg") top center no-repeat;
        background-size: cover; }
      #banner .slide.hero4 {
        background: url("/App_Themes/Resolution/images/MarkGaler-hero@2x.jpg") center center no-repeat;
        background-size: cover; }
      #banner .slide.hero5 {
        background: url("/App_Themes/Resolution/images/MeghanMaloney-hero@2x.jpg") bottom center no-repeat;
        background-size: cover; }
      #banner .slide.hero6 {
        background: url("/App_Themes/Resolution/images/PatKay-hero@2x.jpg") center center no-repeat;
        background-size: cover; } }
  @media (min-width: 768px) {
    #banner #banner {
      height: 100vh; }
    #banner .banner-img {
      min-height: 600px;
      height: 100vh; }
    #banner .slide {
      align-items: center;
      -ms-flex-align: center;
      padding-top: 0;
      height: 100vh; }
    #banner #CP-over {
      display: none !important; }
    #banner .caption {
      position: absolute;
      top: 10vh;
      left: 0;
      width: 100%;
      height: 80vh;
      background-color: transparent; }
      #banner .caption h2 {
        font-size: 3.125rem; }
    #banner .caption-inner {
      max-width: 100%; }
    #banner .button-row {
      display: block;
      position: absolute;
      bottom: 1em;
      width: 100%;
      text-align: center; }
    #banner .icon-button {
      display: inline-block;
      margin: 0 auto;
      text-align: center;
      color: white; } }
  @media (max-height: 499px) and (orientation: landscape) {
    #banner .slide .caption .caption-inner h1,
    #banner .slide .caption .caption-inner h2 {
      font-size: 2em; } }

section {
  padding: 3em 0;
  text-align: left; }

#explore {
  background-color: #e7e8e9;
  text-align: center;
  padding: 0; }
  #explore .intro {
    padding: 3em 0 4em 0; }
    #explore .intro .button-row {
      padding-top: 1em; }
    #explore .intro a.button {
      margin: 1em; }
  #explore h2 {
    color: #2f353d;
    margin-top: 0; }
  #explore .tile#CraigParry .square {
    background: url("/App_Themes/Resolution/images/CraigParry-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore .tile#JasonCharlesHill .square {
    background: url("/App_Themes/Resolution/images/JasonCharlesHill-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore .tile#LukeTscharke .square {
    background: url("/App_Themes/Resolution/images/LukeTscharke-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore .tile#MarkGaler .square {
    background: url("/App_Themes/Resolution/images/MarkGaler-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore .tile#MeghanMaloney .square {
    background: url("/App_Themes/Resolution/images/MeghanMaloney-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore .tile#PatKay .square {
    background: url("/App_Themes/Resolution/images/PatKay-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore #story-carousel {
    margin-bottom: 1em; }
    #explore #story-carousel .slick-dots {
      bottom: 0; }
    #explore #story-carousel .slick-prev {
      left: 0; }
    #explore #story-carousel .slick-next {
      right: 0; }
  #explore .slick-dots li button:before {
    color: #000; }
  #explore .slide {
    padding: 0; }
  #explore .tile {
    position: relative;
    overflow: hidden;
    margin-top: 0; }
    #explore .tile:hover .square {
      -ms-transform: scale(1.1);
      -moz-transform: scale(1.1);
      -webkit-transform: scale(1.1);
      -o-transform: scale(1.1);
      transform: scale(1.1);
      -webkit-transition: all .5s;
      -moz-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; }
      #explore .tile:hover .square:before {
        content: "";
        display: block;
        background-color: black;
        opacity: 0;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        transition: opacity 0.3s ease; }
    #explore .tile a {
      display: block;
      width: 100%;
      height: 100%; }
    #explore .tile .square {
      width: 100%;
      position: relative;
      padding-bottom: 100%;
      -webkit-transition: all .5s;
      -moz-transition: all .5s;
      -o-transition: all .5s;
      transition: all .5s; }
      #explore .tile .square .square-inner {
        position: absolute;
        top: 0;
        bottom: 0;
        width: 100%;
        height: 100%;
        color: #fff;
        display: flex;
        align-items: center; }
        #explore .tile .square .square-inner h3 {
          display: block;
          width: 100%;
          text-align: center;
          color: #fff;
          text-transform: uppercase;
          font-family: 'NeueMontreal-Bold', Arial, sans-serif;
          font-weight: bold;
          font-size: 2em;
          z-index: 3; }
      #explore .tile .square:before {
        content: "";
        display: block;
        background-color: black;
        opacity: 0.5;
        position: absolute;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        transition: opacity 0.3s ease; }
  @media (min-width: 768px) {
    #explore .m-col-wrapper {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #explore .m-col-wrapper .m-col3 {
        width: 33.33%; }
    #explore #story-carousel {
      margin-bottom: 0; } }

#testimony {
  background-color: #000;
  height: auto;
  padding: 0;
  position: relative; }
  #testimony .slick {
    margin: 0; }
  #testimony .slick-next {
    right: 12px; }
  #testimony .slick-prev {
    left: 12px;
    z-index: 5; }
  #testimony .slide {
    height: auto;
    height: 100vh;
    min-height: 500px;
    padding: 3em 0;
    position: relative; }
    #testimony .slide .slide-inner {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      display: flex;
      align-items: center; }
    #testimony .slide .quote-wrapper {
      width: 80%;
      margin: 0 auto;
      position: relative;
      z-index: 4; }
    #testimony .slide a {
      display: flex;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0; }
    #testimony .slide .container {
      display: flex;
      align-items: center; }
  #testimony #t-meghan {
    background: url("/App_Themes/Resolution/images/Meghan-Maloney-small.jpg") center center no-repeat;
    background-size: cover; }
  #testimony #t-jason {
    background: url("/App_Themes/Resolution/images/Jason-Charles-Hill-small.jpg") center center no-repeat;
    background-size: cover; }
  #testimony #t-pat {
    background: url("/App_Themes/Resolution/images/Pat-Kay-small.jpg") center center no-repeat;
    background-size: cover; }
  #testimony #t-craig {
    background: url("/App_Themes/Resolution/images/Craig-Parry-small.jpg") center center no-repeat;
    background-size: cover; }
  #testimony #t-mark {
    background: url("/App_Themes/Resolution/images/Mark-Galer-small.jpg") center center no-repeat;
    background-size: cover; }
  #testimony #t-luke {
    background: url("/App_Themes/Resolution/images/Luke-Tscharke-small.jpg") center center no-repeat;
    background-size: cover; }
  #testimony .quote {
    font-size: 1.25em; }
    #testimony .quote p {
      color: #fff; }
  #testimony .person {
    color: #fff;
    overflow: hidden; }
    #testimony .person .person-wrap {
      float: left;
      margin-left: 10px; }
      #testimony .person .person-wrap .name {
        font-size: 20px;
        font-family: 'NeueMontreal-Bold', 'NeueMontreal-Regular', Arial, sans-serif !important;
        text-transform: uppercase;
        margin-bottom: 0.5em; }
    #testimony .person::before {
      content: "";
      width: 16px;
      height: 48px;
      background-image: linear-gradient(#fc2d17, #FF581D);
      display: inline-block;
      float: left; }
  @media (max-width: 575px) {
    #testimony .person.long .person-wrap {
      max-width: 90%; }
    #testimony .person.long::before {
      content: "";
      width: 16px;
      height: 64px;
      background-image: linear-gradient(#fc2d17, #FF581D);
      display: inline-block;
      float: left; } }
  @media (min-width: 768px) {
    #testimony {
      min-height: 90vh; }
      #testimony .slide {
        height: 90vh; }
      #testimony #t-meghan {
        background: url("/App_Themes/Resolution/images/Meghan-Maloney.jpg") center center no-repeat;
        background-size: cover; }
      #testimony #t-jason {
        background: url("/App_Themes/Resolution/images/Jason-Charles-Hill.jpg") center center no-repeat;
        background-size: cover; }
      #testimony #t-pat {
        background: url("/App_Themes/Resolution/images/Pat-Kay.jpg") center center no-repeat;
        background-size: cover; }
      #testimony #t-craig {
        background: url("/App_Themes/Resolution/images/Craig-Parry.jpg") center center no-repeat;
        background-size: cover; }
      #testimony #t-mark {
        background: url("/App_Themes/Resolution/images/Mark-Galer.jpg") center center no-repeat;
        background-size: cover; }
      #testimony #t-luke {
        background: url("/App_Themes/Resolution/images/Luke-Tscharke.jpg") center center no-repeat;
        background-size: cover; } }
  @media (min-width: 768px) and (min-height: 500px) {
    #testimony .quote-wrapper {
      max-width: 70%; }
    #testimony .quote {
      font-size: 2em; } }

.product-retailers-b {
  padding-bottom: 0;
  padding-top: 3em;
  background-color: #000; }
  .product-retailers-b h2 {
    color: #fff;
    margin-bottom: 1em; }
  .product-retailers-b h3 {
    font-weight: bold;
    color: #fff;
    margin-bottom: 1em;
    font-size: 1.5em; }
  .product-retailers-b p {
    margin-bottom: 1em; }
  .product-retailers-b ul {
    padding-left: 16px;
    margin-top: 0; }
    .product-retailers-b ul.notes li {
      padding: 0; }
  .product-retailers-b .shop-buttons a.learn {
    background-color: #fff;
    color: #000; }
  .product-retailers-b .m-col-wrapper .m-col3:last-of-type {
    margin: 1.5em 0 3em 0; }
  .product-retailers-b.slick-feature-module .slick .slick-list {
    padding-bottom: 0; }
  .product-retailers-b .slider-col {
    padding: 0; }
  .product-retailers-b .slick-button-container {
    height: auto; }
  @media (min-width: 998px) {
    .product-retailers-b p {
      max-width: 40%; }
    .product-retailers-b .m-col-wrapper {
      overflow: visible; }
    .product-retailers-b .slider-col {
      position: relative;
      padding: 0 1em;
      top: -5em; } }

#a7r-lenses {
  background-color: #000; }
  #a7r-lenses h3 {
    font-size: 2em;
    font-weight: bold;
    margin-bottom: 1em; }
  #a7r-lenses .heading-expand {
    font-size: 0.8em; }
    #a7r-lenses .heading-expand span {
      letter-spacing: 1px; }
  #a7r-lenses .container {
    border-top: solid 1px #fff; }
  #a7r-lenses .notes {
    display: block;
    color: #fff;
    font-size: 0.85em;
    margin-bottom: 1em;
    font-style: italic; }
  #a7r-lenses .item-list .first {
    padding-top: 0.5em; }
  #a7r-lenses .item-details img {
    display: block;
    margin: 0 auto;
    width: 60%; }
  @media (min-width: 992px) {
    #a7r-lenses .heading-expand {
      font-size: 1.25em; } }

#explore-more {
  background-color: #e7e8e9; }
  #explore-more h2 {
    color: #2f353d;
    margin-top: 0; }
  #explore-more .m-col.m-col3 {
    width: 100%;
    margin-bottom: 1.5em; }
  #explore-more .m-col-inner {
    height: 200px;
    display: table;
    width: 100%;
    vertical-align: middle;
    align-items: center;
    transition: opacity 0.3s ease;
    position: relative; }
    #explore-more .m-col-inner::before {
      content: "";
      display: block;
      background-color: black;
      opacity: 0.5;
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
      transition: opacity 0.3s ease; }
    #explore-more .m-col-inner > div {
      position: relative;
      z-index: 6;
      font-family: 'NeueMontreal-Bold', 'NeueMontreal-Regular', Arial, sans-serif !important;
      text-transform: uppercase;
      display: table-cell;
      width: 100%;
      vertical-align: middle;
      font-weight: bold; }
  #explore-more a {
    color: #fff;
    font-family: 'NeueMontreal-Bold', 'NeueMontreal-Regular', Arial, sans-serif !important;
    text-transform: uppercase;
    vertical-align: middle;
    text-align: center;
    width: 100%;
    height: 100%;
    z-index: 3; }
    #explore-more a:hover .m-col-inner::before {
      opacity: 0;
      transition: opacity 0.3s ease; }
  #explore-more a.explore-home .icon {
    vertical-align: top; }
  #explore-more #more-CraigParry {
    background: url("/App_Themes/Resolution/images/CraigParry-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore-more #more-JasonCharlesHill {
    background: url("/App_Themes/Resolution/images/JasonCharlesHill-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore-more #more-LukeTscharke {
    background: url("/App_Themes/Resolution/images/LukeTscharke-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore-more #more-MarkGaler {
    background: url("/App_Themes/Resolution/images/MarkGaler-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore-more #more-MeghanMaloney {
    background: url("/App_Themes/Resolution/images/MeghanMaloney-tile.jpg") center center no-repeat;
    background-size: cover; }
  #explore-more #more-PatKay {
    background: url("/App_Themes/Resolution/images/PatKay-tile.jpg") center center no-repeat;
    background-size: cover; }
  @media (min-width: 768px) {
    #explore-more .m-col.m-col3 {
      width: 32%;
      margin-right: 1%;
      margin-bottom: 1em;
      float: left; } }

/*# sourceMappingURL=main.css.map */
