/* ------------------------------------------------------------ *\
  Critical CSS
  Styles needed for above-the-fold content
  Loaded inline for fastest initial render
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
  Generic - Required for all styles
\* ------------------------------------------------------------ */
/* ------------------------------------------------------------ *\
  SCSS Functions
\* ------------------------------------------------------------ */
/* example usage*/
/* ------------------------------------------------------------ *\
	Reset
\* ------------------------------------------------------------ */
* {
  padding: 0;
  margin: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
main {
  display: block;
}
template {
  display: none;
}
html {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
      -ms-text-size-adjust: none;
          text-size-adjust: none;
}
img,
iframe,
video,
audio,
object {
  max-width: 100%;
}
img,
iframe {
  border: 0 none;
}
img {
  height: auto;
  display: inline-block;
  vertical-align: middle;
}
img,
[style*=background-image] {
  image-rendering: -webkit-optimize-contrast;
}
b,
strong {
  font-weight: bold;
}
address {
  font-style: normal;
}
svg:not(:root) {
  overflow: hidden;
}
a,
button,
input[type=submit],
input[type=button],
input[type=reset],
input[type=file],
input[type=image],
label[for] {
  cursor: pointer;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}
input[type=text],
input[type=password],
input[type=date],
input[type=datetime],
input[type=datetime-local],
input[type=month],
input[type=week],
input[type=email],
input[type=number],
input[type=search],
input[type=tel],
input[type=time],
input[type=url],
input[type=color],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
          appearance: none;
}
textarea {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  color: inherit;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-smoothing: antialiased;
}
button,
select {
  text-transform: none;
}
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  display: table;
  overflow-x: auto;
}
nav ul,
nav ol {
  list-style: none outside none;
}
input::-webkit-input-placeholder {
  color: inherit;
  opacity: 1;
}
input::-moz-placeholder {
  color: inherit;
  opacity: 1;
}
input:-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
input::-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
input::placeholder {
  color: inherit;
  opacity: 1;
}
textarea::-webkit-input-placeholder {
  color: inherit;
  opacity: 1;
}
textarea::-moz-placeholder {
  color: inherit;
  opacity: 1;
}
textarea:-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
textarea::-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}
textarea::placeholder {
  color: inherit;
  opacity: 1;
}
input:-webkit-autofill {
  -webkit-text-fill-color: inherit;
  -webkit-box-shadow: 0 0 0 1000px #fff inset;
}
input[type=text],
input[type=button],
input[type=tel],
input[type=email],
input[type=submit],
input[type=date],
input[type=search],
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
input::-webkit-input-placeholder {
  opacity: 0.8;
}
input::-moz-placeholder {
  opacity: 0.8;
}
input:-ms-input-placeholder {
  opacity: 0.8;
}
input::-ms-input-placeholder {
  opacity: 0.8;
}
input::placeholder {
  opacity: 0.8;
}
@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: smooth;
  }
}
/* ------------------------------------------------------------ *\
	Base
\* ------------------------------------------------------------ */
html {
  font-size: 62.5%;
}
body {
  min-width: 320px;
  background: #fff;
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 1.4;
  color: rgb(51, 51, 51);
  word-wrap: break-word;
  overflow-x: hidden;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  body {
    font-size: 1.8rem;
  }
}
body.fonts-loaded {
  font-family: "Neutra Text", Handsean, Helvetica, sans-serif;
}
.overflow-hidden {
  overflow: hidden;
}
body.open-filters,
body.has-open-cart {
  overflow: hidden;
}
a {
  color: inherit;
  text-decoration: underline;
}
.h1,
h1,
.h2,
h2,
.h3,
h3,
.h4,
h4,
.h5,
h5,
.h6,
h6 {
  margin-bottom: calc(1.4em / 5);
}
.h1,
h1 {
  font-size: 4rem;
  line-height: 4rem;
  font-weight: 700;
  color: #0e7bbd;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .h1,
  h1 {
    text-align: center;
    font-size: 3rem;
    line-height: 4rem !important;
  }
}
.h2,
h2 {
  font-size: 3.2rem;
  font-weight: 600;
  color: #0e7bbd;
  line-height: 3.2rem;
}
.h3,
h3 {
  font-size: 2.08rem;
  font-weight: 600;
  line-height: 2.08rem;
  color: #0e7bbd;
}
.h4,
h4 {
  font-size: 1.92rem;
  font-weight: 400;
  line-height: 1.92rem;
  color: #0e7bbd;
}
.h5,
h5 {
  font-size: 1.76rem;
  font-weight: 300;
  line-height: 1.76rem;
  color: #0e7bbd;
}
.h6,
h6 {
  font-size: 1.6rem;
  font-weight: 300;
  line-height: 1.6rem;
  color: #0e7bbd;
}
p,
ul,
ol,
dl,
hr,
table,
blockquote {
  margin-bottom: 1.4rem;
}
hr {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}
p {
  line-height: 140%;
}
h1[class],
h2[class],
h3[class],
h4[class],
h5[class],
h6[class],
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child,
p:last-child,
ul:last-child,
ol:last-child,
dl:last-child,
table:last-child,
blockquote:last-child {
  margin-bottom: 0;
}
table thead {
  background-color: #b3b3b3;
}
table tbody tr:nth-child(even) {
  background: #F6F6F6;
}
table tr th {
  padding: 1.5rem 1rem;
}
table tr td {
  padding: 1rem;
}
table tr th:last-child {
  border-right: none;
}
/* ------------------------------------------------------------ *\
  Critical Components - Above the fold
\* ------------------------------------------------------------ */
.header {
  z-index: 1002;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: rgb(255, 255, 255);
  color: rgb(94, 94, 94);
  border-bottom: solid 1px #e6e6e6;
  -webkit-transition: 0.3s ease;
  transition: 0.3s ease;
}
.header.is-active {
  border: none;
}
.header .header-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.header .header-top__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: auto;
  max-height: 1.6em;
}
.header .header-top__row a {
  text-decoration: none;
}
@media (max-width: 767.98px) {
  .header .header-top__row {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.header .header-top__row .announcement__left {
  width: 80%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 80%;
          flex: 0 0 80%;
}
@media (max-width: 767.98px) {
  .header .header-top__row .announcement__left {
    width: 60%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 60%;
            flex: 0 0 60%;
  }
  .header .header-top__row .announcement__left p {
    font-size: 1.2rem;
  }
}
.header .header-top__row .announcement__right {
  width: 20%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
          flex: 0 0 20%;
}
@media (max-width: 767.98px) {
  .header .header-top__row .announcement__right {
    width: 40%;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 40%;
            flex: 0 0 40%;
    font-size: 1.2rem;
  }
}
.header .header-top__row h4 {
  font-size: 1.4rem;
  font-weight: inherit;
  margin: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
}
.header .header-top__row h4:first-child {
  text-align: left;
}
.header .header-top__row h4:last-child {
  text-align: right;
}
.header .header-top__row h4 a {
  font-size: inherit;
}
.header .header__inner {
  min-height: 9rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767.98px) {
  .header .header__inner {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
  }
}
.header .header__content {
  -webkit-box-flex: 1;
      -ms-flex: 1 1;
          flex: 1 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.logo img {
  max-height: 117px;
  max-width: 300px;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: left;
     object-position: left;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .logo img {
    max-height: 60px;
    max-width: 190px;
  }
}
/* ------------------------------------------------------------ *\
	Nav trigger
\* ------------------------------------------------------------ */
.nav-trigger {
  width: 2.2rem;
  height: 1.2rem;
  position: relative;
  margin: 0rem 0 0 0rem;
  background-color: transparent;
  border: none;
}
@media (min-width: 1030.02px) {
  .nav-trigger {
    display: none;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .nav-trigger {
    margin-bottom: 1rem;
  }
}
.nav-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 0.2rem;
  background-color: rgb(51, 51, 51);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.nav-trigger span:first-child {
  top: 0rem;
}
.nav-trigger span:nth-child(2) {
  top: 0.6rem;
}
.nav-trigger span:last-child {
  top: 1.2rem;
}
.nav-trigger.is-active span:first-child {
  top: 0.6rem;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.nav-trigger.is-active span:nth-child(2) {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
}
.nav-trigger.is-active span:last-child {
  top: 0.6rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.nav-trigger.is_open span:first-child {
  top: 0.6rem;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.nav-trigger.is_open span:nth-child(2) {
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
  opacity: 0;
  visibility: hidden;
}
.nav-trigger.is_open span:last-child {
  top: 0.6rem;
  -webkit-transform: rotate(-45deg);
      -ms-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
/* ------------------------------------------------------------ *\
	Hero
\* ------------------------------------------------------------ */
.hero {
  position: relative;
}
.hero .hero__bar {
  text-align: center;
  background: #D9272E;
  color: rgb(255, 255, 255);
  font-size: 2.3rem;
  padding: 2.7rem 2.5rem 2.3rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero .hero__bar {
    font-size: 1.9rem;
  }
}
.hero .hero__inner {
  position: relative;
}
.hero .hero__content.content-color {
  color: black;
}
.hero .hero__content {
  padding: 11.5rem 2.4rem 15.3rem;
  color: rgb(255, 255, 255);
  text-align: center;
  max-width: 93rem;
  margin: 0 auto;
  position: relative;
  -webkit-filter: drop-shadow(0 0.3rem 0.6rem rgba(0, 0, 0, 0.82));
          filter: drop-shadow(0 0.3rem 0.6rem rgba(0, 0, 0, 0.82));
  font-size: 2.7rem;
}
@media (max-width: 1023px) {
  .hero .hero__content {
    font-size: 2.3rem;
  }
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .hero .hero__content {
    font-size: 2rem;
    padding: 4rem 0 8rem;
  }
}
.hero .hero__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 48rem;
}
.hero .hero__image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.hero h1 {
  margin-bottom: 3rem;
}
@media (max-width: 1023px) {
  .hero h1 {
    margin-bottom: 2rem;
    line-height: 120%;
  }
}
.hero .hero__content p {
  margin-bottom: 3rem;
}
@media print {
  .hero {
    display: none !important;
  }
}
/* ------------------------------------------------------------ *\
	Main
\* ------------------------------------------------------------ */
.main {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  margin-top: 90px;
}
.main--landing-page {
  padding-top: 0;
}
@media print {
  .main {
    padding-top: 0;
  }
}
.input-element-validation-errors {
  color: red;
  font-size: 0.9em;
  margin-top: 0.25em;
}
.main-cart-checkout {
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1 0 auto;
          flex: 1 0 auto;
  margin-top: 86px;
}
.main > .flex-container {
  max-width: calc(125rem + 1rem * 2);
  padding-left: 1rem;
  padding-right: 1rem;
  margin: auto;
  width: 100%;
}
@media print {
  .main > .flex-container {
    width: 100% !important;
    padding: 0 !important;
    max-width: 100% !important;
  }
}
.main > .flex-container {
  padding-top: 3rem;
  padding-bottom: 3rem;
}
.flex-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-preferred-size: revert !important;
      flex-basis: revert !important;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  counter-reset: bullet-counter;
  width: 100%;
  width: -webkit-fill-available;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .flex-container .columns__column {
    padding-left: 0;
    padding-right: 0;
  }
}
.flex-container__no-padding .component {
  padding: 0 !important;
}
.flex-container__no-padding .component > .rich-text__wrapper {
  padding: 0 !important;
}
.flex-container__no-margin {
  margin: 0 !important;
  max-width: unset !important;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .flex-container {
    width: unset;
  }
}
.flex-container > .default__bullet-point {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 2rem;
  width: 100%;
}
.flex-container > .heading__underline {
  width: 100%;
  margin-top: 1.5rem;
  border-top: 1px solid #c5c5c5;
  padding-top: 1.5rem;
}
.flex-container > .default__bullet-point::before {
  content: counter(bullet-counter);
  counter-increment: bullet-counter;
  font-size: 29px;
  font-weight: 700;
  border: 5px solid #c5c5c5;
  border-radius: 50%;
  min-width: 50px;
  min-height: 50px;
  color: var(--default-bp-color);
  text-align: center;
  margin: 0 1rem;
}
.flex-container > .button--banner:not(:last-child) {
  margin-bottom: 1.5rem;
}
.bullet-point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.bullet-point > img {
  margin: 0.7rem;
}
.bullet-point > div h2 {
  margin-bottom: 0;
}
.button--banner > a {
  position: relative;
}
.button--text > p {
  margin-bottom: 0.6rem;
}
.dropdown-text__top {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-bottom: 1rem;
}
.dropdown-text__top i {
  font-size: 1.5rem;
}
.js-accordion > .is-active .dropdown-text__top div:last-child {
  -webkit-transform: scaleY(-1);
      -ms-transform: scaleY(-1);
          transform: scaleY(-1);
}
.gap-small {
  gap: 2rem;
}
.gap-medium {
  gap: 4rem;
}
.button-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 2rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .button-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1rem;
  }
}
.button-row > div:nth-child(odd) {
  width: 50%;
  text-align: right;
  padding-right: 1.5rem;
  font-size: 2rem;
  font-weight: 400;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .button-row > div:nth-child(odd) {
    padding-right: 0;
    text-align: center;
  }
}
.button-row > div:nth-child(even) {
  padding-left: 1.5rem;
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .button-row > div:nth-child(even) {
    padding-left: 0;
  }
}
.component {
  font-size: 1.6rem;
  font-weight: 400;
  padding: 3rem 0;
  /* Background image */
  /* Themes (background and text colour) */
  /* Width (container vs. full with) */
  /* Gutter (top and bottom padding) */
  /* Text alignment */
}
@media (max-width: 767px), screen and (max-width: 812px) and (orientation: landscape) {
  .component {
    padding: 2rem 0;
    font-size: 1.6rem;
  }
}
.component {
  background-repeat: no-repeat;
  background-size: cover;
}
.component__pre-heading {
  font-family: "Neutra Text", Handsean, sans-serif;
  font-size: 0.95em;
  font-weight: 700;
  text-transform: uppercase;
}
.component__subheading {
  font-size: 2rem;
  line-height: 2rem;
}
.component--theme-white {
  background-color: rgb(255, 255, 255);
  color: rgb(51, 51, 51);
}
.component--theme-white h1, .component--theme-white h2, .component--theme-white h3, .component--theme-white h4 {
  color: rgb(51, 51, 51);
}
.component--theme-gray {
  background-color: #f5f5f5;
  color: rgb(51, 51, 51);
}
.component--theme-gray h1, .component--theme-gray h2, .component--theme-gray h3, .component--theme-gray h4 {
  color: rgb(51, 51, 51);
}
.component--theme-gray-dark {
  background-color: #626262;
  color: rgb(255, 255, 255);
}
.component--theme-gray-dark h1, .component--theme-gray-dark h2, .component--theme-gray-dark h3, .component--theme-gray-dark h4 {
  color: rgb(255, 255, 255);
}
.component--theme-orange {
  background-color: #EF6917;
  color: rgb(255, 255, 255);
}
.component--theme-orange h1, .component--theme-orange h2, .component--theme-orange h3, .component--theme-orange h4 {
  color: rgb(255, 255, 255);
}
.component--theme-blue {
  background-color: #0e7bbd;
  color: rgb(255, 255, 255);
}
.component--theme-blue h1, .component--theme-blue h2, .component--theme-blue h3, .component--theme-blue h4 {
  color: rgb(255, 255, 255);
}
.component--theme-white-transparent {
  color: rgb(255, 255, 255);
}
.component--theme-white-transparent h1, .component--theme-white-transparent h2, .component--theme-white-transparent h3, .component--theme-white-transparent h4 {
  color: rgb(255, 255, 255);
}
.component--theme-blue-dark {
  background-color: #003A57;
  color: rgb(255, 255, 255);
}
.component--theme-blue-dark h1, .component--theme-blue-dark h2, .component--theme-blue-dark h3, .component--theme-blue-dark h4 {
  color: rgb(255, 255, 255);
}
.component--theme-purple {
  background-color: #8E6CAE;
  color: rgb(255, 255, 255);
}
.component--theme-purple h1, .component--theme-purple h2, .component--theme-purple h3, .component--theme-purple h4 {
  color: rgb(255, 255, 255);
}
.component--theme-black {
  background-color: rgb(51, 51, 51);
  color: rgb(255, 255, 255);
}
.component--theme-black h1, .component--theme-black h2, .component--theme-black h3, .component--theme-black h4 {
  color: rgb(255, 255, 255);
}
.component--theme-black-light-blue {
  background-color: #dceef7;
}
.component--theme-black-light-blue h1, .component--theme-black-light-blue h2, .component--theme-black-light-blue h3, .component--theme-black-light-blue h4 {
  color: rgb(51, 51, 51);
}
.component--theme-green {
  background-color: #1CAF4E;
  color: rgb(255, 255, 255);
}
.component--theme-green h1, .component--theme-green h2, .component--theme-green h3, .component--theme-green h4 {
  color: rgb(255, 255, 255);
}
@media (min-width: 767.02px) {
  .component--small-width > * {
    max-width: 1000px !important;
  }
}
.component--full-width {
  width: 100%;
}
.component--width-auto {
  max-width: 600px !important;
}
.component--full-height {
  min-height: calc(100vh - 9rem);
  max-height: calc(100vh - 9rem);
}
.main--landing-page .component--full-height {
  min-height: 100vh;
  max-height: 100vh;
}
.component--no-gutter {
  padding: 0;
}
.component--wide-gutter {
  padding: 6rem 0;
}
.component--extra-wide-gutter {
  padding: 10rem 0;
}
.component--centered {
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.component--left {
  text-align: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.component--left-center {
  text-align: left;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
@media (max-width: 1023px) {
  .component--left-center {
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.component--right {
  text-align: right;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
.component--right-center {
  text-align: right;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
}
@media (max-width: 1023px) {
  .component--right-center {
    text-align: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.component--justify-center {
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}
.component--justify-even {
  -webkit-box-pack: space-evenly !important;
      -ms-flex-pack: space-evenly !important;
          justify-content: space-evenly !important;
}
.item--centered {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.item--top-margin {
  margin-top: 1.5rem;
}
/* ------------------------------------------------------------ *\
  Utilities needed for layout
\* ------------------------------------------------------------ */
/**
  Rating stars
 */
.rating-stars {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}
.rating-stars__star {
  margin-right: 0.25rem;
}
.rating-stars__star:last-child {
  margin-right: 0;
}
.rating-stars__star--full .ico-star {
  fill: #EF6917;
}
.rating-stars__star--half .ico-star {
  fill: #EF6917;
}
.rating-stars__star .ico-star {
  width: 1.5rem;
  height: 1.5rem;
}
.center-content {
  max-width: 500px;
  margin: 0 auto;
  text-align: left;
}
/*# sourceMappingURL=critical.css.map */
