/******************************************************************
Theme Name: Artisan 1.1.1
Theme URI: https://outofthesandbox.com/collections/professional-theme
Author: Out of the Sandbox (https://outofthesandbox.com)
Description: Shopify Theme (https://www.shopify.com/?ref=out-of-the-sandbox)
******************************************************************/
/* Table of Contents
==================================================
  #Variables
  #Mixins
  #Functions
  #Reset
  #Fonts
  #Basic styles
  #Layout
  #Vendors
  #Fonts and icons
  #Typography
  #Links
  #Lists
  #Placeholders
  #Videos
  #Buttons
  #Tabs
  #Forms
  #Images
  #Misc
  #Lightbox
  #Header
  #Menu
  #Swatch Styles
  #Pagination
  #Color swatches
  #Collection grid
  #Collection list
  #Collection product thumbnail
  #Blog
  #Page
  #Sidebar
  #Article
  #Footer
  #Password Page
  #List of collections
  #Cart page
  #Collection page
  #Product page
  #Quick shop
  #Contact page
  #Account
  #Page FAQ
  #Shapes
  #Gallery page
  #Home page - General
  #Home page - Text columns
  #Home page - Map
  #Home page - Video
  #Home page - Calendar
  #Home page - Featured product
  #Home page - Featured collection
  #Home page - Collection in detail
  #Home page - Image with text
  #Home page - Slideshow
  #Home page - Newsletter
  #Home page - Testimonial
  #Home page - HTML Reviews
  #Home page - Richtext
  #Home page - Pricing table
  #Home page - Instagram feed
  #Home page - Logo list
  #Home page - Featured promotions
  #Newsletter
  #Footer
  #Page banners
  #Font-Face
  #Custom Styles */

/* #Variables
================================================== */

$headline-font-size: 31;
$nav-font-size: 16;
$regular-font-size: 17;
$footer-font-size: 14;

$site-width: 1220px;
$gutter: 20px;

$grid-small: 480px;
$grid-medium: 798px;
$grid-large: 1024px;
$grid-widescreen: 1400px;

$small: 'small';
$small-down: 'small-down';
$small-up: 'small-up';
$medium: 'medium';
$medium-down: 'medium-down';
$medium-up: 'medium-up';
$large: 'large';
$large-down: 'large-down';
$large-up: 'large-up';
$widescreen-up: 'widescreen-up';
$widescreen-down: 'widescreen-down';

// The `$breakpoints` list is used to build our media queries.
// You can use these in the media-query mixin.
$breakpoints: (
  $small-down '(max-width: #{$grid-small})',
  $small '(min-width: #{$grid-small + 1}) and (max-width: #{$grid-medium - 1})',
  $small-up '(min-width: #{$grid-small + 1})',
  $medium-down '(max-width: #{$grid-medium})',
  $medium '(min-width: #{$grid-medium + 1}) and (max-width: #{$grid-large - 1})',
  $medium-up '(min-width: #{$grid-medium + 1})',
  $large-down '(max-width: #{$grid-large})',
  $large '(min-width: #{$grid-large + 1}) and (max-width: #{$grid-widescreen - 1})',
  $large-up '(min-width: #{$grid-large + 1})',
  $widescreen-down '(max-width: #{$grid-widescreen})',
  $widescreen-up '(min-width: #{$grid-widescreen + 1})'
);

/* #Mixins
================================================== */

/*
  This mixin can be used to set the object-fit:
  @include object-fit(contain);

  or object-fit and object-position:
  @include object-fit(cover, top);
*/
@mixin object-fit($fit: fill, $position: null){
  -o-object-fit: $fit;
     object-fit: $fit;
  @if $position {
    -o-object-position: $position;
       object-position: $position;
    font-family: 'object-fit: #{$fit}; object-position: #{$position}';
  } @else {
    font-family: 'object-fit: #{$fit}';
  }
}

/* Form labels */
@mixin float-label-container {
  display: block;
  position: relative;
}

@mixin float-label {
  label, > span {
    position: absolute;
    left: 0px;
    top: -15px;
    cursor: text;
    font-size: 75%;
    opacity: 1;
    transition: all .2s;
    pointer-events: none;
    @content;
  }
}

@mixin float-label-input {
  &::placeholder {
    opacity: 0.5;
    transition: all .2s;
  }
  &:placeholder-shown:not(:focus)::placeholder {
    opacity: 0;
  }
}

@mixin float-label-scaled {
  &:placeholder-shown:not(:focus) + * {
      font-size: 1rem;
      @content;
  }
}

/* Adjust background opacity */
@mixin background-opacity($color, $opacity: 0.5) {
  background: $color;
  background: rgba($color, $opacity);
}

/* Adjust text opacity */
@mixin text-opacity($color, $opacity: 0.5) {
  color: $color;
  color: rgba($color, $opacity);
}

/* Clearfix for parents with floated children */
@mixin clearfix() {
  &::after {
    content: '';
    display: table;
    clear: both;
  }
  *zoom: 1;
}

/*
  Prefix mixin for generating vendor prefixes.
  Based on https://github.com/thoughtbot/bourbon/blob/v4-stable/app/assets/stylesheets/addons/_prefixer.scss

  Usage:
    // Input:
    .element {
      @include prefix(transform, scale(1), ms webkit spec);
    }

    // Output:
    .element {
      -ms-transform: scale(1);
      -webkit-transform: scale(1);
      transform: scale(1);
    }
*/
@mixin prefix($property, $value, $prefixes) {
  @each $prefix in $prefixes {
    @if $prefix == webkit {
      -webkit-#{$property}: $value;
    } @else if $prefix == moz {
      -moz-#{$property}: $value;
    } @else if $prefix == ms {
      -ms-#{$property}: $value;
    } @else if $prefix == o {
      -o-#{$property}: $value;
    } @else if $prefix == spec {
      #{$property}: $value;
    } @else  {
      @warn 'Unrecognized prefix: #{$prefix}';
    }
  }
}

/* Responsive Show/Hide Helper */
@mixin responsive-display-helper($breakpoint: '') {
  .#{$breakpoint}show {
    display: block !important;
  }

  .#{$breakpoint}hide {
    display: none !important;
  }
}

/* Responsive Text Alignment Helper */
@mixin responsive-text-align-helper($breakpoint: '') {
  .#{$breakpoint}text-left {
    text-align: left !important;
  }

  .#{$breakpoint}text-right {
    text-align: right !important;
  }

  .#{$breakpoint}text-center {
    text-align: center !important;
  }
}

/* Hide elements */
@mixin visually-hidden() {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

/* Show element */
@mixin visually-shown($position: inherit) {
  position: $position !important;
  overflow: auto;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

/* Traditional method of creating vertical centering */
@mixin vertical-alignment {
  position: relative;
  top: 50%;
  @include prefix(transform, translateY(50.1%), ms webkit spec);
  padding: 10px 0;
}

/* Global styling for headline fonts */
@mixin headline-style($font-size: $headline-font-size, $mobile-modifier: 0.8 ) {
  font-family: "Work Sans", sans-serif;;
  font-size: $font-size * 1px;
  font-weight: 700;
  font-style: normal;
  text-transform: none;
  line-height: normal;
  color: #042c33;
  display: block;
  letter-spacing: 0px;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  @include respond-to($medium-down){
    font-size: floor($font-size * $mobile-modifier) * 1px;
  }
}

/* Wrap long urls */
@mixin word-wrap {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-word;
  word-break: break-word;
}

//Flexbox
// Flexbox display
@mixin flexbox() {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}

// Inline flexbox display
@mixin inline-flexbox() {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -moz-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

// The 'flex' shorthand
// - applies to: flex items
// <positive-number>, initial, auto, or none
@mixin flex($values) {
  -webkit-box-flex: $values;
     -moz-box-flex: $values;
      -webkit-flex: $values;
      -ms-flex: $values;
          flex: $values;
}

// Flex Flow Direction
// - applies to: flex containers
// row | row-reverse | column | column-reverse
@mixin flex-direction($direction) {
  -webkit-flex-direction: $direction;
     -moz-flex-direction: $direction;
      -ms-flex-direction: $direction;
          flex-direction: $direction;
}

// Flex Line Wrapping
// - applies to: flex containers
// nowrap | wrap | wrap-reverse
@mixin flex-wrap($wrap) {
  -webkit-flex-wrap: $wrap;
     -moz-flex-wrap: $wrap;
      -ms-flex-wrap: $wrap;
          flex-wrap: $wrap;
}

// Flex Direction and Wrap
// - applies to: flex containers
// <flex-direction> || <flex-wrap>
@mixin flex-flow($flow) {
  -webkit-flex-flow: $flow;
     -moz-flex-flow: $flow;
      -ms-flex-flow: $flow;
          flex-flow: $flow;
}

// Display Order
// - applies to: flex items
// <integer>
@mixin order($val) {
  -webkit-box-ordinal-group: $val;
     -moz-box-ordinal-group: $val;
         -ms-flex-order: $val;
          -webkit-order: $val;
            order: $val;
}

// Flex grow factor
// - applies to: flex items
// <number>
@mixin flex-grow($grow) {
  -webkit-flex-grow: $grow;
     -moz-flex-grow: $grow;
      -ms-flex-grow: $grow;
          flex-grow: $grow;
}

// Flex shrink
// - applies to: flex item shrink factor
// <number>
@mixin flex-shrink($shrink) {
  -webkit-flex-shrink: $shrink;
     -moz-flex-shrink: $shrink;
      -ms-flex-shrink: $shrink;
          flex-shrink: $shrink;
}

// Flex basis
// - the initial main size of the flex item
// - applies to: flex itemsnitial main size of the flex item
// <width>
@mixin flex-basis($width) {
  -webkit-flex-basis: $width;
     -moz-flex-basis: $width;
      -ms-flex-basis: $width;
          flex-basis: $width;
}

// Axis Alignment
// - applies to: flex containers
// flex-start | flex-end | center | space-between | space-around
@mixin justify-content($justify) {
  -webkit-justify-content: $justify;
     -moz-justify-content: $justify;
      -ms-justify-content: $justify;
          justify-content: $justify;
            -ms-flex-pack: $justify;
}

// Packing Flex Lines
// - applies to: multi-line flex containers
// flex-start | flex-end | center | space-between | space-around | stretch
@mixin align-content($align) {
  -webkit-align-content: $align;
     -moz-align-content: $align;
      -ms-align-content: $align;
          align-content: $align;
}

// Cross-axis Alignment
// - applies to: flex containers
// flex-start | flex-end | center | baseline | stretch
@mixin align-items($align) {
  -webkit-align-items: $align;
     -moz-align-items: $align;
      -ms-align-items: $align;
          align-items: $align;
}

// Cross-axis Alignment
// - applies to: flex items
// auto | flex-start | flex-end | center | baseline | stretch
@mixin align-self($align) {
  -webkit-align-self: $align;
     -moz-align-self: $align;
      -ms-align-self: $align;
          align-self: $align;
}

/*================ Media Query Mixin ================*/
@mixin respond-to($media-query) {
  $breakpoint-found: false;

  @each $breakpoint in $breakpoints {
    $name: nth($breakpoint, 1);
    $declaration: nth($breakpoint, 2);

    @if $media-query == $name and $declaration {
      $breakpoint-found: true;

      @media only screen and #{$declaration} {
        @content;
      }
    }
  }

  @if $breakpoint-found == false {
    @warn 'Breakpoint "#{$media-query}" does not exist';
  }
}

/* Font smoothing */
@mixin font-smoothing($value: antialiased) {
  @if $value == antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
  @else {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: auto;
  }
}

/* #Functions
================================================== */

@function secondary-button-color($color) {
  @if (lightness($color) > 80) {
    @return #042c33; // Too light, send something darker
  } @else {
    @return $color; // Normal color
  }
}

/* #Reset
================================================== */
article,aside,details,figcaption,figure,footer,header,hgroup,nav,section,summary{display:block;}audio,canvas,video{display:inline-block;}audio:not([controls]){display:none;height:0;}[hidden]{display:none;}html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;}a:focus{outline:thin dotted;}a:active,a:hover{outline:0;}h1{font-size:2em;}abbr[title]{border-bottom:1px dotted;}b,strong{font-weight:700;}dfn{font-style:italic;}mark{background:#ff0;color:#000;}code,kbd,pre,samp{font-family:monospace, serif;font-size:1em;}pre{white-space:pre-wrap;word-wrap:break-word;}q{quotes:\201C \201D \2018 \2019;}small{font-size:80%;}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}sup{top:-.5em;}sub{bottom:-.25em;}img{border:0;}svg:not(:root){overflow:hidden;}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em;}button,input,select,textarea{font-family:inherit;font-size:100%;margin:0;}button,input{line-height:normal;}button,html input[type=button],/* 1 */
input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer;}button[disabled],input[disabled]{cursor:default;}input[type=checkbox],input[type=radio]{box-sizing:border-box;padding:0;}input[type=search]{-webkit-appearance:textfield;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;box-sizing:content-box;}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none;}textarea{overflow:auto;vertical-align:top;}table{border-collapse:collapse;border-spacing:0;}body,figure{margin:0;}legend,button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0;}

.clearfix:after {visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }

* { -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }

/* #Fonts
================================================== */@font-face {
  font-family: "Work Sans";
  font-weight: 400;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n4.1a7b2b68023505e1927302cc60a155187098ca59.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=adb674c05cfc48e9d046112809980326c1264ba2387393a5e790d968ab2a2bcb") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n4.2bd9ba3193feaaeabefe6059cf0ba7e11c41e810.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ac25f427fb75bfecc5542c932b64ae4b48db72e258fa9d4bc1b8e97c6cbc1ba0") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 700;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n7.0345f20fc1ba30e898808840fdfdbdb88635f97b.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=8606ac99b68cf8f49dbbd290e7077516312fb53b37f4916fa33b97970f5ff4ac") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n7.53ff26015a8c423e8d42b243e8855593260b9cd8.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=0dc264ad77b9efc6bed2f404875f6ad217a8962c1aa72b49d7a0ff26510bec64") format("woff");
}


  

  

  @font-face {
  font-family: "Work Sans";
  font-weight: 400;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n4.1a7b2b68023505e1927302cc60a155187098ca59.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=adb674c05cfc48e9d046112809980326c1264ba2387393a5e790d968ab2a2bcb") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n4.2bd9ba3193feaaeabefe6059cf0ba7e11c41e810.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ac25f427fb75bfecc5542c932b64ae4b48db72e258fa9d4bc1b8e97c6cbc1ba0") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 700;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n7.0345f20fc1ba30e898808840fdfdbdb88635f97b.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=8606ac99b68cf8f49dbbd290e7077516312fb53b37f4916fa33b97970f5ff4ac") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n7.53ff26015a8c423e8d42b243e8855593260b9cd8.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=0dc264ad77b9efc6bed2f404875f6ad217a8962c1aa72b49d7a0ff26510bec64") format("woff");
}


  

  

  @font-face {
  font-family: "Work Sans";
  font-weight: 700;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n7.0345f20fc1ba30e898808840fdfdbdb88635f97b.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=8606ac99b68cf8f49dbbd290e7077516312fb53b37f4916fa33b97970f5ff4ac") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n7.53ff26015a8c423e8d42b243e8855593260b9cd8.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=0dc264ad77b9efc6bed2f404875f6ad217a8962c1aa72b49d7a0ff26510bec64") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 900;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n9.50839028344665ae353a4152e0ebc5ed879fb1ef.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=556ac646bae97ae4bc33c1f52a2ac1457c299277da4d7b76d34d4a1277569f60") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n9.fcbe69f1b5d416f7c57bc71e6dec967d8b50a55b.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ca386d275c9ec41b7dbb5c434eae897152b2b46a35020a329cbd193990bb7a53") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 700;
  font-style: italic;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_i7.659fe0647f07d7c9f56635015a82d315d68c7b2a.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=b30018af956e904b5598b6a11fb8daccffb21455cabbc4589d73540ca9e2ec70") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_i7.26df823babe3ada227e71f824ca9dffbfa793b82.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=589c69458d0ae0de1f70835f59801dfdcdee9bd868ad1d1c14242d3422305df8") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 900;
  font-style: italic;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_i9.9c408dc84ec7275f8919732ac090697a95c2595a.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=c738c6dcb8f8848daea7f839e79b1fbea5aafbbb615710b19ad825eb7a99cab0") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_i9.e0e3e92d42419c5177edd061c266c37b894a8dd6.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=b3fa2e065a5cd69aa74300bf322d1d273e3f15ea38c0eb56fb758aa66720ec5d") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 300;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n3.86e59a220b99538e6d65d71e24ce660a8ee4d965.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=05e658f04256261033da17ff78b51c98fc923cb600c9e0355be4b97ed350e97f") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n3.34ec1fd22f3f6492e06c8e9cbb979146e410af63.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=012ce3bfbf4c892d631ce69e2ab9f65ee781c30eb96ddb8f2575d2dfb6406190") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 400;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n4.1a7b2b68023505e1927302cc60a155187098ca59.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=adb674c05cfc48e9d046112809980326c1264ba2387393a5e790d968ab2a2bcb") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n4.2bd9ba3193feaaeabefe6059cf0ba7e11c41e810.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ac25f427fb75bfecc5542c932b64ae4b48db72e258fa9d4bc1b8e97c6cbc1ba0") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 300;
  font-style: italic;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_i3.0053f3718225e27d210d71fce1d5b9595680817b.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=a3126fd43c439a04717960f42c479686468e270089ba8b365a88aa249a1d4359") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_i3.142ba5c619df6baab691aeab9e711ed220935706.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=1f2e21e2a321dbe5927aa10a3c0b60e13213b51e9430217a820d1f87aa783790") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 500;
  font-style: italic;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_i5.bd08672ca520961f22796fa30b8eb990cdae9e66.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=8328d5b3d07d6a3516e0da56862e5a991e5b0b3c3229839931c0155d77eed2ec") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_i5.2c821961205eeb5cf15a2c8625fcabf280db1c72.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=a4deb8e5acaa7e055a37671f26f3ed8e495a573ff5b26e380c5b87865277fdc4") format("woff");
}


  

  

  @font-face {
  font-family: "Work Sans";
  font-weight: 400;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n4.1a7b2b68023505e1927302cc60a155187098ca59.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=adb674c05cfc48e9d046112809980326c1264ba2387393a5e790d968ab2a2bcb") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n4.2bd9ba3193feaaeabefe6059cf0ba7e11c41e810.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ac25f427fb75bfecc5542c932b64ae4b48db72e258fa9d4bc1b8e97c6cbc1ba0") format("woff");
}


  @font-face {
  font-family: "Work Sans";
  font-weight: 700;
  font-style: normal;
  src: url("/cdn/fonts/twentieth_century/twentiethcentury_n7.0345f20fc1ba30e898808840fdfdbdb88635f97b.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=8606ac99b68cf8f49dbbd290e7077516312fb53b37f4916fa33b97970f5ff4ac") format("woff2"),
       url("/cdn/fonts/twentieth_century/twentiethcentury_n7.53ff26015a8c423e8d42b243e8855593260b9cd8.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=0dc264ad77b9efc6bed2f404875f6ad217a8962c1aa72b49d7a0ff26510bec64") format("woff");
}


  

  

  @font-face {
  font-family: "Avenir Next";
  font-weight: 400;
  font-style: normal;
  src: url("/cdn/fonts/avenir_next/avenirnext_n4.7fd0287595be20cd5a683102bf49d073b6abf144.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=4aac0620d45526e961b9f5c871cdd1562ad809790cacfd74ec41cd00f3439aa0") format("woff2"),
       url("/cdn/fonts/avenir_next/avenirnext_n4.a26a334a0852627a5f36b195112385b0cd700077.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=d2d84f95cdc860087fe7289e9825747e03a7cba303fe067ac486222d41233f99") format("woff");
}


  @font-face {
  font-family: "Avenir Next";
  font-weight: 700;
  font-style: normal;
  src: url("/cdn/fonts/avenir_next/avenirnext_n7.8cfc646eab1e39e2d81a26284624600ccae49d55.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=3ed057e27ad1714a26331126690797770861cdebe3b93a3783ad6402d1d6da6f") format("woff2"),
       url("/cdn/fonts/avenir_next/avenirnext_n7.25b10f8089bc87dfd8e50a7c68b433da7a04bc87.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=a1f15a73d695469620875ceb9a167439df971b1b1a1704a293026c7c76952f14") format("woff");
}


  @font-face {
  font-family: "Avenir Next";
  font-weight: 400;
  font-style: italic;
  src: url("/cdn/fonts/avenir_next/avenirnext_i4.f1583d9f457b68e44fbda187a48b4096d547d7f4.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ae2fc1dd71122d5b375d69f0aa923962dbd59282a859aaba71139748213e40dd") format("woff2"),
       url("/cdn/fonts/avenir_next/avenirnext_i4.67fb53a3e0351125941146246183577ae8d8bf23.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=ea4d27789def1fc916a2a7007b9b54514071ee5969ebe64c90dc4654d586337f") format("woff");
}


  @font-face {
  font-family: "Avenir Next";
  font-weight: 700;
  font-style: italic;
  src: url("/cdn/fonts/avenir_next/avenirnext_i7.3a67996166b5b7f1b7cc3b35490ebd6824908dc5.woff2?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=0312eaa3a7beb8e39f5f41a8f428b7ff6a6fe4df52bc24d2e44acb3cf94d291a") format("woff2"),
       url("/cdn/fonts/avenir_next/avenirnext_i7.b872875ff437f0efb4c2321d0016eaa726b649ae.woff?h1=bWFzc2V1c2VtYXNzYWdlLmNvLm56&hmac=14cdccb3c139a1b78382cc685680bc9485e326c781dfe8b06796289de8c96bac") format("woff");
}


/* #Basic styles
================================================== */
body {
  font-family: "Work Sans", sans-serif;
  font-weight: 400;
  font-size: 17px;
  text-transform: none;
  color: #042c33;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
  background-color: #eef5fa;
  
}

::-moz-selection {
  background-color: #000;
  color: #fff;
}

::selection {
  background: #FFF7B6;
  color: black;
}

abbr {
  border-bottom: 1px dotted #cccccc;
}

img[data-sizes="auto"] {
  display: block;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

//Ensures that small images are not stretched larger
.image__container {
  display: block;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
}

.socialShare {
  @include flexbox();
  @include align-items(center);
}

.socialShare__text {
  margin: 0;
  margin-right: 5px;
}

.socialButtons {
  @include flexbox();
  @include align-items(center);
  margin: 0;
  .share-btn {
    margin-left: 5px;
  }
  a,
  a:visited {
    color: #042c33;
    font-size: 18px;
    padding: 0 3px;
  }
}

/*============================================================================
  Grid - full width columns, no gutter
    - Based on CSS Wizardry grid
==============================================================================*/

.grid {
  @include clearfix();
  list-style: none;
  margin: 0;
  padding: 0;
}

.grid__item {
  float: left;
  width: 100%;

  &[class*='--push'] {
    position: relative;
  }
}

/*============================================================================
  Reversed grids allow you to structure your source in the opposite
  order to how your rendered layout will appear.
==============================================================================*/

.index-sections .shopify-section:not(.divider-section),
.draggableBlocks .draggableBlock:not(.block__divider) {
  padding-top: 40px;
  padding-bottom: 40px;
  @include respond-to($medium-down) {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.draggableBlocks .draggableBlock.block__image_with_overlay:first-child {
  padding-top: 0;
}

.index-sections .shopify-section.padding-toggle,
.draggableBlocks .draggableBlock.padding-toggle {
  padding-top: 0;
  padding-bottom: 0;
  .padding--true {
    padding-top: 40px;
    padding-bottom: 40px;
    @include respond-to($medium-down) {
      padding-top: 30px;
      padding-bottom: 30px;
    }
  }
}

//Used to remove top padding when the elements are the first section on the home page
.index-sections .padding-toggle.slideshow-section:first-child .padding--true,
.index-sections .padding-toggle.video-section:first-child .padding--true {
  padding-top: 0;
  @include respond-to($medium-down) {
    padding-top: 0;
  }
}


.grid--rev {
  direction: rtl;
  text-align: left;

  > .grid__item {
    direction: ltr;
    text-align: left;
    float: right;
  }
}

@mixin container-column-generator($breakpoint: '') {

    /* Base Grid */
    .#{$breakpoint}one                      { width: calc(#{percentage(1 / 16)} - #{$gutter});}
    .#{$breakpoint}two                     { width: calc(#{percentage(2 / 16)} - #{$gutter});}
    .#{$breakpoint}three                   { width: calc(#{percentage(3 / 16)} - #{$gutter});}
    .#{$breakpoint}four                    { width: calc(#{percentage(4 / 16)} - #{$gutter});}
    .#{$breakpoint}five                    { width: calc(#{percentage(5 / 16)} - #{$gutter});}
    .#{$breakpoint}six                     { width: calc(#{percentage(6 / 16)} - #{$gutter});}
    .#{$breakpoint}seven                   { width: calc(#{percentage(7 / 16)} - #{$gutter});}
    .#{$breakpoint}eight                   { width: calc(#{percentage(8 / 16)} - #{$gutter});}
    .#{$breakpoint}nine                    { width: calc(#{percentage(9 / 16)} - #{$gutter});}
    .#{$breakpoint}ten                     { width: calc(#{percentage(10 / 16)} - #{$gutter});}
    .#{$breakpoint}eleven                  { width: calc(#{percentage(11 / 16)} - #{$gutter});}
    .#{$breakpoint}twelve                  { width: calc(#{percentage(12 / 16)} - #{$gutter});}
    .#{$breakpoint}thirteen                { width: calc(#{percentage(13 / 16)} - #{$gutter});}
    .#{$breakpoint}fourteen                { width: calc(#{percentage(14 / 16)} - #{$gutter});}
    .#{$breakpoint}fifteen                 { width: calc(#{percentage(15 / 16)} - #{$gutter});}
    .#{$breakpoint}sixteen                 { width: calc(#{percentage(16 / 16)} - #{$gutter});}

    /** Whole */
    .#{$breakpoint}one-whole { width: calc(100% - #{$gutter}); }

    /* Halves */
    .#{$breakpoint}one-half { width: calc(#{percentage(1 / 2)} - #{$gutter}); }

    /* Thirds */
    .#{$breakpoint}one-third { width: calc(#{percentage(1 / 3)} - #{$gutter}); }
    .#{$breakpoint}two-thirds { width: calc(#{percentage(2 / 3)} - #{$gutter}); }

    /* Quarters */
    .#{$breakpoint}one-quarter { width: calc(#{percentage(1 / 4)} - #{$gutter}); }
    .#{$breakpoint}two-quarters { width: calc(#{percentage(2 / 4)} - #{$gutter}); }
    .#{$breakpoint}three-quarters { width: calc(#{percentage(3 / 4)} - #{$gutter}); }

    /* Fifths */
    .#{$breakpoint}one-fifth { width: calc(#{percentage(1 / 5)} - #{$gutter}); }
    .#{$breakpoint}two-fifths { width: calc(#{percentage(2 / 5)} - #{$gutter}); }
    .#{$breakpoint}three-fifths { width: calc(#{percentage(3 / 5)} - #{$gutter}); }
    .#{$breakpoint}four-fifths { width: calc(#{percentage(4 / 5)} - #{$gutter}); }

    /* Sixths */
    .#{$breakpoint}one-sixth { width: calc(#{percentage(1 / 6)} - #{$gutter}); }
    .#{$breakpoint}two-sixths { width: calc(#{percentage(2 / 6)} - #{$gutter}); }
    .#{$breakpoint}three-sixths { width: calc(#{percentage(3 / 6)} - #{$gutter}); }
    .#{$breakpoint}four-sixths { width: calc(#{percentage(4 / 6)} - #{$gutter}); }
    .#{$breakpoint}five-sixths { width: calc(#{percentage(5 / 6)} - #{$gutter}); }

    /* Sevenths */
    .#{$breakpoint}one-seventh { width: calc(#{percentage(1 / 7)} - #{$gutter}); }
    .#{$breakpoint}two-sevenths { width: calc(#{percentage(2 / 7)} - #{$gutter}); }
    .#{$breakpoint}three-sevenths { width: calc(#{percentage(3 / 7)} - #{$gutter}); }
    .#{$breakpoint}four-sevenths { width: calc(#{percentage(4 / 7)} - #{$gutter}); }
    .#{$breakpoint}five-sevenths { width: calc(#{percentage(5 / 7)} - #{$gutter}); }

    /* Eighths */
    .#{$breakpoint}one-eighth { width: calc(#{percentage(1 / 8)} - #{$gutter}); }
    .#{$breakpoint}two-eighths { width: calc(#{percentage(2 / 8)} - #{$gutter}); }
    .#{$breakpoint}three-eighths { width: calc(#{percentage(3 / 8)} - #{$gutter}); }
    .#{$breakpoint}four-eighths { width: calc(#{percentage(4 / 8)} - #{$gutter}); }
    .#{$breakpoint}five-eighths { width: calc(#{percentage(5 / 8)} - #{$gutter}); }
    .#{$breakpoint}six-eighths { width: calc(#{percentage(6 / 8)} - #{$gutter}); }
    .#{$breakpoint}seven-eighths { width: calc(#{percentage(7 / 8)} - #{$gutter}); }

    /* Tenths */
    .#{$breakpoint}one-tenth { width: calc(#{percentage(1 / 10)} - #{$gutter}); }
    .#{$breakpoint}two-tenths { width: calc(#{percentage(2 / 10)} - #{$gutter}); }
    .#{$breakpoint}three-tenths { width: calc(#{percentage(3 / 10)} - #{$gutter}); }
    .#{$breakpoint}four-tenths { width: calc(#{percentage(4 / 10)} - #{$gutter}); }
    .#{$breakpoint}five-tenths { width: calc(#{percentage(5 / 10)} - #{$gutter}); }
    .#{$breakpoint}six-tenths { width: calc(#{percentage(6 / 10)} - #{$gutter}); }
    .#{$breakpoint}seven-tenths { width: calc(#{percentage(7 / 10)} - #{$gutter}); }
    .#{$breakpoint}eight-tenths { width: calc(#{percentage(8 / 10)} - #{$gutter}); }
    .#{$breakpoint}nine-tenths { width: calc(#{percentage(9 / 10)} - #{$gutter}); }

    /* Twelfths */
    .#{$breakpoint}one-twelfth { width: calc(#{percentage(1 / 12)} - #{$gutter}); }
    .#{$breakpoint}two-twelfths { width: calc(#{percentage(2 / 12)} - #{$gutter}); }
    .#{$breakpoint}three-twelfths { width: calc(#{percentage(3 / 12)} - #{$gutter}); }
    .#{$breakpoint}four-twelfths { width: calc(#{percentage(4 / 12)} - #{$gutter}); }
    .#{$breakpoint}five-twelfths { width: calc(#{percentage(5 / 12)} - #{$gutter}); }
    .#{$breakpoint}six-twelfths { width: calc(#{percentage(6 / 12)} - #{$gutter}); }
    .#{$breakpoint}seven-twelfths { width: calc(#{percentage(7 / 12)} - #{$gutter}); }
    .#{$breakpoint}eight-twelfths { width: calc(#{percentage(8 / 12)} - #{$gutter}); }
    .#{$breakpoint}nine-twelfths { width: calc(#{percentage(9 / 12)} - #{$gutter}); }
    .#{$breakpoint}ten-twelfths { width: calc(#{percentage(10 / 12)} - #{$gutter}); }
    .#{$breakpoint}eleven-twelfths { width: calc(#{percentage(11 / 12)} - #{$gutter}); }

    .clearColumns {

      .#{$breakpoint}two:nth-of-type(8n+1),
      .#{$breakpoint}four:nth-of-type(4n+1),
      .#{$breakpoint}eight:nth-of-type(2n+1),
      .#{$breakpoint}one-half:nth-of-type(2n+1),
      .#{$breakpoint}one-third:nth-of-type(3n+1),
      .#{$breakpoint}one-fifth:nth-of-type(5n+1),
      .#{$breakpoint}one-sixth:nth-of-type(6n+1),
      .#{$breakpoint}one-seventh:nth-of-type(7n+1) {
        clear: both;
        @include respond-to($medium-down) {
          clear: none;
        }
      }

      .#{$breakpoint}two:nth-of-type(2n+1),
      .#{$breakpoint}four:nth-of-type(2n+1),
      .#{$breakpoint}eight:nth-of-type(2n+1),
      .#{$breakpoint}one-half:nth-of-type(2n+1),
      .#{$breakpoint}one-third:nth-of-type(2n+1),
      .#{$breakpoint}one-fifth:nth-of-type(2n+1),
      .#{$breakpoint}one-sixth:nth-of-type(2n+1),
      .#{$breakpoint}one-seventh:nth-of-type(2n+1) {
        @include respond-to($medium-down) {
          clear: both;
        }
      }
    }

    .container--uniform {

      .#{$breakpoint}two:nth-of-type(8n),
      .#{$breakpoint}four:nth-of-type(4n),
      .#{$breakpoint}eight:nth-of-type(2n) {
        @include respond-to($medium-up) {
          margin-right: 0;
        }
      }

      .#{$breakpoint}one-half:nth-of-type(2n),
      .#{$breakpoint}one-third:nth-of-type(3n),
      .#{$breakpoint}one-fifth:nth-of-type(5n),
      .#{$breakpoint}one-sixth:nth-of-type(6n),
      .#{$breakpoint}one-seventh:nth-of-type(7n) {
        @include respond-to($medium-up) {
          margin-right: 0;
        }
      }

      .#{$breakpoint}two:nth-of-type(8n+1),
      .#{$breakpoint}four:nth-of-type(4n+1),
      .#{$breakpoint}eight:nth-of-type(2n+1) {
        @include respond-to($medium-up) {
          margin-left: 0;
        }
      }

      .#{$breakpoint}one-half:nth-of-type(2n+1),
      .#{$breakpoint}one-third:nth-of-type(3n+1),
      .#{$breakpoint}one-fifth:nth-of-type(5n+1),
      .#{$breakpoint}one-sixth:nth-of-type(6n+1),
      .#{$breakpoint}one-seventh:nth-of-type(7n+1) {
        @include respond-to($medium-up) {
          margin-left: 0;
        }
      }

      .#{$breakpoint}one-whole:nth-of-type(1n+1) {
        width: calc(100% - #{$gutter});
        margin-right: calc(#{$gutter} / 2);
        margin-left: calc(#{$gutter} / 2);
      }

      .#{$breakpoint}one-half { width: calc(#{percentage(1 / 2)} - (#{$gutter} - (#{$gutter} / 2)));}
      .#{$breakpoint}one-third { width: calc(#{percentage(1 / 3)} - (#{$gutter} - (#{$gutter} / 3)));}
      .#{$breakpoint}one-fifth { width: calc(#{percentage(1 / 5)} - (#{$gutter} - (#{$gutter} / 5)));}
      .#{$breakpoint}two-fifth { width: calc(#{percentage(2 / 5)} - (#{$gutter} - (#{$gutter} / 5)));}
      .#{$breakpoint}one-sixth { width: calc(#{percentage(1 / 6)} - (#{$gutter} - (#{$gutter} / 6)));}
      .#{$breakpoint}one-seventh { width: calc(#{percentage(1 / 7)} - (#{$gutter} - (#{$gutter} / 7)));}

      .#{$breakpoint}two { width: calc(#{percentage(2 / 16)} - (#{$gutter} - (#{$gutter} / 8)));}
      .#{$breakpoint}four { width: calc(#{percentage(4 / 16)} - (#{$gutter} - (#{$gutter} / 4)));}
      .#{$breakpoint}eight { width: calc(#{percentage(8 / 16)} - (#{$gutter} / 2));}
    }

}

/*================ Build Base Grid Classes ================*/
@include container-column-generator();
@include responsive-display-helper();
@include responsive-text-align-helper();

/*============================================================================
  Generate breakpoint-specific column widths and push classes
    - Default column widths: $breakpoint-has-widths: ($small, $medium-up);
    - Default is no push classes
    - Will not work if `styles/global/grid.scss` is removed
==============================================================================*/
$breakpoint-has-widths: ($small-down, $medium-down, $large-down);
$breakpoint-has-push: ();

// /*================ Build Responsive Grid Classes ================*/
@each $breakpoint in $breakpoint-has-widths {
  @include respond-to($breakpoint) {
    @include container-column-generator('#{$breakpoint}--');
    @include responsive-display-helper('#{$breakpoint}--');
    @include responsive-text-align-helper('#{$breakpoint}--');
  }
}

// /*================ Build Grid Push Classes ================*/
@each $breakpoint in $breakpoint-has-push {
  @include respond-to($breakpoint) {
    @include grid-push-generator('#{$breakpoint}--');
  }
}

//Responsive grid - uses gutters

.container {
  position: relative;
  max-width: $site-width;
  width: calc(90% + #{$gutter});
  margin: 0 auto;
  @include respond-to($small-down){
    width: calc(100% - 40px);
  }
}

[class*="offset-by"] {
  position: relative;
  @include respond-to($small-down){
    position: static;
  }
}

.container:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

.column,
.columns {
  float: left;
  display: inline;
  margin-left: calc(#{$gutter} / 2);
  margin-right: calc(#{$gutter} / 2);
  box-sizing: border-box;
  @include respond-to($small-down) {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }
}

.flexContainer {
  @include flexbox();
}

.flexContainer:after {
  visibility: hidden;
  display: none;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

.row {
  margin-bottom: $gutter;
}

//Can be used on inner div inside container element to apply borders (that maintain the same width as columns)
.containerBorder--top::before {
  display: block;
  content: '';
  height: 0;
  width: calc(100% - #{$gutter});
  border-top: thin solid #cccccc;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  float: left;
  @include respond-to($small-down){
    width: 100%;
  }
}

.containerBorder--bottom::after {
  display: block;
  content: '';
  height: 0;
  width: calc(100% - #{$gutter});
  border-top: thin solid #cccccc;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  clear: both;
  @include respond-to($small-down){
    width: 100%;
  }
}

//Applied to container elements that need to be smaller than the $site-width
.narrowWidth--true.container {
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}

//Override the max-width on container element and stretch full screen (wide_display)
.container.fullWidth--true,
.fullWidth--true > .container {
  width: 100%;
  max-width: 100%;
}

.container.fullWidthMobile--true,
.column.fullWidthMobile--true,
.columns.fullWidthMobile--true {
  @include respond-to($small-down){
    width: 100% !important;
    max-width: 100%;
  }
}

//Styles applied only on larger screen sizes
@include respond-to($small-up){
  /* Nested Column Classes */
  .column.alpha, .columns.alpha               { margin-left: 0; }
  .column.omega, .columns.omega               { margin-right: 0; }

  /* Offsets */
  .offset-by-one                   { left: calc(#{percentage(1 / 16)});}
  .offset-by-two                   { left: calc(#{percentage(2 / 16)});}
  .offset-by-three                 { left: calc(#{percentage(3 / 16)});}
  .offset-by-four                  { left: calc(#{percentage(4 / 16)});}
  .offset-by-five                  { left: calc(#{percentage(5 / 16)});}
  .offset-by-six                   { left: calc(#{percentage(6 / 16)});}
  .offset-by-seven                 { left: calc(#{percentage(7 / 16)});}
  .offset-by-eight                 { left: calc(#{percentage(8 / 16)});}
  .offset-by-nine                  { left: calc(#{percentage(9 / 16)});}
  .offset-by-ten                   { left: calc(#{percentage(10 / 16)});}
  .offset-by-eleven                { left: calc(#{percentage(11 / 16)});}
  .offset-by-twelve                { left: calc(#{percentage(12 / 16)});}
  .offset-by-thirteen              { left: calc(#{percentage(13 / 16)});}
  .offset-by-fourteen              { left: calc(#{percentage(14 / 16)});}
  .offset-by-fifteen               { left: calc(#{percentage(15 / 16)});}
}


//Featured Image on collection page grid
.clearColumns .collection__featuredImage--true {

  .collection__featuredImage {
    margin-right: calc(#{$gutter} / 2);
    overflow: hidden;
  }

  /* Five across */

  //beside featured image
  .one-fifth.column:nth-of-type(4),
  .one-fifth.column:nth-of-type(7) {
    clear: none;
  }

  //reset the default clearing
  .one-fifth.column:nth-of-type(5n+1),
  .one-fifth.column:nth-of-type(5n) {
    clear: none;
  }

  .one-fifth.column:nth-of-type(5n+8) {
    clear: both;
  }

  .one-fifth.column:nth-of-type(5n+12) {
    clear: none;
  }

  /* Four across */

  //reset the default clearing
  .four.columns:nth-of-type(4n+1),
  .four.columns:nth-of-type(4n) {
    clear: none;
  }

  .four.columns:nth-of-type(3),
  .four.columns:nth-of-type(5) {
    clear: none;
  }

  .four.columns:nth-of-type(4n+1) {
    clear: none;
  }

  .four.columns:nth-of-type(4n+6) {
    clear: both;
  }

  //Styles for Featured Image collection thumbnails on mobile
  .thumbnail.product__thumbnail.column.columns {
    @include respond-to($small-down) {
      clear: initial;
    }
  }

  .thumbnail.product__thumbnail.column.columns:nth-of-type(2n+2) {
    @include respond-to($small-down) {
      clear: both;
    }
  }

}

/* #Vendors
================================================== */



/**
 * Featherlight  ultra slim jQuery lightbox
 * Version 1.7.11  http://noelboss.github.io/featherlight/
 *
 * Copyright 2017, Noel Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
@media all{html.with-featherlight{overflow:hidden}.featherlight{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:2147483647;text-align:center;white-space:nowrap;cursor:pointer;background:#333;background:rgba(0,0,0,0)}.featherlight:last-of-type{background:rgba(0,0,0,.8)}.featherlight:before{content:'';display:inline-block;height:100%;vertical-align:middle}.featherlight .featherlight-content{position:relative;text-align:left;vertical-align:middle;display:inline-block;overflow:auto;padding:25px 25px 0;border-bottom:25px solid transparent;margin-left:5%;margin-right:5%;max-height:95%;background:#fff;cursor:auto;white-space:normal}.featherlight .featherlight-inner{display:block}.featherlight link.featherlight-inner,.featherlight script.featherlight-inner,.featherlight style.featherlight-inner{display:none}.featherlight .featherlight-close-icon{position:absolute;z-index:9999;top:0;right:0;line-height:25px;width:25px;cursor:pointer;text-align:center;font-family:Arial,sans-serif;background:#fff;background:rgba(255,255,255,.3);color:#000;border:0;padding:0}.featherlight .featherlight-close-icon::-moz-focus-inner{border:0;padding:0}.featherlight .featherlight-image{width:100%}.featherlight-iframe .featherlight-content{border-bottom:0;padding:0;-webkit-overflow-scrolling:touch;overflow-y:scroll}.featherlight iframe{border:0}.featherlight *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}}@media only screen and (max-width:1024px){.featherlight .featherlight-content{margin-left:0;margin-right:0;max-height:98%;padding:10px 10px 0;border-bottom:10px solid transparent}}@media print{@page{size:landscape}html.with-featherlight>*>:not(.featherlight){display:none}}

/**
 * Featherlight Gallery an extension for the ultra slim jQuery lightbox
 * Version 1.7.11 http://noelboss.github.io/featherlight/
 *
 * Copyright 2017, Noel Raoul Bossart (http://www.noelboss.com)
 * MIT Licensed.
**/
@media all{.featherlight-next,.featherlight-previous{display:block;position:absolute;top:25px;right:25px;bottom:0;left:80%;cursor:pointer;-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background:rgba(0,0,0,0)}.featherlight-previous{left:25px;right:80%}.featherlight-next:hover,.featherlight-previous:hover{background:rgba(255,255,255,.25)}.featherlight-next span,.featherlight-previous span{display:none;position:absolute;top:50%;left:5%;width:82%;text-align:center;font-size:80px;line-height:80px;margin-top:-40px;text-shadow:0 0 5px #fff;color:#fff;font-style:normal;font-weight:400}.featherlight-next span{right:5%;left:auto}.featherlight-next:hover span,.featherlight-previous:hover span{display:inline-block}.featherlight-first-slide.featherlight-last-slide .featherlight-next,.featherlight-first-slide.featherlight-last-slide .featherlight-previous,.featherlight-loading .featherlight-next,.featherlight-loading .featherlight-previous,.featherlight-swipe-aware .featherlight-next,.featherlight-swipe-aware .featherlight-previous{display:none}}@media only screen and (max-device-width:1024px){.featherlight-next:hover,.featherlight-previous:hover{background:0 0}.featherlight-next span,.featherlight-previous span{display:block}}@media only screen and (max-width:1024px){.featherlight-next,.featherlight-previous{top:10px;right:10px;left:85%}.featherlight-previous{left:10px;right:85%}.featherlight-next span,.featherlight-previous span{margin-top:-30px;font-size:40px}}

/*!
 * Datepicker v0.6.3
 * https://github.com/fengyuanchen/datepicker
 *
 * Copyright (c) 2014-2017 Fengyuan Chen
 * Released under the MIT license
 *
 * Date: 2017-09-29T14:28:02.764Z
 */.datepicker-container{background-color:#fff;direction:ltr;font-size:12px;left:0;line-height:30px;position:fixed;top:0;-ms-touch-action:none;touch-action:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;width:210px;z-index:-1;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.datepicker-container:after,.datepicker-container:before{border:5px solid transparent;content:" ";display:block;height:0;position:absolute;width:0}.datepicker-dropdown{border:1px solid #ccc;box-shadow:0 3px 6px #ccc;box-sizing:content-box;position:absolute;z-index:1}.datepicker-inline{position:static}.datepicker-top-left,.datepicker-top-right{border-top-color:#39f}.datepicker-top-left:after,.datepicker-top-left:before,.datepicker-top-right:after,.datepicker-top-right:before{border-top:0;left:10px;top:-5px}.datepicker-top-left:before,.datepicker-top-right:before{border-bottom-color:#39f}.datepicker-top-left:after,.datepicker-top-right:after{border-bottom-color:#fff;top:-4px}.datepicker-bottom-left,.datepicker-bottom-right{border-bottom-color:#39f}.datepicker-bottom-left:after,.datepicker-bottom-left:before,.datepicker-bottom-right:after,.datepicker-bottom-right:before{border-bottom:0;bottom:-5px;left:10px}.datepicker-bottom-left:before,.datepicker-bottom-right:before{border-top-color:#39f}.datepicker-bottom-left:after,.datepicker-bottom-right:after{border-top-color:#fff;bottom:-4px}.datepicker-bottom-right:after,.datepicker-bottom-right:before,.datepicker-top-right:after,.datepicker-top-right:before{left:auto;right:10px}.datepicker-panel>ul{margin:0;padding:0;width:102%}.datepicker-panel>ul:after,.datepicker-panel>ul:before{content:" ";display:table}.datepicker-panel>ul:after{clear:both}.datepicker-panel>ul>li{background-color:#fff;cursor:pointer;float:left;height:30px;list-style:none;margin:0;padding:0;text-align:center;width:30px}.datepicker-panel>ul>li:hover{background-color:#e5f2ff}.datepicker-panel>ul>li.muted,.datepicker-panel>ul>li.muted:hover{color:#999}.datepicker-panel>ul>li.highlighted{background-color:#e5f2ff}.datepicker-panel>ul>li.highlighted:hover{background-color:#cce5ff}.datepicker-panel>ul>li.picked,.datepicker-panel>ul>li.picked:hover{color:#39f}.datepicker-panel>ul>li.disabled,.datepicker-panel>ul>li.disabled:hover{background-color:#fff;color:#ccc;cursor:default}.datepicker-panel>ul>li.disabled.highlighted,.datepicker-panel>ul>li.disabled:hover.highlighted{background-color:#e5f2ff}.datepicker-panel>ul>li[data-view="month next"],.datepicker-panel>ul>li[data-view="month prev"],.datepicker-panel>ul>li[data-view="year next"],.datepicker-panel>ul>li[data-view="year prev"],.datepicker-panel>ul>li[data-view="years next"],.datepicker-panel>ul>li[data-view="years prev"],.datepicker-panel>ul>li[data-view=next]{font-size:18px}.datepicker-panel>ul>li[data-view="month current"],.datepicker-panel>ul>li[data-view="year current"],.datepicker-panel>ul>li[data-view="years current"]{width:150px}.datepicker-panel>ul[data-view=months]>li,.datepicker-panel>ul[data-view=years]>li{height:52.5px;line-height:52.5px;width:52.5px}.datepicker-panel>ul[data-view=week]>li,.datepicker-panel>ul[data-view=week]>li:hover{background-color:#fff;cursor:default}.datepicker-hide{display:none}
/*# sourceMappingURL=datepicker.min.css.map */

/*! Flickity v2.0.10
http://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled{position:relative}.flickity-enabled:focus{outline:0}.flickity-viewport{overflow:hidden;position:relative;height:100%}.flickity-slider{position:absolute;width:100%;height:100%}.flickity-enabled.is-draggable{-webkit-tap-highlight-color:transparent;tap-highlight-color:transparent;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.flickity-enabled.is-draggable .flickity-viewport{cursor:move;cursor:-webkit-grab;cursor:grab}.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down{cursor:-webkit-grabbing;cursor:grabbing}.flickity-prev-next-button{position:absolute;top:50%;width:44px;height:44px;border:none;border-radius:50%;background:#fff;background:hsla(0,0%,100%,.75);cursor:pointer;-webkit-transform:translateY(-50%);transform:translateY(-50%)}.flickity-prev-next-button:hover{background:#fff}.flickity-prev-next-button:focus{outline:0;box-shadow:0 0 0 5px #09f}.flickity-prev-next-button:active{opacity:.6}.flickity-prev-next-button.previous{left:10px}.flickity-prev-next-button.next{right:10px}.flickity-rtl .flickity-prev-next-button.previous{left:auto;right:10px}.flickity-rtl .flickity-prev-next-button.next{right:auto;left:10px}.flickity-prev-next-button:disabled{opacity:.3;cursor:auto}.flickity-prev-next-button svg{position:absolute;left:20%;top:20%;width:60%;height:60%}.flickity-prev-next-button .arrow{fill:#333}.flickity-page-dots{position:absolute;width:100%;bottom:-25px;padding:0;margin:0;list-style:none;text-align:center;line-height:1}.flickity-rtl .flickity-page-dots{direction:rtl}.flickity-page-dots .dot{display:inline-block;width:10px;height:10px;margin:0 8px;background:#333;border-radius:50%;opacity:.25;cursor:pointer}.flickity-page-dots .dot.is-selected{opacity:1}

/* animate.css -http://daneden.me/animate
* Version - 3.6.0
* Licensed under the MIT license - http://opensource.org/licenses/MIT
*
* Copyright (c) 2018 Daniel Eden
*/

.animated{animation-duration:1s;animation-fill-mode:both}.animated.infinite{animation-iteration-count:infinite}.animated.hinge{animation-duration:2s}.animated.bounceIn,.animated.bounceOut,.animated.flipOutX,.animated.flipOutY{animation-duration:.75s}@keyframes bounceIn{0%,20%,40%,60%,80%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:scale3d(.3,.3,.3)}20%{transform:scale3d(1.1,1.1,1.1)}40%{transform:scale3d(.9,.9,.9)}60%{opacity:1;transform:scale3d(1.03,1.03,1.03)}80%{transform:scale3d(.97,.97,.97)}to{opacity:1;transform:scaleX(1)}}.bounceIn{animation-name:bounceIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fadeIn{animation-name:fadeIn}@keyframes fadeInDown{0%{opacity:0;transform:translate3d(0,-20px,0)}to{opacity:1;transform:none}}.fadeInDown{animation-name:fadeInDown}@keyframes fadeInLeft{0%{opacity:0;transform:translate3d(-20px,0,0)}to{opacity:1;transform:none}}.fadeInLeft{animation-name:fadeInLeft}@keyframes fadeInRight{0%{opacity:0;transform:translate3d(20px,0,0)}to{opacity:1;transform:none}}.fadeInRight{animation-name:fadeInRight}@keyframes fadeInUp{0%{opacity:0;transform:translate3d(0,20px,0)}to{opacity:1;transform:none}}.fadeInUp{animation-name:fadeInUp}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.fadeOut{animation-name:fadeOut}@keyframes fadeOutUp{0%{opacity:1}to{opacity:0;transform:translate3d(0,-100%,0)}}.fadeOutUp{animation-name:fadeOutUp}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoomOut{animation-name:zoomOut}@keyframes slideInLeft{0%{transform:translate3d(-100%,0,0);visibility:visible}to{transform:translateZ(0)}}.slideInLeft{animation-name:slideInLeft}@keyframes slideOutRight{0%{transform:translateZ(0)}to{visibility:hidden;transform:translate3d(100%,0,0)}}.slideOutRight{animation-name:slideOutRight}

.delay-0s {
  animation-delay: 0;
}
.delay-025s {
  animation-delay: .25s;
  opacity: 0;
}
.delay-05s {
  animation-delay: .5s;
  opacity: 0;
}
.delay-075s {
  animation-delay: .75s;
  opacity: 0;
}
.delay-1s {
  animation-delay: 1s;
  opacity: 0;
}

.animate_right,
.animate_left,
.animate_up,
.animate_down {
  opacity: 0;
  @include respond-to($medium-down){
    opacity: 1;
  }
}

/* #Fonts and icons
================================================== */

@font-face {
  font-family: 'artisan';
  src:  url('artisan.eot?dipe04');
  src:  url('artisan.eot?dipe04#iefix') format('embedded-opentype'),
    url('artisan.ttf?dipe04') format('truetype'),
    url('artisan.woff?dipe04') format('woff'),
    url('artisan.svg?dipe04#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'artisan' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-calendar:before {
  content: "\e900";
}
.icon-check:before {
  content: "\e901";
}
.icon-cross:before {
  content: "\e902";
}

.icon-triangle-down:before,
.icon-down-caret:before {
  content: "\e903";
}
.icon-menu:before {
  content: "\e904";
}
.icon-triangle-left:before,
.icon-left-caret:before {
  content: "\e905";
}
.icon-search:before {
  content: "\e906";
}
.icon-location-pin:before {
  content: "\e907";
}
.icon-minus:before {
  content: "\e908";
}
.icon-plus:before {
  content: "\e909";
}
.icon-right-arrow:before {
  content: "\e90a";
}
.icon-triangle-right:before,
.icon-right-caret:before {
  content: "\e90b";
}
.icon-shopping-purse:before {
  content: "\e90c";
}
.icon-shopping-basket:before {
  content: "\e90d";
}
.icon-shopping-cart:before {
  content: "\e90e";
}
.icon-mobile:before {
  content: "\e90f";
}
.icon-triangle-up:before,
.icon-up-caret:before {
  content: "\e910";
}
.icon-user:before {
  content: "\e911";
}
.icon-rss:before {
  content: "\e915";
}
.icon-share:before {
  content: "\e916";
}
.icon-behance:before {
  content: "\e91b";
}
.icon-vine:before {
  content: "\e91c";
}
.icon-houzz:before {
  content: "\e921";
}
.icon-instagram:before {
  content: "\ea92";
}
.icon-pinterest:before {
  content: "\11a69";
}
.icon-mail:before {
  content: "\11a60";
}
.icon-snapchat:before {
  content: "\11a6d";
}
.icon-dribbble:before {
  content: "\11a5f";
}
.icon-tumblr:before {
  content: "\11a6f";
}
.icon-flickr:before {
  content: "\11a62";
}
.icon-youtube:before {
  content: "\11a72";
}
.icon-linkedin:before {
  content: "\11a66";
}
.icon-vimeo:before {
  content: "\11a71";
}
.icon-facebook:before {
  content: "\11a61";
}
.icon-twitter:before {
  content: "\11a70";
}
.icon-gplus:before {
  content: "\11a63";
}

// Icon global styling
.icon-down-caret {
  font-size: 12px;
  width: 12px;
}

/* #Typography
================================================== */
.logo {
  font-family: "Work Sans", sans-serif;
  font-weight: 400;
  font-size: 19px;
  text-transform: uppercase;
    margin-top:0px;
      margin-bottom:0px;
  
}

/*  Headings  */
h1,
.h1 {
  @include headline-style($headline-font-size);
  font-weight: 700;
}

h2,.h2 {
  @include headline-style(floor($headline-font-size*0.9));
  line-height: 1.2;
  margin-bottom: 20px;
}

h3,.h3 {
  @include headline-style(floor($headline-font-size*0.8));
}

h4.h4 {
  @include headline-style(floor($headline-font-size*0.7));
}

h5,.h5 {
  @include headline-style(floor($headline-font-size*0.65));
}

h6,.h6 {
  @include headline-style(floor($headline-font-size*0.6));
}

p {
  font-style: normal;
  margin-top: 20px;
  margin-bottom: 20px;
}

sub {
  font-size: smaller;
}

em,
i {
  font-style: italic;
}

strong,
b {
  font-weight: bold;
}

small {
  font-size: smaller;
}

/*  Blockquotes  */
blockquote,
blockquote p {
  font-size: larger;
  line-height: 1.2;
  font-style: italic;
}

blockquote {
  margin: 0 0 20px;
  cite {
    display: block;
    font-size: smaller;
    &:before {
      content: "\2014 \0020";
    }
  }
}


.sectionHeader {
  text-align: center;
  padding-bottom: 20px;
  @include respond-to($medium-down) {
    padding-bottom: 5px;
  }
}

.sectionHeader__content {
  padding-top: 2px;
  padding-bottom: 2px;
}

.sectionHeader__pretext p {
  margin: 0 0 0px 0;
}

.sectionHeader__headline {
  margin: 0;
}

a.sectionHeader__link {
  color: #042c33;
}



  .sectionHeader__topFlourish,
  .sectionHeader__bottomFlourish {
    display: none;
  }

  .sectionHeader__content {
    padding: 0;
  }






.filterBackground--true {
  position: relative;
  select {
    border-color: #042c33;
  }
}

/* #Links
================================================== */
a,
a:visited {
  color: #042c33;
  text-decoration: none;
  transition: all 0.2s ease;
}

a:hover,
a:focus {
  color: #0c687a;
}

a,
button,
input,
select,
textarea,
label,
summary {
  touch-action: manipulation;
}

/* #Lists
================================================== */
ul {
  list-style: disc outside;
  &.square {
    list-style: square outside;
  }
  &.circle {
    list-style: circle outside;
  }
  &.disc {
    list-style: disc outside;
  }
  &.large li {
    line-height: 1.5;
  }
  &.none {
    list-style: none outside;
    margin-left: 0;
    padding-left: 0;
  }
  &.border {
    list-style: none outside;
    line-height: 1.5;
    li {
      border-bottom: 1px solid #cccccc;
      list-style: none outside none;
      padding: 0px 0;
      margin-bottom: 0;
    }
  }
  &.horizontal {
    list-style: none;
    padding: 0;
    margin: 0;
    display: inline-block;
    li {
      float: left;
      padding-right: $gutter / 2;
    }
  }
}

/* #Placeholders
================================================== */
$color-blankstate: lighten(#042c33, 20);
$color-blankstate-background: lighten(#042c33, 10);
$color-blankstate-background-alt: lighten(#042c33, 30);

.placeholder-svg {
  fill: $color-blankstate;
  background-color: $color-blankstate-background;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  box-sizing: border-box;
  display: block;
}

.placeholder-svg.imageWithText__image-one {
  background-color: $color-blankstate-background-alt;
}

.banner .placeholder-svg {
  min-height: 400px;
  @include respond-to($medium-down){
    min-height: 250px;
  }
}

/* #Videos
================================================== */

.product_gallery {
  .video-container > div { position: relative; }
  .video-container iframe {
    position: absolute;
    top: 0; left: 0;
    width: 100%; height: 100%;
  }
  .vimeo {
    max-width: 830px;
    margin: 0 auto;
  }
  .vimeo > div { padding-top: 56.26506%; }
  .youtube {
    max-width: 853px;
    margin: 0 auto;
  }
  .youtube > div { padding-top: 20.271981%; }
}

video {
  display: block;
  width: 100%;
  height: auto;
}

/* #Buttons
================================================== */

a.button,
.button,
button,
input[type="submit"],
input[type="reset"],
input[type="button"],
.action_button,
a.action_button,
input.action_button[type="submit"],
input.action_button[type="button"],
.shopify-payment-button__button.shopify-payment-button__button--unbranded {
  background: #2d99b2;
  color: #ffffff;
  border: thin solid #2d99b2;
  border-radius: 0;
  padding: 0 20px;
  text-align: center;
  cursor: pointer;
  min-height: 44px;
  height: 40px;
  line-height: 1.2;
  vertical-align: top;
  font-family: "Work Sans", sans-serif;
  font-weight: bold;
  font-size: 17px;
  text-transform: uppercase;
  letter-spacing: 0px;
  @include inline-flexbox();
  @include justify-content(center);
  @include align-items(center);
  transition: all 0.2s linear;
  -webkit-appearance: none;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}

.ie {
  a.button,
  .button,
  button,
  input[type="submit"],
  input[type="reset"],
  input[type="button"],
  .action_button,
  a.action_button,
  input.action_button[type="submit"],
  input.action_button[type="button"] {
    line-height: 40px;
  }
}

a.button:hover,
button:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.action_button:hover,
input.action_button[type="submit"]:hover,
input.action_button[type="button"]:hover,
.shopify-payment-button__button.shopify-payment-button__button--unbranded:hover,
.shopify-payment-button__button.shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background: #2d99b2;
  border-color: #2d99b2;
}

a.button:active,
button:active,
input[type="submit"]:active,
input[type="reset"]:active,
input[type="button"]:active,
.action_button:active,
input.action_button[type="submit"]:active,
input.action_button[type="button"]:active,
.shopify-payment-button__button.shopify-payment-button__button--unbranded:active {
  box-shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
  outline: 0;
}

.add_to_cart,
form.product_form input.add_to_cart {
  width: 100%;
  margin-bottom: 0px;
  span {
    display: block;
  }
}

input[type="submit"],
input[type="reset"],
input[type="button"],
input.action_button[type="submit"],
input.action_button[type="button"],
button.action_button {
  display: inline-block;
}

a.hoverButton {
  position: relative;
  display: inline-block;
  transition: all 0.5s;
  &::before {
    position: absolute;
    top: 100%;
    left: 0;
    overflow: hidden;
    padding: 0;
    margin-top: 3px;
    width: 0;
    display: block;
    height: 1px;
    background-color: #0c687a;
    content: '';
    transition: width 0.5s;
  }

  &:hover::before,
  &:focus::before {
	  width: 100%;
  }
}
   a.ask-expert-button, a.ask-expert-button:hover{
   	width: calc(50% - 5px);
    margin-top: 20px;
         background-color: #00f801;
    color: black;
     border:none;
   }
.textButton__buttonArrow,
.textButton__leftButtonArrow {
  transition: color 0s,
              transform 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

.textButton:hover {
  .textButton__buttonArrow {
    display: inline-block;
    @include prefix(transform, translateX(5px), ms webkit spec);
  }
}

.textButton:hover {
  .textButton__buttonArrow {
    &.move--left {
      @include prefix(transform, translateX(-5px), ms webkit spec);
    }
  }
}

.textButton:hover {
  .textButton__leftButtonArrow {
    display: inline-block;
    @include prefix(transform, translateX(-5px), ms webkit spec);
  }
}

a.secondary_button,
a.continue_button,
input.secondary_button,
input.continue_button {
  display: inline-block;
  text-align: center;
  font-size: 17px;
  font-family: "Work Sans", sans-serif;
  color: #2d99b2;
  font-weight: bold;
  background-color: transparent;
  border-radius: 0;
  border: thin solid #2d99b2;
  padding: 10px;
  &:hover {
    border-color: #2d99b2;
    color: #ffffff;
  }
}

//Shopify smart payment buttons
  .add_to_cart.action_button {
    min-height: 44px;
    margin-bottom: 0;
    overflow: hidden;
  }

  .shopify-payment-button {
    position: relative;
  }

  .shopify-payment-button button {
    line-height: 1.2;
    padding-top: 11px;
    padding-bottom: 11px;
    margin-bottom: 0;
  }

  .shopify-payment-button__button--branded svg {
    width: 200px !important; //Fix for button in modal - svg issues
  }

  .shopify-payment-button__button--branded,
  .shopify-payment-button__button--unbranded {
    overflow: hidden;
    min-height: 44px;
  }

  button.shopify-payment-button__more-options {
    color: #042c33;
    box-shadow: none;
    text-transform: none;
    font-size: 0.9rem;
    letter-spacing: 0;
    padding: 16px 0 28px;
    max-width: 80%;
    margin: 0 auto;
    position: absolute;
    top: 100%;
    left: 50%;
    @include prefix(transform, translateX(-50%), ms webkit spec);
    &:hover {
      background-color: transparent;
      border: none;
    }
  }

  .action_button.action_button--secondary {
    background-color: transparent;
    border: thin solid secondary-button-color(#2d99b2);
    color: secondary-button-color(#2d99b2);
    box-shadow: none;
    line-height: 1.2;
    padding: 10px 0;
    min-height: 44px;
  }

  .additional-checkout-button.additional-checkout-button--paypal {
    min-width: 100% !important;
  }

  .additional-checkout-button+.additional-checkout-button {
    margin-left: 0 !important;
    max-width: 100% !important;
  }

/* #Tabs
================================================== */
ul.tabs {
  display: block;
  margin: 25px 0;
  border-bottom: solid 1px #cccccc;
  border-top: 0;
  list-style: none outside;
  margin-left: 0;
  text-transform: uppercase;
  padding-left: 0;
}

ul.tabs li {
  display: inline-block;
  width: auto;
  height: 30px;
  padding: 0;
  margin-bottom: 0;
  border: 0;
  list-style: none outside;
  margin-left: 0;
  cursor: pointer;
}

ul.tabs li a {
  display: block;
  text-decoration: none;
  width: auto;
  height: 29px;
  line-height: 30px;
  margin-right: 60px;
  font-size: 13px;
  outline: none;
  @media (max-width: 960px) {
    margin-right: 30px
  }
  @include respond-to($medium-down){
    font-size: 12px;
  }
  @include respond-to($small-down){
    margin-right: 20px;
  }
}

ul.tabs li a.active {
  border-bottom: solid 3px #cccccc;
  background-color: #eef5fa;
  border-bottom: solid 3px #aaaaaa;
  height: 31px;
  position: relative;
  border-right-width: 1px;
  color: #042c33;
}

ul.tabs li:last-child a {
  margin: 0;
}

ul.tabs-content {
  padding-top: 20px;
  margin: 0;
  display: block;
  border: 0;
  padding-left: 0;
}

ul.tabs-content > li {
  display:none;
  border: 0;
}

ul.tabs-content > li.active {
  display: block;
  border: 0;
  padding-left: 0px;
}

ul.tabs-content ul {padding-left: 20px;}


/* #Forms
================================================== */

select {
  background: url(/cdn/shop/t/3/assets/select.png?v=21507735589305732571657694627) no-repeat 96% 50%;
  background-size: 12px;
  border: thin solid #cccccc;
  color: #042c33;
  -webkit-appearance: none;
  -ms-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 10px;
  border-radius: 0px;
  padding-right: 10%;
  background-color: #eef5fa;
  outline: none;
  color: #042c33;
  &::-ms-expand {
    display: none;
  }
}

input  {
  border-radius: 0;
  display: block;
  min-height: 44px;
  padding: 0 10px;
  margin: 0;
  line-height: 22px;
  border: thin solid #042c33;
  outline: none;
  background-color: #eef5fa;
  color: #042c33;
  margin-bottom: 15px;
  -webkit-appearance: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

input::-webkit-input-placeholder {
  color: #042c33;
}
input:-moz-placeholder { /* Firefox 18- */
  color: #042c33;
}
input::-moz-placeholder {  /* Firefox 19+ */
  color: #042c33;
}
input:-ms-input-placeholder {
  color: #042c33;
}

input[type="checkbox"] {
  -webkit-appearance: checkbox;
  display: inline-block;
  width: auto;
  background-color: transparent;
  min-height: 0;
}

input[type="radio"] {
  -webkit-appearance: radio;
  display: inline-block;
  width: auto;
}

input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type=text]::-ms-clear {  display: none; width : 0; height: 0; }
input[type=text]::-ms-reveal {  display: none; width : 0; height: 0; }
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration { display: none; }
input[type=number] {
  -moz-appearance:textfield;
}

textarea {
  background-color: #eef5fa;
  border-radius: 0;
  color: #042c33;
  -webkit-appearance: none;
}

.has-float-label {
  @include float-label-container;

  @include float-label;

  input, select {
    @include float-label-input;
    width: 100%;
    font-size: inherit;
    padding-top: 2px;
    padding-left: 0px;
    margin-bottom: 2px;
    border: 0;
    border-radius: 0;
    border-bottom: 1px solid #cccccc;

    @include float-label-scaled {
      top: 5px;
    }

    &:focus {
      outline: none;
      border-color: rgba(#cccccc,.5);
    }
    &:not(:placeholder-shown) {
      &:focus {
        & ~ label {
          font-size: 75%;
        }
      }
      & ~ label {
        font-size: 100%;
      }
    }
  }

}

.contactBlock {
  margin: 25px 0 20px;
  input,
  select,
  label,
  li {
    color: #042c33;
  }
  input,
  select,
  textarea {
    background-color: #eef5fa;
  }
}

.contactBlock__Datepicker {
  input {
    font-size: 1rem;
    width: 100%;
    border: transparent 1px solid;
    border-bottom: 1px solid #cccccc;
  }
}

.contactBlock__Checkbox {
  ul {
    list-style: none;
    margin: 0;
    padding: 5px 10px;
    input {
      margin-right: 10px;
    }
    li:first-child {
      margin-top: 15px;
    }
  }
}


.contactBlock__Dropdown {
  select {
    font-size: 1rem;
    width: 100%;
    border: transparent 1px solid;
    border-bottom: 1px solid #cccccc;
    padding-left: 0;
  }
}

.contactBlock__Radio li,
.contactBlock__Checkbox li {
  input {
    margin-top: 5px;
    margin-bottom: 0;
    vertical-align: top;
    min-height: 0;
  }
  label {
    display: inline-block;
    width: 85%;
  }
}

.contactBlock__Radio {
  ul {
    list-style: none;
    margin: 0;
    padding: 5px 10px;
    input {
      margin-right: 10px;
      min-height: auto;
    }
    span {
      height: 35px;
      display: inline-block;
    }
    li:first-child {
      margin-top: 15px;
    }
  }
}

.contactBlock__Textarea {
  textarea {
    margin-top: 5px;
    padding: 20px;
    border: thin solid #cccccc;
    width: 100%;
    &:placeholder {
      color: #042c33;
      display: block;
    }
  }
}

.contactBlock input {
  min-height: 34px;
}

.product_form--dropdown {
  .selector-wrapper, {
    display: inline-block;
    margin-bottom: -1px;
    max-width: 100%;
    @include respond-to($large-down) {
      width: 100% !important; //used to overwrite JS width
    }
  }
  .productForm__select {
    margin-bottom: 20px;
    &.multiple-options {
      max-width: 100%;
      overflow: hidden;
      width: 100%;
      @include respond-to($large-down) {
        width: 100%;
      }
      .selector-wrapper {
        @include inline-flexbox();
      }
      select {
        position: relative;
        @include flex-grow(1);
      }
    }

    select {
      border: 0;
      background-color: rgba(0,0,0,0.05);
      background-size: 12px;
      line-height: 1.5;
      background-position: calc(100% - 10px);
      padding: 10px 50px 10px 10px;
      margin-bottom: 1px;
      max-width: 100%;
      min-height: 48px;
      white-space: normal;
      width: calc(100% - 100px);
      @include respond-to($medium-down) {
        @include flex-grow(1);
      }
      @include respond-to($large-down) {
        width: 100% !important; //used to overwrite JS width
      }
    }
    label {
      border: 0;
      background-color: rgba(0,0,0,0.05);
      padding: 12px 0 10px 10px;
      line-height: 1.5;
      font-weight: bold;
      display: inline-block;
      min-width: 100px;
      min-height: 48px;
      word-wrap: break-word;
    }
    label::after {
      content: '-';
      margin-left: 10px;
    }
  }

  .multiple-options {
    .selector-wrapper {
      margin-bottom: 0.5em;
      clear: both;
      float: left;
    }
  }

  .single-option {
    width: 100%;
    @include flexbox();
    .selector-wrapper,
    select {
      @include respond-to($large-up) {
        min-width: 70%;
      }
    }
  }
}

.notify_form {
  border: thin solid #042c33;
  padding: 20px;
  margin: 20px 0 0 0;
  &.signed-in-notify {
    display: inline-block;
    .action_button {
      margin-top: 15px;
      width: auto;
    }
  }
  .message { display: none; }
  .notify_email {
    width: calc(65% - 20px);
    margin-right: 10px;
    min-height: 44px;
    @include respond-to($medium-down) {
      margin-bottom: 0;
    }
  }
  .action_button {
    margin-top: 10px;
    width: 35%;
  }
  .notify_email,
  .contact_form .action_button {
    margin-top: 10px;
    display: inline-block;
    @include respond-to($medium-down) {
      width: 100%;
    }
  }
  .notify-form__label {
    display: block;
  }
}

//iOS zoom fix
@media screen and (-webkit-min-device-pixel-ratio:0) and (max-device-width:1024px) {
  select,
  textarea,
  input:focus {
    font-size: 16px;
  }
}

/* #Images
================================================== */

/* Lazyloading styles */

.lazyload--fade-in {
  -webkit-backface-visibility: hidden;
  -webkit-transform: translate3d(0,0,0);
  -webkit-filter: blur(2px);
  filter: blur(2px);
  transform: translate3d(0,0,0);
  transition: filter 200ms, -webkit-filter 200ms;
}

.lazyload--fade-in.lazyloaded {
  -webkit-filter: blur(0);
  filter: blur(0);
}

img[data-sizes="auto"] {
  display: block;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}

//Ensures that small images are not stretched larger
.image__container {
  display: block;
  margin-left: auto;
  margin-right: auto;
}


/* #Misc
================================================== */

.shapesOverflow { overflow: hidden; }
.allow-clickthrough { pointer-events: none !important; }
.hidden {
  display: none;
  opacity: 0;
  visibility: hidden;
}
.relative { position: relative; }
.right { float:right; position: relative; }
.left { float: left; }
.inline { display: inline; }
.center { text-align: center; }
.relative { position: relative; }
.align_right { text-align: right }
.align_left { text-align: left; }
.textAlign--center { text-align: center; }
.textAlign--left { text-align: left; }
.textAlign--right { text-align: right; }
.visuallyhidden {
  @include visually-hidden();
}

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

body.blocked-scroll {
  position: fixed;
  overflow: hidden;
  height: 100%;
  width: 100%;
  top: 0;
}

.overflow--hidden {
  overflow: hidden;
}

.disabled {
  pointer-events: none;
  opacity: 0.5;
}

.fallbackImage {
  max-width: 100%;
}

.svgShape {
  display: inline-block;
  position: relative;
  width: 100%;
  vertical-align: middle;
  overflow: hidden;
  svg {
    display: inline-block;
  }
}

.shape--star {
  -webkit-clip-path: polygon(50% 0%, 68% 26%, 98% 35%, 78% 61%, 79% 91%, 49% 78%, 21% 91%, 22% 61%, 2% 35%, 31% 26%);
  clip-path: polygon(50% 0%, 68% 26%, 98% 35%, 78% 61%, 79% 91%, 49% 78%, 21% 91%, 22% 61%, 2% 35%, 31% 26%);
}
.shape--circle {
  border-radius: 50%;
}
.shape--hexagon {
  -webkit-clip-path: polygon(50% 0%, 95% 25%, 95% 75%, 50% 100%, 5% 75%, 5% 25%);
  clip-path: polygon(50% 0%, 95% 25%, 95% 75%, 50% 100%, 5% 75%, 5% 25%);
}

.shopify-product-reviews-badge {
  height: 34px;
  display: block;
}

.collection__featuredImage .shopify-product-reviews-badge {
  height: 46px;
  display: block;
}

.spr-badge {
  padding: 5px 0;
}

.thumbnail .spr-badge-caption {
  display: none;
}

.smallScreen--hide {
  display: block !important; //to ensure overriding styling
  @include respond-to($medium-down) {
    display: none !important; //to ensure overriding styling
  }
}

.smallScreen--show {
  display: none !important; //to ensure overriding styling
  @include respond-to($medium-down) {
    display: block !important; //to ensure overriding styling
  }
}

//Global slider button styling
.flickity-enabled {
  &:hover {
    .flickity-prev-next-button {
      opacity: 1;
    }
  }
}

.flickity-page-dots {
  display: none;
  position: static;
  margin-top: 20px;
  @include respond-to($small-down) {
    display: block;
    height: 10px;
    line-height: 10px;
  }
}

.slideshow .flickity-page-dots {
  @include respond-to($small) {
    display: block;
  }
}

button.flickity-prev-next-button {
  opacity: 0.5;
  border-radius: 0;
  border: 0;
  background: transparent;
  @include respond-to($medium-down) {
    display: none;
  }
  &:hover {
    border-color: transparent;
    border: 0;
  }
  &:active {
    box-shadow: none;
  }
  &.next { right: 10px; }
  &.previous { left: 10px; }
}

button.flickity-prev-next-button.next {
  &:hover {
    right: 5px;
  }
}

button.flickity-prev-next-button.previous {
  &:hover {
    left: 5px;
  }
}

//To ensure the Shadow DOM content doesn't appear in Safari
input::-webkit-contacts-auto-fill-button {
  visibility: hidden;
  display: none ;
  position: absolute;
  right: 0;
}

/* #Lightbox
================================================== */

.featherlightbox {
  display: none;
}

.featherlight-content {
  transition: all 0.3s linear;
}

.featherlight .featherlight-close-icon {
  min-height: auto;
  height: auto;
}

.featherlight-next { right: 17px; }
.featherlight-previous { left: 17px; }
.featherlight-next,
.featherlight-previous {
  &:hover {
    background: transparent;
  }
  span {
    opacity: 0.5;
    padding: 15px 0;
    color: #222;
    width: 60px;
    font-size: 16px;
    line-height: initial;
  }
}

.featherlight-next span,
.featherlight-previous span {
  font-family: 'artisan' !important;
  text-shadow: none;
  background-color: transparent;
}

.featherlight-previous span {
  -webkit-transform: rotate(-180deg);
  -moz-transform: rotate(-180deg);
  -ms-transform: rotate(-180deg);
  -o-transform: rotate(-180deg);
  background-color: transparent;
}

.featherlight-previous span:before {
  content: '\e90a';
  font-size: 40px;
}

.featherlight-next span:before {
  content: '\e90a';
  font-size: 40px;
}

/* #Header
================================================== */

.announcementBar {
  width: 100%;
  top: 0;
  left: 0;
  position: relative;
  padding: 5px 0;
  &.show--true {
    display: block;
  }
  &.show--false {
    display: none;
  }
}

.announcementBar__container p {
  padding: 5px 0;
  font-size:14px;
  fomt:bold;
  margin: 0;
  @include respond-to($medium-down){
    font-size: calc(17px * 0.8);
  }
}

.announcementBar__close {
  position: absolute;
  right: 10px;
  top: 0px;
  margin: 0;
  cursor: pointer;
  padding: 5px 0;
  opacity: 0.5;
  &:hover {
    opacity: 1;
  }
}

.topBar {
  @include respond-to($medium-down){
    width: 100%;
  }
}

/* Top bar */
.topBar,
.mainBar {
  @include flexbox();
  @include justify-content(center);
}

.topBar__container {
  @include justify-content(space-between);
  @include align-items(center);
  border-bottom: 1px solid #cccccc;
  width: 100%;
  padding-top: 20px;
  font-family: "Work Sans", sans-serif;
  font-weight: 300;
  font-size: 12px;
  letter-spacing: 0px;

  @include respond-to($medium-down){
    border-bottom: 1px solid transparent;
    padding: 0;
    margin: 0;
    font-size: 100%;
  }

  .icon-search,
  .cart-icon {
    padding: 10px;
    display: block;
  }

  [class^="icon-"], [class*=" icon-"] {
    font-size: 21px;
    vertical-align: top;
    color: #042c33;
  }
  .mini_cart.active_link {
    .cart-icon {
      background-color: #042c33;
      color: #eef5fa;
      transition: all 0.3s ease;
    }
    .topBar__cartCount {
      transition: all 0.3s ease;
      background-color: #042c33;
    }
  }
}

.topBar__container p {
  margin-top: 2px;
  margin-bottom: 2px;
}

.topBar__information {
  @include flexbox();
  @include flex-basis(0);
  @include flex-shrink(3);
  @include flex-grow(3);
  @include align-items(center);
  @include respond-to($medium-down){
    display: none;
  }
  .spacer { padding: 0 10px; }
  a,
  p {
    color: #042c33;
    display: inline-block;
  }
}

.topBar__menu {
  .icon-menu {
    padding-left: 14px;
  }
}

.topBar__phoneNumber {
  @include flex(1 0 auto);
  a {
    color: #042c33;
  }
  .icon-phone,
  .icon-mobile {
    margin: 0px 8px;
  }
}

.topBar__details {
  @include flexbox();
  @include flex-basis(0);
  @include flex-shrink(1);
  @include flex-grow(1);
  @include align-items(center);
  @include justify-content(flex-end);
  position: relative;
  list-style-type: none;
  @include respond-to($medium-down){
    @include justify-content(space-between);
    @include align-items(center);
    padding-top: 0px;
  }
  .topBar__account {
    margin-right: 25px;
    a p {
      display: inline-block;
      margin: 0;
      color: #042c33;
    }
  }
}

.topBar__search {
  margin-right: 10px;
  a:focus {
    span { outline: thin dotted; }
  }
  @include respond-to($medium-down) {
    display: none;
  }
  &.active_link {
    .icon-search {
      background-color: #042c33;
      color: #eef5fa
    }
    .search__dropdown {
      display: block;
    }
  }
  form {
    width: 100%;
    padding: 0 0 10px;
    input {
      font-size: 17px;
      border-bottom: 1px solid #cccccc;
      display: inline-block;
      width: calc(70% - 20px);
      margin: 0px 0px 0;
      padding: 7px 0;
      //IE only css for alignment purposes
      @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
        margin-top: 30px;
      }
    }
    .search__button {
      display: inline-block;
      width: calc(30% - 10px);
      margin: 0px 0 0;
    }
  }
}

.search__dropdown {
  display: none;
  width: 500px;
  max-width: 500px;
  right: 0;
  top: 100%;
  box-shadow: inset 0px 0px 0 1px #cccccc;
  border-top: 5px solid #042c33;
  background-color: #eef5fa;
  z-index: 99;
  position: absolute;
  padding: 10px;
  &.animated {
    animation-duration: 0.5s
  }
}

/* Header search */
.search__input {
  border: thin solid transparent;
  background-color: #eef5fa;
  padding-left: 5px;
  margin-bottom: 0;
  display: inline-block;
  width: auto;
  height: auto;
  min-height: auto;
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    height: 23px;
  }
}

.search__button {
  display: inline-block;
  svg {
    fill: #042c33;
  }
}

.topBar__logo--mobile {
  display: none;
  font-weight: 400;
  font-family: "Work Sans", sans-serif;
  @include respond-to($medium-down){
    display: block;
    img {
      max-height: 95px;
      margin-top:0px;
      margin-bottom:0px;
    }
  }
}

.topBar__cartWrapper {
  position: relative;
  [class^="icon-"] {
    font-size: 30px;
  }
  .mini_cart.active_link ~ .topBar__miniCart {
    @include flexbox();
  }
  @include respond-to($medium-down) {
    position: static;
  }
}

.topBar__cart {
  display: block;
  position: relative;
}

//MiniCart
.topBar__miniCart {
  font-size: 17px;
  width: 500px;
  max-width: 500px;
  right: 0;
  top: 100%;
  box-shadow: inset 0px 0px 0 1px #cccccc;
  border-top: 5px solid #042c33;
  background-color: #eef5fa;
  z-index: 99;
  position: absolute;
  padding: 0;
  font-weight: initial;
  @include flexbox();
  @include align-items(center);
  @include justify-content(center);
  &.animated {
    animation-duration: 0.5s
  }
  .mini-cart-form {
    width: 100%;
  }
  @include respond-to($medium-down) {
    max-width: 100%;
    width: 100%;
  }
  .empty_cart {
    text-align: center;
  }
  ul {
    list-style: none;
    padding-left: 0;
    margin: 0;
  }
}

//Hide initially
.topBar__miniCart {
  display: none;
}

.miniCart__empty p {
  margin: 20px;
}

.miniCart__item {
  border-bottom: 1px solid #cccccc;
  margin: 0;
  padding: 10px 20px;
  @include flexbox();
  @include align-items(center);
  @include justify-content(space-between);
}

.miniCart__image {
  width: 25%;
  img {
    display: block;
    width: 100%;
    height: 90px;
    @include object-fit(contain);
  }
}

.miniCart__itemDetails {
  width: 65%;
  @include flexbox();
  @include justify-content(space-between);
  @include align-items(center);
  padding: 0 20px;
  @include respond-to($medium-down) {
    display: block;
  }
}

.miniCart__price {
  padding-left: 20px;
  @include respond-to($medium-down) {
    padding-left: 0;
  }
}

.miniCart__delete {
  width: 10%;
}

.miniCart__removeBtn {
  cursor: pointer;
  line-height: 0;
  color: #cccccc;
  [class^="icon-"] {
    font-size: 13px;
    padding: 6px;
    border: thin solid #cccccc;
    border-radius: 50%;
    vertical-align: middle;
  }
}

.miniCart__details {
  padding: 20px;
}

.miniCart__buttons {
  margin-top: 20px;
  overflow: hidden;
  @include flexbox();
  @include justify-content(space-between);
  br {
    visibility: hidden;
  }
  a.secondary_button,
  input.action_button {
    width: calc(50% - 10px);
    transition: all 0.2s ease;
    text-transform: uppercase;
    margin-bottom: 0;
    line-height: inherit;
  }
}

a.miniCart__goToCart {
  width: calc(50% - 10px);
  transition: all 0.2s ease;
  text-transform: uppercase;
  margin-bottom: 0;
  @include respond-to($small-down) {
    width: 100%;
  }
}

.miniCart__savings span {
  color: #e85e63;
  &.money {
    padding-left: 10px;
  }
}

.miniCart__subtotal .subtotal__money {
  padding-left: 10px;
}

.miniCart__orderNotes {
  margin-top: 20px;
  width: 100%;
  padding: 10px;
  border: thin solid #cccccc;
  background-color: #eef5fa;
}

.miniCart__tos {
  margin-top: 20px;
  input {
    margin-bottom: 0;
  }
  .tos_label {
    display: inline-block;
    vertical-align: middle;
    padding-left: 5px;
  }
  .tos_icon {
    vertical-align: middle;
  }
}

.miniCart__text {
  margin-top: 20px;
}

.miniCart__warningBox {
  margin-top: 20px;
}

// Cart icon count
.topBar__cartCount {
  position: absolute;
  @include flexbox();
  @include align-items(center);
  @include justify-content(center);
  background-color: #042c33;
  color: #eef5fa;
  min-width: 1em;
  min-height: 1em;
  border-radius: 50%;
  vertical-align: middle;
  padding: 5px;
  box-sizing: content-box;
  line-height: 0;
  bottom: 43%;
  right: 53%;
  font-size: 10px;
}

.topBar__cartCount:before {
  content:'';
  float: left;
  width: auto;
  padding-bottom: 100%;
}

/* Main bar */
.mainBar {
  padding-top: 10px;
  padding-bottom: 10px;
  @include respond-to($medium-down){
    display: none;
  }
}

a.mainBar__logo {
  outline: 0;
  font-size: 19px;
  font-weight: 400;
  font-family: "Work Sans", sans-serif;
  img {
    display: block;
  }
}

.mainBar__container {
  @include justify-content(space-between);
  width: 100%;
}

.mainBar__container.overflow--hidden .mainMenu__submenu {
  opacity: 0;
}

.mainBar__container:not(.overflow--hidden) .mainMenu__submenu {
  opacity: 0;
}

.mainBar__container.vertical__top {
  @include align-items(flex-start);
}

.mainBar__container.vertical__middle {
  @include align-items(center);
}

.mainBar__container.vertical__bottom {
  @include align-items(flex-end);
}

.mainBar__siteName {
  @include headline-style($headline-font-size);
  font-weight: normal;
  margin: 0;
  line-height: 1;
  h1,
  .h1 {
    text-transform: uppercase;
    margin: 0;
  }
}

/* Currency converter */

.mobileMenu__currencyConverter select {
  background-size: 14px;
  background-position: 95% 50%;
  color: #042c33;
  margin: 0;
  padding: 8px 10px;
  width: 100%;
  @include respond-to($small) {
    background-position: 100% 50%;
    width: calc(100% - 40px);
  }
}

.currencies {
  background-color: transparent;
  background-position: 100% 50%;
  border: 0;
  margin-right: 25px;
  padding-right: 17px;
}

/* #Menu
================================================== */

.mainBar__siteName {
  @include flex-basis(auto);
  max-width: 300px;
  padding: $gutter / 20;
  h1 {
    margin: 0;
    letter-spacing: 0px;
    margin-bottom:0px;
    margin-top:0px;

  }
}

.mainBar__mainMenu {
  @include flexbox();
  @include align-items(center);
  @include flex-wrap(wrap);
  max-width: 90%;
  &.menuPosition--left {
    @include justify-content(flex-start);
    .mainMenu {
      @include justify-content(left);
    }
  }
  &.menuPosition--center {
    @include justify-content(center);
  }
  &.menuPosition--right {
    @include justify-content(flex-end);
  }
}

.mainMenu {
  font-family: "Work Sans", sans-serif;
  font-weight: 300;
  font-size: 16px;
  text-transform: none;
  letter-spacing: 0px;
  @include flexbox();
  @include justify-content(flex-end);
  @include flex-wrap(wrap);
  list-style-type: none;
  padding-left: 0;
  margin: 0;
  z-index: 98;
  //IE fix for SVG icons
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .dropdown {
      height: 30px;
      position: relative;
      padding-right: 10px;
      span.mainMenu__downArrow {
        position: absolute;
        top: 12px;
        div {
          height: 10px;
        }
      }
      .sublink {
        span.mainMenu__downArrow {
          top: 5px;
        }
      }
    }
  }
  .mainMenu__link .icon-down-caret { padding-left: 5px; }
  ul { width: 250px; }
  li {
    position: relative;
    margin: 0 5px;
    &.dropdown_left {
      ul {
        right: 0;
        left: auto;
        ul {
          right: 225px;
          left: auto;
        }
      }
    }
  }
  a {
    color: #042c33;
    display: block;
    padding: 15px 10px;
    white-space: normal;
    word-wrap: break-word;
    cursor: pointer;
  }
  @include respond-to($medium-down){
    display: none;
    @include flex-direction(column);
    @include justify-content(flex-start);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    overflow: scroll;
    background-color: #eef5fa;
    z-index: 2000;
  }
}

.mainMenu__downArrow {
  width: 12px;
  height: 100%;
  display: inline-block;
  position: relative;
  svg {
    stroke: #042c33;
    stroke-width: 5;
    fill: none;
  }
}

.mainMenu li:last-child {
  margin-right: 0;
}

.mainMenu a.active {
  color: #042c33;
}

.mainMenu li:hover,
.mainMenu li.show-menu {
  > a {
    color: #042c33;
    span {
      color: #042c33;
    }
  }
}

.mainMenu li:focus-within {
  > a {
    color: #042c33;
    svg {
      fill: #042c33;
      stroke: #042c33;
      stroke-width: 10;
    }
  }
}

.mainMenu li:hover .mainMenu__submenu,
.mainMenu li:active .mainMenu__submenu,
.mainMenu li.show-menu .mainMenu__submenu {
  transition: opacity 0.3s ease-in;
  opacity: 1;
  pointer-events: all;
  z-index: 2000;
}

.mainMenu li:focus-within .mainMenu__submenu {
  transition: opacity 0.3s ease-in;
  opacity: 1;
  pointer-events: all;
  z-index: 2000;
}

.mainMenu__submenu {
  transition: opacity 0.3s 0.15s ease-in;
  background-color: #eef5fa;
  box-shadow: 0px -5px 0 0 #042c33;
  border: thin solid #cccccc;
  border-top: none;
  position: absolute;
  left: 0;
  padding: 0;
  margin: 0;
  text-align: left;
  z-index: 500;
  opacity: 0;
  pointer-events: none;
}

.mainMenu__submenu li {
  @include flexbox();
  @include justify-content(space-between);
  @include align-items(stretch);
  @include flex-wrap(wrap);
  width: 100%;
  white-space: nowrap;
  margin: 0;
  &:hover > a,
  &.show-menu {
    background-color: rgba(4, 44, 51, 0.04);
  }
  &:focus-within > a {
    background-color: rgba(4, 44, 51, 0.04);
  }
  &:hover,
  &.show-menu {
    background-color: rgba(4, 44, 51, 0.08);
    .icon-down-caret {
      background-color: rgba(4, 44, 51, 0.16);
    }
  }
  &:focus-within > .icon-down-caret {
    background-color: rgba(4, 44, 51, 0.16);
  }
}

.mainMenu__submenu a {
  padding: 15px 20px;
  white-space: normal;
  word-wrap: break-word;
  width: 100%;
  transition: all 0s;
}

.sub-menu > a {
  width: calc(100% - 48px);
  @include respond-to($medium-down) {
    width: calc(100% - 72px);
  }
}

.mainMenu__submenu li .icon-plus {
  @include flexbox();
  @include align-items(center);
  @include justify-content(center);
  padding: 15px 0;
  width: 48px;
  text-align: center;
  cursor: pointer;
  font-size: 1rem;
  &:hover {
    color: #042c33;
  }
  &:before {
    height: 16px;
    width: 16px;
  }
}

.mainMenu__submenu input[type="checkbox"] {
  display: none;
}

.mainMenu__submenu input[type="checkbox"]:checked {
  ~ .mainMenu__submenu__submenu {
    max-height: 500px;
  }
  ~ .icon-plus {
    background-color: rgba(4, 44, 51, 0.16);
    &:before {
      content: "\e908";
    }
  }
  + a {
    background-color: rgba(4, 44, 51, 0.08);
  }
}

.mainMenu__submenu__submenu {
  background-color: rgba(4, 44, 51, 0.04);
  padding: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.8s linear;
}

.sub-menu.show-menu .mainMenu__submenu__submenu {
  max-height: 500px;
}


/* ===== Mobile Menu ===== */

.mobileMenu__overlay {
  .h2 {
    font-size: 20px;
    margin: 15px 0;
  }
}

.mobileMenu__submenu li {
  @include flexbox();
  @include justify-content(space-between);
  @include align-items(stretch);
  @include flex-wrap(wrap);
  width: 100%;
  white-space: nowrap;
  margin: 0;
}

.mobileMenu__submenu li .icon-plus {
  padding: 15px 30px;
  text-align: center;
  cursor: pointer;
  font-size: 12px;
  @include respond-to($small-down) {
    width: 22px;
    padding: 15px 0;
  }
  &:before {
    content: "\e909";
  }
  &:hover,
  &.show-menu {
    color: #042c33;
  }
  &:focus-within {
    color: #042c33;
  }
}

.mobileMenu__submenu {
  display: none;
  a { transition: all 0s; }
}

.mobileMenu__submenu__submenu {
  max-height: 0;
  overflow: hidden;
  padding-left: 20px;
  transition: max-height 0.8s linear;
}

.mobileMenu__submenu input[type="checkbox"] {
  display: none;
}

.mobileMenu__submenu input[type="checkbox"]:checked {
  ~ .mobileMenu__submenu__submenu {
    max-height: 500px;
  }
  ~ .icon-plus:before {
    content: "\e908";
  }
}

.mobileMenu__close {
  position: fixed;
  top: 0;
  right: 0;
  cursor: pointer;
  padding: 15px;
}

.mobileMenu__social {
  ul {
    padding-left: 0;
    list-style: none;
    li {
      display: inline-block;
      padding: 0 5px;
    }
  }
}

.mobileMenu__overlay {
  transition: ease-in-out 0.2s all;
  overflow-y: scroll;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  background-color:rgba(238, 245, 250, 0.95);
  z-index: 100;
  @include respond-to($medium-up) {
    display: none;
  }
  &.is-active {
    .mobileMenu__close {
      transition: ease-in-out 1s all;
      opacity: 1;
      visibility: visible;
    }
  }
  &.is-inactive {
    .mobileMenu__close {
      transition: ease-in-out 0s all;
      opacity: 0;
      visibility: hidden;
    }
  }

  @include respond-to($medium-up){
    display: none;
  }
}

.mobileMenu__wrapper {
  width: 80%;
  margin: 80px auto 0;
  .search-wrapper {
    position: relative;
    .mobileMenu__search {
      width: 100%;
      padding: 5px 10px;
    }
    .search_button {
      position: absolute;
      right: -5px;
      top: 0px;
      font-size: 100%;
      background: transparent;
      border: 0;
      color: #042c33;
    }
  }
}

.mobileMenu__list {
  list-style: none;
  padding-left: 0;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  font-size: 18px;
  li a {
    display: block;
    clear: both;
    padding: 10px 15px;
    white-space: normal;
  }
  ul {
    list-style: none;
  }
}

.mobileMenu__submenu {
  padding: 10px;
  font-size: 16px;
  li a.parent-link--true:hover {
    color: #042c33;
    font-weight: bold;
  }
  li a.parent-link--true:focus-within {
    color: #042c33;
    font-weight: bold;
  }
}

.mobileMenu__list .parent-link--false {
  &.active .icon-down-caret {
    color: #042c33;
    &:before {
      content: '\e910';
    }
  }
}

.mobileMenu__list .icon-down-caret {
  cursor: pointer;
  float: right;
  padding-top: 8px;
  text-align: center;
  &.active {
    color: #042c33;
    &:before {
      content: '\e910';
    }
  }
  @include respond-to($small-up) {
    padding: 10px 38px;
  }
}

.mobileMenu__sub-submenu {
  font-size: 14px;
}

// Used for keypress
.focus-visible {
  visibility: visible;
  opacity: 1;
}

/* #Pagination
================================================== */

.paginate { text-align: center; }

.paginate .page a,
.paginate .current,
a.tag {
  color: #042c33;
  border: solid 1px #042c33;
  margin: 10px 5px;
  padding: 0.5rem 1rem;
  display: inline-block;
  transition: all 0.3s ease-in-out;
  &:hover {
    border: solid 1px #0c687a;
    color: #0c687a;
  }
}

.paginate .current {
  color: #eef5fa;
  background-color: #042c33;
  border: solid 1px #042c33;
  &:hover {
    color: #eef5fa;
    background-color: #042c33;
    border: solid 1px #042c33;
  }
}

.paginate {
  .page, .deco {
    @include respond-to($medium-down) {
      display: none;
    }
  }
}

.paginate .next,
.paginate .prev {
  display: inline-block;
  margin: 10px 0;
  padding: 0.5rem 1rem;
  transition: all 0.3s ease-in-out;
}

/* #Color swatches
================================================== */



/* #Collection grid
================================================== */

.collection__container.fullWidth--true {
  padding: 0 20px;
}

.collection_description {
  padding: 40px 10px;
  @include respond-to($small-down) {
    padding: 20px 10px;
  }
}

.collection__header {
  &.description--false {
    margin-bottom: 40px;
  }
}

.collection__filterSelects {
  @include justify-content(center);
  position: relative;

  .tag_filter + .sort_by {
    border-left-width: 0px;
  }

  .tag_filter,
  .sort_by {
    @include respond-to($small-down) {
      width: 50%;
    }
  }

  select {
    width: 25%;
  }
}



.collection__item {
  .product-wrap {
    overflow: hidden;
    width: 100%;
    height: 0;
    padding-bottom: 100%;
  }
}

//Featured Image styling

.collection__featuredImage {
  position: relative;

}

.collection__featuredImage__item {
  width: 100%;
  overflow: hidden;
  .banner_holder {
    right: auto;
    left: 0;
  }
  .thumbnail_banner {
    font-size: calc(17px * 1.5);
    padding: 5px 25px;
  }
}

.collection__featuredImage__image {
  overflow: hidden;
  margin: 8px;
  background-color: #eef5fa;
  img {
    max-width: 100%;
    position:relative;
  }
}

.collection__featuredImage__content {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 10px;
  line-height: 1.2;
  text-align: center;
  font-size: calc(17px * 1.5);
  .price {
    display: block;
    font-size: 80%;
    margin-top: 10px;
  }
  .was_price {
    text-decoration: line-through;
    opacity: 0.6;
  }
  @include respond-to($medium-down){
    position: static;
  }
}



  .collection__featuredImage__content {
    position: static;
  }



/* #Collection list
================================================== */

.collection-info__caption {
  font-size: floor($regular-font-size*1.2) * 1px;
  padding: 10px 0;
  display: block;
  @include respond-to($small-down){
    padding-bottom: 0;
  }
}

/* #Collection product thumbnail
================================================== */

.banner_holder {
  position: absolute;
  top: 0;
  max-width: 100%;
  z-index: 5;
  &.bannerPosition--left {
    left: 0;
  }
  &.bannerPosition--right {
    right: 0;
  }
  &.bannerPosition--center {
    left: 50%;
    transform: translateX(-50%);
    @include respond-to($medium-up) {
      width: 100%;
    }
  }
}

.thumbnail_banner {
  display: inline-block;
  position: relative;
  white-space: nowrap;
  padding: 5px 15px;
  color: #FFFFFF;
  text-transform: uppercase;
  font-size: 85%;
  z-index: 2;
  @include respond-to($large-down) {
    padding: 5px 10px;
  }
  @include respond-to($small-down) {
    font-size: 14px;
    padding: 5px 10px;
    display: block;
    float: left;
  }
}

.thumbnail_banner__shape {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.banner_text {
  position: relative;
}

.sale_banner {
  background-color: #e85e63;
  width: 35px;
  height: 35px;
  font-size: 11px;
  padding: 0;
  border-radius: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  @media screen and (min-width: 680px){
    width: 45px;
    height: 45px;
    font-size: 14px;
  }
}

.product .sale_banner.thumbnail_banner {
  display: none;
}

.preorder_banner ,
.new_banner {
  background-color: #000000;
}

.collection__grid .small-down--one-half {
  @include respond-to($small-down) {
    width: calc(50% - 20px);
    margin-left: 10px;
    margin-right: 10px;
  }
}

.collection__grid .thumbnail {
  transition: width 0.5s ease-in-out;
  overflow: hidden;
  &.four.columns {
    .info {
      font-size: 90%;
    }
  }
}

.collection__grid .thumbnail img {
  transition: transform 0.3s cubic-bezier(0.55, 0.06, 0.68, 0.19);
}

.collection__grid .thumbnail:hover img {
  @include prefix(transform, scale(1.1), ms webkit spec);
}

.thumbnail__quickView {
  text-transform: uppercase;
  color: #042c33;
  position: relative;
  z-index: 3;
  cursor: pointer;
  position: relative;
  display: inline-block;
  pointer-events: all;
  padding: 5px;
  font-size: calc(17px * 0.8);
  &:hover {
    color: #0c687a;
  }
}

.product__thumbnail {
  position: relative;
  text-align: center;
  margin-bottom: 25px;
  display: block;
}

.collection__featuredImage {
  margin-bottom: 25px;
}

.thumbnail__caption {
  position: relative;
  
    display: block;
  
  margin-top: 20px;
  @include respond-to($large-down){
    display: block;
  }
}

.product-details {
  .title {
    display: block;
  }
  .brand {
    display: block;
  }
  .sold_out {
    opacity: 0.5;
  }
}

@include respond-to($medium-down){
  .touchevents {
    .thumbnail__caption {
      display: block;
    }
    .thumbnail__overlay {
      display: none;
    }
  }
}

.hidden-product-link {
  line-height: 0;
  font-size: 0;
  color: transparent;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}


  .thumbnail {

    .sale span.money {
      color: #e85e63;
    }
    .was_price span.money {
      color: #8c8b8b;
      text-decoration: line-through;
    }
  }

  .collection__featuredImage__content {
    position: static;
  }

  .product-wrap {
    position: relative;
    &:hover .quick_shop {
      opacity: 1;
      transform: none;
    }
    &:hover .thumbnail__overlay {
      opacity: 1;
    }
  }

  .thumbnail__overlay {
    .info {
      @include vertical-alignment;
      position: absolute;
      text-align: center;
      width: 100%;
      margin: 0 auto;
      pointer-events: none;
    }
  }




/* #Blog
================================================== */

.blog__filter {
  margin-bottom: 40px;
}

.blog__filter.filterBackground--true {
  text-align: center;
}

.blog__tagSelect {
  margin: 0;
}

.blog .rss-subscribe {
  font-size: 16px;
}

.blog__page .featuredArticle {
  margin-bottom: 20px;
}

// Featured articles

.blog__articleGrid {
  @include respond-to($medium-down) {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}

.featuredArticle__excerpt {
  margin: 15px 0;
}

.featuredArticle__tags {
  list-style-type: inside;
  padding-left: 0;
  margin-top: 5px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: floor($regular-font-size*0.8) * 1px;
  li {
    display: inline-block;
  }
}

.featuredArticle__image {
  margin-bottom: 10px;
  overflow: hidden;
  img{
    transition: transform ease-in-out 0.3s;
    max-height: 400px;
    @include object-fit(contain);
    &:hover {
      @include prefix(transform, scale(1.1), ms webkit spec);
    }
  }
}

.featuredArticle__title {
  margin: 0;
  margin-bottom: 10px;
  font-size: floor($headline-font-size*0.7) * 1px;
  line-height: 1.3;
  a.featuredArticle__link {
    color: #042c33;
  }
}

.featuredArticle__blogMeta {
  margin-top: 0;
  margin-bottom: 0;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: floor($regular-font-size*0.8) * 1px;
}

.excerpt {
  line-height: 1.8em;
  position: relative;
  max-height: 12em; /* exactly five lines */
  margin-bottom: 7px;
  overflow: hidden;
}

.excerptLength--lg .truncation-fade {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  text-align: center;
  margin: 0; padding: 30px 0;
}

.excerptLength--sm .truncation-fade {
  display: none;
}

/* #Page
================================================== */

.page img {
  max-width: 100%;
}


/* #Sidebar
================================================== */

.sidebar {
  padding-left: 30px;
  border-left: 1px solid #cccccc;
  @include respond-to($medium-down) {
    padding-left: 20px;
    border-left: none;
  }
  @include respond-to($small-down) {
    padding-left: 0;
  }
}

.sidebar__block {
  margin: 30px 0;
}

.sidebar__block:first-child {
  margin-top: 0;
}

.sidebar__block ul {
  list-style: none;
  padding-left: 0;
}

.sidebar__block li,
.sidebar__block p {
  margin: 0;
}

.sidebar__block ul.tag_list {
  li {
    display: inline;
  }
}

.sidebar__heading {
  margin: 0 0 10px;
  color: #042c33;
  font-size: floor($headline-font-size*0.6) * 1px;
  position: relative;
}

.sidebar__heading .icon-down-caret {
  cursor: pointer;
  position: absolute;
  top: 50%;
  right: 0;
  @include prefix(transform, translate(-50%, -50%), ms webkit spec);
}

.sidebar__downArrow {
  width: 15px;
  cursor: pointer;
}

.sidebar__content {
  margin: 0;
}

// Sidebar blocks

.block__search {
  .blog_search {
    border-bottom: 1px solid #cccccc;
  }
  .search_box {
    padding: 0;
    border: 0;
    width: calc(100% - 44px);
    float: left;
    background-color: #eef5fa;
    margin-bottom: 0;
  }
  .icon-search {
    float: left;
    width: 44px;
    min-height: 44px;
    font-size: 1.5rem;
    position: relative;
    cursor: pointer;
  }
  .icon-search::before {
    position: absolute;
    @include prefix(transform, translateY(-50%), ms webkit spec);
    top: 50%;
    width: 100%;
    text-align: center;
  }
  .search-submit {
    background-color: #eef5fa;
    color: #042c33;
  }
  .search-submit:hover {
    color: #0c687a;
  }
}

.block__newsletter {
  .action_button.sign_up {
    margin: 5px 0 0;
  }
  .flex-row {
    @include flex-direction(column);
    input {
      margin: 5px 0 0;
    }
  }
  .email-row {
    margin: 0;
    input[type="email"] {
      padding: 0;
    }
  }
  .footer__title {
    @include respond-to($medium-down) {
      margin-bottom: 0;
    }
  }
}

.block__recent_posts li {
  padding: 0 0 10px;
}

.toggle-all--true {
  .toggle {
    cursor: pointer;
  }
  .toggle_list {
    display: none;
  }
}

.toggle-all--false {
  .icon-down-caret {
    display: none;
  }
}

.blogSidebar {
  @include respond-to($medium-down) {
    padding-left: 0;
  }
}

/* #Article
================================================== */

.article img {
  max-width: 100%;
}

.article__info {
  margin-bottom: 10px;
  @include flex-wrap(wrap);
  @include align-items(flex-end);
  @include respond-to($medium-down) {
    text-align: center;
  }
}

.article__headline {
  margin-top: 0;
  margin-bottom: 0;
  max-width: 700px;
}

.article__blogMeta {
  margin: 10px auto 0;
  text-transform: uppercase;
  font-size: floor($regular-font-size*0.8) * 1px;
}

.article__pagination {
  font-size: floor($regular-font-size*1.1) * 1px;
  @include respond-to($medium-down) {
    font-size: floor($regular-font-size*1) * 1px;
    margin-top: 20px;
    float: none;
  }
}

.article__image img {
  width: 100%;
  max-height: 100vh;
  @include object-fit(contain);
  display: block;
  margin: 10px auto 0;
}

.article__image ~ .article__wrap {
  margin-top: 60px;
  @include respond-to($medium-down) {
    margin-top: 20px;
  }
}

.article__wrap {
  max-width: 85%;
  margin-top: 40px;
  @include respond-to($medium-down) {
    max-width: 100%;
  }
}

.article__share_wrap {
  margin-top: 20px;
}

.article__social {
  margin-top: 20px;
  font-size: floor($regular-font-size*1.2) * 1px;
}

.article__bottom {
  margin-top: 40px;
}

.relatedPosts__heading {
  font-size: floor($headline-font-size*0.8) * 1px;
  margin-top: 60px;
  margin-bottom: 40px;
  text-align: center;
}

.relatedPosts .featuredArticle__title {
  font-size: floor($headline-font-size*0.7) * 1px;
}

.blog__separator--tags {
  padding: 0 3px;
  color: #042c33;
  font-size: 0.8em;
  display: inline-block;
  vertical-align: text-top;
}

.blog__separator--meta {
  padding: 0 3px;
  color: #042c33;
  font-size: 0.8em;
  display: inline-block;
  vertical-align: text-top;
  &:last-child {
    display: none;
  }
}

.sidebar .blog__separator--tags {
  vertical-align: middle;
}

//Comments

.comment--error {
  background-color: #fbebeb;
  padding: 5px 10px;
}

.comment--success {
  background-color: #eef8ef;
  padding: 5px 10px;
}

.responses__heading {
  margin-bottom: 0;
  font-size: floor($regular-font-size*1.2) * 1px;
}

.comments__heading {
  margin-top: 40px;
  margin-bottom: 0;
  font-size: floor($regular-font-size*1.2) * 1px;
}

.comment-form {
  max-width: 60%;
  @include respond-to($medium-down){
    max-width: 100%;
  }
}

.comment {
  margin-top: 20px;
  width: 100%;
  @include flexbox();
  @include align-items(center);
  @include justify-content(flex-start);
}

.comment__meta {
  margin: 0;
  text-transform: uppercase;
  font-size: floor($regular-font-size*0.8) * 1px;
}

.comment__author {
  margin: 0 0 10px;
  font-size: floor($regular-font-size*1.1) * 1px;
}

#comment_form .action_button {
  display: block;
  border: thin;
  color: #ffffff;
  padding: 5px 20px;
  width: auto;
  @include respond-to($medium-down) {
    width: 100%;
  }
}

#comment_form input[type="text"]{
  margin: 10px 0;
  width: 100%;
  border: transparent 1px solid;
  border-bottom: 1px solid #cccccc;
  display: inline-block;
  padding-left: 0;
}

.comment__textarea {
  margin: 0 0 20px;
  width: 100%;
  border: thin solid #cccccc;
  padding: 10px;
  font-family: "Work Sans", sans-serif;
  color: #042c33;
  &::placeholder {
    color: lighten(#042c33, 25%);
  }
}

.comment__label {
  margin: 10px 0;
  display: block;
}

/* #Password Page
================================================== */

#password-container {
  margin: 75px auto 0;
  max-width: 100%;
  display: table;
  text-align: center;
  display: table;
  &.modal--open {
    display: none;
  }
  @include respond-to($medium-down) {
   margin-top: 10px;
  }

  .password-page-message {
    font-size: 3em;
    line-height: 1.2;
    margin: 10px auto;
    padding: 12px 0;
  }

  .password-page-follow {
    margin: 5px 0;
  }

  .password-social .social_icons a,
  .password-social .social_icons a:visited,
  .password-social .social_icons a:active {
    font-size: 25px;
  }


  .newsletter__contactEmail {
    padding:10px;
    width: 100%;
  }

  .newsletter__form .contact_form .action_button.sign_up {
    float: none;
    margin-top: 5px;
  }
  .flex-row {
    margin-left: -5px;
    margin-right: -5px;
    input {
      padding: 0 10px;
    }
  }
  .email-row {
    @include flexbox();
    margin-left: -5px;
    margin-right: -5px;
    @include respond-to($small-down) {
      margin-left: 0;
      margin-right: 0;
      @include flex-direction(column);
    }
    input {
      margin: 5px;
      @include respond-to($small-down) {
        margin: 5px 0 0;
      }
    }
    input[type="submit"] {
      @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
        min-width: 150px;
      }
    }
  }

  .contact_form {
    .newsletter__firstName,
    .newsletter__lastName {
      padding: 10px;
    }
  }
}

.contact_form .action_button.sign_up {
  display: inline-block;
  width: 120px;
  padding-left: 0;
  padding-right: 0;
  float: none;
  margin-top: 20px;
  @include respond-to($medium-down) {
    width: 100%;
  }
}

.password-page-row {
  display: table-row;
  width: 100%;
  height: 100%;
  margin: 0 auto;
}
.password-page-col {
  display: table-cell;
  vertical-align: middle;
  padding: 5px 30px;
  width: 100%;
}

.password-logo {
  max-width: 200px; /* Allows logo to be more prominent*/
  margin: 0px auto;
}

.password-message{
  max-width: 600px;
  font-size: 1.2em;
  color: #042c33;
 }

.hr-small {
  margin: 20px auto;
  width: 50px;
}

.password-social {
  margin-top: 10px;
  padding-top: 40px;
}

.password-social ul {
  margin-left: 0;
  padding-left: 0;
  margin-bottom: 0;
}

.password-social .social_icons li {
  display: inline;
  margin-left: 0;
}

.password-social .social_icons a:hover {
  color:#0c687a;
}

.password-footer {
  margin-top: 15px;
  margin-bottom: 40px;
  font-size: 13px;
  color: #042c33;
  text-align: center;
}

.powered {
  display: block;
  margin-top: 15px;
}

.shopify a {
  background-repeat: no-repeat;
  background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAARCAYAAADUryzEAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA0JJREFUeNqMU81vG0UU/83sR73YG+M4xrHj4jj9UCFNSaGlQQUhhFBRpXIo6jEHQFXFAbhy4B/gioTgzgGV7ws5IAoqUgUSoWoIaZJGpGpMHDuptf5a7+fM8nZpJaRy4M0+jd7szO/93u/NsAsX5vFvi6IInHNUq5NnstnsqXp96xur3f392HNlrIcLePHkS8hlTchIJvtVSTOjIaSAwhkiGsXi+BudjjVp28Oj+XzhrPDZh5qqfoIQD5j6wrxHCAJ6UMXVr3pgnB0c9O2843jrE5XMtZER47GTp+bOqfn++d9+Ct5TuLrCGAcjpgnAWEVSdg8HSyWUzTl8v7D08szxSltPB6/OPDWeW/q1caI2O0zfbrThBM7pjdbiz9PG7LsK01epYKiCaMlIQadnHag9UZ2vbuqvl47tVMwcY3fdFjLFCIHksB0bQojCTmfzlWyHf53S0qsyigESMRS0uqtvNbs330nXNHhRAWl3ChnNhLG/jzBy4fg27pGG5TSqWsARV6EGwk+WScgymIQ5auLpyTdRHj2arC//9QXuDpfgeDYkQcgoZixq4DKuAGoo7wEwVg5DD3PVt1EafRzL21/C0HJo9f4gYUO4gZNkFMk5Nkli3wcI4vP7yIvxhsLIIXhBHzfqlzHwWihkDiNjPEwlDJNE/zDABGPQKfR5QAzI8wRU9IWNurWIlJbF+dmP8Ig5ja67Az8cwvWdmCVi4YSMSlTzODjAQxGAvCZkaIpI4MeN97Fc/xbpfXk8WXmNqPcw9C1idR8gKSNN06GYEScZYwZVJ+xj/8hpPJp9HmvNK/Bd6g0zEXfJ9rvEwE0A4qbFLOibimN15RcLR57JVFx7iLGHpvFs9RJ8QZvofmzsXoEXDqAqWiIiyUaAUSIkBTVVY1BuXuth6rhxcaxizDb619EcrGPg7+JG8zJWdj8HZwplk7hTHyDiKrU5BVWXyKT57ncfNz9TRBjxrRWn3/zT2+7seV7DWuabnR+MTrCm6ikNnLLEL3R720dmQkMqFz8dia3rdmvhg8an7MH3hZRhKuVsQTtcPmCcGK+lZvLl1JEdK9T7PW9t75a72L7tXh3sBbdEELXxP00h1//rx98CDACS7p3N/ZPUwQAAAABJRU5ErkJggg==);
  padding-left: 21px;
  text-decoration: none;
}

.password-footer a {
  text-decoration: none;
}

/* Password Page Modal CSS */
.controls {
  display: block;
  margin: 1em;
  text-align: right;
  text-transform: uppercase;
  position: relative;
}

#open-me {
  text-align: center;
  margin-bottom: 35px;
  a {
    &:hover {
      color: #0c687a;
    }
  }
}

.close-me {
  z-index: 8000;

}

.modalbox {
  position: absolute;
  height: 100%;
  top: -1em;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 0;
  z-index:5000;
}

.overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  max-height: 100%;
  top: 0;
  left: 0;
  background: #fff;
  background: rgba(255,255,255,0.95);
}

.overlay-close {
  width: 150px;
  height: 50px;
  position: absolute;
  right: 10px;
  top: 10px;
  border: thin solid #000;
  font-size: 14px;
}

.overlay-data {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  visibility: 0s 0.5s;
  transition: opacity 0.5s, visibility 0s 0.5s;
}

.overlay-open {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

.inputbox {
  margin: 0px auto;
  max-width: 80%;
  display: table;
  text-align: center;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  @include prefix(transform, translate(-50%, -50%), ms webkit spec);
  color: #000;
}

#password-page-bg .modalbox .inputbox {
  @include respond-to($medium-down){
    top: 50%;
  }
}

.storefront-password-form {
  padding-bottom: 30px;
  overflow: auto;
  input#password {
    padding: 10px;
    margin: 20px 0;
    width: 100%;
  }
  .sign_up {
    float: none;
    width: 120px;
    display: inline-block;
  }
}
.storefront-password-form label {
  font-size: 0.9em;
  margin: 0 0 1em 0;
  text-align: center;
}

.storefront-password-form .actions {
  display: inline-block;
}

.storefront-password-form #password {
  width: 50%;
  display: inline-block;
  @include respond-to($small-down){
    width: 100%;
  }
}

#owner {
  font-size: 0.9em;
  margin-top: -1em;
  opacity: 0.8;
}

.pass-close {
  color: #000 !important;
  padding: 0 !important;
  margin: 1em !important;
  position: inherit !important;
  a {
    cursor: pointer;
  }
}

/* #Draggable Sections
================================================== */

//* Featured contact form

.featuredContact {
  padding: 0;
}

.featuredContact__container {
  @include justify-content(space-between);
  @include flex-wrap(wrap);
}

.featuredContact__content {
  @include flex-basis(55%);
  @include respond-to($medium-down){
    background-color: #eef5fa;
    @include flex-basis(100%);
  }
  .headline {
    padding-top: 25px;
  }
}

.featuredContact__formContainer {
  @include align-self(flex-end);
  @include flex-basis(40%);
  background-color: #eef5fa;
  border: thin solid #cccccc;
  @include respond-to($medium-down){
    @include flex-basis(100%);
  }
  &.logo--true .featuredContact__form {
    padding-top: 20px;
  }
}

.contact__imgWrap img {
  max-width: 100%;
  display: block;
}

.featuredContact__text {
  @include respond-to($medium-down){
    padding: 0 10px 20px;
  }
}

.fullWidth--false.featuredContact__formContainer {
  @include align-self(flex-start);
}

.fullWidth--true.featuredContact__formContainer {
  margin-top: -40vh;
  @include respond-to($medium-down){
    margin-top: 0;
  }
}

.featuredContact__form {
  padding: 40px;
  background-color: #eef5fa;
  @include respond-to($medium-down){
    padding: 20px;
  }
}

.featuredContact__note p {
  padding-right: 10px;
}

.featuredContact__logo {
  max-width: 50%;
  margin: 20px auto 0;
}

.contactBlock__Datepicker {
  position: relative;
  input {
    border-top: 0;
    border-right: 0;
    border-left: 0;
  }
  .calendar-icon {
    position: absolute;
    bottom: 10px;
    right: 10px;
    cursor: pointer;
    width: 24px;
  }
}
.featuredContact__callToAction {
  @include justify-content(space-between);
  @include respond-to($medium-down){
    @include flex-direction(column-reverse);
    text-align: center;
  }
}


.featuredContact__callToAction input[type="submit"] {
  @include respond-to($medium-up){
    width: 110px;
  }
}

//* Multi-column

.multiColumn {
  margin: 40px 0;
  .flexContainer {
    @include align-items(center);
  }

  
    .ls-shape1 .svgShape {
      opacity: 0.5;
      svg {
        @include prefix(transform, rotate(-140deg), ms webkit spec);
      }
    }
  
    .ls-shape2 .svgShape {
      opacity: 0.8;
      svg {
        @include prefix(transform, rotate(93deg), ms webkit spec);
      }
    }
  
    .ls-shape3 .svgShape {
      opacity: 0.4;
      svg {
        @include prefix(transform, rotate(-43deg), ms webkit spec);
      }
    }
  
    .ls-shape4 .svgShape {
      opacity: 1;
      svg {
        @include prefix(transform, rotate(64deg), ms webkit spec);
      }
    }
  

  
    .rs-shape1 .svgShape {
      opacity: 0.6;
      svg {
        @include prefix(transform, rotate(-43deg), ms webkit spec);
      }
    }
  
    .rs-shape2 .svgShape {
      opacity: 0.5;
      svg {
        @include prefix(transform, rotate(80deg), ms webkit spec);
      }
    }
  
    .rs-shape3 .svgShape {
      opacity: 0.8;
      svg {
        @include prefix(transform, rotate(22deg), ms webkit spec);
      }
    }
  
    .rs-shape4 .svgShape {
      opacity: 0.3;
      svg {
        @include prefix(transform, rotate(43deg), ms webkit spec);
      }
    }
  
}

// Mobile slider styles

.slider--mobile {
  @include respond-to($small-down) {
    &:after {
      content: 'flickity';
      display: none;
    }
  }
}

//Multiview mobile slider

.slider--mobile.multiView .column,
.slider--mobile.multiView .columns {
  @include respond-to($small-down) {
    width: calc(50% - 20px) !important;
    margin: 0 10px;
  }
}

//Applied to banners using the general settings
.generalBanner {
  .caption {
    @include respond-to($medium-down){
      display: block;
      margin: 0;
      background-color: rgba(#ffffff, 0.7);
    }
  }
  polygon {
    fill: #ffffff;
    @include respond-to($medium-down){
      fill: transparent;
    }
  }
}

.banner-full-link {
  line-height: 0;
  font-size: 0;
  color: transparent;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  position: absolute;
}

.banner-full-link + .caption {
  pointer-events: none;
  cursor: pointer;
}

.banner {
  width: 100%;
  position: relative;
}

.banner__img {
  width: 100%;
  display: block;
}

.caption {
  width: 100%;
  position: absolute;
  top: 0;
  bottom: 0;
  @include flexbox();
  @include align-items(center);
  @include respond-to($small-down){
    @include prefix(transform, none, ms webkit spec);
    font-size: 3vw;
    position: relative;
    width: 100%;
  }
  a {
    pointer-events: all;
  }
  p {
    margin: 10px 0;
  }
  .pretext,
  a.hoverButton {
    font-family: "Avenir Next", sans-serif;
    font-weight: 400;
    text-transform: normal;
    font-style: normal;
    font-size: 16px;
    letter-spacing: 2px;
    @include respond-to($small-down){
      font-size: 1.4em;
    }
    @include respond-to($medium-down){
      font-size: 10.666666666666666px;
    }
    @include respond-to($medium-up){
      font-size: 13.333333333333334px;
    }
    @include respond-to($widescreen-up){
      font-size: 16px;
    }
  }
  .headline {
    font-family: "Work Sans", sans-serif;
    font-weight: 400;
    font-size: 60px;
    text-transform: none;
    line-height: 1.1;
    margin: 10px 0;
    color: #000000;
    @include respond-to($small-down){
      font-size: 2.6em;
    }
    @include respond-to($medium-down){
      font-size: 40.0px;
    }
    @include respond-to($medium-up){
      font-size: 50.0px;
    }
    @include respond-to($widescreen-up){
      font-size: 60px;
    }
  }
  .subtitle {
    font-family: "Avenir Next", sans-serif;
    font-weight: 400;
    text-transform: normal;
    font-style: normal;
    font-size: 16px;
    letter-spacing: 2px;
    position: relative;
    @include respond-to($small-down){
      font-size: 1.4em;
    }
    @include respond-to($medium-down){
      font-size: 10.666666666666666px;
    }
    @include respond-to($medium-up){
      font-size: 13.333333333333334px;
    }
    @include respond-to($widescreen-up){
      font-size: 16px;
    }
  }
  .pretext:empty,
  .headline:empty,
  .subtitle:empty {
    display: none;
    &:before {
      height: 0;
    }
  }
}

.caption--center {
  @include justify-content(center);
}

.caption--left {
  @include justify-content(flex-start);
}

.caption--right {
  @include justify-content(flex-end);
  .caption__overlay {
    @include prefix(transform, scaleX(-1), ms webkit spec);
  }
}

.subtitle p a {
  pointer-events: all;
}

.caption__content {
  display: inline-block;
  float: none;
  width: 55%;
  position: relative;
  padding: 5%;

  @include respond-to($medium-down) {
    width: 50%;
  }
  @include respond-to($small-down) {
    width: 100% !important; //override any widths set on larger screen sizes
    padding: 20px;
  }
  &.align-center {
    text-align: center;
  }
  &.align-left {
    text-align: left;
    .subtitle:before {
      margin-left: 0;
    }
  }
  &.align-right {
    text-align: right;
    .subtitle:before {
      margin-right: 0;
    }
  }
}

.caption__overlayShape--up + .caption__content {
  max-width: 45%;
  @include respond-to($small-down){
    max-width: 100%;
  }
}

.caption--left {
  .caption__overlayShape--center {
    & + .caption__content {
      @include respond-to($large-down){
        width: 50%;
      }
    }
  }
  .caption__overlayShape--down {
    & + .caption__content .pretext {
      max-width: 90%;
    }
  }
}

.caption--right {
  .caption__overlayShape--center {
    & + .caption__content {
      @include respond-to($large-down){
        width: 50%;
      }
    }
  }
  .caption__overlayShape--down {
    & + .caption__content {
      @include respond-to($large-down){
        width: 50%;
      }
    }
    & + .caption__content .pretext {
      padding-left: 10%;
    }
  }
}

.caption--center {
  .caption__overlayShape--up {
    & + .caption__content .subtitle {
      margin: 0px auto;
      max-width: 80%;
    }
    & + .caption__content .textButton {
      display: block;
      margin: 0px auto;
      max-width: 70%;
    }
  }

  .caption__overlayShape--down {
    & + .caption__content {
      @include respond-to($large-down){
        width: 48%;
      }
    }
    & + .caption__content .pretext {
      margin: 0px auto;
      max-width: 70%;
    }
  }

  .caption__overlayShape--center {
    & + .caption__content .headline,
    & + .caption__content .subtitle,
    & + .caption__content .pretext {
      margin: 0px auto;
      max-width: 80%;
    }
    & + .caption__content .textButton {
      display: block;
      margin: 0px auto;
      max-width: 70%;
      &.no-subtitle {
        padding: 10px 0;
      }
    }
  }
}

.caption__overlay.svgShape {
  position: absolute;
  opacity: 0.8;
  width: 60%;
  top: 0;
  height: 100%;
  @include respond-to($large-down) {
    width: 68%;
  }
  @include respond-to($small-down) {
    opacity: 1;
    width: 100%;
  }
  @include respond-to($small-up) {
    background-color: transparent !important; //override section selector
  }
  svg {
    width: 100%;
    height: 100%;
  }
}

.caption--center {
  .caption__overlay.svgShape {
    width: 70%;
    @include respond-to($large-down) {
      width: 80%;
    }
    @include respond-to($small-down) {
      width: 100%;
    }
    @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
     width: 60%;
    }
  }
}

/* #Cart page
================================================== */

.cart__emptyWrapper {
  margin-bottom: 50px;
}

#cart_form {
  clear: both;
}

.cart__empty {
  width: calc(33% - 20px);
  margin: 0px auto;
  text-align: center;
  @include respond-to($large-down) {
    width: 60%;
  }
  @include respond-to($small-down) {
    width: 100%;
  }
}

.cart__empty .continue-button {
  max-width: 325px;
  margin: 0 auto;
}

.topBar__miniCart,
.cart {
  .warning-box p {
    padding: 0;
    margin: 0;
    text-align: right;
  }
}

.cart__itemsInCart p {
  margin-top: 0;
}

.cart__itemList .cart__card {
  border-bottom: 1px solid #cccccc;
}

.cart__itemList .cart__card:last-of-type {
  border-bottom: 0px;
}

.cart__card {
  position: relative;
  padding: 20px 0;
  @include flexbox();
  @include align-items(center);
  h2 {
    margin: 0;
    font-size: 17px;
  }
  p {
    margin: 3px 0;
    &.meta {
      font-size: 90%;
    }
  }
}

.cart__removeBtn {
  width: 5%;
  cursor: pointer;
  line-height: 0;
  [class^="icon-"] {
    font-size: 13px;
    padding: 6px;
    border: thin solid #cccccc;
    border-radius: 50%;
    vertical-align: middle;
  }
}

.cart__image {
  width: calc(25% - 20px);
  margin-left: 20px;
  img {
    display: block;
    width: 100%;
    height: 125px;
    @include object-fit(contain);
  }
}

.cart__text {
  width: calc(100% - 20px);
  margin-right: 20px;
  float: left;
  @include respond-to($medium-down) {
    width: 100%;
    margin-right: 0;
  }
}

.display_product_quantity_cart--true .cart__text {
  width: calc(100% - 44px - 44px - 70px - 20px);
  @include respond-to($medium-down) {
    width: 100%;
    margin-right: 0;
  }
}

.cart__info {
  padding-left: 20px;
  width: 70%;
  p,
  h2 {
    text-align: left;
  }
}

.cart__quantity {
  float: left;
  @include respond-to($medium-down) {
    width: 100%;
    margin-top: 10px;
  }
  input[type="number"] {
    font-size: 18px;
    padding: 5px;
    text-align: center;
    width: 70px;
    float: left;
    border: thin solid #cccccc;
    background-color: #eef5fa;
    margin-bottom: 0;
  }

  input[type=number]::-webkit-inner-spin-button,
  input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
  }
}

.cart__quantityWrap {
  position: relative;
  margin: 0px auto;
  .icon-right-arrow,
  .icon-left-arrow {
    vertical-align: middle;
  }
  .product-plus,
  .product-minus {
    line-height: 32px;
    border: thin solid #cccccc;
    display: block;
    width: 44px;
    height: 44px;
    float: left;
    cursor: pointer;
    transition: all 0.2s linear;
    @include flexbox();
    @include justify-content(center);
    @include align-items(center);
    &:hover {
      color: #eef5fa;
      background-color: #042c33;
    }
  }
  .product-plus {
    border-left: 0;
  }
  .product-minus {
    border-right: 0;
  }
  input {
    width: 70px;
    height: 44px;
  }
}

.cart__notes {
  margin-top: 20px;
  display: block;
  textarea {
    width: 100%;
    padding: 10px;
    background-color: #eef5fa;
    border: thin solid #cccccc;
  }
}

.cart__shippingCalc {
  select {
    color: #042c33;
  }
  input {
    background-color: #eef5fa;
  }

  .shippingCalculator__results {
    padding-left: 0;
  }
}

.cart__priceBreakdown {
  margin-bottom: 60px;
  padding-left: 20px;
  @include respond-to($large-down) {
    padding: 0;
  }
  @include respond-to($medium-down) {
    padding: 40px 0 0;
    left: auto;
  }
  .get-rates {
    height: auto;
    white-space: normal;
    margin-bottom: 0;
  }
  .add_to_cart {
    border-radius: 0;
  }
  #checkout {
    &:hover {
      border-color: #2d99b2;
    }
  }
  select,
  input[type=text] {
    border-color: #cccccc;
  }
  .cart_savings {
    color: #e85e63;
    font-size: 18px;
  }
  .cart_subtotal {
    margin-top: 0px;
    font-size: 24px;
  }
  div {
    text-align: center;
    .cart_subtotal {
      margin-bottom: 0;
    }
    .cart_savings {
      margin-top: 5px;
    }
  }
}

.cart__shippingToggle {
  cursor: pointer;
  color: #042c33;
  margin-top: 20px;
}

.cart__shippingCalc {
  margin-bottom: 20px;
  input,
  select {
    width: 100%;
    padding: 10px;
    margin: 10px 0;
  }
  ul {
    list-style: none;
  }
}

.cart__tos {
  margin: 20px 0;
  input {
    margin-bottom: 0;
  }
  .tos_label {
    display: inline-block;
    vertical-align: middle;
    padding-left: 5px;
  }
  .tos_icon {
    vertical-align: middle;
  }
}

.cart__featuredLinks {
  margin-top: 20px;
}

/* #Collection page
================================================== */

.collection {
  .shapesOverflow { overflow: visible; }
  .no-matches {
    padding-top: 20px;
    padding-bottom: 50px;
    @include respond-to($small-down) {
      padding-top: 0;
    }
  }
  img {
    max-width: 100%;
  }
}

/* #Product page
================================================== */

.product__page.mainContentArea {
  margin-top: 80px;
  @include respond-to($small-down) {
    margin-top: 40px;
  }
}

/* Animation for checkmark on add to cart button */

button.add_to_cart {
  position: relative;
  &.disabled {
    opacity: 1;
  }
  .text {
    display: block;
    width: 100%;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
  }
  .slideInLeft.text {
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
  }
}

button .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  path {
    stroke-dasharray: 19.79 19.79;
    stroke-dashoffset: 19.79;
    stroke: #ffffff;
    opacity: 0;
  }
  &.checkmark-active path {
    -webkit-animation: drawCheckmark 0.5s linear alternate forwards;
    animation: drawCheckmark 0.5s linear alternate forwards;
  }
}

button.action_button--secondary .checkmark {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  path {
    stroke-dasharray: 19.79 19.79;
    stroke-dashoffset: 19.79;
    stroke: #2d99b2;
    opacity: 0;
  }
  &.checkmark-active path {
    -webkit-animation: drawCheckmark 0.5s linear alternate forwards;
    animation: drawCheckmark 0.5s linear alternate forwards;
  }
}

.description-bottom {
  padding-bottom: 30px;
}

@keyframes drawCheckmark {
  from {
    stroke-dashoffset: 19.79;
    opacity: 1;
  }
  to {
    stroke-dashoffset: 0;
    opacity: 1;
  }
}

@-webkit-keyframes drawCheckmark {
  from {
    stroke-dashoffset: 19.79;
    opacity: 1;
  }
  to {
    stroke-dashoffset: 0;
    opacity: 1;
  }
}

.ie
button
.checkmark {
  path {
    stroke-dashoffset: 0;
    opacity: 0;
  }
  &.checkmark-active path{
    -webkit-animation: fadeCheckmark 0.5s linear alternate forwards;
    animation: fadeCheckmark 0.5s linear alternate forwards;
  }
}

@-webkit-keyframes fadeCheckmark {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeCheckmark {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@include respond-to('ie10+'){
  button
  .checkmark {
    path {
      stroke-dashoffset: 0;
      opacity: 0;
    }
    &.checkmark-active path{
      animation: fadeCheckmark 0.5s linear alternate forwards;
    }
  }

  @keyframes fadeCheckmark {
    from {
      opacity: 0;
    }
    to {
      opacity: 1;
    }
  }
}

.product__container {
  margin-bottom: 40px;
}

.product__collectionsList {
  display: none;
  @include respond-to($small-down) {
    display: block;
    width: 100%;
  }
}

.productInfo--collection {
  margin-top: 3px;
  @include respond-to($small-down) {
    display: none;
  }
}

.product__section {
  max-width: 1100px;
  @include justify-content(space-between);
  @include respond-to($medium-down) {
    display: block;
  }
}

.product__social {
  margin-top: 30px;
}

.product__section.imageAlign--right {
  @include flex-direction(row-reverse);
}

.product__vendor {
  margin: 0;
  a {
    text-transform: uppercase;
    color: #042c33;
  }
}

.product__vendor + .product__sku {
  margin-top: 0;
}

.product__sku {
  text-transform: uppercase;
  color: #042c33;
}

.product__title {
  margin-top: 0;
  margin-bottom: 10px;
  line-height: 1.2;
  word-break: break-word;
}

.product__stars {
  color: #042c33;
}

.product__images {
  position: relative;
  width: calc(60% - 65px);

  @include respond-to($medium-down) {
    width: auto;
    margin: 0 auto 20px;
  }
}

.product__details {
  width: 40%;
}

.product__description {
  padding-bottom: 20px;
  img {
    max-width: 100%;
  }
}

.productText {
  @include respond-to($medium-down) {
    width: 100%;
    padding: 0 10px;
  }
  .current_price,
  .modal_price {
    margin-top: 10px;
    font-size: calc(17px * 1.8);
  }
  .sale span.money {
    color: #e85e63;
  }
  .was_price span.money {
    font-size: calc(17px * 1.2);
    color: #8c8b8b;
  }
  .savings {
    color: #e85e63;
    margin-left: 5px;
    font-size: calc(17px * 1.2);
    @include respond-to($small-down){
      display: block;
    }
  }
}

.was_price {
  text-decoration: line-through;
}

//Product gallery
.product_gallery {
  opacity: 0;
  .gallery-cell {
    width: 100%;
    text-align: center;
    display: block;
    margin-right: 10px;
    span {
      width: 100%;
      display: block !important; // required to override the inline-block set with JS
    }
  }
  &.flickity-enabled {
    opacity: 1;
  }
  img {
    background-color: #eef5fa;
  }
  .flickity-page-dots {
    position: static;
    margin-top: 25px;
  }
}

.product_gallery button.flickity-prev-next-button {
  opacity: 0;
  transition: all 0.3s ease-in-out;
}

.flickity-prev-next-button:hover {
  background: transparent;
}

.product_gallery_nav {
  margin-top: 20px;
  padding: 10px 40px;
  border: thin solid #cccccc;
  @include respond-to($medium-down) {
    padding: 10px;
    margin-top: 10px;
  }
  &.no-border {
    border: 0px;
  }
  .flickity-prev-next-button {
    background: transparent;
  }
  .flickity-prev-next-button:hover {
    border: none;
  }
  .flickity-prev-next-button.previous {
    left: 0px;
  }

  button.flickity-prev-next-button.previous:hover {
    left: 0px;
    color: darken;
    background: transparent;
  }
  .flickity-prev-next-button.next {
    right: 0px;
  }

  button.flickity-prev-next-button.next:hover {
    right: 0px;
    color: darken;
    background: transparent;
  }

  .gallery-cell.is-nav-selected {
    opacity: 1;
  }

  .gallery-cell {
    height: 80px;
    margin-right: 20px;
    opacity: 0.5;
    @include flexbox();
    img {
      height: 100%;
    }
  }
}

.product_gallery_nav.no-slide {
  border: none;
  padding: 20px 0;
  .flickity-prev-next-button {
    opacity: 0;
  }
}

.slideshow_animation--fade .product_gallery {
  .flickity-slider {
    transform: none !important;
  }

  .gallery-cell {
    left: 0 !important;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
    z-index: -1;
  }

  .gallery-cell.is-selected {
    opacity: 1;
    z-index: 0
  }
}

.product_links {
  margin: 20px 0 8px;
  font-size: 0.9em;
  padding: 10px 0;
  p {
   margin: 2px 0;
  }
}

.product__socialLabel {
  margin: 0;
  margin-right: 5px;
}

//Product form
.product_form form {
  @include flexbox();
  @include flex-wrap(wrap);
  @include justify-content(space-between);
}

.productForm__select select:focus {
  outline: auto;
}

.product_form .purchase-details {
  margin-top: 20px;
}

.productForm__quantityInput {
  line-height: 1.4;
  min-height: 44px;
  margin-bottom: 0;
  width: calc(100% - 88px);
  text-align: center;
  padding: 6px 15px;
  height: 44px;
  border-radius: 0;
  -webkit-appearance: none;
  float: left;
  background-color: #eef5fa;
}

input.quantity[type='number'] {
  -moz-appearance:textfield;
}

input.quantity[type=number]::-webkit-inner-spin-button,
input.quantity[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.productForm__quantity .quantity,
.productForm__quantity .quantity:focus,
.productForm__quantity .product-plus,
.productForm__quantity .product-minus {
  border: #042c33 1px solid;
  color: #042c33;
}

.productForm__quantity label { margin-bottom: 0.5em; }

.productForm__quantity {
  margin-top: 0;
  margin-bottom: 20px;
  width: calc(50% - 5px);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  @include respond-to($large-down) {
    width: 100%;
    max-width: 100%;
  }
  label {
    text-align: left;
  }
  .product-plus,
  .product-minus {
    font-weight: 300;
    position: relative;
    cursor: pointer;
    height: 44px;
    display: block;
    width: 44px;
    text-align: center;
    float: left;
    font-size: 15px;
    line-height: 45px;
    color: #042c33;
    background-color: #eef5fa;
    transition: all 0.2s linear;
    &:hover {
      color: #eef5fa;
      background-color: #042c33;
    }
    @include respond-to($medium-down) {
      display: inline;
      display: initial;
      margin: 0;
    }
  }
  .product-plus {
    border-left: 0;
  }
  .product-minus {
    border-right: 0;
  }
}

.display_product_quantity--true.smart-payment-button--true .productForm__quantity {
  margin-right: 100px; //bumps add to cart buttons to the next line
  @include respond-to($large-down) {
     margin-right: 0;
  }
}

.items_left {
  margin-top: 0;
  margin-bottom: 20px;
  font-style: italic;
  width: 100%;
}

.display_product_quantity--true.smart-payment-button--false .items_left {
  @include order(1);
  @include respond-to($large-down) {
    @include order(0);
  }
}

.smart-payment-button--false .add_to_cart {
  width: calc(50% - 5px);
  @include respond-to($large-down) {
    width: 100%;
  }
}

.product_form .action_button--secondary {
  width: calc(50% - 5px);
  @include respond-to($large-down) {
    width: 100%;
    margin-bottom: 10px;
  }
}

.product_form .shopify-payment-button {
  width: calc(50% - 5px);
  @include respond-to($large-down) {
    width: 100%;
  }
}

.product__section .product_form {
  max-width: 100%;
}

.product__section .notify_form {
  max-width: 100%;
}

.purchase--sticky {
  display: none;
  @include respond-to($small-down){
    button.action_button {
      border: 2px solid #2d99b2;
      padding: 20px 5px;
      height: auto;
    }
  }
}

.spr-container {
  @include respond-to($small-down) {
    margin: 0 10px
  }
}

.is-sticky {
  @include respond-to($small-down){
    display: block;
    margin: 0;
    bottom: 0;
    left: 0;
    margin-bottom: 0;
    position: fixed;
    right: 0;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0,0,0); // to avoid flickering while scrolling
    z-index: 98;
  }
}

/* #Swatch Styles
================================================== */

/* SASS variables for swatch dimensions */
$swatch-element-size: 40px;
$swatch-label-size: 40px;



/* #Quick shop
================================================== */

.quickShop__borderOverlay,
.quickShop {
  @include prefix(animation, fadein 0.5s, ms webkit spec);
  display: none;
  position: absolute;
  width: calc(100% + 20px);
  @include respond-to($large-down) {
    diplay: none !important; //Overwrite JS styling on mobile
  }
}

.quickShop__borderOverlay {
  border-top: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  height: calc(100% + 20px);
  left: -10px;
  padding: 10px 10px 0 10px;
  top: -10px;
}

.quickShop__container {
  margin: 0px auto;
  padding: 10px;
  width: 100%;
}

.collection__featuredImage .quickShop__container { max-width: 300px; }

.quickShop {
  background-color: #eef5fa;
  border-bottom: 1px solid #cccccc;
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
  left: -10px;
  top: 100%;
  z-index: 1000;
  .purchase-details,
  .action_button {
    @include prefix(animation, fadein 0.5s, ms webkit spec);
    width: 100%;
  }

  .shopify-payment-button {
    display: none;
    padding-top: 10px;
    width: 100%;
  }

  .productForm__select,
  .swatch_options {
    display: none;
    text-align: left;
    width: 100%;
  }

  .productForm__select {
    margin-bottom: 0;
    label,
    select,
    .selector-wrapper { max-height: 48px; }
    .selector-wrapper {
      margin-bottom: 10px;
    }
  }

  .swatch_options {
    margin-bottom: 10px;
  }

  .product_form .purchase-details { margin-top: 0; }
  .product_form--swatches .swatch_options { @include flex-direction(column); }
  .product_form--dropdown .productForm__select.single-option {
    .selector-wrapper { min-width: calc(70% - 15px); }
    select { width: 100%; }
  }

  .product_form--dropdown .productForm__select.multiple-options {
    @include flex-direction(column);
    .selector-wrapper {
      min-width: 100%;
    }
  }
}


//Styling for featured image
.collection__featuredImage .quickShop {
  left: 0;
  width: 100%;
}


//Hover states
.collection__grid .thumbnail.quickShop--true:hover {
  overflow: visible;
  @include respond-to($large-down) {
    .quickShop__borderOverlay,
    .quickShop {
      display: none !important; //Overwrite JS styling on mobile
    }
  }

  .quickShop__borderOverlay,
  .quickShop { display: block; }
}

.thumbnail {
  .collection_swatches {
    max-height: 36px;
    position: relative;
    opacity: 1;
    transition: max-height 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s ease-in-out 0.5s;
    z-index: 100;
    visibility: visible;
  }
  .product__price { display: none; }
  &.quickShop--opened:hover {
    .thumbnail__overlay,
    .product-details {
      opacity: 1;
    }
    .collection_swatches {
      border: 0;
      margin: 0;
      max-height: 0;
      opacity: 0;
      visibility: hidden;
    }
    .product__price { display: block; }
    .product-details span.price { display: none; }
  }
}

@keyframes fadein {
  from { opacity: 0; }
  to { opacity: 1; }
}
@-moz-keyframes fadein { // Firefox
  from { opacity: 0; }
  to { opacity: 1; }
}
@-webkit-keyframes fadein { // Safari and Chrome
  from { opacity: 0; }
  to { opacity: 1; }
}
@-o-keyframes fadein { // Opera
  from { opacity: 0; }
  to { opacity: 1; }
}

/* #Contact page
================================================== */

.contact__page .map-section {
  @include respond-to($small-down) {
    margin: 20px 0;
  }
}

.contactPage__main {
  @include respond-to($medium-up) {
    padding-bottom: 50px;
  }
}

.contactPage__content {
  @include respond-to($small-down) {
    margin-bottom: 20px;
  }
}

.contactPage__content {
  &.logo--true .featuredContact__form {
    padding-top: 20px;
  }
}

.contactPage__content .placeholder-svg {
  max-height: 200px;
}

.contactPage__content.contactSection__form {
  border: thin solid #cccccc;
  background-color: #eef5fa;
  .contactPage__logo {
    max-height: 150px;
    max-width: 50%;
    margin: 20px auto 0;
  }
}

/* #Search
================================================== */

.searchForm {
  max-width: 50%;
  margin: 0 auto;
  position: relative;
  @include respond-to($medium-down){
    max-width: 100%;
  }
  .icon-search {
    position: absolute;
    cursor: pointer;
    top: 0;
    right: 0;
    font-size: 24px;
    line-height: 44px;
    width: 43px;
    height: 43px;
    color: white;
    background-color: black;
  }
}

.searchResults__header {
  margin-bottom: 40px;
}

.container.searchResults__searchBar {
  margin-top: 40px;
}

.search__fields {
  position: relative;
}

.search__container {
  input {
    width: 100%;
    margin-bottom: 10px;
    padding-right: 0;
  }

  input[type="submit"].search_button {
    background-color: transparent;
    border: none;
    color: black;
    padding: 0;
    margin: 0;
    content: "\11a6a";
  }
}

.search__item {
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px solid #cccccc;
  overflow: auto;
  @include flexbox();
  @include align-items(center);
  @include respond-to($medium-down){
    @include align-items(flex-start);
  }
  @include respond-to($small-down){
    @include flex-direction(column);
  }
  .sub_title {
    margin: 0;
  }
  .blog_meta span + span {
    margin-top: 0;
  }
  &:first-child {
    border-top: 0px;
    padding-top: 0px;
    margin-top: 0px;
  }
}

.searchResult__imageContainer img {
  width: 100%;
  max-height: 250px;
  @include object-fit(contain);
}

.searchResult__description {
  @include respond-to($small-down) {
    padding-top: 20px;
  }
}

.search__title {
  margin-top: 0;
}

.searchSidebar--true {
  width: 80%;
  margin: 0px auto;
}

.searchSidebar--false {
  width: 60%;
  margin: 0px auto;
}

.search {

  h4.toggle {
    margin-top: 0;
    &.active {
      svg {
        stroke: #042c33;
        fill: #042c33;
      }
    }
  }
  ul {
    list-style: none;
    padding-left: 0;
    li,
    p {
      margin: 0;
    }
    &.tag_list {
      li {
        display: inline;
      }
    }
  }
}

/* #404 page
================================================== */

.pageNotFound {
  input {
    margin: 0 auto;
  }
}

/* #Account
================================================== */

.customers-account {
  .pagination-wrapper {
    padding-top: 30px;
    margin: 0;
    .paginate {
      text-align: left;
    }
  }
}

.customers-reset_password,
.customers-activate_account {
  input[type=password] {
    width: 100%;
  }
}

#recover-password {
  background-color: #eef5fa;
  padding: 10px 10px 0;
  margin: 10px 10px 0px;
  clear: both;
  h4 {
    margin-top: $gutter;
  }
  .action_bottom {
    display: block;
    text-align: right;
    .note {
      display: block;
      width: 100%;
    }
  }
}


.account-header-logout {
  text-align: right;
}

.account-sidebar {
  box-sizing: border-box;
  padding-right: 10px;
  @include respond-to($medium-down){
    border: 0;
    padding-right: 0;
  }
  .accountSidebar__content {
    overflow: hidden;
    padding: 20px;
  }
  .logout {
    display: block;
    padding-bottom: 10px;
  }
}

.customers-addresses {
  select {
    margin-bottom: 15px;
  }
  .account-sidebar {
    border-right: 0;
    padding-right: 0;
    .action_add { padding-bottom: 30px; }
  }
  .account-main {
    box-sizing: border-box;
    padding-left: 20px;
    @include respond-to($medium-down){
      border: 0;
      padding-left: 0;
    }
  }
}

.view-address {
  padding-top: 10px;
}

.account-main {
  input {
    margin: 10px 0 20px;
  }
}

.action_bottom .note {
  vertical-align: middle;
  line-height: 60px;
}


.address.note {
  p {
    margin: 3px 0;
  }
}

#address_tables {
  margin-top: 20px;
  overflow: hidden;
  .address_table {
    padding-top: 10px;
  }
  hr {
    width: 100%;
    opacity: 0;
    padding: 7px 0;
  }
}

.view_address {
  margin-top: 5px;
}

.address_title {
  margin-top: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.action_edit {
  padding-right: 5px;
}

.action_delete {
  padding-left: 5px;
}

#customer_login {
  overflow: auto;
}

.customer__form {
  padding: 10px;
  border: thin solid #cccccc;
  background-color: #eef5fa;
  width: 100%;
  .login__logo {
    padding-top: 20px;
    max-width: 300px;
    width: auto;
    max-height: 100px;
  }
}

.customer__form input {
  border: 0px;
  display: block;
  border-bottom: 1px solid #cccccc;
  width: 100%;
  margin: 30px auto 0 auto;
}

.customer__form .btn {
  width: 40%;
}

.customer__form .action_bottom {
  @include flexbox();
  position: relative;
  p {
    bottom: 0px;
    position: absolute;
    width: 50%;
    line-height: 1.2;
  }
  .btn {margin-right: 0}
}

.customer__form form {
  padding: 30px;
}

.customer__form img,
.customer__form h4 {
  display: block;
  text-align: center;
  margin: 0 auto;
}

.register__form.account__noImage {
    display: block;
    float: none;
    clear: both;
    margin: 0px auto;
}

.register__image {
  background-size: cover;
  @include respond-to($medium-down){
    margin-top: 40px;
  }
  img {
    width: 80%;
    margin: 0 auto;
  }
}

.register__image .left,
.register__image .right {
  @include respond-to($small-down){
    float: none;
    width: 100%;
  }
}

.collection_nav {
  text-align: center;
}

.errors {
  ul {
    list-style: none;
    padding-left: 0;
  }
  li {
    background-color: #fbebeb;
    margin: 3px 0;
    padding: 5px 10px;
  }
}

/* #Page FAQ
================================================== */

$accordionBg: #eef5fa;

.faqAccordion {
  margin-top: 0;
  margin-bottom: 0;
  &>dt:last-of-type button {
    border-bottom: 1px solid;
  }
  &>dt {
    &>button {
      background: transparent;
      position: relative;
      padding: 20px 20px 20px 40px;
      color: #042c33;
      text-align: left;
      display: block;
      cursor: pointer;
      width: 100%;
      outline: none;
      text-transform: initial;
      min-height: auto;
      height: auto;
      line-height: inherit;
      font-weight: normal;
      font-family: "Work Sans", sans-serif;
      font-size: 18px;
      box-shadow: none;
      border-radius: 0px;
      border-left: none;
      border-right: none;
      border-bottom: none;
      border-color: #cccccc !important; /* Overwrites default button styling */
      &:hover{
        color: #0c687a;
      }
      &::after {
        position: absolute;
        top: 50%;
        @include prefix(transform, translateY(-50.1%), ms webkit spec);
        left: 15px;
        font-size: 15px;
        font-family: 'artisan';
        content: "\e909";
        color: inherit;
      }
      &[aria-expanded="true"] {
        background-color: darken($accordionBg, 3%);
        &::after {
          content: "\e908";
          font-size: 15px;
        }
        border-bottom: none;
      }
    }
  }
  &>dd {
    color: #042c33;
    padding: 0px 0px 10px 0px;
    &[aria-hidden="true"] {
      display: none;
    }
  }
}
/* #Shapes
================================================== */
.shapesOption {
  position: relative;
}

.ls-shapeWrapper {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 50%;
  z-index: -1;
}

.rs-shapeWrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  width: 50%;
  z-index: -1;
  .background__shape {
    text-align: right;
  }
}

.background__shape {
  position: absolute;
  width: 100%;
  height: auto;
  z-index: -1;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.2s;
  .svgShape {
    max-width: 350px;
  }
}


  .ls-shape1 .svgShape {
    opacity: 0.5;
    svg {
      @include prefix(transform, rotate(-43deg), ms webkit spec);
    }
  }

  .ls-shape2 .svgShape {
    opacity: 0.8;
    svg {
      @include prefix(transform, rotate(80deg), ms webkit spec);
    }
  }

  .ls-shape3 .svgShape {
    opacity: 0.4;
    svg {
      @include prefix(transform, rotate(22deg), ms webkit spec);
    }
  }

  .ls-shape4 .svgShape {
    opacity: 1;
    svg {
      @include prefix(transform, rotate(43deg), ms webkit spec);
    }
  }



  .rs-shape1 .svgShape {
    opacity: 0.6;
    svg {
      @include prefix(transform, rotate(-140deg), ms webkit spec);
    }
  }

  .rs-shape2 .svgShape {
    opacity: 0.5;
    svg {
      @include prefix(transform, rotate(93deg), ms webkit spec);
    }
  }

  .rs-shape3 .svgShape {
    opacity: 0.8;
    svg {
      @include prefix(transform, rotate(-43deg), ms webkit spec);
    }
  }

  .rs-shape4 .svgShape {
    opacity: 0.3;
    svg {
      @include prefix(transform, rotate(64deg), ms webkit spec);
    }
  }


/*Fix for IE11 sizing */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
  .background__shape { height: 400px !important; }
  .svgShape{ height: 100% !important; }
}


/* #Gallery page
================================================== */

.galleryPageModal .featherlightbox {
  display: block;
}

.galleryPageModal .featherlight-content {
  padding: 25px 25px 0;
  border-bottom: 25px solid transparent;
  margin-left: 5%;
  margin-right: 5%;
  max-height: 95%;
  @include respond-to($medium-down) {
    padding: 10px 10px 0;
    border-bottom: 10px solid transparent;
  }
}

.galleryPageModal img {
  width: 100%;
}

.gallery-wrap {

  .button__container {
    border-bottom: 1px solid #cccccc;
    margin: $gutter 0;
    width: 100%;
    @include flexbox();
    @include align-items(center);
    @include justify-content(center);

    @include respond-to($medium-down) {
      border-bottom: 0px;
      margin-top: 5px;
      padding-top: $gutter;
    }
    .button__group {
      margin-bottom: -21px;

      @include respond-to($medium-down) {
        padding: 0 $gutter;
        margin-bottom: 0px;
      }
      button {
        background-color: #eef5fa;
        color: #042c33;
        text-transform: capitalize;
        border: thin solid #cccccc;
        font-weight: normal;
        border-right-width: 0px;
        position: relative;
        margin: 0px -2px;
        z-index: 1;
        &:last-child {
          border-right-width: 1px;
        }
        &:hover,
        &.is-checked {
          background-color: darken(#eef5fa, 5%);
        }
        &.is-checked {
          background-color: darken(#eef5fa, 10%);
          z-index: 90;
        }

        @include respond-to($medium-down) {
          width: calc(50% - 4px);
          margin: 0px -2px;
          border-top: 1px solid transparent;
          border-right-width: 1px;
          &:first-child, &:nth-child(2) {
            border-top: 1px solid #cccccc;
          }
          &:last-child {
            border-right-width: 1px;
          }

        }
      }
    }
  }

  .gallery__content {
    margin-top: $gutter;

    &.gallery__fitRows--two-per-row {
      .gallery__item {
        @include respond-to($medium-up){
          width: 50%;
        }
      }

      .gallery__item--width2 {
        @include respond-to($medium-up){
          width: 100%;
        }
      }
    }

    &.gallery__fitRows--three-per-row {
      .gallery__item {
        @include respond-to($medium-up){
          width: 33.33%;
        }
      }

      .gallery__item--width2 {
        @include respond-to($medium-up){
          width: 66.66%;
        }
      }
    }

    &.gallery__fitRows--five-per-row {
      .gallery__item {
        @include respond-to($medium-up){
          width: 20%;
        }
      }

      .gallery__item--width2 {
        @include respond-to($medium-up){
          width: calc(40% - 10px);
        }
      }
    }
  }

  .fullWidth--true.container {
    &.columns {
      margin-left: 0;
      margin-right: 0;
    }
    .sixteen.columns {
      width: 100%;
      margin: 0;
      &.gallery__content {
        margin-top: $gutter;
      }
    }
  }

  .fullWidth--false {
    .gallery__item {
      padding-left: 5px;
      padding-right: 5px;
      padding-top: 15px;
    }
  }

  .gallery__item {
    width: 100%;
    float: left;
    @include respond-to($medium-up){
      width: 25%;
    }
    img {
      width: 100%;
      display: block;
    }
  }

  .gallery__item--width2 {
    @include respond-to($medium-up){
      width: 50%;
    }
  }
}

// Gallery block
.imageGallery .columns {
  margin-bottom: 20px;
}

/* #Home page - text columns
================================================== */

.textColumns__block {
  @include respond-to($small) {
    margin-bottom: 20px;
  }
}

.textColumns {
  .large_text {
    @include headline-style($headline-font-size);
    margin: 25px 0;
  }
  .border-style--none { padding: 1px; }
  .border-style--box {
    border: thin solid #aaaaaa;
  }
  .border-style--quote {
    border-left: thin solid #aaaaaa;
  }
  a.continue-button {
    margin-top: 10px;
  }
  
    .ls-shape1 .svgShape {
      opacity: 0.5;
      svg {
        @include prefix(transform, rotate(-42deg), ms webkit spec);
      }
    }
  
    .ls-shape2 .svgShape {
      opacity: 0.8;
      svg {
        @include prefix(transform, rotate(4deg), ms webkit spec);
      }
    }
  
    .ls-shape3 .svgShape {
      opacity: 0.4;
      svg {
        @include prefix(transform, rotate(-55deg), ms webkit spec);
      }
    }
  
    .ls-shape4 .svgShape {
      opacity: 1;
      svg {
        @include prefix(transform, rotate(90deg), ms webkit spec);
      }
    }
  

  
    .rs-shape1 .svgShape {
      opacity: 0.6;
      svg {
        @include prefix(transform, rotate(-10deg), ms webkit spec);
      }
    }
  
    .rs-shape2 .svgShape {
      opacity: 0.5;
      svg {
        @include prefix(transform, rotate(30deg), ms webkit spec);
      }
    }
  
    .rs-shape3 .svgShape {
      opacity: 0.8;
      svg {
        @include prefix(transform, rotate(-9deg), ms webkit spec);
      }
    }
  
    .rs-shape4 .svgShape {
      opacity: 0.3;
      svg {
        @include prefix(transform, rotate(23deg), ms webkit spec);
      }
    }
  
}

.textColumn {
  margin-bottom: -20px; //offset the padding-bottom from textColumn__content
  @include respond-to($small) {
    margin-bottom: 0;
  }
}

.textColumn__content {
  padding: 20px;
  &.columnImage--none {
    h3 { margin-top: -9px }
    &.columnTitle--none {
      p:first-child { margin-top: -5px; }
    }
  }
  p {
    margin-bottom: 0;
    margin-top: 10px;
  }
  .textButton {
    display: block;
    margin-top: 10px;
  }
}

.textColumn__title {
  margin-top: 20px;
  margin-bottom: 10px;
}

/* #Home page - map
================================================== */

.maps {
  position: relative;
  max-width: 75%;
  width: 100%;
  @include respond-to($medium-down) {
    max-width: 100%;
    @include flex(none);
  }
  button {
    min-height: 0 !important; //avoid styling conflict with google maps UI
  }
}

.maps iframe {
  display: block;
}

.map-section .flexContainer {
  @include respond-to($medium-down) {
    @include flex-direction(column-reverse);
    @include flex-wrap(wrap);
  }
}

.map-section .flexContainer.overlay__position--right {
  @include flex-direction(row-reverse);
  @include respond-to($medium-down) {
    @include flex-direction(column-reverse);
  }
}

.map__overlay {
  @include flexbox();
  @include align-items(center);
  top: 0;
  max-width: 25%;
  width: 100%;
  @include respond-to($medium-down) {
    @include flex(none);
    bottom: 0;
    width: 100%;
    max-width: 100%;
    position: relative;
  }
}

.map__title { margin-top: 0; }

.map__text {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
}

.map__textItem {
  padding-bottom: 10px;
  line-height: 1.5;
}

.map__textItem:last-child {
  padding-bottom: 0;
}

.map__textItem p:last-child {
  margin-bottom: 0;
}

.map__button {
  margin-top: 20px;
}

.overlay__container {
  margin: 0 auto;
  max-width: 75%;
  padding: 20px 0;
  width: 100%;
  @include respond-to($medium-down) {
    max-width: 80%;
  }
  p {
    font-family: "Work Sans", sans-serif;
  }
}

.map__placeholder {
  img {
    @include object-fit(cover);
  }
}

/* #Home page - video
================================================== */

.video {
  .textButton {
    cursor: pointer;
  }
  .homepage-video {
    position: relative;
    overflow: hidden;
    transition: height 0.3s ease-in-out;
    @include respond-to($small-down){
      background-color: transparent;
    }
    img {
      width: 100%;
      display: block;
    }
    iframe {
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      height: 100%;
      width: 100%;
    }
    .homepage-video--media {
      width: 100%;
      height: auto;
      padding-top: 0;
    }
    .placeholder-image--true a.video__playButton {
      pointer-events: none;
    }

    a.video__playButton {
      transition: all 0.5s;
      position: relative;
      &::before {
        position: absolute;
        top: 100%;
        left: 0;
        overflow: hidden;
        padding: 0;
        margin-top: 3px;
        width: 0;
        display: block;
        height: 1px;
        content: '';
        transition: width 0.5s;
      }

      &:hover::before,
      &:focus::before {
        width: 100%;
      }
    }
    .mediaWrapper {
      position: absolute !important;
      top: 0;
      left: 0;
    }
    .placeholder-svg--video,
    .homepage-video__placeholder,
     {
      display: none;
    }
  }

  .homepage-video__placeholder {
    position: relative;
  }
}



/* #Global banner
================================================== */

.globalBanner {
  position: relative;
}

.globalBanner .sectionHeader__headline.headline {
  text-transform: none;
}

.globalBanner .caption {
  @include respond-to($small-down) {
    margin-bottom: 20px;
  }
}

.globalBanner .caption__content {
  .headline {
    text-transform: none;
  }
  .heading,
  .pretext,
  .subtitle {
    color: #000000;
  }
  .pretext,
  .subtitle {
    font-size: 18px;
  }
  .pretext {
    margin-bottom: 5px;
  }
  .subtitle {
    margin-top: 5px;
  }
}

.globalBanner.bannerImage--false,
.mainContentArea {
  margin-top: 60px;
}

.globalBanner.bannerImage--true {
  margin-bottom: 60px;
  @include respond-to($medium-down) {
    margin-bottom: 40px;
  }
  @include respond-to($small-down) {
    margin-bottom: 0;
  }
}

.globalBanner ~ .mainContentArea {
  margin-top: 0;
}

/* #Home page - Featured blog
================================================== */

.featuredBlog .featuredArticle__tags {
  margin-bottom: 0;
}

.featuredBlog .featuredArticle {
  padding-bottom: 20px;
  @include respond-to($small-down){
    padding-bottom: 0;
  }
}

/* #Home page - Featured product
================================================== */

.featuredProduct .product__section {
  @include respond-to($medium-down){
    @include flex-wrap(wrap);
    @include flex-direction(row);
    .product_gallery {
      padding-bottom: 35px;
    }
  }
}

.featuredProduct__details {
  background-color: #eef5fa;
  padding: 40px;
  @include respond-to($small-down){
    width: 100%;
    margin: 0;
    padding: 20px;
  }
  &.show-border--false {
    padding: 0;
  }
}

.featuredProduct__productImages img {
  background-color: transparent;
}

.featuredProduct .purchase-details__buttons {
  @include flex(1 0 50%);
}

/* #Home page - Featured collection
================================================== */

.featuredCollection {
  .hover-info--false {
    .info {
      display: none;
    }
  }
  .collection__item {
    padding-bottom: 20px;
    @include respond-to($small-down){
      padding-bottom: 0;
    }
  }
}

/* #Home page - collection in detail
================================================== */

.collection-in-detail {
  .section {
    margin: 0;
  }
  .half {
    width: 50%;
    float: left;
    position: relative;
    @include respond-to($medium-down){
      width: 100%;
    }
  }
  .product-details {
    padding: 40px 2rem;
  }

  .frontpage_product_stagger--true {
    .section:nth-child(even) .half {
      float: right;
    }
  }
}

/* #Home page - image with text
================================================== */

//Single image enabled
.image1--true .imageWithText__text,
.image2--true .imageWithText__text {
  @include flex(1 0 60%);
  top: 20px;
  @include respond-to($large-down) {
    margin-left: 0;
    margin-right: 0;
    margin-top: 5px;
    top: 0;
    @include flex(1 0 100%);
  }
  @include respond-to($large-down) {
    margin-top: 20px;
  }
}

.imageWithText__image-wrapper {
  position: relative;
  z-index: 2;
  @include flex(1 0 40%);
  text-align: right;
  max-width: 420px;
}

.imageWithText__text {
  position: relative;
  z-index: 0;
  width: 60%;
  @include respond-to($medium-down) {
    margin-left: 0;
    margin-right: 0;
    width: 100%;
  }
}

//Both images enabled
.image1--true.image2--true .imageWithText__image-wrapper {
  @include flex(1 0 25%);
  //Centering for IE11
  @media all and (-ms-high-contrast:none) {
    @include flex(none);
  }
}

.image1--true.image2--true .imageWithText__text {
  @include flex(1 0 30%);
}

.image1--true.image2--true .imageWithText__image-1-wrap {
  margin-bottom: 40px;
}

.image-without-text.image1--true.image2--true .imageWithText__image-1-wrap {
  margin-bottom: 160px;
  margin-left: 20px;
  left: 0;
  @include respond-to($large-down){
    margin-bottom: 40px;
    margin-left: 0;
  }
}

.image-without-text.image1--true.image2--true .imageWithText__image-2-wrap {
  right: 20px;
}


.imageWithText__section.image-position--left {
  &.image1--true .imageWithText__text,
  &.image2--true .imageWithText__text {
    margin-right: 20px;
    @include respond-to($large-down){
      margin-right: 0;
    }
  }
  .imageWithText__info {
    padding-left: 60px;
    @include respond-to($large-down){
      padding: 40px 20px;
    }
  }
  .imageWithText__image-wrapper {
    right: -20px;
    text-align: right;
    @include respond-to($large-down){
      right: 0;
    }
  }
  &.image1--true.image2--true .imageWithText__image-wrapper {
    @include respond-to($large-down){
      right: 10px;
    }
  }
  &.image1--true.image2--true .imageWithText__text {
    margin-right: 5%;
    @include respond-to($large-down){
      @include flex(1 0 100%);
      margin: 20px 0 0;
    }
  }
  &.image1--true.image2--true .imageWithText__image-1-wrap {
    right: -5%;
    @include respond-to($large-down){
      left: 10px;
    }
  }
}

.imageWithText__section.image-position--right {
  @include flex-direction(row-reverse);
  &.image1--true .imageWithText__text,
  &.image2--true .imageWithText__text {
    margin-left: 20px;
    @include respond-to($large-down){
      margin-left: 10px;
    }
  }
  .imageWithText__info {
    padding-right: 60px;
    @include respond-to($large-down){
      padding: 40px 20px;
    }
  }
  .imageWithText__image-wrapper {
    left: -20px;
    text-align: left;
    @include respond-to($large-down){
      left: 0;
    }
  }
  &.image1--true.image2--true .imageWithText__image-wrapper {
    @include respond-to($large-down){
      left: 10px;
    }
  }
  &.image1--true.image2--true .imageWithText__text {
    margin-left: 5%;
    @include respond-to($large-down){
      @include flex(1 0 100%);
      margin: 10px 0;
    }
  }
  &.image1--true.image2--true .imageWithText__image-1-wrap {
    left: -5%;
    @include respond-to($large-down){
      right: 20px;
    }
  }
}

//z-index check

.imageWithText__topIndex--true {
  position: relative;
  z-index: 3;
}

.imageWithText__section {
  @include flexbox();
  @include align-items(flex-end);
  @include justify-content(center);
  @include respond-to($large-down){
    @include flex-wrap(wrap);
  }

  svg.imageWithText__image2 {
    fill: lighten($color-blankstate, 25%);
    background-color: lighten($color-blankstate-background, 25%);
  }
}

.imageBox {
  @include object-fit(cover, right top);
  background-repeat: no-repeat;
  max-width: 100%;
  max-height: 90vh;
}

.imageWithText__info {
  padding: 40px;
  background-color: #eef5fa;
  &.show-border--true {
    border: thin solid #cccccc;
  }
}

.imageWithText__info .title {
  margin-top: 0;
}

/* #Home page - slideshow
================================================== */

.text-animation--true {
  .caption-content {
    opacity: 0;
    @include respond-to($small-down) {
      opacity: 1;
      animation-duration: 0s;
    }
  }
}

div.slideshow-section {
  button.flickity-prev-next-button {
    height: 35px;
    width: 35px;
    background: transparent;
    @include respond-to($small-down) {
      display: none;
    }
  }
  button.flickity-prev-next-button.next {
    @include respond-to($large-down) {
      right: 5px;
    }
  }
  button.flickity-prev-next-button.next:hover {
    @include respond-to($large-down) {
      right: -2px;
    }
  }
  button.flickity-prev-next-button.previous {
    @include respond-to($large-down) {
      left: 5px;
    }
  }
  button.flickity-prev-next-button.previous:hover {
    @include respond-to($large-down) {
      left: -2px;
    }
  }
  .textButton {
    font-size: 16px;
  }
}

.slideshow:hover {
  .flickity-prev-next-button {
    display: block;
    border: 0px;
    @include respond-to($medium-down) {
      display: none;
    }
  }
}

.slideshow {
  position: relative;
  opacity: 0;
  .flickity-viewport {
    overflow: hidden;
  }
  .gallery-cell {
    width: 100%;
    background-color: #666;
    counter-increment: gallery-cell;
    @include respond-to($small-down) {
      background-color: transparent;
    }
    img {
      width: 100%;
      display: block;
    }
  }
  .caption {
    transform: translate3d(0px, 0px, 0px);
    @include respond-to($medium-down) {
      font-size: 16px;
    }
  }

  .text_align--right .svgShape { right: 0; }
  .text_align--left .svgShape { left: 0; }
}

.slideshow.flickity-enabled {
  opacity: 1;
}

.slideshow.slideshow_animation--fade {
  .flickity-viewport {
    background-color: #eef5fa;
  }
  .flickity-slider {
    transform: none !important;
  }
  .gallery-cell {
    left: 0 !important;
    opacity: 0;
    transition: opacity 0.2s ease-in-out;
    z-index: -1;
    margin: 0 0.005%;
    width: 99.99%;
  }
  .gallery-cell.is-selected {
    opacity: 1;
    z-index: 0
  }
}

/* #Home page - testimonial
================================================== */

.homepage-testimonial {
  &[data-column-amount='1'],
  &[data-column-amount='2'],
  &[data-column-amount='3'] {
    .flickity-prev-next-button {
      display: none;
    }
  }
}

.testimonial-section:hover .flickity-prev-next-button {
  display: block;
  @include respond-to($small-down) {
    display: none;
  }
}

.testimonial-section {
  .sectionHeader__pretext {
    opacity: 0.7;
  }
  .flickity-prev-next-button.previous {
    @include respond-to($medium-up) {
      left: -34px;
    }
  }
  .flickity-prev-next-button.previous:hover {
    @include respond-to($medium-up) {
      left: -40px;
    }
  }
  .flickity-prev-next-button.next {
    @include respond-to($medium-up) {
      right: -34px;
    }
  }
  .flickity-prev-next-button.next:hover {
    @include respond-to($medium-up) {
      right: -40px;
    }
  }
}

.flickity-resize .testimonial__block {
  min-height: 100%;
}

.testimonial__block {
  background-color: transparent;
  border: thin solid #cccccc;
  .galleryCell--content {
    text-align: center;
    background: #eef5fa;
    padding: 15px;
    img {
      margin-top: 15px;
      max-width: 120px;
    }
    svg {
      padding-top: 15px;
      max-width: 70px;
      opacity: 0.5;
    }
    .galleryCell--name {
      margin-bottom: 0;
    }
    .galleryCell--additional p {
      margin-top: 0;
      opacity: 0.7;
    }
  }
}

/* #Home page - HTML Reviews
================================================== */

.html-reviews {
  margin-top: 2rem;

  .container {

    .speech-bubble-container {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      margin-bottom: 3rem;

      @media (max-width: 798px) {
        flex-direction: column;
        align-items: center;
      }

      & > div:not(:last-child) {
        @media (max-width: 798px) {
          margin-bottom: 4rem;
        }
      }

      .review-item-wrapper {
        max-width: 30%;
        max-height: 400px;

        @media (max-width: 798px) {
          max-width: 475px;
        }

        .speech-bubble {
          display: flex;
          flex-direction: column;
          align-items: center;
          position: relative;
          background: #D7EBEF;
          border-radius: 1.25rem;  
          border: 2px solid #99BDC6;
          height: 80%;   
  
          .reviews-google-logo {
            position: absolute;
            transform: translateY(-50%) scale(2);
          }
    
          .html-reviews-stars {
            width: 50%;
            margin-top: 2.5rem;
          }
    
          p {
            font-size: 17px;
            color: #5A6369;
            padding: 1.25rem;

            .review-quote-icon {
              width: 20px;
              margin-bottom: 1rem;
            }
          }
        }

        .speech-bubble::before {
          content: '';
          position: absolute;
          width: 0;
          z-index: 0;
          border-style: solid;
          border-width: 21px 24px 0 0;
          border-color: #99bdc6 transparent transparent transparent;
          bottom: -23px;
          left: 79%;
          margin-left: -10.5px;
          display: block;
        }
    
        .speech-bubble::after {
          content: '';
          position: absolute;
          display: block;
          width: 0;
          z-index: 1;
          border-style: solid;
          border-width: 21px 24px 0 0;
          border-color: #d7ebef transparent transparent transparent;
          bottom: -19px;
          left: 79%;
          margin-left: -8.5px;
        }

        .reviewer-info {
          height: 20%;

          padding-left: 30px;
          
          .reviewer-initial-icon {
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: 50%;
            width: 60px;
            height: 60px;
            margin-right: 1rem;
            font-size: calc(200%);
          }

          p {
            font-size: 1.25rem;
            color: #5A6369;
          }
        }
      }
    }
  }
}

.review-icon-blue {
  background: #2F3091;
}

.review-icon-orange {
  background: #F06B4F;
}

.review-icon-pink {
  background: #EB135A;
}

.review-btn {
  background: #2d99b2;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  color: #fff;
  display: inline-block;
  font-size: 25px;
  padding: 10px 40px;

  @media (max-width: 798px) {
    margin-bottom: 3rem;
  }
}
.review-btn:hover {
color: #fff;
}

/* #Home page - newsletter
================================================== */

.newsletter__wrapper {
  @include flex-wrap(wrap);
  @include align-items(center);
  @include justify-content(space-between);
}

.imagePosition--right {
  @include flex-direction(row-reverse);
  @include respond-to($small-down) {
    @include flex-direction(column-reverse);
  }
}

.newsletter__content {
  padding: 40px;
  @include flexbox();
  @include align-items(center);
  @include justify-content(center);
  @include respond-to($medium-down) {
    padding: 20px;
    width: 100%;
    left: auto;
  }
}

.newsletter__image {
  @include respond-to($medium-down) {
    width: 100%;
  }
}

h2.newsletter__title {
  margin-top: 0;
}

/* #Home page - richtext
================================================== */

.richtext__section,
.block__rich_text_and_image {
  position: relative;
}

.richtext__container {
  padding: 40px 0;
  position: relative;
  z-index: 2;
  font-size: 17px;
  h2 {
    font-size: 1.5em;
    margin-top: 0;
    margin-bottom: 0;
  }
  p {
    margin-bottom: 0;
  }
  &.text-size--small {
    font-size: calc(17px * 0.8);
  }
  &.text-size--large {
    font-size: calc(17px * 1.2);
  }
}

.fullWidth--false .richtext__container {
  padding: 40px 30px;
}

/* #Home page - pricing table
================================================== */

.pricingTable__item {
  width: calc(33.333% - 40px);
  margin-right: 20px;
}

.pricingTable__headers {
  @include justify-content(space-between);
  @include respond-to($medium-down) {
    @include align-items(flex-end);
    border-bottom: 10px solid;
    margin-top: 30px;
  }
}

.pricingTable__header {
  display: block;
  overflow: hidden;
  @include flexbox();
  @include align-items(center);
  @include flex(1 0 auto);
  @include respond-to($medium-down) {
    cursor: pointer;
    flex: 1 0 33.3333%;
    @include flexbox();
    @include align-items(center);
    @include justify-content(center);
    @include align-self(stretch);
    text-align: center;
    margin: 0;
  }
  &:last-child {
    margin-right: 0;
  }
}

.pricingTable__title {
  padding: 20px;
  text-transform: none;
  margin: 0;
  @include headline-style(floor($headline-font-size*0.78));
  @include flex(1 0 auto);
  text-transform: none;
  max-width: 100%;
  line-height: 1.3;
  @include respond-to($medium-down) {
    padding: 20px 10px;
    line-height: 1.1;
    @include headline-style(floor($headline-font-size*0.68));
  }
}

.pricingTable__contents {
  position: relative;
  @include justify-content(space-between);
}

.pricingTable__content {
  color: #042c33;
  background-color: darken(#eef5fa, 5);
  @include flex(1 0 auto);
  @include respond-to($medium-down){
    @include flex(0 1 auto);
    height: 0;
    display: none;
    margin: 0;
  }

  .placeholder-svg {
    height: initial;
  }
  .modal_price {
    @include headline-style(floor($headline-font-size*0.78));
    margin-top: 30px;
    margin-bottom: 30px;
    color: #042c33;
    .sale {
      color: #e85e63;
    }
    .was_price {
      text-decoration: line-through;
      font-size: smaller;
      color: #8c8b8b;
    }
  }
  .product__section.product_form {
    width: 100%;
  }
  .more-information {
    display: inline-block;
    padding: 10px;
    margin-top: 10px;
  }
  &:last-child {
    margin-right: 0;
  }
}

.pricingTable__margin {
  background-color: darken(#eef5fa, 5);
  margin: 0px 40px;
  padding-bottom: 20px;
}

.pricingTable__description {
  border-bottom: 1px solid #cccccc;
  display: block;
  margin-bottom: 10px;
  width: 100%;
  p {
    margin: 0 0 10px;
  }
}

@include respond-to($medium-down){
  .pricingTable__header--active {
    @include prefix(transform, translateY(-24px), ms webkit spec);
    padding-top: 12.5px;
    padding-bottom: 12.5px;
    margin-bottom: -25px;
  }

  .pricingTable__content.pricingTable--active {
    @include flex(1 0 auto);
    height: auto;
    display: block;
  }
}

/* #Home page - instagram feed
================================================== */

section.instagram .flexContainer {
  @include flex-wrap(wrap);
  @include justify-content(space-between);
}

.fullWidth--false .instagram__blocks > div {
  padding-bottom: 20px;
  @include respond-to($small-down){
    width: calc(50% - 10px);
  }
}

.fullWidth--false section.instagram {
  margin-bottom: -20px; //offset the padding-bottom from instagram__blocks
}

.instagramFeed__wrap {
  a {
    display: block;
    line-height: 0;
  }
  img,
  video {
    width: 100%;
    margin-bottom: 10px;
  }
  .vidholder {
    position: relative;
    overflow: hidden;
    line-height: 0;
  }
  img.vidplaceholder {
    opacity: 0 !important; //Used to hide the image behind video
  }
  #instafeed video {
    object-fit: cover;
    position: absolute;
    width: 100%;
    height: calc(100% - 20px);
    left: 0;
    bottom: 0;
    top: 0;
    max-height: 100%;
    max-width: 100%;
  }
}

.fullWidth--true .instagramFeed__wrap {
  #instafeed {
    .column,
    .columns {
      width: 16.6667%;
      margin: 0;
      @include respond-to($medium-down) {
        width: 50%;
      }
      img,
      video {
        margin-bottom: 0;
        height: 100%;
      }
    }
  }
}



#instafeed img,
#instafeed svg,
#instafeed video {
  display: inline;
}

#instafeed .instagram__item,
#instafeed .instagram__placeholder {
  position: relative;
}

.instagramFeed__wrap.fullWidth--false .instagram__item,
.instagramFeed__wrap.fullWidth--false .instagram__placeholder {
  margin-bottom: 0;
}

.instagram__item:after {
  content: "";
  display: block;
  padding-bottom: 100%;
}

.instagram__link {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.instagram__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-size: cover;
}

.instagram__video-link {
  &:after, &:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
  }
  &:after {
    width: 0;
    height: 0;
    border: 16px solid transparent;
    border-left: 20px solid #fff;
    margin-top: -18px;
    margin-left: -7px;
    -webkit-filter: drop-shadow(0px 0px 2px rgba(0,0,0,0.25));
  }
  &:before {
    margin-top: -34px;
    margin-left: -34px;
    width: 60px;
    height: 60px;
    border: 3px solid #fff;
    border-radius: 50%;
    box-shadow: 0 0 4px rgba(black, 0.18);
    background: rgba(black, 0.42);
    transition: background 0.3s ease;
  }
  &:hover {
    &:before {
      background: rgba(black, 0.7);
    }
  }
}


/* #Home page - logo list
================================================== */

.logoBar {
  .show-border--true {
    border-top: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
  }

  
    .ls-shape1 .svgShape {
      opacity: 0.5;
      svg {
        @include prefix(transform, rotate(-82deg), ms webkit spec);
      }
    }
  
    .ls-shape2 .svgShape {
      opacity: 0.8;
      svg {
        @include prefix(transform, rotate(43deg), ms webkit spec);
      }
    }
  
    .ls-shape3 .svgShape {
      opacity: 0.4;
      svg {
        @include prefix(transform, rotate(55deg), ms webkit spec);
      }
    }
  
    .ls-shape4 .svgShape {
      opacity: 1;
      svg {
        @include prefix(transform, rotate(12deg), ms webkit spec);
      }
    }
  

  
    .rs-shape1 .svgShape {
      opacity: 0.6;
      svg {
        @include prefix(transform, rotate(-10deg), ms webkit spec);
      }
    }
  
    .rs-shape2 .svgShape {
      opacity: 0.5;
      svg {
        @include prefix(transform, rotate(30deg), ms webkit spec);
      }
    }
  
    .rs-shape3 .svgShape {
      opacity: 0.8;
      svg {
        @include prefix(transform, rotate(-90deg), ms webkit spec);
      }
    }
  
    .rs-shape4 .svgShape {
      opacity: 0.3;
      svg {
        @include prefix(transform, rotate(53deg), ms webkit spec);
      }
    }
  
}

.logoBar__content {
  @include justify-content(center);
  @include flex-wrap(wrap);
  text-align: center;
  padding: 30px 0;
  @include respond-to($small-down) {
    padding: 10px 0;
  }
  a {
    transition: ease all 0.6s;
    &:hover {
      opacity: 0.6;
    }
  }
}

.logoBar__item {
  max-width: 160px;
  margin: 10px;
  @include respond-to($small-down) {
    width: calc(50% - 20px);
  }
}

/* #Home page - featured promotions
================================================== */

.slider--promotions {
  &:after {
    content: 'flickity';
    display: none;
  }
  @include respond-to($large-up) {
    &:after {
      content: '';
    }
  }
}

.featured-promotions {
  display: block;
  @include respond-to($large-up){
    @include flexbox();
    @include flex-wrap(wrap);
    @include align-items(center);
    @include justify-content(space-between);
  }

  .column,
  .columns {
    @include align-self(self-start);
    &:last-child {
      border-color: transparent;
    }

    h2 {
      line-height: 1;
    }

    img {
      width: 90%;
      margin: 0px auto;
    }
  }
}

/* #Newsletter
================================================== */

/*--- Newsletter popup ---*/

.popup-section {
  display: none;
}

.newsletterPopupModal {
  padding: 10px 10px 0;
  overflow: auto;
  display: block;
  @include respond-to($small-down) {
    padding: 0;
    top: auto;
    bottom: 0;
    width: 100%;
    box-shadow: 0px -4px 5px 0px rgba(0,0,0,0.25);
  }
}

.newsletterPopupModal .featherlight-content {
  padding: 0;
  max-height: none;
  border-bottom: none;
  margin-bottom: 10px;
  @include respond-to($small-down) {
    width: 100%;
    margin-bottom: 0;
  }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    width: 95%;
  }
}

.newsletterPopupModal .featherlight-inner + .featherlight-inner {
  display: none; //fix for theme editor updates
}

.newsletterPopupModal .featherlight-close {
  width: 35px;
  height: 35px;
  margin: 0;
  cursor: pointer;
  transition: color 0.2s;
  text-decoration: none;
  color: #95979c;
  outline: 0;
  background: transparent;
  z-index: 1000;
}

.newsletterPopup.featherlight-inner {
  @include align-items(center);
  @include flexbox();
  @include justify-content(space-between);
  max-width: 740px;
  padding: 0;
  overflow:hidden;
  @include respond-to($medium-down){
    @include flex-wrap(wrap);
    max-width: 100%;
  }
  .popup-signup--false {
    display: none;
  }
  @media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    margin: 0 auto;
  }
}

// Popup on small screens
html.with-featherlight {
  @include respond-to($small-down) {
    overflow: initial;
  }
}

.newsletterPopup {
  @include respond-to($small-down) {
    pointer-events: auto;
    max-width: 100%;
    box-shadow: 0px -4px 5px 0px rgba(0,0,0,0.25);
    bottom: 0;
    left: 0;
    margin-bottom: 0;
  }
}

.newsletterPopupModal:last-of-type {
  background: #042c33;
  @include respond-to($small-down) {
    background: transparent;
  }
}

.newsletterPopup.both-names--false .textAlign--right .newsletter__submit {
  @include justify-content(flex-end);
}

.newsletterPopup.both-names--false .textAlign--left .newsletter__submit {
  @include justify-content(flex-start);
}

.newsletterPopup.both-names--false .textAlign--center .newsletter__submit {
  @include justify-content(center);
}

.newsletter-image--true.newsletterPopupImage--right img {
  object-position: right;
  @include respond-to($medium-down) {
    object-position: center;
  }
}

.newsletter-image--true.newsletterPopupImage--left img {
  object-position: left;
  @include respond-to($medium-down) {
    object-position: center;
  }
}

.newsletter__inner {
  width: 100%;
}

.newsletterPopup__image {
  @include flex(1 0 48%);
  @include respond-to($medium-down) {
    width: 100%;
    @include flex(1 0 100%);
  }
  @include respond-to($small-down) {
    display: none;
  }
  img {
    width: 100%;
    display: block;
    max-height: 100vh;
    object-fit: contain;
    @include respond-to($medium-down) {
      max-height: 50vh;
    }
  }
}

.newsletterPopup__info {
  @include flex(1 0 48%);
  @include respond-to($medium-down) {
    @include flex(1 0 100%);
    position: relative;
    padding: 20px;
  }
}

.newsletter-image--false .newsletterPopup__info {
  width: 90%;
  margin: 0px auto;
  position: relative;
  height: auto;
  float: none;
}

.newsletterPopupImage--right {
  @include flex-direction(row-reverse);
}

.newsletterPopupImage--left .newsletterPopup__info {
  right: 0;
}

.popup__logo {
  max-height: 100px;
  padding-top: 40px;
  margin-bottom: 20px;
  @include respond-to($small-down) {
    display: none;
  }
}

.newsletterPopup__description {
  @include prefix(transform, translateY(0%), ms webkit spec);
  padding: 30px;
  @include respond-to($medium-down) {
    width: auto;
    padding: 0;
    width: 100%;
    position: relative;
  }
}

.newsletter-image--false .newsletterPopup__description {
  position: relative;
  top: 0;
}

.newsletter-image--true .newsletterPopup__description {
  @include respond-to($medium-down) {
    top: 0%;
    width: 100%;
  }
}

.newsletterPopup__description h2 {
  margin-top: 0;
  margin-bottom: 0;
}

/*--- Newsletter form styling ---*/

.flex-row {
  @include flexbox();
  @include flex-wrap(wrap);
  @include justify-content(space-between);
}

.flex-row input {
  padding-left: 0;
  padding-right: 0;
  border: 0px;
  border-bottom: 1px solid #cccccc;
  display: block;
  height: 44px;
  margin: 5px 0;
  width: auto;
  @include respond-to($small-down) {
    margin: 5px 0 0;
    width: 100%;
  }
}

.flex-row input.action_button {
  @include respond-to($small-down) {
    margin-top: 20px;
  }
}

.newsletter__names input {
  width: 100%;
}

.both-names--true .newsletter__names input {
  width: calc(50% - 5px);
  @include respond-to($medium-down) {
    width: 100%;
  }
}

.newsletter__submit .newsletter__contactEmail {
  @include flex(1 0 auto);
  margin-right: 10px;
  width: 100px;
  @include respond-to($medium-down) {
    @include flex(1 0 100%);
    margin-right: 0;
    width: 100%;
  }
}

.newsletter__form .action_button.sign_up {
  float: right;
  border-radius: 0;
  @include respond-to($small-down) {
    float: left;
  }
}

.newsletter__firstName,
.newsletter__lastName,
.newsletter__contactEmail {
  border: 0;
  border-bottom: 1px solid #cccccc;
}

.email-row .newsletter__contactEmail {
  width: 100%;
}

.newsletter__contactEmail + .action_button.sign_up {
  margin-top: 20px;
}

.newsletter__contactEmail + .action_button.sign_up {
  margin-top: 5px;
  @include respond-to($medium-down) {
    margin-top: 20px;
    width: 100%;
  }
}

//Sidebar block styling
.block__newsletter input.newsletter__contactEmail {
  width: 100%;
}

.block__newsletter .newsletter__contactEmail + .action_button.sign_up {
  margin-top: 20px;
}

/* #Footer
================================================== */

body:not(.index) .footer {
  margin-top: 80px;
  @include respond-to($medium-down) {
    margin-top: 40px;
  }
}

body:not(.index) .footer.footerIncrease--true {
  margin-top: 150px;
  @include respond-to($medium-down) {
    margin-top: 80px;
  }
}

.footer__socialIcons ul.social_icons li {
  display: inline-block;
  float: none;
  @include respond-to($medium-down) {
    text-align: center;
  }
}

.footer__container-details {
  padding-top: 40px;
  padding-bottom: 40px;
  @include respond-to($medium-down) {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

.footer__telephone {
  margin-top: 10px;
}

.footer__menu {
  position: relative;
  ul li {
    padding-bottom: 10px;
  }
}

.footer__content {
  position: relative;
  p {
    margin: 0;
  }
}

.mobileToggle {
  cursor: pointer;
  display: none;
  left: 0;
  margin-top: 5px;
  position: absolute;
  top: 0;
  width: 100%;
  @include respond-to($medium-down) {
    display: block;
  }
  &.active .icon-down-caret {
    color: #042c33;
    &:before {
      content: '\e910';
    }
  }
}

.mobileToggle.active + .toggle_content {
  padding-bottom: 20px;
}

.block__logo {
  @include respond-to($medium-down) {
    .footer__content,
    .footer__list {
      text-align: right;
    }
  }
}

.block__page + .block__newsletter,
.block__text + .block__newsletter,
.block__menu + .block__newsletter {
  @include respond-to($medium-down) {
    margin-top: 20px;
  }
}

.footer__title {
  $footer-font-size: 19;
  @include headline-style(floor($footer-font-size), 1);
  letter-spacing: 0;
  margin: 0;
  margin-bottom: 20px;
  color: #042c33;
  &.active {
    svg {
      stroke: #042c33;
      fill: #042c33;
    }
  }
  @include respond-to($medium-down){
    cursor: pointer;
    padding: 10px 0;
  }
  &.logo {
    font-weight: 400;
    font-family: "Work Sans", sans-serif;
    text-transform: uppercase;
  }
}

.footer__credits {
  a {
    color: #042c33;
  }
}

.footer__list {
  padding-left: 0;
  list-style-type: none;
  text-align: right;
}

.logo.footer__title {
  font-size: 20px;
}

.footer__credits {
  text-align: center;
  @include respond-to($large-up){
    text-align: right;
  }
  a {
    color: #042c33;
    &:hover {
      color: #0c687a;
    }
  }
}

.footer {
  font-size: 14px;
  color: #042c33;

  @include respond-to($medium-down){
    .social_icons {
      font-size: 20px;
    }
  }

  .toggle_content {
    display: none;
    img { max-width: 100%; }
    ul {
      margin-top: 0;
      margin-bottom: 0;
    }
    p { margin-top: 0; }
    @include respond-to($medium-up){
      display: block;
    }
  }

  .icon-down-caret {
    cursor: pointer;
    margin: 10px;
    fill: none;
    stroke: #042c33;
    stroke-width: 5;
    @include respond-to($medium-up){
      display: none;
    }
  }

  .payment_methods {
    margin: 15px 0;
    text-align: center;
    @include respond-to($large-up){
      text-align: right;
    }
    svg {
      padding-right: 4px;
      height: 30px;
      width: 48px;
    }
  }

  .empty-column {
    width: 100%;
    height: 1px;
  }

  .footer-logo {
    display: inline-block;
    width: 100%;
    height: auto;
    max-width: 250px;
    @include respond-to($medium-down) {
      margin: 0px auto;
    }
    @include respond-to($medium-up) {
      width: 80%;
    }
    @include respond-to($large-up) {
      width: 60%;
    }
  }
}

.footer .contact-form {
  input[type="submit"] {
    margin-top: 10px;
  }
}

.footer .newsletter__form {
  .email-row {
    width: 100%;
  }
  .flex-row,
  .email-row {
    width: 100%;
    @include flex-direction(column);
    input[type="email"] {
      padding: 0;
      background-color:#042c33;
    }
    input[type="email"],
    input[type="text"] {
      margin: 5px 0 0;
      padding: 0;
      background-color:#042c33;
    }
    input[type="submit"] {
      margin-top: 20px;
    }
  }
}

/* #Font-Face
================================================== */
/*  This is the proper syntax for an @font-face file.
    Upload your font files to Assets and then
    copy your FontName into code below and remove
    comment brackets */

/*  @font-face {
      font-family: 'FontName';
      src: url('FontName.eot');
      src: url('FontName.eot?iefix') format('eot'),
           url('FontName.woff') format('woff'),
           url('FontName.ttf') format('truetype'),
           url('FontName.svg#webfontZam02nTh') format('svg');
      font-weight: normal;
      font-style: normal; }
*/

/* #Custom Styles
================================================== */
   /*
.announcementBar {
  height: 42px;
  background-color: red;
  background-image: linear-gradient(to right, Turquoise , LightSeaGreen );
}
*/
   
.footer {
  background-color: #042c33;
  color: white;
}
   
.footer__title {
  color: white;
}
   
.mainBar {
  margin-bottom: 6px !important;
}
   
.sticky_header {
  position: fixed;
  top: 0;
  width: 100%;
  background-color: white;
  z-index: 999999;
  margin-bottom: 200px;
}
   
.shapesOverflow {
  margin-top: 140px;
}
   
li .footer_link {
  color: white;
}
   
.credits a {
  color: white !important;
}
   
.footer__telephone a {
  color: white !important;
}
   
.featuredArticle__title {
  min-height: 2.5em;
}
   
.excerpt {
  max-width: 100% !important;
}
   
 .videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
   
.sectionHeader {
  padding-bottom: 0px !important;
}
   
.testimonial {
  font-size: 1.4em !important;
}
   
.second_menu {
  font-family: "Work Sans", sans-serif;
  font-weight: 300;
  font-size: 16px;
  text-transform: none;
  letter-spacing: 0px;
}
   
.cart-icon {
  font-weight: bold !important;
}
   
.mega-menu__image-caption-link {
  img {
    width: 25% !important;
    height: auto !important;
    float: left !important;
  }
}
   
.mega-menu__image-caption-link {
  display: inline-block !important;
}
   
.newsletter__contactEmail {
  background-color: #042c33 !important;
  color:#ffffff !important;
}
   
.dropdown_content {
  background-color: white !important;
  min-height: 400px !important;
}
   
.logo-list-section {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}
   
.richtext__container {
  padding-top: 0px !important;
  padding-bottom: 0px !important;
  margin-top: 0px !important;
  margin-bottom: 0px !important;
}

.slideshow {
  @include respond-to($small-down) {
    margin-top: 100px;
  }
}
   
.video {
  width: 80% !important;
  display: block !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
   .__pf h3{
   margin-top: 45px !important;
   }
   
   .product_gallery_nav img {max-width: unset !important;}
   table#google_reviews tr { display: none; }
table#google_reviews tr.active { display: table-row; }
   a.reviews_load_more {margin: 0 auto;}
   #finance_page_text{
   	margin-bottom: 40px;
   }
   #finance_page_header{
   	margin-top: 40px;
   }
   #FileUpload {
    border: none;
}
   img[usemap], map area{
    outline: none;
}
.review-stars ul li i {color: #2d99b2 !important;}
   p.bold-upsell__intro-content, .bold-product__description{
     font-size: medium;
      
      line-height: normal;
   }
   .bold-product__description #finance_page_header {margin-top: 25px;}
   .bold-product__description .action_button.small {margin-top: 20px;}

/*#===========================================
   * MOBILE RESPONSIVE
   *=========================================*/

   @media(max-width:722px){
       .telphone { display:none; }
       .floating-phone {
          display: block !important;
          position: fixed;
          bottom: 14%;
          z-index: 99;
          right: 0;
          background: #41bed0;
          padding: 11px 56px;
      }
      .floating-phone .phone-icon, .floating-phone .hand-icon {
          top: 28%;
      }
      .floating-phone .phone-icon {
          position: absolute;
          left: 15px;
      }
      .floating-phone .hand-icon {
          position: absolute;
          right: 12px;
      }
      .floating-phone a {
          display: block;
          color: #fff;
          font-size: 21px;
      }
   }
   .product-pagefly-47159a35 .announcementBar, .product-pagefly-75b27e88 .announcementBar, .product-pagefly-ab4f3da1 .announcementBar  {display: none;}
   .featuredContact__form .c-editor {padding-right: 10px !important;}
   
   
   .sale_banner {
     display: none !important;
   }

  


/* Compare  Landing */
.page-compare-landing{
  background-color: white;
}
.overlap-banner{
  .overlap-banner__image{
    display: flex;
    max-height:400px;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    img{
      display: block;
      width: 100%;
      height: auto;
    }
    &[data-cover="true"]{
      position: relative;
      width: 100%;
      height:650px;
      @include respond-to($medium-down){
        height:300px;
      }
      img{
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        object-fit: cover;
      }
    }
  }
  .overlap-banner__content{
    margin-top: -45px;
    @include respond-to($medium-down){
      margin-top: -20px;
    }
  }
  .overlap-compare{
    display: flex;
    background-color: white;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.33);
    flex-wrap: wrap;
    .overlap-compare__item{
      flex:1 1 50%;
      padding: 25px;
      color:#0c687a;
      display: flex;
      justify-content: center;
      &:first-of-type{
        position: relative;
        &::before{
          content:"";
          position: absolute;
          right: 0;
          top: 20px;
          bottom: 45px;
          width: 1px;
          background-color: #0c687a;
        }
      }
      
      &:not(:first-of-type){
        position: relative;
        &::before{
          content:"vs.";
          position: absolute;
          top: 20px;
          left: 0;
          transform: translateX(-50%);
          font-size: 27px;
          font-weight: 700;
          background-color: #fff;
        }
      }
      
      @include respond-to($medium-down){
        flex:1 1 100%;
        padding: 21px 15px;
        &:first-of-type{
          &::before{
            right: 15px;
            top: unset;
            bottom: 0px;
            width: unset;
            left:15px;
            background-color: #0c687a;
            height: 1px;
          }
        }
        &:not(:first-of-type){
          position: relative;
          &::before{
            content:"vs.";
            position: absolute;
            top: 0px;
            left: 50%;
            transform: translate(-50%, -50%);
            font-size: 27px;
            font-weight: 700;
            background-color: #fff;
            padding: 0 10px;
          }
        }
      }
      .heading{
        // text-align:center; 
        color: #0c687a;
        margin-top: 0;
      }
      ul{
        margin: 0;
        font-size: 1.2rem;
        padding: 0;
        list-style-position: inside;
        @include respond-to($medium-down){
         font-size: 1rem;
        }
      }
      li::marker{
        color: #0c687a;
      }
      .fine{
        font-size:0.8rem;
        font-style: italic;
        margin-top: 15px;
        @include respond-to($medium-down){
          margin-top: 10px;
        }
      }
    }
  }
}
.compare-chair{
  * {
    color: #0c687a;
  }
  .compare-chair__intro{
    text-align:center;
    max-width:650px;
    display: block;
    margin: 0 auto;
    font-size: 1.6rem;
    .image{
      max-width: 720px;
      display: block;
      margin: 0 auto;
      img{
        width: 100%;
      }
    }
  }
  .compare-chair__headings{
    display: flex;
    > * {
      flex: 1 1 50%;
      text-align: center;
    }
  }
  .compare-chair__container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(3, auto);
    grid-auto-flow: column;
    align-items: center;

    @include respond-to($medium-down){
      margin: 0 -10px;
    }

    .chair-info{
      display: flex;
      align-items: center;
      padding: 10px 45px;
      justify-content: center;
      position: relative;

      &[data-side="left"]{
        border-right: 1px solid #0c687a;
      }
      &:nth-child(3n+1),
      &:nth-child(3n+2){
        &::before{
          content:'';
          position: absolute;
          bottom: 0px;
          left: 45px;
          right: 45px;
          border-bottom: 1px dashed #0c687a;
        }
      }

      @include respond-to($medium-down){
        display: block;
        padding: 10px;
        height: 100%;
        &:nth-child(3n+1),
        &:nth-child(3n+2){
          &::before{
            right: 10px;
            left: 10px;
          }
        }
      }

      .chair-info__image{
        height: 110px;
        margin-bottom: 10px;
        display: block;
        img{
          height: 100%;
          width: auto;
          display: block;
        }
      }

      .chair-info__content{
        padding-left: 10px;
        .red{
          color:#FF3838;
          margin: 0;
          font-size: 1.0rem;
        }
        .heading{
          margin: 0;
        }
        .chair-info__rating{
          display: flex;
          
          .stars{
            width: 110px;
            padding-right: 10px;
            height: 22px;
            svg{
              width: 100%;
            }
          }
          .rating, .rating strong{
            color:black;
          }
          @include respond-to($medium-down){
            display: block;
            .stars{
              width: 90px;
            }
          }
        }
        @include respond-to($medium-down){
          padding-left: 0;
          .heading,.chair-info__rating, .red{
            font-size:0.9rem;
          }
        }
      }
    }
  }
  .compare-chair__fine{
    text-align:center;
    font-style: italic;
    margin-top: 15px;
    @include respond-to($medium-down){
      margin-top: 10px;
    }
  }
}

.m3-contact-section{
  form input:not([type="submit"]), .cog-form input:not([type="submit"]), form input:not([type="submit"]), .cog-form input:not([type="submit"]){
    border: 1px solid #f5f5f5;
    color: #0c687a;
    background-color: #fff;
    padding: 14px 20px;
    width: 100%;
  }
  .g-recaptcha{
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
  }
  .text-green, .content{
    color:#0c687a;
    margin-top: 0;
    * {
      margin-top: 0;
    }
  }
  @media (min-width: 992px){
    .col-lg-8 {
        -ms-flex: 0 0 66.666667%;
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
        margin: 0 auto;
    }
  }
}

.usp-slider-section{
  .usp-slider{
    padding: 40px 0;
  }
  .slick-prev:before, .slick-next:before{
    content:none;
  }
  .usp-slider__slider{
    .item{
        > div{
            padding: 0 25px;
            @include respond-to($medium-down){
                padding: 0 10px;
            }
            .image{
                max-width: 80px;
                display: block;
                margin: 0 auto;
                img{
                  width: 100%;
                  height: auto;
                }
            }
        }
        h5{
          margin: 10px 0px;
        }
        p{
          margin: 0;
        }
    }
}
}
