@charset "UTF-8";@mixin clearfix(){&::after{content:'';display:table;clear:both;}
//sass-lint:disable
*zoom: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}';}
}
}
@mixin media-query($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';}
}
@mixin responsive-display-helper($breakpoint:''){//sass-lint:disable no-important
.#{$breakpoint}show{display:block !important;}
.#{$breakpoint}hide{display:none !important;}
}
@mixin responsive-text-align-helper($breakpoint:''){//sass-lint:disable no-important
.#{$breakpoint}text-left{text-align:left !important;}
.#{$breakpoint}text-right{text-align:right !important;}
.#{$breakpoint}text-center{text-align:center !important;}
}
@mixin visually-hidden(){//sass-lint:disable no-important
position:absolute !important;overflow:hidden;clip:rect(0 0 0 0);height:1px;width:1px;margin:-1px;padding:0;border:0;}
@mixin visually-shown($position:inherit){//sass-lint:disable no-important
position:$position !important;overflow:auto;clip:auto;width:auto;height:auto;margin:0;}
$color-primary:#000;//Text colors
$color-body-text:#000;//Backgrounds
$color-body:#fff;//Border colors
$color-border:#f6f6f6;//Helper colors for form error states
$color-disabled:#000;$color-disabled-border:#000;$color-error:#000;$color-error-bg:#000;$color-success:#000;$color-success-bg:#000;$font-weight-normal:400;$font-weight-bold:700;$font-stack-header:'HelveticaNeue', 'Helvetica Neue', Helvetica, Arial, sans-serif;$font-weight-header:$font-weight-bold;$font-stack-body:'HelveticaNeue', 'Helvetica Neue', Helvetica, Arial, sans-serif;$font-size-base:16px;$grid-medium:750px;$grid-large:990px;$grid-widescreen:1400px;$grid-gutter:30px;$small:'small';$medium:'medium';$medium-down:'medium-down';$medium-up:'medium-up';$large:'large';$large-down:'large-down';$large-up:'large-up';$widescreen:'widescreen';//The `$breakpoints` list is used to build our media queries.//You can use these in the media-query mixin.
$breakpoints:($small '(max-width: #{$grid-medium - 1})',
$medium '(min-width: #{$grid-medium}) and (max-width: #{$grid-large - 1})',
$medium-down '(max-width: #{$grid-large - 1})',
$medium-up '(min-width: #{$grid-medium})',
$large '(min-width: #{$grid-large}) and (max-width: #{$grid-widescreen - 1})',
$large-down '(max-width: #{$grid-widescreen - 1})',
$large-up '(min-width: #{$grid-large})',
$widescreen '(min-width: #{$grid-widescreen})');$breakpoint-has-widths:($small, $medium-up);$breakpoint-has-push:();$width-site:1180px;$gutter:30px;$z-index-dropdown:2;$z-index-skip-to-content:10000;//really high to be safe of app markup
$svg-select-icon:#{'//cdn.shopify.com/s/files/1/0012/2817/7512/t/4/assets/ico-select.svg?6576203057783005672'};html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;}
body{margin:0;}
article,
aside,
footer,
header,
nav,
section{display:block;}
h1{font-size:2em;margin:0.67em 0;}
figcaption,
figure,
main{display:block;}
figure{margin:1em 40px;}
hr{box-sizing:content-box;height:0;overflow:visible;}
pre{font-family:monospace, monospace;font-size:1em;}
a{background-color:transparent;-webkit-text-decoration-skip:objects;}
abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted;}
b,
strong{font-weight:inherit;}
b,
strong{font-weight:bolder;}
code,
kbd,
samp{font-family:monospace, monospace;font-size:1em;}
dfn{font-style:italic;}
mark{background-color:#ff0;color:#000;}
small{font-size:80%;}
sub,
sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline;}
sub{bottom:-0.25em;}
sup{top:-0.5em;}
audio,
video{display:inline-block;}
audio:not([controls]){display:none;height:0;}
img{border-style:none;}
svg:not(:root){overflow:hidden;}
button,
input,
optgroup,
select,
textarea{font-family:sans-serif;font-size:100%;line-height:1.15;margin:0;}
button,
input{overflow:visible;}
button,
select{text-transform:none;}
button,
html [type="button"],
[type="reset"],
[type="submit"]{-webkit-appearance:button;}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner{border-style:none;padding:0;}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring{outline:1px dotted ButtonText;}
fieldset{padding:0.35em 0.75em 0.625em;}
legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal;}
progress{display:inline-block;vertical-align:baseline;}
textarea{overflow:auto;}
[type="checkbox"],
[type="radio"]{box-sizing:border-box;padding:0;}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button{height:auto;}
[type="search"]{-webkit-appearance:textfield;outline-offset:-2px;}
[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration{-webkit-appearance:none;}
::-webkit-file-upload-button{-webkit-appearance:button;font:inherit;}
details,
menu{display:block;}
summary{display:list-item;}
canvas{display:inline-block;}
template{display:none;}
[hidden]{display:none;}
*,
*::before,
*::after{box-sizing:border-box;}
body,
input,
textarea,
button,
select{-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;}
a:focus{color:inherit;}
img{max-width:100%;}
form{margin:0;}
//Prevent zoom on touch devices in active inputs
@include media-query($medium-down){input,
textarea,
select{font-size:16px;}
}
button,
input[type="submit"],
label[for]{cursor:pointer;}
optgroup{font-weight:$font-weight-bold;}
//Force option color (affects IE only)
option{color:$color-body-text;background-color:$color-body;}
//hide outline on focus for elements which are given focus by JS
[tabindex='-1']:focus{outline:none;}
a,
button,
[role="button"],
input,
label,
select,
textarea{touch-action:manipulation;}
.clearfix{@include clearfix();}
.visually-hidden{@include visually-hidden();}
.js-focus-hidden:focus{outline:none;}
.label-hidden{@include visually-hidden();//No placeholders, so force show labels
.no-placeholder &{@include visually-shown();}
}
.visually-shown{@include visually-shown();}
//Only show when JS is not supported
.no-js:not(html){display:none;.no-js &{display:block;}
}
//Only show when JS is supported
.js{.no-js &{display:none;}
}
//Only show when browser cookies are not supported
.supports-no-cookies:not(html){display:none;html.supports-no-cookies &{display:block;}
}
//Only show when browser cookies are supported
.supports-cookies{html.supports-no-cookies &{display:none;}
}
.skip-link:focus{@include visually-shown(absolute);color:$color-body-text;background-color:$color-body;padding:$gutter/2;z-index:$z-index-skip-to-content;transition:none;}
.grid{@include clearfix();list-style:none;margin:0;padding:0;margin-left:-$grid-gutter;}
.grid__item{float:left;padding-left:$grid-gutter;width:100%;&[class*='--push']{position:relative;}
}
.grid--rev{direction:rtl;text-align:left;> .grid__item{direction:ltr;text-align:left;float:right;}
}
//sass-lint:disable brace-style empty-line-between-blocks
@mixin grid-column-generator($breakpoint:''){.#{$breakpoint}one-whole{width:100%;}
.#{$breakpoint}one-half{width:percentage(1/2);}
.#{$breakpoint}one-third{width:percentage(1/3);}
.#{$breakpoint}two-thirds{width:percentage(2/3);}
.#{$breakpoint}one-quarter{width:percentage(1/4);}
.#{$breakpoint}two-quarters{width:percentage(2/4);}
.#{$breakpoint}three-quarters{width:percentage(3/4);}
.#{$breakpoint}one-fifth{width:percentage(1/5);}
.#{$breakpoint}two-fifths{width:percentage(2/5);}
.#{$breakpoint}three-fifths{width:percentage(3/5);}
.#{$breakpoint}four-fifths{width:percentage(4/5);}
.#{$breakpoint}one-sixth{width:percentage(1/6);}
.#{$breakpoint}two-sixths{width:percentage(2/6);}
.#{$breakpoint}three-sixths{width:percentage(3/6);}
.#{$breakpoint}four-sixths{width:percentage(4/6);}
.#{$breakpoint}five-sixths{width:percentage(5/6);}
.#{$breakpoint}one-eighth{width:percentage(1/8);}
.#{$breakpoint}two-eighths{width:percentage(2/8);}
.#{$breakpoint}three-eighths{width:percentage(3/8);}
.#{$breakpoint}four-eighths{width:percentage(4/8);}
.#{$breakpoint}five-eighths{width:percentage(5/8);}
.#{$breakpoint}six-eighths{width:percentage(6/8);}
.#{$breakpoint}seven-eighths{width:percentage(7/8);}
.#{$breakpoint}one-tenth{width:percentage(1/10);}
.#{$breakpoint}two-tenths{width:percentage(2/10);}
.#{$breakpoint}three-tenths{width:percentage(3/10);}
.#{$breakpoint}four-tenths{width:percentage(4/10);}
.#{$breakpoint}five-tenths{width:percentage(5/10);}
.#{$breakpoint}six-tenths{width:percentage(6/10);}
.#{$breakpoint}seven-tenths{width:percentage(7/10);}
.#{$breakpoint}eight-tenths{width:percentage(8/10);}
.#{$breakpoint}nine-tenths{width:percentage(9/10);}
.#{$breakpoint}one-twelfth{width:percentage(1/12);}
.#{$breakpoint}two-twelfths{width:percentage(2/12);}
.#{$breakpoint}three-twelfths{width:percentage(3/12);}
.#{$breakpoint}four-twelfths{width:percentage(4/12);}
.#{$breakpoint}five-twelfths{width:percentage(5/12);}
.#{$breakpoint}six-twelfths{width:percentage(6/12);}
.#{$breakpoint}seven-twelfths{width:percentage(7/12);}
.#{$breakpoint}eight-twelfths{width:percentage(8/12);}
.#{$breakpoint}nine-twelfths{width:percentage(9/12);}
.#{$breakpoint}ten-twelfths{width:percentage(10/12);}
.#{$breakpoint}eleven-twelfths{width:percentage(11/12);}
}
@mixin grid-push-generator($breakpoint:''){.#{$breakpoint}push-one-half{left:percentage(1/2);}
.#{$breakpoint}push-one-third{left:percentage(1/3);}
.#{$breakpoint}push-two-thirds{left:percentage(2/3);}
.#{$breakpoint}push-one-quarter{left:percentage(1/4);}
.#{$breakpoint}push-two-quarters{left:percentage(2/4);}
.#{$breakpoint}push-three-quarters{left:percentage(3/4);}
.#{$breakpoint}push-one-fifth{left:percentage(1/5);}
.#{$breakpoint}push-two-fifths{left:percentage(2/5);}
.#{$breakpoint}push-three-fifths{left:percentage(3/5);}
.#{$breakpoint}push-four-fifths{left:percentage(4/5);}
.#{$breakpoint}push-one-sixth{left:percentage(1/6);}
.#{$breakpoint}push-two-sixths{left:percentage(2/6);}
.#{$breakpoint}push-three-sixths{left:percentage(3/6);}
.#{$breakpoint}push-four-sixths{left:percentage(4/6);}
.#{$breakpoint}push-five-sixths{left:percentage(5/6);}
.#{$breakpoint}push-one-eighth{left:percentage(1/8);}
.#{$breakpoint}push-two-eighths{left:percentage(2/8);}
.#{$breakpoint}push-three-eighths{left:percentage(3/8);}
.#{$breakpoint}push-four-eighths{left:percentage(4/8);}
.#{$breakpoint}push-five-eighths{left:percentage(5/8);}
.#{$breakpoint}push-six-eighths{left:percentage(6/8);}
.#{$breakpoint}push-seven-eighths{left:percentage(7/8);}
.#{$breakpoint}push-one-tenth{left:percentage(1/10);}
.#{$breakpoint}push-two-tenths{left:percentage(2/10);}
.#{$breakpoint}push-three-tenths{left:percentage(3/10);}
.#{$breakpoint}push-four-tenths{left:percentage(4/10);}
.#{$breakpoint}push-five-tenths{left:percentage(5/10);}
.#{$breakpoint}push-six-tenths{left:percentage(6/10);}
.#{$breakpoint}push-seven-tenths{left:percentage(7/10);}
.#{$breakpoint}push-eight-tenths{left:percentage(8/10);}
.#{$breakpoint}push-nine-tenths{left:percentage(9/10);}
.#{$breakpoint}push-one-twelfth{left:percentage(1/12);}
.#{$breakpoint}push-two-twelfths{left:percentage(2/12);}
.#{$breakpoint}push-three-twelfths{left:percentage(3/12);}
.#{$breakpoint}push-four-twelfths{left:percentage(4/12);}
.#{$breakpoint}push-five-twelfths{left:percentage(5/12);}
.#{$breakpoint}push-six-twelfths{left:percentage(6/12);}
.#{$breakpoint}push-seven-twelfths{left:percentage(7/12);}
.#{$breakpoint}push-eight-twelfths{left:percentage(8/12);}
.#{$breakpoint}push-nine-twelfths{left:percentage(9/12);}
.#{$breakpoint}push-ten-twelfths{left:percentage(10/12);}
.#{$breakpoint}push-eleven-twelfths{left:percentage(11/12);}
}
@mixin grid-uniform-clearfix($breakpoint:''){.grid--uniform{.#{$breakpoint}one-half:nth-child(2n+1),
.#{$breakpoint}one-third:nth-child(3n+1),
.#{$breakpoint}one-quarter:nth-child(4n+1),
.#{$breakpoint}one-fifth:nth-child(5n+1),
.#{$breakpoint}one-sixth:nth-child(6n+1),
.#{$breakpoint}two-sixths:nth-child(3n+1),
.#{$breakpoint}three-sixths:nth-child(2n+1),
.#{$breakpoint}one-eighth:nth-child(8n+1),
.#{$breakpoint}two-eighths:nth-child(4n+1),
.#{$breakpoint}four-eighths:nth-child(2n+1),
.#{$breakpoint}five-tenths:nth-child(2n+1),
.#{$breakpoint}one-twelfth:nth-child(12n+1),
.#{$breakpoint}two-twelfths:nth-child(6n+1),
.#{$breakpoint}three-twelfths:nth-child(4n+1),
.#{$breakpoint}four-twelfths:nth-child(3n+1),
.#{$breakpoint}six-twelfths:nth-child(2n+1){clear:both;}
}
}
//sass-lint:enable brace-style empty-line-between-blocks
@include grid-column-generator();@include responsive-display-helper();@include responsive-text-align-helper();@each $breakpoint in $breakpoint-has-widths{@include media-query($breakpoint){@include grid-column-generator('#{$breakpoint}--');@include grid-uniform-clearfix('#{$breakpoint}--');@include responsive-display-helper('#{$breakpoint}--');@include responsive-text-align-helper('#{$breakpoint}--');}
}
@each $breakpoint in $breakpoint-has-push{@include media-query($breakpoint){@include grid-push-generator('#{$breakpoint}--');}
}
body,
html{background-color:$color-body;}
.page-width{@include clearfix();max-width:$width-site;padding:0 $gutter;margin:0 auto;}
.icon{display:inline-block;width:20px;height:20px;vertical-align:middle;fill:currentColor;.no-svg &{display:none;}
}
.icon--wide{width:40px;}
svg,
symbol{&.icon:not(.icon--full-color){circle,
ellipse,
g,
line,
path,
polygon,
polyline,
rect{fill:inherit;stroke:inherit;}
}
}
.icon-fallback-text{@include visually-hidden();.no-svg &{@include visually-shown(static);}
}
.payment-icons{@include prefix('user-select', 'none', moz ms webkit spec);cursor:default;}
.icon-shopify-logo{width:1.5 * $font-size-base * 120/35;height:1.5 * $font-size-base;}
.rte{img{height:auto;}
table{table-layout:fixed;}
ul,
ol{margin:0 0 ($gutter/2) $gutter;}
//Match the styles from RTE nested lists
ul{list-style:disc outside;ul{list-style:circle outside;ul{list-style:square outside;}
}
}
}
.text-center.rte,
.text-center .rte{ul,
ol{margin-left:0;list-style-position:inside;}
}
//allow table to scroll for tables in the RTE since we don't know
// how many columns they will contain. Class added by JS.
// sass-lint:disable no-misspelled-properties
.rte-table {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

// This class is wrapped around YouTube/Vimeo embeds in the RTE
// to make them responsive and prevent layout breaking
.rte__video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto;

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

// This class is wrapped around tables in the RTE
// to prevent layout breaking with a scrollable parent
.rte__table-wrapper {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/*============================================================================
  Responsive tables, defined with .responsive-table on table element.
==============================================================================*/
@include media-query($small) {
  .responsive-table {
    width: 100%;

    thead {
      display: none;
    }

    tr {
      display: block;
    }

    // IE9 table layout fixes
    tr,
    td {
      float: left;
      clear: both;
      width: 100%;
    }

    th,
    td {
      display: block;
      text-align: right;
      padding: $gutter / 2;
      margin: 0;
    }

    td::before {
      content: attr(data-label);
      float: left;
      text-align: center;
      padding-right: 10px;
    }
  }

  // Add a keyline between rows
  .responsive-table-row + .responsive-table-row,
  tfoot > .responsive-table-row:first-child {
    position: relative;
    margin-top: 10px;
    padding-top: $gutter / 2;

    &::after {
      content: '';
      display: block;
      position: absolute;
      top: 0;
      left: $gutter / 2;
      right: $gutter / 2;
      border-bottom: 1px solid $color-border;
    }
  }
}

/*================ Links & Buttons ================*/
.btn {
  @include prefix('user-select', 'none', moz ms webkit spec);
  @include prefix(appearance, none, webkit moz spec);
  display: inline-block;
  width: auto;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  border: 0;
}

/*============================================================================
  Form scaffolding
    - Selectors setup for you to style form elements how you want
    - Focus, error, and disabled states are set to be extended
==============================================================================*/
input,
textarea,
select {
  border: 1px solid $color-border;
  border-radius: 0;
  max-width: 100%;

  &:focus {
    // You should add some focus styles
  }

  &[disabled] {
    cursor: default;
    background-color: $color-disabled;
    border-color: $color-disabled-border;
  }
}

textarea {
  min-height: 100px;
}

/*================ Custom select style ================*/
select {
  @include prefix(appearance, none, webkit moz spec);
  background-position: right center;
  background: {
    image: url($svg-select-icon);
    repeat: no-repeat;
    position: right 10px center;
    color: transparent;
  }
  padding-right: 28px;
  text-indent: 0.01px;
  text-overflow: '';
  cursor: pointer;

  /*================ Hide the svg arrow in IE9 ================*/
  .ie9 & {
    padding-right: 10px;
    background-image: none;
  }
}

select::-ms-expand {
  display: none;
}

/*================ Error styles ================*/
input,
select,
textarea {
  &.input-error {
    border-color: $color-error;
    background-color: $color-error-bg;
    color: $color-error;
  }
}

$color-blankstate: rgba($color-body-text, 0.35);
$color-blankstate-border: rgba($color-body-text, 0.2);
$color-blankstate-background: rgba($color-body-text, 0.1);

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

.placeholder-svg--small {
  width: 480px;
}

.placeholder-noblocks {
  padding: 40px;
  text-align: center;
}

// Mimic a background image by wrapping the placeholder svg with this class
.placeholder-background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;

  .icon {
    border: 0;
  }
}


/*================ MODULES ================*/
/*================ Site Header ================*/
.site-logo {
  display: block;

  img {
    display: block;
    width: 100%;
  }
}

/*================ Giftcard Template ================*/
.giftcard-qr {
  img {
    display: block;
    margin: 0 auto;
  }
}

.apple-wallet-image {
  display: block;
  margin: 0 auto;
}

/*================ Print Giftcard Styles ================*/
@media print {
  @page {
    margin: 0.5cm;
  }

  p {
    orphans: 3;
    widows: 3;
  }

  html,
  body {
    // sass-lint:disable no-color-literals
    background-color: #fff;
    color: #000;
  }

  .print-giftcard,
  .apple-wallet {
    display: none;
  }
}

.no-js:not(html) {
    display: none;
}
