/*! modern-normalize | MIT License | https://github.com/sindresorhus/modern-normalize */
/* Document
   ========================================================================== */
/**
 * Use a better box model (opinionated).
 */
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

*,
*::before,
*::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

/**
 * Correct the line height in all browsers.
 */
html {
  line-height: 1.15;
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Add the correct text decoration in Chrome, Edge, and Safari.
 */
abbr[title] {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Remove the inheritance of text transform in Edge and Firefox.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  padding: 0;
}

/**
 * Add the correct vertical alignment in Chrome and Firefox.
 */
progress {
  vertical-align: baseline;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type='number']::-webkit-inner-spin-button,
[type='number']::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type='search'] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/**
 * Icons in a bar might have a dynamic padding when the size if the icons vary.
 */
/**
 * Typography
 */
/**
 * Sizes
 */
/**
 * Spacing
 */
/**
 * Dimensions
 *
 * 1) Refence is 16px. This value is also used in an EM media-query.
 * EM media-query always use 16px as their reference.
 */
/**
 * Grid
 */
/**
 * Layout
 */
/**
 * Font-size
 */
/**
 * Underline
 */
/**
 * Heading base
 */
/**
 * Returns the opposite direction of each direction in a list
 * @author Hugo Giraudel
 * @param {List} $directions - List of initial directions
 * @return {List} - List of opposite directions
 */
/**
 * Triangle helper mixin
 * @param {Direction} $direction - Triangle direction, either `top`, `right`, `bottom` or `left`
 * @param {Color} $color [currentcolor] - Triangle color
 * @param {Length} $size [1em] - Triangle size
 */
html {
  min-height: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  overflow-y: scroll;
}

html *,
html *::before,
html *::after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

input[type='password'] {
  -webkit-box-sizing: border-box !important;
  box-sizing: border-box !important;
}

abbr[title],
dfn[title] {
  cursor: help;
}

input,
select,
option {
  cursor: pointer;
}

label[for] {
  cursor: pointer;
}

ol,
ul {
  padding-left: 1em;
}

fieldset {
  padding: 0;
  border: 0;
  margin: 0;
}

img {
  display: inline-block;
  max-width: 100%;
  vertical-align: middle;
}


.zebra-pattern {
  width: 100%;
}


.zebra-pattern tr:nth-child(even) {
  background: #f2f5f7;
}


.zebra-pattern th,
.zebra-pattern td {
  padding: 0.395em 0.79em;
}

/**
 * Typographic base
 *
 * 1. Focus on speed on mobile. On tablet/desk focus on type and enable ligatures and kerning.
 * 2. Control advanced typographic features.
 * 3. Prevent font weight issues when using transform:
 *    http://stackoverflow.com/questions/10218039/css3-transition-messing-up-fonts-in-webkit
 * 4. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 *    TODO check if this is prefixed by autoprefixer
 * 5. Auto break words that don't fit.
 */
html {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  color: #333333;
  font: 100%/1.58 "Arial", sans-serif;
  -webkit-font-feature-settings: 'kern' 1, 'onum' 0, 'liga' 1;
  font-feature-settings: 'kern' 1, 'onum' 0, 'liga' 1;
  -webkit-font-kerning: auto;
  font-kerning: auto;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  -webkit-font-variant-ligatures: common-ligatures;
  font-variant-ligatures: common-ligatures;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  text-rendering: optimizeSpeed;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

@media (min-width: 38em) {
  html {
    text-rendering: optimizeLegibility;
  }
}

@media (min-width: 38em) and (max-width: 61.99em) {
  html {
    font-size: 100%;
  }
}

@media (min-width: 62em) {
  html {
    font-size: 100%;
  }
}

html.fonts-loaded {
  font-family: "Open Sans", sans-serif;
}

b,
strong,
th {
  font-weight: 600;
}

.light {
  font-weight: 300;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
}

.fonts-loaded h1, .fonts-loaded
h2, .fonts-loaded
h3, .fonts-loaded
h4, .fonts-loaded
h5, .fonts-loaded
h6 {
  font-family: "Open Sans", sans-serif;
}

.mega {
  font-size: 3em;
}

@media (min-width: 38em) {
  .mega {
    font-size: 4em;
  }
}

.kilo {
  font-size: 3.125em;
}

@media (min-width: 38em) {
  .kilo {
    font-size: 3.75em;
  }
}

h1,
.alpha {
  font-size: 1.4375em;
}

@media (min-width: 38em) {
  h1,
  .alpha {
    font-size: 1.75em;
  }
}

h2,
.beta {
  font-size: 1.4375em;
}

h3,
.gamma {
  font-size: 1.25em;
}

h4,
.delta {
  font-size: 1.125em;
}

h5,
.epsilon {
  font-size: 1em;
}

h6,
.zeta {
  font-size: 0.875em;
}

.milli {
  font-size: 0.75em;
}

@media (min-width: 62em) {
  .milli {
    font-size: 0.75em;
  }
}

.micro {
  font-size: 0.75em;
}

@media (min-width: 62em) {
  .micro {
    font-size: 0.6875em;
  }
}

h1 {
  color: #0071b3;
  letter-spacing: 0;
  text-transform: uppercase;
}

p + br {
  display: none;
}

.page-main p:not(.heading):not(.title) {
  max-width: 45em;
}

p,
ul,
dl,
ol {
  margin: 0 0 0.79em;
}

p:not([class]):last-child,
ul:not([class]):last-child,
dl:not([class]):last-child,
ol:not([class]):last-child {
  margin-bottom: 0;
}

a {
  color: #333333;
  text-decoration: underline;
  -webkit-text-decoration-color: #0071b3;
  text-decoration-color: #0071b3;
  -webkit-text-decoration-skip: ink;
  text-decoration-skip: ink;
  text-underline-position: under;
  -webkit-transition: ease-in-out text-decoration 0.1s;
  transition: ease-in-out text-decoration 0.1s;
}

a:hover, a:focus {
  color: #0071b3;
}

a.no-underline {
  text-decoration: none;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  a.no-underline {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

a.no-underline:focus, a.no-underline:hover {
  text-decoration: underline;
}

small {
  font-size: 0.875em;
}

blockquote {
  padding: 0 0 0 1.58em;
  margin: 0 0 0.79em;
  font-style: italic;
}

blockquote::before {
  content: '\201C';
}

blockquote::after {
  content: '\201D';
}

.page-main blockquote {
  max-width: 45em;
}

pre {
  padding: 0.79em;
  margin-bottom: 0 0 1.58em;
  background: whitesmoke;
  font-family: monospace;
}

.grid__row,
.request-form-grid__row {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-left: -2%;
}

.grid__row::after, .grid__row::before,
.request-form-grid__row::after,
.request-form-grid__row::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.grid__row::after,
.request-form-grid__row::after {
  clear: both;
}

.grid__column,
.request-form-grid__column {
  margin: 0 0 0.79em 2%;
}

@media (min-width: 38em) {
  .grid__column,
  .request-form-grid__column {
    float: left;
  }
}

@media (min-width: 38em) {
  .grid__column--1 {
    width: 6.33333%;
  }
}

@media (min-width: 38em) {
  .grid__column--2 {
    width: 14.66667%;
  }
}

@media (min-width: 38em) {
  .grid__column--3 {
    width: 23%;
  }
}

@media (min-width: 38em) {
  .grid__column--4 {
    width: 31.33333%;
  }
}

@media (min-width: 38em) {
  .grid__column--5 {
    width: 39.66667%;
  }
}

@media (min-width: 38em) {
  .grid__column--6 {
    width: 48%;
  }
}

@media (min-width: 38em) {
  .grid__column--7 {
    width: 56.33333%;
  }
}

@media (min-width: 38em) {
  .grid__column--8 {
    width: 64.66667%;
  }
}

@media (min-width: 38em) {
  .grid__column--9 {
    width: 73%;
  }
}

@media (min-width: 38em) {
  .grid__column--10 {
    width: 81.33333%;
  }
}

@media (min-width: 38em) {
  .grid__column--11 {
    width: 89.66667%;
  }
}

@media (min-width: 38em) {
  .grid__column--12 {
    width: 98%;
  }
}

/**
 * Used to set a max-width on at element.
 */
.container-fluid {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 85rem;
  margin: 0 auto;
}

.container-fluid::after, .container-fluid::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.container-fluid::after {
  clear: both;
}

/**
 * 1. When an a-element uses this class.
 */
.btn {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
}

.btn:hover, .btn:focus {
  background: whitesmoke;
  color: #333333;
}

.btn i::before {
  margin: 0 0.395em;
}

.open > .btn,
.open-filter > .btn, .btn.active, .btn.pressed {
  background: whitesmoke;
  color: #333333;
}

.btn.active {
  font-weight: 600;
}

.btn.active i {
  color: #0071b3;
}

.btn > [class*='fa-']:first-child {
  margin-right: 0.395rem;
}

.btn > [class*='fa-']:last-child {
  margin-left: 0.395rem;
}

.btn--action,
.ui-priority-secondary,
.btn-info,
.btn--info,
.btn-primary {
  background: #0071b3;
  border-color: #0071b3;
  color: white;
}

.btn--action:hover, .btn--action:focus,
.open > .btn--action,
.open-filter > .btn--action, .btn--action.pressed,
.ui-priority-secondary:hover,
.ui-priority-secondary:focus,
.open >
.ui-priority-secondary,
.open-filter >
.ui-priority-secondary,
.ui-priority-secondary.pressed,
.btn-info:hover,
.btn-info:focus,
.open >
.btn-info,
.open-filter >
.btn-info,
.btn-info.pressed,
.btn--info:hover,
.btn--info:focus,
.open >
.btn--info,
.open-filter >
.btn--info,
.btn--info.pressed,
.btn-primary:hover,
.btn-primary:focus,
.open >
.btn-primary,
.open-filter >
.btn-primary,
.btn-primary.pressed {
  background: #328abd;
  border-color: #328abd;
  color: white;
}

.btn--action .caret,
.btn--action [class*='fa-'],
.ui-priority-secondary .caret,
.ui-priority-secondary [class*='fa-'],
.btn-info .caret,
.btn-info [class*='fa-'],
.btn--info .caret,
.btn--info [class*='fa-'],
.btn-primary .caret,
.btn-primary [class*='fa-'] {
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
}

.btn--link {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
}

.btn--link:hover, .btn--link:focus {
  color: #0071b3;
}

.btn--link:hover, .btn--link:focus {
  background: none;
  text-decoration: underline;
}

.btn--size-s {
  font-size: 0.75em;
  padding: 0.395em 0.79em;
}

@media (min-width: 62em) {
  .btn--size-s {
    font-size: 0.75em;
  }
}

.btn--size-m {
  padding-right: 1.58em;
  padding-left: 1.58em;
}

.btn--size-l,
.button--large {
  font-size: 1.125em;
  padding: 0.79rem 1.58rem;
  font-weight: 600;
}

.btn--full {
  width: 100%;
}

@media (max-width: 37.99em) {
  .button--full-in-mobile {
    width: 100%;
  }
}

.btn.btn--disabled, .btn[disabled], .btn.disabled,
button.btn--disabled,
button[disabled],
button.disabled {
  cursor: not-allowed;
  opacity: 0.25;
}

.button--plain,
.button-icon {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  font-size: 1rem;
}

.button--plain:hover, .button--plain:focus,
.button-icon:hover,
.button-icon:focus {
  color: #0071b3;
}

.button--plain.gray,
.button-icon.gray {
  color: #a3a3a3;
}

/**
 * Group a series of buttons together on a single line with the button group.
 * http://getbootstrap.com/components#btn-groups
 *
 * 1. Context for dropdown-menu.
 * 2. Make sure it looks like on big element so hide the left border (or two).
 */
.btn-group {
  position: relative;
  /* 1 */
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-pack: distribute;
  justify-content: space-around;
}

.btn-group:not(.full) .btn:not(.icons-holder-text):not(.dropdown-toggle) {
  border-color: #d8d8d8;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
}

.btn-group.full {
  width: 100%;
}

.btn-group > a {
  display: inline-block;
  text-decoration: none;
}

.btn-group i {
  display: inline-block;
  color: inherit;
  color: currentColor;
}

.btn-group * + .btn,
.btn-group > .btn-group > .btn {
  margin-left: -2px;
  /* 2 */
}

/**
 * Button dropdowns. Use any button to trigger a dropdown menu by placing it within
 * a .btn-group and providing the proper menu markup.
 * http://getbootstrap.com/components#btn-dropdowns
 */
.btn-group .btn.icons-holder-text {
  text-align: left;
}

.btn-group.full {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.btn-group.full .btn.icons-holder-text {
  font-size: 0.75rem;
  width: 80%;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-right: 0.79rem;
  padding-left: 0.79rem;
}

@media (min-width: 62em) {
  .btn-group.full .btn.icons-holder-text {
    font-size: 0.75rem;
  }
}

.product-view__specification .btn-group.full .btn.icons-holder-text,
.order-checkout-widget__col .btn-group.full .btn.icons-holder-text {
  font-size: 1rem;
  width: auto;
}

.btn-group .dropdown-toggle {
  font-size: 0.75rem;
}

@media (min-width: 62em) {
  .btn-group .dropdown-toggle {
    font-size: 0.75rem;
  }
}

.product-view__specification .btn-group .dropdown-toggle,
.order-checkout-widget__col .btn-group .dropdown-toggle {
  width: auto;
  padding-right: 0.79em;
  padding-left: 0.79em;
}

.btn-group > .main-group {
  width: 100%;
}

.btn-group:not(.datagrid-manager) > .dropdown-toggle {
  min-width: calc(1.58em + 1.58rem);
  min-height: calc(1.58em + 1.58rem);
  display: -ms-inline-flexbox;
  display: inline-flex;
  max-width: 20%;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  padding: 0;
  background: #328abd;
  border-color: #328abd;
  text-align: center;
}

.btn-group:not(.datagrid-manager) > .dropdown-toggle.mode-icon-only::after {
  z-index: 2;
  width: 0;
  height: 0;
  content: '';
  border-top: 0.35em solid #333333;
  border-right: 0.35em solid transparent;
  border-left: 0.35em solid transparent;
  display: inline-block;
  -ms-flex-item-align: center;
  align-self: center;
  margin: auto;
}

.btn-group:not(.datagrid-manager) > .dropdown-toggle::after,
.btn-group:not(.datagrid-manager) > .dropdown-toggle .caret {
  -ms-flex-item-align: center;
  align-self: center;
  margin: auto;
}

.btn-group:not(.datagrid-manager) > .dropdown-toggle:hover, .btn-group:not(.datagrid-manager) > .dropdown-toggle:focus {
  background: #3e98cc;
  border-color: #3e98cc;
}

.btn-group:not(.datagrid-manager).open .dropdown-toggle:not(.btn--default), .btn-group:not(.datagrid-manager):hover .dropdown-toggle:not(.btn--default), .btn-group:not(.datagrid-manager):focus .dropdown-toggle:not(.btn--default) {
  background: #3e98cc;
  border-color: #3e98cc;
}

.btn-group:not(.datagrid-manager).open .dropdown-toggle::after,
.btn-group:not(.datagrid-manager).open .dropdown-toggle .caret {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

/**
 * Input fields and text area
 * 1. Make sure to use `background-color` so it can be used in combination with an icon. See select.
 */
.input,
input[type='text'],
input[type='search'],
input[type='date'],
textarea {
  max-width: 100%;
  padding: 0.79em;
  border: 1px solid #d8d8d8;
  background-color: white;
  /* 1 */
  border-radius: 0;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  color: #4d4d4d;
  cursor: text;
  font-family: "Arial", sans-serif;
  line-height: 1.25;
  -webkit-transition: color ease 0.25s, background ease 0.25s, border ease 0.25s;
  transition: color ease 0.25s, background ease 0.25s, border ease 0.25s;
  vertical-align: middle;
}

.fonts-loaded .input, .fonts-loaded
input[type='text'], .fonts-loaded
input[type='search'], .fonts-loaded
input[type='date'], .fonts-loaded
textarea {
  font-family: "Open Sans", sans-serif;
}

.input:hover:not([readonly]):not([disabled]):not(:focus):not(.error),
input[type='text']:hover:not([readonly]):not([disabled]):not(:focus):not(.error),
input[type='search']:hover:not([readonly]):not([disabled]):not(:focus):not(.error),
input[type='date']:hover:not([readonly]):not([disabled]):not(:focus):not(.error),
textarea:hover:not([readonly]):not([disabled]):not(:focus):not(.error) {
  background-color: white;
  border-color: #a3a3a3;
}

.input:focus,
input[type='text']:focus,
input[type='search']:focus,
input[type='date']:focus,
textarea:focus {
  background-color: white;
  border-color: #6e6b70;
  color: #333333;
}

.input:disabled,
input[type='text']:disabled,
input[type='search']:disabled,
input[type='date']:disabled,
textarea:disabled {
  background: whitesmoke;
  border-color: #d8d8d8;
  color: #d8d8d8;
}

.input:disabled:hover,
input[type='text']:disabled:hover,
input[type='search']:disabled:hover,
input[type='date']:disabled:hover,
textarea:disabled:hover {
  cursor: not-allowed;
}

.input.timepicker-input, .input.datepicker-input,
input[type='text'].timepicker-input,
input[type='text'].datepicker-input,
input[type='search'].timepicker-input,
input[type='search'].datepicker-input,
input[type='date'].timepicker-input,
input[type='date'].datepicker-input,
textarea.timepicker-input,
textarea.datepicker-input {
  cursor: pointer;
}

.input::-webkit-input-placeholder,
input[type='text']::-webkit-input-placeholder,
input[type='search']::-webkit-input-placeholder,
input[type='date']::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
  color: #7a787d;
}

.input:-ms-input-placeholder,
input[type='text']:-ms-input-placeholder,
input[type='search']:-ms-input-placeholder,
input[type='date']:-ms-input-placeholder,
textarea:-ms-input-placeholder {
  color: #7a787d;
}

.input::-ms-input-placeholder,
input[type='text']::-ms-input-placeholder,
input[type='search']::-ms-input-placeholder,
input[type='date']::-ms-input-placeholder,
textarea::-ms-input-placeholder {
  color: #7a787d;
}

.input::placeholder,
input[type='text']::placeholder,
input[type='search']::placeholder,
input[type='date']::placeholder,
textarea::placeholder {
  color: #7a787d;
}

.input--size-x-s {
  width: 3em;
  text-align: center;
}

.input--size-x-s[type='number'] {
  width: 4em;
}

.input--size-s {
  width: 3em;
  text-align: center;
}

.input--size-s[type='number'] {
  width: 5em;
}

.textarea--full,
.input--full {
  width: 100%;
}

input[name*='quantity'] {
  text-align: center;
}

/**
 * 1. Magic to have the same height as an input field.
 */
select {
  padding: 0.79em 2.37em 0.79em 0.79em;
  border: 1px solid #d8d8d8;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: white;
  border-radius: 0;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  color: #4d4d4d;
}

/**
 * Input forms like account registration page.
 */
.form-row {
  margin-bottom: 0.79em;
}

.form-row label {
  display: block;
  margin-bottom: 0.395em;
  font-weight: 600;
}

.form-row select,
.form-row .oro-select2,
.form-row textarea,
.form-row .input {
  width: 100%;
}

.form-row select.form-field-quantity,
.form-row .oro-select2.form-field-quantity,
.form-row textarea.form-field-quantity,
.form-row .input.form-field-quantity {
  max-width: 6em;
}

.form-row p {
  font-size: 1.125em;
}

.form-row .label,
.form-row label {
  font-weight: 600;
  /**
         * Required asterisk
         */
}

.form-row .label em,
.form-row label em {
  margin-right: 0.395em;
}

.form-row .label--full {
  display: block;
  width: 100%;
  margin-bottom: 0.395em;
}

.form-row--offset-s {
  margin-bottom: 0.395em;
}

.form-row--offset-none {
  margin-bottom: 0;
}

.form-horizontal > div:not(:empty):not(.btn-group) {
  display: inline-block;
}

.form-buttons {
  margin: 0.79em -0.395em;
}

.form-buttons > * {
  margin: 0.395em;
}

form[action*='customer'] {
  margin-bottom: 1.58em;
}

.form-group + .form-group {
  margin-top: 1.58em;
}

.form-group legend {
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  font-size: 1.25em;
  margin-bottom: 0.395em;
}

.fonts-loaded .form-group legend {
  font-family: "Open Sans", sans-serif;
}

.form-group .grid__row {
  grid-gap: 2.37em 3.16em;
}

table {
  text-align: left;
}

.table {
  width: 100%;
  text-align: left;
}

.table th,
.table td {
  padding: 0.395em 0.79em;
}

.table thead th {
  background: whitesmoke;
}

.table thead th a {
  text-decoration: none;
}

.table thead th a:hover, .table thead th a:focus {
  color: currentColor;
}

.table .sortable .caret {
  margin-left: 0.1975em;
}

.table .sortable.ascending .caret::after {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.table .sortable:not(.ascending):not(.descending) .caret {
  display: none;
}

.cms-grid table td, .cms-block table td,
.table-bordered td {
  border-bottom: 1px solid #d8d8d8;
}

.grid-container {
  min-height: 10em;
  /* 1 */
}

table.grid {
  font-size: 0.875em;
}

table.grid th,
table.grid td {
  padding: 0.1975em 0.395em;
}

table.grid th:first-child,
table.grid td:first-child {
  padding-left: 0;
}

table.grid th:last-child,
table.grid td:last-child {
  padding-right: 0;
}

/**
 * Form validation
 */
.input.error,
textarea.error,
select.error {
  border-color: #d0011d;
}

/**
 * 1. Parent is sometimes uppercase.
 */
.notification--error,
.validation-failed,
.validation-error,
.validation-passed {
  font-size: 0.75em;
  display: block;
  margin-top: 0.395em;
  clear: both;
  text-transform: none;
  /* 1 */
}

@media (min-width: 62em) {
  .notification--error,
  .validation-failed,
  .validation-error,
  .validation-passed {
    font-size: 0.75em;
  }
}

.notification--error i,
.validation-failed i,
.validation-error i,
.validation-passed i {
  margin-right: 0.395em;
}

.notification--error,
.validation-error,
.validation-failed {
  color: #d0011d;
}

.validation-passed {
  color: #81b964;
}

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

option {
  cursor: pointer;
}

/**
 * 1. Item can be inline be default
 */
.custom-checkbox,
.custom-radio {
  position: relative;
  display: block;
  /* 1 */
  min-width: 1.4em;
  min-height: 1.4em;
}

.custom-checkbox__input,
.custom-radio__control {
  position: absolute;
  z-index: 50;
  overflow: hidden;
  width: 1.4em;
  height: 1.4em;
  margin: 0;
  opacity: 0;
}

.custom-checkbox__input:hover,
.custom-radio__control:hover {
  cursor: pointer;
}

/**
 * 1. Magic number, sorry.
 * 2. Mimic focus.
 */
.custom-checkbox__icon,
.custom-radio__text {
  position: relative;
  display: block;
}

.custom-checkbox__icon::before,
.custom-radio__text::before {
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 0;
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  border: 1px solid #a3a3a3;
  margin-top: 0.1em;
  background: white;
  content: '';
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.custom-checkbox__input:focus + .custom-checkbox__icon::before,
.custom-radio__control:focus + .custom-checkbox__icon::before, .custom-checkbox__input:focus +
.custom-radio__text::before,
.custom-radio__control:focus +
.custom-radio__text::before {
  -webkit-box-shadow: 0 0 3px 3px #83bffc;
  box-shadow: 0 0 3px 3px #83bffc;
  /* 2 */
}

.custom-checkbox__icon::after,
.custom-radio__text::after {
  position: absolute;
  z-index: 2;
  display: none;
  margin-top: 0.1em;
  color: #0071b3;
  content: '';
  line-height: 1;
}

.custom-radio__text {
  padding-left: 2.19em;
}

.custom-radio__text::before {
  border-radius: 100%;
}

.custom-checkbox__input:checked + .custom-checkbox__icon::after,
.custom-radio__control:checked + .custom-checkbox__icon::after, .custom-checkbox__input:checked +
.custom-radio__text::after,
.custom-radio__control:checked +
.custom-radio__text::after {
  display: block;
}

/**
 * 1. Magic number, sorry.
 */
.custom-checkbox__icon {
  position: absolute;
  width: 1.4em;
  height: 1.4em;
  margin-top: 0.15em;
  /* 1 */
}

.custom-checkbox__icon::after {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 13.414634146341463% 14.239482200647249%;
  width: 20px;
  height: 15px;
  top: 50%;
  left: 0.1em;
  display: none;
  content: '';
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.custom-radio__text::after {
  top: 50%;
  left: 0.25em;
  width: 0.9em;
  height: 0.9em;
  background: #0071b3;
  border-radius: 100%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/**
 * 1. Make sure item is at least one line high to prevent layout issue when an item has no text...
 */
.custom-checkbox__text {
  display: block;
  min-height: 1.58em;
  /* 1 */
  padding-left: 2.19em;
  font-weight: normal;
  vertical-align: baseline;
}

/**
 * Default price
 */
.product-price {
  text-align: right;
}

.product-price__listed-label {
  display: none;
}

/**
 * Price when logged in
 */
.product-price__main {
  font-weight: 600;
}

.product-price__main ~ .product-price__listed .product-price__listed-label {
  display: inline-block;
}

.product-price__label {
  display: inline-block;
}

.product-price__main-box,
.product-price__listed-box {
  display: block;
}

.is-single-price .product-price__main-box, .is-single-price
.product-price__listed-box {
  display: inline-block;
}

.is-single-price .product-price__separator, .is-single-price
.product-price__unit {
  display: none;
}

/**
 * The unit is shown twice?
 */
.product-price__unit-short {
  display: none;
}

/**
 * The message when there is no price available for selected unit
 */
.product-price__hint,
[data-name='price-not-found'] {
  font-size: 0.875em;
  color: #7a787d;
}

/**
 * Prices table
 */
.prices-hint-content,
.product-prices__table {
  text-align: center;
  /**
     * Single price mode
     */
}

.prices-hint-content br,
.product-prices__table br {
  display: none;
}

.prices-hint-content th,
.product-prices__table th {
  font-size: 0.875em;
  padding: 0.395rem;
  font-weight: normal;
}

.prices-hint-content td,
.product-prices__table td {
  padding: 0.395rem;
}

.prices-hint-content thead tr,
.prices-hint-content tbody tr:not(:last-child),
.prices-hint-content tfoot tr:not(:last-child),
.product-prices__table thead tr,
.product-prices__table tbody tr:not(:last-child),
.product-prices__table tfoot tr:not(:last-child) {
  border-bottom: 1px solid #d8d8d8;
}

.prices-hint-content tfoot tr:first-child,
.product-prices__table tfoot tr:first-child {
  border-top: 1px solid #d8d8d8;
}

.prices-hint-content td[colspan],
.product-prices__table td[colspan] {
  padding: 0;
}

.prices-hint-content td[colspan] strong,
.prices-hint-content td[colspan] .product_view_request_quote_for_unit,
.product-prices__table td[colspan] strong,
.product-prices__table td[colspan] .product_view_request_quote_for_unit {
  display: block;
  padding: 0.395rem;
}

.prices-hint-content td[colspan] strong,
.product-prices__table td[colspan] strong {
  padding-top: 0.79em;
}

.prices-hint-content td[colspan] .product_view_request_quote_for_unit,
.product-prices__table td[colspan] .product_view_request_quote_for_unit {
  font-size: 0.875em;
  font-style: italic;
  font-weight: normal;
}

.product-prices.is-single-price .prices-hint-content thead, .product-prices.is-single-price
.prices-hint-content .product-prices__td--qty, .product-prices.is-single-price
.prices-hint-content .product-prices__tr--label, .product-prices.is-single-price
.product-prices__table thead, .product-prices.is-single-price
.product-prices__table .product-prices__td--qty, .product-prices.is-single-price
.product-prices__table .product-prices__tr--label {
  display: none;
}

.prices-hint-content .product-prices__td--price,
.product-prices__table .product-prices__td--price {
  text-transform: uppercase;
}

.product-prices.is-single-price .prices-hint-content .product-prices__td--price, .product-prices.is-single-price
.product-prices__table .product-prices__td--price {
  font-size: 1.4375em;
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  padding: 0;
}

.fonts-loaded .product-prices.is-single-price .prices-hint-content .product-prices__td--price, .fonts-loaded .product-prices.is-single-price
.product-prices__table .product-prices__td--price {
  font-family: "Open Sans", sans-serif;
}

.prices-hint-content thead {
  font-size: 0.875em;
}

.tooltip-container {
  position: relative;
  display: inline-block;
}

.tooltip-trigger {
  display: inline-block;
}

.tooltip-trigger *:not(a) > * {
  cursor: help;
}

.tooltip-trigger [disabled] {
  cursor: help;
}

.tooltip {
  font-size: 0.875em;
  position: absolute;
  z-index: 2;
  left: 50%;
  display: inline-block;
  min-width: 20em;
  padding: 0.79em;
  background: #6e6b70;
  color: white;
  opacity: 0;
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
  visibility: hidden;
}

.tooltip-container:hover .tooltip {
  margin: 0;
  opacity: 1;
  visibility: visible;
}

.tooltip::after {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.tooltip.bottom {
  top: 2.37em;
  margin-top: 0.25em;
}

.tooltip.bottom::after {
  z-index: 2;
  width: 0;
  height: 0;
  content: '';
  border-bottom: 0.5em solid #6e6b70;
  border-right: 0.5em solid transparent;
  border-left: 0.5em solid transparent;
  top: -0.5em;
}

.tooltip.top {
  bottom: 1.58em;
  margin-top: -0.25em;
}

.tooltip.top::after {
  z-index: 2;
  width: 0;
  height: 0;
  content: '';
  border-top: 0.5em solid #6e6b70;
  border-right: 0.5em solid transparent;
  border-left: 0.5em solid transparent;
  bottom: -0.5em;
}

.tooltip--animated {
  -webkit-transition: all ease-in-out 0.25s;
  transition: all ease-in-out 0.25s;
  -webkit-transition-delay: 0.1s;
  transition-delay: 0.1s;
}

/**
 * An element that initially is not visible, but can be shown via a trigger.
 *
 * Used in for example in main nav and footer blocks on small view.
 */
.collapse-view.init [data-collapse-trigger] {
  cursor: pointer;
}

.collapse-view__trigger--icon {
  display: none;
}

.collapse-view.init .collapse-view__trigger--icon {
  display: inline-block;
}

.collapse-view__trigger--icon {
  -webkit-transition: ease-in-out 0.25s all;
  transition: ease-in-out 0.25s all;
}

.collapse-view.expanded .collapse-view__trigger--icon {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.no-fouc .collapse-view__container {
  display: none;
}

/**
 * Messages when a product is added to a shopping list or when something went wrong.
 */
.notification-flash-container {
  width: 100%;
  max-width: 85rem;
  margin: 0 auto;
}

.notification-flash-container > * {
  margin: 0.395em 0.79em;
}

.notification-flash-container:empty {
  display: none;
}

.notification-flash-container a {
  color: currentColor;
  -webkit-text-decoration-color: currentColor;
  text-decoration-color: currentColor;
}

.notification-flash-container a:hover, .notification-flash-container a:focus {
  opacity: 0.75;
}

@supports ((-webkit-mask: url("")) or (mask: url(""))) {
  .notification-flash-container .fa-exclamation-triangle {
    background: currentColor;
    -webkit-mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 58.53659% 26.31579%;
    mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 58.53659% 26.31579%;
  }
}

@supports ((-webkit-mask: url("")) or (mask: url(""))) {
  .notification-flash-container .fa-close {
    background: currentColor;
    -webkit-mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 100% 0;
    mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 100% 0;
  }
}

@supports ((-webkit-mask: url("")) or (mask: url(""))) {
  .notification-flash-container .fa-check {
    background: currentColor;
    -webkit-mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 13.41463% 14.23948%;
    mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 13.41463% 14.23948%;
  }
}

@supports ((-webkit-mask: url("")) or (mask: url(""))) {
  .notification-flash-container .fa-exclamation-circle {
    background: currentColor;
    -webkit-mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 46.34146% 13.15789%;
    mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 46.34146% 13.15789%;
  }
}

[class^='notification-flash--'],
.notifications {
  padding: 0.395em;
  border: 1px solid #e3e3e3;
  background: whitesmoke;
}

[class^='notification-flash--'] {
  position: relative;
}

[class^='notification-flash--'] + [class^='notification-flash--'] {
  margin-top: 0.79em;
}

.notification-flash--error,
.notifications--error {
  background: #ffebed;
  border-color: #d0011d;
  color: #d0011d;
}

.notification-flash--success {
  background: #f4f9f1;
  border-color: #81b964;
  color: #456d31;
}

.notification-flash--process {
  background: #80d0ff;
  border-color: #0071b3;
  color: #0071b3;
}

.notification-flash__badge {
  position: absolute;
  top: 50%;
  left: 0.79em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.notification-flash__close {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  position: absolute;
  top: 0;
  right: 0.395em;
  color: currentColor;
}

.notification-flash__close:hover, .notification-flash__close:focus {
  color: #0071b3;
}

.notification-flash__close:hover, .notification-flash__close:focus {
  color: currentColor;
  opacity: 0.75;
}

.notification-flash__text {
  font-size: 0.875em;
  padding: 0 2.37em;
}

/**
 * No data message.
 * Can be shown on products grid, addresses list etc.
 */
.no-data {
  padding: 0.79em;
  background: #fcfcfc;
  font-style: italic;
  text-align: center;
}

.no-data:empty {
  display: none;
}

/**
 * Base products list
 */
.product-item__image-holder:not(.product-item__image-holder_in-cart) {
  position: relative;
  overflow: hidden;
  margin-bottom: 0.79em;
  text-align: center;
}

.product-item__image-holder:not(.product-item__image-holder_in-cart) > a {
  display: block;
}

.product-item__image-holder:not(.product-item__image-holder_in-cart) img {
  width: 100%;
  -webkit-transition: ease-in-out 0.15s filter;
  transition: ease-in-out 0.15s filter;
}

.product-item__image-holder:not(.product-item__image-holder_in-cart) img:not([src*='no_image']):hover, .product-item__image-holder:not(.product-item__image-holder_in-cart) img:not([src*='no_image']):focus {
  -webkit-filter: brightness(110%);
  filter: brightness(110%);
}

.product-item__title {
  font-size: 1em;
  margin: 0;
  text-transform: uppercase;
}

.product-item__title a {
  text-decoration: none;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .product-item__title a {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.product-item__title a:focus, .product-item__title a:hover {
  text-decoration: underline;
}

.product-item__primary-content .product__specification,
.product-item__primary-content .product-item__number {
  font-size: 0.875em;
  color: #969696;
}

.product__view-details-link {
  font-size: 0.875em;
  margin-top: 0.79em;
}

.product__view-details-link a {
  color: #0071b3;
  text-decoration: none;
}

.product__view-details-link [class^='fa'] {
  margin-left: 0.395em;
}

.product-item__secondary-content .product-item__qty {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.product-item__secondary-content .form__col {
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
}

.product-item__secondary-content .status {
  -ms-flex: 1 0 8.5em;
  flex: 1 0 8.5em;
  color: #7a787d;
  margin-bottom: 0.79em;
  padding-right: 0.395em;
  max-width: 60%;
  margin-bottom: -4em;
}

.product-item__secondary-content .inventory-status {
  font-size: 0.75em;
  display: -ms-flexbox;
  display: flex;
  text-transform: uppercase;
  margin-bottom: 0.395em;
}

@media (min-width: 62em) {
  .product-item__secondary-content .inventory-status {
    font-size: 0.75em;
  }
}

.product-item__secondary-content .inventory-status [class^='fa'] {
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
  vertical-align: middle;
  margin: 0 0 0 0.395em;
}

.product-item__secondary-content .delivery-time {
  font-size: 0.75em;
}

@media (min-width: 62em) {
  .product-item__secondary-content .delivery-time {
    font-size: 0.6875em;
  }
}

.product-item__secondary-content [id*='oro_product_frontend_line_item-uid'] label span {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.product-item__secondary-content [data-name='form__oro-product-frontend-line-item'] {
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.product-item__secondary-content .product-item__qty__current-grid {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 0.79em;
  width: 100%;
}

.product-item__secondary-content .product-item__qty__current-grid::after, .product-item__secondary-content .product-item__qty__current-grid::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.product-item__secondary-content .product-item__qty__current-grid::after {
  clear: both;
}

.no-fouc .product-item__secondary-content .product-item__qty__current-grid {
  display: none;
}

.product-item__secondary-content .product-item__qty__current-grid .quantity,
.product-item__secondary-content .product-item__qty__current-grid .unit {
  float: right;
  clear: both;
  margin-bottom: 0.395em;
  max-width: 40%;
}

.product-item__secondary-content .product-item__qty__current-grid .quantity input,
.product-item__secondary-content .product-item__qty__current-grid .quantity select,
.product-item__secondary-content .product-item__qty__current-grid .quantity .select2-container,
.product-item__secondary-content .product-item__qty__current-grid .unit input,
.product-item__secondary-content .product-item__qty__current-grid .unit select,
.product-item__secondary-content .product-item__qty__current-grid .unit .select2-container {
  width: 6em;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.product-item__secondary-content .product-item__qty__current-grid .quantity {
  font-weight: normal;
  margin-bottom: 1.58em;
}

.product-item__secondary-content .product-item__qty__current-grid .quantity * {
  display: inline-block;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  vertical-align: baseline;
}

.product-item__secondary-content .product-item__qty__current-grid .quantity span {
  font-size: 0.75rem;
  display: inline-block;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding-right: 1.58em;
  text-transform: uppercase;
  white-space: nowrap;
}

@media (min-width: 62em) {
  .product-item__secondary-content .product-item__qty__current-grid .quantity span {
    font-size: 0.75rem;
  }
}

.product-item__secondary-content .product-item__qty__current-grid .unit {
  margin-left: 0.79em;
}

.product-item__secondary-content .product-item__qty__current-grid .unit.is-single-unit {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.product-item__secondary-content .add-product-from-view-component {
  /* No Fouc */
}

.product-item__secondary-content .add-product-from-view-component .btn-group > .btn-group {
  display: none;
  /* 1 */
}

.product-item__secondary-half {
  display: inline-block;
  vertical-align: top;
}

/**
 * Gallery view
 */
/**
 * 1) Equal height and force next line
 */
.desktop-version .product-list--gallery-view,
.embedded-list .product-list--gallery-view {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -2%;
  display: -ms-flexbox;
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 1 */
}

.desktop-version .product-list--gallery-view::after, .desktop-version .product-list--gallery-view::before,
.embedded-list .product-list--gallery-view::after,
.embedded-list .product-list--gallery-view::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.desktop-version .product-list--gallery-view::after,
.embedded-list .product-list--gallery-view::after {
  clear: both;
}

.desktop-version .product-list--gallery-view > div,
.embedded-list .product-list--gallery-view > div {
  width: 100%;
  margin: 0 0 1.58em 2%;
  float: left;
}

@media (min-width: 15em) {
  .desktop-version .product-list--gallery-view > div,
  .embedded-list .product-list--gallery-view > div {
    width: 48%;
  }
}

@media (min-width: 38em) {
  .desktop-version .product-list--gallery-view > div,
  .embedded-list .product-list--gallery-view > div {
    width: 31.33333%;
  }
}

@media (min-width: 62em) {
  .desktop-version .product-list--gallery-view > div,
  .embedded-list .product-list--gallery-view > div {
    width: 23%;
  }
}

@supports (display: grid) {
  .desktop-version .product-list--gallery-view,
  .embedded-list .product-list--gallery-view {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-left: 0;
    display: grid;
    grid-gap: 2.37em 1.58em;
    grid-template-columns: repeat(auto-fill, minmax(13em, 1fr));
  }
  .desktop-version .product-list--gallery-view::after, .desktop-version .product-list--gallery-view::before,
  .embedded-list .product-list--gallery-view::after,
  .embedded-list .product-list--gallery-view::before {
    display: none;
    -ms-flex: auto;
    flex: auto;
    content: none;
    line-height: normal;
  }
  .desktop-version .product-list--gallery-view::after,
  .embedded-list .product-list--gallery-view::after {
    clear: none;
  }
  .desktop-version .product-list--gallery-view > div,
  .embedded-list .product-list--gallery-view > div {
    width: auto;
    margin: 0;
  }
}

.desktop-version .product-item--gallery-view,
.embedded-list .product-item--gallery-view {
  padding: 0;
}

.desktop-version .product-item--gallery-view > div,
.embedded-list .product-item--gallery-view > div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  -ms-flex-direction: column;
  flex-direction: column;
}

.desktop-version .product__description--gallery-view,
.desktop-version .product__specification--gallery-view,
.desktop-version .product__view-details-link--gallery-view,
.embedded-list .product__description--gallery-view,
.embedded-list .product__specification--gallery-view,
.embedded-list .product__view-details-link--gallery-view {
  display: none;
}

.desktop-version .product-item__secondary-half--gallery-view,
.embedded-list .product-item__secondary-half--gallery-view {
  display: block;
}

.desktop-version .product-item__secondary-half--gallery-view .product-price,
.embedded-list .product-item__secondary-half--gallery-view .product-price {
  margin: 0.79em 0;
}

/**
 * list view
 */
.mobile-version .product-item--gallery-view,
.product-item--list-view {
  margin-bottom: 1.58em;
}

.mobile-version .product-item--gallery-view > div,
.product-item--list-view > div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

@supports (display: grid) {
  .mobile-version .product-item--gallery-view > div,
  .product-item--list-view > div {
    display: grid;
    grid-gap: 0.79em 1.58em;
  }
  @media (max-width: 49.99em) {
    .mobile-version .product-item--gallery-view > div,
    .product-item--list-view > div {
      grid-template-columns: minmax(5em, 25%) minmax(35%, 75%);
      grid-template-rows: auto auto;
    }
  }
  @media (min-width: 50em) {
    .mobile-version .product-item--gallery-view > div,
    .product-item--list-view > div {
      grid-template-columns: minmax(150px, 10%) minmax(350px, 40%) 1fr;
    }
  }
}

@media (max-width: 37.99em) {
  .mobile-version .product-item--gallery-view > div,
  .product-item--list-view > div {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.mobile-version .product-item--gallery-view > div > *,
.product-item--list-view > div > * {
  display: inline-block;
  padding: 0.79em;
  vertical-align: top;
}

@supports (display: grid) {
  .mobile-version .product-item--gallery-view > div > *,
  .product-item--list-view > div > * {
    padding: 0;
  }
}

.mobile-version .product-list--gallery-view .product-item__image-holder_gallery-view:not(.product-item__image-holder_in-cart),
.product-item__image-holder--list-view:not(.product-item__image-holder_in-cart) {
  margin: 0;
}

.mobile-version .product-list--gallery-view .product-item__title--gallery-view,
.product-item__title--list-view {
  font-size: 1.25em;
}

.mobile-version .product-list--gallery-view .product-item__title--gallery-view a,
.product-item__title--list-view a {
  color: #0071b3;
}

.mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view,
.product-item__secondary-content--list-view {
  text-align: right;
}

@media (max-width: 49.99em) {
  .mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view,
  .product-item__secondary-content--list-view {
    grid-column: 1 / 3;
    grid-row: 2 / 2;
  }
}

.mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view .product-price,
.product-item__secondary-content--list-view .product-price {
  padding: 0.79em 1.58em;
}

@media (max-width: 61.99em) {
  .mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view .product-item__secondary-half,
  .mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view form,
  .mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view .product-item__qty__current-grid,
  .mobile-version .product-list--gallery-view .product-item__secondary-content--gallery-view .add-product-from-view-component,
  .product-item__secondary-content--list-view .product-item__secondary-half,
  .product-item__secondary-content--list-view form,
  .product-item__secondary-content--list-view .product-item__qty__current-grid,
  .product-item__secondary-content--list-view .add-product-from-view-component {
    display: inline-block;
    vertical-align: top;
  }
}

.mobile-version .product-list--gallery-view .product-item__secondary-half--galleryview,
.product-item__secondary-half--list-view {
  text-align: left;
}

.mobile-version .product-list--gallery-view .product__view-details-link--gallery-view,
.product__view-details-link--list-view {
  font-size: 0.875em;
}

.mobile-version .product-list--gallery-view .product-item__number--gallery-view,
.product-item__number--list-view {
  display: none;
}

.product-item__secondary-content--gallery-view .add-product-from-view-component {
  width: 100%;
}

/**
 * No image view
 */
@media (max-width: 61.99em) {
  .product-item--no-image-view {
    margin-bottom: 2.37em;
  }
}

@media (min-width: 50em) {
  .product-item--no-image-view:nth-child(odd) {
    background: whitesmoke;
  }
}

@media (min-width: 50em) {
  .product-item--no-image-view > div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

@media (min-width: 50em) {
  .product-item--no-image-view > div > * {
    display: inline-block;
    display: -ms-inline-flexbox;
    display: inline-flex;
    vertical-align: baseline;
  }
}

.product-item__number--no-image-view,
.product__description--no-image-view,
.product__view-details-link--no-image-view,
.product-item__image-holder_no-image-view:not(.product-item__image-holder_in-cart) {
  display: none;
}

@media (max-width: 49.99em) {
  .product-item__primary-content--no-image-view {
    width: 100%;
  }
}

@media (min-width: 50em) {
  .product-item__primary-content--no-image-view {
    max-width: 50%;
  }
}

@media (max-width: 49.99em) {
  .product-item__title--no-image-view {
    margin-bottom: 0.395em;
  }
}

@media (min-width: 50em) {
  .product-item__title--no-image-view {
    padding: 0.395em;
  }
}

.product-item__secondary-content--no-image-view {
  -ms-flex-align: center;
  align-items: center;
  margin: -0.395em;
}

.product-item__secondary-content--no-image-view .product-item__secondary-half,
.product-item__secondary-content--no-image-view .product-item__qty__current-grid {
  padding: 0.395em;
}

@media (min-width: 50em) {
  .product-item__secondary-content--no-image-view form {
    padding: 0.395em;
  }
}

.product-item__secondary-content--no-image-view .product-item__secondary-half,
.product-item__secondary-content--no-image-view form,
.product-item__secondary-content--no-image-view .product-item__qty__current-grid,
.product-item__secondary-content--no-image-view .add-product-from-view-component {
  display: inline-block;
  vertical-align: middle;
}

.product-item__secondary-content--no-image-view .product-item__qty__current-grid {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: normal;
  flex-wrap: normal;
}

.product-item__secondary-content--no-image-view .product-item__qty {
  text-align: right;
}

/**
 * Small popup shown on hover. For example when hovering above the product price.
 */
.popover {
  font-size: 0.875em;
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  display: block;
  max-width: 10em;
  padding: 0.79em;
  border: 1px solid #a3a3a3;
  background: white;
}

.popover .arrow {
  position: absolute;
  z-index: 101;
  left: 50%;
  width: 1em;
  height: 1em;
  border-top: 1px solid #a3a3a3;
  border-left: 1px solid #a3a3a3;
  background: white;
}

.popover.top .arrow {
  bottom: 0;
  -webkit-transform: translate(-50%, 50%) rotate(225deg);
  transform: translate(-50%, 50%) rotate(225deg);
}

.popover.bottom .arrow {
  top: 0;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.popover .popover-title:empty {
  display: none;
}

/**
 * Loading indicator
 */
@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  50% {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.loading {
  position: relative;
}

.loader-mask {
  position: absolute;
  z-index: 99;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  /**
     * 1. Full screen when direct child of body elements
     */
}

body > .loader-mask {
  position: fixed;
  /* 1 */
}

.loader-mask:not(.shown) {
  display: none;
}

.loader-overlay {
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.9);
}

.loader-frame {
  position: absolute;
  top: 50%;
  left: 50%;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.loader-frame::before {
  display: inline-block;
  width: 2.5em;
  height: 2.5em;
  border: 5px solid #0071b3;
  margin-bottom: 0.395em;
  -webkit-animation: spin 1s linear infinite;
  animation: spin 1s linear infinite;
  background: none;
  border-radius: 50%;
  border-right-color: whitesmoke;
  content: '';
  vertical-align: top;
}

/**
 * Toolbar
 *
 * Layout design of toolbar
 */
.toolbar {
  font-size: 0.875em;
  color: #615f63;
}

@media (max-width: 77.99em) {
  .toolbar {
    margin-right: 0;
    margin-left: 0;
    background: whitesmoke;
  }
}

.toolbar ~ .toolbar {
  margin: 2.37em -0.395em 0;
}

/**
 * Grid toolbar
 */
.datagrid-toolbar,
.grid-toolbar {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  text-align: center;
}

.datagrid-toolbar::after, .datagrid-toolbar::before,
.grid-toolbar::after,
.grid-toolbar::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.datagrid-toolbar::after,
.grid-toolbar::after {
  clear: both;
}

@media (min-width: 38em) {
  .datagrid-toolbar,
  .grid-toolbar {
    text-align: left;
  }
}

@media (min-width: 50em) {
  .datagrid-toolbar,
  .grid-toolbar {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
}

.datagrid-toolbar [class^='datagrid-toolbar'],
.grid-toolbar [class^='datagrid-toolbar'] {
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
  align-items: center;
}

.datagrid-toolbar [class^='datagrid-toolbar'] > div,
.grid-toolbar [class^='datagrid-toolbar'] > div {
  display: block;
  padding: 0.79em;
}

@media (max-width: 37.99em) {
  .datagrid-toolbar .datagrid-toolbar__base,
  .grid-toolbar .datagrid-toolbar__base {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media (max-width: 49.99em) {
  .datagrid-toolbar__side,
  .grid__toolbar-side {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.datagrid-toolbar__side > *,
.grid__toolbar-side > * {
  display: inline-block;
  vertical-align: baseline;
}

@media (min-width: 38em) {
  .datagrid-toolbar__base,
  .grid__toolbar-base {
    width: auto;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
  }
}

.datagrid-toolbar__base:only-child {
  width: 100%;
}

.datagrid-toolbar__rightside,
.grid__toolbar-rightside {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.datagrid-toolbar__rightside .catalog__filter-controls__item,
.grid__toolbar-rightside .catalog__filter-controls__item {
  display: inline-block;
}

.datagrid-toolbar__rightside .catalog__filter-controls__item.display-options > *,
.grid__toolbar-rightside .catalog__filter-controls__item.display-options > * {
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.datagrid-toolbar__rightside .page-size.form-horizontal,
.grid__toolbar-rightside .page-size.form-horizontal {
  display: block;
}

.datagrid-toolbar__rightside .page-size.form-horizontal .page-size.form-horizontal,
.grid__toolbar-rightside .page-size.form-horizontal .page-size.form-horizontal {
  display: block;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.datagrid-toolbar__rightside .page-size.form-horizontal .page-size.form-horizontal > *,
.grid__toolbar-rightside .page-size.form-horizontal .page-size.form-horizontal > * {
  display: inline-block;
  vertical-align: baseline;
}

.datagrid-toolbar__rightside .catalog-switcher,
.grid__toolbar-rightside .catalog-switcher {
  vertical-align: middle;
}

.datagrid-toolbar__rightside .catalog-switcher .btn,
.grid__toolbar-rightside .catalog-switcher .btn {
  padding: 0.79em;
  line-height: 1;
}

.datagrid-toolbar__rightside .catalog-switcher .btn:not(.active) i,
.grid__toolbar-rightside .catalog-switcher .btn:not(.active) i {
  opacity: 0.35;
}

.frontend-datagrid__filter {
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
}

.oro-pagination {
  display: inline-block;
  /**
     * No fouc
     */
}

.oro-pagination:not([style]) {
  display: none !important;
}

.oro-pagination__pager {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
  align-items: baseline;
}

.oro-pagination__pager .btn {
  -ms-flex-item-align: center;
  align-self: center;
  border: 0;
  background: none;
  line-height: 0;
  vertical-align: middle;
}

.oro-pagination__pager .btn span {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.oro-pagination__total {
  margin-left: 0.79em;
}

.frontend-datagrid {
  width: 100%;
}

.box-toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.box-toolbar > * {
  margin-right: 0.79em;
}

.box-toolbar__content {
  margin-bottom: 0.79em;
}

/**
 * Visual indication of icons that aren't added yet.
 */
.ui-icon,
[class*='fa-'] {
  display: inline-block;
  vertical-align: middle;
}

/**
 * Custom icons that dont use the FA syntax.
 */
.caret:not(.btn) {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 16.012084592145015% 96.81528662420382%;
  width: 17px;
  height: 10px;
}

/**
 * Don't show icon if it's not found.
 */
[class^='symbol-'] {
  width: 0;
  height: 0;
}

/**
 * Show a dropdown when the trigger is clicked. This component is heavily used in the front-end.
 * For example add to shopping button or filters management. Often it's combined with another component
 * to enforce specific design and interaction.
 */
.dropdown {
  position: relative;
}

.dropdown-toggle:empty::after {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 16.012084592145015% 96.81528662420382%;
  width: 17px;
  height: 10px;
  content: '';
}

.full .dropdown-toggle:empty::after {
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
}

.add-product-from-view-component .dropdown-toggle,
.order-checkout-widget__col .dropdown-toggle,
.matrix-order-widget .dropdown-toggle,
.product-view__order-button .dropdown-toggle {
  padding-right: 0.395em;
  padding-left: 0.395em;
  margin-left: 0;
}

.oro-dropdown-toggle {
  padding-right: 3.16em;
  text-transform: none;
}

.oro-dropdown-toggle .caret {
  position: absolute;
  top: 50%;
  right: 0.79em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/**
 * 1. Corrent top position since parent is flex.
 */
.dropdown-menu {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  font-size: 1rem;
  position: absolute !important;
  z-index: 100;
  display: none;
  width: 100%;
  min-width: 10em;
  max-width: 25em;
  -ms-flex-item-align: auto;
  align-self: auto;
  padding: 0.395em 0 0 0;
  border: none;
  background: whitesmoke;
  -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  text-align: left;
  white-space: nowrap;
  /**
     * Align arrow icon at the right side
     */
}

.btn-group .dropdown-menu {
  top: 100% !important;
  /* 1 */
  left: 0 !important;
  /* 1 */
}

.dropdown-menu::before {
  position: absolute;
  top: -1px;
  left: 1.58em;
  display: block;
  width: 0.5em;
  height: 0.5em;
  border-top: 1px solid transparent;
  border-left: 1px solid transparent;
  background: whitesmoke;
  content: '';
  -webkit-transform: rotate(45deg) translateY(-50%);
  transform: rotate(45deg) translateY(-50%);
}

.mode-icon-only + .dropdown-menu::before,
.datagrid-manager .dropdown-menu::before, .dropdown-menu[style*='left: -']::before {
  right: 0.79em;
  left: auto;
}

.open > .dropdown-menu, .dropdown-menu.detach {
  position: absolute;
}

.dropdown-menu.detach,
.open-filter > .dropdown-menu,
.open > .dropdown-menu {
  display: block;
}

.dropdown-menu > li {
  margin-top: -1px;
}

.dropdown-menu > li:not(:first-child) {
  border-top: 1px solid transparent;
}

.dropdown-menu > li a:not(.btn):not([class^='ui-multiselect']) {
  font-size: 0.875em;
  display: block;
  padding: 0.79em;
  border: 0;
  color: #333333;
  text-decoration: none;
}

@supports (text-overflow: ellipsis) {
  .dropdown-menu > li a:not(.btn):not([class^='ui-multiselect']) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

/**
 * 1. Calendar dropdown has to be bigger because of a lot of data.
 */
.dropdown-menu-calendar {
  width: auto;
  /* 1 */
}

.launchers-dropdown-menu {
  width: auto;
  margin: -1px 0 0 -1.58em;
}

/**
 * Filter
 *
 * Is toggled on mobile (touch) and initially shown on desktop (non touch).
 */
.frontend-datagrid__filter:not(:empty) .filter-box {
  padding: 0.395em;
  background: #ededed;
}

.filters-state:not(:empty) {
  cursor: pointer;
}

.filters-state:not(:empty) > span + span {
  margin-left: 0.395em;
}

.filters-state:not(:empty) > span span {
  font-weight: 600;
}

.filters-state:not(:empty) i {
  margin-right: 0.79rem;
}

.filter-box {
  margin-bottom: 1.58em;
  /**
     * 1. Reset/override inline styles.
     */
}

@media (min-width: 60em) {
  .filter-box {
    position: relative;
  }
}

.filter-box .filter-items {
  display: block;
  -ms-flex-order: 1;
  order: 1;
}

.filter-box .value-field-frame {
  padding: 0.79em !important;
  /* 1 */
  margin: 0 !important;
  /* 1 */
  text-align: right;
}

.filter-box .value-field-frame input {
  display: block;
  width: 100%;
}

.filter-box .value-field-frame .filter-update {
  font-size: 0.875em;
  margin-top: 0.79em;
}

.filter-box .filter-value {
  margin: 0 -0.1975em;
  text-align: left;
}

.filter-box .filter-value > * {
  display: inline-block;
  padding: 0.1975em;
  vertical-align: baseline;
}

.filter-box .filter-value input {
  max-width: 7em;
}

.filter-box .dropdown-toggle {
  margin: 0.395em 0;
}

.filter-box__dropdown {
  width: auto;
  max-width: none;
}

/**
 * 1. Use negative margin for unsetting margin of children.
 */
.filter-container {
  margin: -0.395em;
  /* 1 */
}

.mobile-version .filter-container {
  margin: 0;
}

.mobile-version .filter-container .reset-filter-button {
  margin: 0.79em;
}

/**
 * Datagrid Manager
 */
.btn.select-filter-widget {
  display: inline-block;
  width: auto !important;
  -ms-flex-order: 2;
  order: 2;
  margin: 0.79em;
}

.ui-widget.select-filter-widget {
  display: none;
}

.filter-item {
  padding: 0.395em;
}

@media (min-width: 38em) and (max-width: 77.99em) {
  .filter-item {
    display: inline-block;
    width: auto;
  }
}

/**
 * Filter trigger
 *
 * 1. Higher than filter-criteria
 * 2. Override .btn settings
 * 3. Same line-height as select2
 */
.filter-criteria-selector {
  position: relative;
  z-index: 2;
  /* 1 */
  display: block;
}

.filter-criteria-selector.btn {
  padding-left: 0.79em;
  border-color: #d8d8d8;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  color: #4d4d4d;
  font-weight: 400;
  line-height: 1.2;
  /* 3 */
  text-align: left;
  text-transform: none;
  /* 2 */
}

.filter-criteria-selector::after.open-filter {
  position: absolute;
  z-index: 21;
  bottom: 0;
  left: 50%;
  width: 0.75em;
  height: 0.75em;
  border-right: 1px solid #a3a3a3;
  border-bottom: 1px solid #a3a3a3;
  background: inherit;
  content: '';
  -webkit-transform: translate(-50%, 50%) rotate(45deg);
  transform: translate(-50%, 50%) rotate(45deg);
}

.filter-criteria-selector .caret {
  margin-left: 1.58em;
}

/**
 * Dropdown box
 */
.filter-criteria.dropdown-menu {
  font-size: 0.875rem;
  position: absolute !important;
  /**
     * 1. Override .btn style.... :`(
     */
}

@media (max-width: 37.99em) {
  .filter-criteria.dropdown-menu {
    position: static !important;
    max-width: none;
    border: 1px solid #d8d8d8;
    margin-left: 0 !important;
    background: white;
    -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  }
}

@media (min-width: 78em) {
  .filter-criteria.dropdown-menu {
    position: static !important;
    max-width: none;
    border: 1px solid #d8d8d8;
    margin-left: 0 !important;
    background: white;
    -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
    box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  }
}

.filter-criteria.dropdown-menu:empty {
  display: none;
}

.filter-criteria.dropdown-menu .dropdown-toggle {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  font-size: 0.875rem;
  padding-right: 1.58em;
  margin-bottom: 0.79em;
  background: none !important;
  /* 1 */
  font-weight: normal;
  /* 1 */
  text-transform: none;
  /* 1 */
}

.filter-criteria.dropdown-menu .dropdown-toggle:hover, .filter-criteria.dropdown-menu .dropdown-toggle:focus {
  color: #0071b3;
}

.filter-criteria.dropdown-menu .dropdown-toggle:hover, .filter-criteria.dropdown-menu .dropdown-toggle:focus {
  background: none;
}

.desktop .filter-criteria.dropdown-menu .dropdown-toggle {
  display: none;
}

.filter-criteria.dropdown-menu .dropdown-toggle .caret {
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  margin-left: 0.395em;
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

.filter-criteria.dropdown-menu .open .dropdown-menu {
  position: absolute;
  left: 0;
  display: block;
}

.filter-criteria.dropdown-menu .filter-select-oro-wrapper {
  display: block;
}

.filter-criteria.dropdown-menu .filter-select-oro-wrapper select {
  width: 100%;
}

.product-price-filter {
  white-space: nowrap;
}

.product-price-filter > * {
  display: inline-block;
}

.filter-items-hint {
  font-size: 0.875em;
  display: -ms-flexbox;
  display: flex;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-order: 2;
  order: 2;
  padding: 0.395em 0;
  border-top: 1px solid #d8d8d8;
}

.filter-items-hint > span,
.filter-items-hint .reset-filter-button {
  display: inline-block;
  padding: 0.1975em 0.79em;
  margin: 0.395rem;
}

.filter-items-hint > span {
  background: #fcfcfc;
  border-radius: 0.5em;
}

.filter-items-hint > span i {
  vertical-align: middle;
}

.filter-items-hint > span i::before {
  margin-left: 0.395em;
}

.filter-items-hint .reset-filter-button {
  padding-left: 1.58em;
  margin-left: auto;
}

.filter-items-hint .reset-filter {
  cursor: pointer;
}

.filter-date-range {
  padding: 0.79em 0;
}

.filter-date-range .filter-start-date,
.filter-date-range .filter-end-date {
  margin: -0.395em;
}

.filter-date-range .filter-separator {
  display: block;
  padding: 0.79em;
  text-align: center;
}

.filter-date-range input {
  margin: 0.395em;
}

.filter-date-range .fields-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.filter-date-range .fields-row > * {
  display: inline-block;
  max-width: 45%;
}

/**
 * Products list
 * 1) Context for edit icon and hyperlink
 */
.shopping-lists {
  font-size: 0.75em;
  position: relative;
  width: 100%;
  padding: 0.1975em;
  margin-bottom: 1.58em;
  background: #d7e9ce;
  color: #2f4a21;
  text-align: center;
}

@media (min-width: 62em) {
  .shopping-lists {
    font-size: 0.6875em;
  }
}

.product-view__main .shopping-lists {
  display: inline-block;
}

.shopping-lists a {
  color: inherit;
  cursor: pointer;
}

.shopping-lists a:hover, .shopping-lists a:focus {
  color: #507f39;
}

.shopping-lists .actions-row {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.shopping-lists .actions-row__button {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  position: absolute;
  top: 0.395em;
  right: 0.395em;
}

.shopping-lists .actions-row__button:hover, .shopping-lists .actions-row__button:focus {
  color: #0071b3;
}

.shopping-lists__content-wrapper {
  padding: 0 0.79em;
}

.shopping-lists__content {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: start;
  justify-content: flex-start;
  text-align: left;
}

.shopping-lists__content > * {
  display: inline-block;
  margin: 0 0.395em;
}

.shopping-lists__edit {
  margin-left: auto;
}

.shopping-lists__edit::before {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 6.0606060606060606% 80.26315789473684%;
  width: 18px;
  height: 20px;
  margin-top: 0.1em;
  content: '';
  -webkit-transform: scale(0.8);
  transform: scale(0.8);
}

@supports ((-webkit-mask: url("")) or (mask: url(""))) {
  .shopping-lists__edit::before {
    background: currentColor;
    -webkit-mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 6.06061% 80.26316%;
    mask: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg") no-repeat 6.06061% 80.26316%;
  }
}

/**
 * Hyperlink to open the modal. Covers whole area.
 */
.shopping-lists__area-trigger {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}

/**
 * Cart
 */
.shopping-list-navigation {
  margin-bottom: 1.58em;
}

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

.shopping-list__item {
  position: relative;
}

.shopping-list__item + .shopping-list__item {
  border-top: 1px solid #d8d8d8;
}

.shopping-list__item-indicator {
  position: absolute;
  top: 50%;
  left: 0.79em;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 2em;
  height: 2em;
  background: #a3a3a3;
  border-radius: 100%;
  -webkit-transform: translateY(-55%);
  transform: translateY(-55%);
}

.shopping-list__item--current .shopping-list__item-indicator {
  background: #0071b3;
  color: #333333;
}

.shopping-list__item-indicator i {
  margin: auto;
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
  -webkit-transform: scale(0.9);
  transform: scale(0.9);
}

.shopping-list__link {
  display: block;
  padding: 0.79em 0.79em 0.79em 3.95em;
  background: whitesmoke;
  color: #7a787d;
  text-decoration: none;
}

.shopping-list__item--current .shopping-list__link {
  background: #ededed;
  color: #333333;
}

.shopping-list__item--current .shopping-list__text {
  font-weight: 600;
}

.shopping-list__desc {
  font-size: 0.875em;
}

.shopping-list-view-options label {
  display: block;
  margin: 0.79em 0;
}

.shopping-list-view-options textarea {
  max-width: 30em;
}

/**
 * Popup
 */
.shopping-lists-popup {
  width: 100%;
  text-align: left;
}

.shopping-lists-popup th,
.shopping-lists-popup td {
  padding: 0.395em 0.79em;
}

.shopping-lists-popup thead th {
  background: whitesmoke;
}

.shopping-lists-popup thead th a {
  text-decoration: none;
}

.shopping-lists-popup thead th a:hover, .shopping-lists-popup thead th a:focus {
  color: currentColor;
}

.shopping-lists-popup__content .shopping-lists-popup__list {
  width: 55%;
}

.shopping-lists-popup__content .shopping-lists-popup__quantity {
  width: 45%;
}

.shopping-lists-popup__footer {
  padding: 0.79em 0;
  margin-top: 1.58em;
  background: whitesmoke;
}

.shopping-lists-popup__footer .shopping-lists-popup__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: right;
}

.shopping-lists-popup__footer .shopping-lists-popup__list,
.shopping-lists-popup__footer .shopping-lists-popup__quantity {
  display: inline-block;
  margin-left: 0.79em;
}

.shopping-lists-modify {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: end;
  justify-content: flex-end;
  text-align: right;
}

.shopping-lists-modify li {
  display: inline-block;
  vertical-align: middle;
}

.shopping-lists-modify li + li {
  margin-left: 0.395em;
}

.shopping-lists-modify button {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  padding: 0 0.395em;
}

.shopping-lists-modify button:hover, .shopping-lists-modify button:focus {
  color: #0071b3;
}

.shopping-lists-units__static {
  display: -ms-flexbox;
  display: flex;
}

.shopping-lists-units__static span + span {
  margin-left: 0.1975em;
}

.shopping-lists-units__actions {
  display: inline-block;
  margin-left: auto;
}

.inline-view-editor {
  display: -ms-flexbox;
  display: flex;
  max-width: 30em;
  -ms-flex-align: center;
  align-items: center;
}

.inline-view-editor__input-wrap {
  display: inline-block;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  margin: 0 0.79em 0.79em 0;
}

.inline-view-editor__btn-wrap {
  display: inline-block;
  margin: 0 0.79em 0.79em 0;
}

.inline-view-editor__btn-wrap .btn {
  margin: 0.395em;
}

/**
 * Textarea field.
 *
 * For exmaple adding a note to a product in the cart.
 */
.editable {
  font-size: 0.875em;
  padding: 0.395em;
  background: whitesmoke;
  text-align: left;
}

.editable textarea {
  max-width: 30em;
  margin-top: 0.395em;
}

.no-fouc .editable textarea {
  display: none;
}

/**
 * A list that contains several actions like create an order.
 *
 * Can be found at Shopping Lists.
 */
.controls-list ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -0.395em -0.395em 0.79em;
}

.controls-list ul::after, .controls-list ul::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.controls-list ul::after {
  clear: both;
}

.controls-list li {
  display: inline-block;
}

.controls-list a {
  display: block;
  padding: 0.395em;
}

.controls-list a i {
  margin-right: 0.395rem;
}

/**
 * Datepicker input field design. Can be found in checkout or quote page.
 */
.datepicker-box {
  position: relative;
}

.datepicker-box .label {
  padding-left: 1.58em;
}

.datepicker-box input {
  padding-left: 2.37em;
}

.datepicker-box__icon {
  position: absolute;
  bottom: 0.79em;
  left: 0.395em;
}

/**
 * An inline list that contains several actions like delete or edit the item where it is attached to.
 *
 * Can be found at My Account > Address Book > All Company Addresses.
 */
.actions-row {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.actions-row__item {
  display: inline-block;
}

.actions-row__button {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  padding: 0 0.395em;
}

.actions-row__button:hover, .actions-row__button:focus {
  color: #0071b3;
}

.request-form,
.request-form-container {
  padding: 0.79em;
  background: whitesmoke;
  margin-bottom: 1.58em;
}

.request-form .add-list-item,
.request-form-container .add-list-item {
  display: block;
  text-align: right;
}

.request-form .add-list-item i::before,
.request-form-container .add-list-item i::before {
  margin-right: 0.395em;
}

.request-form-line-container {
  padding-bottom: 0.79em;
  border-bottom: 1px solid #a3a3a3;
  margin-bottom: 0.79em;
}

.request-form-editline__product .input-append {
  display: -ms-flexbox;
  display: flex;
  white-space: nowrap;
}

.request-form-editline__product .input-append > * {
  display: inline-block;
}

.request-form-editline__product,
.request-form-editline__note,
.request-form-editline__action,
.request-form-footer {
  margin-bottom: 1.58em;
}

.request-form-editnote label,
.request-form-lineitem-unit__label {
  display: block;
  margin-bottom: 0.79em;
  font-weight: 600;
}

.request-form-lineitem.fields-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  align-items: flex-end;
}

.request-form-lineitem.fields-row > * {
  display: inline-block;
  padding: 0.395em;
  vertical-align: bottom;
}

.request-form-lineitem-unit--size-m {
  width: 8em;
}

.request-form-lineitem-unit--size-m > * {
  width: 100%;
}

.request-form-group > * {
  font-size: 0.75em;
  display: inline-block;
}

@media (min-width: 62em) {
  .request-form-group > * {
    font-size: 0.75em;
  }
}

.entity-select-btn {
  border: 0;
  background: none;
}

.entity-select-btn i::before {
  margin: 0;
}

.request-form-lineitems__add {
  margin: 1.58em 0;
}

.request-form-product__item--link {
  font-size: 1.25em;
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  margin: 0;
}

.fonts-loaded .request-form-product__item--link {
  font-family: "Open Sans", sans-serif;
}

.request-form-product {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.request-form-product > * {
  display: inline-block;
}

.request-form-product__item--quantity,
.request-form-product__item--target,
.request-form-product__item--listed {
  display: inline-block;
  margin: 0 0.79em 0.395em 0;
}

.request-form-product__inner + .request-form-product__inner {
  margin-top: 0.395em;
}

.request-form-amount__total,
.request-form-quantity__total,
.request-form-quantity__units {
  font-weight: 600;
}

.primary-menu-container {
  padding: 0.79em;
  background: whitesmoke;
  margin-bottom: 1.58em;
}

.primary-menu-title {
  position: relative;
  margin: 0;
}

.primary-menu-title i {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.collapse-view:not(.init) .primary-menu-title i {
  display: none;
}

.collapse-view.expanded .primary-menu-title .fa-plus {
  display: none;
}

.collapse-view:not(.expanded) .primary-menu-title .fa-minus {
  display: none;
}

.primary-menu {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  margin-top: 0.79em;
}

.primary-menu__item--current {
  font-weight: 600;
}

.primary-menu__link {
  display: block;
  padding: 0.395em 0;
  text-decoration: none;
}

/**
 * Modify the view of a grid. See for example My Account > Address Book > All Company Adresses.
 */
.grid-views {
  border-bottom: 1px solid #a3a3a3;
  margin-bottom: 0.79em;
}

.grid-views__header {
  display: inline-block;
}

.grid-views__header[data-toggle='dropdown'] {
  cursor: pointer;
}

.grid-views__title {
  font-size: 1.125em;
  padding-bottom: 0.395em;
  margin: 0;
}

.grid-views__title > * {
  margin-right: 0.395em;
}

.grid-views__edit-label {
  font-size: 0.875em;
  display: inline-block;
  font-style: italic;
}

/**
 * 1. Override default dropdown value
 * 2. Unset default dropdown padding.
 */
.grid-views__dropdown {
  position: absolute;
  padding: 0;
  /* 2 */
  white-space: normal;
  /* 1 */
}

.grid-views__close {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  padding: 0.395em;
  cursor: pointer;
  line-height: 1;
}

.grid-views__subtitle {
  font-size: 1.125em;
  padding: 0.79rem 0.79rem 0;
}

.grid-views__list {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  padding: 0.79em;
}

.grid-views__item {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.grid-views__item + .grid-views__item {
  margin-top: 0.79em;
}

.grid-views__text-line {
  display: inline-block;
  max-width: 12em;
}

.grid-views__aditional {
  margin: 0.79em 0;
}

.grid-views__toggle-container {
  padding: 0.79em 0;
}

.grid-views__footer {
  font-size: 0.875em;
  padding: 0.395em 0.79em;
  border-top: 1px solid #d8d8d8;
  margin-top: 0.395em;
  background: whitesmoke;
}

.grid-views__edit-container .grid__row {
  margin-bottom: 0.79em;
}

@supports (display: grid) {
  .grid-views__edit-container .grid__row {
    display: block;
  }
}

/**
 * A circle with an icon centered inside, often used to prefix a section title.
 *
 * Can be found at My Account > My Profiles > Account info / Default addresses.
 */
.badge {
  font-size: 1.4375rem;
  position: relative;
  display: inline-block;
  width: 1.25em;
  height: 1.25em;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -ms-flex-item-align: center;
  align-self: center;
  background: #0071b3;
  border-radius: 100%;
  color: white;
  vertical-align: middle;
}

@media (min-width: 38em) {
  .badge {
    font-size: 1.75rem;
  }
}

.badge i {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
  font-size: 0.75em;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.badge--light {
  background: #0071b3;
  color: white;
}

.badge-square i {
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
}

/**
 * Display Customer info. See My Account > My Profile > Account info.
 */
.info-list {
  display: table;
}

.info-list__item {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: table-row;
}

.info-list__item::after, .info-list__item::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.info-list__item::after {
  clear: both;
}

.info-list__name {
  display: table-cell;
  padding: 0.1975em 1.58em 0.1975em 0;
}

.info-list__name::after {
  margin-left: -0.15em;
  content: '\003a';
}

.info-list__desc {
  display: table-cell;
  padding: 0.1975em 0;
}

.info-list-status {
  color: #81b964;
}

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

.launcher-item i {
  margin-right: 0.395rem;
}

/**
 * Modify the filters of a datagrid. Can be found in the toolbox on products grid.
 *
 * 1. Required for proper position of dropdown.
 */
.datagrid-manager {
  /**
     * 1. For proper position on products grid
     * 2. Override flex For proper position of dropdown in account pages
     */
  /**
     * 1. Override normalize.
     */
}

.datagrid-manager:not(.btn-group) {
  width: 100%;
  /* 1 */
  min-height: 1px;
  /* 1 */
}

.filter-box .datagrid-manager {
  position: relative;
  display: block;
  /* 2 */
  -ms-flex-order: 3;
  order: 3;
  /* 1 */
}

.btn-group > .datagrid-manager {
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.btn-group > .datagrid-manager .btn {
  border-color: #d8d8d8;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
}

.datagrid-manager .dropdown-menu {
  position: absolute !important;
  top: 100% !important;
  right: 0 !important;
  left: auto !important;
  width: auto !important;
  min-width: 20em !important;
  max-width: 30em;
  padding: 0.79em;
}

@media (max-width: 59.99em) {
  .mobile-version .datagrid-manager .dropdown-menu {
    right: 0 !important;
    left: 0 !important;
    min-width: 0 !important;
    max-width: none;
  }
}

.datagrid-manager input[type='search'] {
  width: 100% !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
}

.datagrid-manager a.disabled {
  color: #a3a3a3;
  cursor: not-allowed;
  text-decoration: none;
}

.fullscreen-popup .datagrid-manager__header {
  display: none;
}

.datagrid-manager__header .close {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  font-size: 1rem;
  position: absolute;
  top: 0;
  right: 0;
  width: 2em;
  height: 2em;
  padding: 0.395rem;
  color: transparent;
  cursor: pointer;
}

.datagrid-manager__header .close:hover, .datagrid-manager__header .close:focus {
  color: #0071b3;
}

.datagrid-manager__header .close:hover, .datagrid-manager__header .close:focus {
  color: transparent;
}

.datagrid-manager__header .close::after {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 100% 5.194805194805195%;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.datagrid-manager-search {
  position: relative;
  margin-top: 0.79em;
}

.datagrid-manager-search::after {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 18.29268292682927% 86.84210526315789%;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  right: 0.395em;
  content: '';
  -webkit-transform: translateY(-50%) scale(0.8);
  transform: translateY(-50%) scale(0.8);
}

.datagrid-manager__title {
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  font-size: 1.125em;
}

.fonts-loaded .datagrid-manager__title {
  font-family: "Open Sans", sans-serif;
}

.datagrid-manager__actions {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  padding: 0.395em 0;
  white-space: normal;
  /**
     * 1. It's not getting any better with these icons.
     * 2. There already is a close button in the dropdown...
     */
}

.datagrid-manager__actions a {
  font-size: 0.875em;
}

.datagrid-manager__actions .ui-icon,
.datagrid-manager__actions .ui-multiselect-close {
  /* 2 */
  display: none;
}

.datagrid-manager__actions-item {
  display: inline-block;
}

.datagrid-manager__separator {
  padding: 0.395em;
}

.datagrid-manager__checkboxes {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.datagrid-manager__footer {
  font-size: 0.875em;
  margin-top: 0.79em;
}

.datagrid-manager__footer i {
  margin-right: 0.395em;
}

.datagrid-manager__container {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  white-space: nowrap;
}

.datagrid-manager__container::after, .datagrid-manager__container::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.datagrid-manager__container::after {
  clear: both;
}

.datagrid-manager__container > * {
  display: inline-block;
  vertical-align: top;
}

.datagrid-manager__handle {
  padding: 0.1975em 0.79em 0.1975em 0;
  cursor: move;
}

.datagrid-manager__handle::after {
  display: inline-block;
  width: 0.45em;
  height: 1.2em;
  border: 0.15em dotted #a3a3a3;
  border-top: 0;
  border-bottom: 0;
  content: '';
  vertical-align: middle;
}

.datagrid-manager-table table {
  border-top: 1px solid #d8d8d8;
}

.datagrid-manager-table table td {
  padding: 0.395em 0;
  border-bottom: 1px solid #d8d8d8;
}

.datagrid-manager__move {
  display: none;
}

.fullscreen-popup .datagrid-manager__move {
  display: inline-block;
  margin: -0.1975em -0.1975em -0.1975em auto;
  float: right;
}

.datagrid-manager__move-btn {
  padding: 0.1975em;
  margin: 0.1975em;
}

/**
 * Mass action
 * For example; see the table at account > users.
 */
.datagrid-massaction__toggle {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
}

.datagrid-massaction__toggle:hover, .datagrid-massaction__toggle:focus {
  color: #0071b3;
}

.datagrid-massaction__invisible {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

/**
 * Fullscreen modal/popup
 */
.fullscreen-popup {
  position: fixed;
  z-index: 100;
  top: 0.395em;
  right: 0.395em;
  bottom: 0.395em;
  left: 0.395em;
  padding: 0.79em;
  background: white;
  outline: 1em solid rgba(0, 0, 0, 0.25);
}

.fullscreen-popup__close {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  font-size: 1rem;
  position: absolute;
  top: 0;
  right: 0;
  width: 2em;
  height: 2em;
  padding: 0.395rem;
  color: transparent;
  cursor: pointer;
}

.fullscreen-popup__close:hover, .fullscreen-popup__close:focus {
  color: #0071b3;
}

.fullscreen-popup__close:hover, .fullscreen-popup__close:focus {
  color: transparent;
}

.fullscreen-popup__close::after {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 100% 5.194805194805195%;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.fullscreen-popup__label {
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  font-size: 1.125em;
  padding-bottom: 0.395em;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 0.395em;
}

.fonts-loaded .fullscreen-popup__label {
  font-family: "Open Sans", sans-serif;
}

/**
 * Order Matrix. Can be opened form Product Detail Page.
 */
.matrix-order-widget--dialog .pinned-dropdown {
  text-align: right;
}

.matrix-order-widget--dialog .pinned-dropdown .btn-group {
  width: auto;
}

.matrix-order-widget__grid {
  width: 100%;
}

.matrix-order-widget__grid td {
  padding: 0.79em 0.395em;
  text-align: center;
}

.matrix-order-widget__grid .form-row {
  margin: 0;
}

.matrix-order-widget__grid .input.form-field-quantity {
  font-size: 0.875em;
}

.matrix-order-widget__grid-head,
.matrix-order-widget__grid-footer {
  background: whitesmoke;
}

.matrix-order-widget__grid-head td {
  font-size: 0.875em;
  min-width: 5em;
}

.matrix-order-widget__grid-footer {
  font-weight: 600;
}

.matrix-order-widget__summary {
  margin: 1.58em 0;
  color: #6e6b70;
  text-align: right;
}

.matrix-order-widget__summary-label {
  display: inline-block;
  padding-right: 0.79em;
}

.matrix-order-widget__summary-label::after {
  content: '\003a';
}

.matrix-order-widget__total-price-value,
.matrix-order-widget__total-quantity-value {
  display: inline-block;
  min-width: 5rem;
  font-weight: 600;
}

.matrix-order-widget__total-price {
  color: #333333;
}

.matrix-order-widget__total-price-value {
  font-size: 1.25em;
}

.matrix-order-widget__btn {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
}

.matrix-order-widget__btn:hover, .matrix-order-widget__btn:focus {
  background: whitesmoke;
  color: #333333;
}

.matrix-order-widget__btn i::before {
  margin: 0 0.395em;
}

/**
 * Inline nav
 */
.nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -0.1975em;
}

.nav > * {
  display: inline-block;
  margin: 0.1975em;
}

/**
 * Variation of nav where children look like pills.
 */
.nav-pills a {
  font-size: 0.875em;
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.1975em 0.395em;
  background: #3e98cc;
  border-radius: 0.5em;
  color: white;
  text-decoration: none;
}

.nav-pills a:hover, .nav-pills a:focus {
  background: #328abd;
}

.nav-pills a i {
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
}

.nav-pills.launchers-list {
  font-size: 0.875em;
  display: block;
  padding: 0.79em;
}

.nav-pills.launchers-list .launcher-item {
  display: block;
}

.nav-pills.launchers-list a {
  display: inline-block !important;
  color: white !important;
}

/**
 * Variation of nav where children are tabs
 */
.nav-tabs {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  margin: 0;
}

.nav-tabs li {
  margin: 0;
}

.nav-tabs li a {
  display: block;
  padding: 0.395em;
  text-decoration: none;
}

.nav-tabs li.active a {
  border: 1px solid #d8d8d8;
  border-bottom: 0;
  background: whitesmoke;
}

.tab-pane {
  padding: 0.79em;
  /**
     * 1. Hide top border underneath active tab
     */
}

.tab-pane:not(.active) {
  display: none;
}

.tab-pane.active {
  border: 1px solid #d8d8d8;
  margin-top: -1px;
  /* 1 */
  background: whitesmoke;
}

/**
 * A scrollable grid. For example in orders history table.
 * Not really clear to me why this has to be done via JS. So I overruled inline styles.
 */
.grid-scrollable-container .mCustomScrollBox {
  overflow: auto !important;
}

.grid-scrollable-container .mCSB_container {
  position: static !important;
  top: auto !important;
  left: auto !important;
  width: auto !important;
  min-width: none !important;
  overflow-x: none !important;
}

/**
 * An element that initially is not visible, but can be shown via a trigger.
 * Does exactly the same as .collapse-view componen....
 *
 * Used for example in checkout order revview order options.
 */
.toggle-block__trigger {
  cursor: pointer;
}

.toggle-block__content {
  margin-top: 0.79em;
}

.toggle-block__trigger:not(.checked) + .toggle-block__content {
  display: none;
}

.no-fouc .toggle-block__content {
  display: none;
}

/**
 * Another Modal
 */
.modal {
  position: fixed;
  z-index: 101;
  top: 0.395em;
  right: 0.395em;
  bottom: 0.395em;
  left: 0.395em;
  display: -ms-flexbox;
  display: flex;
  padding: 0.79em;
}

.modal-dialog {
  width: 30em;
  max-width: 100%;
  -ms-flex-item-align: center;
  align-self: center;
  padding: 0.79em;
  margin: auto;
  background: white;
}

.modal-backdrop {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(51, 51, 51, 0.5);
}

/**
 * 1. Context for close icon
 */
.modal-content {
  position: relative;
}

.modal-content .buttons-equal {
  margin-top: 1.58em;
}

.modal-content .buttons-equal .btn {
  font-size: 0.875em;
}

.modal-content .btn_close {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  position: absolute;
  top: 0;
  right: 0;
  line-height: 0;
}

.modal-content .btn_close:hover, .modal-content .btn_close:focus {
  color: #0071b3;
}

.fullscreen-popup__label {
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  font-size: 1.125em;
  padding-bottom: 0.395em;
  border-bottom: 1px solid #d8d8d8;
  margin-bottom: 0.395em;
}

.fonts-loaded .fullscreen-popup__label {
  font-family: "Open Sans", sans-serif;
}

.uploader {
  /**
     * Just use plain upload field for now.
     */
}

.uploader .filename,
.uploader .action {
  display: none;
}

@media (min-width: 60em) {
  .featured-categories {
    margin-top: 1.58em;
  }
}

.featured-categories .embedded-list__container {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -2%;
  display: -ms-flexbox;
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 1 */
}

.featured-categories .embedded-list__container::after, .featured-categories .embedded-list__container::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.featured-categories .embedded-list__container::after {
  clear: both;
}

.featured-categories .embedded-list__container > div {
  width: 100%;
  margin: 0 0 1.58em 2%;
  float: left;
}

@media (min-width: 15em) {
  .featured-categories .embedded-list__container > div {
    width: 48%;
  }
}

@media (min-width: 62em) {
  .featured-categories .embedded-list__container > div {
    width: 31.33333%;
  }
}

@supports (display: grid) {
  .featured-categories .embedded-list__container {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-left: 0;
    display: grid;
    grid-gap: 0 3.16em;
    grid-template-columns: repeat(auto-fill, minmax(19em, 1fr));
  }
  .featured-categories .embedded-list__container::after, .featured-categories .embedded-list__container::before {
    display: none;
    -ms-flex: auto;
    flex: auto;
    content: none;
    line-height: normal;
  }
  .featured-categories .embedded-list__container::after {
    clear: none;
  }
  .featured-categories .embedded-list__container > div {
    width: auto;
    margin: 0;
  }
}

.featured-categories .embedded-list__item {
  padding: 0.79em;
  border-bottom: 1px solid #0071b3;
}

@supports (display: grid) {
  .featured-categories .embedded-list__item {
    padding-right: 0;
    padding-left: 0;
  }
}

.featured-category {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.395em 1.58em 0.395em 0.395em;
  text-decoration: none;
}

.featured-category__image {
  display: inline-block;
  width: 5em;
  padding: 0.395em;
}

.featured-category__desc {
  display: inline-block;
  width: 50%;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 0.395em;
}

.featured-category__name {
  margin: 0;
  color: #0071b3;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  -webkit-transition: 0.15s ease-in-out color;
  transition: 0.15s ease-in-out color;
}

.featured-category:focus .featured-category__name,
.featured-category:hover .featured-category__name {
  color: #3e98cc;
}

.featured-category__more {
  min-width: 3.16em;
  min-height: 3.16em;
  position: relative;
  display: inline-block;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  background-color: #328abd;
  color: white;
  text-align: center;
  -webkit-transition: 0.15s ease-in-out background;
  transition: 0.15s ease-in-out background;
}

.featured-category:focus .featured-category__more,
.featured-category:hover .featured-category__more {
  background-color: #3e98cc;
}

.featured-category__more svg {
  width: 12.5px;
  height: 18.75px;
  position: absolute;
  top: 50%;
  left: 50%;
  display: inline-block;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.banner {
  text-decoration: none;
}

@media (min-width: 38em) {
  .slider .banner {
    display: grid;
    grid-template-rows: 1fr auto 1fr;
  }
}

.banner:hover img, .banner:focus img {
  -webkit-filter: brightness(102%);
  filter: brightness(102%);
}

@media (max-width: 37.99em) {
  .banner:not([data-visible-at*=mobile]) {
    display: none;
  }
}

@media (min-width: 38em) and (max-width: 61.99em) {
  .banner:not([data-visible-at*=tablet]) {
    display: none;
  }
}

@media (min-width: 62em) {
  .banner:not([data-visible-at*=desktop]) {
    display: none;
  }
}

.banner__image picture,
.banner__image img {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 100%;
}

.slider .banner__image {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  grid-column: 1 / span 1;
  grid-row: 1 / span 3;
}

.slider .banner__image picture {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}

.slider .banner__image img {
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 200ms ease-in-out;
  transition: -webkit-transform 200ms ease-in-out;
  transition: transform 200ms ease-in-out;
  transition: transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
}

.banner__text {
  z-index: 2;
  grid-column: 1 / span 1;
  grid-row: 2;
  text-align: right;
}

@media (min-width: 38em) {
  .banner__text {
    padding: 0.79em 3.16em 0.79em 0.79em;
  }
}

.banner__text .card {
  background: #328abd;
  color: white;
  padding: 0.79em;
  text-align: left;
}

@media (min-width: 38em) {
  .banner__text .card {
    padding: 1.58em;
  }
}

@media (min-width: 38em) {
  .banner__text .card {
    display: inline-block;
    width: 25em;
    max-width: 100%;
    background: rgba(50, 138, 189, 0.9);
  }
}

.banner__text .heading {
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  text-transform: uppercase;
}

.fonts-loaded .banner__text .heading {
  font-family: "Open Sans", sans-serif;
}

.banner__text .read-more {
  margin: 2.37em 0 0 0;
}

.banner__text .read-more i {
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
  margin-left: 0.395em;
}

/**
 * Parent that contains all the nav elements
 */
.header-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: stretch;
  align-items: stretch;
  border-bottom: 1px solid #d8d8d8;
}

@media (max-width: 59.99em) {
  .header-row {
    background: whitesmoke;
  }
}

@media (min-width: 60em) {
  .header-row {
    position: relative;
  }
}

@media (max-width: 59.99em) {
  .header-row [class*='fa'] {
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    /* 1 */
  }
}

.sitenavigation-wrapper,
.header-row__container {
  -ms-flex-order: 1;
  order: 1;
}

@media (max-width: 59.99em) {
  .sitenavigation-wrapper,
  .header-row__container {
    display: inline-block;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
  }
}

@media (min-width: 60em) {
  .sitenavigation-wrapper,
  .header-row__container {
    width: 100%;
  }
}

.sitenavigation-wrapper.shopping-list-widget,
.header-row__container.shopping-list-widget {
  margin-left: auto;
}

.sitenavigation-wrapper {
  margin-right: auto;
}

.hamburger,
.header-row__trigger,
.header-row .topbar-navigation__link {
  display: block;
  padding: 0.955em 0.79em;
  border: 0;
  border-top: 3px solid transparent;
  border-bottom: 3px solid transparent;
  background: none;
  color: #333333;
  text-decoration: none;
}

.open .hamburger, .open
.header-row__trigger, .open
.header-row .topbar-navigation__link {
  background: white;
  border-top-color: whitesmoke;
}

@media (min-width: 60em) {
  .header-row__trigger--search,
  .hamburger {
    display: none;
  }
}

.header-row__dropdown {
  /**
     * 1. Use rem because such an item can have a hide-text class and so the font-size would be 0.
     */
}

@media (max-width: 59.99em) {
  .header-row__dropdown {
    position: absolute;
    z-index: 99;
    left: 0;
    display: none;
    width: 100%;
    background: white;
    -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    color: #333333;
  }
}

@media (max-width: 59.99em) {
  .open .header-row__dropdown {
    display: block;
  }
}

.header-row__dropdown i:not([class*='fa-caret']):not([class*='fa-angle']) {
  margin-right: 0.79em;
  margin-right: 0.79rem;
  /* 1 */
}

.sitenavigation {
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

@media (max-width: 59.99em) {
  .sitenavigation {
    position: fixed;
    z-index: 110;
    top: 0;
    left: 0;
    overflow: scroll;
    width: 20em;
    max-width: 80%;
    height: 100%;
    background: white;
    color: #333333;
    opacity: 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
    -webkit-transition: all ease-in-out 0.25s;
    transition: all ease-in-out 0.25s;
    visibility: hidden;
  }
}

.sitenavigation a,
.sitenavigation button {
  font-size: 0.875em;
}

@media (max-width: 59.99em) {
  .sitenavigation.is-expanded {
    -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    opacity: 1;
    -webkit-transform: none;
    transform: none;
    visibility: visible;
  }
}

.header-row .shopping-list-widget {
  -ms-flex-order: 3;
  order: 3;
  margin: 0;
  float: right;
}

.header-row .shopping-list-widget__trigger .cart-widget__visual {
  background: #0071b3;
}

.header-row .shopping-list-widget__trigger .cart-widget__content {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.header-row .topbar-navigation {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.header-row .topbar-navigation__item .label {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.header-row .topbar-navigation__link--sign-out {
  padding: 0.955em 0.79em;
}

.header-row .topbar-navigation--controls .topbar-navigation__item {
  display: inline-block;
}

.page-container {
  display: -ms-flexbox;
  display: flex;
  min-height: 100vh;
  -ms-flex-direction: column;
  flex-direction: column;
}

.page-main {
  max-width: 85rem;
  margin: 0 auto;
  width: 100%;
  padding: 0.79em;
  margin-bottom: 1.58em;
}

@media (min-width: 62em) {
  .page-main {
    padding-bottom: 1.58em;
  }
}

@media (min-width: 62em) {
  .page-main__content {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .page-main__content::after, .page-main__content::before {
    display: table;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    content: '';
    line-height: 0;
  }
  .page-main__content::after {
    clear: both;
  }
}

@media (min-width: 62em) {
  .page-sidebar {
    width: 25%;
    padding-right: 3.16em;
    float: left;
  }
}

@media (min-width: 62em) {
  .page-content--has-sidebar {
    width: 75%;
    float: left;
  }
}

.page-title:not(h1) {
  font-size: 1.4375em;
}

.page-subtitle {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding-bottom: 0.395em;
  border-bottom: 1px solid #a3a3a3;
}

.page-subtitle > * {
  margin-right: 0.395em;
}

.overlay {
  position: fixed;
  z-index: 101;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(51, 51, 51, 0.15);
  pointer-events: none;
  -webkit-transition: all ease-in-out 0.25s;
  transition: all ease-in-out 0.25s;
}

.overlay:not(.is-visible) {
  z-index: -1;
  opacity: 0;
  visibility: hidden;
}

.topbar {
  font-size: 0.75em;
  color: #615f63;
  letter-spacing: 0.05em;
  text-align: right;
  text-transform: uppercase;
  /**
     * Make sure to nest this item in topbar so the style is not applied
     * when this item is on mobile in the sidebar.
     */
}

@media (min-width: 62em) {
  .topbar {
    font-size: 0.75em;
  }
}

@media (max-width: 37.99em) {
  .topbar {
    display: none;
  }
}

.topbar > .container-fluid {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: start;
  justify-content: flex-start;
  padding: 0.79em;
  border-bottom: 1px solid #d8d8d8;
}

.topbar > .container-fluid > * {
  display: inline-block;
}

.topbar > .container-fluid > * + * {
  margin-left: 2.37em;
}

.topbar a:not(.oro-toolbar__link),
.topbar .oro-toolbar__content {
  text-decoration: none;
  color: #615f63;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .topbar a:not(.oro-toolbar__link),
  .topbar .oro-toolbar__content {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.topbar a:not(.oro-toolbar__link):focus, .topbar a:not(.oro-toolbar__link):hover,
.topbar .oro-toolbar__content:focus,
.topbar .oro-toolbar__content:hover {
  text-decoration: underline;
}

.topbar a:not(.oro-toolbar__link):hover, .topbar a:not(.oro-toolbar__link):focus,
.topbar .oro-toolbar__content:hover,
.topbar .oro-toolbar__content:focus {
  color: #0071b3;
}

.topbar .account {
  margin-left: auto;
}

.topbar .usp ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

@media (max-width: 61.99em) {
  .no-fouc .topbar .account, .no-fouc
  .topbar .controls {
    display: none;
  }
}

@media (max-width: 37.99em) {
  .no-fouc .topbar .switchers {
    display: none;
  }
}

.topbar .topbar-navigation-wrap {
  display: inline-block;
}

.oro-toolbar {
  position: relative;
  display: inline-block;
  margin-left: 2.37em;
  cursor: pointer;
  white-space: nowrap;
}

.oro-toolbar svg {
  width: 20px;
  height: 15px;
  margin: -0.1em 0.1975em 0 0;
  vertical-align: middle;
}

.sitenavigation .oro-toolbar {
  display: block;
  border-top: 1px solid #d8d8d8;
  margin: 1.58em 0 0 0;
}

.sitenavigation .oro-toolbar__content {
  padding: 0.79em;
  border-bottom: 1px solid #e3e3e3;
}

.oro-toolbar__dropdown {
  position: absolute;
  z-index: 100;
  right: 0;
  display: none;
  border: none;
  margin-top: 0.79em;
  background: whitesmoke;
  -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  text-align: left;
  text-transform: none;
}

.sitenavigation .oro-toolbar__dropdown {
  position: static;
  margin-top: 0;
}

.oro-toolbar.open .oro-toolbar__dropdown {
  display: block;
}

.oro-toolbar__dropdown .oro-toolbar__list {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.oro-toolbar__dropdown .oro-toolbar__list-item:not(:last-child) {
  border-bottom: 1px solid #d8d8d8;
}

.oro-toolbar__dropdown .oro-toolbar__link {
  text-decoration: none;
  display: block;
  padding: 0.79em 1.58em;
  text-decoration: none;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .oro-toolbar__dropdown .oro-toolbar__link {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.oro-toolbar__dropdown .oro-toolbar__link:focus, .oro-toolbar__dropdown .oro-toolbar__link:hover {
  text-decoration: underline;
}

.sitenavigation .oro-toolbar__dropdown .oro-toolbar__link {
  padding: 0.79em;
}

.oro-toolbar__dropdown .oro-toolbar__link--active {
  color: #333333;
  font-weight: 600;
}

.oro-toolbar__icon {
  display: inline-block;
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
}

.oro-toolbar.open .oro-toolbar__icon [class^='fa'] {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

/**
 * Navigation that contains items like sign in and account. On desktop desktop shown in the topbar
 * on mobile within the hamburger.
 *
 * 1. Specific selector so the 'topbar-navigation' on mobile isn't targeted.
 */
.topbar {
  /* 1 */
}

.topbar .topbar-navigation {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

@media (min-width: 38em) {
  .topbar .topbar-navigation {
    display: -ms-flexbox;
    display: flex;
  }
}

.topbar .topbar-navigation a {
  text-decoration: none;
  display: inline-block;
  padding: 0.79em;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .topbar .topbar-navigation a {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.topbar .topbar-navigation a:focus, .topbar .topbar-navigation a:hover {
  text-decoration: underline;
}

@media (min-width: 38em) {
  .topbar .topbar-navigation a {
    padding: 0;
  }
}

.topbar .topbar-navigation i {
  display: none;
}

.topbar .topbar-navigation .label {
  font-weight: normal;
}

@media (min-width: 38em) {
  .topbar .topbar-navigation__item + .topbar-navigation__item {
    margin-left: 1.58em;
  }
}

.middlebar {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: -ms-flexbox;
  display: flex;
  max-width: 85rem;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.79em 0;
  margin: 0 auto;
}

.middlebar::after, .middlebar::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.middlebar::after {
  clear: both;
}

.middlebar__left, .middlebar__middle, .middlebar__right {
  padding: 0 0.79em;
}

.middlebar__left {
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  text-align: center;
}

@media (min-width: 38em) {
  .middlebar__left {
    float: left;
    text-align: left;
  }
}

@media (min-width: 38em) {
  .middlebar__center {
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    float: left;
    text-align: center;
  }
}

@media (max-width: 59.99em) {
  .middlebar__center {
    display: none;
  }
}

.middlebar .logo {
  width: 240px;
  height: 50px;
}

.middlebar a.logo {
  display: inline-block;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

@media (max-width: 59.99em) {
  .middlebar__right {
    display: none;
  }
}

@media (min-width: 38em) {
  .middlebar__right {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -ms-flexbox;
    display: flex;
    max-width: 20em;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    -ms-flex-pack: end;
    justify-content: flex-end;
    float: right;
  }
  .middlebar__right::after, .middlebar__right::before {
    display: table;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    content: '';
    line-height: 0;
  }
  .middlebar__right::after {
    clear: both;
  }
}

/**
 * Wrapper of both categories and page nav wrappers.
 */
@media (min-width: 60em) {
  .main-menu-outer {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .main-menu-outer::after, .main-menu-outer::before {
    display: table;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    content: '';
    line-height: 0;
  }
  .main-menu-outer::after {
    clear: both;
  }
}

/**
 * First level nav container
 */
@media (min-width: 60em) {
  .main-menu {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .main-menu::after, .main-menu::before {
    display: table;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    content: '';
    line-height: 0;
  }
  .main-menu::after {
    clear: both;
  }
}

/**
 * Normalize parent of categories and pages.
 *
 * 1. Top bar links are on mobile in sitenavigation element.
 */
.main-menu__categories,
.main-menu__pages,
.sitenavigation .topbar-navigation {
  /* 1 */
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

/**
 * Horizontal nav align
 */
@media (min-width: 60em) {
  .main-menu__categories--level1,
  .main-menu__pages {
    float: left;
  }
}

.main-menu__categories--level1,
.main-menu__categories--level2,
.main-menu__categories--level3 {
  background: whitesmoke;
}

@media (min-width: 60em) {
  .main-menu__categories--level1,
  .main-menu__categories--level2,
  .main-menu__categories--level3 {
    border: 1px solid #e3e3e3;
    border-top: 0;
  }
}

.main-menu__categories--level1 {
  opacity: 0;
  -webkit-transition: all ease-in-out 0.25s;
  transition: all ease-in-out 0.25s;
  visibility: hidden;
}

@media (max-width: 59.99em) {
  .main-menu__categories--level1 {
    position: relative;
    max-height: 0;
    -webkit-box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.1);
  }
}

@media (min-width: 60em) {
  .main-menu__categories--level1 {
    position: absolute;
    z-index: 200;
    top: 100%;
    top: calc(100% + 1px);
    -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  }
}

.main-menu__categories--level1.is-animating {
  overflow: hidden;
}

.main-menu__categories--level1:not(.is-expanded) {
  overflow: hidden;
  min-height: 0 !important;
}

.main-menu__categories--level1.is-expanded:not(.is-animating) > li > a {
  visibility: hidden;
}

.main-menu__categories--level1[aria-hidden='false'] {
  opacity: 1;
  visibility: visible;
}

@media (max-width: 59.99em) {
  .main-menu__categories--level1[aria-hidden='false'] {
    max-height: none;
  }
}

@media (min-width: 60em) {
  .main-menu__categories--level1[aria-hidden='false'] {
    z-index: 200;
  }
}

.main-menu__categories--level2 {
  position: absolute;
  z-index: 200;
  top: 0;
  left: 100%;
  -webkit-transition: ease-in-out 0.25s transform;
  transition: ease-in-out 0.25s transform;
}

@media (min-width: 60em) {
  .main-menu__categories--level2 {
    top: 1px;
  }
}

@media (max-width: 59.99em) {
  .main-menu__categories--level2 {
    width: 100%;
    -webkit-box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.1);
    box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.1);
  }
}

@media (min-width: 60em) {
  .main-menu__categories--level1:not(.is-expanded):not(.is-animating) .main-menu__categories--level2 {
    visibility: hidden;
  }
}

.main-menu__categories--level2[aria-hidden='false'] {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

@media (max-width: 59.99em) {
  .main-menu__categories--level3 {
    overflow: hidden;
    max-height: 0;
    border: 0;
  }
}

@media (min-width: 60em) {
  .main-menu__categories--level3 {
    position: absolute;
    z-index: 200;
    top: 0;
    left: 100%;
    padding: 0.79em 2.37em;
    -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    opacity: 0;
    -webkit-transition: ease-in-out 0.25s all;
    transition: ease-in-out 0.25s all;
  }
}

@media (min-width: 60em) {
  .main-menu__link--level3:not([aria-expanded='true']):not(.is-animating) + .main-menu__categories--level3 {
    visibility: hidden;
  }
}

@media (max-width: 59.99em) {
  .main-menu__categories--level3[aria-hidden='false'] {
    max-height: none;
  }
}

@media (min-width: 60em) {
  .main-menu__categories--level3[aria-hidden='false'] {
    opacity: 1;
  }
}

/**
 * 1. No need for equal height on mobile.
 */
@media (max-width: 59.99em) {
  .main-menu__categories--level2,
  .main-menu__categories--level3,
  .main-menu__categories--level4 {
    min-height: 0 !important;
    /* 1 */
  }
}

/**
 * 1. Top bar links are on mobile in sitenavigation element.
 */
.main-menu__item--level1,
.sitenavigation .topbar-navigation__item {
  /* 1 */
}

@media (max-width: 59.99em) {
  .main-menu__item--level1,
  .sitenavigation .topbar-navigation__item {
    border-top: 1px solid #e3e3e3;
  }
}

.sitenavigation .topbar-navigation__item {
  /* 1 */
}

@media (max-width: 59.99em) {
  .sitenavigation .topbar-navigation__item:last-child {
    border-bottom: 1px solid #e3e3e3;
  }
}

.main-menu__item--level2:not(:last-child),
.main-menu__item--level3:not(:last-child) {
  border-bottom: 1px solid #e3e3e3;
}

@media (max-width: 59.99em) {
  .main-menu__item--level4 {
    border-top: 1px solid #e3e3e3;
  }
}

@media (min-width: 60em) {
  .main-menu__item--level4 {
    width: 30em;
  }
}

/**
 * A single page or category link
 */
.main-menu__link,
.sitenavigation .topbar-navigation__link {
  /* 2 */
  display: block;
  text-decoration: none;
}

/**
 * 1. Use rem so padding on side is the same as logo, content etc.
 * 2. Top bar links are on mobile in sitenavigation element.
 */
.main-menu__link--level1,
.sitenavigation .topbar-navigation__link {
  /* 2 */
  padding: 0.79rem;
  /* 1 */
  /**
     * 1. Horizontal nav align
     */
  /**
     * Arrow that gives hint for subnav.
     */
}

@media (max-width: 59.99em) {
  .main-menu__link--level1,
  .sitenavigation .topbar-navigation__link {
    position: relative;
  }
}

@media (min-width: 60em) {
  .main-menu__link--level1,
  .sitenavigation .topbar-navigation__link {
    font-weight: 600;
  }
}

@media (min-width: 60em) {
  .main-menu__link--level1,
  .sitenavigation .topbar-navigation__link {
    float: left;
    /* 1 */
  }
}

@media (min-width: 60em) {
  .main-menu__link--level1:focus, .main-menu__link--level1:hover,
  .sitenavigation .topbar-navigation__link:focus,
  .sitenavigation .topbar-navigation__link:hover {
    color: #0071b3;
  }
}

.main-menu__link--level1 .fa-angle-down,
.sitenavigation .topbar-navigation__link .fa-angle-down {
  margin-left: 0.1975em;
  vertical-align: baseline;
}

@media (max-width: 59.99em) {
  .main-menu__link--level1 .fa-angle-down,
  .sitenavigation .topbar-navigation__link .fa-angle-down {
    position: absolute;
    top: 50%;
    right: 0.79em;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

.main-menu__link--level1[aria-expanded='true'] .fa-angle-down,
.sitenavigation .topbar-navigation__link[aria-expanded='true'] .fa-angle-down {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

@media (max-width: 59.99em) {
  .main-menu__link--level1[aria-expanded='true'] .fa-angle-down,
  .sitenavigation .topbar-navigation__link[aria-expanded='true'] .fa-angle-down {
    -webkit-transform: rotate(180deg) translateY(50%);
    transform: rotate(180deg) translateY(50%);
  }
}

/**
 * 1. Context for arrow.
 */
.main-menu__link--level2,
.main-menu__link--level3,
.main-menu__link--level4 {
  position: relative;
  /* 1 */
  padding: 0.79rem;
}

@media (min-width: 60em) {
  .main-menu__link--level2,
  .main-menu__link--level3,
  .main-menu__link--level4 {
    width: 20em;
  }
}

.main-menu__link--level2:hover, .main-menu__link--level2:focus,
.main-menu__link--level3:hover,
.main-menu__link--level3:focus,
.main-menu__link--level4:hover,
.main-menu__link--level4:focus {
  background: #ededed;
  color: #333333;
}

.main-menu__link--level2[aria-expanded='true'],
.main-menu__link--level3[aria-expanded='true'],
.main-menu__link--level4[aria-expanded='true'] {
  position: relative;
  font-weight: 600;
}

.main-menu__link--level2 .fa-angle-left,
.main-menu__link--level2 .fa-angle-down,
.main-menu__link--level3 .fa-angle-left,
.main-menu__link--level3 .fa-angle-down,
.main-menu__link--level4 .fa-angle-left,
.main-menu__link--level4 .fa-angle-down {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.main-menu__link--level2 .fa-angle-left,
.main-menu__link--level3 .fa-angle-left,
.main-menu__link--level4 .fa-angle-left {
  left: 0.79em;
}

.main-menu__link--level2 .fa-angle-down,
.main-menu__link--level3 .fa-angle-down,
.main-menu__link--level4 .fa-angle-down {
  right: 0.79em;
  -webkit-transform: translateY(-50%) rotate(-90deg);
  transform: translateY(-50%) rotate(-90deg);
}

/**
 * 1. Icon positioning
 */
@media (max-width: 59.99em) {
  .main-menu__link--level2 {
    padding-right: 2.37em;
    /* 1 */
  }
}

@media (min-width: 60em) {
  .is-expanded .main-menu__link--level2[aria-expanded='false'] + ul {
    display: none;
  }
}

@media (max-width: 59.99em) {
  .main-menu__link--level3 .fa-angle-down {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media (max-width: 59.99em) {
  .main-menu__link--level3[aria-expanded='true'] .fa-angle-down {
    -webkit-transform: translateY(-50%) rotate(-180deg);
    transform: translateY(-50%) rotate(-180deg);
  }
}

@media (min-width: 60em) {
  .main-menu__link--level3[aria-expanded='true']::after {
    position: absolute;
    z-index: 200;
    top: 0;
    right: -1px;
    display: block;
    width: 1px;
    height: 100%;
    background: whitesmoke;
    content: '';
  }
}

.main-menu__link--level4 {
  padding: 0.79em 0.79em 0.79em 1.58em;
  text-transform: none;
}

@media (min-width: 60em) {
  .main-menu__link--level4 {
    display: inline-block;
    width: auto;
    padding: 0;
    margin-bottom: 0.79em;
  }
}

.main-menu__link--level4:hover, .main-menu__link--level4:focus {
  background: none;
  color: #328abd;
}

/**
 * Button element to go a  level back.
 */
.main-menu__button {
  width: 100%;
  padding-left: 2.37rem;
  border: 0;
  border-bottom: 1px solid #e3e3e3;
  background: none;
  text-align: left;
  text-transform: uppercase;
}

.main-menu__button:hover, .main-menu__button:focus {
  background: whitesmoke;
}

/**
 * Subcategory title on deepest level.
 */
@media (max-width: 59.99em) {
  .main-menu__heading {
    display: none;
  }
}

@media (min-width: 60em) {
  .main-menu__heading {
    border-bottom: 1px solid #0071b3;
    margin-bottom: 1.58em;
    font-weight: bold;
  }
}

.main-menu__heading a {
  color: #0071b3;
  text-decoration: none;
}

.main-menu__heading a:hover, .main-menu__heading a:focus {
  color: #328abd;
}

.page-footer {
  max-width: 85rem;
  margin: 0 auto;
  width: 100%;
  padding: 0 0.79em;
  margin-top: auto;
}

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

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .page-footer a {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.page-footer a:focus, .page-footer a:hover {
  text-decoration: underline;
}

.page-footer-container {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border: 1px solid #d8d8d8;
  background-color: whitesmoke;
}

.page-footer-container::after, .page-footer-container::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.page-footer-container::after {
  clear: both;
}

@media (min-width: 38em) {
  .page-footer-container {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0.79em 0;
  }
}

.page-footer__item {
  width: 100%;
  padding: 0.79em;
  float: left;
}

@media (min-width: 38em) {
  .page-footer__item {
    width: 50%;
    padding: 1.58em;
  }
}

@media (min-width: 62em) {
  .page-footer__item {
    width: 25%;
  }
}

.page-footer__item a {
  color: #0071b3;
}

.page-footer__item h3 {
  font-size: 1.125em;
  padding-bottom: 0.395em;
  border-bottom: 3px solid #d8d8d8;
  text-transform: uppercase;
}

@media (min-width: 38em) {
  .page-footer__item--faq {
    width: 66.66667%;
  }
}

@media (min-width: 62em) {
  .page-footer__item--faq {
    width: 31.25%;
  }
}

.page-footer__item--faq a {
  font-size: 0.875em;
  color: #333333;
}

.page-footer__item--faq a:focus, .page-footer__item--faq a:hover {
  color: #0071b3;
}

.page-footer__item--logo {
  max-width: 15em;
}

@media (min-width: 38em) {
  .page-footer__item--logo {
    width: 33.33333%;
    -ms-flex-item-align: end;
    align-self: flex-end;
  }
}

@media (min-width: 62em) {
  .page-footer__item--logo {
    width: 18.75%;
    float: right;
    text-align: right;
  }
}

.page-footer__links {
  font-size: 0.75em;
  padding: 0 0.79em;
  background-color: #d8d8d8;
}

@media (min-width: 62em) {
  .page-footer__links {
    font-size: 0.6875em;
  }
}

@media (min-width: 38em) {
  .page-footer__links {
    text-align: right;
  }
}

.page-footer__links a {
  color: #333333;
}

.page-footer__links a:focus, .page-footer__links a:hover {
  color: #0071b3;
}

.page-footer__links ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.page-footer__links li {
  display: inline-block;
}

.page-footer__links li a {
  display: block;
  padding: 0.79em;
}

.search-widget {
  position: relative;
  margin: 0.79em;
}

@media (min-width: 60em) {
  .search-widget {
    max-width: 20em;
    margin: 0 auto;
  }
}

.search-widget__input {
  z-index: 2;
  padding-right: 3.16em;
  margin-right: -1px;
}

@media (min-width: 60em) {
  .search-widget__input {
    min-width: 20em;
    max-width: 100%;
    background-color: whitesmoke !important;
    border-color: whitesmoke !important;
  }
}

.search-widget__submit {
  position: absolute;
  z-index: 3;
  top: 0;
  right: 0;
  bottom: 0;
  padding: 0 0.395em;
  border: 0;
  border-left: 1px solid transparent;
  background: transparent;
  border-radius: 0 0 0 0;
  color: #0071b3;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
}

.search-widget__submit i {
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
}

.search-widget__submit:hover i, .search-widget__submit:focus i {
  opacity: 0.75;
}

@media (min-width: 60em) {
  .quick-access-container {
    float: right;
  }
}

.quick-access a {
  display: block;
  text-decoration: none;
}

.quick-access__list {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

@media (min-width: 60em) {
  .quick-access__list {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.quick-access__item {
  display: block;
}

@media (min-width: 60em) {
  .quick-access__item {
    display: inline-block;
    padding: 0.79em;
  }
}

/**
 * 1. Use rem so padding on side is the same as logo, content etc.
 */
.quick-access__link {
  display: block;
}

@media (max-width: 59.99em) {
  .quick-access__link {
    padding: 0.79rem;
    /* 1 */
    border-top: 1px solid #e3e3e3;
  }
}

.breadcrumbs {
  font-size: 0.875em;
  margin-bottom: 1.58rem;
  color: #6e6b70;
  font-weight: 600;
  line-height: 2.37;
}

@media (max-width: 49.99em) {
  .breadcrumbs {
    display: none;
  }
}

.breadcrumbs a {
  text-decoration: none;
  display: inline-block;
  color: #6e6b70;
  font-weight: normal;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .breadcrumbs a {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.breadcrumbs a:focus, .breadcrumbs a:hover {
  text-decoration: underline;
}

.breadcrumbs a:hover, .breadcrumbs a:focus {
  color: #0071b3;
}

.breadcrumbs .fa-angle-right {
  margin: 0.67em 0.1975rem 0;
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
  vertical-align: top;
}

.breadcrumbs__item {
  max-width: 85rem;
  margin: 0 auto;
  display: block;
}

.shopping-list-widget {
  display: inline-block;
}

@media (min-width: 38em) {
  .shopping-list-widget {
    position: relative;
  }
}

.shopping-list-widget .header-row__trigger {
  padding: 0;
}

@media (min-width: 38em) {
  .shopping-list-widget .header-row__trigger {
    border: 0;
  }
}

@media (min-width: 38em) {
  .shopping-list-widget .header-row__dropdown {
    position: absolute;
    z-index: 100;
    right: 0;
    left: 0;
    border: none;
    background: whitesmoke;
    -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
    color: #333333;
    opacity: 0;
    text-align: left;
    -webkit-transition: all ease-in-out 0.25s;
    transition: all ease-in-out 0.25s;
    visibility: hidden;
  }
}

.shopping-list-widget .header-row__dropdown a {
  text-decoration: none;
}

@media (min-width: 38em) {
  .shopping-list-widget .header-row__dropdown::before {
    position: absolute;
    top: -1px;
    left: 1.58em;
    display: block;
    width: 0.5em;
    height: 0.5em;
    border-top: 1px solid transparent;
    border-left: 1px solid transparent;
    background: whitesmoke;
    content: '';
    -webkit-transform: rotate(45deg) translateY(-50%);
    transform: rotate(45deg) translateY(-50%);
  }
}

@media (min-width: 38em) {
  .shopping-list-widget.open .header-row__dropdown {
    opacity: 1;
    visibility: visible;
  }
}

.shopping-list-widget .loader-overlay {
  background: whitesmoke;
}

@media (min-width: 38em) {
  .shopping-list-widget .loader-overlay {
    background: #3e98cc;
  }
}

.shopping-list-widget .loader-frame::before {
  width: 1.75em;
  height: 1.75em;
  border-width: 3px;
}

.shopping-list-widget .loader-content {
  display: none;
}

/**
 * Cart icon
 */
.cart-widget {
  cursor: pointer;
}

@media (max-width: 37.99em) {
  .cart-widget {
    padding: 1.1425em 0.79em;
  }
}

@media (min-width: 38em) {
  .cart-widget {
    position: relative;
    color: white;
    text-align: center;
    text-transform: uppercase;
  }
}

@media (min-width: 38em) {
  .cart-widget:hover .cart-widget__arrow, .cart-widget:focus .cart-widget__arrow {
    background: #3e98cc;
  }
}

.cart-widget__list-trigger {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
  align-items: stretch;
}

.cart-widget__list-trigger::after, .cart-widget__list-trigger::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.cart-widget__list-trigger::after {
  clear: both;
}

@media (max-width: 37.99em) {
  .cart-widget__list-trigger {
    padding-right: 1.58em;
  }
}

@media (min-width: 38em) {
  .cart-widget__list-trigger {
    font-size: 0.875em;
  }
}

.cart-widget__list-trigger .fa-clipboard {
  position: relative;
  display: inline-block;
}

@media (min-width: 38em) {
  .cart-widget__list-trigger .fa-clipboard {
    display: none;
  }
}

.cart-widget__list-trigger .fa-clipboard .count {
  font-size: 0.75rem;
  position: absolute;
  top: 50%;
  left: 50%;
  font-style: normal;
  -webkit-transform: translate(-50%, -30%);
  transform: translate(-50%, -30%);
}

@media (min-width: 62em) {
  .cart-widget__list-trigger .fa-clipboard .count {
    font-size: 0.6875rem;
  }
}

.cart-widget__text {
  display: inline-block;
  width: 70%;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  padding: 0.79em 3.16em;
  background: #0071b3;
  font-weight: 700;
  -webkit-transition: background ease-in-out 0.15s;
  transition: background ease-in-out 0.15s;
  vertical-align: top;
}

@media (max-width: 37.99em) {
  .cart-widget__text {
    position: absolute !important;
    overflow: hidden !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    margin: -1px !important;
    clip: rect(0 0 0 0) !important;
  }
}

@media (min-width: 38em) {
  .shopping-list-widget.open .cart-widget__text, .cart-widget__text:hover, .cart-widget__text:focus {
    background: #328abd;
  }
}

.cart-widget__text strong {
  font-weight: 700;
}

.cart-widget__arrow {
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
}

@media (max-width: 37.99em) {
  .cart-widget__arrow {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: scale(0.75);
    transform: scale(0.75);
  }
}

@media (min-width: 38em) {
  .cart-widget__arrow {
    min-width: 3.16em;
    min-height: 3.16em;
    background: #328abd;
    float: right;
    -webkit-transition: background ease-in-out 0.15s;
    transition: background ease-in-out 0.15s;
  }
}

@media (min-width: 38em) {
  .shopping-list-widget.open .cart-widget__arrow, .cart-widget__arrow:hover, .cart-widget__arrow:focus {
    background: #3e98cc;
  }
}

@media (min-width: 38em) {
  .cart-widget__arrow .fa-angle-down {
    margin: auto;
    -webkit-filter: invert(1) brightness(100);
    filter: invert(1) brightness(100);
  }
}

.open .cart-widget__arrow .fa-angle-down {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

/**
 * Dropdown
 */
.shopping-list-dropdown__item {
  font-size: 0.875em;
  position: relative;
  padding: 0.79em;
}

.shopping-list-dropdown__item:nth-child(even) {
  background: #fcfcfc;
}

.shopping-list-dropdown__radio {
  position: absolute;
  margin-top: 0.79em;
}

.shopping-list-dropdown__link {
  display: block;
  margin-left: 2.37em;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
}

.shopping-list-dropdown__title {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.shopping-list-dropdown__title::after, .shopping-list-dropdown__title::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.shopping-list-dropdown__title::after {
  clear: both;
}

.shopping-list-dropdown__products {
  font-size: 0.75rem;
  display: block;
  color: #6e6b70;
  font-style: italic;
}

@media (min-width: 62em) {
  .shopping-list-dropdown__products {
    font-size: 0.75rem;
  }
}

.shopping-list-dropdown__products__item + .shopping-list-dropdown__products__item::before {
  margin: 0 0.1975em 0 -0.1em;
  content: '\002c';
}

.shopping-list-dropdown__title {
  display: -ms-flexbox;
  display: flex;
}

.shopping-list-dropdown__name {
  display: block;
  overflow: hidden;
  max-width: 50%;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  float: left;
  font-weight: 600;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.shopping-list-dropdown__details {
  -ms-flex-item-align: end;
  align-self: flex-end;
  padding-left: 0.79em;
  margin-left: auto;
}

.shopping-list-dropdown__desc {
  color: #6e6b70;
}

.shopping-list-dropdown__info {
  font-size: 0.875em;
  display: none;
  margin-top: 0.395em;
  color: #6e6b70;
  text-align: right;
}

.shopping-list-dropdown__info i {
  margin: -0.1em 0 0 0.395em;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}

.shopping-list-widget__create-btn {
  font-size: 0.875em;
  display: block;
  padding: 0.79em;
  background: #ededed;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
}

.shopping-list-widget__create-btn:hover, .shopping-list-widget__create-btn:focus {
  background: #e3e3e3;
  color: #333333;
}

.oro-datagrid .no-data {
  margin-top: 1.58em;
}

.oro-datagrid .grid-scrollable-container:not(:empty) + .no-data {
  display: none;
}

.oro-grid-table {
  width: 100%;
}

@media (max-width: 37.99em) {
  .oro-grid-table tr {
    display: block;
  }
}

.oro-grid-table td,
.oro-grid-table th {
  padding: 0.395em;
  vertical-align: top;
}

.oro-grid-table th {
  background: whitesmoke;
}

@media (max-width: 37.99em) {
  .oro-grid-table thead {
    display: none;
  }
}

.brands {
  margin: 4.74em 0 1.58em;
  text-align: center;
}

.brands .brand a {
  display: block;
  padding: 0 1.58em;
}

@media (min-width: 38em) {
  .nav-controls {
    -ms-flex-order: 2;
    order: 2;
    float: right;
  }
}

.account-navigation {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

@media (min-width: 38em) {
  .shopping-list-widget {
    -ms-flex-order: 3;
    order: 3;
    float: right;
  }
}

@media (min-width: 38em) {
  .account-navigation__item {
    display: inline-block;
    margin-left: 2.37em;
  }
}

.account-navigation__item a {
  font-size: 0.875em;
  display: block;
  text-decoration: none;
}

@media (max-width: 37.99em) {
  .account-navigation__item a {
    font-weight: 600;
    text-transform: uppercase;
  }
}

.account-navigation__item i {
  margin-right: 0.395em;
  color: #0071b3;
}

@media (max-width: 37.99em) {
  .account-navigation__item + .account-navigation__item a {
    border-top: 1px solid #a3a3a3;
  }
}

.sticky-panel {
  position: fixed;
  display: none;
}

.sticky-panel:empty {
  display: none;
}

.sticky-panel.has-content {
  z-index: 100;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  border-bottom: 1px solid #d8d8d8;
  background: white;
  -webkit-transition: -webkit-transform ease 0.25s;
  transition: -webkit-transform ease 0.25s;
  transition: transform ease 0.25s;
  transition: transform ease 0.25s, -webkit-transform ease 0.25s;
}

/**
 * Banners
 */
@media (max-width: 37.99em) {
  .frontpage__slider {
    margin: -0.79em -0.79em 0.79em;
  }
}

.frontpage__slider__holder {
  text-decoration: none;
}

.frontpage__slider__holder .owl-has-nav {
  padding: 0 !important;
}

/**
 * Embedded Products
 * 1) Equal height and force next line
 */
.embedded-products {
  margin-top: 2.37em;
}

.embedded-products .embedded-list__label {
  padding-bottom: 0.395rem;
  border-bottom: 1px solid #d8d8d8;
  color: #0071b3;
  text-transform: uppercase;
}

/**
 * 1) Equal height and force next line
 */
.embedded-products .embedded-list__container:not(.owl-loaded) {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: -2%;
  display: -ms-flexbox;
  display: flex;
  /* 1 */
  flex-wrap: wrap;
  /* 1 */
}

.embedded-products .embedded-list__container:not(.owl-loaded)::after, .embedded-products .embedded-list__container:not(.owl-loaded)::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.embedded-products .embedded-list__container:not(.owl-loaded)::after {
  clear: both;
}

.embedded-products .embedded-list__container:not(.owl-loaded) > div {
  width: 100%;
  margin: 0 0 1.58em 2%;
  float: left;
}

@media (min-width: 15em) {
  .embedded-products .embedded-list__container:not(.owl-loaded) > div {
    width: 48%;
  }
}

@media (min-width: 38em) {
  .embedded-products .embedded-list__container:not(.owl-loaded) > div {
    width: 31.33333%;
  }
}

@media (min-width: 62em) {
  .embedded-products .embedded-list__container:not(.owl-loaded) > div {
    width: 23%;
  }
}

@supports (display: grid) {
  .embedded-products .embedded-list__container:not(.owl-loaded) {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-left: 0;
    display: grid;
    grid-gap: 2.37em 1.58em;
    grid-template-columns: repeat(auto-fill, minmax(13em, 1fr));
  }
  .embedded-products .embedded-list__container:not(.owl-loaded)::after, .embedded-products .embedded-list__container:not(.owl-loaded)::before {
    display: none;
    -ms-flex: auto;
    flex: auto;
    content: none;
    line-height: normal;
  }
  .embedded-products .embedded-list__container:not(.owl-loaded)::after {
    clear: none;
  }
  .embedded-products .embedded-list__container:not(.owl-loaded) > div {
    width: auto;
    margin: 0;
  }
}

.small_banners {
  display: grid;
  grid-gap: 3.16em 1.58em;
  grid-template-columns: 1fr;
  margin-top: 2.37em;
}

@media (min-width: 38em) {
  .small_banners {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 37.99em) {
  .product-view {
    margin: -0.79em;
  }
}

@media (min-width: 38em) {
  .product-view {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .product-view::after, .product-view::before {
    display: table;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    content: '';
    line-height: 0;
  }
  .product-view::after {
    clear: both;
  }
}

.product-view__media {
  margin-bottom: 1.58em;
}

@media (min-width: 38em) {
  .product-view__media {
    width: 50%;
    float: left;
  }
}

@media (min-width: 50em) {
  .product-view__media {
    width: 40%;
  }
}

.product-view__main {
  margin-bottom: 1.58em;
}

@media (max-width: 37.99em) {
  .product-view__main {
    padding: 0 0.79rem;
  }
}

@media (min-width: 38em) {
  .product-view__main {
    width: 50%;
    padding-left: 1.58em;
    float: left;
  }
}

@media (min-width: 50em) {
  .product-view__main {
    width: 60%;
  }
}

@media (min-width: 62em) {
  .product-view__main {
    padding-left: 3.16em;
  }
}

.product-view__additional {
  clear: both;
}

@media (min-width: 50em) {
  .product-view__additional {
    width: 40%;
    float: left;
  }
}

.product-view__media .product-gallery__images {
  margin-bottom: 1.58em;
}

.product-view__media .product-gallery__images img {
  width: 100%;
}

@media (max-width: 37.99em) {
  .product-view__media .owl-stage-outer {
    border-bottom: 5px solid whitesmoke;
  }
}

@media (max-width: 37.99em) {
  .product-view__media .product-gallery__thumbnails {
    display: none !important;
  }
}

.product-view__heading {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 2px solid #0071b3;
  margin-bottom: 1.58em;
}

.product-view__heading .page-title {
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
}

.product-view__heading .sku,
.product-view__heading .inventory {
  display: inline-block;
  margin-bottom: 0.395em;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.product-view__heading .sku {
  font-weight: 600;
}

.product-view__heading .inventory,
.product-view__heading .delivery {
  color: #969696;
}

.product-view__heading .inventory {
  max-width: 35em;
  text-align: right;
}

.product-view__heading .inventory [class^='fa'] {
  margin: -0.15em 0 0 0.395em;
}

.product-view__heading .inventory:not(.inventory--out_of_stock) + .delivery {
  display: none;
}

.product-view__heading .delivery {
  font-size: 0.75em;
  width: 100%;
  max-width: unset !important;
  text-align: right;
}

@media (min-width: 62em) {
  .product-view__heading .delivery {
    font-size: 0.75em;
  }
}

.product-view__main .page-title {
  font-size: 1.4375em;
}

.product-view__prices {
  margin-bottom: 1.58em;
  text-align: right;
}

.product-view__prices .product-price {
  font-size: 1.125em;
}

.product-prices__table {
  display: inline-block;
}

.product-view__specification {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
}

.product-view__specification::after, .product-view__specification::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.product-view__specification::after {
  clear: both;
}

.line-item-form {
  text-align: right;
  /**
     * 1. No fouc
     */
}

.no-fouc .line-item-form {
  opacity: 0.25;
}

.line-item-form .direct-link,
.line-item-form .btn-group > .btn-group {
  display: none;
  /* 1 */
}

.line-item-form .shopping-lists {
  width: auto;
}

.line-item-form .btn-group {
  width: auto;
}

.line-item-form form {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: -0.79em;
}

.line-item-form form > * {
  margin: 0.79em;
}

.line-item-form-container {
  display: inline-block;
}

.product-view-quantity {
  display: -ms-inline-flexbox;
  display: inline-flex;
  text-align: left;
}

.product-view-quantity label > span:not(.validation-failed) {
  font-size: 0.875em;
  display: inline-block;
  margin-right: 0.79em;
  color: #969696;
}

.product-view-quantity input {
  width: 5em;
}

@media (min-width: 62em) {
  .product-view-quantity input {
    width: 15em;
    max-width: 100%;
  }
}

.product-view-quantity__unit,
.product-view-quantity__value {
  display: inline-block;
}

.is-single-unit .product-view-quantity__unit {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.product-view__description {
  font-size: 1.125em;
  margin: 0 0 3.16rem;
}

.product-view__attributes-container h2 {
  font-size: 1.25em;
  padding-bottom: 0.395em;
  border-bottom: 2px solid currentColor;
  color: #0071b3;
  text-transform: uppercase;
}

@media (max-width: 37.99em) {
  .product-view__attributes-container h2 {
    padding: 0 0.79rem;
  }
}

.product-view__attributes-container .attributes + .attributes {
  margin-top: 2.37em;
}

.product-view__attributes-container .attributes td,
.product-view__attributes-container .attributes th {
  width: 50%;
}

.category-title {
  padding-bottom: 0.395rem;
  border-bottom: 1px solid currentColor;
}

[id^='grid-frontend-product-search-grid-'] {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

[id^='grid-frontend-product-search-grid-']::after, [id^='grid-frontend-product-search-grid-']::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

[id^='grid-frontend-product-search-grid-']::after {
  clear: both;
}

@media (min-width: 78em) {
  [id^='grid-frontend-product-search-grid-'] > .filter-box {
    width: 20%;
    padding: 0.395em;
    background: whitesmoke;
    float: left;
  }
}

@media (min-width: 78em) {
  [id^='grid-frontend-product-search-grid-'] > .oro-datagrid {
    width: calc(80% - 1.58em);
    float: right;
  }
}

[id='shopping_list_view_container_content'] {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /**
     * 1. Show with JS.
     */
}

[id='shopping_list_view_container_content']::after, [id='shopping_list_view_container_content']::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

[id='shopping_list_view_container_content']::after {
  clear: both;
}

[id='shopping_list_view_container_content'] .collapse-view {
  margin-top: 1.58em;
}

[id='shopping_list_view_container_content'] .cart-list-empty {
  padding: 0.79em;
  background: whitesmoke;
  margin-top: 1.58em;
}

[id='shopping_list_view_container_content'] .shopping-list-view-options {
  display: none;
  /* 1 */
}

.shopping-list-owner {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
  align-items: baseline;
  margin-top: 0.79em;
}

.shopping-list-owner .label--full {
  width: auto;
  padding-right: 0.79em;
  margin: 0;
}

.shopping-list-owner > * {
  display: inline-block;
  visibility: baseline;
}

.cart-table {
  margin-top: 1.58em;
}

.cart-table td {
  vertical-align: baseline;
}

@media (max-width: 37.99em) {
  .cart-table td:first-child {
    display: block;
  }
}

@media (max-width: 37.99em) {
  .cart-table td:not(:first-child) {
    width: 33.33333%;
  }
}

.cart-table .line-item-price {
  padding-left: 0.79em;
  text-align: right;
}

.cart-table .line-item-price table {
  width: 100%;
}

.cart-table .line-item-price .label {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.product-item_in-cart {
  text-align: left;
}

@supports (display: grid) {
  .product-item_in-cart {
    display: grid;
    max-width: 30em;
    -ms-flex-align: center;
    align-items: center;
    grid-column-gap: 0.79em;
    grid-template-columns: 1fr 5fr;
  }
}

.product-item_in-cart > * {
  display: inline-block;
  max-width: 45%;
  vertical-align: top;
}

@supports (display: grid) {
  .product-item_in-cart > * {
    max-width: none;
  }
}

.product-item__desctiption div {
  font-size: 0.875em;
  color: #6e6b70;
}

.product-item__title_in-cart {
  margin-bottom: 0.395rem;
}

.product-item__image-holder_in-cart img {
  width: 100%;
}

.cart-table__form {
  display: -ms-flexbox;
  display: flex;
  margin: -0.1975em;
}

.cart-table__form > * {
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 0.1975em;
  vertical-align: top;
}

.cart-table__form .product__qty-input__count-option {
  width: 5em;
}

.cart-table__form .product__qty-input__count-option input {
  /* stylelint-disable property-no-vendor-prefix  */
  -moz-appearance: textfield;
  /* stylelint-enable */
}

.cart-table__form .product__qty-input__count-option input::-webkit-outer-spin-button, .cart-table__form .product__qty-input__count-option input::-webkit-inner-spin-button {
  margin: 0;
  /* stylelint-disable property-no-vendor-prefix  */
  -webkit-appearance: none;
  /* stylelint-enable */
}

.order-checkout-widget {
  margin-top: 1.58em;
}

.order-checkout-widget .order-builder-clear-btn {
  margin-bottom: 1.58em;
  float: left;
}

.order-checkout-widget .order-builder-clear-btn .widget-content > div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -0.1975em;
}

.order-checkout-widget .order-builder-clear-btn .btn {
  font-size: 0.75em;
}

@media (min-width: 62em) {
  .order-checkout-widget .order-builder-clear-btn .btn {
    font-size: 0.75em;
  }
}

.order-checkout-widget .order-builder-clear-btn .btn-group {
  margin: 0.1975rem;
}

.order-checkout-widget .shipping-list-view-total-container {
  font-size: 1.125em;
  padding: 0.79em 1.58em;
  background: whitesmoke;
  float: right;
}

.order-checkout-widget .shipping-list-view-total-container td {
  text-align: right;
}

.order-checkout-widget .shipping-list-view-total-container td:last-child {
  padding-left: 0.79em;
}

.order-checkout-widget .order-checkout-widget__total {
  font-size: 1.125em;
}

.order-checkout-widget .order-checkout-widget__total:last-child {
  font-weight: 600;
}

.order-checkout-widget .order-checkout-widget__col {
  margin-top: 1.58em;
  clear: right;
  float: right;
}

/**
 * Checkout global
 */
.checkout__form__back i {
  margin-right: 0.395em;
}

.checkout__form__req-text {
  margin-top: 0.79em;
}

.checkout__form__back {
  margin-top: 0.79em;
}

/**
 * Checkout Progress Bar
 */
.checkout-sidebar {
  margin-bottom: 2.37em;
}

@media (max-width: 37.99em) {
  .checkout-sidebar {
    display: none;
  }
}

.checkout-navigation {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.checkout-navigation::after, .checkout-navigation::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.checkout-navigation::after {
  clear: both;
}

@media (max-width: 61.99em) {
  .checkout-navigation {
    border-top: 0.25em solid #ededed;
  }
}

@media (min-width: 62em) {
  .checkout-navigation {
    border-left: 0.25em solid #ededed;
    margin-left: 0.79em;
  }
}

.checkout-navigation__step {
  position: relative;
}

@media (max-width: 61.99em) {
  .checkout-navigation__step {
    width: 20%;
    padding: 0 0.395em 0.395em;
    float: left;
    text-align: center;
  }
}

@media (min-width: 62em) {
  .checkout-navigation__step {
    padding-left: 1.58em;
  }
}

@media (min-width: 62em) {
  .checkout-navigation__step + .checkout-navigation__step {
    margin-top: 1.58em;
  }
}

.checkout-navigation__step .checkout-navigation__title {
  font-size: 0.75em;
}

@media (min-width: 62em) {
  .checkout-navigation__step .checkout-navigation__title {
    font-size: 0.6875em;
  }
}

@media (min-width: 62em) {
  .checkout-navigation__step .checkout-navigation__title {
    font-size: 0.875em;
  }
}

.checkout-navigation__title {
  font-size: 1em;
  margin: 0;
}

@media (min-width: 38em) {
  .checkout-navigation__title {
    font-size: 1.125em;
  }
}

.checkout-navigation__icon {
  display: inline-block;
  width: 2em;
  height: 2em;
  background: #d8d8d8;
  border-radius: 100%;
  color: white;
  font-weight: 600;
  line-height: 1.9em;
  text-align: center;
}

@media (max-width: 61.99em) {
  .checkout-navigation__icon {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
  }
}

@media (min-width: 62em) {
  .checkout-navigation__icon {
    position: absolute;
    z-index: 10;
    top: 0;
    left: -0.125em;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

.checkout-navigation__icon i {
  -webkit-filter: invert(1) brightness(100);
  filter: invert(1) brightness(100);
}

.checkout-navigation__icon--current {
  background: #0071b3;
}

.checkout-navigation__icon--complete {
  background-color: #81b964;
}

.checkout-navigation__content {
  margin-top: 0.79em;
  text-align: left;
}

@media (max-width: 37.99em) {
  .checkout-navigation__content {
    position: absolute !important;
    overflow: hidden !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    margin: -1px !important;
    clip: rect(0 0 0 0) !important;
  }
}

/**
 * Checkout Content
 */
.checkout__body {
  padding: 0.79em;
  background: whitesmoke;
}

.checkout__form fieldset {
  margin-top: 0.79em;
}

.checkout__form .label {
  font-weight: 600;
}

.checkout__title {
  font-size: 1.25em;
}

/**
 * Checkout Summary
 */
.checkout-order-summary {
  padding: 0.79em;
  border: 1px solid #d8d8d8;
  margin-top: 1.58em;
  background: white;
}

.checkout-order-summary .init .collapse-view__container {
  display: none;
}

.checkout-order-summary .init.expanded .collapse-view__container {
  display: block;
}

.checkout-order-summary__header {
  position: relative;
  padding-right: 1.58em;
  padding-left: 6.32em;
}

.checkout-order-summary__icon-group .collapse-view__trigger {
  position: absolute;
  top: 50%;
  left: 0.395em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.checkout-order-summary__icon-group .badge-square {
  position: absolute;
  top: 50%;
  left: 2.37em;
  display: -ms-flexbox;
  display: flex;
  width: 2.37em;
  height: 2.37em;
  background: #0071b3;
  border-radius: 100%;
  color: white;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.checkout-order-summary__icon-group .badge-square i {
  -ms-flex-item-align: center;
  align-self: center;
  margin: auto;
}

.checkout-order-summary__edit-link {
  text-decoration: none;
  position: absolute;
  top: 0;
  right: 0;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .checkout-order-summary__edit-link {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.checkout-order-summary__edit-link:focus, .checkout-order-summary__edit-link:hover {
  text-decoration: underline;
}

.checkout-order-summary__edit-link span {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.checkout-order-summary__title {
  font-size: 1em;
  margin: 0;
}

.checkout-order-summary__content {
  padding-top: 0.79em;
  border-top: 1px solid #d8d8d8;
  margin-top: 0.79em;
}

.checkout-order-summary__content .oro-grid-table__edit {
  padding-top: 2.37em;
}

.checkout-order-summary__content .validation-error {
  display: block;
  margin-bottom: 0.79em;
}

.checkout-order-summary__grid,
.checkout-order-summary__table,
.checkout-order-summary__price-table {
  width: 100%;
}

/**
 * Summary grid
 */
.checkout-order-summary__grid {
  font-size: 0.875em;
}

.checkout-order-summary__grid th {
  padding: 0.395em;
}

.checkout-order-summary__grid .scrollable-content {
  overflow-x: scroll;
}

@media (max-width: 37.99em) {
  .checkout-order-summary__grid .checkout-order-summary__price-line:first-child {
    position: absolute !important;
    overflow: hidden !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    border: 0 !important;
    margin: -1px !important;
    clip: rect(0 0 0 0) !important;
  }
}

.checkout-order-summary__grid tbody tr[data-scrollable-content-body] > td {
  padding: 0.395em 0.1975em;
}

.checkout-order-summary__grid tbody tr[data-scrollable-content-body] + tr {
  border-top: 1px solid #d8d8d8;
}

.checkout-order-summary__grid h3 {
  margin: 0;
}

.checkout-order-summary__grid-head {
  background: #e3e3e3;
}

.checkout-order-summary__table > tbody > tr > td {
  vertical-align: top;
}

/**
 * Totals
 */
.checkout-order-summary__price-table th:last-child,
.checkout-order-summary__price-table td:last-child {
  text-align: right;
}

.checkout-total-container {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-top: 0.79em;
  font-weight: 600;
}

.checkout-total-container::after, .checkout-total-container::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.checkout-total-container::after {
  clear: both;
}

.checkout-total-container .totals-container {
  float: right;
}

.checkout-total-container .vat-notice {
  font-size: 0.875em;
  font-weight: normal;
  text-align: right;
}

.checkout-total-container td {
  text-align: right;
}

.checkout-total-container td:last-child {
  padding-left: 0.79em;
}

.order-checkout-widget__total {
  font-size: 1.125em;
}

.order-checkout-widget__col .btn-group.full .btn {
  font-size: 1.125em;
}

.order-checkout-widget__col .btn-group.full .icons-holder-text {
  padding-right: 1.58em;
  padding-left: 1.58em;
}

/**
 * Payment
 */
.checkout__form__payment-container {
  margin-top: 0.79em;
}

.checkout__form__payment-container table {
  font-size: 0.875em;
  width: 100%;
}

.checkout__form__payment-container table td {
  padding: 0;
}

.checkout__form__payment-container table td:first-child {
  padding-right: 0.79em;
}

.customer-profile > * + * {
  margin-top: 2.37em;
}

.customer-profile__controls {
  font-size: 1rem;
  display: inline-block;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
}

.customer-profile__controls ul {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.reset-password-form form,
.forgot-password-form form,
.register-form form,
[id='form-login'] {
  padding: 0.79em;
  background: whitesmoke;
  max-width: 30em;
}

.reset-password-form form .form-row:last-child,
.forgot-password-form form .form-row:last-child,
.register-form form .form-row:last-child,
[id='form-login'] .form-row:last-child {
  margin-top: 2.37em;
}

[id='form-login'] .btn {
  font-size: 1em;
  width: 100%;
}

.register-form form {
  max-width: 50em;
}

@media (min-width: 38em) {
  .register-form .form-row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 1.58em;
  }
  .register-form .form-row::after, .register-form .form-row::before {
    display: table;
    -ms-flex: 1 1 100%;
    flex: 1 1 100%;
    content: '';
    line-height: 0;
  }
  .register-form .form-row::after {
    clear: both;
  }
}

@media (min-width: 38em) {
  .register-form .form-row > .label,
  .register-form .form-row > .label + * {
    margin: 0;
    float: left;
  }
}

@media (min-width: 38em) {
  .register-form .form-row > .label {
    width: 40%;
    padding-right: 1.58em;
  }
}

@media (min-width: 38em) {
  .register-form .form-row > .label + * {
    width: 60%;
  }
}

@media (min-width: 38em) {
  .register-form .form-row .select2-container {
    -ms-flex-item-align: start;
    align-self: flex-start;
  }
}

/**
 * See /customer/product/quick-add/
 */
.quick-order {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.quick-order::after, .quick-order::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.quick-order::after {
  clear: both;
}

.quick-order > * {
  margin-bottom: 2.37em;
}

@media (min-width: 62em) {
  .quick-order-add {
    width: 66.66667%;
    padding-right: 4.74em;
    float: left;
  }
}

.quick-order-add .add-list-item {
  font-size: 0.75rem;
  margin-top: 1.58em;
  text-align: center;
}

@media (min-width: 62em) {
  .quick-order-add .add-list-item {
    font-size: 0.75rem;
  }
}

@media (min-width: 62em) {
  .quick-order-import,
  .quick-order-copy-paste {
    width: 33.33333%;
    float: left;
  }
}

.quick-order-add__row + .quick-order-add__row {
  margin-top: 0.79em;
}

.quick-order-add__row-content {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  position: relative;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}

.quick-order-add__row-content::after, .quick-order-add__row-content::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.quick-order-add__row-content::after {
  clear: both;
}

@media (max-width: 37.99em) {
  .quick-order-add__row-content {
    padding-bottom: 0.395em;
    border-bottom: 1px solid #d8d8d8;
  }
}

@media (max-width: 61.99em) {
  .quick-order-add__row-content {
    padding-right: 2.37em;
  }
}

.quick-order-add__row-content > * {
  margin-right: 2%;
  margin-right: 0.395em;
  margin-bottom: 0.79em;
  float: left;
}

/**
 * 1. Context for select2.
 */
.quick-order-add__col {
  position: relative;
  /* 1 */
}

.quick-order-add__col label {
  display: block;
  margin-bottom: 0.395em;
}

.quick-order-add__col .select2-container,
.quick-order-add__col select {
  width: 100%;
}

.quick-order-add__product,
.quick-order-add__subtotal {
  width: 98%;
  width: calc(100% - 0.395em);
}

.quick-order-add__quantity,
.quick-order-add__unit {
  width: 48%;
  width: calc(50% - 0.395em);
}

@media (min-width: 38em) {
  .quick-order-add__product {
    width: 45%;
  }
}

@media (min-width: 38em) {
  .quick-order-add__unit,
  .quick-order-add__subtotal {
    width: 18%;
    width: calc(20% - 0.395em);
  }
}

@media (min-width: 38em) {
  .quick-order-add__quantity {
    width: 13%;
    width: calc(15% - 0.395em);
  }
}

@media (min-width: 38em) {
  .quick-order-add__subtotal {
    margin-right: 0;
  }
}

.quick-order-add__remove-row {
  position: absolute;
  right: 0;
  bottom: 0.79em;
  width: auto;
}

@media (min-width: 62em) {
  .quick-order-add__remove-row {
    right: -2.37em;
  }
}

.quick-order-add__buttons-wrapper {
  margin-top: 1.58em;
}

.quick-order-import__link i {
  margin-right: 0.79rem;
}

.quick-order-import__content {
  margin-top: 1.58em;
}

.quick-order-copy-paste__buttons {
  margin-top: 1.58em;
}

.quick-order-import-validation .oro-multiselect-holder {
  position: relative;
  padding-right: 1.58em;
}

.quick-order-import-validation .oro-multiselect-holder > div {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: between;
  justify-content: between;
  margin-left: -0.395em;
}

.quick-order-import-validation .oro-multiselect-holder .form-row {
  margin-left: 0.395em;
}

.quick-order-import-validation .oro-multiselect-holder .removeRow {
  font-size: 1.25em;
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.quick-order-import-validation .oro-multiselect-holder .removeRow:hover, .quick-order-import-validation .oro-multiselect-holder .removeRow:focus {
  color: #0071b3;
}

.quick-order-import-validation .add-list-item {
  text-align: center;
}

.quick-order-add__buttons {
  text-align: right;
  /**
     *  1. That's how we select the action buttons on this page. :'(
     */
}

.quick-order-add__buttons .row-fluid > .widget-content > div {
  /* [1] */
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: -0.1975em;
  /* stylelint-disable selector-max-compound-selectors */
  /* stylelint-enable */
}

.quick-order-add__buttons .row-fluid > .widget-content > div > .btn-group {
  /* [1] */
  margin: 0.1975em;
}

.quick-order-add__buttons .row-fluid > .widget-content > div a {
  font-size: 0.75rem;
}

@media (min-width: 62em) {
  .quick-order-add__buttons .row-fluid > .widget-content > div a {
    font-size: 0.75rem;
  }
}

.quick-order-add__buttons .widget-content.btn-group {
  -ms-flex-order: 2;
  order: 2;
}

.customer-oq__item {
  margin: 0 2.37em 1.58em 0;
  vertical-align: top;
}

.customer-oq__item td {
  padding: 0 0.395em 0.395em 0.395em;
}

.customer-oq__item td:first-child {
  padding-left: 0;
}

.customer-oq__item td:last-child {
  padding-right: 0;
}

.customer-oq__item h3 {
  font-size: 1em;
  margin: 0;
}

.customer-oq__item .oro-grid-table-properties {
  font-size: 0.875em;
  margin-top: 0.79em;
}

.customer-oq__order-info__title {
  font-weight: bold;
}

.customer-oq__order-info__title::after {
  content: '\003a';
}

.customer-oq__order-info table {
  width: auto;
}

.order-checkout-widget__container {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.order-checkout-widget__container::after, .order-checkout-widget__container::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.order-checkout-widget__container::after {
  clear: both;
}

.order-checkout-widget__table {
  float: right;
}

.order-checkout-widget__table th,
.order-checkout-widget__table td {
  padding: 0 0.395em;
}

.order-checkout-widget__table th:first-child,
.order-checkout-widget__table td:first-child {
  padding-left: 0;
}

.order-checkout-widget__table th:last-child,
.order-checkout-widget__table td:last-child {
  padding-right: 0;
}

.address-list .map-unknown {
  display: none !important;
}

.address-list__item > * {
  display: block;
  margin-bottom: 0.79em;
}

.address-list__button {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
  display: none;
}

.address-list__button:hover, .address-list__button:focus {
  background: whitesmoke;
  color: #333333;
}

.address-list__button i::before {
  margin: 0 0.395em;
}

.account__container {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: stretch;
  align-items: stretch;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.account__container::after, .account__container::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.account__container::after {
  clear: both;
}

@supports (display: grid) {
  .account__container {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
  }
  @media (min-width: 38em) {
    .account__container {
      grid-gap: 0.79em;
    }
  }
}

@media (max-width: 37.99em) {
  .account__container {
    margin: -0.79em -0.79em 0.79em;
  }
}

.account__container .account__content {
  width: 100%;
}

@supports (display: grid) {
  .account__container .account__content {
    float: none;
    grid-column: 1 / 4;
  }
}

@media (min-width: 50em) {
  .account__container .account__content {
    width: 66.66667%;
  }
  @supports (display: grid) {
    .account__container .account__content {
      width: auto;
      grid-column: 1 / 3;
    }
  }
}

.account__container .account__form {
  width: 100%;
}

@media (min-width: 50em) {
  .account__container .account__form {
    width: 33.33333%;
  }
  @supports (display: grid) {
    .account__container .account__form {
      width: auto;
      grid-column: 3 / 3;
    }
  }
}

/**
 * Banners
 */
.account__banners {
  margin-bottom: 1.58em;
}

.account__banner__holder .owl-has-nav {
  padding: 0 !important;
}

/**
 * Owl Carousel v2.2.1
 * Copyright 2013-2017 David Deutsch
 * Licensed under  ()
 */
/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1;
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

.owl-carousel .owl-stage {
  position: relative;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -ms-touch-action: pan-Y;
  touch-action: pan-Y;
}

.owl-carousel .owl-stage::after {
  display: block;
  height: 0;
  clear: both;
  content: '.';
  line-height: 0;
  visibility: hidden;
}

.owl-carousel .owl-stage-outer {
  position: relative;
  overflow: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.owl-carousel .owl-item {
  position: relative;
  min-height: 1px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  float: left;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.owl-carousel .owl-item img {
  display: block;
  width: 100%;
}

.owl-carousel .owl-nav.disabled,
.owl-carousel .owl-dots.disabled {
  display: none;
}

.owl-carousel .owl-nav .owl-prev,
.owl-carousel .owl-nav .owl-next,
.owl-carousel .owl-dot {
  cursor: hand;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-loaded {
  display: block;
}

.owl-carousel.owl-loading {
  display: block;
  opacity: 0;
}

.owl-carousel.owl-hidden {
  opacity: 0;
}

.owl-carousel.owl-refresh .owl-item {
  visibility: hidden;
}

.owl-carousel.owl-drag .owl-item {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.owl-carousel.owl-grab {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.owl-carousel.owl-rtl {
  direction: rtl;
}

.owl-carousel.owl-rtl .owl-item {
  float: right;
}

/* No Js */
.no-js .owl-carousel {
  display: block;
}

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
  animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  -webkit-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out;
}

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item .owl-lazy {
  opacity: 0;
  -webkit-transition: opacity 400ms ease;
  transition: opacity 400ms ease;
}

.owl-carousel .owl-item img.owl-lazy {
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.owl-theme.owl-loaded.owl-has-nav {
  padding: 0 2.37em;
}

.owl-theme.owl-loaded .owl-nav {
  margin-top: 0.79em;
  -webkit-tap-highlight-color: transparent;
  text-align: center;
}

.owl-theme.owl-loaded .owl-nav.disabled {
  display: none;
}

.owl-theme .owl-prev,
.owl-theme .owl-next {
  padding: 0;
  border: 0;
  background: none;
  color: #333333;
  -webkit-transition: ease-in-out color 0.1s;
  transition: ease-in-out color 0.1s;
  font-size: 0.875em;
  position: absolute;
  top: 50%;
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.79em;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: ease-in-out 0.25s;
  transition: ease-in-out 0.25s;
}

.owl-theme .owl-prev:hover, .owl-theme .owl-prev:focus,
.owl-theme .owl-next:hover,
.owl-theme .owl-next:focus {
  color: #0071b3;
}

.owl-theme .owl-prev:hover, .owl-theme .owl-prev:focus,
.owl-theme .owl-next:hover,
.owl-theme .owl-next:focus {
  background: whitesmoke;
  color: white;
}

.owl-theme .owl-prev.disabled,
.owl-theme .owl-next.disabled {
  background: none;
  cursor: auto;
  opacity: 0.25;
  outline: 0;
}

.owl-theme .owl-prev {
  left: 0;
}

.owl-theme .owl-next {
  right: 0;
}

.owl-theme .owl-dots {
  margin-top: 0.79em;
  -webkit-tap-highlight-color: transparent;
  text-align: center;
}

.owl-theme .owl-dot {
  display: inline-block;
}

.owl-theme .owl-dot span {
  display: block;
  width: 0.79em;
  height: 0.79em;
  margin: 0 0.395em;
  background: #ededed;
  border-radius: 30px;
  cursor: pointer;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
}

.owl-theme .owl-dot:hover span {
  background: #d8d8d8;
}

.owl-theme .owl-dot.active span {
  background: #a3a3a3;
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.owl-item p {
  max-width: unset !important;
}

.owl-carousel .animated {
  -webkit-animation-duration: 1000ms;
  animation-duration: 1000ms;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.owl-carousel .owl-animated-in {
  z-index: 0;
}

.owl-carousel .owl-animated-out {
  z-index: 1;
}

.owl-carousel .fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

/**
 * Wrapper
 *
 * 1) Override input padding.
 */
.select2-container {
  position: relative;
  display: inline-block;
  padding: 0;
  /* 1 */
  border: 1px solid #d8d8d8;
  background: white;
  border-radius: 0;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  color: #4d4d4d;
  -webkit-transition: color ease 0.25s, background ease 0.25s, border ease 0.25s;
  transition: color ease 0.25s, background ease 0.25s, border ease 0.25s;
}

.select2-container:hover {
  border-color: #a3a3a3;
}

.filter-item .select2-container {
  display: none;
}

label.validation-error + .select2-container,
label.validation-error + script + .select2-container {
  border-color: #d0011d;
}

.select2-container-active:not(.select2-dropdown-open) {
  border-color: #6e6b70;
  -webkit-box-shadow: 0 0 3px 3px #83bffc;
  box-shadow: 0 0 3px 3px #83bffc;
}

.select2-choices {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

/**
 * Disabled state
 */
.select2-container-disabled {
  background: whitesmoke;
  border-color: #d8d8d8;
  color: #d8d8d8;
}

.select2-container-disabled * {
  cursor: not-allowed;
}

.select2-container-disabled:focus, .select2-container-disabled:hover {
  background: whitesmoke;
  border-color: #d8d8d8;
  color: #d8d8d8;
}

.select2-container-disabled .select2-choice .select2-arrow {
  background: whitesmoke;
  background: -webkit-gradient(linear, left top, right top, from(rgba(245, 245, 245, 0.05)), color-stop(40%, whitesmoke));
  background: linear-gradient(to right, rgba(245, 245, 245, 0.05), whitesmoke 40%);
  /* 1 */
}

/**
 * Selected record
 *
 * 1. Decrease line-height to have the same height as an input. Bit of a magic number.
 */
.select2-choice {
  position: relative;
  display: block;
  padding: 0.79em 3.16em 0.79em 0.79em;
  color: #4d4d4d;
  line-height: 1;
  /* 1 */
  overflow-x: hidden;
  text-decoration: none;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-choice:hover {
  color: #4d4d4d;
}

.select2-choice span {
  display: block;
}

.select2-choice .select2-arrow {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  display: inline-block;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0 0.79em 0 0.79em;
  background: white;
  /* 1 */
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0.05)), color-stop(40%, white));
  background: linear-gradient(to right, rgba(255, 255, 255, 0.05), white 40%);
  /* 1 */
}

.select2-choice .select2-arrow::before {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 16.012084592145015% 96.81528662420382%;
  width: 17px;
  height: 10px;
  margin: auto;
  content: '';
}

.select2-dropdown-open .select2-choice .select2-arrow::before {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

/**
 * Helpers
 */
.select2-offscreen,
.select2-offscreen:focus {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

.select2-display-none {
  display: none;
}

/**
 * Dropdown box
 *
 * 1) Above rounded select field.
 */
.select2-drop {
  position: absolute;
  z-index: 9999;
  top: 100%;
  width: 100%;
  border: 1px solid #d8d8d8;
  margin-top: -2px;
  background: white;
  border-radius: 0 0 0 0;
  -webkit-box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  box-shadow: 1px 1px 2px 0 rgba(0, 0, 0, 0.1);
  color: #333333;
}

.select2-drop-auto-width {
  width: auto;
}

/**
 * To do: what does this?
 */
.select2__result-entry-info {
  color: #6e6b70;
  font-style: italic;
}

.select2-highlighted .select2__result-entry-info {
  color: #0071b3;
}

/**
 * Overlay
 */
.select2-drop-mask,
.select2-drop-undermask {
  position: absolute;
  z-index: 9998;
  top: 0;
  left: 0;
}

.select2-container .select2-choice div b {
  display: block;
  width: 100%;
  height: 100%;
}

/**
 * Search
 */
.select2-search {
  position: relative;
  z-index: 10;
  display: inline-block;
  width: 100%;
  border-bottom: 1px solid #d8d8d8;
}

.select2-search input {
  display: block;
  width: 100%;
  border: 0;
}

.select2-container-multi {
  border: 0;
}

/**
 * Search close button
 *
 * 1) Don't use it (for now).
 */
.select2-search-choice-close {
  position: absolute;
  z-index: 10;
  top: 0;
  right: 0;
  display: none;
  height: 100%;
  padding: 0 0.395em;
  background: white;
  cursor: pointer;
}

.select2-search-choice-close::after {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  background-position: 100% 5.194805194805195%;
  width: 16px;
  height: 16px;
  content: '';
}

/**
 * Search Results
 */
.select2-results {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
  position: relative;
  max-height: 10em;
  overflow-x: hidden;
  overflow-y: auto;
}

.select2-results .select2-result-sub {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.select2-results .select2-result-label {
  display: block;
  padding: 0.79em;
  text-decoration: none;
}

.select2-results li {
  font-size: 0.875em;
  cursor: pointer;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
}

.select2-results li.hide, .select2-results li.select2-disabled {
  display: none;
}

.select2-results li.select2-highlighted {
  background: #ededed;
}

.select2-results li em {
  color: #6e6b70;
}

.select2-results li.select2-more-results,
.select2-results li div {
  padding: 0.395rem 0.79em;
}

.select2-results li.select2-more-results {
  font-style: italic;
  text-align: center;
}

.select2-results li + li {
  border-top: 1px solid #d8d8d8;
}

.select2-results .select2-results-dept-1 .select2-result-label {
  padding-left: 0.79em;
}

.select2-results .select2-results-dept-1 .select2-result-label.accordion-toggle {
  padding-left: 1.185em;
}

.select2-results .select2-results-dept-2 .select2-result-label {
  padding-left: 1.58em;
}

.select2-results .select2-results-dept-2 .select2-result-label.accordion-toggle {
  padding-left: 1.975em;
}

.select2-results .select2-results-dept-3 .select2-result-label {
  padding-left: 2.37em;
}

.select2-results .select2-results-dept-3 .select2-result-label.accordion-toggle {
  padding-left: 2.765em;
}

.select2-results .select2-results-dept-4 .select2-result-label {
  padding-left: 3.16em;
}

.select2-results .select2-results-dept-4 .select2-result-label.accordion-toggle {
  padding-left: 3.555em;
}

.select2-results .select2-results-dept-5 .select2-result-label {
  padding-left: 3.95em;
}

.select2-results .select2-results-dept-5 .select2-result-label.accordion-toggle {
  padding-left: 4.345em;
}

.select2-results .select2-results-dept-6 .select2-result-label {
  padding-left: 4.74em;
}

.select2-results .select2-results-dept-6 .select2-result-label.accordion-toggle {
  padding-left: 5.135em;
}

.select2-results .select2-results-dept-7 .select2-result-label {
  padding-left: 5.53em;
}

.select2-results .select2-results-dept-7 .select2-result-label.accordion-toggle {
  padding-left: 5.925em;
}

.select2-results .select2-no-results,
.select2-results .select2-searching,
.select2-results .select2-selection-limit {
  padding: 0.1975em 0.395em;
  border-top: 1px solid #d8d8d8;
  font-style: italic;
}

/**
 * Breadcrumbs
 */
.select2-breadcrumbs:empty {
  display: none;
}

/**
 * General
 */
.ui-priority-primary,
.ui-priority-secondary {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
}

.ui-priority-primary:hover, .ui-priority-primary:focus,
.ui-priority-secondary:hover,
.ui-priority-secondary:focus {
  background: whitesmoke;
  color: #333333;
}

.ui-priority-primary i::before,
.ui-priority-secondary i::before {
  margin: 0 0.395em;
}

.ui-button-icon-only {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
}

.ui-button-icon-only:hover, .ui-button-icon-only:focus {
  background: whitesmoke;
  color: #333333;
}

.ui-button-icon-only i::before {
  margin: 0 0.395em;
}

.ui-button-icon-only .ui-icon::before {
  margin-top: -0.25em;
}

.ui-draggable-handle {
  cursor: move;
}

.ui-corner-all {
  padding: 0.395em;
  text-decoration: none;
}

.widget-actions-section {
  margin: 0 -0.395em;
}

.widget-actions-section .action-wrapper {
  padding: 0.395em;
}

.ui-dialog-buttonpane {
  font-size: 0.875em;
  margin-top: 1.58rem;
}

.ui-dialog-buttonpane .form-actions,
.ui-dialog-buttonpane .widget-actions {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.ui-dialog-buttonpane .form-actions::after, .ui-dialog-buttonpane .form-actions::before,
.ui-dialog-buttonpane .widget-actions::after,
.ui-dialog-buttonpane .widget-actions::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.ui-dialog-buttonpane .form-actions::after,
.ui-dialog-buttonpane .widget-actions::after {
  clear: both;
}

.ui-dialog-buttonpane .pull-right {
  float: right;
}

.ui-state-disabled {
  cursor: not-allowed !important;
  opacity: 0.5;
}

.ui-state-disabled:hover, .ui-state-disabled:focus {
  color: inherit;
}

.ui-helper-reset {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.ui-helper-reset label,
.ui-helper-reset a {
  display: inline-block;
}

.ui-icon {
  display: inline-block;
  background-image: url("../../../../bundles/madiafrontend/gameworld/svg/dist/css/sprite.css-e6e1f497.svg");
  background-repeat: no-repeat;
  margin-top: -0.15em;
  color: transparent;
  vertical-align: middle;
}

.ui-icon-circle-close,
.ui-icon-closethick {
  background-position: 100% 5.194805194805195%;
  width: 16px;
  height: 16px;
}

.ui-icon-extlink {
  background-position: 58.53658536585366% 32.89473684210526%;
  width: 20px;
  height: 20px;
}

.ui-icon-newwin {
  background-position: 89.02439024390245% 78.94736842105263%;
  width: 20px;
  height: 20px;
}

.ui-icon-circle-triangle-w {
  background-position: 46.34146341463415% 13.157894736842104%;
  width: 20px;
  height: 20px;
}

.ui-icon-circle-triangle-e {
  background-position: 46.34146341463415% 13.157894736842104%;
  width: 20px;
  height: 20px;
}

.ui-icon-check {
  background-position: 13.414634146341463% 14.239482200647249%;
  width: 20px;
  height: 15px;
}

.ui-multiselect-menu {
  /**
     * 1. Override some really helpfull inline styles...
     */
}

.ui-multiselect-menu .ui-multiselect-header .ui-helper-reset {
  display: none;
}

.ui-multiselect-menu input[type='search'] {
  font-size: 0.875em;
  width: 100% !important;
  /* 1 */
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/**
 * Dialog
 */
.ui-dialog {
  position: fixed !important;
  z-index: 100;
  top: 50% !important;
  left: 50% !important;
  max-width: 90%;
  height: auto !important;
  max-height: 90%;
  padding: 0.79em;
  background: white;
  overflow-y: scroll;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

@media (max-width: 37.99em) {
  .ui-dialog {
    width: 90% !important;
  }
}

@media (min-width: 38em) {
  .ui-dialog.matrix-order-widget--dialog {
    width: auto !important;
    max-width: 90%;
  }
}

.ui-dialog-titlebar {
  margin-bottom: 0.79em;
}

.ui-dialog-titlebar-close {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
}

.ui-dialog-titlebar-close:hover, .ui-dialog-titlebar-close:focus {
  background: whitesmoke;
  color: #333333;
}

.ui-dialog-titlebar-close i::before {
  margin: 0 0.395em;
}

.ui-dialog-title {
  font-size: 1.25em;
  margin: 0 0 0.79rem;
  font-weight: 600;
  letter-spacing: 0.025em;
  position: relative;
}

.fonts-loaded .ui-dialog-title {
  font-family: "Open Sans", sans-serif;
}

.ui-dialog-titlebar-buttonpane {
  position: absolute;
  top: 0.395em;
  right: 0.395em;
}

/**
 * Overlay
 */
.ui-widget-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #333333;
  opacity: 0.5;
}

/**
 * TODO: Refactor everything;
 */
.ui-datepicker {
  display: none;
  width: 20em;
  max-width: 100%;
  padding: 0.395em 0 0 0;
  border: none;
  background: whitesmoke;
  -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
}

.ui-datepicker-header {
  position: relative;
  padding: 0.1975em 0;
  margin-bottom: 0.79em;
}

.ui-datepicker .ui-datepicker-title {
  padding: 0 3.16em;
  text-align: center;
}

.ui-datepicker-prev,
.ui-datepicker-next {
  position: absolute;
  padding: 0;
  cursor: pointer;
}

.ui-datepicker-prev {
  left: 0;
}

.ui-datepicker-next {
  right: 0;
}

.ui-datepicker table {
  width: 100%;
  margin: 0 0 0.4em;
  border-collapse: collapse;
  font-size: 0.9em;
}

.ui-datepicker th {
  padding: 0.1975em;
  background: whitesmoke;
  font-weight: 600;
  text-align: center;
}

.ui-datepicker td a,
.ui-datepicker td span {
  display: block;
  padding: 0.1975em;
  text-align: center;
  text-decoration: none;
}

.ui-datepicker td .ui-state-hover {
  background: whitesmoke;
}

.ui-datepicker td .ui-state-active {
  background: #0071b3;
  color: white;
  font-weight: 600;
}

.ui-datepicker td .ui-state-active.ui-state-hover {
  background: #0071b3;
}

.ui-datepicker-today {
  background: #a3a3a3;
  font-weight: 600;
}

.ui-datepicker-today a {
  color: white;
}

.ui-datepicker-today a.ui-state-hover {
  background: #969696;
}

/*
    === REFACTOR BELOW ===
 */
.ui-datepicker .ui-datepicker-title select {
  font-size: 0.875em;
  margin: 0.1975em;
}

.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
  width: 45%;
}

.ui-datepicker .ui-datepicker-buttonpane {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0 0.2em;
  border-right: 0;
  border-bottom: 0;
  border-left: 0;
  margin: 0.7em 0 0;
  background-image: none;
}

.ui-datepicker .ui-datepicker-buttonpane::after, .ui-datepicker .ui-datepicker-buttonpane::before {
  display: table;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
  content: '';
  line-height: 0;
}

.ui-datepicker .ui-datepicker-buttonpane::after {
  clear: both;
}

.ui-datepicker .ui-datepicker-buttonpane button {
  overflow: visible;
  width: auto;
  padding: 0.2em 0.6em 0.3em;
  margin: 0.5em 0.2em 0.4em;
  cursor: pointer;
  float: right;
}

.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current {
  float: left;
}

/* with multiple calendars */
.ui-datepicker.ui-datepicker-multi {
  width: auto;
}

.ui-datepicker-multi .ui-datepicker-group {
  float: left;
}

.ui-datepicker-multi .ui-datepicker-group table {
  width: 95%;
  margin: 0 auto 0.4em;
}

.ui-datepicker-multi-2 .ui-datepicker-group {
  width: 50%;
}

.ui-datepicker-multi-3 .ui-datepicker-group {
  width: 33.3%;
}

.ui-datepicker-multi-4 .ui-datepicker-group {
  width: 25%;
}

.ui-datepicker-multi .ui-datepicker-group-last .ui-datepicker-header,
.ui-datepicker-multi .ui-datepicker-group-middle .ui-datepicker-header {
  border-left-width: 0;
}

.ui-datepicker-multi .ui-datepicker-buttonpane {
  clear: left;
}

.ui-datepicker-row-break {
  width: 100%;
  clear: both;
  font-size: 0;
}

/**
 * TODO: Refactor everything;
 */
.ui-timepicker-wrapper {
  z-index: 100;
  width: 8em;
  height: 10em;
  padding: 0.395em 0 0 0;
  border: none;
  margin: 0;
  background: whitesmoke;
  -webkit-box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  box-shadow: 3px 3px 2px 2px rgba(51, 51, 51, 0.15);
  outline: none;
  overflow-y: auto;
}

.ui-timepicker-wrapper.ui-timepicker-with-duration {
  width: 13em;
}

.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-30,
.ui-timepicker-wrapper.ui-timepicker-with-duration.ui-timepicker-step-60 {
  width: 11em;
}

.ui-timepicker-list {
  padding: 0;
  margin: 0;
  list-style: none;
}

.ui-timepicker-duration {
  margin-left: 5px;
  color: #888;
}

.ui-timepicker-list:hover .ui-timepicker-duration {
  color: #888;
}

.ui-timepicker-list li {
  font-size: 0.875em;
  text-decoration: none;
  display: block;
  padding: 0.395em;
  border: 0;
  color: #333333;
  cursor: pointer;
  -webkit-transition: ease-in-out all 0.15s;
  transition: ease-in-out all 0.15s;
}

@supports ((-webkit-text-decoration-color: transparent) or (text-decoration-color: transparent)) {
  .ui-timepicker-list li {
    text-decoration: underline;
    -webkit-text-decoration-color: transparent;
    text-decoration-color: transparent;
  }
}

.ui-timepicker-list li:focus, .ui-timepicker-list li:hover {
  text-decoration: underline;
}

.ui-timepicker-list .ui-timepicker-selected:hover,
.ui-timepicker-list li:hover,
li.ui-timepicker-selected {
  padding-left: 0.5925em;
  color: #0071b3;
}

.ui-timepicker-list li:hover .ui-timepicker-duration,
li.ui-timepicker-selected .ui-timepicker-duration {
  color: #ccc;
}

.ui-timepicker-list li.ui-timepicker-disabled,
.ui-timepicker-list li.ui-timepicker-disabled:hover,
.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled {
  color: #888;
  cursor: default;
}

.ui-timepicker-list li.ui-timepicker-disabled:hover,
.ui-timepicker-list li.ui-timepicker-selected.ui-timepicker-disabled {
  background: #f2f2f2;
}

.cc-window {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: baseline;
  align-items: baseline;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0.79em 1.58em 0 1.58em;
  background: #d8d8d8;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}

@media (min-width: 86.58em) {
  .cc-window {
    padding-right: calc(50% - 41.71rem);
    padding-left: calc(50% - 41.71rem);
  }
}

.cc-window,
.cc-revoke {
  position: fixed;
  z-index: 99;
  overflow: hidden;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.cc-window.cc-static {
  position: static;
}

.cc-banner.cc-top {
  top: 0;
  right: 0;
  left: 0;
}

.cc-banner.cc-bottom {
  right: 0;
  bottom: 0;
  left: 0;
}

.cc-message,
.cc-compliance {
  margin-bottom: 0.79em;
}

.cc-message {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.cc-compliance {
  margin-left: 0.79em;
}

.cc-btn {
  font-size: 0.875em;
  position: relative;
  display: inline-block;
  max-width: 100%;
  padding: 0.79rem 1.58rem;
  border: 1px solid #a3a3a3;
  background: white;
  border-radius: 0;
  color: #333333;
  cursor: pointer;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
  text-decoration: none;
  /* 1 */
  text-transform: uppercase;
  -webkit-transition: all ease-in-out 0.15s;
  transition: all ease-in-out 0.15s;
  vertical-align: middle;
}

.cc-btn:hover, .cc-btn:focus {
  background: whitesmoke;
  color: #333333;
}

.cc-btn i::before {
  margin: 0 0.395em;
}

.cms-grid,
.cms-block {
  margin-bottom: 1.58em;
}

.cms-grid p:not(.heading):not(.title),
.cms-block p:not(.heading):not(.title) {
  max-width: unset;
}

.cms-grid table,
.cms-block table {
  width: 100%;
  text-align: left;
  width: 100%;
  margin-bottom: 0.79em;
}

.cms-grid table th,
.cms-grid table td,
.cms-block table th,
.cms-block table td {
  padding: 0.395em 0.79em;
}

.cms-grid table thead th,
.cms-block table thead th {
  background: whitesmoke;
}

.cms-grid table thead th a,
.cms-block table thead th a {
  text-decoration: none;
}

.cms-grid table thead th a:hover, .cms-grid table thead th a:focus,
.cms-block table thead th a:hover,
.cms-block table thead th a:focus {
  color: currentColor;
}

.hide,
.hidden {
  display: none !important;
}

.visuallyhidden {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  margin: -1px !important;
  clip: rect(0 0 0 0) !important;
}

@media (max-width: 23.99em) {
  .hidden-xs {
    display: none !important;
  }
}

@media (max-width: 37.99em) {
  .hidden-sm {
    display: none !important;
  }
}

@media (min-width: 38em) {
  .hidden-md {
    display: none !important;
  }
}

@media (min-width: 62em) {
  .hidden-lg {
    display: none !important;
  }
}

@media (min-width: 62em) {
  .hidden-on-desktop {
    display: none !important;
  }
}

.visible-xs {
  display: none;
}

@media (max-width: 37.99em) {
  .visible-xs {
    display: block !important;
  }
}

.underlined {
  text-decoration: underline;
}

.hide-text {
  display: inline-block;
  overflow: hidden !important;
  font-size: 0 !important;
  line-height: 0;
  vertical-align: middle;
}

@media (min-width: 38em) and (max-width: 61.99em) {
  .va-t_md {
    vertical-align: top;
  }
}

.text-uppercase {
  text-transform: uppercase;
}

.text-center {
  text-align: center;
}

.text-center > * {
  margin-right: auto;
  margin-left: auto;
}

.text-right {
  text-align: right;
}

.text-uppercase {
  text-transform: uppercase;
}

.blue {
  color: #0071b3;
}
