/* globals */
/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  display: block;
}
/**
 * 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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main {
  /* 1 */
  display: block;
}
/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}
/**
 * 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
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}
/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}
/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}
/**
 * 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 style in Android 4.3-.
 */
dfn {
  font-style: italic;
}
/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}
/**
 * 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;
}
/* Embedded content
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block;
}
/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}
/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}
/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}
/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}
/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
}
/**
 * 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;
}
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}
/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}
/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}
/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * 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 and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[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 IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details,
menu {
  display: block;
}
/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}
/* Scripting
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block;
}
/**
 * Add the correct display in IE.
 */
template {
  display: none;
}
/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}
/* panel.less */
/* modal.less */
/* panel item headers to be used to unify item-summary headers */
/* pills.less (global) */
/* copy-text-block.less */
/* decision.less -- boxes on a panel */
/* radio-button.less (global) */
/* accessories.less */
/* expiration.less */
/* faceplate.less */
/* field-group.less */
/* field-container.less */
/* field-group__autocomplete.less */
/* field-inline.less (cart editing) */
/* field-msg.less */
/* giftcard.less */
/* item-display.less (cart/confirmation) */
/* item-container.less */
/* item-abridged.less (cart/confirmation) */
/* item-expanded.less */
/* item-totals.less */
/* language-picker.less */
/* modal.less */
/* nav.less */
/* promo.less */
/* break points for media queries */
/* Visually hide text but make available for screen readers */
/* don't use display:none */
/* This class is DEPRECATED in favor of ada-offscreen */
.text-hide {
  position: absolute !important;
  z-index: -9999;
  left: -9999px;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
}
/* hide radio input visibly -- retains default browser fn */
/* DO NOT USE visibility: hidden or display: none */
/* high contrast mode is a bad name */
/* this really means it will not display colors at all (IE) */
/* but it will display borders */
/* global util class */
.off-screen {
  position: absolute !important;
  z-index: -9999;
  left: -9999px;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
}
/* should pick one across apps */
.center-text,
.center {
  text-align: center;
}
/* For hiding a div when being printed */
@media screen {
  .no-screen {
    display: none;
  }
}
/* For hiding a div when viewed on the screen */
@media print {
  .no-print {
    display: none;
  }
}
/* holder of buttons.. maybe other CTA type elements */
/* TODO: find a better place for this? */
.control-container {
  overflow: auto;
  /* prevent margin collapse */
  padding-top: 2%;
  padding-bottom: 1%;
  clear: both;
}
.control-container.control-container--small {
  margin: 6% 0;
}
.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
/* Make a container scrollable */
.scroll-container {
  overflow: hidden;
  min-height: 48px;
  -webkit-overflow-scrolling: touch;
}
/* Used by ScrollbarSizeListener */
.scrollbar-size-listener {
  width: 100px;
  height: 100px;
  position: absolute;
  top: -10000px;
  overflow: scroll;
  -ms-overflow-style: scrollbar;
}
/* default themes */
/* if you mess with these..
 * test on different screen sizes */
/* colors */
/* end colors */
/* fonts */
/* update these if same for both buttons */
/* only use these if they must be different */
/* end fonts */
/* icon variables */
/* end icon variables */
/* define gradients as background-image */
/* always pass a solid color bg for fallback for contrast functions */
/* important: theme = as_link will use global link styles instead of button styles */
/* these disabled styles DO NOT match selfie ... but storefront does not use them
 * so they may need to be fixed - it is hard to say how this will work out for skinning without seeing it
 * this makes them not really customizable.. do they need to be?
 * default disabled styles are inherently not great for AA a11y
 */
/*
---
name: Button
category: Components
---

Buttons can be used with `<a>`, `<button>`, and `<input>` elements.

Types of buttons:
- Default: Standard button
- Primary: Provides extra visual weight and identifies the primary action in a set of buttons
- Secondary: Blah blah blah....
- Link: A button in link form

```btn.html
<button class="btn">Default Button</button>
<br>
<button class="btn" disabled>Disabled Default Button</button>
<br>
<button class="btn btn--small">Small Default Button</button>
<br>
<button class="btn btn--primary">Primary Button</button>
<br>
<button class="btn btn--secondary">Secondary Button</button>
<br>
<button class="btn btn-link">Link Button</button>
```
*/
.btn {
  border-radius: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  margin: 0 auto;
  min-width: 100%;
  max-width: 100%;
  padding: 15px;
  -webkit-transition: background 400ms;
  transition: background 400ms;
}
@media screen and (-ms-high-contrast: active) {
  .btn {
    border: 1px solid black !important;
  }
}
.btn.btn:disabled {
  cursor: not-allowed;
}
@media screen and (max-width: 520px) {
  .btn {
    min-width: 100%;
  }
}
.btn.btn--small {
  /* smaller font size build in - maybe move? */
  font-size: 0.875rem !important;
  width: auto;
  min-width: 30%;
  max-width: 50%;
  padding: 10px;
}
.btn.btn--primary {
  font-family: sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: inherit;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
  background: #0D5687;
  color: #ffffff;
  border: none;
}
.btn.btn--primary:active,
.btn.btn--primary:focus,
.btn.btn--primary:hover {
  background: #0c4d79;
  color: #ffffff;
  border: none;
}
.btn.btn--primary.btn.btn--primary:disabled {
  background: #646464;
  background-image: none;
  opacity: 0.7;
  border-color: #242424;
}
.btn.btn--secondary {
  font-family: sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: inherit;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
  background: #ffffff;
  color: #0D5687;
  border: 1px solid #0D5687;
}
.btn.btn--secondary:active,
.btn.btn--secondary:focus,
.btn.btn--secondary:hover {
  background: #ffffff;
  color: #0D5687;
  border: 1px solid #0D5687;
}
.btn.btn--secondary.btn.btn--secondary:disabled {
  background: #ffffff;
  background-image: none;
  opacity: 0.7;
  border-color: #d9d9d9;
}
.btn.btn_tertiary {
  font-family: sans-serif;
  font-size: 1.125rem;
  font-weight: bold;
  font-style: normal;
  letter-spacing: 0.4px;
  text-decoration: initial;
  text-transform: normal;
  font-variant: inherit;
  background: none;
  color: #0D5687;
  border: none;
}
.btn.btn_tertiary_inline {
  display: inline;
  min-width: auto;
  margin: 0;
  padding: 0;
}
.btn__icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  vertical-align: bottom;
  margin: 0 5px;
}
.btn-link {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border: none;
  cursor: pointer;
  /* important for fast clickers */
  background-color: transparent;
  color: #0D5687;
  border-width: 0;
  border-style: none;
  border-color: inherit;
  padding: 0;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: underline;
  text-transform: none;
  font-variant: inherit;
}
.btn-link:active,
.btn-link:hover,
.btn-link:focus {
  background-color: transparent;
  color: #0c4d79;
  border-width: 0;
  border-style: none;
  border-color: inherit;
  padding: 0;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: underline;
  text-transform: none;
  font-variant: inherit;
}
.btn-link.btn-link--center {
  display: block;
  margin: 0 auto;
}
.btn--sticky {
  position: sticky;
  bottom: 0;
}
a.btn {
  border-radius: 5px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  margin: 0 auto;
  min-width: 100%;
  max-width: 100%;
  padding: 15px;
  -webkit-transition: background 400ms;
  transition: background 400ms;
}
.btn-widget--primary {
  font-family: sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: inherit;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
  background: #0D5687;
  color: #ffffff;
  border: none;
}
.btn-widget--primary:active,
.btn-widget--primary:focus,
.btn-widget--primary:hover {
  background: #0c4d79;
  color: #ffffff;
  border: none;
}
.btn-widget--primary.btn-widget--primary:disabled {
  background: #646464;
  background-image: none;
  opacity: 0.7;
  border-color: #242424;
}
/**
 * everything not defined here will just inherit
 * we can add more if we need to be more granular
 * and potentially add guards/mixins in specific component less
 */
/**
 * link styles are in their own file
 * imported here and in btn
 */
/* page headers */
/* subheaders */
/* sub-subheaders
 * don't really expect headers this small or smaller */
html,
body {
  color: #333;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  letter-spacing: normal;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
  text-rendering: optimizelegibility;
}
p,
li {
  font-size: 1rem;
}
/* h1 should never be in our visual markup
 * if someone adds one in a t&c or similarly injected html
 * make sure it is styled here
 */
h1,
h2 {
  color: #333;
  font-family: sans-serif;
  font-size: 1.5rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
}
h3 {
  color: #333;
  font-family: sans-serif;
  font-size: 1.125rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
}
/* we should never need lower than h4 in our visual markup
 * if someone adds one in a t&c or similarly injected html
 * make sure it is styled here
 */
h4,
h5,
h6 {
  color: #333;
  font-family: sans-serif;
  font-size: 1.1rem;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: initial;
  text-transform: none;
  font-variant: inherit;
}
/* this is temporary due to the disabled fields */
/* in delivery */
/* iOS user agent styles */
input:disabled,
textarea:disabled {
  opacity: 1;
  -webkit-opacity: 1;
  color: #333;
  -webkit-text-fill-color: #333;
}
/* ie10 & ie11 user agent styles */
/* double arrow fix */
select::-ms-expand {
  display: none;
}
/* these should always have a pointer */
button,
select,
[role='dialog'],
[role='button'],
[role='radio'] {
  cursor: pointer;
}
div[role='radiogroup'] > label {
  cursor: pointer;
}
/* override normalizer - no default browser appearance for any buttons */
button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
/* holder of buttons.. maybe other CTA type elements */
.control-container {
  margin: 10% 0;
}
.control-container.control-container--small {
  margin: 6% 0;
}
.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.label {
  font-size: 80%;
  font-weight: 700;
  text-transform: uppercase;
  color: #525252;
}
.card-container {
  max-width: 480px;
  width: 90%;
  margin: 0 auto;
  padding: 5%;
}
.card-container h2 {
  text-align: center;
}
.dialog {
  background: #525252;
  color: #fff;
  text-align: center;
  z-index: 3;
  position: fixed;
  bottom: 0;
  max-height: 40%;
  width: 600px;
  border-radius: 5px;
  max-width: 100%;
}
@media (max-width: 649px) {
  .dialog {
    width: 100%;
  }
}
.dialog__close {
  z-index: 4;
  cursor: pointer;
  background: transparent;
  border: none;
  color: #fff;
}
.dialog__close__btn {
  z-index: 5;
  cursor: pointer;
  background: transparent;
  border: none;
  color: #fff;
  position: absolute;
  right: 0;
  font-size: 1.5em;
}
.dialog__text,
.dialog__link {
  margin: 1em;
  padding: 1em;
}
.dialog a {
  color: #fff;
}
.dialog a:visited {
  color: #fff;
}
.dialog a:active,
.dialog a:hover {
  color: #cccccc;
}
.constrain-to-viewport-width {
  max-width: 100vw;
}
@media (min-width: 650px) {
  .constrain-to-viewport-width {
    max-width: calc(100vw -  15em );
  }
}
/* animations */
@-webkit-keyframes loading-spinner {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
@keyframes loading-spinner {
  to {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}
.loading-spinner {
  margin: 20% auto;
  position: relative;
  width: 75px;
  /* page mask pillaged from modal.less */
}
.loading-spinner:before {
  content: '';
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: absolute;
  top: 0;
  left: 0;
  width: 75px;
  height: 75px;
  border-radius: 50%;
  border-top: 2px solid #0D5687;
  border-right: 2px solid transparent;
  -webkit-animation: loading-spinner 0.8s linear infinite;
          animation: loading-spinner 0.8s linear infinite;
  z-index: 102;
}
.loading-spinner--overlay {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  background: rgba(241, 241, 241, 0.9);
  z-index: 101;
}
.pop-enter,
.pop-appear {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
}
.pop-enter.pop-enter-active,
.pop-appear.pop-appear-active {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 200ms;
          transition-duration: 200ms;
  -webkit-transition-timing-function: ease-in;
          transition-timing-function: ease-in;
}
.pop-exit,
.pop-leave {
  -webkit-transform: scale(1.3);
          transform: scale(1.3);
}
.pop-exit.pop-exit-active,
.pop-leave.pop-leave-active {
  -webkit-transform: scale(0.5);
          transform: scale(0.5);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 200ms;
          transition-duration: 200ms;
  -webkit-transition-timing-function: ease-in;
          transition-timing-function: ease-in;
}
.slidedown-enter,
.slidedown-appear {
  opacity: 0;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
}
.slidedown-enter.slidedown-enter-active,
.slidedown-appear.slidedown-appear-active {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.slidedown-exit,
.slidedown-leave {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
.slidedown-exit.slidedown-exit-active,
.slidedown-leave.slidedown-leave-active {
  opacity: 0;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.slideright-enter,
.slideright-appear {
  opacity: 0;
  -webkit-transform: translateX(-8px);
          transform: translateX(-8px);
}
.slideright-enter.slideright-enter-active,
.slideright-appear.slideright-appear-active {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.slideright-exit,
.slideright-leave {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.slideright-exit.slideright-exit-active,
.slideright-leave.slideright-leave-active {
  opacity: 0;
  -webkit-transform: translateX(-8px);
          transform: translateX(-8px);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.slideleft-enter,
.slideleft-appear {
  opacity: 0;
  -webkit-transform: translateX(8px);
          transform: translateX(8px);
}
.slideleft-enter.slideleft-enter-active,
.slideleft-appear.slideleft-appear-active {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
.slideleft-exit,
.slideleft-leave {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
}
.slideleft-exit.slideleft-exit-active,
.slideleft-leave.slideleft-leave-active {
  opacity: 0;
  -webkit-transform: translateX(8px);
          transform: translateX(8px);
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 300ms;
          transition-duration: 300ms;
  -webkit-transition-timing-function: ease-in-out;
          transition-timing-function: ease-in-out;
}
/* components */
main.main {
  padding: 1px;
}
.about-content h2 {
  font-weight: normal;
}
.about-content h3 {
  font-weight: normal;
}
.about-content h4 {
  font-weight: normal;
}
.about-content p {
  line-height: 1.3;
}
.about-content .about-image {
  display: inline-block;
  margin: 30px 0 0 0;
}
.about-content h2,
.about-content h3,
.about-content h4,
.about-content p {
  margin: 0;
  padding: 0;
}
.about-content .about-page {
  text-align: center;
}
.about-content .about-page ul {
  text-align: left;
  margin-left: auto;
  margin-right: auto;
  display: inline-block;
  width: auto;
}
@media screen and (min-width: 800px) {
  .about-content .about-page ul {
    display: block;
  }
}
@media screen and (min-width: 800px) {
  .about-content .about-page {
    text-align: left;
    margin-left: 6%;
    padding-top: 1rem;
  }
}
.about-content a {
  cursor: pointer;
  /* important for fast clickers */
  background-color: transparent;
  color: #0D5687;
  border-width: 0;
  border-style: none;
  border-color: inherit;
  padding: 0;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: underline;
  text-transform: none;
  font-variant: inherit;
}
.about-content a:active,
.about-content a:hover,
.about-content a:focus {
  background-color: transparent;
  color: #0c4d79;
  border-width: 0;
  border-style: none;
  border-color: inherit;
  padding: 0;
  font-family: sans-serif;
  font-size: inherit;
  font-weight: normal;
  font-style: normal;
  letter-spacing: initial;
  text-decoration: underline;
  text-transform: none;
  font-variant: inherit;
}
.about-page-image {
  width: 100%;
}
@media screen and (min-width: 800px) {
  .about-page-image {
    max-width: 600px;
    width: 50%;
  }
}
.about-page-image img {
  width: 100%;
}
.panel.panel--step {
  display: block;
  width: 95%;
  margin: 1em auto;
  padding: 3rem 2rem;
}
@media screen and (min-width: 800px) {
  .about-panel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (min-width: 800px) {
  .about-button-container .btn.btn--primary {
    max-width: 320px;
    min-width: auto;
  }
}
.about-button-container .control-container {
  margin: 1em 0;
}
/* .app is the .footer's parent element */
.app {
  background-color: #fff;
  min-height: 100%;
  position: relative;
}
/**
 * Replace .container's bottom margin with padding instead to prevent space between <body> and <html>
 * at the bottom of the page
 */
.main > .container {
  margin-bottom: 0;
  padding-bottom: 5%;
}
.card-list-container .order-currency,
.order-detail-container .order-currency,
.card-list-container > h2,
.order-detail-container > h2 {
  color: #333;
}
/* card header... h2 */
.card {
  background: #fff;
  border-color: #e0e0e0;
  border-style: solid;
  border-width: 1px;
  border-radius: 0;
  color: #333;
  margin-bottom: 5%;
  -webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.22);
          box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.22);
}
.card__header {
  font-family: inherit;
  font-size: 1.5rem;
  font-weight: inherit;
  color: inherit;
  padding-top: 16px;
  padding-bottom: 32px;
  margin: 0 0 20px 0;
  text-transform: none;
  text-align: center;
}
.card__actions {
  border-top-style: solid;
  border-top-width: thin;
  border-top-color: #e0e0e0;
  padding: 0 0;
  background: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.card.has_warning {
  border-color: #d0011b;
  border-width: 2px;
}
.card-list-container {
  max-width: 480px;
  width: 90%;
  margin: 0 auto;
  padding: 5%;
}
.card-list-container h2 {
  text-align: center;
}
/*
  LiveChat wrapper styles
  lc documentation includes the important -
   https://www.livechatinc.com/kb/customize-your-chat-window-with-css/

   It seems that we only have control over these styles because they wrap an
   iframe.  The rest need to be modified from the livechat authenticated site
 */
#livechat-compact-container {
  left: 0!important;
  right: auto!important;
}
#livechat-full {
  width: 15em !important;
  left: 0!important;
  right: auto!important;
}
/*
  Selfie chat component styles
 */
.chat__unavailable {
  background: #525252;
  color: #fff;
  text-align: center;
  z-index: 3;
  position: fixed;
  bottom: 0;
  max-height: 40%;
  width: 600px;
  border-radius: 5px;
  max-width: 100%;
  width: 15em;
  left: 0;
  border-radius: 0;
}
@media (max-width: 649px) {
  .chat__unavailable {
    width: 100%;
  }
}
.chat__unavailable__close {
  z-index: 4;
  cursor: pointer;
  background: transparent;
  border: none;
  color: #fff;
}
.chat__unavailable__close__btn {
  z-index: 5;
  cursor: pointer;
  background: transparent;
  border: none;
  color: #fff;
  position: absolute;
  right: 0;
  font-size: 1.5em;
}
.chat__unavailable__text,
.chat__unavailable__link {
  margin: 1em;
  padding: 1em;
}
.chat__unavailable a {
  color: #fff;
}
.chat__unavailable a:visited {
  color: #fff;
}
.chat__unavailable a:active,
.chat__unavailable a:hover {
  color: #cccccc;
}
.container {
  background: transparent;
  margin: 50px auto 5%;
  max-width: 600px;
}
.content {
  background-color: #f7f7f7;
  min-height: 100vh;
}
@media (min-width: 650px) {
  .content {
    padding-left: 15em;
  }
}
.content_bg {
  background-color: #f7f7f7;
}
.header {
  background: transparent;
  border-bottom: none;
  border-top: none;
  width: 100%;
  /* the h1 of the entire app -- hidden */
}
.header__h1 {
  display: none;
}
.header-container {
  background: transparent;
  border-color: transparent;
  border-style: solid;
  border-width: 0;
  margin: 0 auto;
  padding: 15px 2% 15px 2%;
  max-width: 1024px;
  min-width: 300px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header__img {
  border: none;
  display: block;
  background: no-repeat url(none) transparent;
  text-indent: -9999px;
  width: 100%;
  height: inherit;
  max-width: 300px;
}
@media screen and (max-width: 360px) {
  .header__img {
    max-width: 220px;
  }
}
.header__img__high_contrast {
  text-indent: 0;
}
a.icon-link {
  color: inherit;
}
.loading-spinner-center-overlay-wrapper {
  position: relative;
}
.loading-spinner-center-overlay-wrapper * {
  opacity: 0.5;
}
.loading-spinner-center-overlay-wrap {
  position: absolute;
  height: 75px;
  width: 75px;
  top: 50%;
  left: 50%;
  opacity: 1;
}
.loading-spinner-center-overlay-wrap .loading-spinner {
  margin: 0;
  position: relative;
  top: -50%;
  left: -50%;
  opacity: 1;
}
.email-sent-address {
  overflow: hidden;
  text-overflow: ellipsis;
}
.dialog-logout-success {
  background: #525252;
  color: #fff;
  text-align: center;
  z-index: 3;
  position: fixed;
  bottom: 0;
  max-height: 40%;
  width: 600px;
  border-radius: 5px;
  max-width: 100%;
  bottom: -5%;
  opacity: 0;
  /* Add animation: Take 0.5 seconds to fade in and out
    delay the fade out process for 2.5 seconds */
  -webkit-animation: 3s fadein-fadeout;
  animation: 3s fadein-fadeout;
  /* Animations to fade the toast notice in and out */
}
@media (max-width: 649px) {
  .dialog-logout-success {
    width: 100%;
  }
}
.dialog-logout-success__close {
  z-index: 4;
  cursor: pointer;
  background: transparent;
  border: none;
  color: #fff;
}
.dialog-logout-success__close__btn {
  z-index: 5;
  cursor: pointer;
  background: transparent;
  border: none;
  color: #fff;
  position: absolute;
  right: 0;
  font-size: 1.5em;
}
.dialog-logout-success__text,
.dialog-logout-success__link {
  margin: 1em;
  padding: 1em;
}
.dialog-logout-success a {
  color: #fff;
}
.dialog-logout-success a:visited {
  color: #fff;
}
.dialog-logout-success a:active,
.dialog-logout-success a:hover {
  color: #cccccc;
}
@-webkit-keyframes fadein-fadeout {
  0% {
    bottom: -5%;
    opacity: 0;
  }
  20% {
    bottom: 0;
    opacity: 1;
  }
  80% {
    bottom: 0;
    opacity: 1;
  }
  100% {
    bottom: -5%;
    opacity: 0;
  }
}
@keyframes fadein-fadeout {
  0% {
    bottom: -5%;
    opacity: 0;
  }
  20% {
    bottom: 0;
    opacity: 1;
  }
  80% {
    bottom: 0;
    opacity: 1;
  }
  100% {
    bottom: -5%;
    opacity: 0;
  }
}
h2 {
  text-align: center;
  margin: 0px;
}
.control-container,
.field-group {
  margin: 0px 0px !important;
}
form {
  margin-top: 32px;
}
.custom-email-text {
  display: none;
}
/* panel header... h2 */
/* panel subheader.. h3 */
/*--------*/
/*--------*/
/*--------*/
/*--------*/
.panel {
  background: #fff;
  border-color: #e0e0e0;
  border-style: solid;
  border-width: 1px;
  border-radius: 0;
  color: #333;
  margin-bottom: 5%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.22);
          box-shadow: 1px 1px 5px 0 rgba(0, 0, 0, 0.22);
  /**
     * when the panel fills up the viewport
     * no border-radius & no borders on the sides
     */
}
.panel.panel--loading {
  padding: 6% 8% 25% 8%;
}
.panel.panel--step {
  padding: 6% 8%;
}
.panel.panel--item {
  padding: 4%;
  margin-bottom: 8%;
}
.panel__header {
  font-family: inherit;
  font-size: 1.5rem;
  font-weight: inherit;
  color: inherit;
  padding-top: 16px;
  padding-bottom: 32px;
  margin: 0 0 20px 0;
  text-transform: none;
}
.panel__header.panel__header--step {
  text-align: center;
}
.panel__header.panel__header--item {
  font-size: 1.4rem;
  font-weight: normal;
  margin: 1% 0;
  text-align: left;
  padding: 0;
}
.panel__subheader {
  font-family: inherit;
  font-weight: normal;
  font-size: 1.2rem;
  color: inherit;
  text-align: center;
  padding-top: 16px;
  padding-bottom: 32px;
  margin: 0;
  text-transform: none;
}
@media screen and (max-width: 600px) {
  .panel {
    border-radius: 0;
    border-left-width: 0;
    border-right-width: 0;
  }
}
h2 {
  text-align: center;
}
table {
  border-spacing: 0px;
  border-collapse: collapse;
}
.benefits {
  margin-top: 48px !important;
  margin-bottom: 48px !important;
  -webkit-box-shadow: none;
          box-shadow: none;
  border: none;
  width: 80% !important;
  padding: 0px !important;
}
.benefits table {
  margin-inline: auto;
}
.benefits td:first-child {
  border-right: 1px solid #333;
}
.benefits-row {
  border-bottom: 1px solid #333;
}
.benefits-icon {
  width: 50%;
  text-align: center;
  border-spacing: 0px;
  border-collapse: collapse;
  padding: 10px;
  vertical-align: baseline;
}
.benefits span {
  font-weight: bolder;
  font-size: clamp(15px, 3vw, 1.1rem);
  color: #333;
}
.benefits div {
  margin: 0px auto 10px auto;
  display: block;
  background-color: #0D5687;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  height: 46px;
  width: 68px;
}
.benefits .balances {
  -webkit-mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/balances.svg");
          mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/balances.svg");
  background-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -o-object-position: center;
     object-position: center;
  margin: auto;
  width: 46px;
}
.benefits .resend {
  -webkit-mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/resend.svg");
          mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/resend.svg");
}
.benefits .view {
  -webkit-mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/view.svg");
          mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/view.svg");
  background-repeat: no-repeat;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -o-object-position: center;
     object-position: center;
  margin: auto;
  width: 51px;
}
.benefits .delivery {
  -webkit-mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/delivery.svg");
          mask: url("https://ams-cdn.cashstar.com/permanent/static/DEFAULT/delivery.svg");
}
@media screen and (max-width: 600px) {
  .benefits table {
    width: 100% !important;
  }
}
/* containing element of form fields */
.field-group {
  margin-top: 10px;
  margin-bottom: 25px;
  position: relative;
  width: 100%;
  /* containing element for abs position icons */
}
.field-group__label {
  font-family: inherit;
  font-size: 0.76rem;
  text-transform: inherit;
}
.field-group__input,
.field-group__textarea,
.field-group__select {
  background: #fcfcfc;
  border: 1px solid #cdcdcd;
  border-bottom-width: 2px;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #333;
  font-family: inherit;
  font-weight: inherit;
  line-height: 1.2;
  letter-spacing: normal;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 1%;
  padding: 12px 10px;
  width: 100%;
}
.field-group__input:not([value=""]),
.field-group__textarea:not([value=""]),
.field-group__select:not([value=""]) {
  /* Not empty input styling (may be used for success as well) */
  border-bottom-color: rgba(0, 0, 0, 0.4);
}
.field-group__input:active,
.field-group__textarea:active,
.field-group__select:active,
.field-group__input:focus,
.field-group__textarea:focus,
.field-group__select:focus {
  background: #fcfcfc;
  border-bottom-color: #1597dc;
  -webkit-box-shadow: none;
          box-shadow: none;
  color: #2b2b2b;
}
.field-group__input.field-group__input--error,
.field-group__input.field-group__textarea--error,
.field-group__input.field-group__select--error,
.field-group__textarea.field-group__input--error,
.field-group__textarea.field-group__textarea--error,
.field-group__textarea.field-group__select--error,
.field-group__select.field-group__input--error,
.field-group__select.field-group__textarea--error,
.field-group__select.field-group__select--error {
  border-bottom-color: #D0021B;
  color: #333;
}
.field-group__input.field-group__input--error:focus,
.field-group__input.field-group__textarea--error:focus,
.field-group__input.field-group__select--error:focus,
.field-group__textarea.field-group__input--error:focus,
.field-group__textarea.field-group__textarea--error:focus,
.field-group__textarea.field-group__select--error:focus,
.field-group__select.field-group__input--error:focus,
.field-group__select.field-group__textarea--error:focus,
.field-group__select.field-group__select--error:focus,
.field-group__input.field-group__input--error:active,
.field-group__input.field-group__textarea--error:active,
.field-group__input.field-group__select--error:active,
.field-group__textarea.field-group__input--error:active,
.field-group__textarea.field-group__textarea--error:active,
.field-group__textarea.field-group__select--error:active,
.field-group__select.field-group__input--error:active,
.field-group__select.field-group__textarea--error:active,
.field-group__select.field-group__select--error:active {
  color: #333;
}
.field-group__select {
  height: 100%;
  min-height: 42px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
.field-group__textarea {
  resize: none;
  white-space: pre-wrap;
}
.field-group__div {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
.field-group__div .select-arrow {
  position: absolute;
  right: 4px;
  top: 16%;
  font-size: 1.4rem;
  color: inherit;
  pointer-events: none;
  /* important for click */
}
.field-group__div .select-arrow--error {
  color: #D0021B;
}
@media screen and (max-width: 460px) {
  .field-group__div .select-arrow {
    font-size: 1rem;
    top: 23%;
  }
}
/* field helpers and validation messages */
/* WARNING - before customizing */
/* -- be aware of places we show a counter & error message -- */
/* -- error specific styles -- */
.field-msg {
  color: #525252;
  display: block;
  font-size: 0.76rem;
  line-height: 1.6;
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
  text-transform: inherit;
  /* maxLength counter specific */
  /* -- message field + any maxLength error (ex. name length) -- */
}
.field-msg__counter {
  float: right;
  margin-left: 10px;
}
.field-msg__counter.field-msg__counter--error {
  background: transparent;
  display: inline;
  color: #D0021B;
  font-family: inherit;
  font-weight: inherit;
  padding: 0;
}
.field-msg.field-msg--error {
  background: transparent;
  display: inline;
  color: #D0021B;
  font-family: inherit;
  font-weight: inherit;
  padding: 0;
}
.field-msg.field-msg--hidden {
  opacity: 0;
  -webkit-transform: translateY(-4px);
          transform: translateY(-4px);
  visibility: hidden;
}
.field-icon {
  /* icons displayed within a field */
}
.field-icon-validation {
  color: #333;
  position: static;
  margin: 0 6.5px 0 0;
  font-size: 15px;
}
.field-icon-validation.field-icon-validation--valid {
  display: none;
}
.field-icon-validation.field-icon-validation--error {
  color: #D0021B;
}
@media screen and (max-width: 420px) {
  .field-icon-validation {
    top: 8px;
  }
  .field-icon-validation--textarea {
    top: inherit;
  }
}
.field-icon-inset {
  color: inherit;
  position: absolute;
  right: 12px;
  top: 20%;
  font-size: 1.4rem;
  pointer-events: none;
  /* important so you can click on icon */
}
.faceplate_image {
  border-radius: 5px;
  max-width: 100%;
}
/* Combines a base size (10px) with a viewport-relative adjustment (0.5vw) to calculate font size.
   This was added to accomodate large tracking numbers */
.gift_card_action:hover {
  color: #0d0d0d;
  text-decoration: underline;
}
.long_tracking_number {
  font-size: calc(8px + 0.5vw);
}
.gift_card {
  text-align: center;
}
.gift_card div .gift_card__status {
  margin: 0.5rem 0;
  margin-bottom: 18px;
}
.gift_card div .gift_card__status_top {
  margin: 1.5rem 0 0.5rem 0;
}
.gift_card__card_info {
  padding-left: 15px;
  padding-top: 20px;
}
.gift_card__card_amount {
  display: block;
  font-size: 24px;
}
.gift_card__purchased_date {
  font-size: 16px;
}
.gift_card__view_status {
  display: block;
}
.gift_card__header {
  margin: 0 0 20px 0;
  padding: 16px 0 0;
  color: #525252;
}
.gift_card__faceplate {
  padding: 0 8px;
}
.gift_card__amount {
  font-size: 1.5em;
}
.gift_card__amount__expired {
  -webkit-text-decoration-line: line-through;
          text-decoration-line: line-through;
  color: #858585;
}
.gift_card__amount,
.gift_card__balance_updated {
  margin: 1rem 0;
}
.gift_card__icon {
  width: 3.5em;
  height: 1.5em;
}
.gift_card__view {
  background: transparent;
  color: #333;
}
.gift_card__view:hover {
  color: #0d0d0d;
  text-decoration: underline;
}
.gift_card__view .gift_card__icon {
  padding-bottom: 0;
}
.gift_card__card-action {
  padding: 12px;
}
.gift_card__card-action:not(:last-child) {
  border-bottom: solid 1px #c9c9c9;
}
.gift_card__order-details {
  color: #333;
  text-decoration: none;
}
.gift_card__order-details:hover {
  color: #0d0d0d;
  text-decoration: underline;
}
.gift_card__status {
  color: #858585;
}
.gift_card__status__expired {
  color: #525252;
  font-weight: bold;
}
.gift_card__summary:last-child {
  padding-bottom: 1em;
  margin-bottom: 0;
}
.gift_card__unviewed_alert {
  color: #d0011b;
}
.gift_card__undeliverable_alert {
  color: #d0011b;
  margin: 0 auto;
  width: 68%;
}
.resend__icon {
  width: 3.5em;
  height: 1.5em;
}
.resend__view {
  background: transparent;
}
.btn__gift_card,
.btn__resend {
  border-style: none;
  background: transparent;
  border-color: white;
  width: 100%;
  text-align: left;
  border-radius: 0;
  font-family: inherit;
}
.currency-wrapper {
  color: #575757;
  font-size: 60%;
  font-weight: 600;
  letter-spacing: 0.04em;
  margin: 5px 0 20px 0;
}
.egift-card-link {
  padding-left: 24px;
}
.copy-icon-button {
  border: none;
  cursor: pointer;
}
.container-copy-container {
  -ms-flex-preferred-size: 80%;
      flex-basis: 80%;
  padding: 24px;
  margin-top: -39px;
  padding-bottom: 10px;
  border-bottom: solid 1px #c9c9c9;
  border-top: solid 1px #c9c9c9;
}
.container-copy-container .container-copy-icon-container {
  background-color: #F6F6F6;
  border-radius: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0px;
  margin-top: 27px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.container-copy-container .container-copy-icon-container .container-copy-icon {
  background-image: url('https://ams-cdn.cashstar.com/permanent/static/common/icon_copy@2x.png');
  background-size: contain;
  height: 28px;
  width: 28px;
  background-repeat: no-repeat;
  margin-right: 5px;
  margin-left: 7px;
}
.container-copy-container .container-copy-icon-container .container-copy-link {
  font-size: 12px;
  font-weight: 400;
  padding-left: 5px;
}
.container-copy-container .container-copy-icon-container .copied {
  text-decoration: underline;
  color: unset;
}
.container-copy-container .container-copy-text {
  font-size: 15px;
  font-weight: 400;
  padding-left: 4px;
  margin-top: 2px;
  margin-bottom: 0px;
}
.container-copy-container .copied {
  color: #060;
}
/*
 * The nav has a separate DOM ancestry from the header and content, but the nav links need to align at the border
 * between the two. This weird syntax instructs Less to compile the total height of the header if it's all the same CSS
 * unit. Otherwise, if it's a mix of units like px with %, pass it to the browser for calculation in the calc function.
 */
.nav {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 16em;
  padding-left: 1em;
  position: fixed;
  height: 100%;
  max-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column nowrap;
          flex-flow: column nowrap;
  z-index: 2;
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  background: #d3d3d3;
  border-right: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  -webkit-transform: translate(-100%, 0);
          transform: translate(-100%, 0);
}
.shown .nav {
  -webkit-transform: translate(-1em, 0);
          transform: translate(-1em, 0);
  -webkit-box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.5);
          box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.5);
}
@media (min-width: 650px) {
  .nav,
  .shown .nav {
    -webkit-transform: translate(-1em, 0);
            transform: translate(-1em, 0);
  }
}
.nav ul {
  padding: 0;
  margin: 0;
}
.nav li {
  list-style: none;
}
.nav-footer {
  margin: auto auto 0;
  padding-bottom: 16px;
}
.nav-footer a:link,
.nav-footer a:visited {
  color: #333;
}
.nav-footer a:hover {
  color: #4d4d4d;
}
.nav-footer .footer-logo-cashstar {
  display: block;
  margin: auto;
}
.menu-icons {
  -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  transition: -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  transition: transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35), -webkit-transform 0.3s cubic-bezier(0.42, 0, 0.35, 1.35);
  width: 2em;
  margin-left: 0.5em;
  margin-top: 0.5em;
  height: 1.8em;
  font-size: 160%;
  line-height: 1;
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translate(2.5em, 0);
          transform: translate(2.5em, 0);
}
.menu-icons button {
  color: inherit;
  border: 0;
  padding: 0;
  background: transparent;
}
.shown .menu-icons {
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0);
}
.menu-icons .text {
  position: absolute !important;
  z-index: -9999;
  left: -9999px;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
@media (min-width: 650px) {
  .menu-icons {
    display: none;
  }
}
.nav-scrollable {
  overflow: auto;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  max-height: 100%;
  padding-top: calc( inherit  +  15px  +  15px );
  padding-bottom: 2em;
}
.nav-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  background-color: rgba(82, 82, 82, 0.8);
  display: none;
}
@media (max-width: 649px) {
  .shown .nav-overlay {
    display: block;
  }
}
.nav-section-header {
  font-size: 80%;
  font-weight: 700;
  text-transform: uppercase;
  padding: 8px 0 8px 0;
  color: #525252;
}
.nav-primary .nav-section-header {
  padding-top: 20px;
  height: inherit;
}
[class^="nav-item-"] {
  background: transparent;
  cursor: pointer;
  display: block;
  text-align: left;
  text-decoration: none;
  border: 0;
  color: #333;
}
[class^="nav-item-"] button {
  color: #333;
  background-color: transparent;
}
[class^="nav-item-"] g {
  stroke: #333;
}
[class^="nav-item-primary-"] {
  padding: 1.2em 0.5em 15px 28px;
  padding-left: 20px;
  border-left: solid .5em transparent;
  font-size: 105%;
}
[class^="nav-item-primary-"].active {
  background: #fff;
  border-color: #0D5687;
}
.nav-primary {
  padding-bottom: 35px;
}
.nav-secondary {
  padding: 0 28px 35px 28px;
}
[class^="nav-item-secondary-"] {
  font-size: inherit;
  font-weight: 500;
  padding: 8px 0 8px 0;
}
[class^="nav-item-secondary-"]:hover {
  text-decoration: inherit;
}
.nav-icon-button__wrapper {
  background-color: transparent;
  border: none;
  padding-left: 28px;
}
.nav-icon-button__faded {
  opacity: 0.40;
}
.nav-icon-button__icon {
  width: 1.25em;
  height: 1.25em;
  padding: 0 0.5em 0 0;
}
.order-detail-container {
  max-width: 480px;
  width: 90%;
  margin: 0 auto;
  padding: 5%;
}
.order-detail-container h2 {
  text-align: center;
}
.order-detail,
.order-summary {
  padding: 4% 8%;
}
.order-detail dt {
  font-size: .8em;
  margin-bottom: .3em;
}
.order-detail dd {
  margin: 0 0 1em;
}
.order-detail__billing p {
  margin: 0;
}
.order-currency {
  font-size: .8em;
  text-align: center;
}
.order-summary .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 .7em;
}
.order-summary dt {
  -webkit-box-flex: 2;
      -ms-flex-positive: 2;
          flex-grow: 2;
}
.order-summary dd {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  margin: 0;
  padding-left: 1em;
  text-align: right;
}
.order-summary__order-total {
  padding-top: .7em;
  font-weight: bold;
}
.order-summary__order-total dd {
  font-size: 1.3em;
}
/* OrderPaymentDetails.css */
.payment-details__link {
  color: #4F728C;
  cursor: pointer;
  font-size: 1em;
}
.payment-summary {
  padding: 4% 8%;
}
.payment-summary .row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 .7em;
}
.payment-summary dt {
  -webkit-box-flex: 2;
  -ms-flex-positive: 2;
      flex-grow: 2;
  white-space: nowrap;
  font-size: .9em;
}
.payment-summary dd {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
      flex-grow: 1;
  margin: 0;
  padding-left: 1em;
  text-align: right;
  white-space: nowrap;
  font-size: .9em;
}
.payment-summary__payment-total {
  padding-top: .7em;
  font-weight: bold;
  white-space: nowrap;
}
.payment-summary__payment-total dd {
  font-size: 1em;
  display: inline;
}
.pagination {
  height: 36px;
  margin: 18px 0;
}
.pagination div {
  display: inline-block;
  width: 33%;
}
.pagination__egc_range {
  text-align: center;
}
.pagination__previous {
  text-align: left;
}
.pagination__next {
  text-align: right;
}
.pagination__btn {
  color: #367b84;
  border: none;
  background: inherit;
  text-decoration: none;
}
.pagination__btn:hover {
  text-decoration: none;
}
.resend__resend-email {
  font-weight: bold;
  font-size: 1.16rem;
  overflow-wrap: break-word;
}
.resend-outer .btn-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.resend-outer .btn-row > * {
  margin: 5px 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  max-width: 48%;
  /* IE fix */
  -ms-flex-preferred-size: 100%;
}
.resend-outer .btn-row .btn {
  width: 100%;
  max-width: 100%;
}
.resend-success-overlay-wrap {
  text-align: center;
}
.resend-success-overlay-wrap .btn {
  width: 100%;
  max-width: 100%;
}
.backdrop {
  position: fixed;
  z-index: 3;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  background-color: rgba(0, 0, 0, 0.3);
  overflow: auto;
}
.selfie-modal {
  background-color: #ffffff;
  border-radius: 5px;
  width: 75%;
  padding: 30px;
  text-align: left;
  margin: auto;
  top: unset;
  position: relative;
  padding-top: 10px;
  color: #333;
}
.selfie-modal h3,
.selfie-modal p {
  color: #333;
}
.selfie-modal .text {
  position: absolute !important;
  z-index: -9999;
  left: -9999px;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px 1px 1px 1px);
  /* IE6, IE7 */
  clip: rect(1px, 1px, 1px, 1px);
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}
.selfie-modal__close {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  margin-left: auto;
  position: absolute;
  width: 90%;
  height: 10%;
}
.selfie-modal__close__wrapper {
  margin-left: auto;
}
.selfie-modal__close__button {
  font-size: 32px;
  color: #858585;
  background-color: transparent;
  border-color: transparent;
  border-style: none;
  border-width: 0;
}
.gift_card div.backdrop {
  margin: 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100%;
}
.gift_card div.modal {
  margin: 10px auto 0 auto;
}
@media (min-width: 650px) {
  .selfie-modal {
    width: 35%;
  }
}
.support_heading {
  font-size: 23px;
  text-align: center;
  padding-bottom: 20px;
}
.support_message {
  font-size: 16px;
  font-weight: 500;
  padding-bottom: 20px;
}
.support_head_note {
  font-size: 11px;
  font-style: italic;
  text-align: center;
}
.valid_icon {
  width: 376px;
  height: 38px;
  font-size: 38px;
  text-align: center;
  color: #1e1e1e;
}
.confirm_heading {
  font-size: 23px;
  text-align: center;
}
.confirm_message {
  font-size: 16px;
  text-align: center;
  padding-bottom: 20px;
}
a.purchase_link {
  text-decoration: none;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.37px;
  text-align: center;
  color: #036ed4;
}
.caret_right {
  width: 11px;
  height: 18px;
  font-family: FontAwesome;
  font-size: 18px;
  letter-spacing: 0.48px;
  color: #036ed4;
}
.customer-support-page .field-group {
  margin-bottom: 0px;
}
/* -- modal general-- */
/* -- modal header -- */
.modal {
  background: #fff;
  border: 1px solid #cccccc;
  border-radius: 5px;
  margin: 40px auto 20px;
  max-height: 90%;
  /* for scroll */
  max-width: 80%;
  min-width: 300px;
  width: 600px;
  outline: none;
  overflow: auto;
  /* for scroll */
  position: relative;
  /* page mask */
  /* media queries */
}
.modal-header {
  border-bottom: 1px solid #cccccc;
  font-weight: normal;
  padding: 25px 20px;
  text-align: center;
}
.modal-header > * {
  font-weight: normal;
  margin: 0;
}
.modal-content {
  color: #333;
  padding: 20px;
  /* inner container (optional extra spacing) */
}
.modal-content-inner {
  margin: 15px auto 25px;
  max-width: 80%;
}
.modal-footer {
  border-top: 1px solid #cccccc;
  padding: 20px;
}
.modal-footer .action-link {
  margin: 0 auto;
}
.modal-footer .cancel-link {
  margin-top: 20px;
  margin-bottom: 20px;
}
.modal-footer .btn-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.modal-footer .btn-row > * {
  margin: 5px 5px 0;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  min-width: 48%;
  /* IE fix */
  -ms-flex-preferred-size: 100%;
}
@media screen and (max-width: 620px) {
  .modal-footer .btn-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.modal-overlay {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  background: rgba(241, 241, 241, 0.9);
  z-index: 101;
  /* barf - paypal button's iframe has a 100 z-index */
}
@media screen and (max-width: 620px) {
  .modal {
    margin-bottom: 5%;
    margin-top: 5%;
  }
}
@media print {
  .modal {
    color: #000;
    background: #fff;
    width: 100vw;
    max-width: 100vw;
    border: unset;
    margin: 0;
  }
  .modal-overlay {
    position: static;
  }
  .modal-content {
    color: #000;
  }
  .modal-content-inner {
    margin: unset;
    max-width: 100vw;
  }
  .modal-header,
  .modal-prompt,
  .modal-footer {
    display: none;
  }
  .modal body {
    background: #fff;
  }
  .modal a {
    color: #000;
    font-weight: bold;
  }
}
@media print {
  .ReactModal__Body--open .testing-env-banner,
  .ReactModal__Body--open .header,
  .ReactModal__Body--open .header-container,
  .ReactModal__Body--open .app,
  .ReactModal__Body--open .app-wrapper,
  .ReactModal__Body--open .app-root,
  .ReactModal__Body--open .footer,
  .ReactModal__Body--open .payment-cardholder-agreement__modal-prompt,
  .ReactModal__Body--open .page-sub-header,
  .ReactModal__Body--open h3,
  .ReactModal__Body--open h4,
  .ReactModal__Body--open .btn {
    display: none;
  }
}
/*

  React Responsive Select - Default styles

*/
.rrs {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.rrs *,
.rrs *:before,
.rrs *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.rrs__button {
  color: #555;
  position: relative;
  cursor: pointer;
  height: 44px;
  line-height: 44px;
  background: #fff;
  border-radius: 2px;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
.rrs__button--disabled {
  color: #999999;
  background: #f5f5f5;
  cursor: default;
}
.rrs__button:focus {
  outline: 0;
}
.rrs__button + .rrs__options {
  list-style: none;
  padding: 0;
  margin: 0;
  background: #fff;
  position: absolute;
  z-index: 2;
  border: 1px solid #999;
  border-top: 1px solid #eee;
  border-radius: 0 0 2px 2px;
  top: 44px;
  left: 0;
  right: 0;
  height: 0;
  visibility: hidden;
  overflow: hidden;
  -webkit-box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
}
.rrs--options-visible .rrs__options {
  height: auto;
  visibility: visible;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  max-height: 230px;
}
@media screen and (max-width: 768px) {
  .rrs {
    position: static;
  }
  .rrs.rrs--options-visible:after {
    content: '';
    cursor: pointer;
    position: fixed;
    -webkit-animation: fadeIn 0.3s ease forwards;
            animation: fadeIn 0.3s ease forwards;
    z-index: 1;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
  }
  .rrs--options-visible .rrs__options {
    max-height: initial;
    position: fixed;
    width: auto;
    left: 1rem;
    right: 1rem;
    top: 15%;
    bottom: 1rem;
    border: 0;
    border-radius: 4px;
  }
}
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.rrs__option {
  cursor: pointer;
  padding: 0.75rem 1rem;
  margin: 0;
}
.rrs__option * {
  pointer-events: none;
}
.rrs__option:focus {
  outline: 1px solid #e0e0e0;
}
.rrs__option:hover {
  background: #f5f5f5;
  color: #0273b5;
}
.rrs__option:active {
  background: #e1f5fe;
}
.rrs__option.rrs__option--next-selection {
  background: #f1f8fb;
  color: #0273b5;
}
.rrs__option.rrs__option--selected {
  color: #0273b5;
}
.rrs__option.rrs__option--disabled {
  color: #999999;
  background: #f5f5f5;
  cursor: default;
}
.rrs__option.rrs__option--header {
  color: #666666;
  cursor: default;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  background: #f5f5f5;
  position: sticky;
  top: 0;
  z-index: 1;
}
.rrs__label {
  padding: 0 2rem 0 1rem;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  max-width: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  font-size: inherit;
  background: transparent;
  border: 1px solid rgba(0, 0, 0, 0);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
.rrs__label * {
  pointer-events: none;
}
.rrs--options-visible .rrs__label,
.rrs__button:focus .rrs__label {
  border-bottom: 1px solid #fff;
  outline: 0;
  border: 1px solid #999;
}
.rrs--has-changed .rrs__label {
  color: #0273b5;
}
/*

  Multiselect overrides

*/
.rrs__multiselect-label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  max-width: 100%;
  line-height: 1;
}
.rrs__multiselect-label__text {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.rrs__multiselect-label__badge {
  border: 1px solid #ccc;
  padding: 1px 6px;
  margin: 0 0 0 4px;
  border-radius: 8px;
  color: #666;
  font-size: 11px;
  vertical-align: middle;
  display: inline-block;
}
/*

  Checkbox

*/
.rrs .checkbox {
  display: inline-block;
  position: relative;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  top: -1px;
  border: 1px solid #ccc;
  margin: 2px 8px 2px 0;
  border-radius: 4px;
}
.rrs__option.rrs__option--selected .checkbox {
  border: 1px solid #0273b5;
}
.rrs .checkbox-icon {
  fill: #fff;
  position: absolute;
  left: 2px;
  top: 2px;
}
.rrs__option.rrs__option--selected .checkbox-icon {
  fill: #0273b5;
}
/*

  Caret Icon

*/
.rrs .caret-icon {
  position: absolute;
  right: 1rem;
  top: 1.25rem;
  fill: #333;
}
.rrs--options-visible .caret-icon {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
/*
  React Responsive Select - css overwritten
*/
.rrs--options-visible .rrs__label,
.rrs__button:focus .rrs__label {
  border-bottom: none;
  outline: 0;
  border: none;
}
/*
  Card Picker
*/
.card_picker {
  position: relative;
  top: -10px;
  height: 15px;
  width: 222px;
  display: inline-block;
}
.card_picker__locked {
  width: 75px;
}
.card_picker__locked .rrs__button {
  cursor: default;
}
.card_picker__locked .rrs__options {
  display: none;
}
.card_picker__locked .rrs__label__text {
  margin-left: auto;
  margin-right: auto;
}
.card_picker__select-caret {
  font-size: 2rem;
  color: inherit;
  margin-right: auto;
  width: 24px;
}
.card_picker__select-caret__locked {
  display: none;
}
.card_picker .rrs__options {
  border-radius: 4px;
  -webkit-box-shadow: 2px 4px 0 rgba(0, 0, 0, 0.26);
          box-shadow: 2px 4px 0 rgba(0, 0, 0, 0.26);
  border: solid 1px #DADADA;
  top: 0;
  margin: 40px;
}
.card_picker .rrs__option {
  border-top: 0;
  color: #000000;
  text-align: left;
}
.card_picker .rrs__option--next-selection {
  background: #DEDEDE;
}
.card_picker .rrs__option:hover {
  background: #CCEEFF;
}
.card_picker .rrs__option--selected {
  background: #EFEFEF;
}
.card_picker .rrs__button {
  text-align: center;
  background: rgba(0, 0, 0, 0);
  -webkit-box-shadow: none;
          box-shadow: none;
  color: inherit;
  display: inline-block;
}
.card_picker .rrs__label {
  padding: 0;
  border: 0;
  color: inherit;
  -webkit-text-decoration: underline#0273b5;
          text-decoration: underline#0273b5;
}
.card_picker .rrs__label__text {
  color: #0273b5;
  text-align: inherit;
}
.card_picker .rrs__label__text span {
  -webkit-text-decoration: underline#f7f7f7;
          text-decoration: underline#f7f7f7;
  color: black;
}
.card-list-container-picker {
  padding: 1%;
  text-align: center;
}
/* Library Overrides */
@media screen and (max-width: 768px) {
  .rrs {
    position: relative;
  }
  .rrs.rrs--options-visible:after {
    content: none;
    cursor: auto;
    position: inherit;
  }
  .rrs--options-visible .rrs__options {
    height: auto;
    visibility: visible;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    max-height: 230px;
    position: absolute;
    left: 0;
    right: 0;
    bottom: inherit;
  }
}
@media screen and (max-width: 250px) {
  .rrs {
    max-width: 160px;
  }
}
/* variables */
/* android low res */
/* typography.less */
/* btn-link.less -- make buttons that look like links match a tags */
/* app.less */
/* container.less */
/* header.less */
/* panel.less - item & step layoutContext */
/* panel.less - panel headers */
/* page-header.less - panel headers */
/* panel item headers to be used to unify item-summary headers */
/* cart-icon.less */
/* btn.less */
/* btn-radio.less */
/* toggle.less */
/* faceplate.less */
/* form_global_reset.less */
/* field-group.less */
/* field-container.less */
/* field-group__autocomplete.less */
/* field-inline.less (cart editing) */
/* field-group__label */
/* field-msg.less */
/* field-icon.less */
/* field-group__label.less */
/* item-display.less (cart/confirmation) */
/* item-container.less */
/* item-abridged.less */
/* item-expanded.less */
/* item-summary.less */
/* item-totals.less */
/* lib cstar-react-dates.less */
/* lib cstar-react-times.less */
/* toggle.less */
/* denom.less */
/* alert.less */
/* notification.less */
/* button-error.less */
/* animation/loading-spinner.less */
/* modal */
/* chat.less */
/* field */
/* shared components */
/*!
 * # Semantic UI 2.5.0 - Flag
 * http://github.com/semantic-org/semantic-ui/
 *
 *
 * Released under the MIT license
 * http://opensource.org/licenses/MIT
 *
 */
/*******************************
             Flag
*******************************/
i.flag:not(.icon) {
  display: inline-block;
  width: 16px;
  height: 11px;
  line-height: 11px;
  vertical-align: baseline;
  margin: 0em 0.5em 0em 0em;
  text-decoration: inherit;
  speak: none;
  font-smoothing: antialiased;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* Sprite */
i.flag:not(.icon):before {
  display: inline-block;
  content: '';
  background: url("assets/images/flags.png") no-repeat -108px -1976px;
  width: 16px;
  height: 11px;
}
/* Flag Sprite Based On http://www.famfamfam.com/lab/icons/flags/ */
/*******************************
         Theme Overrides
*******************************/
i.flag.ad:before,
i.flag.andorra:before {
  background-position: 0px 0px;
}
i.flag.ae:before,
i.flag.united.arab.emirates:before,
i.flag.uae:before {
  background-position: 0px -26px;
}
i.flag.af:before,
i.flag.afghanistan:before {
  background-position: 0px -52px;
}
i.flag.ag:before,
i.flag.antigua:before {
  background-position: 0px -78px;
}
i.flag.ai:before,
i.flag.anguilla:before {
  background-position: 0px -104px;
}
i.flag.al:before,
i.flag.albania:before {
  background-position: 0px -130px;
}
i.flag.am:before,
i.flag.armenia:before {
  background-position: 0px -156px;
}
i.flag.an:before,
i.flag.netherlands.antilles:before {
  background-position: 0px -182px;
}
i.flag.ao:before,
i.flag.angola:before {
  background-position: 0px -208px;
}
i.flag.ar:before,
i.flag.argentina:before {
  background-position: 0px -234px;
}
i.flag.as:before,
i.flag.american.samoa:before {
  background-position: 0px -260px;
}
i.flag.at:before,
i.flag.austria:before {
  background-position: 0px -286px;
}
i.flag.au:before,
i.flag.australia:before {
  background-position: 0px -312px;
}
i.flag.aw:before,
i.flag.aruba:before {
  background-position: 0px -338px;
}
i.flag.ax:before,
i.flag.aland.islands:before {
  background-position: 0px -364px;
}
i.flag.az:before,
i.flag.azerbaijan:before {
  background-position: 0px -390px;
}
i.flag.ba:before,
i.flag.bosnia:before {
  background-position: 0px -416px;
}
i.flag.bb:before,
i.flag.barbados:before {
  background-position: 0px -442px;
}
i.flag.bd:before,
i.flag.bangladesh:before {
  background-position: 0px -468px;
}
i.flag.be:before,
i.flag.belgium:before {
  background-position: 0px -494px;
}
i.flag.bf:before,
i.flag.burkina.faso:before {
  background-position: 0px -520px;
}
i.flag.bg:before,
i.flag.bulgaria:before {
  background-position: 0px -546px;
}
i.flag.bh:before,
i.flag.bahrain:before {
  background-position: 0px -572px;
}
i.flag.bi:before,
i.flag.burundi:before {
  background-position: 0px -598px;
}
i.flag.bj:before,
i.flag.benin:before {
  background-position: 0px -624px;
}
i.flag.bm:before,
i.flag.bermuda:before {
  background-position: 0px -650px;
}
i.flag.bn:before,
i.flag.brunei:before {
  background-position: 0px -676px;
}
i.flag.bo:before,
i.flag.bolivia:before {
  background-position: 0px -702px;
}
i.flag.br:before,
i.flag.brazil:before {
  background-position: 0px -728px;
}
i.flag.bs:before,
i.flag.bahamas:before {
  background-position: 0px -754px;
}
i.flag.bt:before,
i.flag.bhutan:before {
  background-position: 0px -780px;
}
i.flag.bv:before,
i.flag.bouvet.island:before {
  background-position: 0px -806px;
}
i.flag.bw:before,
i.flag.botswana:before {
  background-position: 0px -832px;
}
i.flag.by:before,
i.flag.belarus:before {
  background-position: 0px -858px;
}
i.flag.bz:before,
i.flag.belize:before {
  background-position: 0px -884px;
}
i.flag.ca:before,
i.flag.canada:before {
  background-position: 0px -910px;
}
i.flag.cc:before,
i.flag.cocos.islands:before {
  background-position: 0px -962px;
}
i.flag.cd:before,
i.flag.congo:before {
  background-position: 0px -988px;
}
i.flag.cf:before,
i.flag.central.african.republic:before {
  background-position: 0px -1014px;
}
i.flag.cg:before,
i.flag.congo.brazzaville:before {
  background-position: 0px -1040px;
}
i.flag.ch:before,
i.flag.switzerland:before {
  background-position: 0px -1066px;
}
i.flag.ci:before,
i.flag.cote.divoire:before {
  background-position: 0px -1092px;
}
i.flag.ck:before,
i.flag.cook.islands:before {
  background-position: 0px -1118px;
}
i.flag.cl:before,
i.flag.chile:before {
  background-position: 0px -1144px;
}
i.flag.cm:before,
i.flag.cameroon:before {
  background-position: 0px -1170px;
}
i.flag.cn:before,
i.flag.china:before {
  background-position: 0px -1196px;
}
i.flag.co:before,
i.flag.colombia:before {
  background-position: 0px -1222px;
}
i.flag.cr:before,
i.flag.costa.rica:before {
  background-position: 0px -1248px;
}
i.flag.cs:before,
i.flag.serbia:before {
  background-position: 0px -1274px;
}
i.flag.cu:before,
i.flag.cuba:before {
  background-position: 0px -1300px;
}
i.flag.cv:before,
i.flag.cape.verde:before {
  background-position: 0px -1326px;
}
i.flag.cx:before,
i.flag.christmas.island:before {
  background-position: 0px -1352px;
}
i.flag.cy:before,
i.flag.cyprus:before {
  background-position: 0px -1378px;
}
i.flag.cz:before,
i.flag.czech.republic:before {
  background-position: 0px -1404px;
}
i.flag.de:before,
i.flag.germany:before {
  background-position: 0px -1430px;
}
i.flag.dj:before,
i.flag.djibouti:before {
  background-position: 0px -1456px;
}
i.flag.dk:before,
i.flag.denmark:before {
  background-position: 0px -1482px;
}
i.flag.dm:before,
i.flag.dominica:before {
  background-position: 0px -1508px;
}
i.flag.do:before,
i.flag.dominican.republic:before {
  background-position: 0px -1534px;
}
i.flag.dz:before,
i.flag.algeria:before {
  background-position: 0px -1560px;
}
i.flag.ec:before,
i.flag.ecuador:before {
  background-position: 0px -1586px;
}
i.flag.ee:before,
i.flag.estonia:before {
  background-position: 0px -1612px;
}
i.flag.eg:before,
i.flag.egypt:before {
  background-position: 0px -1638px;
}
i.flag.eh:before,
i.flag.western.sahara:before {
  background-position: 0px -1664px;
}
i.flag.gb.eng:before,
i.flag.england:before {
  background-position: 0px -1690px;
}
i.flag.er:before,
i.flag.eritrea:before {
  background-position: 0px -1716px;
}
i.flag.es:before,
i.flag.spain:before {
  background-position: 0px -1742px;
}
i.flag.et:before,
i.flag.ethiopia:before {
  background-position: 0px -1768px;
}
i.flag.eu:before,
i.flag.european.union:before {
  background-position: 0px -1794px;
}
i.flag.fi:before,
i.flag.finland:before {
  background-position: 0px -1846px;
}
i.flag.fj:before,
i.flag.fiji:before {
  background-position: 0px -1872px;
}
i.flag.fk:before,
i.flag.falkland.islands:before {
  background-position: 0px -1898px;
}
i.flag.fm:before,
i.flag.micronesia:before {
  background-position: 0px -1924px;
}
i.flag.fo:before,
i.flag.faroe.islands:before {
  background-position: 0px -1950px;
}
i.flag.fr:before,
i.flag.france:before {
  background-position: 0px -1976px;
}
i.flag.ga:before,
i.flag.gabon:before {
  background-position: -36px 0px;
}
i.flag.gb:before,
i.flag.uk:before,
i.flag.united.kingdom:before {
  background-position: -36px -26px;
}
i.flag.gd:before,
i.flag.grenada:before {
  background-position: -36px -52px;
}
i.flag.ge:before,
i.flag.georgia:before {
  background-position: -36px -78px;
}
i.flag.gf:before,
i.flag.french.guiana:before {
  background-position: -36px -104px;
}
i.flag.gh:before,
i.flag.ghana:before {
  background-position: -36px -130px;
}
i.flag.gi:before,
i.flag.gibraltar:before {
  background-position: -36px -156px;
}
i.flag.gl:before,
i.flag.greenland:before {
  background-position: -36px -182px;
}
i.flag.gm:before,
i.flag.gambia:before {
  background-position: -36px -208px;
}
i.flag.gn:before,
i.flag.guinea:before {
  background-position: -36px -234px;
}
i.flag.gp:before,
i.flag.guadeloupe:before {
  background-position: -36px -260px;
}
i.flag.gq:before,
i.flag.equatorial.guinea:before {
  background-position: -36px -286px;
}
i.flag.gr:before,
i.flag.greece:before {
  background-position: -36px -312px;
}
i.flag.gs:before,
i.flag.sandwich.islands:before {
  background-position: -36px -338px;
}
i.flag.gt:before,
i.flag.guatemala:before {
  background-position: -36px -364px;
}
i.flag.gu:before,
i.flag.guam:before {
  background-position: -36px -390px;
}
i.flag.gw:before,
i.flag.guinea-bissau:before {
  background-position: -36px -416px;
}
i.flag.gy:before,
i.flag.guyana:before {
  background-position: -36px -442px;
}
i.flag.hk:before,
i.flag.hong.kong:before {
  background-position: -36px -468px;
}
i.flag.hm:before,
i.flag.heard.island:before {
  background-position: -36px -494px;
}
i.flag.hn:before,
i.flag.honduras:before {
  background-position: -36px -520px;
}
i.flag.hr:before,
i.flag.croatia:before {
  background-position: -36px -546px;
}
i.flag.ht:before,
i.flag.haiti:before {
  background-position: -36px -572px;
}
i.flag.hu:before,
i.flag.hungary:before {
  background-position: -36px -598px;
}
i.flag.id:before,
i.flag.indonesia:before {
  background-position: -36px -624px;
}
i.flag.ie:before,
i.flag.ireland:before {
  background-position: -36px -650px;
}
i.flag.il:before,
i.flag.israel:before {
  background-position: -36px -676px;
}
i.flag.in:before,
i.flag.india:before {
  background-position: -36px -702px;
}
i.flag.io:before,
i.flag.indian.ocean.territory:before {
  background-position: -36px -728px;
}
i.flag.iq:before,
i.flag.iraq:before {
  background-position: -36px -754px;
}
i.flag.ir:before,
i.flag.iran:before {
  background-position: -36px -780px;
}
i.flag.is:before,
i.flag.iceland:before {
  background-position: -36px -806px;
}
i.flag.it:before,
i.flag.italy:before {
  background-position: -36px -832px;
}
i.flag.jm:before,
i.flag.jamaica:before {
  background-position: -36px -858px;
}
i.flag.jo:before,
i.flag.jordan:before {
  background-position: -36px -884px;
}
i.flag.jp:before,
i.flag.japan:before {
  background-position: -36px -910px;
}
i.flag.ke:before,
i.flag.kenya:before {
  background-position: -36px -936px;
}
i.flag.kg:before,
i.flag.kyrgyzstan:before {
  background-position: -36px -962px;
}
i.flag.kh:before,
i.flag.cambodia:before {
  background-position: -36px -988px;
}
i.flag.ki:before,
i.flag.kiribati:before {
  background-position: -36px -1014px;
}
i.flag.km:before,
i.flag.comoros:before {
  background-position: -36px -1040px;
}
i.flag.kn:before,
i.flag.saint.kitts.and.nevis:before {
  background-position: -36px -1066px;
}
i.flag.kp:before,
i.flag.north.korea:before {
  background-position: -36px -1092px;
}
i.flag.kr:before,
i.flag.south.korea:before {
  background-position: -36px -1118px;
}
i.flag.kw:before,
i.flag.kuwait:before {
  background-position: -36px -1144px;
}
i.flag.ky:before,
i.flag.cayman.islands:before {
  background-position: -36px -1170px;
}
i.flag.kz:before,
i.flag.kazakhstan:before {
  background-position: -36px -1196px;
}
i.flag.la:before,
i.flag.laos:before {
  background-position: -36px -1222px;
}
i.flag.lb:before,
i.flag.lebanon:before {
  background-position: -36px -1248px;
}
i.flag.lc:before,
i.flag.saint.lucia:before {
  background-position: -36px -1274px;
}
i.flag.li:before,
i.flag.liechtenstein:before {
  background-position: -36px -1300px;
}
i.flag.lk:before,
i.flag.sri.lanka:before {
  background-position: -36px -1326px;
}
i.flag.lr:before,
i.flag.liberia:before {
  background-position: -36px -1352px;
}
i.flag.ls:before,
i.flag.lesotho:before {
  background-position: -36px -1378px;
}
i.flag.lt:before,
i.flag.lithuania:before {
  background-position: -36px -1404px;
}
i.flag.lu:before,
i.flag.luxembourg:before {
  background-position: -36px -1430px;
}
i.flag.lv:before,
i.flag.latvia:before {
  background-position: -36px -1456px;
}
i.flag.ly:before,
i.flag.libya:before {
  background-position: -36px -1482px;
}
i.flag.ma:before,
i.flag.morocco:before {
  background-position: -36px -1508px;
}
i.flag.mc:before,
i.flag.monaco:before {
  background-position: -36px -1534px;
}
i.flag.md:before,
i.flag.moldova:before {
  background-position: -36px -1560px;
}
i.flag.me:before,
i.flag.montenegro:before {
  background-position: -36px -1586px;
}
i.flag.mg:before,
i.flag.madagascar:before {
  background-position: -36px -1613px;
}
i.flag.mh:before,
i.flag.marshall.islands:before {
  background-position: -36px -1639px;
}
i.flag.mk:before,
i.flag.macedonia:before {
  background-position: -36px -1665px;
}
i.flag.ml:before,
i.flag.mali:before {
  background-position: -36px -1691px;
}
i.flag.mm:before,
i.flag.myanmar:before,
i.flag.burma:before {
  background-position: -73px -1821px;
}
i.flag.mn:before,
i.flag.mongolia:before {
  background-position: -36px -1743px;
}
i.flag.mo:before,
i.flag.macau:before {
  background-position: -36px -1769px;
}
i.flag.mp:before,
i.flag.northern.mariana.islands:before {
  background-position: -36px -1795px;
}
i.flag.mq:before,
i.flag.martinique:before {
  background-position: -36px -1821px;
}
i.flag.mr:before,
i.flag.mauritania:before {
  background-position: -36px -1847px;
}
i.flag.ms:before,
i.flag.montserrat:before {
  background-position: -36px -1873px;
}
i.flag.mt:before,
i.flag.malta:before {
  background-position: -36px -1899px;
}
i.flag.mu:before,
i.flag.mauritius:before {
  background-position: -36px -1925px;
}
i.flag.mv:before,
i.flag.maldives:before {
  background-position: -36px -1951px;
}
i.flag.mw:before,
i.flag.malawi:before {
  background-position: -36px -1977px;
}
i.flag.mx:before,
i.flag.mexico:before {
  background-position: -72px 0px;
}
i.flag.my:before,
i.flag.malaysia:before {
  background-position: -72px -26px;
}
i.flag.mz:before,
i.flag.mozambique:before {
  background-position: -72px -52px;
}
i.flag.na:before,
i.flag.namibia:before {
  background-position: -72px -78px;
}
i.flag.nc:before,
i.flag.new.caledonia:before {
  background-position: -72px -104px;
}
i.flag.ne:before,
i.flag.niger:before {
  background-position: -72px -130px;
}
i.flag.nf:before,
i.flag.norfolk.island:before {
  background-position: -72px -156px;
}
i.flag.ng:before,
i.flag.nigeria:before {
  background-position: -72px -182px;
}
i.flag.ni:before,
i.flag.nicaragua:before {
  background-position: -72px -208px;
}
i.flag.nl:before,
i.flag.netherlands:before {
  background-position: -72px -234px;
}
i.flag.no:before,
i.flag.norway:before {
  background-position: -72px -260px;
}
i.flag.np:before,
i.flag.nepal:before {
  background-position: -72px -286px;
}
i.flag.nr:before,
i.flag.nauru:before {
  background-position: -72px -312px;
}
i.flag.nu:before,
i.flag.niue:before {
  background-position: -72px -338px;
}
i.flag.nz:before,
i.flag.new.zealand:before {
  background-position: -72px -364px;
}
i.flag.om:before,
i.flag.oman:before {
  background-position: -72px -390px;
}
i.flag.pa:before,
i.flag.panama:before {
  background-position: -72px -416px;
}
i.flag.pe:before,
i.flag.peru:before {
  background-position: -72px -442px;
}
i.flag.pf:before,
i.flag.french.polynesia:before {
  background-position: -72px -468px;
}
i.flag.pg:before,
i.flag.new.guinea:before {
  background-position: -72px -494px;
}
i.flag.ph:before,
i.flag.philippines:before {
  background-position: -72px -520px;
}
i.flag.pk:before,
i.flag.pakistan:before {
  background-position: -72px -546px;
}
i.flag.pl:before,
i.flag.poland:before {
  background-position: -72px -572px;
}
i.flag.pm:before,
i.flag.saint.pierre:before {
  background-position: -72px -598px;
}
i.flag.pn:before,
i.flag.pitcairn.islands:before {
  background-position: -72px -624px;
}
i.flag.pr:before,
i.flag.puerto.rico:before {
  background-position: -72px -650px;
}
i.flag.ps:before,
i.flag.palestine:before {
  background-position: -72px -676px;
}
i.flag.pt:before,
i.flag.portugal:before {
  background-position: -72px -702px;
}
i.flag.pw:before,
i.flag.palau:before {
  background-position: -72px -728px;
}
i.flag.py:before,
i.flag.paraguay:before {
  background-position: -72px -754px;
}
i.flag.qa:before,
i.flag.qatar:before {
  background-position: -72px -780px;
}
i.flag.re:before,
i.flag.reunion:before {
  background-position: -72px -806px;
}
i.flag.ro:before,
i.flag.romania:before {
  background-position: -72px -832px;
}
i.flag.rs:before,
i.flag.serbia:before {
  background-position: -72px -858px;
}
i.flag.ru:before,
i.flag.russia:before {
  background-position: -72px -884px;
}
i.flag.rw:before,
i.flag.rwanda:before {
  background-position: -72px -910px;
}
i.flag.sa:before,
i.flag.saudi.arabia:before {
  background-position: -72px -936px;
}
i.flag.sb:before,
i.flag.solomon.islands:before {
  background-position: -72px -962px;
}
i.flag.sc:before,
i.flag.seychelles:before {
  background-position: -72px -988px;
}
i.flag.gb.sct:before,
i.flag.scotland:before {
  background-position: -72px -1014px;
}
i.flag.sd:before,
i.flag.sudan:before {
  background-position: -72px -1040px;
}
i.flag.se:before,
i.flag.sweden:before {
  background-position: -72px -1066px;
}
i.flag.sg:before,
i.flag.singapore:before {
  background-position: -72px -1092px;
}
i.flag.sh:before,
i.flag.saint.helena:before {
  background-position: -72px -1118px;
}
i.flag.si:before,
i.flag.slovenia:before {
  background-position: -72px -1144px;
}
i.flag.sj:before,
i.flag.svalbard:before,
i.flag.jan.mayen:before {
  background-position: -72px -1170px;
}
i.flag.sk:before,
i.flag.slovakia:before {
  background-position: -72px -1196px;
}
i.flag.sl:before,
i.flag.sierra.leone:before {
  background-position: -72px -1222px;
}
i.flag.sm:before,
i.flag.san.marino:before {
  background-position: -72px -1248px;
}
i.flag.sn:before,
i.flag.senegal:before {
  background-position: -72px -1274px;
}
i.flag.so:before,
i.flag.somalia:before {
  background-position: -72px -1300px;
}
i.flag.sr:before,
i.flag.suriname:before {
  background-position: -72px -1326px;
}
i.flag.st:before,
i.flag.sao.tome:before {
  background-position: -72px -1352px;
}
i.flag.sv:before,
i.flag.el.salvador:before {
  background-position: -72px -1378px;
}
i.flag.sy:before,
i.flag.syria:before {
  background-position: -72px -1404px;
}
i.flag.sz:before,
i.flag.swaziland:before {
  background-position: -72px -1430px;
}
i.flag.tc:before,
i.flag.caicos.islands:before {
  background-position: -72px -1456px;
}
i.flag.td:before,
i.flag.chad:before {
  background-position: -72px -1482px;
}
i.flag.tf:before,
i.flag.french.territories:before {
  background-position: -72px -1508px;
}
i.flag.tg:before,
i.flag.togo:before {
  background-position: -72px -1534px;
}
i.flag.th:before,
i.flag.thailand:before {
  background-position: -72px -1560px;
}
i.flag.tj:before,
i.flag.tajikistan:before {
  background-position: -72px -1586px;
}
i.flag.tk:before,
i.flag.tokelau:before {
  background-position: -72px -1612px;
}
i.flag.tl:before,
i.flag.timorleste:before {
  background-position: -72px -1638px;
}
i.flag.tm:before,
i.flag.turkmenistan:before {
  background-position: -72px -1664px;
}
i.flag.tn:before,
i.flag.tunisia:before {
  background-position: -72px -1690px;
}
i.flag.to:before,
i.flag.tonga:before {
  background-position: -72px -1716px;
}
i.flag.tr:before,
i.flag.turkey:before {
  background-position: -72px -1742px;
}
i.flag.tt:before,
i.flag.trinidad:before {
  background-position: -72px -1768px;
}
i.flag.tv:before,
i.flag.tuvalu:before {
  background-position: -72px -1794px;
}
i.flag.tw:before,
i.flag.taiwan:before {
  background-position: -72px -1820px;
}
i.flag.tz:before,
i.flag.tanzania:before {
  background-position: -72px -1846px;
}
i.flag.ua:before,
i.flag.ukraine:before {
  background-position: -72px -1872px;
}
i.flag.ug:before,
i.flag.uganda:before {
  background-position: -72px -1898px;
}
i.flag.um:before,
i.flag.us.minor.islands:before {
  background-position: -72px -1924px;
}
i.flag.us:before,
i.flag.america:before,
i.flag.united.states:before {
  background-position: -72px -1950px;
}
i.flag.uy:before,
i.flag.uruguay:before {
  background-position: -72px -1976px;
}
i.flag.uz:before,
i.flag.uzbekistan:before {
  background-position: -108px 0px;
}
i.flag.va:before,
i.flag.vatican.city:before {
  background-position: -108px -26px;
}
i.flag.vc:before,
i.flag.saint.vincent:before {
  background-position: -108px -52px;
}
i.flag.ve:before,
i.flag.venezuela:before {
  background-position: -108px -78px;
}
i.flag.vg:before,
i.flag.british.virgin.islands:before {
  background-position: -108px -104px;
}
i.flag.vi:before,
i.flag.us.virgin.islands:before {
  background-position: -108px -130px;
}
i.flag.vn:before,
i.flag.vietnam:before {
  background-position: -108px -156px;
}
i.flag.vu:before,
i.flag.vanuatu:before {
  background-position: -108px -182px;
}
i.flag.gb.wls:before,
i.flag.wales:before {
  background-position: -108px -208px;
}
i.flag.wf:before,
i.flag.wallis.and.futuna:before {
  background-position: -108px -234px;
}
i.flag.ws:before,
i.flag.samoa:before {
  background-position: -108px -260px;
}
i.flag.ye:before,
i.flag.yemen:before {
  background-position: -108px -286px;
}
i.flag.yt:before,
i.flag.mayotte:before {
  background-position: -108px -312px;
}
i.flag.za:before,
i.flag.south.africa:before {
  background-position: -108px -338px;
}
i.flag.zm:before,
i.flag.zambia:before {
  background-position: -108px -364px;
}
i.flag.zw:before,
i.flag.zimbabwe:before {
  background-position: -108px -390px;
}
/*******************************
         Site Overrides
*******************************/
i.flag:not(.icon):before {
  background-image: url("https://ams-cdn.cashstar.com/permanent/static/semantic-ui-flag/flags.png");
}
.nav-item-language-picker {
  padding: 40px 28px 35px 28px;
}
.language_picker__select_container {
  background-color: #fff;
  -webkit-box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.2);
          box-shadow: 2px 2px 4px 0 rgba(0, 0, 0, 0.2);
  border: solid 1px #979797;
  border-radius: 4px;
  position: relative;
  left: -14px;
  width: calc(100% +  28px );
  display: none;
}
.language_picker__select_container.is_open {
  display: block;
}
.language_picker__select {
  margin: 0;
  padding: 0;
}
.language_picker__language_title,
.language_picker__language_selection {
  padding: 10px;
  color: #333;
}
.language_picker__language_title {
  font-size: 1em;
}
.language_picker__selected {
  background-color: transparent;
  border: none;
  padding: 10px 3px;
  text-align: left;
  width: 100%;
}
.language_picker__language_selection {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  place-content: stretch flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 100%;
  background-color: transparent;
  border: none;
  margin: 0;
}
.language_picker__language_selection.is_selected {
  background-color: #4372d0;
}
.language_picker__language_selection.is_selected .language_picker__select_language {
  color: white;
}
.language_picker__select_flag_icon {
  -ms-flex-item-align: center;
      align-self: center;
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
}
.language_picker__selected_icon {
  width: 1em;
  height: 1em;
}
.language_picker__select_language {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  -ms-flex-item-align: center;
      align-self: center;
}
.language_picker__select_selected {
  text-align: right;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  -ms-flex-item-align: center;
      align-self: center;
}
.language_picker__select_selected path {
  stroke: white;
  stroke-width: 6px;
}
/* DO NOT BRAND .. this is set in PromoBanner.js */
.promo {
  /* flex container */
}
.promo-container {
  background: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  padding: 12px 0;
  border: none;
  padding: 12px 0 0;
  /* flex item */
}
.promo-container a > img {
  max-width: 100%;
}
.promo-container > img {
  max-width: 90%;
}
.promo-container div {
  /* child :: usually img, can be any html element */
  /* this scales while maintaining aspect ratio */
}
@media screen and (max-width: 612px) and (min-width: 526px) {
  .promo-container div {
    max-width: 90%;
  }
  .promo-container div .promo-link {
    padding: 5px 10px;
    max-width: 100%;
    width: 486px;
    height: 35px;
  }
}
@media screen and (max-width: 474px) {
  .promo-container div {
    max-width: 90%;
  }
  .promo-container div .promo-link {
    padding: 5px 10px;
    max-width: 100%;
    width: 486px;
    height: 35px;
  }
}
.promo-container div > * {
  max-width: 100%;
}
.promo-link {
  color: #0D5687;
  font-size: inherit;
  background: #fff;
  padding: 5px 10px;
  max-width: 600px;
  width: 600px;
  height: 35px;
}
.promo-link.btn-link {
  max-width: none;
}
.promo-link:hover {
  font-size: inherit;
  background: #fff;
}
.promo-link:active {
  background: #fff;
}
.promo-link:focus {
  background: #fff;
}
.promo-form {
  display: inline-block;
  width: 100%;
  margin-bottom: 15px;
}
.promo-form .control-container {
  margin: 0;
  padding: 0;
  overflow: unset;
  z-index: 0;
}
.promo-form .btn {
  max-width: 100%;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  border-radius: 0 5px 5px 0;
  color: #0D5687;
  border: 1px solid #0D5687;
  height: 45px;
}
.promo-form button {
  font-size: 16px;
}
.promo-form .field-group {
  margin-left: auto;
  margin-top: 0;
  margin-bottom: 0;
}
.promo-form .field-group__div {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.promo-form input {
  border-radius: 5px 0 0 5px;
  border-right-width: 0;
  margin-bottom: 0;
  height: 45px;
}
.promo-form .panel {
  width: 100%;
  margin: auto;
}
.promo-form .input-with-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: auto;
}
@media screen and (max-width: 520px) {
  .promo-form .panel {
    width: 100%;
  }
}
.promo-form .field-msg__content {
  margin: 8px 0;
  font-size: 12px;
}
.promo-form .promo-form-status-icon {
  vertical-align: text-top;
  margin-right: 6px;
  font-size: 14px;
}
