/** Shopify CDN: Minification failed

Line 38:0 Unexpected "$"
Line 55:13 Unexpected "{"
Line 55:23 Expected ":"
Line 55:40 Unexpected ";"
Line 56:17 Unexpected "{"
Line 56:27 Expected ":"
Line 56:46 Unexpected ";"
Line 57:15 Unexpected "{"
Line 57:25 Expected ":"
Line 57:41 Unexpected ";"
... and 18 more hidden warnings

**/
/*============================================================================
  Shopify Ajax Cart
  Copyright 2015 Shopify Inc.
  Author Carson Shold @cshold
  Built with Sass - http://sass-lang.com/

  Some things to know about this file:
    - This file uses the same grid as timber.scss.liquid.
      - If you want to use this separately, please include the following sections from timber.scss.liquid:
        * #Breakpoint and Grid Variables
        * #Grid Setup
      - You may need to massage the code so it doesn't reference any non-existent mixins.

  This file includes
    - Sass helpers
    - Colour variables to customize
    - Styles for cart drawer, modal, and the flipped add to cart button
==============================================================================*/

/*============================================================================
  #Breakpoint and Grid Variables (from timber.scss.liquid)
==============================================================================*/
$viewportIncrement: 1px;

$small: 480px;
$medium: 768px;
$large: 769px;

$postSmall: $small + $viewportIncrement;
$preMedium: $medium - $viewportIncrement;
$preLarge: $large - $viewportIncrement;

$gutter: 30px;

/*============================================================================
  Ajaxify Colours
  Add your theme colors in here, or create new styles.
    - If creating new styles, you may have to restyle text, headers and links
==============================================================================*/
$colorBody: {{ settings.color_body_bg }};
$colorTextBody: {{ settings.color_body_text }};
$colorBorder: {{ settings.color_border }};
$colorSplash: {{ settings.color_splash }};

/*============================================================================
  Dependency-free breakpoint mixin
// http://blog.grayghostvisuals.com/sass/sass-media-query-mixin/
==============================================================================*/
$min: min-width;
$max: max-width;
@mixin at-query ($constraint, $viewport1, $viewport2:null) {
  @if $constraint == $min {
    @media screen and ($min: $viewport1) {
      @content;
    }
  } @else if $constraint == $max {
    @media screen and ($max: $viewport1) {
      @content;
    }
  } @else {
    @media screen and ($min: $viewport1) and ($max: $viewport2) {
      @content;
    }
  }
}

/*============================================================================
  Sass Helpers
==============================================================================*/
@mixin prefix($property, $value) {
  -webkit-#{$property}: #{$value};
  -moz-#{$property}: #{$value};
  -ms-#{$property}: #{$value};
  -o-#{$property}: #{$value};
  #{$property}: #{$value};
}

@mixin transform-origin($origin) {
  @include prefix('transform-origin', #{$origin});
}

@mixin transform-style($style: preserve-3d) {
  @include prefix('transform-style', #{$style});
}

@mixin perspective($perspective) {
  @include prefix('perspective', #{$perspective});
}

@mixin backface($visibility: hidden) {
  @include prefix('backface-visibility', #{$visibility});
}

@mixin box-sizing($box-sizing: border-box) {
  -webkit-box-sizing: #{$box-sizing};
  -moz-box-sizing: #{$box-sizing};
  box-sizing: #{$box-sizing};
}

@mixin transform($transform) {
  @include prefix('transform', #{$transform});
}

@mixin transition($transition: 0.1s all) {
  @include prefix('transition', #{$transition});
}

@mixin clearfix() {
  &:after {
    content: "";
    display: table;
    clear: both;
  }
}

@function color-control($color) {
  @if (lightness( $color ) > 40) {
    @return #000;
  }
  @else {
    @return #fff;
  }
}

/*============================================================================
  General Styles
==============================================================================*/
@include at-query ($max, $small) {
  body.ajaxcart--is-visible {
    overflow: hidden;
  }
}

.ajaxcart__flip-loader {
  display: none;
  opacity: 0;
  position: absolute;
  right: -24px;
  top: 50%;
  margin-top: -5px;
  padding: 0;
  width: 16px;
  height: 16px;
  @include transition(opacity 0.1s);
  background-repeat: no-repeat;
  background-image: url(data:image/gif;base64,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);

  .flip--is-loading & {
    display: block;
    opacity: 1;
  }
}

form[action="/cart/add"],
form[action^="/cart/add"] {
  @include clearfix;
}


/*============================================================================
  Ajaxify Cart - General
==============================================================================*/
.ajaxcart__content {
  position: relative;
  background-color: $colorBody;
  @include perspective(1000px);
  @include transform-style(preserve-3d);
  @include transition(all 450ms cubic-bezier(0.57,.06,.05,.95));
  padding-top: $gutter;
  padding-bottom: $gutter;
  overflow: hidden;

  .is-visible & {
    @include transition(all 550ms cubic-bezier(0.57, 0.06, 0.05, 0.95));
  }

  form {
    margin-bottom: 0;
  }

  @include at-query ($max, $medium) {
    padding-top: 15px;
    padding-bottom: 15px;
    .cart__item__title{
      text-align: right;
    }
  }
  @include at-query ($min, $medium) {
    .cart__item__title{
      text-align: left;
      padding-left: 15px !important;
    }
  }

  .cart__header-labels {
    display: none;
  }
}

// Row and column spacing
.ajaxcart__inner {
  padding-bottom: 10px;
  margin-bottom: 20px;
}

.ajaxcart__product {
  position: relative;
  padding: 10px 0;

  &:first-child {
    padding-top: 0;
  }
}

.ajaxcart__product,
.cart__row {
  max-height: 500px;
  visibility: visible;

  &.is-removed {
    overflow: hidden;
    opacity: 0;
    padding: 0;
    margin: -1px 0 0 0;
    visibility: hidden;
    @include transform-origin(top);
    @include transform('rotateX(-92deg)');
    @include backface(hidden);
    @include transition(all 450ms cubic-bezier(0.57,.06,.05,.95));
    max-height: 0;
  }
}

.ajaxcart__row {
  clear: both;
  @include clearfix;
}

.ajaxcart__product-image {
  display: block;
  overflow: hidden;
  margin-bottom: 15px;

  img {
    display: block;
    margin: 0 auto;
    max-width: 100%;
  }
}

/*============================================================================
  Ajaxify Flip
==============================================================================*/
.flip {
  display: block;
  float: left;
  position: relative;
  @include perspective(600px);
}

.flip__front,
.flip__back {
  @include transform-style(preserve-3d);
  @include transition(all 0.3s);
  @include backface(hidden);
  overflow: hidden;
  position: relative;
  z-index: 10;

  &:focus {
    outline: 0 none;
  }
}

.flip__front {
  @include transform-origin(100% 0);

  .is-flipped & {
    @include transform('rotateX(92deg) translateY(-50%)');
  }
}

.flip__back {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  text-align: center;
  background-color: #464646;
  @include box-sizing();
  @include transform('rotateX(-90deg) translateY(50%)');
  @include transform-origin(0 100%);

  .is-flipped & {
    opacity: 1;
    @include transform('rotateX(0deg)');
  }
}

// Backup for no transforms
.flip.no-transforms {
  .flip__back {
    display: none;
  }

  &.is-flipped {
    .flip__back {
      display: block;
    }
  }
}

.flip__extra {
  display: inline;
  position: relative;
  padding: 2px 10px;
  opacity: 0;
  visibility: hidden;
  overflow: visible;
  white-space: nowrap;
  z-index: 5;
  top: 4px;
  line-height: 34px;
  @include transition(opacity 450ms cubic-bezier(0.57,.06,.05,.95));

  .is-flipped + & {
    opacity: 1;
    visibility: visible;
    @include transition(opacity 650ms cubic-bezier(0.57, 0.06, 0.05, 0.95) 750ms);
  }
}

.flip__cart {
  display: inline-block;
  padding: 0 8px;
}

.flip__checkout {
  margin: 0;
}


/*============================================================================
  Ajaxify Modal
==============================================================================*/
.ajaxcart--modal {
  text-align: center;
  position: absolute;
  top: 170px;
  left: -200%;
  margin-left: -500px; // overridden with JS
  width: 100%;
  max-width: 760px;
  height: auto;
  z-index: 99999999;
  visibility: hidden;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  @include transition('left 0s linear 700ms, box-shadow 600ms cubic-bezier(0.47, 0.5, 0, 0.95) 400ms, margin-top 200ms ease-in-out');

  // Short screens
  @media only screen and (max-height:645px) {
    top: 70px;
  }

  // Medium-down screens
  @include at-query ($max, $medium) {
    max-width: 90%;
  }

  // Small screens
  @include at-query ($max, $small) {
    position: fixed;
    top: 0;
    bottom: 0;
    margin: 0!important;
    max-height: none;
    max-width: none;
  }

  .checkout__button{
    margin-top: $gutter;
    width: 100%;
    border-radius: 0;
    background-color: $colorSplash;
    padding-top: 1.5em;
    padding-bottom: 1.5em;
    &:hover{
      background-color: darken($colorSplash, 10%);
    }
  }
  .ajaxcart__content {
    padding: 30px 0 0 0;

    // Small screens
    @include at-query ($max, $small) {
      min-height: 100%;
    }
  }

  .cart__row--table-large{
    padding-left: $gutter;
    padding-right: $gutter;

    // Medium-down screens
    @include at-query ($max, $medium) {
      padding-left: $gutter/2;
      padding-right: $gutter/2;
    }
  }

  &.is-visible {
    visibility: visible;
    left: 50%;
    @include transition('left 0s linear, box-shadow 600ms cubic-bezier(0.47, 0.5, 0, 0.95) 400ms, margin-top 200ms ease-in-out');

    // Large screens
    @include at-query ($min, $large) {
      box-shadow: 0px 10px 80px rgba(0,0,0,.25);
    }

    // Small screens
    @include at-query ($max, $small) {
      left: 0;
    }
  }
  .ajaxcart__row {

    & > div {
      padding-left: 20px;

      &:first-child {
        padding-left: 0;
      }
    }
  }
  .ajaxcart__product {
    @include transform(none);
  }
  .update-cart {
    display: none!important;
  }
  .cart__footer__text{
    text-align: center;
    padding-left: $gutter;
    padding-right: $gutter;
  }
  .cart__instructions__label{
    padding-left: $gutter;
    text-align: center;
  }
  .cart__instructions{
    padding-right: $gutter;
  }
  .ajaxcart__content .cart__footer{
    .large--one-half{
      width: 100%;
    }
    textarea{
      margin:15px;
    }
  }

  // No transform fallback
  &.no-transforms {
    border: 1px solid $colorBorder;
  }

}

.ajaxcart__overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  visibility: hidden;
  top: 0;
  left: 0;
  z-index: 99999998;
  opacity: 0;
  cursor: pointer;
  @include transition(all 450ms cubic-bezier(0.57,.06,.05,.95));
  @if (lightness( $colorBody ) > 40) {
    background-color: #d3d3d3;
  }
  @else {
    background-color: #333333;
  }
}

@include at-query ($min, $postSmall) {
  .is-visible ~ .ajaxcart__overlay {
    visibility: visible;
    @include transition(all 650ms cubic-bezier(0.57, 0.06, 0.05, 0.95));
    @if (lightness( $colorBody ) > 40) {
      opacity: 0.8;
    }
    @else {
      opacity: 0.95;
    }

    .lt-ie9 & {
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    }
  }
}

// Modal content transition
.ajaxcart--modal .ajaxcart__content {
  @include transform(scale(0.9));
  opacity: 0;
}

.ajaxcart--modal.is-visible .ajaxcart__content {
  @include transform(scale(1));
  opacity: 1;
}

// Quantity selector colors in the modal
.ajaxcart--modal {

  // Small screen quantity appearance
  @include at-query ($max, $medium) {
    input[type="text"] {
      border-color: $colorBorder;
    }

    .ajaxcart__qty-adjust {
      opacity: 1;
    }
  }
}

/*============================================================================
  Ajaxify Drawer
==============================================================================*/
.ajaxcart--drawer {
  height: 0px;
  overflow: hidden;
  border-bottom: 0px solid transparent;
  @include perspective (1000px);
  @include transform-style(preserve-3d);
  @include transition(all 600ms cubic-bezier(0.47, 0.5, 0, 0.95));

  &.is-visible {
    @include transition(all 550ms cubic-bezier(0.47, 0, 0, 0.95));
    border-bottom: 1px solid $colorBorder;
  }

  .update-cart {
    display: none!important;
  }

  .ajaxcart__content {
    margin: 0 auto;
    opacity: 0;
    overflow: hidden;
    padding-top: $gutter;
    padding-bottom: $gutter;
    @include transform-origin(top);
    @include transform('rotateX(-90deg)');
  }

  &.is-visible .ajaxcart__content {
    opacity: 1;
    @include transform('rotateX(0deg)');
  }
}

.ajaxcart__caret {
  position: relative;
  display: block;
  height: 0;
  opacity: 0;
  overflow: hidden;

  .is-visible + & {
    opacity: 1;
    overflow: visible;
  }

  & > span {
    position: absolute;
    top: 0;
    left: 100%;
    display: block;
    width: 0;
    height: 0;
    border-left: 6px solid transparent;
    border-right: 6px solid transparent;
    border-top: 6px solid $colorBody;
    margin-left: -6px;
    opacity: 0;
    @include transform(translate(0,-12px));
    @include transition(all 0.25s ease-in-out 0.2s);
  }

  .is-visible + & > span {
    @include transform(translate(0,0));
    opacity: 1;
  }
}



/*============================================================================
  Sprites
//   - using data URIs to prevent any additional http requests
==============================================================================*/
.sprite {
  display: block;
  text-indent: -9999px;
  background-repeat: no-repeat;
  background-position: 0 0;
}

.ajaxcart__close {
  @extend .sprite;
  position: absolute;
  top: 30px;
  right: 15px;
  opacity: 0;
  visibility: hidden;
  border: 0 none;
  width: 30px;
  height: 25px;
  cursor: pointer;
  background: {
    color: transparent;
    position: center center;
    image: url('{{ "close.svg" | asset_url }}');
  }
  z-index: 999999999;

  .is-visible & {
    opacity: 0.8;
    visibility: visible;
    @include transition(opacity 650ms cubic-bezier(0.57, 0.06, 0.05, 0.95) 200ms);
  }

  &:hover {
    opacity: 1;
  }
}

.hidden-count{
  display: none;
}
