body {
  color: #6d6e71;
  font-family: "Montserrat-Light", sans-serif;
  font-size: 16px; }

/* take away outline of images when clicked*/
*:focus {
    outline: none !important;
}

[placeholder]:focus::-webkit-input-placeholder {
  transition: opacity 0.1s 0.1s ease;
  opacity: 0; }


@media screen and (min-width: 64em) {
  .PageContainer {
    margin: 40px 0 0; } }

.TopNav {
  margin: 40px 20px; }
  .TopNav--Logo {
    width: 190px; }
    @media screen and (min-width: 40em) {
      .TopNav--Logo {
        width: 250px; } }
    .TopNav--Logo img {
      width: 100%; }
  .TopNav--MainNav {
    text-align: right; }
    @media screen and (min-width: 64em) {
      .TopNav--MainNav {
        margin-top: -20px; } }
    .TopNav--MainNav .hamburger {
      width: 50px;
      height: 50px;
      background: url("../assets/img/hamburger.png") 0 0 no-repeat;
      background-size: 100%; }
    .TopNav--MainNav .DesktopNav a {
      font-size: 12px;
      color: #6d6f71;
      text-transform: uppercase; }
    .TopNav--MainNav .DesktopNav .top-nav {
      margin-bottom: 20px; position: relative; }
      .TopNav--MainNav .DesktopNav .top-nav a {
        display: inline-block;
        margin-top: 5px; }
      .TopNav--MainNav .DesktopNav .top-nav .cart:before {
        content: "";
        width: 18px;
        height: 16px;
        background: url("../assets/img/icon_cart.png") 0 0 no-repeat;
        display: inline-block;
        margin-right: 15px; }
      .TopNav--MainNav .DesktopNav .top-nav .divider {
        padding: 0 10px; }
      .TopNav--MainNav .DesktopNav .top-nav .search {
        margin-left: 30px;
        margin-bottom: 0;
        float: right; }
      .TopNav--MainNav .DesktopNav .top-nav input {
        background: #d1d3d4 url("../assets/img/icon_search.png") 0 0 no-repeat;
        width: 180px;
        color: #ffffff;
        height: 30px;
        padding-left: 30px; }
        .TopNav--MainNav .DesktopNav .top-nav input:focus {
          background: #d1d3d4 url("../assets/img/icon_search.png") 0 0 no-repeat;
          color: #ffffff;
          border: 0px; }
        .TopNav--MainNav .DesktopNav .top-nav input:before {
          content: "";
          width: 29px;
          height: 30px;
          background: url("../assets/img/icon_search.png") 0 0 no-repeat;
          background-size: 100%; }
        .TopNav--MainNav .DesktopNav .top-nav input::-webkit-input-placeholder {
          color: #ffffff; }
        .TopNav--MainNav .DesktopNav .top-nav input:-ms-input-placeholder {
          color: #ffffff; }
        .TopNav--MainNav .DesktopNav .top-nav input::placeholder {
          color: #ffffff; }
    .TopNav--MainNav .DesktopNav .bottom-nav .menu a {
      border-bottom: 4px solid #d1d3d4;
      padding: 0.7rem 2.4rem 0.7rem 0; }
      .TopNav--MainNav .DesktopNav .bottom-nav .menu a:hover {
        border-bottom: 4px solid #00AEEF; }
    .TopNav--MainNav .DesktopNav .bottom-nav .menu a.last {
      padding: 0.7rem 0 !important; }
  .TopNav--MobileNav .menu {
    margin-top: 50px; }
    .TopNav--MobileNav .menu a {
      margin-left: 20px; }
    .TopNav--MobileNav .menu hr {
      height: 1px;
      width: 75%;
      margin: 20px 13%; }
    .TopNav--MobileNav .menu .search {
      margin-left: 18px;
      margin-bottom: 10px; }
    .TopNav--MobileNav .menu input {
      background: #d1d3d4 url("../assets/img/icon_search.png") 0 0 no-repeat;
      width: 180px;
      color: #ffffff;
      height: 30px;
      padding-left: 30px; }
      .TopNav--MobileNav .menu input:focus {
        background: #d1d3d4 url("../assets/img/icon_search.png") 0 0 no-repeat;
        color: #ffffff;
        border: 0px; }
      .TopNav--MobileNav .menu input:before {
        content: "";
        width: 29px;
        height: 30px;
        background: url("../assets/img/icon_search.png") 0 0 no-repeat;
        background-size: 100%; }
      .TopNav--MobileNav .menu input::-webkit-input-placeholder {
        color: #ffffff; }
      .TopNav--MobileNav .menu input:-ms-input-placeholder {
        color: #ffffff; }
      .TopNav--MobileNav .menu input::placeholder {
        color: #ffffff; }
  .TopNav--DesktopNav {
    background: #000000; }

.menu a {
  font-family: "Montserrat-Light", sans-serif;
  font-size: 12px;
  color: #6d6f71;
  text-transform: uppercase; }

close-button {
  z-index: 900; }

.off-canvas.is-transition-overlap.is-open {
  box-shadow: 0 0 20px rgba(10, 10, 10, 0.4); }

.off-canvas {
  height: 95%px;
  bottom: 0;
  background: #ffffff; }

.QuickSearch--container {
  background: url("../assets/img/bg_quick_search.png") 0 0 repeat-x;
  background-size: 100% 100%; }
  .QuickSearch--container .title {
    font-family: "Montserrat-UltraLight", sans-serif;
    margin: 0 auto;
    padding: 40px 0 20px;
    text-align: center;
    font-size: 32px;
    text-transform: uppercase;
    color: #ffffff; }
  .QuickSearch--container .dropdown {
    margin: 10px auto 0;
    text-align: center; }
    .QuickSearch--container .dropdown select {
      background: url("../assets/img/bg_dropdown.png") 0 0 no-repeat;
      background-size: 100%;
      width: 300px;
      height: 35px;
      font-weight: 700;
      text-transform: uppercase;
      color: #ED1C24;
      border: none; }
      .QuickSearch--container .dropdown select option {
        color: #ED1C24; }
  .QuickSearch--container .shape {
    position: relative;
    margin: 10px auto;
    text-align: center;
    font-weight: 700;
    background: url("../assets/img/bg_gem_shape.png") 0 0 no-repeat;
    width: 300px;
    height: 67px; }
    .QuickSearch--container .shape .shape_title {
      display: inline-block;
      float: left;
      color: #ED1C24;
      text-transform: uppercase;
      border-right: 2px solid #ED1C24;
      margin: 0;
      padding: 13px 15px 0;
      height: 70px; }
      .QuickSearch--container .shape .shape_title span {
        display: inline-block;
        position: relative;
        top: 8px; }
    .QuickSearch--container .shape .checkboxes {
      width: 230px;
      position: absolute;
      top: 6px;
      left: 92px;
      text-align: left; }
      .QuickSearch--container .shape .checkboxes input[type=checkbox] {
        display: none; }
      .QuickSearch--container .shape .checkboxes input[type=checkbox] + label {
        display: inline-block;
        text-transform: capitalize;
        margin: 0;
        padding: 0;
        background: url("../assets/img/gem_sprite.png") no-repeat;
        height: 25px;
        width: 25px; }
      .QuickSearch--container .shape .checkboxes input.antique_cushion + label {
        background-position: 0 0; }
      .QuickSearch--container .shape .checkboxes input.antique_cushion:checked + label {
        background-position: 0 -25px; }
      .QuickSearch--container .shape .checkboxes input.baguette + label {
        background-position: -25px 0; }
      .QuickSearch--container .shape .checkboxes input.baguette:checked + label {
        background-position: -25px -25px; }
      .QuickSearch--container .shape .checkboxes input.cushion + label {
        background-position: -50px 0; }
      .QuickSearch--container .shape .checkboxes input.cushion:checked + label {
        background-position: -50px -25px; }
      .QuickSearch--container .shape .checkboxes input.emerald_cut__octagon + label {
        background-position: -75px 0; }
      .QuickSearch--container .shape .checkboxes input.emerald_cut__octagon:checked + label {
        background-position: -75px -25px; }
      .QuickSearch--container .shape .checkboxes input.fancy + label {
        background-position: -100px 0; }
      .QuickSearch--container .shape .checkboxes input.fancy:checked + label {
        background-position: -100px -25px; }
      .QuickSearch--container .shape .checkboxes input.heart + label {
        background-position: -125px 0; }
      .QuickSearch--container .shape .checkboxes input.heart:checked + label {
        background-position: -125px -25px; }
      .QuickSearch--container .shape .checkboxes input.kite + label {
        background-position: -150px 0; }
      .QuickSearch--container .shape .checkboxes input.kite:checked + label {
        background-position: -150px -25px; }
      .QuickSearch--container .shape .checkboxes input.marquise + label {
        background-position: -175px 0; }
      .QuickSearch--container .shape .checkboxes input.marquise:checked + label {
        background-position: -175px -25px; }
      .QuickSearch--container .shape .checkboxes input.oval + label {
        background-position: -200px 0; }
      .QuickSearch--container .shape .checkboxes input.oval:checked + label {
        background-position: -200px -25px; }
      .QuickSearch--container .shape .checkboxes input.pear + label {
        background-position: -225px 0; }
      .QuickSearch--container .shape .checkboxes input.pear:checked + label {
        background-position: -225px -25px; }
      .QuickSearch--container .shape .checkboxes input.round + label {
        background-position: -250px 0; }
      .QuickSearch--container .shape .checkboxes input.round:checked + label {
        background-position: -250px -25px; }
      .QuickSearch--container .shape .checkboxes input.square + label {
        background-position: -275px 0; }
      .QuickSearch--container .shape .checkboxes input.square:checked + label {
        background-position: -275px -25px; }
      .QuickSearch--container .shape .checkboxes input.trillion + label {
        background-position: -300px 0; }
      .QuickSearch--container .shape .checkboxes input.trillion:checked + label {
        background-position: -300px -25px; }
      .QuickSearch--container .shape .checkboxes input.mixed_shapessizes + label {
        background-position: -326px 0; }
      .QuickSearch--container .shape .checkboxes input.mixed_shapessizes:checked + label {
        background-position: -326px -25px; }
  .QuickSearch--container .gem_slider {
    width: 300px;
    margin: 20px auto;
    padding: 0;
    clear: both; }
    .QuickSearch--container .gem_slider .values {
      padding: 10px 0; }
      .QuickSearch--container .gem_slider .values input {
        height: 20px;
        width: 50px;
        padding: 5px;
        display: inline;
        background: #ED1C24;
        border: none;
        color: #ffffff;
        font-size: 12px; }
        .QuickSearch--container .gem_slider .values input.amount_left {
          float: left; }
        .QuickSearch--container .gem_slider .values input.amount_right {
          float: right;
          text-align: right; }
  .QuickSearch--container .submit_button {
    margin-bottom: 40px; }
  .QuickSearch--container .button {
    border: 1px solid white;
    background: linear-gradient(#ffffff, #d1d3d4);
    color: #ED1C24;
    border-radius: 5px;
    opacity: 0.6;
    text-transform: uppercase; }
    .QuickSearch--container .button:hover, .QuickSearch--container .button:focus {
      background-color: none; }
    .QuickSearch--container .button.selected {
      opacity: 1;
      cursor: text;
    }
    .QuickSearch--container .button.submit {
      opacity: 1;
      padding: 20px 40px;
      display: block;
      margin: 0 auto; }

.PromoSection .logo {
  margin: 40px auto 20px;
  text-align: center; }
  .PromoSection .logo img {
    width: 250px; }

.PromoSection .copyright {
  text-align: center;
  font-size: 12px;
  margin-bottom: 40px; }

.PromoSection--links {
  margin: 40px auto;
  text-align: center;
  text-transform: uppercase; }
  @media screen and (min-width: 40em) {
    .PromoSection--links {
      font-size: 14px;
      height: 150px; } }
  @media screen and (min-width: 40em) {
    .PromoSection--links.border {
      border-left: 1px solid #6d6f71; } }
  .PromoSection--links .title {
    font-size: 20px;
    margin-bottom: 10px; }
  .PromoSection--links ul.footer_links {
    list-style: none; }
    .PromoSection--links ul.footer_links li {
      margin-bottom: 0px; }
      @media screen and (min-width: 64em) {
        .PromoSection--links ul.footer_links li {
          margin-bottom: -5px; } }
      .PromoSection--links ul.footer_links li a {
        color: #6d6f71;
        text-decoration: none; }
        .PromoSection--links ul.footer_links li a:hover {
          text-decoration: underline; }
        @media screen and (min-width: 64em) {
          .PromoSection--links ul.footer_links li a {
            font-size: 12px; } }
  .PromoSection--links img {
    width: 60%;
    margin-bottom: 20px; }

.PromoSection hr {
  width: 80%;
  margin: 20px auto 0; }
  @media screen and (min-width: 40em) {
    .PromoSection hr {
      display: none; } }

.PromoSection--shipping {
  height: 275px;
  background: url("../assets/img/bg_plane_mobile.jpg") 0 0 no-repeat;
  background-size: cover; }
  @media print, screen and (min-width: 64em) {
    .PromoSection--shipping {
      background: url("../assets/img/bg_plane.jpg") -160px 0px no-repeat;
      height: 220px; } }
  @media screen and (min-width: 75em) {
    .PromoSection--shipping {
      background: url("../assets/img/bg_plane.jpg") -95px 0px no-repeat;
      height: 220px; } }
  .PromoSection--shipping .title {
    width: 300px;
    margin: 0 auto;
    padding-top: 50px;
    font-size: 46px;
    line-height: 50px;
    text-align: center;
    font-family: "Montserrat-UltraLight", sans-serif;
    font-weight: 700;
    color: #ffffff;
    text-transform: uppercase; }
    @media screen and (min-width: 64em) {
      .PromoSection--shipping .title {
        padding-top: 35px;
        font-size: 32px;
        line-height: 36px;
        text-align: left;
        margin-left: 40px; } }
  .PromoSection--shipping .link {
    margin: 30px auto;
    text-align: center; }
    @media screen and (min-width: 64em) {
      .PromoSection--shipping .link {
        width: 200px;
        text-align: left;
        margin: 20px 0 0 40px; } }
    .PromoSection--shipping .link a {
      color: #ffffff;
      text-decoration: none;
      text-transform: uppercase; }
      .PromoSection--shipping .link a:hover {
        text-decoration: underline; }

.PromoSection--newsletter {
  height: 380px;
  background: url("../assets/img/bg_newsletter_mobile.png") top center no-repeat;
  background-size: cover; }
  @media screen and (min-width: 64em) {
    .PromoSection--newsletter {
      background: url("../assets/img/bg_newsletter.png") 0 0 no-repeat;
      height: 220px; } }
  .PromoSection--newsletter .icon {
    width: 80px;
    display: block;
    padding-top: 40px;
    margin: 0 auto; }
    @media screen and (min-width: 64em) {
      .PromoSection--newsletter .icon {
        width: 160px;
        float: left;
        margin-left: 40px; } }
  .PromoSection--newsletter .title {
    margin: 0 auto;
    padding-top: 30px;
    text-align: center;
    font-family: "Montserrat-Light", sans-serif;
    font-size: 18px;
    line-height: 24px;
    color: #ffffff;
    text-transform: uppercase; }
    @media screen and (min-width: 64em) {
      .PromoSection--newsletter .title {
        text-align: left;
        float: left;
        margin-top: 20px;
        font-size: 22px;
        line-height: 28px; } }
  .PromoSection--newsletter input.email {
    width: 65%;
    margin: 20px auto;
    background-color: rgba(0, 0, 0, 0.01);
    color: #ffffff;
    border: 1px solid #ffffff; }
    @media screen and (min-width: 64em) {
      .PromoSection--newsletter input.email {
        float: left;
        width: 45%; } }
    .PromoSection--newsletter input.email:focus {
      color: #ffffff; }
    .PromoSection--newsletter input.email::-webkit-input-placeholder {
      text-align: center;
      color: #ffffff; }
    .PromoSection--newsletter input.email:-ms-input-placeholder {
      text-align: center;
      color: #ffffff; }
    .PromoSection--newsletter input.email::placeholder {
      text-align: center;
      color: #ffffff; }
      @media screen and (min-width: 64em) {
        .PromoSection--newsletter input.email::-webkit-input-placeholder {
          text-align: left; }
        .PromoSection--newsletter input.email:-ms-input-placeholder {
          text-align: left; }
        .PromoSection--newsletter input.email::placeholder {
          text-align: left; } }
  .PromoSection--newsletter button.submit {
    width: 30%;
    text-transform: uppercase;
    display: block;
    margin: 40px auto 0;
    padding: 10px 20px;
    background-color: rgba(0, 0, 0, 0.01);
    color: #ffffff;
    border: 1px solid #ffffff; }
    @media screen and (min-width: 64em) {
      .PromoSection--newsletter button.submit {
        float: left;
        width: 100px;
        margin: 20px 0 0 20px;
        cursor: pointer; } }

.MainSlider--container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column; }
  @media print, screen and (min-width: 64em) {
    .MainSlider--container {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      height: 550px; } }
  @media screen and (min-width: 75em) {
    .MainSlider--container {
      -webkit-flex-direction: row;
          -ms-flex-direction: row;
              flex-direction: row;
      height: 650px; } }
  .MainSlider--container .large_section {
    display: block;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important; }
    @media screen and (min-width: 64em) {
      .MainSlider--container .large_section {
        -webkit-order: 1;
            -ms-flex-order: 1;
                order: 1;
        width: 60%;
        float: left; }
        .MainSlider--container .large_section img {
          display: none; } }
  .MainSlider--container .small_section {
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    background-position: top center !important;
    background-repeat: no-repeat !important;
    background-size: cover !important; }
    @media screen and (min-width: 64em) {
      .MainSlider--container .small_section {
        -webkit-order: 2;
            -ms-flex-order: 2;
                order: 2;
        width: 40%;
        float: left;
        clear: both; } }
    .MainSlider--container .small_section .small_picture {
      display: none; }
      .MainSlider--container .small_section .small_picture img {
        width: 100%; }
      @media screen and (min-width: 64em) {
        .MainSlider--container .small_section .small_picture {
          display: block;
          height: 45%; } }
    .MainSlider--container .small_section .text {
      background: #00AEEf;
      color: white;
      font-family: "Montserrat-UltraLight", sans-serif;
      padding: 20px;
      height: 55%;
      overflow-y: hidden; }
      .MainSlider--container .small_section .text .title {
        font-size: 24px;
        font-weight: 700;
        line-height: 28px;
        padding-bottom: 20px;
        width: 65%;
        border-bottom: 4px solid #ffffff; }
      .MainSlider--container .small_section .text .copy {
        padding-top: 20px; }
        .MainSlider--container .small_section .text .copy p {
          margin-top: 10px; }
        .MainSlider--container .small_section .text .copy a {
          color: #ffffff;
          text-decoration: none;
          text-transform: uppercase; }
          .MainSlider--container .small_section .text .copy a:hover {
            text-decoration: underline; }
    @media screen and (min-width: 64em) {
      .MainSlider--container .small_section {
        display: block; } }

.MainSlider .slick-dots {
  bottom: 5px; }
  @media screen and (min-width: 64em) {
    .MainSlider .slick-dots {
      left: -20%; } }

.MainSlider .slick-dots li button:before {
  color: #000000;
  opacity: 1;
  font-size: 1rem;
  line-height: 14px; }

.MainSlider .slick-dots li.slick-active button:before {
  color: #ffffff; }

.MainSlider .slick-dotted.slick-slider {
  margin-bottom: 0; }

.GemGrid {
  margin: 40px 20px; }
  @media screen and (min-width: 64em) {
    .GemGrid {
      margin: 40px 20px -40px; } }
  .GemGrid--title {
    font-family: "Montserrat-UltraLight", sans-serif;
    font-size: 26px;
    font-weight: 700;
    margin: 20px auto;
    text-align: center;
    text-transform: uppercase; }
  .GemGrid--subtitle {
    text-align: center; }
  @media screen and (min-width: 40em) {
    .GemGrid--mobile {
      display: none; } }
  .GemGrid--mobile .gem {
    width: 50%;
    float: left;
    border-left: none;
    border-right: 1px solid #d1d3d4;
    margin-bottom: 20px; }
    @media screen and (min-width: 40em) {
      .GemGrid--mobile .gem {
        margin-bottom: 40px; } }
    .GemGrid--mobile .gem:nth-child(2n) {
      border-left: 1px solid #d1d3d4;
      border-right: none; }
    .GemGrid--mobile .gem .image {
      width: 90%;
      margin: 0 auto; }
      .GemGrid--mobile .gem .image img {
        max-height: 150px;
        margin: 0 auto;
        text-align: center; }
    .GemGrid--mobile .gem .text {
      font-family: "Montserrat-Regular", sans-serif;
      font-size: 14px;
      text-transform: uppercase;
      width: 100%;
      text-align: center;
      margin-bottom: 20px; }
  .GemGrid--computer {
    display: none; }
    @media screen and (min-width: 40em) {
      .GemGrid--computer {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-flow: row wrap;
            -ms-flex-flow: row wrap;
                flex-flow: row wrap;
        -webkit-justify-content: flex-start;
            -ms-flex-pack: flex-start;
                justify-content: flex-start;
        border-spacing: 20px;
        margin: 40px 0; } }
    .GemGrid--computer .gem {
      width: 25%;
      margin: 0 0 40px;
      border-right: 2px solid #d1d3d4; }
      @media screen and (max-width: 63.9375em) {
        .GemGrid--computer .gem:nth-child(1) {
          border-left: none; }
        .GemGrid--computer .gem:nth-child(4n) {
          border-right: none; } }
      @media screen and (min-width: 64em) {
        .GemGrid--computer .gem {
          width: 20%; }
          .GemGrid--computer .gem:nth-child(5n) {
            border-right: none; } }
      .GemGrid--computer .gem .image {
        width: 90%;
        margin: 0 auto;
        text-align: center; }
      .GemGrid--computer .gem .text {
        font-family: "Montserrat-Regular", sans-serif;
        font-size: 14px;
        text-transform: uppercase;
        width: 100%;
        text-align: center;
        color: #6d6e71;
        margin: 10px auto; }

.GemGrid--catalog {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: center;
    justify-content: flex-start;
    border-spacing: 20px;
    margin: 40px 0;
    text-align: center;
}

    .GemGrid--catalog .gem {
        padding: 0 10px 40px;
        border-bottom: 2px solid #d1d3d4;
        padding-top: 40px;
        min-width: 23%;
        margin-left: 1%;
        margin-right: 1%;
    }

        .GemGrid--catalog h3 {
            font-size: 22px;
        }

        .GemGrid--catalog .gem img {
            margin-bottom: -15px;
            display: block;
            margin: 0 auto;
            height: 150px;
        }

        .GemGrid--catalog .gem p {
            font-size: 20px;
        }

        .GemGrid--catalog .gem .price {
            margin-bottom: 20px;
        }

        @media screen and (min-width: 769px) and (max-width: 1024px) {
            .GemGrid--catalog .gem {
                width: 31%;
            }
        }

        @media screen and (min-width: 641px) and (max-width: 768px) {
            .GemGrid--catalog .gem {
                width: 48%;
            }
        }

        @media screen and (max-width: 640px) {
            .GemGrid--catalog .gem {
                width: 98%;
            }
        }

    .ContentPage {
        margin: 40px 0;
    }

    .ContentPage a {
      color: #00aeef;
      text-decoration: underline;
    }

    .ContentPage--border {
        border-right: 1px solid #6d6f71;
    }

    .ContentPage--container__image {
        width: 100%;
        margin: 0 auto;
    }

    .ContentPage--container__image img {
      width: 100%;
      margin: 0 auto;
    }

    .ContentPage--container__image.list img {
      display: block;
      margin: 0 auto;
      width: 90%;
    }

@media screen and (max-width: 40em) {
  .ContentPage--container__image.list img {
    width: 80%;
  }
}

  .ContentPage--container article {
    font-family: "MyriadPro", sans-serif;
    margin: 40px 10px 20px;
  }

    .ContentPage--container article.list {
      margin: 10px 10px 20px;
    }

  @media screen and (min-width: 64em) {
    .ContentPage--container article {
      border-bottom: none;
    }
  }

  .ContentPage--container article hr.small {
    width: 120px;
    height: 2px;
    background: #6d6f71;
    text-align: left;
    margin: 1.25rem 0;
  }

  .ContentPage--container h1 {
    font-family: "Montserrat-UltraLight", sans-serif;
    font-size: 1.7rem;
    font-weight: 700;
  }

  .ContentPage--container article h2 {
    font-family: "Montserrat-Regular", sans-serif;
    font-weight: 400;
    font-size: 0.8rem;
  }

  .ContentPage--container article p {
    line-height: 24px;
  }

    .ContentPage--container article p.quote {
      font-size: 1.5rem;
      line-height: 1.8rem;
    }

  .SideContent {
    font-family: "MyriadPro", sans-serif;
    font-size: 1rem;
    margin: 0 40px;
  }

  @media screen and (min-width: 64em) {
    .SideContent {
      margin: 20px 30px;
    }
  }

  .SideContent h3 {
    font-size: 1.2rem;
    text-transform: uppercase;
    margin-bottom: 30px;
  }

  .SideContent h4 {
    font-size: 1.2rem;
    margin-bottom: 20px;
  }

  .SideContent hr {
    height: 1px;
    background: #6d6f71;
    margin-top: 40px;
    margin-bottom: 40px;
  }

  @media screen and (min-width: 64em) {
    .SideContent hr {
      margin-top: 30px;
      margin-bottom: 30px;
    }
  }

  .SideContent a {
    font-size: 0.8rem;
    text-transform: uppercase;
    color: #00AEEf;
  }

  .YourGems--left {
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
  }

  @media screen and (min-width: 64em) {
    .YourGems--left {
      -webkit-order: 1;
      -ms-flex-order: 1;
      order: 1;
      margin-bottom: 0;
      border-right: 1px solid #6d6f71;
      position: relative;
    }
  }

  .YourGems--right {
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
  }

  @media screen and (min-width: 64em) {
    .YourGems--right {
      -webkit-order: 2;
      -ms-flex-order: 2;
      order: 2;
      margin-bottom: 0;
    }
  }

  .YourGems .GemGrid {
    margin: 0 35px !important;
  }

  .ShoppingCart {
    font-family: "MyriadPro", sans-serif;
    font-size: 1rem;
    text-align: center;
    text-align: center;
    margin: 0 auto;
  }

    .ShoppingCart h3 {
      font-size: 1.2rem;
      text-transform: uppercase;
      margin: 30px auto 0;
    }

    .ShoppingCart h4 {
      font-size: 1.2rem;
      margin-bottom: 20px;
    }


    .ShoppingCart hr {
      height: 1px;
      background: #6d6f71;
      margin-top: 40px;
      margin-bottom: 40px;
    }

  @media screen and (min-width: 64em) {
    .ShoppingCart hr {
      margin-top: 30px;
      margin-bottom: 30px;
    }
  }

  .ShoppingCart a {
    font-size: 0.8rem;
    text-transform: uppercase;
    color: #00AEEf;
  }

  .ShoppingCart--mobile {
    border-bottom: 1px solid #6d6f71;
    width: 90%;
    margin: 0 auto;
  }

  @media screen and (min-width: 64em) {
    .ShoppingCart--mobile {
      display: none;
    }
  }

  .ShoppingCart--mobile__slider {
    width: 90%;
    margin: 0 auto;
  }

  @media screen and (min-width: 64em) {
    .ShoppingCart--mobile__slider {
      display: none;
    }
  }

  .ShoppingCart--mobile__slider .details {
    margin: 10px 0;
    font-size: 1.1rem;
  }

  .ShoppingCart--mobile__slider .details__name, .ShoppingCart--mobile__slider .details__carats, .ShoppingCart--mobile__slider .details__mm, .ShoppingCart--mobile__slider .details__price {
    text-align: center;
    margin: 0 auto;
  }

  .ShoppingCart--mobile__slider .gem {
    margin: 10px 0;
  }

    .ShoppingCart--mobile__slider .gem img {
      min-height: 80px;
    }

  .ShoppingCart--computer {
    display: none;
  }

  @media screen and (min-width: 64em) {
    .ShoppingCart--computer {
      display: block;
    }
  }

  .ShoppingCart--computer__item {
    width: 90%;
    margin: 0 auto;
    padding: 20px 0;
    border-bottom: 1px solid #d1d3d4;
  }

  .RecentEvents {
    width: 90%;
    margin: 0 auto;
  }

  @media screen and (min-width: 64em) {
    .RecentEvents {
      margin: 0 auto 250px;
    }
  }

  .RecentEvents h3 {
    margin: 30px auto 0;
  }

  .RecentEvents--gem {
    position: relative;
    z-index: 5;
    margin: 20px 0;
  }

  .RecentEvents--gem img {
    max-height: 200px;
  }

  .RecentEvents--gem_name {
    font-family: "Montserrat-Regular", sans-serif;
    color: #6d6f71;
    font-size: 0.85rem;
    text-transform: uppercase;
    position: relative;
    z-index: 10;
    margin: -10px 0 20px;
  }

  .RecentEvents--slider {
    width: 90%;
    margin: 0 auto 20px;
  }

    .RecentEvents--slider img {
      cursor: pointer;
      height: 75px;
      margin: 0 auto;
    }

    .RecentEvents--slider div:active, .RecentEvents--slider div:focus {
      outline: 0;
      border: none;
      -moz-outline-style: none;
    }

  .GemHunt {
    background: url("../assets/img/bg_gem_hunt.png") 0 0 no-repeat;
    background-size: cover;
    width: 100%;
    height: 200px;
    color: #ffffff;
  }

  @media screen and (min-width: 64em) {
    .GemHunt {
      position: absolute;
      bottom: 0;
    }
  }

  .GemHunt--content {
    padding-top: 25px;
    text-transform: uppercase;
  }

  .GemHunt--content__title {
    font-size: 1.8rem;
  }

  .GemHunt--content__text a {
    display: block;
    margin: 10px auto;
    border: 1px solid #ffffff;
    height: 44px;
    width: 150px;
    color: #ffffff;
    font-size: 1.1rem;
  }

    .GemHunt--content__text a span {
      position: relative;
      top: 10px;
    }

  .ContactForm {
    text-transform: uppercase;
  }

    .ContactForm h1 {
      font-family: "Montserrat-UltraLight", sans-serif;
      font-weight: 700;
      font-size: 2rem;
      margin: 20px auto;
      text-align: center;
    }

    .ContactForm hr {
      height: 1px;
      background: #6d6f71;
      width: 80%;
      margin: 10px auto;
    }

  .ContactForm--form {
    padding: 20px 0;
  }

  .ContactForm--form__info {
    text-align: center;
  }

    .ContactForm--form__info span {
      font-size: 0.85rem;
    }

  .ContactForm--form table tbody {
    border: none !important;
  }

    .ContactForm--form table tbody tr td {
      background: #ffffff;
    }

      .ContactForm--form table tbody tr td.field_label {
        text-align: right;
      }

  @media screen and (min-width: 40em) {
    .ContactForm--form table tbody tr td.field_label {
      width: 110px;
    }
  }

  .ContactForm--form table tbody tr td.field input[type=text] {
    margin: 0;
  }

  .ContactForm--form table tbody tr td.field texta.MainSlider--container .small_section .text .title {
    height: 120px;
  }

  .ContactForm--form table tbody tr td.submit {
    text-align: center;
  }

    .ContactForm--form table tbody tr td.submit input[type=submit] {
      background: #ffffff;
      padding: 15px 60px;
      border: 1px solid #6d6f71;
      color: #6d6f71;
      text-transform: uppercase;
    }

  .GemImages {
    text-transform: uppercase;
  }

    .GemImages h1 {
      font-family: "Montserrat-UltraLight", sans-serif;
      font-weight: 700;
      font-size: 2rem;
      margin: 20px auto;
      text-align: center;
    }

  .GemImages--gem {
    margin: 0 auto;
  }

    .GemImages--gem img {
      height: 200px;
      display: block;
      margin: 0 auto;
    }

    @media screen and (min-width: 40em) {
        .GemImages--gem img {
          height: 300px;
        }
    }

  .GemImages--slider {
    width: 265px;
    margin: 20px auto 0;
  }

    .GemImages--slider .slick-slide {
      margin: 0 10px;
    }

  @media screen and (min-width: 40em) {
    .GemImages--slider {
      width: 420px;
    }
  }

  .GemImages--slider .slick-next:before,
  .GemImages--slider .slick-prev:before {
    margin-top: -20px;
  }

  .GemImages .slick-track {
    /* height: 50px; */
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .GemImages--slider img {
    cursor: pointer;
    max-height: 45px;
    display: block;
    margin: 0 auto;
  }

  .GemImages .slide_count {
    width: 200px;
    margin: 20px auto 0;
    text-align: center;
  }

  .GemDetails {
    width: 90%;
    margin: 0 auto;
    padding: 30px 0 0;
  }

  @media screen and (min-width: 64em) {
    .GemDetails {
      width: 80%;
    }
  }

  .GemDetails hr {
    height: 1px;
    background: #6d6f71;
    width: 100%;
    margin: 30px auto;
  }

  .GemDetails table {
    width: 90%;
    margin: 0 auto;
  }

    .GemDetails table tbody {
      border: none;
    }

      .GemDetails table tbody tr td {
        background: #ffffff;
        width: 50%;
        font-size: 0.85rem;
        vertical-align: top;
      }

  @media screen and (min-width: 40em) {
    .GemDetails table tbody tr td {
      width: auto;
      font-size: 1rem;
    }
  }

  .GemDetails table tbody tr td.category {
    text-align: right;
    padding-right: 10px;
    text-transform: uppercase;
  }

  .GemDetails table tbody tr td.data {
    text-align: left;
    padding-left: 10px;
  }

  .GemDetails--notes {
    margin: 10px auto;
    width: 80%;
    text-align: center;
  }

  .GemDetails--link {
    width: 280px;
    display: block;
    margin: 20px auto;
    padding: 20px;
    color: #6d6f71;
    text-transform: uppercase;
    text-align: center;
    border: 1px solid #6d6f71;
    cursor: pointer;
  }

    .GemDetails--link.red {
      color: #ffffff;
      background: #ED1C24;
    }

    .GemDetails--link.green {
      color: #ffffff;
      background: #27972d;
    }

  .GemOverlay--desktop {
    position: absolute;
    right: 0px;
    top: 31px;
    width: 700px;
    border: 1px solid #6d6f71;
    z-index: 10;
    background: #fff;
    font-size: 12px;
    display: none;
  }

  .GemOverlay--mobile {
    position: absolute;
    right: 7px;
    top: 81px;
    width: 95%;
    border: 1px solid #6d6f71;
    z-index: 10;
    background: #fff;
    font-size: 12px;
    display: none;
  }

  .GemOverlay--container {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 20px;
    position: relative;
  }

  .GemOverlay--desktop .overlay-close, .GemOverlay--mobile .overlay-close {
    position: absolute;
    top: 10px;
    right: 10px;
    z-index: 10;
  }


  .GemOverlay--desktop .button, .GemOverlay--mobile .button {
    border: 1px solid white;
    background: #ED1C24;
    color: #fff !important;
    border-radius: 10px;
    text-transform: uppercase;
    width: 50%;
    margin: 20px auto;
    display: block !important;
  }

  .GemOverlay--mobile .button, .GemOverlay--mobile .button {
    border: 1px solid white;
    background: #ED1C24;
    color: #fff !important;
    border-radius: 10px;
    text-transform: uppercase;
    width: 80%;
    margin: 20px auto;
    display: block !important;
  }

  .GemOverlay--container .button:hover, .GemOverlay--container .button:focus {
    background-color: none;
  }

  .GemOverlay--mobile .GemOverlay--container {
    overflow-y: auto;
  }

  .GemOverlay--desktop .GemOverlay--gem {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    width: calc(33% - 40px);
    margin: 20px auto;
  }

  .GemOverlay--mobile .GemOverlay--gem {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: calc(45% - 40px);
    margin: 5px auto 0;
  }

  .GemOverlay--gem a {
    color: #1779ba !important;
    text-decoration: underline;
  }

  .GemOverlay--mobile .GemOverlay--gem a {
    font-size: 11px;
  }

  .GemOverlay--desktop .GemOverlay--gem .image {
    width: 45%;
    margin-right: 10px;
  }

  .GemOverlay--mobile .GemOverlay--gem .image {
    width: 50%;
    height: 60px;
    margin: 0 auto 5px;
    text-align: center;
  }

  .GemOverlay--mobile .GemOverlay--gem .image img {
    height: 100%;
  }
  
  .GemOverlay--desktop .GemOverlay--gem .details .image img {
    width: 100%;
    height: 100px;
    margin: 0 auto;
  }

  .GemOverlay--mobile .GemOverlay--gem .details .image img {
    width: 100%;
    height: 80px;
    margin: 0 auto;
  }

  .GemOverlay--desktop .GemOverlay--gem .details {
    text-align: left;
    margin: 0;
  }

  .GemOverlay--mobile .GemOverlay--gem .details {
    text-align: center;
    margin: 0 auto 3px;
  }

  /* Mobile menu width override */

  .position-right {
    width: 95% !important;
  }

  /* For Shopping Cart footer*/

  .footer {
    background: none !important;
    padding-top: 0 !important;
    margin-top: 0 !important;
  }

  .field-validation-error {
    color: red !important;
    font-size: 13px !important;
    font-weight: 700 !important;
  }

  .site-map {
    width: 300px;
    margin: 20px auto 0;
  }

    .site-map td {
      text-align: center;
    }

  @media screen and (min-width: 40em) {
    .site-map {
      width: 600px;
    }
  }

  .modal-overlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.5);
    display: none;
  }

  .modal {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80%;
    transform: translate(-50%, -50%);
    background: #fff;
    padding: 20px;
    text-align: center;
  }

    .modal a {
      margin: 20px;
      display: block;
    }

  /* Shopping Cart*/

  .mui-default {
    font-size: 12px;
  }

    .mui-default td {
      vertical-align: middle !important;
    }

      .mui-default td input[type=number] {
        margin-bottom: 0 !important;
      }



  @media screen and (min-width: 40em) {
    .mui-default {
      font-size: 1rem;
    }

      .mui-default td {
        vertical-align: top;
      }

    .modal {
      width: 50%;
    }

    .modal a {
      display: inline-block;
    }
  }

  @media screen and (max-width: 40em) {
    .mui-default td.text-right a.btn-danger {
      background: url("../assets/img/icon_trash.png") 0 0 no-repeat;
      line-height: 0;
      font-size: 0;
      color: transparent;
      width: 25px;
      height: 25px;
      border: none !important;
    }

    .panel-default {
      font-size: 11.6px;
    }

    .order-summary {
      margin-top: 20px;
    }

    .mobile-panel {
      margin-left: -28px;
    }
  }

  .form-group label {
    display: inline-block !important;
  }