HEX
Server: Microsoft-IIS/8.5
System: Windows NT YDAWBH120 6.3 build 9600 (Windows Server 2012 R2 Standard Edition) AMD64
User: tentjecom_web (0)
PHP: 7.4.14
Disabled: NONE
Upload Files
File: D:/HostingSpaces/SBogers10/spire-checkout.komma-mediadesign.nl/wwwroot/css/style.css
/*!
 * Selectr 2.4.0
 * http://mobius.ovh/docs/selectr
 *
 * Released under the MIT license
 */
.selectr-container li,.selectr-option,.selectr-tag{list-style:none}.selectr-container{position:relative}.selectr-hidden{position:absolute;overflow:hidden;clip:rect(0,0,0,0);width:1px;height:1px;margin:-1px;padding:0;border:0}.selectr-visible{position:absolute;left:0;top:0;width:100%;height:100%;opacity:0;z-index:11}.selectr-desktop.multiple .selectr-visible{display:none}.selectr-desktop.multiple.native-open .selectr-visible{top:100%;min-height:200px!important;height:auto;opacity:1;display:block}.selectr-container.multiple.selectr-mobile .selectr-selected{z-index:0}.selectr-selected{position:relative;z-index:1;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;padding:7px 28px 7px 14px;cursor:pointer;border:1px solid #999;border-radius:3px;background-color:#fff}.selectr-selected::before{position:absolute;top:50%;right:10px;width:0;height:0;content:'';-webkit-transform:rotate(0) translate3d(0,-50%,0);transform:rotate(0) translate3d(0,-50%,0);border-width:4px 4px 0;border-style:solid;border-color:#6c7a86 transparent transparent}.selectr-container.native-open .selectr-selected::before,.selectr-container.open .selectr-selected::before{border-width:0 4px 4px;border-style:solid;border-color:transparent transparent #6c7a86}.selectr-label{display:none;overflow:hidden;width:100%;white-space:nowrap;text-overflow:ellipsis}.selectr-placeholder{color:#6c7a86}.selectr-tags{margin:0;padding:0;white-space:normal}.has-selected .selectr-tags{margin:0 0 -2px}.selectr-tag{position:relative;float:left;padding:2px 25px 2px 8px;margin:0 2px 2px 0;cursor:default;color:#fff;border:none;border-radius:10px;background:#acb7bf}.selectr-container.multiple.has-selected .selectr-selected{padding:5px 28px 5px 5px}.selectr-options-container{position:absolute;z-index:10000;top:calc(100% - 1px);left:0;display:none;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;border-width:0 1px 1px;border-style:solid;border-color:transparent #999 #999;border-radius:0 0 3px 3px;background-color:#fff}.selectr-container.open .selectr-options-container{display:block}.selectr-input-container{position:relative;display:none}.selectr-clear,.selectr-input-clear,.selectr-tag-remove{position:absolute;top:50%;right:22px;width:20px;height:20px;padding:0;cursor:pointer;-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0);border:none;background-color:transparent;z-index:11}.selectr-clear,.selectr-input-clear{display:none}.selectr-container.has-selected .selectr-clear,.selectr-input-container.active,.selectr-input-container.active .selectr-clear,.selectr-input-container.active .selectr-input-clear{display:block}.selectr-selected .selectr-tag-remove{right:2px}.selectr-clear::after,.selectr-clear::before,.selectr-input-clear::after,.selectr-input-clear::before,.selectr-tag-remove::after,.selectr-tag-remove::before{position:absolute;top:5px;left:9px;width:2px;height:10px;content:' ';background-color:#6c7a86}.selectr-tag-remove::after,.selectr-tag-remove::before{top:4px;width:3px;height:12px;background-color:#fff}.selectr-clear:before,.selectr-input-clear::before,.selectr-tag-remove::before{-webkit-transform:rotate(45deg);transform:rotate(45deg)}.selectr-clear:after,.selectr-input-clear::after,.selectr-tag-remove::after{-webkit-transform:rotate(-45deg);transform:rotate(-45deg)}.selectr-input{top:5px;left:5px;-webkit-box-sizing:border-box;box-sizing:border-box;width:calc(100% - 30px);margin:10px 15px;padding:7px 30px 7px 9px;border:1px solid #999;border-radius:3px}.selectr-notice{display:none;-webkit-box-sizing:border-box;box-sizing:border-box;width:100%;padding:8px 16px;border-top:1px solid #999;border-radius:0 0 3px 3px;background-color:#fff}.input-tag,.taggable .selectr-label{width:auto}.selectr-container.notice .selectr-notice{display:block}.selectr-container.notice .selectr-selected{border-radius:3px 3px 0 0}.selectr-options{position:relative;top:calc(100% + 2px);display:none;overflow-x:auto;overflow-y:scroll;max-height:200px;margin:0;padding:0}.selectr-container.notice .selectr-options-container,.selectr-container.open .selectr-input-container,.selectr-container.open .selectr-options{display:block}.selectr-option{position:relative;display:block;padding:5px 20px;cursor:pointer;font-weight:400}.has-selected .selectr-placeholder,.selectr-empty,.selectr-option.excluded{display:none}.selectr-options.optgroups>.selectr-option{padding-left:25px}.selectr-optgroup{font-weight:700;padding:0}.selectr-optgroup--label{font-weight:700;margin-top:10px;padding:5px 15px}.selectr-match{text-decoration:underline}.selectr-option.selected{background-color:#ddd}.selectr-option.active{color:#fff;background-color:#5897fb}.selectr-option.disabled{opacity:.4}.selectr-container.open .selectr-selected{border-color:#999 #999 transparent;border-radius:3px 3px 0 0}.selectr-container.open .selectr-selected::after{-webkit-transform:rotate(180deg) translate3d(0,50%,0);transform:rotate(180deg) translate3d(0,50%,0)}.selectr-disabled{opacity:.6}.has-selected .selectr-label{display:block}.taggable .selectr-selected{padding:4px 28px 4px 4px}.taggable .selectr-selected::after{display:table;content:" ";clear:both}.taggable .selectr-tags{float:left;display:block}.taggable .selectr-placeholder{display:none}.input-tag{float:left;min-width:90px}.selectr-tag-input{border:none;padding:3px 10px;width:100%;font-family:inherit;font-weight:inherit;font-size:inherit}.selectr-input-container.loading::after{position:absolute;top:50%;right:20px;width:20px;height:20px;content:'';-webkit-transform:translate3d(0,-50%,0);transform:translate3d(0,-50%,0);-webkit-transform-origin:50% 0 0;transform-origin:50% 0 0;-webkit-animation:.5s linear 0s normal forwards infinite running spin;animation:.5s linear 0s normal forwards infinite running spin;border-width:3px;border-style:solid;border-color:#aaa #ddd #ddd;border-radius:50%}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0) translate3d(0,-50%,0);transform:rotate(0) translate3d(0,-50%,0)}100%{-webkit-transform:rotate(360deg) translate3d(0,-50%,0);transform:rotate(360deg) translate3d(0,-50%,0)}}@keyframes spin{0%{-webkit-transform:rotate(0) translate3d(0,-50%,0);transform:rotate(0) translate3d(0,-50%,0)}100%{-webkit-transform:rotate(360deg) translate3d(0,-50%,0);transform:rotate(360deg) translate3d(0,-50%,0)}}.selectr-container.open.inverted .selectr-selected{border-color:transparent #999 #999;border-radius:0 0 3px 3px}.selectr-container.inverted .selectr-options-container{border-width:1px 1px 0;border-color:#999 #999 transparent;border-radius:3px 3px 0 0;background-color:#fff;top:auto;bottom:calc(100% - 1px)}.selectr-container ::-webkit-input-placeholder{color:#6c7a86;opacity:1}.selectr-container :-ms-input-placeholder{color:#6c7a86;opacity:1}.selectr-container ::-ms-input-placeholder{color:#6c7a86;opacity:1}.selectr-container ::placeholder{color:#6c7a86;opacity:1}@charset "UTF-8";

/* ==========================================================================
   Config settings
   @mixin ========================================================================= */

/**
 * Define grid columns
 *
 * The inner grid is the section where the content is
 * The outer grid is the inner grid with extra margin columns on each side
 */

/**
 * Define breakpoint for given formats
 */

/* Bourbon 4.0.2
 * http://bourbon.io
 * Copyright 2011-2014 thoughtbot, inc.
 * MIT License */

/* ==========================================================================
   Font related functions
   @mixin ========================================================================= */

/**
 * Add some functions for readability
 * Return font-weight based on name
 */

/* ==========================================================================
  Functions used in grid calculation
  @mixin ========================================================================= */

/**
  * This is where the magic happens
  * Return percentage based on amount of columns
  * Use parent column size to adjust the origin
  */

/**
  * Default function for columns
  * Return as percentage
  */

/**
  * Return as viewport width
  */

/* ==========================================================================
   Basic style settings
   @mixin ========================================================================= */

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

/*
 * Set up the body
 *
 * 1. This is the base for al rem units
 */

html {
  font-size: 20px;
  line-height: 1.6;
}

/**
 * 1.Default display for images is block to lose the extra margin below the image
 * 2. Remove border / especially on older browsers
 */

img {
  display: block;
  border: none;
}

/**
  * Add translation to prevent recoloring from autocomplete
  */

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  -webkit-transition: all 9999s linear 9999s;
  transition: all 9999s linear 9999s;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  -webkit-transition: all 9999s linear 9999s;
  transition: all 9999s linear 9999s;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  -webkit-transition: all 9999s linear 9999s;
  transition: all 9999s linear 9999s;
}

input:-moz-placeholder,
textarea:-moz-placeholder {
  -webkit-transition: all 9999s linear 9999s;
  transition: all 9999s linear 9999s;
}

/*
 * Remove default margin around figure
 */

figure {
  margin: 0;
}

/*==========================================================================
  Grid
  @mixin ========================================================================= */

/**
  * Grid row
  *
  * 1. The outer two columns are just margin
  * 2. Prevent inline-block cells wrapping
  * 3. Prevent vertical spacing between inline-blocks
  */

.grid-row {
  width: 85.71428571%;
  max-width: 1024px;
  margin: 0 auto;
  font-size: 0;
  line-height: 0;
  /**
   * The full row doesn't have the two outer margin rows
   * They stretch till both ends of the window
   */
}

.grid-row.full-row {
  width: 100%;
  max-width: none;
}

/**
 * Grid column
 *
 * 1. Reset white-space inherited from `.grid`
 * 2. Reset font-size inherited from `.grid`
 * 3. Reset line-height inherited from `.grid`
 */

.grid-col {
  position: relative;
  display: inline-block;
  overflow: hidden;
  white-space: normal;
  font-size: 1rem;
  line-height: 1.6;
  /**
   * Center column
   *
   * 1. 'inline-block' doesn't center with margin '0 auto'
   */
}

.grid-col.center {
  display: block;
  margin: 0 auto;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-1,
.col-lg-1 {
  width: 8.33333333%;
}

.full-row .col-1,
.full-row .col-lg-1 {
  width: 7.14285714%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-1,
.offset-lg-1 {
  margin-left: 8.33333333%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-2,
.col-lg-2 {
  width: 16.66666667%;
}

.full-row .col-2,
.full-row .col-lg-2 {
  width: 14.28571429%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-2,
.offset-lg-2 {
  margin-left: 16.66666667%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-3,
.col-lg-3 {
  width: 25%;
}

.full-row .col-3,
.full-row .col-lg-3 {
  width: 21.42857143%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-3,
.offset-lg-3 {
  margin-left: 25%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-4,
.col-lg-4 {
  width: 33.33333333%;
}

.full-row .col-4,
.full-row .col-lg-4 {
  width: 28.57142857%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-4,
.offset-lg-4 {
  margin-left: 33.33333333%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-5,
.col-lg-5 {
  width: 41.66666667%;
}

.full-row .col-5,
.full-row .col-lg-5 {
  width: 35.71428571%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-5,
.offset-lg-5 {
  margin-left: 41.66666667%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-6,
.col-lg-6 {
  width: 50%;
}

.full-row .col-6,
.full-row .col-lg-6 {
  width: 42.85714286%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-6,
.offset-lg-6 {
  margin-left: 50%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-7,
.col-lg-7 {
  width: 58.33333333%;
}

.full-row .col-7,
.full-row .col-lg-7 {
  width: 50%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-7,
.offset-lg-7 {
  margin-left: 58.33333333%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-8,
.col-lg-8 {
  width: 66.66666667%;
}

.full-row .col-8,
.full-row .col-lg-8 {
  width: 57.14285714%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-8,
.offset-lg-8 {
  margin-left: 66.66666667%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-9,
.col-lg-9 {
  width: 75%;
}

.full-row .col-9,
.full-row .col-lg-9 {
  width: 64.28571429%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-9,
.offset-lg-9 {
  margin-left: 75%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-10,
.col-lg-10 {
  width: 83.33333333%;
}

.full-row .col-10,
.full-row .col-lg-10 {
  width: 71.42857143%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-10,
.offset-lg-10 {
  margin-left: 83.33333333%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-11,
.col-lg-11 {
  width: 91.66666667%;
}

.full-row .col-11,
.full-row .col-lg-11 {
  width: 78.57142857%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-11,
.offset-lg-11 {
  margin-left: 91.66666667%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-12,
.col-lg-12 {
  width: 100%;
}

.full-row .col-12,
.full-row .col-lg-12 {
  width: 85.71428571%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-12,
.offset-lg-12 {
  margin-left: 100%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-13,
.col-lg-13 {
  width: 108.33333333%;
}

.full-row .col-13,
.full-row .col-lg-13 {
  width: 92.85714286%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-13,
.offset-lg-13 {
  margin-left: 108.33333333%;
}

/* Column dimensions
   @mixin ========================================================================= */

/*
   * Calculate width by dividing a full width into 12 columns
   * Create a class for each column
   */

.col-14,
.col-lg-14 {
  width: 116.66666667%;
}

.full-row .col-14,
.full-row .col-lg-14 {
  width: 100%;
}

/* Column shifts
   @mixin ========================================================================= */

.offset-14,
.offset-lg-14 {
  margin-left: 116.66666667%;
}

/* Media queries
 @mixin ========================================================================= */

/*
  * Create a separate loop because of order for css rendering
  * because else it would overrule a previous media query
  */

@media screen and (min-width: 1601px) {
  .col-xl-1 {
    width: 8.33333333%;
  }

  .offset-xl-1 {
    margin-left: 8.33333333%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-1 {
    width: 8.33333333%;
  }

  .offset-md-1 {
    margin-left: 8.33333333%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-1 {
    width: 8.33333333%;
  }

  .offset-sm-1 {
    margin-left: 8.33333333%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-1 {
    width: 8.33333333%;
  }

  .offset-xs-1 {
    margin-left: 8.33333333%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-2 {
    width: 16.66666667%;
  }

  .offset-xl-2 {
    margin-left: 16.66666667%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-2 {
    width: 16.66666667%;
  }

  .offset-md-2 {
    margin-left: 16.66666667%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-2 {
    width: 16.66666667%;
  }

  .offset-sm-2 {
    margin-left: 16.66666667%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-2 {
    width: 16.66666667%;
  }

  .offset-xs-2 {
    margin-left: 16.66666667%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-3 {
    width: 25%;
  }

  .offset-xl-3 {
    margin-left: 25%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-3 {
    width: 25%;
  }

  .offset-md-3 {
    margin-left: 25%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-3 {
    width: 25%;
  }

  .offset-sm-3 {
    margin-left: 25%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-3 {
    width: 25%;
  }

  .offset-xs-3 {
    margin-left: 25%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-4 {
    width: 33.33333333%;
  }

  .offset-xl-4 {
    margin-left: 33.33333333%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-4 {
    width: 33.33333333%;
  }

  .offset-md-4 {
    margin-left: 33.33333333%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-4 {
    width: 33.33333333%;
  }

  .offset-sm-4 {
    margin-left: 33.33333333%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-4 {
    width: 33.33333333%;
  }

  .offset-xs-4 {
    margin-left: 33.33333333%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-5 {
    width: 41.66666667%;
  }

  .offset-xl-5 {
    margin-left: 41.66666667%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-5 {
    width: 41.66666667%;
  }

  .offset-md-5 {
    margin-left: 41.66666667%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-5 {
    width: 41.66666667%;
  }

  .offset-sm-5 {
    margin-left: 41.66666667%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-5 {
    width: 41.66666667%;
  }

  .offset-xs-5 {
    margin-left: 41.66666667%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-6 {
    width: 50%;
  }

  .offset-xl-6 {
    margin-left: 50%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-6 {
    width: 50%;
  }

  .offset-md-6 {
    margin-left: 50%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-6 {
    width: 50%;
  }

  .offset-sm-6 {
    margin-left: 50%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-6 {
    width: 50%;
  }

  .offset-xs-6 {
    margin-left: 50%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-7 {
    width: 58.33333333%;
  }

  .offset-xl-7 {
    margin-left: 58.33333333%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-7 {
    width: 58.33333333%;
  }

  .offset-md-7 {
    margin-left: 58.33333333%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-7 {
    width: 58.33333333%;
  }

  .offset-sm-7 {
    margin-left: 58.33333333%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-7 {
    width: 58.33333333%;
  }

  .offset-xs-7 {
    margin-left: 58.33333333%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-8 {
    width: 66.66666667%;
  }

  .offset-xl-8 {
    margin-left: 66.66666667%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-8 {
    width: 66.66666667%;
  }

  .offset-md-8 {
    margin-left: 66.66666667%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-8 {
    width: 66.66666667%;
  }

  .offset-sm-8 {
    margin-left: 66.66666667%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-8 {
    width: 66.66666667%;
  }

  .offset-xs-8 {
    margin-left: 66.66666667%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-9 {
    width: 75%;
  }

  .offset-xl-9 {
    margin-left: 75%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-9 {
    width: 75%;
  }

  .offset-md-9 {
    margin-left: 75%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-9 {
    width: 75%;
  }

  .offset-sm-9 {
    margin-left: 75%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-9 {
    width: 75%;
  }

  .offset-xs-9 {
    margin-left: 75%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-10 {
    width: 83.33333333%;
  }

  .offset-xl-10 {
    margin-left: 83.33333333%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-10 {
    width: 83.33333333%;
  }

  .offset-md-10 {
    margin-left: 83.33333333%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-10 {
    width: 83.33333333%;
  }

  .offset-sm-10 {
    margin-left: 83.33333333%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-10 {
    width: 83.33333333%;
  }

  .offset-xs-10 {
    margin-left: 83.33333333%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-11 {
    width: 91.66666667%;
  }

  .offset-xl-11 {
    margin-left: 91.66666667%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-11 {
    width: 91.66666667%;
  }

  .offset-md-11 {
    margin-left: 91.66666667%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-11 {
    width: 91.66666667%;
  }

  .offset-sm-11 {
    margin-left: 91.66666667%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-11 {
    width: 91.66666667%;
  }

  .offset-xs-11 {
    margin-left: 91.66666667%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-12 {
    width: 100%;
  }

  .offset-xl-12 {
    margin-left: 100%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-12 {
    width: 100%;
  }

  .offset-md-12 {
    margin-left: 100%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-12 {
    width: 100%;
  }

  .offset-sm-12 {
    margin-left: 100%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-12 {
    width: 100%;
  }

  .offset-xs-12 {
    margin-left: 100%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-13 {
    width: 108.33333333%;
  }

  .offset-xl-13 {
    margin-left: 108.33333333%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-13 {
    width: 108.33333333%;
  }

  .offset-md-13 {
    margin-left: 108.33333333%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-13 {
    width: 108.33333333%;
  }

  .offset-sm-13 {
    margin-left: 108.33333333%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-13 {
    width: 108.33333333%;
  }

  .offset-xs-13 {
    margin-left: 108.33333333%;
  }
}

@media screen and (min-width: 1601px) {
  .col-xl-14 {
    width: 116.66666667%;
  }

  .offset-xl-14 {
    margin-left: 116.66666667%;
  }
}

@media screen and (max-width: 1080px) {
  .col-md-14 {
    width: 116.66666667%;
  }

  .offset-md-14 {
    margin-left: 116.66666667%;
  }
}

@media screen and (max-width: 768px) {
  .col-sm-14 {
    width: 116.66666667%;
  }

  .offset-sm-14 {
    margin-left: 116.66666667%;
  }
}

@media screen and (max-width: 400px) {
  .col-xs-14 {
    width: 116.66666667%;
  }

  .offset-xs-14 {
    margin-left: 116.66666667%;
  }
}

/* ==========================================================================
   This grid can be turned on and off when you want to check
   if everything is nice in place.
   @mixin ========================================================================= */

.visible-grid-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

/**
 * 1. Makes it able to control the website while grid is shown
 */

.visible-grid {
  display: block;
  position: fixed;
  z-index: 10000;
  pointer-events: none;
}

.visible-grid .grid-col {
  background: rgba(0, 255, 255, 0.6);
  height: 100vh;
}

.visible-grid .grid-col:nth-child(2n) {
  background: rgba(0, 255, 255, 0.3);
}

.visible-grid:before,
.visible-grid:after {
  content: '';
  position: absolute;
  top: 0;
  width: calc(100% / 12);
  height: 100%;
  background: rgba(0, 255, 0, 0.5);
}

.visible-grid:before {
  left: calc(-100% / 12);
}

.visible-grid:after {
  right: calc(-100% / 12);
}

.breakpoint {
  position: fixed;
  right: 0;
  bottom: 0;
  width: 20px;
  height: 20px;
  z-index: 10000;
  background: #0ABEFF;
}

@media screen and (min-width: 1601px) {
  .breakpoint {
    background: red;
  }
}

@media screen and (max-width: 1366px) {
  .breakpoint {
    background: blue;
  }
}

@media screen and (max-width: 1080px) {
  .breakpoint {
    background: green;
  }
}

@media screen and (max-width: 768px) {
  .breakpoint {
    background: yellow;
  }
}

@media screen and (max-width: 400px) {
  .breakpoint {
    background: pink;
  }
}

/* ==========================================================================
   Expend Config settings
   @mixin ========================================================================= */

/* ==========================================================================
   Expend Basic style settings
   @mixin ========================================================================= */

/*
 * Set up the html
 *
 * 1. Makes sue that some fonts are better rendered
 */

html {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
}

/*
 * Set up the body
 *
 * 1. Set font to lining figures
 */

body {
  margin: 0;
  font-family: "Avenir LT W02 45 Book", sans-serif;
  line-height: 1.6;
  -webkit-font-feature-settings: "lnum";
          font-feature-settings: "lnum";
  background-color: black;
  background-image: url("/img/backgr.jpg");
  background-position: center top;
  background-size: 100vw auto;
  background-repeat: no-repeat;
}

body.x2 {
  background-image: url("/img/background-x2.jpg");
}

/*
 * Set default settings for all elements
 *
 * 1. Default selection styling
 *
 */

* ::-moz-selection {
  background: #007AFF;
  color: white;
}

* ::selection {
  background: #007AFF;
  color: white;
}

/*
 * Set default styling for input and textarea
 *
 * 1. Set font because else the agent will overrule them with an ugly font
 */

input,
textarea {
  font-family: "Avenir LT W02 45 Book", sans-serif;
}

/*
 * Set default styling for a button
 *
 */

.button {
  display: inline-block;
  padding: 10px 20px;
  background-color: #00C7FF;
  border: 1px solid white;
  border-radius: 10px;
  text-decoration: none;
  color: white;
}

.button .arrow {
  display: inline-block;
  margin-left: 25px;
  background: url("/img/spire_sprite.svg") 35px 1px no-repeat;
  background-size: 212px 82px;
  width: 15px;
  height: 10px;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.button:hover .arrow {
  -webkit-transform: translate3d(5px, 0, 0);
          transform: translate3d(5px, 0, 0);
}

.title-placeholder h1 {
  margin: 30px 0 0;
  font-size: 1rem;
  line-height: 1.3;
  color: white;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

/* ==========================================================================
   Helper classes
   @mixin ========================================================================= */

/**
 * Use on elements from where the children should not wrap
 */

.nowrap {
  white-space: nowrap;
}

/**
 * Hide elements on different screen sizes
 */

@media screen and (max-width: 1600px) {
  .hide-on-xl-or-smaller {
    display: none;
  }
}

@media screen and (min-width: 1601px) {
  .hide-on-xl-or-larger {
    display: none;
  }
}

@media screen and (max-width: 1366px) {
  .hide-on-lg-or-smaller {
    display: none;
  }
}

@media screen and (min-width: 1367px) {
  .hide-on-lg-or-larger {
    display: none;
  }
}

@media screen and (max-width: 1080px) {
  .hide-on-md-or-smaller {
    display: none;
  }
}

@media screen and (min-width: 1081px) {
  .hide-on-md-or-larger {
    display: none;
  }
}

@media screen and (max-width: 768px) {
  .hide-on-sm-or-smaller {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .hide-on-sm-or-larger {
    display: none;
  }
}

@media screen and (max-width: 400px) {
  .hide-on-xs-or-smaller {
    display: none;
  }
}

@media screen and (min-width: 401px) {
  .hide-on-xs-or-larger {
    display: none;
  }
}

/* ==========================================================================
   Partial CSS
   @mixin ========================================================================= */

#cookie-message {
  position: fixed;
  z-index: 9999;
  bottom: 0;
  left: 0;
  padding: 15px 0;
  width: 100%;
  background-color: #282828;
  opacity: 1;
  -webkit-box-shadow: 0 -2px 10px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 -2px 10px 0 rgba(0, 0, 0, 0.1);
  -webkit-transition: opacity 0.5s, -webkit-transform 0.6s;
  transition: opacity 0.5s, -webkit-transform 0.6s;
  transition: opacity 0.5s, transform 0.6s;
  transition: opacity 0.5s, transform 0.6s, -webkit-transform 0.6s;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

#cookie-message.accepted {
  display: none;
}

#cookie-message.transition-out {
  opacity: 0;
  -webkit-transform: translate3d(0, 50%, 0);
          transform: translate3d(0, 50%, 0);
}

#cookie-message .grid-row {
  text-align: center;
}

#cookie-message .grid-row p,
#cookie-message .grid-row p a,
#cookie-message .grid-row .close-button {
  font-size: 0.75rem;
  line-height: 1.2;
  color: white;
}

#cookie-message .grid-row p {
  display: inline-block;
  vertical-align: middle;
  margin: 0;
}

#cookie-message .grid-row p a {
  text-decoration: underline;
}

#cookie-message .grid-row .close-button {
  display: inline-block;
  vertical-align: middle;
  margin-left: 15px;
  padding: 5px 12px;
  background-color: rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  cursor: pointer;
}

@media screen and (max-width: 625px) {
  #cookie-message .grid-row p {
    max-width: 225px;
  }
}

@media screen and (max-width: 375px) {
  #cookie-message .grid-row p {
    display: block;
    max-width: none;
  }

  #cookie-message .grid-row .close-button {
    margin-top: 10px;
  }
}

/* ==========================================================================
   Footer
   @mixin ========================================================================= */

footer {
  background: #1D2433;
  color: #c3cfe6;
  padding: 100px 0;
}

footer .komma {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.75rem;
  line-height: 1;
  width: 265px;
  color: #c3cfe6;
  font-weight: 500;
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
}

footer .komma:hover {
  color: white;
}

footer .komma:hover span {
  opacity: 1;
}

footer .komma span {
  position: relative;
  top: 1px;
  display: inline-block;
  opacity: 0.4;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
  background: url("/img/spire_sprite.svg") -491px -1px no-repeat;
  background-size: 212px 82px;
  width: 93px;
  height: 31px;
}

@media screen and (max-width: 400px) {
  footer .komma {
    display: block;
    text-align: center;
  }

  footer .komma span {
    display: block;
    margin: 10px auto 0;
  }
}

header {
  background-color: rgba(20, 20, 20, 0.85);
}

.x2 header {
  background-color: transparent;
}

header .pre-header {
  position: relative;
  border-bottom: 1px solid rgba(151, 151, 151, 0.4);
}

header .pre-header .grid-row {
  padding: 8px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

header .pre-header .reasons {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

header .pre-header .reasons p {
  margin: 0;
  font-size: 0.65rem;
  line-height: 1.2;
  color: rgba(190, 180, 181, 0.75);
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

header .pre-header .reasons p + p {
  margin-left: 40px;
}

header .pre-header .reasons p:before {
  content: '';
  display: inline-block;
  margin-right: 5px;
  background: url("/img/spire_sprite.svg") -185px -62px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 10px;
  opacity: 0.75;
}

header .pre-header .mail-button {
  font-size: 0.65rem;
  line-height: 1.2;
  color: rgba(190, 180, 181, 0.75);
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

header .pre-header .mail-button:hover {
  color: #BEB4B5;
}

header .pre-header .mail-button:before {
  content: '';
  position: relative;
  top: -1px;
  display: inline-block;
  margin-right: 5px;
  width: 6px;
  height: 6px;
  border-radius: 100%;
  background-color: #68FF6D;
}

header .pre-header .mail-button:after {
  content: '';
  position: relative;
  display: inline-block;
  margin-left: 5px;
  background: url("/img/spire_sprite.svg") -170px 0 no-repeat;
  background-size: 212px 82px;
  width: 10px;
  height: 11px;
}

header .main-row {
  padding: 20px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

header .main-row .logo {
  display: block;
  width: 170px;
}

header .main-row .logo img,
header .main-row .logo svg {
  width: 100%;
}

.x2 header .main-row .logo {
  width: 90px;
}

header .main-row .search-placeholder {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(100% - 336px);
}

header .main-row .search-placeholder .search {
  position: relative;
  width: 100%;
  max-width: 415px;
}

header .main-row .search-placeholder .search .search-input {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  width: 100%;
  display: block;
  padding: 7px 40px 7px 10px;
  background-color: white;
  border: none;
  font-size: 0.7rem;
  line-height: 1.2;
  color: #999192;
}

header .main-row .search-placeholder .search .search-input:-webkit-autofill,
header .main-row .search-placeholder .search .search-input:-webkit-autofill:hover,
header .main-row .search-placeholder .search .search-input:-webkit-autofill:focus,
header .main-row .search-placeholder .search .search-input:-webkit-autofill:active {
  -webkit-transition: 9999s background-color;
  transition: 9999s background-color;
  -webkit-text-fill-color: #999192;
  -webkit-transition-delay: 9999s;
          transition-delay: 9999s;
}

header .main-row .search-placeholder .search .search-input:focus {
  outline: none;
}

header .main-row .search-placeholder .search .submit {
  position: absolute;
  right: 0;
  top: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 30px;
  height: 30px;
  background-color: #757575;
  cursor: pointer;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

header .main-row .search-placeholder .search .submit .icon {
  background: url("/img/spire_sprite.svg") -185px 0 no-repeat;
  background-size: 212px 82px;
  width: 14px;
  height: 14px;
}

header .main-row .search-placeholder .search .submit input {
  display: none;
}

header .main-row .search-placeholder .search .submit:hover {
  background-color: rgba(117, 117, 117, 0.75);
}

header .main-row .shopping-cart-icon {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 168px;
  text-decoration: none;
}

header .main-row .shopping-cart-icon .icon {
  position: relative;
  display: block;
  width: 24px;
  height: 24px;
  margin-right: 8px;
}

header .main-row .shopping-cart-icon .icon:before {
  content: '';
  display: inline-block;
  background: url("/img/spire_sprite.svg") -185px -19px no-repeat;
  background-size: 212px 82px;
  width: 24px;
  height: 24px;
  opacity: 0.5;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

header .main-row .shopping-cart-icon .icon:after {
  content: attr(data-amount);
  position: absolute;
  left: 15px;
  top: -10px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  min-width: 20px;
  height: 20px;
  padding: 0 5px;
  color: white;
  background-color: #E20A17;
  border-radius: 20px;
  font-size: 0.6rem;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

header .main-row .shopping-cart-icon .icon[data-amount='0']:after {
  display: none;
}

header .main-row .shopping-cart-icon span {
  font-size: 0.8rem;
  line-height: 1.2;
  color: rgba(190, 180, 181, 0.75);
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

header .main-row .shopping-cart-icon:hover .icon:before {
  opacity: 1;
}

header .main-row .shopping-cart-icon:hover span {
  color: #BEB4B5;
}

header nav {
  background-color: #282828;
  border-top: 1px solid #979797;
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.5);
}

header nav .grid-row {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

header nav .grid-row a {
  display: block;
  padding: 18px 0;
  background-color: transparent;
  text-align: center;
  text-transform: uppercase;
  text-decoration: none;
  font-size: 0.6rem;
  line-height: 1.2;
  color: white;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  -webkit-transition: background-color 0.3s, color 0.3s;
  transition: background-color 0.3s, color 0.3s;
}

header nav .grid-row a + a {
  border-left: 1px solid #979797;
}

header nav .grid-row a:hover {
  color: #E50000;
}

/* ==========================================================================
   Default styling for KMS content
   @mixin ========================================================================= */

.kms-content h1,
.kms-content h2,
.kms-content h3 {
  color: black;
  font-size: 0.9rem;
  line-height: 1.4;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.kms-content h1 strong,
.kms-content h2 strong,
.kms-content h3 strong {
  color: #E50000;
}

.kms-content h2,
.kms-content h3 {
  font-size: 0.8rem;
  text-transform: uppercase;
}

.kms-content h3 {
  color: #E50000;
}

.kms-content h3 strong {
  color: black;
}

.kms-content h4 {
  font-size: 0.8rem;
  line-height: 1.4;
  color: #E50000;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.kms-content p {
  font-size: 0.7rem;
  line-height: 1.4;
  color: black;
}

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

.kms-content ul li {
  position: relative;
  padding-left: 25px;
  font-size: 0.7rem;
  line-height: 1.4;
  color: black;
}

.kms-content ul li:before {
  position: absolute;
  top: 3px;
  left: 0;
  content: '\2022';
  color: black;
  font-size: 0.9em;
  line-height: 1;
}

.kms-content ul li + li {
  margin-top: 5px;
}

.kms-content ol {
  counter-reset: ol-counter;
  padding-left: 0;
  list-style: none;
}

.kms-content ol li {
  position: relative;
  padding-left: 30px;
  color: black;
  font-size: 0.8em;
  line-height: 1;
}

.kms-content ol li:before {
  counter-increment: ol-counter;
  content: counter(ol-counter) ".";
  position: absolute;
  left: 0;
  color: black;
}

.kms-content ol li + li {
  margin-top: 5px;
}

.kms-content a {
  color: #E50000;
}

.kms-content a:hover {
  color: #b20000;
}

.form {
  display: block;
  width: 100%;
  max-width: 560px;
  font-size: 1rem;
  line-height: 1.2;
}

.form .form-element {
  position: relative;
  margin-bottom: 20px;
}

.form .form-element.error label,
.form .form-element.error .label {
  color: #E50000;
}

.form .form-element.error input,
.form .form-element.error textarea,
.form .form-element.error select,
.form .form-element.error .selectr-selected {
  border-color: #E50000 !important;
}

.form .form-element.hidden {
  display: none;
}

.form .error-message {
  display: none;
  width: 100%;
  color: #E50000;
  font-size: 0.75rem;
  font-weight: bold;
}

.form .error-message.active {
  display: block;
  margin-bottom: 10px;
}

.form .inline-form-error {
  color: #E50000;
  font-size: 0.75rem;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  text-align: center;
}

.form label,
.form .label {
  display: block;
  margin: 0 0 3px;
  color: #282828;
  font-size: 0.6em;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  text-transform: uppercase;
}

.form input,
.form textarea {
  display: block;
  width: 100%;
  background-color: transparent;
  padding: 10px 10px;
  border: 1px #BEB4B5 solid;
  font-size: 0.9em;
  color: #282828;
}

.form input.alert,
.form input.error,
.form textarea.alert,
.form textarea.error {
  border-color: #E50000;
}

.form input:-webkit-autofill,
.form input:-webkit-autofill:hover,
.form input:-webkit-autofill:focus,
.form input:-webkit-autofill:active,
.form textarea:-webkit-autofill,
.form textarea:-webkit-autofill:hover,
.form textarea:-webkit-autofill:focus,
.form textarea:-webkit-autofill:active {
  -webkit-transition: 9999s background-color;
  transition: 9999s background-color;
  -webkit-text-fill-color: #282828;
  -webkit-transition-delay: 9999s;
          transition-delay: 9999s;
}

.form input:focus,
.form textarea:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
}

.form textarea {
  min-height: 152px;
  resize: vertical;
}

.form .select .select-wrapper {
  position: relative;
  display: block;
}

.form .select .icon {
  position: absolute;
  right: 10px;
  top: 20px;
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 5px 6px 0 6px;
  border-color: #282828 transparent transparent transparent;
  opacity: 0.3;
  pointer-events: none;
}

.form .select select {
  display: block;
  width: 100%;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  font-family: "Avenir LT W02 45 Book", sans-serif;
  background-color: white;
  padding: 10px 35px 10px 10px;
  border: 1px #BEB4B5 solid;
  border-radius: 0;
  font-size: 0.9em;
  color: #282828;
}

.form .select select:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
}

.form .select .selectr-selected {
  border-radius: 0;
  padding: 10px 28px 10px 10px;
  border-color: #BEB4B5;
}

.form .select .selectr-container {
  font-size: 0.9em;
}

.form .select .selectr-input {
  width: calc(100% - 30px);
}

.form .select .selectr-option.active {
  background-color: #282828;
  color: white;
  font-family: "Avenir LT W02 45 Book", sans-serif;
}

.form .checkbox label {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  cursor: pointer;
}

.form .checkbox label input {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  margin: 0;
  width: 16px;
  height: 16px;
  border-radius: 0;
  padding: 0;
  border: 1px solid #BEB4B5;
  background-color: rgba(255, 255, 255, 0.3);
  background-size: contain;
  background-position: center;
  background-repeat: no-repeat;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.form .checkbox label input:hover {
  background-color: rgba(255, 255, 255, 0.5);
}

.form .checkbox label input:checked {
  background-image: url("/img/check/checked.svg");
  background-color: rgba(255, 255, 255, 0.7);
}

.form .checkbox label span {
  display: block;
  margin: 2px 0 0;
  width: calc(100% - 30px);
}

.form .submit {
  margin-top: 20px;
}

.image-slider {
  width: 100%;
  overflow: visible;
  -webkit-box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.2);
          box-shadow: 0px 0px 40px 0px rgba(0, 0, 0, 0.2);
}

.image-slider .placeholder {
  position: relative;
  width: 100%;
  cursor: move;
}

.image-slider .placeholder .controllers {
  position: relative;
  z-index: 3;
  width: 100%;
  height: 0;
  padding-bottom: 66.67%;
}

@media screen and (max-width: 1350px) {
  .image-slider .placeholder .controllers {
    padding-bottom: 100%;
  }
}

.image-slider .placeholder .controllers .nav-item {
  position: absolute;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  bottom: -50px;
  width: 35px;
  height: 35px;
  cursor: pointer;
  border-radius: 100%;
  -webkit-transition: background 0.3s;
  transition: background 0.3s;
}

.image-slider .placeholder .controllers .nav-item span {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 16px;
  width: 16px;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.image-slider .placeholder .controllers .nav-item span .arrow-icon {
  position: relative;
  width: 10px;
  height: 16px;
  -webkit-transform-origin: center;
          transform-origin: center;
}

.image-slider .placeholder .controllers .nav-item span .arrow-icon .st0 {
  fill: white;
}

.image-slider .placeholder .controllers .nav-item.previous {
  background-color: #00C7FF;
  right: calc(50% + 3px);
}

.image-slider .placeholder .controllers .nav-item.previous span .arrow-icon {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

.image-slider .placeholder .controllers .nav-item.previous:hover {
  background-color: #1acdff;
}

.image-slider .placeholder .controllers .nav-item.next {
  background-color: #E50000;
  left: calc(50% + 3px);
}

.image-slider .placeholder .controllers .nav-item.next span .arrow-icon {
  -webkit-transform: rotate(270deg);
          transform: rotate(270deg);
}

.image-slider .placeholder .controllers .nav-item.next:hover {
  background-color: #cc0000;
}

.image-slider .placeholder figure {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

.image-slider .placeholder figure span {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
}

.image-slider .placeholder figure span.small {
  display: none;
}

@media screen and (max-width: 480px) {
  .image-slider .placeholder figure span.medium {
    display: none;
  }

  .image-slider .placeholder figure span.small {
    display: block;
  }
}

.image-slider .placeholder figure.active {
  z-index: 2;
  opacity: 1;
}

#breadcrumb {
  margin-top: 50px;
  padding: 0 0 4px;
  border-bottom: 1px solid #979797;
}

#breadcrumb ol {
  list-style: none;
  padding: 0;
  margin: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#breadcrumb ol .divider {
  display: inline-block;
  padding: 0 4px;
  color: #757575;
  font-size: 0.6rem;
  line-height: 1.25;
}

#breadcrumb ol li a {
  color: #757575;
  text-transform: uppercase;
  font-size: 0.6rem;
  line-height: 1.25;
  text-decoration: none;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

#breadcrumb ol li a:hover {
  opacity: 0.75;
}

#breadcrumb ol li:last-child a {
  color: white;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-overview {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 240px);
  background-color: white;
}

.shopping-cart-overview h2 {
  margin: 0;
  padding: 8px 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(#141414), color-stop(30.81%, #373737), color-stop(52.15%, #404040), color-stop(80.54%, #3A3A3A), to(#272727));
  background: linear-gradient(180deg, #141414 0%, #373737 30.81%, #404040 52.15%, #3A3A3A 80.54%, #272727 100%);
  font-size: 0.6rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  color: white;
}

.shopping-cart-overview .no-items {
  padding: 20px 20px;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.4;
  text-align: center;
  color: black;
}

.shopping-cart-overview .buttons {
  border-top: 2px solid rgba(190, 180, 181, 0.5);
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 25px 20px;
}

.shopping-cart-overview .buttons .button {
  display: inline-block;
  padding: 10px 15px;
  border-radius: 8px;
  font-size: 0.7rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-overview .buttons .button + .button {
  margin-left: 20px;
}

.shopping-cart-overview .buttons .button.continue-shopping {
  border: 1px solid rgba(20, 20, 20, 0.2);
  background-color: transparent;
  color: #141414;
}

.shopping-cart-overview .buttons .button.continue-shopping span {
  position: relative;
  top: 1px;
  display: inline-block;
  background: url("/img/spire_sprite.svg") -170px -56px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 13px;
  margin-right: 5px;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.shopping-cart-overview .buttons .button.continue-shopping:hover span {
  -webkit-transform: translate3d(-5px, 0, 0);
          transform: translate3d(-5px, 0, 0);
}

.shopping-cart-overview .buttons .button.checkout {
  position: relative;
  z-index: 2;
  background-color: transparent;
}

.shopping-cart-overview .buttons .button.checkout:before,
.shopping-cart-overview .buttons .button.checkout:after {
  content: '';
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.shopping-cart-overview .buttons .button.checkout:before {
  opacity: 1;
  background: -webkit-gradient(linear, left top, left bottom, from(#40E044), color-stop(50%, #40E044), color-stop(51%, #38C23C), to(#38C23C));
  background: linear-gradient(to bottom, #40E044 0%, #40E044 50%, #38C23C 51%, #38C23C 100%);
}

.shopping-cart-overview .buttons .button.checkout:after {
  opacity: 0;
  background: #38C23C;
}

.shopping-cart-overview .buttons .button.checkout span {
  position: relative;
  top: 1px;
  display: inline-block;
  background: url("/img/spire_sprite.svg") -170px -44px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 13px;
  margin-left: 5px;
  -webkit-transform: translate3d(0, 0, 0) rotate(180deg);
          transform: translate3d(0, 0, 0) rotate(180deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.shopping-cart-overview .buttons .button.checkout:hover:after {
  opacity: 1;
}

.shopping-cart-overview .buttons .button.checkout:hover span {
  -webkit-transform: translate3d(5px, 0, 0) rotate(180deg);
          transform: translate3d(5px, 0, 0) rotate(180deg);
}

.shopping-cart-overview .items article {
  position: relative;
  z-index: 2;
  overflow: hidden;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 20px 50px 20px 20px;
  max-height: 160px;
  font-size: 0.9rem;
  line-height: 1.4;
  color: #BEB4B5;
  opacity: 1;
  -webkit-transition: opacity 0.2s, padding 0.4s, max-height 0.4s;
  transition: opacity 0.2s, padding 0.4s, max-height 0.4s;
}

.shopping-cart-overview .items article.removed {
  z-index: 1;
  opacity: 0.4;
  max-height: 0;
  padding: 0 50px 0 20px;
}

.shopping-cart-overview .items article + article {
  border-top: 2px solid rgba(190, 180, 181, 0.5);
}

.shopping-cart-overview .items article figure {
  position: relative;
  width: 120px;
  height: 120px;
}

.shopping-cart-overview .items article figure span {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

.shopping-cart-overview .items article .information {
  width: calc(100% - 120px - 70px - 140px);
  padding: 0 20px;
}

.shopping-cart-overview .items article .information h3 {
  margin: 0;
  color: black;
  font-size: 0.9rem;
  line-height: 1.4;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-overview .items article .information p {
  margin: 0 0 5px;
  text-transform: uppercase;
  color: #AEAEAE;
  font-size: 0.6rem;
  line-height: 1.4;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-overview .items article .information a {
  color: #E50000;
  font-size: 0.6rem;
  line-height: 1.4;
}

.shopping-cart-overview .items article .units {
  position: relative;
  width: 70px;
}

.shopping-cart-overview .items article .units input {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  width: 40px;
  height: 40px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 5px;
  background-color: transparent;
  border: 1px solid rgba(190, 180, 181, 0.5);
  font-size: 0.65rem;
  line-height: 1.2;
  text-align: center;
  color: black;
}

.shopping-cart-overview .items article .units input:-webkit-autofill,
.shopping-cart-overview .items article .units input:-webkit-autofill:hover,
.shopping-cart-overview .items article .units input:-webkit-autofill:focus,
.shopping-cart-overview .items article .units input:-webkit-autofill:active {
  -webkit-transition: 9999s background-color;
  transition: 9999s background-color;
  -webkit-text-fill-color: #999192;
  -webkit-transition-delay: 9999s;
          transition-delay: 9999s;
}

.shopping-cart-overview .items article .units input:focus {
  outline-color: #AEAEAE;
}

.shopping-cart-overview .items article .units .changer {
  position: absolute;
  right: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 20px;
  width: 30px;
  background-color: #757575;
  color: white;
  font-size: 0.8rem;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  cursor: pointer;
  opacity: 1;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.shopping-cart-overview .items article .units .changer:hover {
  opacity: 0.8;
}

.shopping-cart-overview .items article .units .changer.increment {
  top: 0;
  background-color: #141414;
}

.shopping-cart-overview .items article .units .changer.increment:before {
  content: '+';
}

.shopping-cart-overview .items article .units .changer.decrement {
  bottom: 0;
  font-size: 1.2rem;
  line-height: 1;
  background-color: #757575;
}

.shopping-cart-overview .items article .units .changer.decrement.disabled {
  cursor: auto;
  opacity: 0.3;
  pointer-events: none;
}

.shopping-cart-overview .items article .units .changer.decrement:before {
  position: relative;
  top: -1px;
  content: '-';
}

.shopping-cart-overview .items article .price {
  margin: 0;
  display: block;
  width: 140px;
  text-align: right;
}

.shopping-cart-overview .items article .price span {
  display: block;
}

.shopping-cart-overview .items article .price .individual {
  margin-top: 5px;
  opacity: 0;
  color: #AEAEAE;
  font-size: 0.65rem;
  line-height: 1.2;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.shopping-cart-overview .items article .price .individual.show {
  opacity: 1;
}

.shopping-cart-overview .items article .price .total {
  color: black;
  font-size: 0.9rem;
  line-height: 1.4;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-overview .items article .remove {
  position: absolute;
  right: 20px;
  top: 20px;
  display: block;
  cursor: pointer;
  width: 13px;
  height: 13px;
}

.shopping-cart-overview .items article .remove:before {
  content: '';
  display: block;
  background: url("/img/spire_sprite.svg") -170px -19px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 13px;
}

.shopping-cart-summary {
  width: 220px;
  margin-left: 20px;
  display: inline-block;
  vertical-align: top;
}

.shopping-cart-summary h2 {
  margin: 0;
  padding: 8px 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(#141414), color-stop(30.81%, #373737), color-stop(52.15%, #404040), color-stop(80.54%, #3A3A3A), to(#272727));
  background: linear-gradient(180deg, #141414 0%, #373737 30.81%, #404040 52.15%, #3A3A3A 80.54%, #272727 100%);
  font-size: 0.6rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  color: white;
}

.shopping-cart-summary > img {
  width: 100%;
}

.shopping-cart-summary .box-container {
  padding: 30px 30px 100px 45px;
  background-color: white;
  background-image: url("/img/boxBg.svg");
  background-size: contain;
  background-repeat: repeat-y;
}

.shopping-cart-summary h4 {
  color: #E50000;
  font-size: 0.65rem;
  line-height: 1.4;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  margin: 0 0 10px;
}

.shopping-cart-summary .shopping-cart-amount {
  margin: 0 0 10px;
  color: black;
  font-size: 0.9rem;
  line-height: 1.4;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-summary .pricing {
  padding: 0;
  margin: 0 0 25px;
}

.shopping-cart-summary .pricing p,
.shopping-cart-summary .pricing > div {
  margin: 0 0 5px;
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.75rem;
  line-height: 1.4;
  color: black;
}

.shopping-cart-summary .pricing p.hidden,
.shopping-cart-summary .pricing > div.hidden {
  display: none;
}

.shopping-cart-summary .pricing p strong,
.shopping-cart-summary .pricing > div strong {
  font-size: 0.6rem;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-summary .pricing p.shipping-cost strong .selected-country,
.shopping-cart-summary .pricing > div.shipping-cost strong .selected-country {
  cursor: pointer;
}

.shopping-cart-summary .pricing p.shipping-cost strong .selected-country:before,
.shopping-cart-summary .pricing > div.shipping-cost strong .selected-country:before {
  content: attr(data-shipping-country);
  text-decoration: underline;
}

.shopping-cart-summary .pricing p.total,
.shopping-cart-summary .pricing > div.total {
  margin: 8px 0 0;
  padding-top: 8px;
  border-top: 2px solid rgba(190, 180, 181, 0.5);
}

.shopping-cart-summary .pricing p.total .total-formatted,
.shopping-cart-summary .pricing > div.total .total-formatted {
  font-size: 0.75rem;
}

.shopping-cart-summary .pricing .no-shipping-defined {
  position: relative;
  margin-top: 20px;
  text-decoration: underline;
  cursor: pointer;
}

.shopping-cart-summary .pricing .shipping-country-pop-up {
  position: absolute;
  z-index: -1;
  width: 200px;
  height: 105px;
  right: -20px;
  top: -120px;
  padding: 0 15px 15px;
  background-color: #f2f2f2;
  font-size: 0.7rem;
  line-height: 1.4;
  color: black;
  opacity: 0;
  pointer-events: none;
  -webkit-box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.3);
  -webkit-transform: translate3d(0, 10px, 0);
          transform: translate3d(0, 10px, 0);
  -webkit-transition: opacity 0.3s, z-index 0s ease 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, z-index 0s ease 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s, z-index 0s ease 0.3s;
  transition: opacity 0.3s, transform 0.3s, z-index 0s ease 0.3s, -webkit-transform 0.3s;
}

.shopping-cart-summary .pricing .shipping-country-pop-up:after {
  content: '';
  position: absolute;
  top: 105px;
  left: calc(50% - 8px);
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #f2f2f2 transparent transparent transparent;
}

.shopping-cart-summary .pricing .shipping-country-pop-up.show {
  z-index: 4;
  pointer-events: all;
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: opacity 0.3s, z-index 0s ease 0s, -webkit-transform 0.3s;
  transition: opacity 0.3s, z-index 0s ease 0s, -webkit-transform 0.3s;
  transition: opacity 0.3s, transform 0.3s, z-index 0s ease 0s;
  transition: opacity 0.3s, transform 0.3s, z-index 0s ease 0s, -webkit-transform 0.3s;
}

.shopping-cart-summary .pricing .shipping-country-pop-up.select-opened {
  height: 355px;
}

.shopping-cart-summary .pricing .shipping-country-pop-up > p {
  display: block;
  margin: 0;
  padding: 15px 0 10px;
  font-size: 0.55rem;
  line-height: 1.4;
  text-transform: uppercase;
  color: black;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  text-align: center;
}

.shopping-cart-summary .pricing .shipping-country-pop-up .selectr-option.active {
  background-color: #282828;
  color: white;
  font-family: "Avenir LT W02 45 Book", sans-serif;
}

.shopping-cart-summary .checkout {
  position: relative;
  z-index: 2;
  display: inline-block;
  padding: 10px 15px;
  background-color: transparent;
  border-radius: 8px;
  font-size: 0.7rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-summary .checkout:before,
.shopping-cart-summary .checkout:after {
  content: '';
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

.shopping-cart-summary .checkout:before {
  opacity: 1;
  background: -webkit-gradient(linear, left top, left bottom, from(#40E044), color-stop(50%, #40E044), color-stop(51%, #38C23C), to(#38C23C));
  background: linear-gradient(to bottom, #40E044 0%, #40E044 50%, #38C23C 51%, #38C23C 100%);
}

.shopping-cart-summary .checkout:after {
  opacity: 0;
  background: #38C23C;
}

.shopping-cart-summary .checkout span {
  position: relative;
  top: 1px;
  display: inline-block;
  background: url("/img/spire_sprite.svg") -170px -44px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 13px;
  margin-left: 17px;
  -webkit-transform: translate3d(0, 0, 0) rotate(180deg);
          transform: translate3d(0, 0, 0) rotate(180deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.shopping-cart-summary .checkout:hover:after {
  opacity: 1;
}

.shopping-cart-summary .checkout:hover span {
  -webkit-transform: translate3d(5px, 0, 0) rotate(180deg);
          transform: translate3d(5px, 0, 0) rotate(180deg);
}

.shopping-cart-summary .pay-off {
  margin: 40px 0 0;
  margin-top: 50px;
  font-size: 0.65rem;
  line-height: 1.4;
  color: #E50000;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.shopping-cart-summary .pay-off a {
  color: #E50000;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.shopping-cart-summary .pay-off a:hover {
  color: black;
}

.shopping-cart-summary .links {
  margin-top: 20px;
}

.shopping-cart-summary .links a {
  font-size: 0.7rem;
  line-height: 1.4;
  color: black;
  text-decoration: none;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
}

.shopping-cart-summary .links a:hover {
  color: rgba(0, 0, 0, 0.6);
}

.shopping-cart-summary.notification .pay-off {
  margin-top: 0;
}

.checkout-progress-bar {
  position: relative;
  margin: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#141414), color-stop(30.81%, #373737), color-stop(52.15%, #404040), color-stop(80.54%, #3A3A3A), to(#272727));
  background: linear-gradient(180deg, #141414 0%, #373737 30.81%, #404040 52.15%, #3A3A3A 80.54%, #272727 100%);
}

.checkout-progress-bar:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  height: 100%;
  width: 100%;
  background-color: black;
  opacity: 0.38;
}

.checkout-progress-bar > * {
  position: relative;
  z-index: 2;
  display: inline-block;
  padding: 8px 10px;
  font-size: 0.6rem;
  line-height: 1.4;
  text-transform: uppercase;
  text-decoration: none;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  color: rgba(255, 255, 255, 0.5);
}

.checkout-progress-bar > * + * {
  border-left: 1px solid rgba(255, 255, 255, 0.25);
}

.checkout-progress-bar > * .checked,
.checkout-progress-bar > * .cross {
  position: relative;
  display: inline-block;
  margin-right: 4px;
}

.checkout-progress-bar > * .checked {
  background: url("/img/spire_sprite.svg") -170px -33px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 10px;
  opacity: 0.3;
}

.checkout-progress-bar > * .checked.green {
  background: url("/img/spire_sprite.svg") -185px -62px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 10px;
  opacity: 1;
}

.checkout-progress-bar > * .cross {
  width: 15px;
  height: 12px;
  top: 3px;
}

.checkout-progress-bar > * .cross > span {
  position: absolute;
  top: 3px;
  display: block;
  width: 13px;
  height: 3px;
  background: #E50000;
  -webkit-transform-origin: 50%;
          transform-origin: 50%;
}

.checkout-progress-bar > * .cross > span:first-child {
  right: 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.checkout-progress-bar > * .cross > span:last-child {
  right: 0;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

.checkout-progress-bar > *.active {
  position: relative;
  z-index: 3;
  color: white;
  background: -webkit-gradient(linear, left top, left bottom, from(#141414), color-stop(30.81%, #373737), color-stop(52.15%, #404040), color-stop(80.54%, #3A3A3A), to(#272727));
  background: linear-gradient(180deg, #141414 0%, #373737 30.81%, #404040 52.15%, #3A3A3A 80.54%, #272727 100%);
}

#checkoutForm {
  max-width: none;
}

#checkoutForm .error-messages {
  margin: 30px 60px 0;
  padding: 20px;
  width: calc(100% - 120px);
  border: 1px solid rgba(229, 0, 0, 0.5);
  font-size: 0.7rem;
  line-height: 1.6;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  color: #E50000;
}

#checkoutForm input,
#checkoutForm .select .selectr-container {
  font-size: 0.75rem;
}

#checkoutForm .area-wrapper {
  padding: 40px 60px;
}

#checkoutForm .area-wrapper + .area-wrapper {
  border-top: 1px solid #BEB4B5;
}

#checkoutForm .area-wrapper.main-area,
#checkoutForm .area-wrapper.submit-area {
  padding: 60px;
}

#checkoutForm .area-wrapper.submit-area {
  padding: 60px 60px 80px;
}

#checkoutForm .area-wrapper h3 {
  margin: 0 0 30px;
  font-size: 0.75rem;
  line-height: 1.2;
  color: #E50000;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

#checkoutForm .area-wrapper .selectr-selected:focus {
  -webkit-box-shadow: none;
          box-shadow: none;
  outline: none;
}

#checkoutForm .area-wrapper .salutation .select-wrapper {
  width: 90px;
}

#checkoutForm .area-wrapper .dual-wrapper {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

#checkoutForm .area-wrapper .dual-wrapper .form-element,
#checkoutForm .area-wrapper .dual-wrapper .sub-dual-wrapper {
  width: calc(50% - 10px);
}

#checkoutForm .area-wrapper .dual-wrapper .sub-dual-wrapper {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

#checkoutForm .area-wrapper .address-placeholder {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 20px;
}

#checkoutForm .area-wrapper .address-placeholder .left-placeholder,
#checkoutForm .area-wrapper .address-placeholder .right-placeholder {
  width: calc(50% - 10px);
}

#checkoutForm .area-wrapper .address-placeholder .left-placeholder input,
#checkoutForm .area-wrapper .address-placeholder .right-placeholder input {
  margin-bottom: 10px;
}

#checkoutForm .area-wrapper .address-placeholder .left-placeholder .dual-wrapper,
#checkoutForm .area-wrapper .address-placeholder .right-placeholder .dual-wrapper {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

#checkoutForm .area-wrapper .address-placeholder .left-placeholder .dual-wrapper input,
#checkoutForm .area-wrapper .address-placeholder .right-placeholder .dual-wrapper input {
  width: calc(50% - 5px);
}

#checkoutForm .area-wrapper .legal,
#checkoutForm .area-wrapper .other-shipping-address {
  margin-bottom: 30px;
}

#checkoutForm .area-wrapper .legal label,
#checkoutForm .area-wrapper .other-shipping-address label {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#checkoutForm .area-wrapper .legal label span,
#checkoutForm .area-wrapper .other-shipping-address label span {
  display: inline-block;
  margin-left: 10px;
  width: auto;
  font-family: "Avenir LT W02 45 Book", sans-serif;
  text-transform: none;
  font-size: 0.7rem;
}

#checkoutForm .area-wrapper .legal label span a,
#checkoutForm .area-wrapper .other-shipping-address label span a {
  color: #007AFF;
}

#checkoutForm .shipping-area .other-shipping-address {
  margin-bottom: 0;
}

#checkoutForm .shipping-area .other-shipping-address label {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#checkoutForm .shipping-area .shipping-information {
  margin-top: 20px;
}

#checkoutForm .shipping-area .shipping-information.hidden {
  display: none;
  margin-top: 0;
}

#checkoutForm .shipping-area .shipping-information #shippingCompany {
  margin-bottom: 10px;
}

#checkoutForm .submit {
  text-align: center;
}

#checkoutForm .submit input {
  display: none;
}

#checkoutForm .submit p {
  position: relative;
  z-index: 2;
  display: inline-block;
  margin: 0;
  padding: 10px 15px;
  border-radius: 8px;
  cursor: pointer;
  font-size: 0.7rem;
  line-height: 1.4;
  text-transform: uppercase;
  color: white;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

#checkoutForm .submit p:before,
#checkoutForm .submit p:after {
  content: '';
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 8px;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}

#checkoutForm .submit p:before {
  opacity: 1;
  background: -webkit-gradient(linear, left top, left bottom, from(#40E044), color-stop(50%, #40E044), color-stop(51%, #38C23C), to(#38C23C));
  background: linear-gradient(to bottom, #40E044 0%, #40E044 50%, #38C23C 51%, #38C23C 100%);
}

#checkoutForm .submit p:after {
  opacity: 0;
  background: #38C23C;
}

#checkoutForm .submit p span {
  position: relative;
  top: 1px;
  display: inline-block;
  background: url("/img/spire_sprite.svg") -170px -44px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 13px;
  margin-left: 30px;
  -webkit-transform: translate3d(0, 0, 0) rotate(180deg);
          transform: translate3d(0, 0, 0) rotate(180deg);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

#checkoutForm .submit p:hover:after {
  opacity: 1;
}

#checkoutForm .submit p:hover span {
  -webkit-transform: translate3d(5px, 0, 0) rotate(180deg);
          transform: translate3d(5px, 0, 0) rotate(180deg);
}

.checkout-shopping-cart-summary h3 {
  margin-bottom: 0 !important;
}

.checkout-shopping-cart-summary .products {
  position: relative;
}

.checkout-shopping-cart-summary .products:after {
  content: '+';
  position: absolute;
  right: -20px;
  bottom: -9px;
  display: block;
  font-size: 0.85rem;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.checkout-shopping-cart-summary .products article {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 18px 0 12px;
  border-bottom: 1px solid rgba(190, 180, 181, 0.25);
}

.checkout-shopping-cart-summary .products article .units {
  display: block;
  margin: 0;
  width: 50px;
  font-size: 0.65rem;
  line-height: 1.2;
}

.checkout-shopping-cart-summary .products article .units:after {
  content: 'x';
}

.checkout-shopping-cart-summary .products article .information {
  width: calc(100% - 170px);
  margin-top: -3px;
}

.checkout-shopping-cart-summary .products article .information h5 {
  margin: 0 0 2px;
  font-size: 0.75rem;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.checkout-shopping-cart-summary .products article .information p {
  margin: 0;
  font-size: 0.6rem;
  line-height: 1.2;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  color: #AEAEAE;
}

.checkout-shopping-cart-summary .products article .price {
  display: block;
  margin: 0;
  width: 100px;
  font-size: 0.75rem;
  line-height: 1.2;
  text-align: right;
}

.checkout-shopping-cart-summary .summary {
  padding: 30px 0 0;
}

.checkout-shopping-cart-summary .summary p {
  margin: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.checkout-shopping-cart-summary .summary p + p {
  margin-top: 15px;
}

.checkout-shopping-cart-summary .summary p.hidden {
  display: none;
}

.checkout-shopping-cart-summary .summary p strong {
  display: block;
  margin: 0;
  width: 100px;
  font-size: 0.7rem;
  line-height: 1.2;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.checkout-shopping-cart-summary .summary p strong .warning {
  color: #E50000;
}

.checkout-shopping-cart-summary .summary p > span {
  display: block;
  margin: 0;
  width: 100px;
  font-size: 0.75rem;
  line-height: 1.2;
  text-align: right;
}

.checkout-shopping-cart-summary .summary p > span.total-formatted {
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

.checkout-shopping-cart-summary .summary p.shipping-cost span.selected-country:before {
  content: attr(data-shipping-country);
}

.checkout-shopping-cart-summary .summary .no-shipping-country {
  display: block;
  margin-top: 15px;
  text-align: right;
  color: #E50000;
  font-size: 0.6rem;
  line-height: 1.2;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
}

/*==========================================================================
  Dynamic Blocks
  @mixin ========================================================================= */

.dynamic-block + .dynamic-block {
  margin-top: 60px;
}

.dynamic-block .grid-row {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.dynamic-block.two-text-columns {
  position: relative;
  z-index: 10;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.dynamic-block.two-text-columns .content {
  width: 47.72727273%;
  padding: 0;
}

@media screen and (max-width: 900px) {
  .dynamic-block.two-text-columns {
    display: block;
  }

  .dynamic-block.two-text-columns .content {
    width: 100% !important;
    margin: 0;
  }

  .dynamic-block.two-text-columns .content p:last-of-type {
    margin-bottom: 1rem;
  }
}

.dynamic-block.full-image-column img {
  width: 100%;
  display: none;
}

.dynamic-block.full-image-column img.large {
  display: block;
}

@media screen and (max-width: 1050px) {
  .dynamic-block.full-image-column img.large {
    display: none;
  }

  .dynamic-block.full-image-column img.medium {
    display: block;
  }
}

@media screen and (max-width: 525px) {
  .dynamic-block.full-image-column img.medium {
    display: none;
  }

  .dynamic-block.full-image-column img.small {
    display: block;
  }
}

.dynamic-block.content-block {
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.dynamic-block.content-block .image {
  width: 50%;
}

.dynamic-block.content-block .image img {
  width: 100%;
}

.dynamic-block.content-block .image img.small {
  display: none;
}

@media screen and (max-width: 450px) {
  .dynamic-block.content-block .image img.medium {
    display: none;
  }

  .dynamic-block.content-block .image img.small {
    display: block;
  }
}

.dynamic-block.content-block .image .content {
  width: 41.66666667%;
}

.dynamic-block.content-block .content {
  -webkit-order: 1;
  -ms-order: 1;
  width: 41.66666667%;
}

.dynamic-block.content-block[data-image-location='right'] .image {
  -webkit-order: 2;
  -ms-order: 2;
}

.dynamic-block.content-block[data-image-location='right'] .content {
  -webkit-order: 1;
  -ms-order: 1;
}

@media screen and (max-width: 900px) {
  .dynamic-block.content-block {
    display: block;
  }

  .dynamic-block.content-block .image {
    width: 100%;
    margin-top: 40px;
    -webkit-order: 2;
    -ms-order: 2;
  }

  .dynamic-block.content-block .content {
    width: 100%;
  }
}

.dynamic-block.multiple-images {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -ms-flex-direction: row;
}

.dynamic-block.multiple-images figure {
  width: 47.72727273%;
}

.dynamic-block.multiple-images figure img {
  width: 100%;
  display: none;
}

.dynamic-block.multiple-images figure img.medium {
  display: none;
}

@media screen and (max-width: 1100px) {
  .dynamic-block.multiple-images figure img.large {
    display: none;
  }

  .dynamic-block.multiple-images figure img.medium {
    display: block;
  }
}

@media screen and (max-width: 480px) {
  .dynamic-block.multiple-images figure img.large {
    display: none;
  }

  .dynamic-block.multiple-images figure img.medium {
    display: block;
  }
}

.dynamic-block.multiple-images[data-size-type='50'] figure img.medium {
  display: block;
}

@media screen and (max-width: 1125px) {
  .dynamic-block.multiple-images[data-size-type='50'] figure img.medium {
    display: none;
  }

  .dynamic-block.multiple-images[data-size-type='50'] figure img.small {
    display: block;
  }
}

@media screen and (max-width: 900px) {
  .dynamic-block.multiple-images {
    display: block;
  }

  .dynamic-block.multiple-images figure {
    width: 100%;
  }

  .dynamic-block.multiple-images figure:first-of-type {
    margin-bottom: 40px;
  }

  .dynamic-block.multiple-images figure img.medium {
    display: block !important;
  }

  .dynamic-block.multiple-images figure img.small {
    display: none !important;
  }
}

@media screen and (max-width: 900px) and (max-width: 525px) {
  .dynamic-block.multiple-images figure img.medium {
    display: none;
  }

  .dynamic-block.multiple-images figure img.small {
    display: block;
  }
}

.dynamic-block.full-text-block .content {
  max-width: 680px;
  margin: auto;
  text-align: center;
}

.dynamic-block.video-block {
  width: 100%;
  max-width: 960px;
  margin: 60px auto 0 !important;
}

.dynamic-block.video-block .video-wrapper {
  position: relative;
  padding-bottom: 53.6%;
  padding-top: 25px;
  height: 0;
}

.dynamic-block.video-block .video-wrapper iframe,
.dynamic-block.video-block .video-wrapper .video-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.dynamic-block.video-block .video-wrapper .video-overlay {
  z-index: 2;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 1;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.dynamic-block.video-block .video-wrapper .video-overlay .button {
  width: 25%;
  max-width: 85px;
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
}

.dynamic-block.video-block .video-wrapper .video-overlay .button img {
  width: 100%;
}

.dynamic-block.video-block .video-wrapper .video-overlay:hover .button {
  -webkit-transform: scale(0.85);
  transform: scale(0.85);
}

.dynamic-block.video-block .video-wrapper .video-overlay.hide {
  opacity: 0;
  pointer-events: none;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  -webkit-transition-delay: 0.7s;
          transition-delay: 0.7s;
}

.dynamic-block.video-block .video-wrapper .video-overlay.hide .button {
  -webkit-transition: all 0.8s;
  transition: all 0.8s;
  -webkit-transform: scale(0.3);
          transform: scale(0.3);
}

@media screen and (max-width: 750px) {
  .preventScroll {
    overflow: hidden;
    overflow-y: scroll;
    position: fixed;
    width: 100%;
  }
}

#mobile-navigation {
  position: fixed;
  z-index: 1000;
  height: 100vh;
  overflow: hidden;
  width: 100%;
  left: 0;
  top: 0;
  pointer-events: none;
}

#mobile-navigation .bar {
  display: none;
  height: 60px;
  background-color: #007AFF;
  -webkit-box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.11);
          box-shadow: 0 2px 10px 0 rgba(0, 0, 0, 0.11);
  pointer-events: all;
  position: relative;
  z-index: 4;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

#mobile-navigation .bar .toggle-menu {
  width: 60px;
  height: 100%;
  z-index: 3;
  cursor: pointer;
  position: relative;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#mobile-navigation .bar .toggle-menu .icon {
  width: 20px;
}

#mobile-navigation .bar .toggle-menu .icon span + span {
  margin-top: 4px;
}

#mobile-navigation .bar .toggle-menu .icon span {
  width: 100%;
  height: 2px;
  display: block;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transform-origin: 0 50%;
          transform-origin: 0 50%;
  background-color: white;
  -webkit-transition: -webkit-transform 0.6s;
  transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
  transition: transform 0.6s, -webkit-transform 0.6s;
}

#mobile-navigation .bar .toggle-menu .icon span:nth-of-type(2) {
  -webkit-transform: scale3d(0.8, 1, 1);
          transform: scale3d(0.8, 1, 1);
}

#mobile-navigation .bar .toggle-menu .icon span:nth-of-type(3) {
  -webkit-transform: scale3d(0.45, 1, 1);
          transform: scale3d(0.45, 1, 1);
}

#mobile-navigation .bar .toggle-menu:hover .icon span {
  -webkit-transform: scale3d(1, 1, 1) !important;
          transform: scale3d(1, 1, 1) !important;
}

#mobile-navigation .bar .logo {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#mobile-navigation .bar .logo a {
  position: relative;
  top: 3px;
  display: block;
  width: 150px;
  max-height: 25px;
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

#mobile-navigation .bar .logo a img {
  width: 100%;
  max-height: 25px;
}

#mobile-navigation .shader {
  width: 100%;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #007AFF;
  opacity: 0;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

#mobile-navigation .menu {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  max-width: 600px;
  min-width: 275px;
  padding: 70px 120px;
  background-color: white;
  overflow-x: auto;
  pointer-events: all;
  z-index: 5;
  -webkit-transform: translate3d(-100%, 0, 0);
          transform: translate3d(-100%, 0, 0);
}

#mobile-navigation .menu nav {
  position: relative;
}

#mobile-navigation .menu nav .close {
  position: absolute;
  top: 10px;
  left: -68px;
  display: block;
  width: 16px;
  height: 16px;
  cursor: pointer;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
}

#mobile-navigation .menu nav .close:hover {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

#mobile-navigation .menu nav .close:hover:before,
#mobile-navigation .menu nav .close:hover:after {
  background-color: rgba(29, 36, 51, 0.4);
}

#mobile-navigation .menu nav .close:before,
#mobile-navigation .menu nav .close:after {
  content: '';
  position: absolute;
  display: block;
  background-color: #1D2433;
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

#mobile-navigation .menu nav .close:before {
  left: 7px;
  top: 0;
  width: 2px;
  height: 100%;
}

#mobile-navigation .menu nav .close:after {
  left: 0;
  top: 7px;
  width: 100%;
  height: 2px;
}

#mobile-navigation .menu nav .logo-wrapper {
  width: 100%;
  max-width: 250px;
}

#mobile-navigation .menu nav .logo-wrapper a {
  display: block;
  text-decoration: none;
}

#mobile-navigation .menu nav .logo-wrapper a img {
  width: 100%;
  max-height: 36px;
}

#mobile-navigation .menu nav .menu-list {
  margin-top: 40px;
}

#mobile-navigation .menu nav .menu-list ul {
  margin: 0;
  padding: 0;
  list-style: none;
  font-size: 1rem;
  line-height: 1.2;
}

#mobile-navigation .menu nav .menu-list ul + ul {
  margin-top: 24px;
}

#mobile-navigation .menu nav .menu-list ul li a {
  display: block;
  padding: 8px 0;
  color: #1D2433;
  text-decoration: none;
  -webkit-transition: color 0.2s;
  transition: color 0.2s;
  cursor: pointer;
}

#mobile-navigation .menu nav .menu-list ul li a:hover {
  color: rgba(29, 36, 51, 0.7);
}

#mobile-navigation .menu nav .menu-list ul li ul {
  font-size: 0.85em;
}

#mobile-navigation .menu nav .menu-list ul li.active a {
  color: #007AFF;
}

#mobile-navigation.active .bar .toggle-menu .icon span {
  opacity: 0;
  -webkit-transition-delay: 0.4s;
          transition-delay: 0.4s;
}

#mobile-navigation.active .bar .toggle-menu .icon span:first-of-type {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  opacity: 1;
  top: 6px;
}

#mobile-navigation.active .bar .toggle-menu .icon span:last-of-type {
  width: 25px;
  opacity: 1;
  bottom: 6px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#mobile-navigation.active .menu {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
}

#mobile-navigation.shader-active .shader {
  opacity: 0.6;
  pointer-events: all;
}

#mobile-navigation.allow-animation .shader {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

#mobile-navigation.allow-animation .menu {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}

@media screen and (max-width: 750px) {
  #mobile-navigation {
    display: block;
  }

  #mobile-navigation .bar {
    display: block;
  }

  #mobile-navigation .menu {
    max-width: none;
  }
}

@media screen and (max-width: 400px) {
  #mobile-navigation nav {
    padding-left: 30px;
  }

  #mobile-navigation nav ul {
    font-size: 1.2rem;
  }
}

.mobile-contact {
  display: none;
  opacity: 0;
  -webkit-transform: translate3d(0, -100%, 0);
          transform: translate3d(0, -100%, 0);
  padding: 50px 7.14285714%;
  background-color: white;
  color: #1D2433;
  font-size: 0.9rem;
  -webkit-transition: opacity 0.4s, -webkit-transform 0.4s;
  transition: opacity 0.4s, -webkit-transform 0.4s;
  transition: opacity 0.4s, transform 0.4s;
  transition: opacity 0.4s, transform 0.4s, -webkit-transform 0.4s;
}

.mobile-contact.active {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
  pointer-events: all;
}

.mobile-contact h1,
.mobile-contact h2 {
  font-size: 2rem;
  line-height: 1.2;
  max-width: 580px;
  color: #0032FF;
  margin: 0 0 40px;
}

.mobile-contact p {
  margin: 1rem 0;
}

.mobile-contact strong {
  color: #1D2433;
}

.mobile-contact a:not(.button) {
  color: #007AFF;
  text-decoration: none;
  -webkit-transition: color 0.3s, border 0.3s, opacity 0.3s;
  transition: color 0.3s, border 0.3s, opacity 0.3s;
}

.mobile-contact a:not(.button):hover {
  color: #0055b3;
}

.mobile-contact a.button {
  display: inline-block;
  margin-top: 20px;
  padding: 15px 20px;
  border-radius: 25px;
  background-color: #007AFF;
  text-decoration: none;
  font-size: 0.9rem;
  line-height: 1;
  font-weight: 700;
  color: white;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.mobile-contact a.button:after {
  content: '';
  margin-left: 20px;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.mobile-contact a.button:hover {
  background-color: #0032FF;
}

.mobile-contact a.button:hover:after {
  -webkit-transform: translate3d(5px, 0, 0);
          transform: translate3d(5px, 0, 0);
}

@media screen and (max-width: 840px) {
  .mobile-contact {
    display: block;
  }
}

#sticky-navigation {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 50;
  background-color: #007AFF;
  width: 100%;
  height: 60px;
  -webkit-transform: translate3d(0, -60px, 0);
          transform: translate3d(0, -60px, 0);
  -webkit-box-shadow: 0 6px 10px -5px rgba(0, 0, 0, 0.1);
          box-shadow: 0 6px 10px -5px rgba(0, 0, 0, 0.1);
  opacity: 0;
  -webkit-transition: opacity 0.4s, -webkit-transform 0.4s;
  transition: opacity 0.4s, -webkit-transform 0.4s;
  transition: transform 0.4s, opacity 0.4s;
  transition: transform 0.4s, opacity 0.4s, -webkit-transform 0.4s;
}

#sticky-navigation.active {
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  opacity: 1;
}

#sticky-navigation .grid-row {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#sticky-navigation .menu {
  display: inline-block;
  width: 60px;
}

#sticky-navigation .menu .placeholder {
  position: relative;
  width: 100%;
  padding-bottom: 100%;
}

#sticky-navigation .menu .placeholder .icon-placeholder {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}

#sticky-navigation .menu .placeholder .icon-placeholder .icon {
  width: 20px;
}

#sticky-navigation .menu .placeholder .icon-placeholder .icon span + span {
  margin-top: 4px;
}

#sticky-navigation .menu .placeholder .icon-placeholder .icon span {
  width: 100%;
  height: 2px;
  display: block;
  -webkit-transform: scale3d(1, 1, 1);
          transform: scale3d(1, 1, 1);
  -webkit-transform-origin: 0 50%;
          transform-origin: 0 50%;
  background-color: white;
  -webkit-transition: -webkit-transform 0.6s;
  transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
  transition: transform 0.6s, -webkit-transform 0.6s;
}

#sticky-navigation .menu .placeholder .icon-placeholder .icon span:nth-of-type(2) {
  -webkit-transform: scale3d(0.8, 1, 1);
          transform: scale3d(0.8, 1, 1);
}

#sticky-navigation .menu .placeholder .icon-placeholder .icon span:nth-of-type(3) {
  -webkit-transform: scale3d(0.45, 1, 1);
          transform: scale3d(0.45, 1, 1);
}

#sticky-navigation .menu .placeholder .icon-placeholder:hover .icon span {
  -webkit-transform: scale3d(1, 1, 1) !important;
          transform: scale3d(1, 1, 1) !important;
}

#sticky-navigation .logo-wrapper a {
  font-size: 1rem;
  line-height: 1;
  color: white;
  text-decoration: none;
  font-weight: bold;
}

/* ==========================================================================
   Home page
   @mixin ========================================================================= */

/*==========================================================================
  News overview page
  @mixin ========================================================================= */

/*==========================================================================
  News detail page
  @mixin ========================================================================= */

/*==========================================================================
  Contact page
  @mixin ========================================================================= */

#error-page-message {
  padding: 100px 0 100px;
}

#error-page-message .grid-row .kms-content {
  width: 100%;
  text-align: center;
}

#error-page-message .grid-row .kms-content h1 {
  font-size: 1.5rem;
  color: white;
}

#error-page-message .grid-row .kms-content p {
  font-size: 1.2rem;
  color: white;
}

#error-page-message .grid-row .placeholder {
  max-width: 720px;
  margin: auto;
}

/*==========================================================================
  Sitemap page
  @mixin ========================================================================= */

.sitemap ul {
  padding-left: 40px;
  padding-bottom: 20px;
  font-size: 0.85em;
}

.sitemap > ul {
  padding-left: 20px;
}

.sitemap li:before {
  top: 6px;
}

.sitemap li a {
  padding: 3px 0;
  border-bottom-color: transparent;
  border-bottom-style: dotted;
  display: block;
}

.sitemap li a:hover {
  border-bottom-color: rgba(29, 36, 51, 0.4);
}

.shopping-cart {
  margin-bottom: 80px;
}

.shopping-cart .shopping-cart-row {
  margin-top: 40px;
}

body.checkout {
  margin-bottom: 80px;
}

body.checkout .checkout-row {
  margin-top: 40px;
}

body.checkout .shopping-cart-summary .pricing .shipping-cost strong .selected-country {
  cursor: auto;
}

body.checkout .shopping-cart-summary .pricing .shipping-cost strong .selected-country:before {
  text-decoration: none;
}

body.checkout .checkout-content {
  display: inline-block;
  vertical-align: top;
  width: calc(100% - 240px);
  background-color: white;
}

body.checkout .checkout-content .kms-content {
  padding: 60px;
}

body.checkout .checkout-content .no-items p {
  padding: 20px 20px;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  font-size: 0.9rem;
  line-height: 1.4;
  text-align: center;
  color: black;
}

body.checkout .checkout-content .no-items .buttons {
  border-top: 2px solid rgba(190, 180, 181, 0.5);
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -webkit-justify-content: flex-end;
  -moz-justify-content: flex-end;
  -ms-justify-content: flex-end;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 25px 20px;
}

body.checkout .checkout-content .no-items .buttons .button {
  display: inline-block;
  padding: 10px 15px;
  border-radius: 8px;
  font-size: 0.7rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-family: 'Avenir LT W02 95 Black', sans-serif;
  font-weight: 400;
  border: 1px solid rgba(20, 20, 20, 0.2);
  background-color: transparent;
  color: #141414;
}

body.checkout .checkout-content .no-items .buttons .button span {
  position: relative;
  top: 1px;
  display: inline-block;
  background: url("/img/spire_sprite.svg") -170px -56px no-repeat;
  background-size: 212px 82px;
  width: 13px;
  height: 13px;
  margin-right: 5px;
  -webkit-transform: translate3d(0, 0, 0);
          transform: translate3d(0, 0, 0);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

body.checkout .checkout-content .no-items .buttons .button:hover span {
  -webkit-transform: translate3d(-5px, 0, 0);
          transform: translate3d(-5px, 0, 0);
}