@charset "UTF-8";
*, *::after, *::before {
  box-sizing: inherit;
}

* {
  font: inherit;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, hr {
  margin: 0;
  padding: 0;
  border: 0;
}

html {
  box-sizing: border-box;
}

body {
  background-color: var(--color-bg, white);
}

@supports (-webkit-overflow-scrolling: touch) {
	#pelican-vehicle-selector {
		display: block;
	}
	.selector-dropdown{
		max-height: 400px !important;
	}
	.body-modal-open {
		bottom: 0;
		left: 0;
		position: fixed;
		right: 0;
		top: 0;
	}
}

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, main, form legend {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

button, input, textarea, select {
  margin: 0;
}

.btn, .form-control, .link, .reset {
  /* reset style of buttons + form controls */
  background-color: transparent;
  padding: 0;
  border: 0;
  border-radius: 0;
  color: inherit;
  line-height: inherit;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select.form-control::-ms-expand {
  display: none;
  /* hide Select default icon on IE */
}

textarea {
  resize: vertical;
  overflow: auto;
  vertical-align: top;
}

input::-ms-clear {
  display: none;
  /*  hide X icon in IE and Edge */
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img, video, svg {
  max-width: 100%;
}

/*  how to edit the breakpoints -> copy the $breakpoints SASS map (remove the !default flag) and import it before the 'base' and 'custom-style' files -> check the _style.scss file
  https: codyhouse.co/ds/docs/framework/breakpoints#edit */
/*   --------------------------------

  Typography

  --------------------------------

  edit font rendering -> tip: use for light text on dark backgrounds */
/*  crop top space on text elements - caused by line height */
/*  edit text unit on a component level */
/*   --------------------------------

  Spacing

  --------------------------------

  edit space unit on a component level */
/* 
  --------------------------------

  Reset

  --------------------------------

  reset user agent style */
/* 
  --------------------------------

  Colors

  --------------------------------

  define HSL color variable */
/*   return color with different opacity value */
/*   return color with different lightness value */
/*   modify color HSLA values */
/*   replace substring with another string
  credits: https: css-tricks.com/snippets/sass/str-replace-function/ */
/* 
  --------------------------------

  Accessibility

  --------------------------------

  hide - content made available only to screen readers */
/*   show */
/* 
  --------------------------------

  Grid & Layout

  -------------------------------- */
/*   used to round width to a number with 2 decimal places - used for IE fallback */
/*   used to create the auto-size columns of the grid system (.col class) */
/*   CSS Grid Layout fallback */
/* 
  --------------------------------

  CSS Triangle

  -------------------------------- */
/*   use the 📁custom-style/_colors.scss file to set the color palette of your project
 */
[data-theme] {
  background-color: var(--color-bg, white);
  color: var(--color-contrast-high, #313135);
}

/*  Text Colors */
.text-white, .text-white a, .text-white span {
  color: var(--color-white);
}

.text-prim-color, .text-prim-color a {
  color: var(--color-primary-darker);
}

/*  default spacing scale - we suggest you don't modify this file
  use the 📁custom-style/_spacing.scss file to set your custom spacing scale
 */
:root {
  --space-unit:  1em;
}

:root, * {
  --space-xxxxs: calc(0.125 * var(--space-unit));
  --space-xxxs:  calc(0.25 * var(--space-unit));
  --space-xxs:   calc(0.375 * var(--space-unit));
  --space-xs:    calc(0.5 * var(--space-unit));
  --space-sm:    calc(0.75 * var(--space-unit));
  --space-md:    calc(1.25 * var(--space-unit));
  --space-lg:    calc(2 * var(--space-unit));
  --space-xl:    calc(3.25 * var(--space-unit));
  --space-xxl:   calc(5.25 * var(--space-unit));
  --space-xxxl:  calc(8.5 * var(--space-unit));
  --space-xxxxl: calc(13.75 * var(--space-unit));
  --component-padding: var(--space-md);
}

.display-grid {
  display: grid;
  grid-gap: 0 4em;
  grid-template-columns: 72% 28%;
  max-width: 74em;
}

.display-grid .grid-main {
  width: 100%;
}

.display-grid .grid-side {
  width: 80%;
}

@media (max-width: 64em) {
  .display-grid {
    display: block;
  }
  .display-grid .grid-side {
    width: 100%;
  }
}

@media (max-width: 64em) {
  .display-grid .flex-reverse {
    display: flex;
    flex-direction: column-reverse;
  }
}

/* --------------------------------

    Container - center content on x-axis

    -------------------------------- */
.container {
  width: calc(100% - 2*var(--component-padding));
  margin-left: auto;
  margin-right: auto;
}

/*     --------------------------------

    Grid System

    -------------------------------- */
.grid {
  --gap: 0px;
  --gap-x: var(--gap);
  --gap-y: var(--gap);
  --offset: var(--gap-x);
  display: flex;
  flex-wrap: wrap;
}

.grid > * {
  flex-basis: 100%;
  max-width: 100%;
  min-width: 0;
}

/* #region (fallback for older browsers) */
[class*="gap-xxxxs"], [class*="gap-xxxs"], [class*="gap-xxs"], [class*="gap-xs"], [class*="gap-sm"], [class*="gap-md"], [class*="gap-lg"], [class*="gap-xl"], [class*="gap-xxl"], [class*="gap-xxxl"], [class*="gap-xxxxl"], [class*="grid-gap-"], [class*="flex-gap-"] {
  margin-bottom: -0.75em;
  margin-left: -0.75em;
}

[class*="gap-xxxxs"] > *, [class*="gap-xxxs"] > *, [class*="gap-xxs"] > *, [class*="gap-xs"] > *, [class*="gap-sm"] > *, [class*="gap-md"] > *, [class*="gap-lg"] > *, [class*="gap-xl"] > *, [class*="gap-xxl"] > *, [class*="gap-xxxl"] > *, [class*="gap-xxxxl"] > *, [class*="grid-gap-"] > *, [class*="flex-gap-"] > * {
  margin-bottom: 0.75em;
  margin-left: 0.75em;
}

[class*="gap-x-xxxxs"], [class*="gap-x-xxxs"], [class*="gap-x-xxs"], [class*="gap-x-xs"], [class*="gap-x-sm"], [class*="gap-x-md"], [class*="gap-x-lg"], [class*="gap-x-xl"], [class*="gap-x-xxl"], [class*="gap-x-xxxl"], [class*="gap-x-xxxxl"] {
  margin-left: -0.75em;
}

[class*="gap-x-xxxxs"] > *, [class*="gap-x-xxxs"] > *, [class*="gap-x-xxs"] > *, [class*="gap-x-xs"] > *, [class*="gap-x-sm"] > *, [class*="gap-x-md"] > *, [class*="gap-x-lg"] > *, [class*="gap-x-xl"] > *, [class*="gap-x-xxl"] > *, [class*="gap-x-xxxl"] > *, [class*="gap-x-xxxxl"] > * {
  margin-left: 0.75em;
}

[class*="gap-y-xxxxs"], [class*="gap-y-xxxs"], [class*="gap-y-xxs"], [class*="gap-y-xs"], [class*="gap-y-sm"], [class*="gap-y-md"], [class*="gap-y-lg"], [class*="gap-y-xl"], [class*="gap-y-xxl"], [class*="gap-y-xxxl"], [class*="gap-y-xxxxl"] {
  margin-bottom: -0.75em;
}

[class*="gap-y-xxxxs"] > *, [class*="gap-y-xxxs"] > *, [class*="gap-y-xxs"] > *, [class*="gap-y-xs"] > *, [class*="gap-y-sm"] > *, [class*="gap-y-md"] > *, [class*="gap-y-lg"] > *, [class*="gap-y-xl"] > *, [class*="gap-y-xxl"] > *, [class*="gap-y-xxxl"] > *, [class*="gap-y-xxxxl"] > * {
  margin-bottom: 0.75em;
}

/* #endregion */
@supports (--css: variables) {
  .grid {
    margin-bottom: calc(-1 * var(--gap-y));
    margin-left: calc(-1 * var(--gap-x));
  }
  .grid > * {
    margin-bottom: var(--gap-y);
    margin-left: var(--offset);
  }
  .flex[class*="gap-"], .inline-flex[class*="gap-"] {
    margin-bottom: calc(-1 * var(--gap-y, 0));
    margin-left: calc(-1 * var(--gap-x, 0));
  }
  .flex[class*="gap-"] > *, .inline-flex[class*="gap-"] > * {
    margin-bottom: var(--gap-y, 0);
    margin-left: var(--gap-x, 0);
  }
  .gap-xxxxs, .grid-gap-xxxxs, .flex-gap-xxxxs {
    --gap-x: var(--space-xxxxs);
    --gap-y: var(--space-xxxxs);
  }
  .gap-xxxs, .grid-gap-xxxs, .flex-gap-xxxs {
    --gap-x: var(--space-xxxs);
    --gap-y: var(--space-xxxs);
  }
  .gap-xxs, .grid-gap-xxs, .flex-gap-xxs {
    --gap-x: var(--space-xxs);
    --gap-y: var(--space-xxs);
  }
  .gap-xs, .grid-gap-xs, .flex-gap-xs {
    --gap-x: var(--space-xs);
    --gap-y: var(--space-xs);
  }
  .gap-sm, .grid-gap-sm, .flex-gap-sm {
    --gap-x: var(--space-sm);
    --gap-y: var(--space-sm);
  }
  .gap-md, .grid-gap-md, .flex-gap-md {
    --gap-x: var(--space-md);
    --gap-y: var(--space-md);
  }
  .gap-lg, .grid-gap-lg, .flex-gap-lg {
    --gap-x: var(--space-lg);
    --gap-y: var(--space-lg);
  }
  .gap-xl, .grid-gap-xl, .flex-gap-xl {
    --gap-x: var(--space-xl);
    --gap-y: var(--space-xl);
  }
  .gap-xxl, .grid-gap-xxl, .flex-gap-xxl {
    --gap-x: var(--space-xxl);
    --gap-y: var(--space-xxl);
  }
  .gap-xxxl, .grid-gap-xxxl, .flex-gap-xxxl {
    --gap-x: var(--space-xxxl);
    --gap-y: var(--space-xxxl);
  }
  .gap-xxxxl, .grid-gap-xxxxl, .flex-gap-xxxxl {
    --gap-x: var(--space-xxxxl);
    --gap-y: var(--space-xxxxl);
  }
  .gap-x-xxxxs {
    --gap-x: var(--space-xxxxs);
  }
  .gap-x-xxxs {
    --gap-x: var(--space-xxxs);
  }
  .gap-x-xxs {
    --gap-x: var(--space-xxs);
  }
  .gap-x-xs {
    --gap-x: var(--space-xs);
  }
  .gap-x-sm {
    --gap-x: var(--space-sm);
  }
  .gap-x-md {
    --gap-x: var(--space-md);
  }
  .gap-x-lg {
    --gap-x: var(--space-lg);
  }
  .gap-x-xl {
    --gap-x: var(--space-xl);
  }
  .gap-x-xxl {
    --gap-x: var(--space-xxl);
  }
  .gap-x-xxxl {
    --gap-x: var(--space-xxxl);
  }
  .gap-x-xxxxl {
    --gap-x: var(--space-xxxxl);
  }
  .gap-y-xxxxs {
    --gap-y: var(--space-xxxxs);
  }
  .gap-y-xxxs {
    --gap-y: var(--space-xxxs);
  }
  .gap-y-xxs {
    --gap-y: var(--space-xxs);
  }
  .gap-y-xs {
    --gap-y: var(--space-xs);
  }
  .gap-y-sm {
    --gap-y: var(--space-sm);
  }
  .gap-y-md {
    --gap-y: var(--space-md);
  }
  .gap-y-lg {
    --gap-y: var(--space-lg);
  }
  .gap-y-xl {
    --gap-y: var(--space-xl);
  }
  .gap-y-xxl {
    --gap-y: var(--space-xxl);
  }
  .gap-y-xxxl {
    --gap-y: var(--space-xxxl);
  }
  .gap-y-xxxxl {
    --gap-y: var(--space-xxxxl);
  }
}

.col {
  /* expandable column */
  flex-grow: 1;
  flex-basis: 0;
  max-width: 100%;
}

.col-1 {
  flex-basis: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
}

.col-2 {
  flex-basis: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
}

.col-3 {
  flex-basis: calc( 25% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 25% - 0.01px - var(--gap-x, 0.75em));
}

.col-4 {
  flex-basis: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
}

.col-5 {
  flex-basis: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
}

.col-6 {
  flex-basis: calc( 50% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 50% - 0.01px - var(--gap-x, 0.75em));
}

.col-7 {
  flex-basis: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
}

.col-8 {
  flex-basis: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
}

.col-9 {
  flex-basis: calc( 75% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 75% - 0.01px - var(--gap-x, 0.75em));
}

.col-10 {
  flex-basis: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
}

.col-11 {
  flex-basis: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
}

.col-12 {
  flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
}

.col-content {
  /* column width depends on its content */
  flex-grow: 0;
  flex-basis: initial;
  max-width: initial;
}

.offset-1 {
  --offset: calc(8.33% + var(--gap-x, 0.75em));
}

.offset-2 {
  --offset: calc(16.66% + var(--gap-x, 0.75em));
}

.offset-3 {
  --offset: calc(25% + var(--gap-x, 0.75em));
}

.offset-4 {
  --offset: calc(33.33% + var(--gap-x, 0.75em));
}

.offset-5 {
  --offset: calc(41.66% + var(--gap-x, 0.75em));
}

.offset-6 {
  --offset: calc(50% + var(--gap-x, 0.75em));
}

.offset-7 {
  --offset: calc(58.33% + var(--gap-x, 0.75em));
}

.offset-8 {
  --offset: calc(66.66% + var(--gap-x, 0.75em));
}

.offset-9 {
  --offset: calc(75% + var(--gap-x, 0.75em));
}

.offset-10 {
  --offset: calc(83.33% + var(--gap-x, 0.75em));
}

.offset-11 {
  --offset: calc(91.66% + var(--gap-x, 0.75em));
}

@media (min-width: 32rem) {
  .col\@xs {
    /* auto-sized column */
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-1\@xs {
    flex-basis: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-2\@xs {
    flex-basis: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-3\@xs {
    flex-basis: calc( 25% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 25% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-4\@xs {
    flex-basis: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-5\@xs {
    flex-basis: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-6\@xs {
    flex-basis: calc( 50% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 50% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-7\@xs {
    flex-basis: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-8\@xs {
    flex-basis: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-9\@xs {
    flex-basis: calc( 75% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 75% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-10\@xs {
    flex-basis: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-11\@xs {
    flex-basis: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-12\@xs {
    flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-content\@xs {
    flex-grow: 0;
    flex-basis: initial;
    max-width: initial;
  }
  .offset-1\@xs {
    --offset: calc(8.33% + var(--gap-x, 0.75em));
  }
  .offset-2\@xs {
    --offset: calc(16.66% + var(--gap-x, 0.75em));
  }
  .offset-3\@xs {
    --offset: calc(25% + var(--gap-x, 0.75em));
  }
  .offset-4\@xs {
    --offset: calc(33.33% + var(--gap-x, 0.75em));
  }
  .offset-5\@xs {
    --offset: calc(41.66% + var(--gap-x, 0.75em));
  }
  .offset-6\@xs {
    --offset: calc(50% + var(--gap-x, 0.75em));
  }
  .offset-7\@xs {
    --offset: calc(58.33% + var(--gap-x, 0.75em));
  }
  .offset-8\@xs {
    --offset: calc(66.66% + var(--gap-x, 0.75em));
  }
  .offset-9\@xs {
    --offset: calc(75% + var(--gap-x, 0.75em));
  }
  .offset-10\@xs {
    --offset: calc(83.33% + var(--gap-x, 0.75em));
  }
  .offset-11\@xs {
    --offset: calc(91.66% + var(--gap-x, 0.75em));
  }
  .offset-0\@xs {
    --offset: var(--gap-x);
  }
  @supports (--css: variables) {
    .gap-xxxxs\@xs {
      --gap-x: var(--space-xxxxs);
      --gap-y: var(--space-xxxxs);
    }
    .gap-xxxs\@xs {
      --gap-x: var(--space-xxxs);
      --gap-y: var(--space-xxxs);
    }
    .gap-xxs\@xs {
      --gap-x: var(--space-xxs);
      --gap-y: var(--space-xxs);
    }
    .gap-xs\@xs {
      --gap-x: var(--space-xs);
      --gap-y: var(--space-xs);
    }
    .gap-sm\@xs {
      --gap-x: var(--space-sm);
      --gap-y: var(--space-sm);
    }
    .gap-md\@xs {
      --gap-x: var(--space-md);
      --gap-y: var(--space-md);
    }
    .gap-lg\@xs {
      --gap-x: var(--space-lg);
      --gap-y: var(--space-lg);
    }
    .gap-xl\@xs {
      --gap-x: var(--space-xl);
      --gap-y: var(--space-xl);
    }
    .gap-xxl\@xs {
      --gap-x: var(--space-xxl);
      --gap-y: var(--space-xxl);
    }
    .gap-xxxl\@xs {
      --gap-x: var(--space-xxxl);
      --gap-y: var(--space-xxxl);
    }
    .gap-xxxxl\@xs {
      --gap-x: var(--space-xxxxl);
      --gap-y: var(--space-xxxxl);
    }
    .gap-0\@xs {
      --gap-x: 0px;
      --gap-y: 0px;
    }
    .gap-x-xxxxs\@xs {
      --gap-x: var(--space-xxxxs);
    }
    .gap-x-xxxs\@xs {
      --gap-x: var(--space-xxxs);
    }
    .gap-x-xxs\@xs {
      --gap-x: var(--space-xxs);
    }
    .gap-x-xs\@xs {
      --gap-x: var(--space-xs);
    }
    .gap-x-sm\@xs {
      --gap-x: var(--space-sm);
    }
    .gap-x-md\@xs {
      --gap-x: var(--space-md);
    }
    .gap-x-lg\@xs {
      --gap-x: var(--space-lg);
    }
    .gap-x-xl\@xs {
      --gap-x: var(--space-xl);
    }
    .gap-x-xxl\@xs {
      --gap-x: var(--space-xxl);
    }
    .gap-x-xxxl\@xs {
      --gap-x: var(--space-xxxl);
    }
    .gap-x-xxxxl\@xs {
      --gap-x: var(--space-xxxxl);
    }
    .gap-x-0\@xs {
      --gap-x: 0px;
    }
    .gap-y-xxxxs\@xs {
      --gap-y: var(--space-xxxxs);
    }
    .gap-y-xxxs\@xs {
      --gap-y: var(--space-xxxs);
    }
    .gap-y-xxs\@xs {
      --gap-y: var(--space-xxs);
    }
    .gap-y-xs\@xs {
      --gap-y: var(--space-xs);
    }
    .gap-y-sm\@xs {
      --gap-y: var(--space-sm);
    }
    .gap-y-md\@xs {
      --gap-y: var(--space-md);
    }
    .gap-y-lg\@xs {
      --gap-y: var(--space-lg);
    }
    .gap-y-xl\@xs {
      --gap-y: var(--space-xl);
    }
    .gap-y-xxl\@xs {
      --gap-y: var(--space-xxl);
    }
    .gap-y-xxxl\@xs {
      --gap-y: var(--space-xxxl);
    }
    .gap-y-xxxxl\@xs {
      --gap-y: var(--space-xxxxl);
    }
    .gap-y-0\@xs {
      --gap-y: 0px;
    }
  }
}

@media (min-width: 48rem) {
  .col\@sm {
    /* auto-sized column */
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-1\@sm {
    flex-basis: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-2\@sm {
    flex-basis: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-3\@sm {
    flex-basis: calc( 25% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 25% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-4\@sm {
    flex-basis: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-5\@sm {
    flex-basis: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-6\@sm {
    flex-basis: calc( 50% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 50% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-7\@sm {
    flex-basis: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-8\@sm {
    flex-basis: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-9\@sm {
    flex-basis: calc( 75% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 75% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-10\@sm {
    flex-basis: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-11\@sm {
    flex-basis: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-12\@sm {
    flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-content\@sm {
    flex-grow: 0;
    flex-basis: initial;
    max-width: initial;
  }
  .offset-1\@sm {
    --offset: calc(8.33% + var(--gap-x, 0.75em));
  }
  .offset-2\@sm {
    --offset: calc(16.66% + var(--gap-x, 0.75em));
  }
  .offset-3\@sm {
    --offset: calc(25% + var(--gap-x, 0.75em));
  }
  .offset-4\@sm {
    --offset: calc(33.33% + var(--gap-x, 0.75em));
  }
  .offset-5\@sm {
    --offset: calc(41.66% + var(--gap-x, 0.75em));
  }
  .offset-6\@sm {
    --offset: calc(50% + var(--gap-x, 0.75em));
  }
  .offset-7\@sm {
    --offset: calc(58.33% + var(--gap-x, 0.75em));
  }
  .offset-8\@sm {
    --offset: calc(66.66% + var(--gap-x, 0.75em));
  }
  .offset-9\@sm {
    --offset: calc(75% + var(--gap-x, 0.75em));
  }
  .offset-10\@sm {
    --offset: calc(83.33% + var(--gap-x, 0.75em));
  }
  .offset-11\@sm {
    --offset: calc(91.66% + var(--gap-x, 0.75em));
  }
  .offset-0\@sm {
    --offset: var(--gap-x);
  }
  @supports (--css: variables) {
    .gap-xxxxs\@sm {
      --gap-x: var(--space-xxxxs);
      --gap-y: var(--space-xxxxs);
    }
    .gap-xxxs\@sm {
      --gap-x: var(--space-xxxs);
      --gap-y: var(--space-xxxs);
    }
    .gap-xxs\@sm {
      --gap-x: var(--space-xxs);
      --gap-y: var(--space-xxs);
    }
    .gap-xs\@sm {
      --gap-x: var(--space-xs);
      --gap-y: var(--space-xs);
    }
    .gap-sm\@sm {
      --gap-x: var(--space-sm);
      --gap-y: var(--space-sm);
    }
    .gap-md\@sm {
      --gap-x: var(--space-md);
      --gap-y: var(--space-md);
    }
    .gap-lg\@sm {
      --gap-x: var(--space-lg);
      --gap-y: var(--space-lg);
    }
    .gap-xl\@sm {
      --gap-x: var(--space-xl);
      --gap-y: var(--space-xl);
    }
    .gap-xxl\@sm {
      --gap-x: var(--space-xxl);
      --gap-y: var(--space-xxl);
    }
    .gap-xxxl\@sm {
      --gap-x: var(--space-xxxl);
      --gap-y: var(--space-xxxl);
    }
    .gap-xxxxl\@sm {
      --gap-x: var(--space-xxxxl);
      --gap-y: var(--space-xxxxl);
    }
    .gap-0\@sm {
      --gap-x: 0px;
      --gap-y: 0px;
    }
    .gap-x-xxxxs\@sm {
      --gap-x: var(--space-xxxxs);
    }
    .gap-x-xxxs\@sm {
      --gap-x: var(--space-xxxs);
    }
    .gap-x-xxs\@sm {
      --gap-x: var(--space-xxs);
    }
    .gap-x-xs\@sm {
      --gap-x: var(--space-xs);
    }
    .gap-x-sm\@sm {
      --gap-x: var(--space-sm);
    }
    .gap-x-md\@sm {
      --gap-x: var(--space-md);
    }
    .gap-x-lg\@sm {
      --gap-x: var(--space-lg);
    }
    .gap-x-xl\@sm {
      --gap-x: var(--space-xl);
    }
    .gap-x-xxl\@sm {
      --gap-x: var(--space-xxl);
    }
    .gap-x-xxxl\@sm {
      --gap-x: var(--space-xxxl);
    }
    .gap-x-xxxxl\@sm {
      --gap-x: var(--space-xxxxl);
    }
    .gap-x-0\@sm {
      --gap-x: 0px;
    }
    .gap-y-xxxxs\@sm {
      --gap-y: var(--space-xxxxs);
    }
    .gap-y-xxxs\@sm {
      --gap-y: var(--space-xxxs);
    }
    .gap-y-xxs\@sm {
      --gap-y: var(--space-xxs);
    }
    .gap-y-xs\@sm {
      --gap-y: var(--space-xs);
    }
    .gap-y-sm\@sm {
      --gap-y: var(--space-sm);
    }
    .gap-y-md\@sm {
      --gap-y: var(--space-md);
    }
    .gap-y-lg\@sm {
      --gap-y: var(--space-lg);
    }
    .gap-y-xl\@sm {
      --gap-y: var(--space-xl);
    }
    .gap-y-xxl\@sm {
      --gap-y: var(--space-xxl);
    }
    .gap-y-xxxl\@sm {
      --gap-y: var(--space-xxxl);
    }
    .gap-y-xxxxl\@sm {
      --gap-y: var(--space-xxxxl);
    }
    .gap-y-0\@sm {
      --gap-y: 0px;
    }
  }
}

@media (min-width: 64rem) {
  .col\@md {
    /* auto-sized column */
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-1\@md {
    flex-basis: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-2\@md {
    flex-basis: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-3\@md {
    flex-basis: calc( 25% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 25% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-4\@md {
    flex-basis: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-5\@md {
    flex-basis: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-6\@md {
    flex-basis: calc( 50% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 50% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-7\@md {
    flex-basis: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-8\@md {
    flex-basis: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-9\@md {
    flex-basis: calc( 75% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 75% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-10\@md {
    flex-basis: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-11\@md {
    flex-basis: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-12\@md {
    flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-content\@md {
    flex-grow: 0;
    flex-basis: initial;
    max-width: initial;
  }
  .offset-1\@md {
    --offset: calc(8.33% + var(--gap-x, 0.75em));
  }
  .offset-2\@md {
    --offset: calc(16.66% + var(--gap-x, 0.75em));
  }
  .offset-3\@md {
    --offset: calc(25% + var(--gap-x, 0.75em));
  }
  .offset-4\@md {
    --offset: calc(33.33% + var(--gap-x, 0.75em));
  }
  .offset-5\@md {
    --offset: calc(41.66% + var(--gap-x, 0.75em));
  }
  .offset-6\@md {
    --offset: calc(50% + var(--gap-x, 0.75em));
  }
  .offset-7\@md {
    --offset: calc(58.33% + var(--gap-x, 0.75em));
  }
  .offset-8\@md {
    --offset: calc(66.66% + var(--gap-x, 0.75em));
  }
  .offset-9\@md {
    --offset: calc(75% + var(--gap-x, 0.75em));
  }
  .offset-10\@md {
    --offset: calc(83.33% + var(--gap-x, 0.75em));
  }
  .offset-11\@md {
    --offset: calc(91.66% + var(--gap-x, 0.75em));
  }
  .offset-0\@md {
    --offset: var(--gap-x);
  }
  @supports (--css: variables) {
    .gap-xxxxs\@md {
      --gap-x: var(--space-xxxxs);
      --gap-y: var(--space-xxxxs);
    }
    .gap-xxxs\@md {
      --gap-x: var(--space-xxxs);
      --gap-y: var(--space-xxxs);
    }
    .gap-xxs\@md {
      --gap-x: var(--space-xxs);
      --gap-y: var(--space-xxs);
    }
    .gap-xs\@md {
      --gap-x: var(--space-xs);
      --gap-y: var(--space-xs);
    }
    .gap-sm\@md {
      --gap-x: var(--space-sm);
      --gap-y: var(--space-sm);
    }
    .gap-md\@md {
      --gap-x: var(--space-md);
      --gap-y: var(--space-md);
    }
    .gap-lg\@md {
      --gap-x: var(--space-lg);
      --gap-y: var(--space-lg);
    }
    .gap-xl\@md {
      --gap-x: var(--space-xl);
      --gap-y: var(--space-xl);
    }
    .gap-xxl\@md {
      --gap-x: var(--space-xxl);
      --gap-y: var(--space-xxl);
    }
    .gap-xxxl\@md {
      --gap-x: var(--space-xxxl);
      --gap-y: var(--space-xxxl);
    }
    .gap-xxxxl\@md {
      --gap-x: var(--space-xxxxl);
      --gap-y: var(--space-xxxxl);
    }
    .gap-0\@md {
      --gap-x: 0px;
      --gap-y: 0px;
    }
    .gap-x-xxxxs\@md {
      --gap-x: var(--space-xxxxs);
    }
    .gap-x-xxxs\@md {
      --gap-x: var(--space-xxxs);
    }
    .gap-x-xxs\@md {
      --gap-x: var(--space-xxs);
    }
    .gap-x-xs\@md {
      --gap-x: var(--space-xs);
    }
    .gap-x-sm\@md {
      --gap-x: var(--space-sm);
    }
    .gap-x-md\@md {
      --gap-x: var(--space-md);
    }
    .gap-x-lg\@md {
      --gap-x: var(--space-lg);
    }
    .gap-x-xl\@md {
      --gap-x: var(--space-xl);
    }
    .gap-x-xxl\@md {
      --gap-x: var(--space-xxl);
    }
    .gap-x-xxxl\@md {
      --gap-x: var(--space-xxxl);
    }
    .gap-x-xxxxl\@md {
      --gap-x: var(--space-xxxxl);
    }
    .gap-x-0\@md {
      --gap-x: 0px;
    }
    .gap-y-xxxxs\@md {
      --gap-y: var(--space-xxxxs);
    }
    .gap-y-xxxs\@md {
      --gap-y: var(--space-xxxs);
    }
    .gap-y-xxs\@md {
      --gap-y: var(--space-xxs);
    }
    .gap-y-xs\@md {
      --gap-y: var(--space-xs);
    }
    .gap-y-sm\@md {
      --gap-y: var(--space-sm);
    }
    .gap-y-md\@md {
      --gap-y: var(--space-md);
    }
    .gap-y-lg\@md {
      --gap-y: var(--space-lg);
    }
    .gap-y-xl\@md {
      --gap-y: var(--space-xl);
    }
    .gap-y-xxl\@md {
      --gap-y: var(--space-xxl);
    }
    .gap-y-xxxl\@md {
      --gap-y: var(--space-xxxl);
    }
    .gap-y-xxxxl\@md {
      --gap-y: var(--space-xxxxl);
    }
    .gap-y-0\@md {
      --gap-y: 0px;
    }
  }
}

@media (min-width: 71.25rem) {
  .col\@lg {
    /* auto-sized column */
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-1\@lg {
    flex-basis: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-2\@lg {
    flex-basis: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-3\@lg {
    flex-basis: calc( 25% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 25% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-4\@lg {
    flex-basis: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-5\@lg {
    flex-basis: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-6\@lg {
    flex-basis: calc( 50% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 50% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-7\@lg {
    flex-basis: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-8\@lg {
    flex-basis: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-9\@lg {
    flex-basis: calc( 75% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 75% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-10\@lg {
    flex-basis: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-11\@lg {
    flex-basis: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-12\@lg {
    flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-content\@lg {
    flex-grow: 0;
    flex-basis: initial;
    max-width: initial;
  }
  .offset-1\@lg {
    --offset: calc(8.33% + var(--gap-x, 0.75em));
  }
  .offset-2\@lg {
    --offset: calc(16.66% + var(--gap-x, 0.75em));
  }
  .offset-3\@lg {
    --offset: calc(25% + var(--gap-x, 0.75em));
  }
  .offset-4\@lg {
    --offset: calc(33.33% + var(--gap-x, 0.75em));
  }
  .offset-5\@lg {
    --offset: calc(41.66% + var(--gap-x, 0.75em));
  }
  .offset-6\@lg {
    --offset: calc(50% + var(--gap-x, 0.75em));
  }
  .offset-7\@lg {
    --offset: calc(58.33% + var(--gap-x, 0.75em));
  }
  .offset-8\@lg {
    --offset: calc(66.66% + var(--gap-x, 0.75em));
  }
  .offset-9\@lg {
    --offset: calc(75% + var(--gap-x, 0.75em));
  }
  .offset-10\@lg {
    --offset: calc(83.33% + var(--gap-x, 0.75em));
  }
  .offset-11\@lg {
    --offset: calc(91.66% + var(--gap-x, 0.75em));
  }
  .offset-0\@lg {
    --offset: var(--gap-x);
  }
  @supports (--css: variables) {
    .gap-xxxxs\@lg {
      --gap-x: var(--space-xxxxs);
      --gap-y: var(--space-xxxxs);
    }
    .gap-xxxs\@lg {
      --gap-x: var(--space-xxxs);
      --gap-y: var(--space-xxxs);
    }
    .gap-xxs\@lg {
      --gap-x: var(--space-xxs);
      --gap-y: var(--space-xxs);
    }
    .gap-xs\@lg {
      --gap-x: var(--space-xs);
      --gap-y: var(--space-xs);
    }
    .gap-sm\@lg {
      --gap-x: var(--space-sm);
      --gap-y: var(--space-sm);
    }
    .gap-md\@lg {
      --gap-x: var(--space-md);
      --gap-y: var(--space-md);
    }
    .gap-lg\@lg {
      --gap-x: var(--space-lg);
      --gap-y: var(--space-lg);
    }
    .gap-xl\@lg {
      --gap-x: var(--space-xl);
      --gap-y: var(--space-xl);
    }
    .gap-xxl\@lg {
      --gap-x: var(--space-xxl);
      --gap-y: var(--space-xxl);
    }
    .gap-xxxl\@lg {
      --gap-x: var(--space-xxxl);
      --gap-y: var(--space-xxxl);
    }
    .gap-xxxxl\@lg {
      --gap-x: var(--space-xxxxl);
      --gap-y: var(--space-xxxxl);
    }
    .gap-0\@lg {
      --gap-x: 0px;
      --gap-y: 0px;
    }
    .gap-x-xxxxs\@lg {
      --gap-x: var(--space-xxxxs);
    }
    .gap-x-xxxs\@lg {
      --gap-x: var(--space-xxxs);
    }
    .gap-x-xxs\@lg {
      --gap-x: var(--space-xxs);
    }
    .gap-x-xs\@lg {
      --gap-x: var(--space-xs);
    }
    .gap-x-sm\@lg {
      --gap-x: var(--space-sm);
    }
    .gap-x-md\@lg {
      --gap-x: var(--space-md);
    }
    .gap-x-lg\@lg {
      --gap-x: var(--space-lg);
    }
    .gap-x-xl\@lg {
      --gap-x: var(--space-xl);
    }
    .gap-x-xxl\@lg {
      --gap-x: var(--space-xxl);
    }
    .gap-x-xxxl\@lg {
      --gap-x: var(--space-xxxl);
    }
    .gap-x-xxxxl\@lg {
      --gap-x: var(--space-xxxxl);
    }
    .gap-x-0\@lg {
      --gap-x: 0px;
    }
    .gap-y-xxxxs\@lg {
      --gap-y: var(--space-xxxxs);
    }
    .gap-y-xxxs\@lg {
      --gap-y: var(--space-xxxs);
    }
    .gap-y-xxs\@lg {
      --gap-y: var(--space-xxs);
    }
    .gap-y-xs\@lg {
      --gap-y: var(--space-xs);
    }
    .gap-y-sm\@lg {
      --gap-y: var(--space-sm);
    }
    .gap-y-md\@lg {
      --gap-y: var(--space-md);
    }
    .gap-y-lg\@lg {
      --gap-y: var(--space-lg);
    }
    .gap-y-xl\@lg {
      --gap-y: var(--space-xl);
    }
    .gap-y-xxl\@lg {
      --gap-y: var(--space-xxl);
    }
    .gap-y-xxxl\@lg {
      --gap-y: var(--space-xxxl);
    }
    .gap-y-xxxxl\@lg {
      --gap-y: var(--space-xxxxl);
    }
    .gap-y-0\@lg {
      --gap-y: 0px;
    }
  }
}

@media (min-width: 90rem) {
  .col\@xl {
    /* auto-sized column */
    flex-grow: 1;
    flex-basis: 0;
    max-width: 100%;
  }
  .col-1\@xl {
    flex-basis: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 8.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-2\@xl {
    flex-basis: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 16.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-3\@xl {
    flex-basis: calc( 25% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 25% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-4\@xl {
    flex-basis: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 33.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-5\@xl {
    flex-basis: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 41.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-6\@xl {
    flex-basis: calc( 50% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 50% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-7\@xl {
    flex-basis: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 58.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-8\@xl {
    flex-basis: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 66.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-9\@xl {
    flex-basis: calc( 75% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 75% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-10\@xl {
    flex-basis: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 83.33% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-11\@xl {
    flex-basis: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 91.66% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-12\@xl {
    flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  }
  .col-content\@xl {
    flex-grow: 0;
    flex-basis: initial;
    max-width: initial;
  }
  .offset-1\@xl {
    --offset: calc(8.33% + var(--gap-x, 0.75em));
  }
  .offset-2\@xl {
    --offset: calc(16.66% + var(--gap-x, 0.75em));
  }
  .offset-3\@xl {
    --offset: calc(25% + var(--gap-x, 0.75em));
  }
  .offset-4\@xl {
    --offset: calc(33.33% + var(--gap-x, 0.75em));
  }
  .offset-5\@xl {
    --offset: calc(41.66% + var(--gap-x, 0.75em));
  }
  .offset-6\@xl {
    --offset: calc(50% + var(--gap-x, 0.75em));
  }
  .offset-7\@xl {
    --offset: calc(58.33% + var(--gap-x, 0.75em));
  }
  .offset-8\@xl {
    --offset: calc(66.66% + var(--gap-x, 0.75em));
  }
  .offset-9\@xl {
    --offset: calc(75% + var(--gap-x, 0.75em));
  }
  .offset-10\@xl {
    --offset: calc(83.33% + var(--gap-x, 0.75em));
  }
  .offset-11\@xl {
    --offset: calc(91.66% + var(--gap-x, 0.75em));
  }
  .offset-0\@xl {
    --offset: var(--gap-x);
  }
  @supports (--css: variables) {
    .gap-xxxxs\@xl {
      --gap-x: var(--space-xxxxs);
      --gap-y: var(--space-xxxxs);
    }
    .gap-xxxs\@xl {
      --gap-x: var(--space-xxxs);
      --gap-y: var(--space-xxxs);
    }
    .gap-xxs\@xl {
      --gap-x: var(--space-xxs);
      --gap-y: var(--space-xxs);
    }
    .gap-xs\@xl {
      --gap-x: var(--space-xs);
      --gap-y: var(--space-xs);
    }
    .gap-sm\@xl {
      --gap-x: var(--space-sm);
      --gap-y: var(--space-sm);
    }
    .gap-md\@xl {
      --gap-x: var(--space-md);
      --gap-y: var(--space-md);
    }
    .gap-lg\@xl {
      --gap-x: var(--space-lg);
      --gap-y: var(--space-lg);
    }
    .gap-xl\@xl {
      --gap-x: var(--space-xl);
      --gap-y: var(--space-xl);
    }
    .gap-xxl\@xl {
      --gap-x: var(--space-xxl);
      --gap-y: var(--space-xxl);
    }
    .gap-xxxl\@xl {
      --gap-x: var(--space-xxxl);
      --gap-y: var(--space-xxxl);
    }
    .gap-xxxxl\@xl {
      --gap-x: var(--space-xxxxl);
      --gap-y: var(--space-xxxxl);
    }
    .gap-0\@xl {
      --gap-x: 0px;
      --gap-y: 0px;
    }
    .gap-x-xxxxs\@xl {
      --gap-x: var(--space-xxxxs);
    }
    .gap-x-xxxs\@xl {
      --gap-x: var(--space-xxxs);
    }
    .gap-x-xxs\@xl {
      --gap-x: var(--space-xxs);
    }
    .gap-x-xs\@xl {
      --gap-x: var(--space-xs);
    }
    .gap-x-sm\@xl {
      --gap-x: var(--space-sm);
    }
    .gap-x-md\@xl {
      --gap-x: var(--space-md);
    }
    .gap-x-lg\@xl {
      --gap-x: var(--space-lg);
    }
    .gap-x-xl\@xl {
      --gap-x: var(--space-xl);
    }
    .gap-x-xxl\@xl {
      --gap-x: var(--space-xxl);
    }
    .gap-x-xxxl\@xl {
      --gap-x: var(--space-xxxl);
    }
    .gap-x-xxxxl\@xl {
      --gap-x: var(--space-xxxxl);
    }
    .gap-x-0\@xl {
      --gap-x: 0px;
    }
    .gap-y-xxxxs\@xl {
      --gap-y: var(--space-xxxxs);
    }
    .gap-y-xxxs\@xl {
      --gap-y: var(--space-xxxs);
    }
    .gap-y-xxs\@xl {
      --gap-y: var(--space-xxs);
    }
    .gap-y-xs\@xl {
      --gap-y: var(--space-xs);
    }
    .gap-y-sm\@xl {
      --gap-y: var(--space-sm);
    }
    .gap-y-md\@xl {
      --gap-y: var(--space-md);
    }
    .gap-y-lg\@xl {
      --gap-y: var(--space-lg);
    }
    .gap-y-xl\@xl {
      --gap-y: var(--space-xl);
    }
    .gap-y-xxl\@xl {
      --gap-y: var(--space-xxl);
    }
    .gap-y-xxxl\@xl {
      --gap-y: var(--space-xxxl);
    }
    .gap-y-xxxxl\@xl {
      --gap-y: var(--space-xxxxl);
    }
    .gap-y-0\@xl {
      --gap-y: 0px;
    }
  }
}

/*   default shared style - we suggest you don't modify this file
  use the 📁custom-style/_shared-style.scss file to set your custom shared styles */
:root {
  /*   radius */
  --radius-sm: calc(var(--radius, 0.25em)/2);
  --radius-md: var(--radius, 0.25em);
  --radius-lg: 1em;
  /*   box shadow */
  --shadow-xs:  0 0.1px 0.3px rgba(0, 0, 0, 0.06),
                  0 1px 2px rgba(0, 0, 0, 0.12);
  --shadow-sm:  0 0.3px 0.4px rgba(0, 0, 0, 0.025),
                  0 0.9px 1.5px rgba(0, 0, 0, 0.05), 
                  0 3.5px 6px rgba(0, 0, 0, 0.1);
  --shadow-md:  0 0.9px 1.5px rgba(0, 0, 0, 0.03), 
                  0 3.1px 5.5px rgba(0, 0, 0, 0.08), 
                  0 14px 25px rgba(0, 0, 0, 0.12);
  --shadow-lg:  0 1.2px 1.9px -1px rgba(0, 0, 0, 0.014), 
                  0 3.3px 5.3px -1px rgba(0, 0, 0, 0.038), 
                  0 8.5px 12.7px -1px rgba(0, 0, 0, 0.085), 
                  0 30px 42px -1px rgba(0, 0, 0, 0.15);
  --shadow-xl:  0 1.5px 2.1px -6px rgba(0, 0, 0, 0.012), 
                  0 3.6px 5.2px -6px rgba(0, 0, 0, 0.035), 
                  0 7.3px 10.6px -6px rgba(0, 0, 0, 0.07), 
                  0 16.2px 21.9px -6px rgba(0, 0, 0, 0.117), 
                  0 46px 60px -6px rgba(0, 0, 0, 0.2);
  /*   timing functions
      credits: https: github.com/ai/easings.net */
  --bounce: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  /*  ⚠️ deprecated - replaced with --ease-out-back */
  --ease-in-out: cubic-bezier(0.645, 0.045, 0.355, 1);
  --ease-in: cubic-bezier(0.55, 0.055, 0.675, 0.19);
  --ease-out: cubic-bezier(0.215, 0.61, 0.355, 1);
  --ease-out-back: cubic-bezier(0.34, 1.56, 0.64, 1);
}

/*   basic typography style - we suggest you don't modify this file
  use the 📁custom-style/_typography.scss file to create your custom typography */
:root {
  --heading-line-height: 1.2;
  --body-line-height: 1.4;
}

body {
  font-size: var(--text-base-size, 1em);
  font-family: var(--font-primary, sans-serif);
  color: var(--color-contrast-high, #313135);
}

h1, h2, h3, h4 {
  color: var(--color-contrast-higher, #1c1c21);
  line-height: var(--heading-line-height, 1.2);
}

h1 {
  font-size: var(--text-xxl, 2.074em);
}

h2 {
  font-size: var(--text-xl, 1.728em);
}

h3 {
  font-size: var(--text-lg, 1.44em);
}

h4 {
  font-size: var(--text-md, 1.2em);
}

small {
  font-size: var(--text-sm, 0.833em);
}

/* 
    --------------------------------

    Inline Text

    -------------------------------- */
a, .link {
  color: var(--color-primary-darker);
  text-decoration: underline;
}

strong {
  font-weight: bold;
}

s {
  text-decoration: line-through;
}

u {
  text-decoration: underline;
}

/* 
    --------------------------------

    Text Component - class used to stylize text blocks

    -------------------------------- */
.text-component h1, .text-component h2, .text-component h3, .text-component h4, .text-component .h1_formatted, .text-component .h2_formatted, .text-component .h3_formatted, .text-component .h4_formatted {
  line-height: calc(var(--heading-line-height) * var(--line-height-multiplier, 1));
  margin-bottom: calc(var(--space-unit) * 0.25 * var(--text-vspace-multiplier, 1));
}

.text-component h2, .text-component h3, .text-component h4 {
  margin-top: calc(var(--space-unit) * 0.75 * var(--text-vspace-multiplier, 1));
}

.text-component p {
  line-height: 1.625rem;
}

.text-component blockquote, .text-component ul li, .text-component ol li {
  line-height: calc(var(--body-line-height) * var(--line-height-multiplier, 1));
}

.text-component ul, .text-component ol, .text-component p, .text-component blockquote, .text-component .text-component__block {
  margin-bottom: calc(var(--space-unit) * 0.75 * var(--text-vspace-multiplier, 1));
}

.text-component ul, .text-component ol {
  list-style-position: inside;
}

.text-component ul {
  list-style-type: disc;
}

.text-component ol {
  list-style-type: decimal;
}

.text-component img {
  display: block;
  margin: 0 auto;
}

.text-component figcaption {
  margin-top: 1em;
  margin-bottom: 1em;
  font-size: .875rem;
  line-height: 1.2rem;
}

.text-component figcaption span {
  display: block;
  font-style: italic;
  margin-bottom: .8em;
}

.text-component em {
  font-style: italic;
}

.text-component hr {
  margin-top: calc(var(--space-unit) * var(--text-vspace-multiplier, 1));
  margin-bottom: calc(var(--space-unit) * var(--text-vspace-multiplier, 1));
  margin-left: auto;
  margin-right: auto;
}

.text-component > *:first-child {
  margin-top: 0;
}

.text-component > *:last-child {
  margin-bottom: 0;
}

/*   text block container */
.text-component__block--full-width {
  width: 100vw;
  margin-left: calc(50% - 50vw);
}

@media (min-width: 48rem) {
  .text-component__block--left,
  .text-component__block--right {
    width: 45%;
  }
  .text-component__block--left img,
  .text-component__block--right img {
    width: 100%;
  }
  .text-component__block--left {
    float: left;
    margin-right: calc(var(--space-unit) * 0.75 * var(--text-vspace-multiplier, 1));
  }
  .text-component__block--right {
    float: right;
    margin-left: calc(var(--space-unit) * 0.75 * var(--text-vspace-multiplier, 1));
  }
}

/*   outset content */
@media (min-width: 90rem) {
  .text-component__block--outset {
    width: calc(100% + 10.5 * var(--space-unit));
  }
  .text-component__block--outset img {
    width: 100%;
  }
  .text-component__block--outset:not(.text-component__block--right) {
    margin-left: calc(-5.25 * var(--space-unit));
  }
  .text-component__block--left,
  .text-component__block--right {
    width: 50%;
  }
  .text-component__block--right.text-component__block--outset {
    margin-right: calc(-5.25 * var(--space-unit));
  }
}

/*  basic icons style - we suggest you don't modify this file
  use the 📁custom-style/_icons.scss file to set the custom icons style */
:root {
  /*  default icon sizes */
  --icon-xxxs: 8px;
  --icon-xxs:  12px;
  --icon-xs:   16px;
  --icon-sm:   24px;
  --icon-md:   32px;
  --icon-lg:   48px;
  --icon-xl:   64px;
  --icon-xxl:  96px;
  --icon-xxxl: 128px;
}

.icon {
  display: inline-block;
  color: inherit;
  fill: currentColor;
  height: 1em;
  width: 1em;
  line-height: 1;
  flex-shrink: 0;
  max-width: initial;
}

/*   icon size */
.icon--xxxs {
  width: var(--icon-xxxs);
  height: var(--icon-xxxs);
}

.icon--xxs {
  width: var(--icon-xxs);
  height: var(--icon-xxs);
}

.icon--xs {
  width: var(--icon-xs);
  height: var(--icon-xs);
}

.icon--sm {
  width: var(--icon-sm);
  height: var(--icon-sm);
}

.icon--md {
  width: var(--icon-md);
  height: var(--icon-md);
}

.icon--lg {
  width: var(--icon-lg);
  height: var(--icon-lg);
}

.icon--xl {
  width: var(--icon-xl);
  height: var(--icon-xl);
}

.icon--xxl {
  width: var(--icon-xxl);
  height: var(--icon-xxl);
}

.icon--xxxl {
  width: var(--icon-xxxl);
  height: var(--icon-xxxl);
}

.icon--is-spinning {
  /* rotate the icon infinitely */
  -webkit-animation: icon-spin 1s infinite linear;
          animation: icon-spin 1s infinite linear;
}

@-webkit-keyframes icon-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

@keyframes icon-spin {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/*    --------------------------------

    SVG <symbol>

    -------------------------------- */
/*   enable icon color corrections */
.icon use {
  color: inherit;
  fill: currentColor;
}

/*   Car type angled background */
.link-angled {
  color: var(--color-black);
  text-decoration: none;
  padding: 5px 0;
  transition: padding .2s ease-in-out;
  margin-bottom: 5px;
}

.link-angled:hover {
  position: relative;
  background: var(--color-primary-darker);
  border-radius: 0;
  color: var(--color-white);
  padding: 5px;
}

.link-angled:hover:after, .link-angled:hover:before {
  position: absolute;
  height: 100%;
  width: 15px;
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  content: '';
  transition: .2s;
}

.link-angled:hover:after {
  right: -10px;
  transform: skewX(-15deg);
}

.link-angled:hover:before {
  left: -11px;
  transform: skewX(-15deg);
}

.link-txt {
  color: var(--color-primary-darker);
}

.link-underline-hover:hover {
  text-decoration: underline;
}

/*   Blue link with yellow angle */
.accent-arrow-link {
  color: var(--color-primary-darker);
  text-decoration: none;
}

.accent-arrow-link i {
  color: var(--color-accent);
  padding-right: .5em;
}

.accent-arrow-link span {
  text-decoration: underline;
}

/* List Item when hovered shows gradient */
.list-grad-hover, .card-v5__content .card__footer {
  list-style: none;
}

.list-grad-hover li, .card-v5__content .card__footer li {
  margin-left: -.4em;
}

.list-grad-hover a, .card-v5__content .card__footer a {
  display: block;
  padding: .4em;
  text-decoration: none;
  color: var(--color-black);
  position: relative;
}

.list-grad-hover a:after, .card-v5__content .card__footer a:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  position: absolute;
  right: .4em;
  top: .5em;
}

.list-grad-hover a:hover, .card-v5__content .card__footer a:hover {
  color: var(--color-white);
  background-image: linear-gradient(43deg, #184097 0%, #0A93DB 100%);
}

.pelican-catalog-parts-sub-category .list-grad-hover li, .pelican-catalog-parts-sub-category .card-v5__content .card__footer li, .card-v5__content .pelican-catalog-parts-sub-category .card__footer li {
  font-size: 1.125rem;
  line-height: 1.375rem;
}

/* Pagination */
.pagination li {
  display: inline-block;
  color: var(--color-accent);
}

.pagination li a {
  text-decoration: none;
  color: var(--color-black);
  padding: 0 .6rem;
}

.pagination li.pelican-skip-icons a {
  padding: 0 .2rem;
}

.pagination li i {
  color: var(--color-primary-darker);
}

.pagination li.pelican-current-pagination a {
  background: var(--color-primary-darker);
  color: var(--color-white);
}

/* Columns  */
@media (min-width: 64rem) {
  .three-column-list li, .two-column-list li {
    -webkit-column-break-inside: avoid;
  }
}

@media (min-width: 64rem) {
  .two-column-list {
    -moz-column-count: 2;
         column-count: 2;
  }
}

@media (min-width: 64rem) {
  .three-column-list {
    -moz-column-count: 3;
         column-count: 3;
  }
}

/* basic buttons style - we suggest you don't modify this file
  use the 📁custom-style/_buttons.scss file to create your custom buttons */
.btn {
  /* basic button style */
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  white-space: nowrap;
  text-decoration: none;
  line-height: 1;
  font-size: var(--btn-font-size, 1em);
  padding-top: var(--btn-padding-y, 0.5em);
  padding-bottom: var(--btn-padding-y, 0.5em);
  padding-left: var(--btn-padding-x, 0.75em);
  padding-right: var(--btn-padding-x, 0.75em);
  border-radius: var(--btn-radius, 0.25em);
  transition: .3s;
}

/* default size variations */
.btn--sm {
  font-size: var(--btn-font-size-sm, 0.8em);
}

.btn--md {
  font-size: var(--btn-font-size-md, 1.2em);
}

.btn--lg {
  font-size: var(--btn-font-size-lg, 1.4em);
}

/* button with (only) icon */
.btn--icon {
  padding: var(--btn-padding-y, 0.5em);
}

/* standard button styling  */
.btn-standard {
  background: var(--color-accent);
  text-transform: uppercase;
  border-radius: 3px;
  border: none;
  font-weight: bold;
  padding: 1em;
  font-family: var(--font-tertiary);
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
  display: inline-block;
  color: var(--color-black);
  text-decoration: none;
  letter-spacing: 1px;

}

.btn-standard:hover {
  background: var(--color-primary);
  cursor: pointer;
}

/* Jay fix to position zoom icon at bottom-right of container */
li.slideshow__item > button.btn-standard {
	bottom: 0 !important;
}

.no-background-btn {
  background: transparent;
  border: none;
}

/* button outline */
.btn-outline {
  border: 3px solid var(--color-accent);
  background: var(--color-white);
  font-weight: 600;
  letter-spacing: 1px;
  padding: 12px 14px;
  color: var(--color-black);
  text-decoration: none;
  text-transform: uppercase;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  transition: .3s;
  border-radius: 3px;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

.btn-outline:hover {
  border: 3px solid var(--color-primary);
}

/* Button with icons */
.circle-button {
  border-radius: 50%;
  padding: .5em;
  color: var(--color-white);
  display: inline-block;
  transition: .3s;
}

.circle-button.primary {
  background: var(--color-primary-darker);
}

.circle-button.primary:hover {
  background: var(--color-primary);
}

/* Angled Buttons */
.angled-button, .impact-button {
  position: relative;
  background: var(--color-accent);
  border-radius: 0;
  text-transform: uppercase;
  color: var(--color-black);
  font-weight: bold;
  padding: 20px 20px;
  text-decoration: none;
}

.angled-button:after, .impact-button:after, .angled-button:before, .impact-button:before {
  position: absolute;
  height: 100%;
  width: 20px;
  background: var(--color-accent);
  position: absolute;
  top: 0;
  content: '';
  transition: color .3s ease-in-out;
}

.angled-button:after, .impact-button:after {
  right: -10px;
  transform: skewX(-15deg);
  transition: color .3s ease-in-out;
}

.angled-button:before, .impact-button:before {
  left: -10px;
  transform: skewX(-15deg);
  transition: color .3s ease-in-out;
}

.angled-button:hover, .impact-button:hover {
  background: var(--color-primary);
  color: var(color-primary-darker);
}

.angled-button:hover:after, .impact-button:hover:after, .angled-button:hover:before, .impact-button:hover:before {
  background: var(--color-primary);
}

/* button with angle */
.impact-button {
  padding: 1em;
  margin: 2em 0;
  transition: all .3 ease-in-out;
  text-decoration: none;
}

.impact-button.centered {
  margin: 0 auto;
}

.impact-button i {
  padding-left: .5em;
}

.btn-default {
  background: var(--color-accent);
  text-transform: uppercase;
  font-family: var(--font-tertiary);
  color: var(--color-black) !important;
  font-weight: 600;
  letter-spacing: 1px;
  padding: 12px 14px;
}

.btn-default:hover {
  background: var(--color-primary-darker) !important;
  color: var(--color-white) !important;
}

/* Outline Buttons */
.btn-outline {
  border: 3px solid var(--color-accent);
  background: var(--color-white);
  font-weight: 600;
  letter-spacing: 1px;
  padding: 12px 14px;
  color: var(--color-black);
  text-decoration: none;
  text-transform: uppercase;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  transition: .3s;
  border-radius: 3px;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

.btn-outline:hover {
  background: var(--color-primary);
  border-color: var(--color-primary);
}

/* Read More buttons  */
.js-read-more__btn {
  background: none;
  border: none;
  padding: 0;
  color: var(--color-primary-darker);
  text-decoration: underline;
}

/* Button looks like link */
.pelican-btn-link {
  background: transparent;
  border: none;
}

/* Button Edit */
.pelican-edit-btn {
  background: none;
  border: none;
  color: var(--color-primary-darker);
  text-decoration: underline;
}

.pelican-edit-btn i {
  color: var(--color-accent);
}

/*  basic forms style - we suggest you don't modify this file
  use the 📁custom-style/_forms.scss file to create your custom form elements */
.form-control {
  font-size: var(--form-control-font-size, 1em);
  padding: .8em;
}

.form-legend {
  color: var(--color-contrast-higher, #1c1c21);
  line-height: var(--heading-line-height, 1.2);
  font-size: var(--text-md, 1.2em);
  margin-bottom: var(--space-xxs);
}

.form-label {
  display: inline-block;
}

form label {
  display: none;
}

/*   error message - ⚠️ deprecated */
.form__msg-error, .form-error-msg {
  color: var(--color-error, #e02447);
  font-size: var(--text-sm, 0.833em);
  margin-top: var(--space-xxs);
  /*   hide element */
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
}

.form__msg-error--is-visible, .form-error-msg--is-visible {
  position: relative;
  clip: auto;
}

/*   set basic style for (native) radio and checkbox buttons - ⚠️ deprecated */
.radio-list, .checkbox-list {
  /* e.g., .radio-list > li > input + label */
}

.radio-list > *, .checkbox-list > * {
  /* parent of input + label */
  position: relative;
  display: flex;
  align-items: baseline;
}

.radio-list label, .checkbox-list label {
  /* radio/checkbox labels */
  line-height: var(--body-line-height);
}

.radio-list input, .checkbox-list input {
  margin-right: var(--space-xxxs);
  flex-shrink: 0;
}

select {
  padding: .8em;
}

/*   Search Navigation */
.search-container .mobile-header-icon {
  color: var(--color-primary-darker);
}

@media (min-width: 48rem) {
  .search-container .mobile-header-icon {
    display: none;
  }
}

.search-input {
  background: var(--color-primary-lighter);
  border-radius: 30px;
}

.search-input input, .search-input .search-input__btn {
  border: none;
  background: none;
}

.search-input .search-input__input {
  padding: .5em 0em .5em 1em;
  display: none;
}

.search-input .search-input__input::-moz-placeholder {
  color: var(--color-black);
}

.search-input .search-input__input:-ms-input-placeholder {
  color: var(--color-black);
}

.search-input .search-input__input::placeholder {
  color: var(--color-black);
}

.search-input .search-input__input:focus::-moz-placeholder {
  opacity: 0;
}

.search-input .search-input__input:focus:-ms-input-placeholder {
  opacity: 0;
}

.search-input .search-input__input:focus::placeholder {
  opacity: 0;
}

@media (min-width: 48rem) {
  .search-input .search-input__input {
    display: block;
  }
}

.search-input .search-input__btn {
  padding: 0 1.5em;
  background: var(--color-primary-darker);
  color: var(--color-white);
  border-radius: 30px;
  transition: .3s;
}

.search-input .search-input__btn:hover {
  background: var(--color-primary);
  cursor: pointer;
}

/*   Search Mobile */
#pelican-search-mobile {
  position: absolute;
  bottom: -55px;
  padding: 15px;
  left: 0;
  background: var(--color-white);
  width: 100%;
  display: none;
}

#pelican-search-mobile.show-mobile {
  display: block;
}

#pelican-search-mobile .search-input__input {
  display: block;
}

.js-select__button[aria-expanded="true"] svg {
  transform: rotate(180deg);
}

#CountrySelect-dropdown {
  z-index: 999;
}

/*   Shipping Estimator */
.shipping-estimator h2 {
  margin-bottom: 1em;
}

.shipping-estimator label {
  padding-bottom: .3em;
}

.shipping-estimator input {
  padding: .8em;
}

.shipping-estimator .js-select {
  background: var(--color-white);
  padding: .8em;
}

/*   Standard Form */
.std-bg-form {
  background: var(--color-primary-lighter);
  padding: 2em;
  border-radius: 1em;
}

.std-bg-form legend {
  font-size: 1.75rem;
  font-family: var(--font-tertiary);
}

.std-bg-form .form-label:not(.font-normal) {
  text-transform: uppercase;
  font-size: .875rem;
}

.std-bg-form .form-label:not(.font-normal) span {
  font-style: italic;
  text-transform: none;
}

.std-bg-form input[type="text"], .std-bg-form input[type="email"], .std-bg-form textarea {
  border: 1px solid var(--color-primary-darker);
}

.std-bg-form input[type="text"]:focus::-moz-placeholder, .std-bg-form input[type="email"]:focus::-moz-placeholder, .std-bg-form textarea:focus::-moz-placeholder {
  opacity: 0;
}

.std-bg-form input[type="text"]:focus:-ms-input-placeholder, .std-bg-form input[type="email"]:focus:-ms-input-placeholder, .std-bg-form textarea:focus:-ms-input-placeholder {
  opacity: 0;
}

.std-bg-form input[type="text"]:focus::placeholder, .std-bg-form input[type="email"]:focus::placeholder, .std-bg-form textarea:focus::placeholder {
  opacity: 0;
}

.inputfile {
  width: 0.1px;
  height: 0.1px;
  opacity: 0;
  overflow: hidden;
  position: absolute;
  z-index: -1;
}

.inputfile + label {
  font-size: 1.25em;
  font-weight: 700;
  color: var(--color-black);
  background-color: var(--color-grey);
  display: inline-block;
  font-family: var(--font-tertiary);
  text-transform: uppercase;
  padding: .5rem 1em;
  border-radius: 3px;
  letter-spacing: 1px;
  font-size: 1rem;
  margin-left: 1em;
}

.inputfile:focus + label,
.inputfile + label:hover {
  background-color: var(--color-accent);
}

:root {
  --zindex-header: 99;
  /*  e.g., main header */
  --zindex-popover: 5;
  /*  e.g., tooltips and dropdown */
  --zindex-fixed-element: 10;
  /*  e.g., 'back to top' button */
  --zindex-overlay: 999;
  /*  e.g., modals and dialogs */
}

:root {
  --display: block;
}

.is-visible {
  display: var(--display) !important;
}

.is-hidden {
  display: none !important;
}

html:not(.js) .no-js\:is-hidden {
  display: none !important;
}

@media print {
  .print\:is-hidden {
    display: none !important;
  }
}

.sr-only {
  /* 	  content made available only to screen readers
 */
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  padding: 0;
  border: 0;
  white-space: nowrap;
}

/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* 	Many screen reader and browser combinations announce broken words as they would appear visually.
 */
}

.screen-reader-text:focus {
  background-color: var(--color-white);
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  -webkit-clip-path: none;
          clip-path: none;
  color: var(--color-accent);
  display: block;
  font-size: 0.875rem;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */
}

/*   --------------------------------

    Flexbox

    -------------------------------- */
.flex {
  display: flex;
}

.inline-flex {
  display: inline-flex;
}

.flex-wrap {
  flex-wrap: wrap;
}

.flex-column {
  flex-direction: column;
}

.flex-column-reverse {
  flex-direction: column-reverse;
}

.flex-row {
  flex-direction: row;
}

.flex-row-reverse {
  flex-direction: row-reverse;
}

.flex-center {
  justify-content: center;
  align-items: center;
}

/*   flex items */
.flex-grow {
  flex-grow: 1;
}

.flex-grow-0 {
  flex-grow: 0;
}

.flex-shrink {
  flex-shrink: 1;
}

.flex-shrink-0 {
  flex-shrink: 0;
}

.flex-basis-0 {
  flex-basis: 0;
}

/* 
    --------------------------------

    Justify Content

    -------------------------------- */
.justify-start {
  justify-content: flex-start;
}

.justify-end {
  justify-content: flex-end;
}

.justify-center {
  justify-content: center;
}

.justify-between {
  justify-content: space-between;
}

/* 
    --------------------------------

    Align Items

    -------------------------------- */
.items-center {
  align-items: center;
}

.items-start {
  align-items: flex-start;
}

.items-end {
  align-items: flex-end;
}

.items-baseline {
  align-items: baseline;
}

/* 
    --------------------------------

    Order

    -------------------------------- */
.order-1 {
  order: 1;
}

.order-2 {
  order: 2;
}

.order-3 {
  order: 3;
}

/* 
    --------------------------------
  
    Aspect Ratio
  
    -------------------------------- */
[class*="aspect-ratio"] {
  --aspect-ratio: 16/9;
  position: relative;
  height: 0;
  padding-bottom: calc(100%/(var(--aspect-ratio)));
}

[class*="aspect-ratio"] > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.aspect-ratio-16\:9 {
  --aspect-ratio: 16/9;
}

.aspect-ratio-4\:3 {
  --aspect-ratio: 4/3;
}

.aspect-ratio-1\:1 {
  --aspect-ratio: 1/1;
}

/* 
    --------------------------------

    Display

    -------------------------------- */
.block {
  display: block;
}

.inline-block {
  display: inline-block;
}

.inline {
  display: inline;
}

.p-custom-hidden {
  display: block;
}

@media (max-width: 1024px) {
  .p-custom-hidden {
    display: none;
  }
}

.p-custom-hidden-mobile {
  display: none;
}

@media (max-width: 1024px) {
  .p-custom-hidden-mobile {
    display: block;
  }
}

/* 
    --------------------------------

    Space unit

    -------------------------------- */
.space-unit-rem {
  --space-unit: 1rem;
}

.space-unit-em {
  --space-unit: 1em;
}

.space-unit-px {
  --space-unit: 16px;
}

/* 
    --------------------------------

    Margin

    -------------------------------- */
.margin-xxxxs {
  margin: var(--space-xxxxs);
}

.margin-xxxs {
  margin: var(--space-xxxs);
}

.margin-xxs {
  margin: var(--space-xxs);
}

.margin-xs {
  margin: var(--space-xs);
}

.margin-sm {
  margin: var(--space-sm);
}

.margin-md {
  margin: var(--space-md);
}

.margin-lg {
  margin: var(--space-lg);
}

.margin-xl {
  margin: var(--space-xl);
}

.margin-xxl {
  margin: var(--space-xxl);
}

.margin-xxxl {
  margin: var(--space-xxxl);
}

.margin-xxxxl {
  margin: var(--space-xxxxl);
}

.margin-auto {
  margin: auto;
}

.margin-0 {
  margin: 0;
}

.margin-top-xxxxs {
  margin-top: var(--space-xxxxs);
}

.margin-top-xxxs {
  margin-top: var(--space-xxxs);
}

.margin-top-xxs {
  margin-top: var(--space-xxs);
}

.margin-top-xs {
  margin-top: var(--space-xs);
}

.margin-top-sm {
  margin-top: var(--space-sm);
}

.margin-top-md {
  margin-top: var(--space-md);
}

.margin-top-lg {
  margin-top: var(--space-lg);
}

.margin-top-xl {
  margin-top: var(--space-xl);
}

.margin-top-xxl {
  margin-top: var(--space-xxl);
}

.margin-top-xxxl {
  margin-top: var(--space-xxxl);
}

.margin-top-xxxxl {
  margin-top: var(--space-xxxxl);
}

.margin-top-auto {
  margin-top: auto;
}

.margin-top-0 {
  margin-top: 0;
}

.margin-bottom-xxxxs {
  margin-bottom: var(--space-xxxxs);
}

.margin-bottom-xxxs {
  margin-bottom: var(--space-xxxs);
}

.margin-bottom-xxs {
  margin-bottom: var(--space-xxs);
}

.margin-bottom-xs {
  margin-bottom: var(--space-xs);
}

.margin-bottom-sm {
  margin-bottom: var(--space-sm);
}

.margin-bottom-md {
  margin-bottom: var(--space-md);
}

.margin-bottom-lg {
  margin-bottom: var(--space-lg);
}

.margin-bottom-xl {
  margin-bottom: var(--space-xl);
}

.margin-bottom-xxl {
  margin-bottom: var(--space-xxl);
}

.margin-bottom-xxxl {
  margin-bottom: var(--space-xxxl);
}

.margin-bottom-xxxxl {
  margin-bottom: var(--space-xxxxl);
}

.margin-bottom-auto {
  margin-bottom: auto;
}

.margin-bottom-0 {
  margin-bottom: 0;
}

.margin-right-xxxxs {
  margin-right: var(--space-xxxxs);
}

.margin-right-xxxs {
  margin-right: var(--space-xxxs);
}

.margin-right-xxs {
  margin-right: var(--space-xxs);
}

.margin-right-xs {
  margin-right: var(--space-xs);
}

.margin-right-sm {
  margin-right: var(--space-sm);
}

.margin-right-md {
  margin-right: var(--space-md);
}

.margin-right-lg {
  margin-right: var(--space-lg);
}

.margin-right-xl {
  margin-right: var(--space-xl);
}

.margin-right-xxl {
  margin-right: var(--space-xxl);
}

.margin-right-xxxl {
  margin-right: var(--space-xxxl);
}

.margin-right-xxxxl {
  margin-right: var(--space-xxxxl);
}

.margin-right-auto {
  margin-right: auto;
}

.margin-right-0 {
  margin-right: 0;
}

.margin-left-xxxxs {
  margin-left: var(--space-xxxxs);
}

.margin-left-xxxs {
  margin-left: var(--space-xxxs);
}

.margin-left-xxs {
  margin-left: var(--space-xxs);
}

.margin-left-xs {
  margin-left: var(--space-xs);
}

.margin-left-sm {
  margin-left: var(--space-sm);
}

.margin-left-md {
  margin-left: var(--space-md);
}

.margin-left-lg {
  margin-left: var(--space-lg);
}

.margin-left-xl {
  margin-left: var(--space-xl);
}

.margin-left-xxl {
  margin-left: var(--space-xxl);
}

.margin-left-xxxl {
  margin-left: var(--space-xxxl);
}

.margin-left-xxxxl {
  margin-left: var(--space-xxxxl);
}

.margin-left-auto {
  margin-left: auto;
}

.margin-left-0 {
  margin-left: 0;
}

.margin-x-xxxxs {
  margin-left: var(--space-xxxxs);
  margin-right: var(--space-xxxxs);
}

.margin-x-xxxs {
  margin-left: var(--space-xxxs);
  margin-right: var(--space-xxxs);
}

.margin-x-xxs {
  margin-left: var(--space-xxs);
  margin-right: var(--space-xxs);
}

.margin-x-xs {
  margin-left: var(--space-xs);
  margin-right: var(--space-xs);
}

.margin-x-sm {
  margin-left: var(--space-sm);
  margin-right: var(--space-sm);
}

.margin-x-md {
  margin-left: var(--space-md);
  margin-right: var(--space-md);
}

.margin-x-lg {
  margin-left: var(--space-lg);
  margin-right: var(--space-lg);
}

.margin-x-xl {
  margin-left: var(--space-xl);
  margin-right: var(--space-xl);
}

.margin-x-xxl {
  margin-left: var(--space-xxl);
  margin-right: var(--space-xxl);
}

.margin-x-xxxl {
  margin-left: var(--space-xxxl);
  margin-right: var(--space-xxxl);
}

.margin-x-xxxxl {
  margin-left: var(--space-xxxxl);
  margin-right: var(--space-xxxxl);
}

.margin-x-auto {
  margin-left: auto;
  margin-right: auto;
}

.margin-x-0 {
  margin-left: 0;
  margin-right: 0;
}

.margin-y-xxxxs {
  margin-top: var(--space-xxxxs);
  margin-bottom: var(--space-xxxxs);
}

.margin-y-xxxs {
  margin-top: var(--space-xxxs);
  margin-bottom: var(--space-xxxs);
}

.margin-y-xxs {
  margin-top: var(--space-xxs);
  margin-bottom: var(--space-xxs);
}

.margin-y-xs {
  margin-top: var(--space-xs);
  margin-bottom: var(--space-xs);
}

.margin-y-sm {
  margin-top: var(--space-sm);
  margin-bottom: var(--space-sm);
}

.margin-y-md {
  margin-top: var(--space-md);
  margin-bottom: var(--space-md);
}

.margin-y-lg {
  margin-top: var(--space-lg);
  margin-bottom: var(--space-lg);
}

.margin-y-xl {
  margin-top: var(--space-xl);
  margin-bottom: var(--space-xl);
}

.margin-y-xxl {
  margin-top: var(--space-xxl);
  margin-bottom: var(--space-xxl);
}

.margin-y-xxxl {
  margin-top: var(--space-xxxl);
  margin-bottom: var(--space-xxxl);
}

.margin-y-xxxxl {
  margin-top: var(--space-xxxxl);
  margin-bottom: var(--space-xxxxl);
}

.margin-y-auto {
  margin-top: auto;
  margin-bottom: auto;
}

.margin-y-0 {
  margin-top: 0;
  margin-bottom: 0;
}

/* 
    --------------------------------

    Padding

    -------------------------------- */
.padding-xxxxs {
  padding: var(--space-xxxxs);
}

.padding-xxxs {
  padding: var(--space-xxxs);
}

.padding-xxs {
  padding: var(--space-xxs);
}

.padding-xs {
  padding: var(--space-xs);
}

.padding-sm {
  padding: var(--space-sm);
}

.padding-md {
  padding: var(--space-md);
}

.padding-lg {
  padding: var(--space-lg);
}

.padding-xl {
  padding: var(--space-xl);
}

.padding-xxl {
  padding: var(--space-xxl);
}

.padding-xxxl {
  padding: var(--space-xxxl);
}

.padding-xxxxl {
  padding: var(--space-xxxxl);
}

.padding-0 {
  padding: 0;
}

.padding-component {
  padding: var(--component-padding);
}

.padding-top-xxxxs {
  padding-top: var(--space-xxxxs);
}

.padding-top-xxxs {
  padding-top: var(--space-xxxs);
}

.padding-top-xxs {
  padding-top: var(--space-xxs);
}

.padding-top-xs {
  padding-top: var(--space-xs);
}

.padding-top-sm {
  padding-top: var(--space-sm);
}

.padding-top-md {
  padding-top: var(--space-md);
}

.padding-top-lg {
  padding-top: var(--space-lg);
}

.padding-top-xl {
  padding-top: var(--space-xl);
}

.padding-top-xxl {
  padding-top: var(--space-xxl);
}

.padding-top-xxxl {
  padding-top: var(--space-xxxl);
}

.padding-top-xxxxl {
  padding-top: var(--space-xxxxl);
}

.padding-top-0 {
  padding-top: 0;
}

.padding-top-component {
  padding-top: var(--component-padding);
}

.padding-bottom-xxxxs {
  padding-bottom: var(--space-xxxxs);
}

.padding-bottom-xxxs {
  padding-bottom: var(--space-xxxs);
}

.padding-bottom-xxs {
  padding-bottom: var(--space-xxs);
}

.padding-bottom-xs {
  padding-bottom: var(--space-xs);
}

.padding-bottom-sm {
  padding-bottom: var(--space-sm);
}

.padding-bottom-md {
  padding-bottom: var(--space-md);
}

.padding-bottom-lg {
  padding-bottom: var(--space-lg);
}

.padding-bottom-xl {
  padding-bottom: var(--space-xl);
}

.padding-bottom-xxl {
  padding-bottom: var(--space-xxl);
}

.padding-bottom-xxxl {
  padding-bottom: var(--space-xxxl);
}

.padding-bottom-xxxxl {
  padding-bottom: var(--space-xxxxl);
}

.padding-bottom-0 {
  padding-bottom: 0;
}

.padding-bottom-component {
  padding-bottom: var(--component-padding);
}

.padding-right-xxxxs {
  padding-right: var(--space-xxxxs);
}

.padding-right-xxxs {
  padding-right: var(--space-xxxs);
}

.padding-right-xxs {
  padding-right: var(--space-xxs);
}

.padding-right-xs {
  padding-right: var(--space-xs);
}

.padding-right-sm {
  padding-right: var(--space-sm);
}

.padding-right-md {
  padding-right: var(--space-md);
}

.padding-right-lg {
  padding-right: var(--space-lg);
}

.padding-right-xl {
  padding-right: var(--space-xl);
}

.padding-right-xxl {
  padding-right: var(--space-xxl);
}

.padding-right-xxxl {
  padding-right: var(--space-xxxl);
}

.padding-right-xxxxl {
  padding-right: var(--space-xxxxl);
}

.padding-right-0 {
  padding-right: 0;
}

.padding-right-component {
  padding-right: var(--component-padding);
}

.padding-left-xxxxs {
  padding-left: var(--space-xxxxs);
}

.padding-left-xxxs {
  padding-left: var(--space-xxxs);
}

.padding-left-xxs {
  padding-left: var(--space-xxs);
}

.padding-left-xs {
  padding-left: var(--space-xs);
}

.padding-left-sm {
  padding-left: var(--space-sm);
}

.padding-left-md {
  padding-left: var(--space-md);
}

.padding-left-lg {
  padding-left: var(--space-lg);
}

.padding-left-xl {
  padding-left: var(--space-xl);
}

.padding-left-xxl {
  padding-left: var(--space-xxl);
}

.padding-left-xxxl {
  padding-left: var(--space-xxxl);
}

.padding-left-xxxxl {
  padding-left: var(--space-xxxxl);
}

.padding-left-0 {
  padding-left: 0;
}

.padding-left-component {
  padding-left: var(--component-padding);
}

.padding-x-xxxxs {
  padding-left: var(--space-xxxxs);
  padding-right: var(--space-xxxxs);
}

.padding-x-xxxs {
  padding-left: var(--space-xxxs);
  padding-right: var(--space-xxxs);
}

.padding-x-xxs {
  padding-left: var(--space-xxs);
  padding-right: var(--space-xxs);
}

.padding-x-xs {
  padding-left: var(--space-xs);
  padding-right: var(--space-xs);
}

.padding-x-sm {
  padding-left: var(--space-sm);
  padding-right: var(--space-sm);
}

.padding-x-md {
  padding-left: var(--space-md);
  padding-right: var(--space-md);
}

.padding-x-lg {
  padding-left: var(--space-lg);
  padding-right: var(--space-lg);
}

.padding-x-xl {
  padding-left: var(--space-xl);
  padding-right: var(--space-xl);
}

.padding-x-xxl {
  padding-left: var(--space-xxl);
  padding-right: var(--space-xxl);
}

.padding-x-xxxl {
  padding-left: var(--space-xxxl);
  padding-right: var(--space-xxxl);
}

.padding-x-xxxxl {
  padding-left: var(--space-xxxxl);
  padding-right: var(--space-xxxxl);
}

.padding-x-0 {
  padding-left: 0;
  padding-right: 0;
}

.padding-x-component {
  padding-left: var(--component-padding);
  padding-right: var(--component-padding);
}

.padding-y-xxxxs {
  padding-top: var(--space-xxxxs);
  padding-bottom: var(--space-xxxxs);
}

.padding-y-xxxs {
  padding-top: var(--space-xxxs);
  padding-bottom: var(--space-xxxs);
}

.padding-y-xxs {
  padding-top: var(--space-xxs);
  padding-bottom: var(--space-xxs);
}

.padding-y-xs {
  padding-top: var(--space-xs);
  padding-bottom: var(--space-xs);
}

.padding-y-sm {
  padding-top: var(--space-sm);
  padding-bottom: var(--space-sm);
}

.padding-y-md {
  padding-top: var(--space-md);
  padding-bottom: var(--space-md);
}

.padding-y-lg {
  padding-top: var(--space-lg);
  padding-bottom: var(--space-lg);
}

.padding-y-xl {
  padding-top: var(--space-xl);
  padding-bottom: var(--space-xl);
}

.padding-y-xxl {
  padding-top: var(--space-xxl);
  padding-bottom: var(--space-xxl);
}

.padding-y-xxxl {
  padding-top: var(--space-xxxl);
  padding-bottom: var(--space-xxxl);
}

.padding-y-xxxxl {
  padding-top: var(--space-xxxxl);
  padding-bottom: var(--space-xxxxl);
}

.padding-y-0 {
  padding-top: 0;
  padding-bottom: 0;
}

.padding-y-component {
  padding-top: var(--component-padding);
  padding-bottom: var(--component-padding);
}

/* 
    --------------------------------

    Vertical Align

    -------------------------------- */
.align-baseline {
  vertical-align: baseline;
}

.align-top {
  vertical-align: top;
}

.align-middle {
  vertical-align: middle;
}

.align-bottom {
  vertical-align: bottom;
}

/* 
    --------------------------------

    Typography

    -------------------------------- */
.truncate, .text-truncate {
  /* truncate text if it exceeds its parent */
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-replace {
  /* replace text with bg img */
  overflow: hidden;
  color: transparent;
  text-indent: 100%;
  white-space: nowrap;
}

.break-word {
  overflow-wrap: break-word;
  min-width: 0;
}

/* 
    --------------------------------
  
    Font Size
  
    -------------------------------- */
.text-xs {
  font-size: var(--text-xs, 0.75em);
  line-height: 1.5em;
}

.text-sm {
  font-size: var(--text-sm, 0.875em);
  line-height: 1.625em;
}

.text-base {
  font-size: var(--text-unit, 1em);
}

.text-md {
  font-size: var(--text-md, 1.2em);
  line-height: 1.375em;
}

.text-lg {
  font-size: var(--text-lg, 1.44em);
}

.text-xl {
  font-size: var(--text-xl, 1.728em);
}

.text-xxl {
  font-size: var(--text-xxl, 2.074em);
}

.text-xxxl {
  font-size: var(--text-xxxl, 2.488em);
}

.text-xxxxl {
  font-size: var(--text-xxxxl, 2.985em);
}

.text-unit-rem, .text-unit-em, .text-unit-px {
  font-size: var(--text-unit);
}

.text-unit-rem {
  --text-unit: 1rem;
}

.text-unit-em {
  --text-unit: 1em;
}

.text-unit-px {
  --text-unit: 16px;
}

/* 
    --------------------------------

    Text Transform

    -------------------------------- */
.text-uppercase {
  text-transform: uppercase;
}

.text-capitalize {
  text-transform: capitalize;
}

/* 
    --------------------------------

    Letter Spacing

    --------------------------------
 */
.letter-spacing-sm {
  letter-spacing: -0.05em;
}

.letter-spacing-md {
  letter-spacing: 0.05em;
}

.letter-spacing-lg {
  letter-spacing: 0.1em;
}

/* 
    --------------------------------

    Font Weight

    -------------------------------- */
.font-light {
  font-weight: 300;
}

.font-normal {
  font-weight: 400;
}

.font-medium {
  font-weight: 500;
}

.font-semibold {
  font-weight: 600;
}

.font-bold, .text-bold {
  font-weight: 700;
}

/* 
    --------------------------------

    Font Style

    --------------------------------
 */
.font-italic {
  font-style: italic;
}

/* 
    --------------------------------

    Font Smooth

    -------------------------------- */
.font-smooth {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* 
    --------------------------------

    Font Family

    -------------------------------- */
.font-primary {
  font-family: var(--font-primary);
}

/* 
    --------------------------------

    Text Align

    --------------------------------
 */
.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.text-justify {
  text-align: justify;
}

/* 
    --------------------------------

    Text Decoration

    -------------------------------- */
.text-line-through {
  text-decoration: line-through;
}

.text-underline {
  text-decoration: underline;
}

.text-decoration-none {
  text-decoration: none;
}

/* 
    --------------------------------
  
    Text Shadow
  
    -------------------------------- */
.text-shadow-xs {
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
}

.text-shadow-sm {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}

.text-shadow-md {
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.2);
}

.text-shadow-lg {
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.15), 0 4px 16px rgba(0, 0, 0, 0.2);
}

.text-shadow-xl {
  text-shadow: 0 1px 4px rgba(0, 0, 0, 0.1), 0 2px 8px rgba(0, 0, 0, 0.15), 0 4px 16px rgba(0, 0, 0, 0.2), 0 6px 24px rgba(0, 0, 0, 0.25);
}

.text-shadow-none {
  text-shadow: none;
}

/* 
    --------------------------------

    .text-component vertical spacing

    -------------------------------- */
.v-space-xxs {
  --text-vspace-multiplier: 0.25 !important;
}

.v-space-xs {
  --text-vspace-multiplier: 0.5 !important;
}

.v-space-sm {
  --text-vspace-multiplier: 0.75 !important;
}

.v-space-md {
  --text-vspace-multiplier: 1.25 !important;
}

.v-space-lg {
  --text-vspace-multiplier: 1.5 !important;
}

.v-space-xl {
  --text-vspace-multiplier: 1.75 !important;
}

.v-space-xxl {
  --text-vspace-multiplier: 2 !important;
}

/* 
    --------------------------------

    Line Height

    -------------------------------- */
.line-height-xs {
  --heading-line-height: 1;
  --body-line-height: 1.1;
}

.line-height-xs:not(.text-component) {
  line-height: 1.1;
}

.line-height-sm {
  --heading-line-height: 1.1;
  --body-line-height: 1.2;
}

.line-height-sm:not(.text-component) {
  line-height: 1.2;
}

.line-height-md {
  --heading-line-height: 1.15;
  --body-line-height: 1.4;
}

.line-height-md:not(.text-component) {
  line-height: 1.4;
}

.line-height-lg {
  --heading-line-height: 1.22;
  --body-line-height: 1.58;
}

.line-height-lg:not(.text-component) {
  line-height: 1.58;
}

.line-height-xl {
  --heading-line-height: 1.3;
  --body-line-height: 1.72;
}

.line-height-xl:not(.text-component) {
  line-height: 1.72;
}

.line-height-body {
  line-height: var(--body-line-height);
}

.line-height-heading {
  line-height: var(--heading-line-height);
}

.line-height-normal {
  line-height: normal !important;
}

.line-height-1 {
  line-height: 1 !important;
}

/* 
    --------------------------------

    White Space

    --------------------------------
 */
.ws-nowrap, .text-nowrap {
  white-space: nowrap;
}

/* 
    --------------------------------

    Cursor

    -------------------------------- */
.cursor-pointer {
  cursor: pointer;
}

.cursor-default {
  cursor: default;
}

/* 
    --------------------------------

    Pointer Events

    --------------------------------
 */
.pointer-events-auto {
  pointer-events: auto;
}

.pointer-events-none {
  pointer-events: none;
}

/* 
    --------------------------------

    User Select

    -------------------------------- */
.user-select-none {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.user-select-all {
  -webkit-user-select: all;
     -moz-user-select: all;
      -ms-user-select: all;
          user-select: all;
}

/* 
    --------------------------------

    Color

    --------------------------------
 */
[class*="color-"] {
  --color-o: 1;
}

.color-inherit {
  color: inherit;
}

.color-bg {
  color: hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), var(--color-o, 1));
}

.color-contrast-lower {
  color: hsla(var(--color-contrast-lower-h), var(--color-contrast-lower-s), var(--color-contrast-lower-l), var(--color-o, 1));
}

.color-contrast-low {
  color: hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--color-o, 1));
}

.color-contrast-medium {
  color: #888D94;
}

.color-contrast-high {
  color: hsla(var(--color-contrast-high-h), var(--color-contrast-high-s), var(--color-contrast-high-l), var(--color-o, 1));
}

.color-contrast-higher {
  color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), var(--color-o, 1));
}

.color-primary-darker {
  color: hsla(var(--color-primary-darker-h), var(--color-primary-darker-s), var(--color-primary-darker-l), var(--color-o, 1));
}

.color-primary-dark {
  color: hsla(var(--color-primary-dark-h), var(--color-primary-dark-s), var(--color-primary-dark-l), var(--color-o, 1));
}

.color-primary {
  color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), var(--color-o, 1));
}

.color-primary-light {
  color: hsla(var(--color-primary-light-h), var(--color-primary-light-s), var(--color-primary-light-l), var(--color-o, 1));
}

.color-primary-lighter {
  color: hsla(var(--color-primary-lighter-h), var(--color-primary-lighter-s), var(--color-primary-lighter-l), var(--color-o, 1));
}

.color-accent-darker {
  color: hsla(var(--color-accent-darker-h), var(--color-accent-darker-s), var(--color-accent-darker-l), var(--color-o, 1));
}

.color-accent-dark {
  color: hsla(var(--color-accent-dark-h), var(--color-accent-dark-s), var(--color-accent-dark-l), var(--color-o, 1));
}

.color-accent {
  color: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), var(--color-o, 1));
}

.color-accent-light {
  color: hsla(var(--color-accent-light-h), var(--color-accent-light-s), var(--color-accent-light-l), var(--color-o, 1));
}

.color-accent-lighter {
  color: hsla(var(--color-accent-lighter-h), var(--color-accent-lighter-s), var(--color-accent-lighter-l), var(--color-o, 1));
}

.color-success-darker {
  color: hsla(var(--color-success-darker-h), var(--color-success-darker-s), var(--color-success-darker-l), var(--color-o, 1));
}

.color-success-dark {
  color: hsla(var(--color-success-dark-h), var(--color-success-dark-s), var(--color-success-dark-l), var(--color-o, 1));
}

.color-success {
  color: hsla(var(--color-success-h), var(--color-success-s), var(--color-success-l), var(--color-o, 1));
}

.color-success-light {
  color: hsla(var(--color-success-light-h), var(--color-success-light-s), var(--color-success-light-l), var(--color-o, 1));
}

.color-success-lighter {
  color: hsla(var(--color-success-lighter-h), var(--color-success-lighter-s), var(--color-success-lighter-l), var(--color-o, 1));
}

.color-warning-darker {
  color: hsla(var(--color-warning-darker-h), var(--color-warning-darker-s), var(--color-warning-darker-l), var(--color-o, 1));
}

.color-warning-dark {
  color: hsla(var(--color-warning-dark-h), var(--color-warning-dark-s), var(--color-warning-dark-l), var(--color-o, 1));
}

.color-warning {
  color: hsla(var(--color-warning-h), var(--color-warning-s), var(--color-warning-l), var(--color-o, 1));
}

.color-warning-light {
  color: hsla(var(--color-warning-light-h), var(--color-warning-light-s), var(--color-warning-light-l), var(--color-o, 1));
}

.color-warning-lighter {
  color: hsla(var(--color-warning-lighter-h), var(--color-warning-lighter-s), var(--color-warning-lighter-l), var(--color-o, 1));
}

.color-error-darker {
  color: hsla(var(--color-error-darker-h), var(--color-error-darker-s), var(--color-error-darker-l), var(--color-o, 1));
}

.color-error-dark {
  color: hsla(var(--color-error-dark-h), var(--color-error-dark-s), var(--color-error-dark-l), var(--color-o, 1));
}

.color-error {
  color: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), var(--color-o, 1));
}

.color-error-light {
  color: hsla(var(--color-error-light-h), var(--color-error-light-s), var(--color-error-light-l), var(--color-o, 1));
}

.color-error-lighter {
  color: hsla(var(--color-error-lighter-h), var(--color-error-lighter-s), var(--color-error-lighter-l), var(--color-o, 1));
}

.color-white {
  color: hsla(var(--color-white-h), var(--color-white-s), var(--color-white-l), var(--color-o, 1));
}

.color-black {
  color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), var(--color-o, 1));
}

@supports (--css: variables) {
  .color-opacity-0 {
    --color-o: 0;
  }
  .color-opacity-10\% {
    --color-o: 0.1;
  }
  .color-opacity-20\% {
    --color-o: 0.2;
  }
  .color-opacity-30\% {
    --color-o: 0.3;
  }
  .color-opacity-40\% {
    --color-o: 0.4;
  }
  .color-opacity-50\% {
    --color-o: 0.5;
  }
  .color-opacity-60\% {
    --color-o: 0.6;
  }
  .color-opacity-70\% {
    --color-o: 0.7;
  }
  .color-opacity-80\% {
    --color-o: 0.8;
  }
  .color-opacity-90\% {
    --color-o: 0.9;
  }
}

/* 
    --------------------------------

    Gradients

    --------------------------------
 */
@supports (--css: variables) {
  [class*="color-gradient-"] {
    color: transparent !important;
    -webkit-background-clip: text;
            background-clip: text;
  }
}

/* 
    --------------------------------

    Width

    -------------------------------- */
.width-xxxxs {
  width: var(--size-xxxxs, 0.25rem);
}

.width-xxxs {
  width: var(--size-xxxs, 0.5rem);
}

.width-xxs {
  width: var(--size-xxs, 0.75rem);
}

.width-xs {
  width: var(--size-xs, 1rem);
}

.width-sm {
  width: var(--size-sm, 1.5rem);
}

.width-md {
  width: var(--size-md, 2rem);
}

.width-lg {
  width: var(--size-lg, 3rem);
}

.width-xl {
  width: var(--size-xl, 4rem);
}

.width-xxl {
  width: var(--size-xxl, 6rem);
}

.width-xxxl {
  width: var(--size-xxxl, 8rem);
}

.width-xxxxl {
  width: var(--size-xxxxl, 16rem);
}

.width-0 {
  width: 0;
}

.width-10\% {
  width: 10%;
}

.width-20\% {
  width: 20%;
}

.width-25\% {
  width: 25%;
}

.width-30\% {
  width: 30%;
}

.width-33\% {
  width: calc(100% / 3);
}

.width-40\% {
  width: 40%;
}

.width-50\% {
  width: 50%;
}

.width-60\% {
  width: 60%;
}

.width-66\% {
  width: calc(100% / 1.5);
}

.width-70\% {
  width: 70%;
}

.width-75\% {
  width: 75%;
}

.width-80\% {
  width: 80%;
}

.width-90\% {
  width: 90%;
}

.width-100\% {
  width: 100%;
}

.width-100vw {
  width: 100vw;
}

.width-auto {
  width: auto;
}

/* 
    --------------------------------

    Height

    -------------------------------- */
.height-xxxxs {
  height: var(--size-xxxxs, 0.25rem);
}

.height-xxxs {
  height: var(--size-xxxs, 0.5rem);
}

.height-xxs {
  height: var(--size-xxs, 0.75rem);
}

.height-xs {
  height: var(--size-xs, 1rem);
}

.height-sm {
  height: var(--size-sm, 1.5rem);
}

.height-md {
  height: var(--size-md, 2rem);
}

.height-lg {
  height: var(--size-lg, 3rem);
}

.height-xl {
  height: var(--size-xl, 4rem);
}

.height-xxl {
  height: var(--size-xxl, 6rem);
}

.height-xxxl {
  height: var(--size-xxxl, 8rem);
}

.height-xxxxl {
  height: var(--size-xxxxl, 16rem);
}

.height-0 {
  height: 0;
}

.height-10\% {
  height: 10%;
}

.height-20\% {
  height: 20%;
}

.height-25\% {
  height: 25%;
}

.height-30\% {
  height: 30%;
}

.height-33\% {
  height: calc(100% / 3);
}

.height-40\% {
  height: 40%;
}

.height-50\% {
  height: 50%;
}

.height-60\% {
  height: 60%;
}

.height-66\% {
  height: calc(100% / 1.5);
}

.height-70\% {
  height: 70%;
}

.height-75\% {
  height: 75%;
}

.height-80\% {
  height: 80%;
}

.height-90\% {
  height: 90%;
}

.height-100\% {
  height: 100%;
}

.height-100vh {
  height: 100vh;
}

.height-auto {
  height: auto;
}

/* 
    --------------------------------

    Min-Width

    -------------------------------- */
.min-width-0 {
  min-width: 0;
}

.min-width-25\% {
  min-width: 25%;
}

.min-width-33\% {
  min-width: calc(100% / 3);
}

.min-width-50\% {
  min-width: 50%;
}

.min-width-66\% {
  min-width: calc(100% / 1.5);
}

.min-width-75\% {
  min-width: 75%;
}

.min-width-100\% {
  min-width: 100%;
}

.min-width-100vw {
  min-width: 100vw;
}

/* 
    --------------------------------

    Min-Height

    -------------------------------- */
.min-height-100\% {
  min-height: 100%;
}

.min-height-100vh {
  min-height: 100vh;
}

/* 
    --------------------------------

    Max-Width

    -------------------------------- */
:root {
  --max-width-xxxxs: 20rem;
  /* ~320px */
  --max-width-xxxs:  26rem;
  /* ~416px */
  --max-width-xxs:   32rem;
  /* ~512px */
  --max-width-xs:    38rem;
  /* ~608px */
  --max-width-sm:    48rem;
  /* ~768px */
  --max-width-md:    64rem;
  /* ~1024px */
  --max-width-lg:    71.25rem;
  /* ~11400px */
  --max-width-xl:    90rem;
  /* ~1440px */
  --max-width-xxl:   100rem;
  /* ~1600px */
  --max-width-xxxl:  120rem;
  /* ~1920px */
  --max-width-xxxxl: 150rem;
  /* ~2400px */
}

.max-width-xxxxs {
  max-width: var(--max-width-xxxxs);
}

.max-width-xxxs {
  max-width: var(--max-width-xxxs);
}

.max-width-xxs {
  max-width: var(--max-width-xxs);
}

.max-width-xs {
  max-width: var(--max-width-xs);
}

.max-width-sm {
  max-width: var(--max-width-sm);
}

.max-width-md {
  max-width: var(--max-width-md);
}

.max-width-lg {
  max-width: var(--max-width-lg);
}

.max-width-xl {
  max-width: var(--max-width-xl);
}

.max-width-xxl {
  max-width: var(--max-width-xxl);
}

.max-width-xxxl {
  max-width: var(--max-width-xxxl);
}

.max-width-xxxxl {
  max-width: var(--max-width-xxxxl);
}

.max-width-100\% {
  max-width: 100%;
}

/*   alt approach - max-width is equal to current breakpoint */
[class*="max-width-adaptive"] {
  max-width: 32rem;
}

@media (min-width: 48rem) {
  .max-width-adaptive-sm, .max-width-adaptive-md, .max-width-adaptive-lg, .max-width-adaptive-xl, .max-width-adaptive {
    max-width: 48rem;
  }
}

@media (min-width: 64rem) {
  .max-width-adaptive-md, .max-width-adaptive-lg, .max-width-adaptive-xl, .max-width-adaptive {
    max-width: 64rem;
  }
}

@media (min-width: 71.25rem) {
  .max-width-adaptive-lg, .max-width-adaptive-xl, .max-width-adaptive {
    max-width: 71.25rem;
  }
}

@media (min-width: 90rem) {
  .max-width-adaptive-xl {
    max-width: 90rem;
  }
}

/* 
    --------------------------------

    Max-Height

    -------------------------------- */
.max-height-100\% {
  max-height: 100%;
}

.max-height-100vh {
  max-height: 100vh;
}

/* 
    --------------------------------

    Position

    --------------------------------
 */
.position-relative {
  position: relative;
}

.position-absolute {
  position: absolute;
}

.position-fixed {
  position: fixed;
}

.position-sticky {
  position: sticky;
}

.top-0 {
  top: 0;
}

.top-50\% {
  top: 50%;
}

.bottom-0 {
  bottom: 0;
}

.bottom-50\% {
  bottom: 50%;
}

.left-0 {
  left: 0;
}

.left-50\% {
  left: 50%;
}

.right-0 {
  right: 0;
}

.right-50\% {
  right: 50%;
}

.inset-0 {
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

/* 
    --------------------------------

    Z-Index

    --------------------------------
 */
.z-index-header {
  z-index: var(--zindex-header);
}

.z-index-popover {
  z-index: var(--zindex-popover);
}

.z-index-fixed-element {
  z-index: var(--zindex-fixed-element);
}

.z-index-overlay {
  z-index: var(--zindex-overlay);
}

.zindex-1, .z-index-1 {
  z-index: 1;
}

.zindex-2, .z-index-2 {
  z-index: 2;
}

.zindex-3, .z-index-3 {
  z-index: 3;
}

/* 
    --------------------------------

    Overflow

    --------------------------------
 */
.overflow-hidden {
  overflow: hidden;
}

.overflow-auto {
  overflow: auto;
}

.momentum-scrolling {
  -webkit-overflow-scrolling: touch;
}

/*   overscroll-behavior */
.overscroll-contain {
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
}

/* 
    --------------------------------

    Opacity

    -------------------------------- */
.opacity-0 {
  opacity: 0;
}

.opacity-10\% {
  opacity: 0.1;
}

.opacity-20\% {
  opacity: 0.2;
}

.opacity-30\% {
  opacity: 0.3;
}

.opacity-40\% {
  opacity: 0.4;
}

.opacity-50\% {
  opacity: 0.5;
}

.opacity-60\% {
  opacity: 0.6;
}

.opacity-70\% {
  opacity: 0.7;
}

.opacity-80\% {
  opacity: 0.8;
}

.opacity-90\% {
  opacity: 0.9;
}

/* 
    --------------------------------

    Media Wrapper - make iFrame responsive + prevent img jump when page loads
    ⚠️ deprecated - replace with aspect ratio

    -------------------------------- */
.media-wrapper {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  /* 16:9 aspect ratio */
}

.media-wrapper > * {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.media-wrapper--4\:3 {
  padding-bottom: calc((3 / 4) * 100%);
}

.media-wrapper--1\:1 {
  padding-bottom: calc((1 / 1) * 100%);
}

/* 
    --------------------------------

    Float

    --------------------------------
 */
.float-left {
  float: left;
}

.float-right {
  float: right;
}

.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

/* 
    --------------------------------

    Border

    --------------------------------
 */
[class*="border-"] {
  --border-o: 1;
}

.border {
  border: 1px solid hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--border-o, 1));
}

.border-top {
  border-top: 1px solid hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--border-o, 1));
}

.border-bottom {
  border-bottom: 1px solid hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--border-o, 1));
}

.border-left {
  border-left: 1px solid hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--border-o, 1));
}

.border-right {
  border-right: 1px solid hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--border-o, 1));
}

.border-2 {
  border-width: 0px;
}

.border-3 {
  border-width: 3px;
}

.border-4 {
  border-width: 4px;
}

.border-bg {
  border-color: hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), var(--border-o, 1));
}

.border-contrast-lower {
  border-color: hsla(var(--color-contrast-lower-h), var(--color-contrast-lower-s), var(--color-contrast-lower-l), var(--border-o, 1));
}

.border-contrast-low {
  border-color: hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--border-o, 1));
}

.border-contrast-medium {
  border-color: hsla(var(--color-contrast-medium-h), var(--color-contrast-medium-s), var(--color-contrast-medium-l), var(--border-o, 1));
}

.border-contrast-high {
  border-color: hsla(var(--color-contrast-high-h), var(--color-contrast-high-s), var(--color-contrast-high-l), var(--border-o, 1));
}

.border-contrast-higher {
  border-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), var(--border-o, 1));
}

.border-primary-darker {
  border-color: hsla(var(--color-primary-darker-h), var(--color-primary-darker-s), var(--color-primary-darker-l), var(--border-o, 1));
}

.border-primary-dark {
  border-color: hsla(var(--color-primary-dark-h), var(--color-primary-dark-s), var(--color-primary-dark-l), var(--border-o, 1));
}

.border-primary {
  border-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), var(--border-o, 1));
}

.border-primary-light {
  border-color: hsla(var(--color-primary-light-h), var(--color-primary-light-s), var(--color-primary-light-l), var(--border-o, 1));
}

.border-primary-lighter {
  border-color: hsla(var(--color-primary-lighter-h), var(--color-primary-lighter-s), var(--color-primary-lighter-l), var(--border-o, 1));
}

.border-accent-darker {
  border-color: hsla(var(--color-accent-darker-h), var(--color-accent-darker-s), var(--color-accent-darker-l), var(--border-o, 1));
}

.border-accent-dark {
  border-color: hsla(var(--color-accent-dark-h), var(--color-accent-dark-s), var(--color-accent-dark-l), var(--border-o, 1));
}

.border-accent {
  border-color: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), var(--border-o, 1));
}

.border-accent-light {
  border-color: hsla(var(--color-accent-light-h), var(--color-accent-light-s), var(--color-accent-light-l), var(--border-o, 1));
}

.border-accent-lighter {
  border-color: hsla(var(--color-accent-lighter-h), var(--color-accent-lighter-s), var(--color-accent-lighter-l), var(--border-o, 1));
}

.border-success-darker {
  border-color: hsla(var(--color-success-darker-h), var(--color-success-darker-s), var(--color-success-darker-l), var(--border-o, 1));
}

.border-success-dark {
  border-color: hsla(var(--color-success-dark-h), var(--color-success-dark-s), var(--color-success-dark-l), var(--border-o, 1));
}

.border-success {
  border-color: hsla(var(--color-success-h), var(--color-success-s), var(--color-success-l), var(--border-o, 1));
}

.border-success-light {
  border-color: hsla(var(--color-success-light-h), var(--color-success-light-s), var(--color-success-light-l), var(--border-o, 1));
}

.border-success-lighter {
  border-color: hsla(var(--color-success-lighter-h), var(--color-success-lighter-s), var(--color-success-lighter-l), var(--border-o, 1));
}

.border-warning-darker {
  border-color: hsla(var(--color-warning-darker-h), var(--color-warning-darker-s), var(--color-warning-darker-l), var(--border-o, 1));
}

.border-warning-dark {
  border-color: hsla(var(--color-warning-dark-h), var(--color-warning-dark-s), var(--color-warning-dark-l), var(--border-o, 1));
}

.border-warning {
  border-color: hsla(var(--color-warning-h), var(--color-warning-s), var(--color-warning-l), var(--border-o, 1));
}

.border-warning-light {
  border-color: hsla(var(--color-warning-light-h), var(--color-warning-light-s), var(--color-warning-light-l), var(--border-o, 1));
}

.border-warning-lighter {
  border-color: hsla(var(--color-warning-lighter-h), var(--color-warning-lighter-s), var(--color-warning-lighter-l), var(--border-o, 1));
}

.border-error-darker {
  border-color: hsla(var(--color-error-darker-h), var(--color-error-darker-s), var(--color-error-darker-l), var(--border-o, 1));
}

.border-error-dark {
  border-color: hsla(var(--color-error-dark-h), var(--color-error-dark-s), var(--color-error-dark-l), var(--border-o, 1));
}

.border-error {
  border-color: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), var(--border-o, 1));
}

.border-error-light {
  border-color: hsla(var(--color-error-light-h), var(--color-error-light-s), var(--color-error-light-l), var(--border-o, 1));
}

.border-error-lighter {
  border-color: hsla(var(--color-error-lighter-h), var(--color-error-lighter-s), var(--color-error-lighter-l), var(--border-o, 1));
}

.border-white {
  border-color: hsla(var(--color-white-h), var(--color-white-s), var(--color-white-l), var(--border-o, 1));
}

.border-black {
  border-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), var(--border-o, 1));
}

@supports (--css: variables) {
  .border-opacity-0 {
    --border-o: 0;
  }
  .border-opacity-10\% {
    --border-o: 0.1;
  }
  .border-opacity-20\% {
    --border-o: 0.2;
  }
  .border-opacity-30\% {
    --border-o: 0.3;
  }
  .border-opacity-40\% {
    --border-o: 0.4;
  }
  .border-opacity-50\% {
    --border-o: 0.5;
  }
  .border-opacity-60\% {
    --border-o: 0.6;
  }
  .border-opacity-70\% {
    --border-o: 0.7;
  }
  .border-opacity-80\% {
    --border-o: 0.8;
  }
  .border-opacity-90\% {
    --border-o: 0.9;
  }
}

/* 
    --------------------------------

    Border Radius

    --------------------------------
 */
.radius-sm {
  border-radius: var(--radius-sm);
}

.radius-md {
  border-radius: var(--radius-md);
}

.radius-lg {
  border-radius: var(--radius-lg);
}

.radius-50\% {
  border-radius: 50%;
}

.radius-full {
  border-radius: 50em;
}

.radius-0 {
  border-radius: 0;
}

.radius-top-left-0 {
  border-top-left-radius: 0;
}

.radius-top-right-0 {
  border-top-right-radius: 0;
}

.radius-bottom-right-0 {
  border-bottom-right-radius: 0;
}

.radius-bottom-left-0 {
  border-bottom-left-radius: 0;
}

/* 
    --------------------------------

    Box-Shadow

    -------------------------------- */
.shadow-xs {
  box-shadow: var(--shadow-xs);
}

.shadow-sm {
  box-shadow: var(--shadow-sm);
}

.shadow-md {
  box-shadow: var(--shadow-md);
}

.shadow-lg {
  box-shadow: var(--shadow-lg);
}

.shadow-xl {
  box-shadow: var(--shadow-xl);
}

.shadow-none {
  box-shadow: none;
}

/* 
    --------------------------------

    Background

    -------------------------------- */
.bg, [class*="bg-"] {
  --bg-o: 1;
}

.bg-transparent {
  background-color: transparent;
}

.bg-inherit {
  background-color: inherit;
}

.bg {
  background-color: hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), var(--bg-o));
}

.bg-contrast-lower {
  background-color: hsla(var(--color-contrast-lower-h), var(--color-contrast-lower-s), var(--color-contrast-lower-l), var(--bg-o, 1));
}

.bg-contrast-low {
  background-color: hsla(var(--color-contrast-low-h), var(--color-contrast-low-s), var(--color-contrast-low-l), var(--bg-o, 1));
}

.bg-contrast-medium {
  background-color: hsla(var(--color-contrast-medium-h), var(--color-contrast-medium-s), var(--color-contrast-medium-l), var(--bg-o, 1));
}

.bg-contrast-high {
  background-color: hsla(var(--color-contrast-high-h), var(--color-contrast-high-s), var(--color-contrast-high-l), var(--bg-o, 1));
}

.bg-contrast-higher {
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), var(--bg-o, 1));
}

.bg-primary-darker {
  background-color: hsla(var(--color-primary-darker-h), var(--color-primary-darker-s), var(--color-primary-darker-l), var(--bg-o, 1));
}

.bg-primary-dark {
  background-color: hsla(var(--color-primary-dark-h), var(--color-primary-dark-s), var(--color-primary-dark-l), var(--bg-o, 1));
}

.bg-primary {
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), var(--bg-o, 1));
}

.bg-primary-light {
  background-color: hsla(var(--color-primary-light-h), var(--color-primary-light-s), var(--color-primary-light-l), var(--bg-o, 1));
}

.bg-primary-lighter {
  background-color: hsla(var(--color-primary-lighter-h), var(--color-primary-lighter-s), var(--color-primary-lighter-l), var(--bg-o, 1));
}

.bg-accent-darker {
  background-color: hsla(var(--color-accent-darker-h), var(--color-accent-darker-s), var(--color-accent-darker-l), var(--bg-o, 1));
}

.bg-accent-dark {
  background-color: hsla(var(--color-accent-dark-h), var(--color-accent-dark-s), var(--color-accent-dark-l), var(--bg-o, 1));
}

.bg-accent {
  background-color: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), var(--bg-o, 1));
}

.bg-accent-light {
  background-color: hsla(var(--color-accent-light-h), var(--color-accent-light-s), var(--color-accent-light-l), var(--bg-o, 1));
}

.bg-accent-lighter {
  background-color: hsla(var(--color-accent-lighter-h), var(--color-accent-lighter-s), var(--color-accent-lighter-l), var(--bg-o, 1));
}

.bg-success-darker {
  background-color: hsla(var(--color-success-darker-h), var(--color-success-darker-s), var(--color-success-darker-l), var(--bg-o, 1));
}

.bg-success-dark {
  background-color: hsla(var(--color-success-dark-h), var(--color-success-dark-s), var(--color-success-dark-l), var(--bg-o, 1));
}

.bg-success {
  background-color: hsla(var(--color-success-h), var(--color-success-s), var(--color-success-l), var(--bg-o, 1));
}

.bg-success-light {
  background-color: hsla(var(--color-success-light-h), var(--color-success-light-s), var(--color-success-light-l), var(--bg-o, 1));
}

.bg-success-lighter {
  background-color: hsla(var(--color-success-lighter-h), var(--color-success-lighter-s), var(--color-success-lighter-l), var(--bg-o, 1));
}

.bg-warning-darker {
  background-color: hsla(var(--color-warning-darker-h), var(--color-warning-darker-s), var(--color-warning-darker-l), var(--bg-o, 1));
}

.bg-warning-dark {
  background-color: hsla(var(--color-warning-dark-h), var(--color-warning-dark-s), var(--color-warning-dark-l), var(--bg-o, 1));
}

.bg-warning {
  background-color: hsla(var(--color-warning-h), var(--color-warning-s), var(--color-warning-l), var(--bg-o, 1));
}

.bg-warning-light {
  background-color: hsla(var(--color-warning-light-h), var(--color-warning-light-s), var(--color-warning-light-l), var(--bg-o, 1));
}

.bg-warning-lighter {
  background-color: hsla(var(--color-warning-lighter-h), var(--color-warning-lighter-s), var(--color-warning-lighter-l), var(--bg-o, 1));
}

.bg-error-darker {
  background-color: hsla(var(--color-error-darker-h), var(--color-error-darker-s), var(--color-error-darker-l), var(--bg-o, 1));
}

.bg-error-dark {
  background-color: hsla(var(--color-error-dark-h), var(--color-error-dark-s), var(--color-error-dark-l), var(--bg-o, 1));
}

.bg-error {
  background-color: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), var(--bg-o, 1));
}

.bg-error-light {
  background-color: hsla(var(--color-error-light-h), var(--color-error-light-s), var(--color-error-light-l), var(--bg-o, 1));
}

.bg-error-lighter {
  background-color: hsla(var(--color-error-lighter-h), var(--color-error-lighter-s), var(--color-error-lighter-l), var(--bg-o, 1));
}

.bg-white {
  background-color: hsla(var(--color-white-h), var(--color-white-s), var(--color-white-l), var(--bg-o, 1));
}

.bg-black {
  background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), var(--bg-o, 1));
}

@supports (--css: variables) {
  .bg-opacity-0 {
    --bg-o: 0;
  }
  .bg-opacity-10\% {
    --bg-o: 0.1;
  }
  .bg-opacity-20\% {
    --bg-o: 0.2;
  }
  .bg-opacity-30\% {
    --bg-o: 0.3;
  }
  .bg-opacity-40\% {
    --bg-o: 0.4;
  }
  .bg-opacity-50\% {
    --bg-o: 0.5;
  }
  .bg-opacity-60\% {
    --bg-o: 0.6;
  }
  .bg-opacity-70\% {
    --bg-o: 0.7;
  }
  .bg-opacity-80\% {
    --bg-o: 0.8;
  }
  .bg-opacity-90\% {
    --bg-o: 0.9;
  }
}

.bg-cover {
  background-size: cover;
}

.bg-center {
  background-position: center;
}

.bg-no-repeat {
  background-repeat: no-repeat;
}

/* 
    --------------------------------

    Backdrop Filter

    --------------------------------
 */
.backdrop-blur-10 {
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.backdrop-blur-20 {
  -webkit-backdrop-filter: blur(20px);
          backdrop-filter: blur(20px);
}

/* 
    --------------------------------

    Mix-Blend Mode

    --------------------------------
 */
.isolate {
  isolation: isolate;
}

.blend-multiply {
  mix-blend-mode: multiply;
}

.blend-overlay {
  mix-blend-mode: overlay;
}

.blend-difference {
  mix-blend-mode: difference;
}

/* 
    --------------------------------

    Object-Fit

    -------------------------------- */
.object-contain {
  -o-object-fit: contain;
     object-fit: contain;
}

.object-cover {
  -o-object-fit: cover;
     object-fit: cover;
}

/* 
    --------------------------------

    Perspective

    --------------------------------
 */
.perspective-xs {
  perspective: 250px;
}

.perspective-sm {
  perspective: 500px;
}

.perspective-md {
  perspective: 1000px;
}

.perspective-lg {
  perspective: 1500px;
}

.perspective-xl {
  perspective: 3000px;
}

/* 
    --------------------------------

    Transform

    --------------------------------
 */
.flip {
  transform: scale(-1);
}

.flip-x {
  transform: scaleX(-1);
}

.flip-y {
  transform: scaleY(-1);
}

.-translate-50\% {
  transform: translate(-50%, -50%);
}

.-translate-x-50\% {
  transform: translateX(-50%);
}

.-translate-y-50\% {
  transform: translateY(-50%);
}

.translate-50\% {
  transform: translate(50%, 50%);
}

.translate-x-50\% {
  transform: translateX(50%);
}

.translate-y-50\% {
  transform: translateY(50%);
}

/* 
    --------------------------------

    Transform Origin

    --------------------------------
 */
.origin-center {
  transform-origin: center;
}

.origin-top {
  transform-origin: center top;
}

.origin-right {
  transform-origin: right center;
}

.origin-bottom {
  transform-origin: center bottom;
}

.origin-left {
  transform-origin: left center;
}

.origin-top-left {
  transform-origin: left top;
}

.origin-top-right {
  transform-origin: right top;
}

.origin-bottom-left {
  transform-origin: left bottom;
}

.origin-bottom-right {
  transform-origin: right bottom;
}

/* 
    --------------------------------

    Responsive Variations

    -------------------------------- */
@media (min-width: 32rem) {
  /*  flexbox */
  .flex\@xs {
    display: flex;
  }
  .inline-flex\@xs {
    display: inline-flex;
  }
  .flex-wrap\@xs {
    flex-wrap: wrap;
  }
  .flex-column\@xs {
    flex-direction: column;
  }
  .flex-column-reverse\@xs {
    flex-direction: column-reverse;
  }
  .flex-row\@xs {
    flex-direction: row;
  }
  .flex-row-reverse\@xs {
    flex-direction: row-reverse;
  }
  .flex-center\@xs {
    justify-content: center;
    align-items: center;
  }
  .flex-grow\@xs {
    flex-grow: 1;
  }
  .flex-grow-0\@xs {
    flex-grow: 0;
  }
  .flex-shrink\@xs {
    flex-shrink: 1;
  }
  .flex-shrink-0\@xs {
    flex-shrink: 0;
  }
  .flex-basis-0\@xs {
    flex-basis: 0;
  }
  /*  justify-content */
  .justify-start\@xs {
    justify-content: flex-start;
  }
  .justify-end\@xs {
    justify-content: flex-end;
  }
  .justify-center\@xs {
    justify-content: center;
  }
  .justify-between\@xs {
    justify-content: space-between;
  }
  /*  align-items */
  .items-center\@xs {
    align-items: center;
  }
  .items-start\@xs {
    align-items: flex-start;
  }
  .items-end\@xs {
    align-items: flex-end;
  }
  .items-baseline\@xs {
    align-items: baseline;
  }
  /*  order */
  .order-1\@xs {
    order: 1;
  }
  .order-2\@xs {
    order: 2;
  }
  .order-3\@xs {
    order: 3;
  }
  /*   display */
  .block\@xs {
    display: block;
  }
  .inline-block\@xs {
    display: inline-block;
  }
  .inline\@xs {
    display: inline;
  }
  /*   margin */
  @supports (--css: variables) {
    .margin-xxxxs\@xs {
      margin: var(--space-xxxxs);
    }
    .margin-xxxs\@xs {
      margin: var(--space-xxxs);
    }
    .margin-xxs\@xs {
      margin: var(--space-xxs);
    }
    .margin-xs\@xs {
      margin: var(--space-xs);
    }
    .margin-sm\@xs {
      margin: var(--space-sm);
    }
    .margin-md\@xs {
      margin: var(--space-md);
    }
    .margin-lg\@xs {
      margin: var(--space-lg);
    }
    .margin-xl\@xs {
      margin: var(--space-xl);
    }
    .margin-xxl\@xs {
      margin: var(--space-xxl);
    }
    .margin-xxxl\@xs {
      margin: var(--space-xxxl);
    }
    .margin-xxxxl\@xs {
      margin: var(--space-xxxxl);
    }
    .margin-auto\@xs {
      margin: auto;
    }
    .margin-0\@xs {
      margin: 0;
    }
    .margin-top-xxxxs\@xs {
      margin-top: var(--space-xxxxs);
    }
    .margin-top-xxxs\@xs {
      margin-top: var(--space-xxxs);
    }
    .margin-top-xxs\@xs {
      margin-top: var(--space-xxs);
    }
    .margin-top-xs\@xs {
      margin-top: var(--space-xs);
    }
    .margin-top-sm\@xs {
      margin-top: var(--space-sm);
    }
    .margin-top-md\@xs {
      margin-top: var(--space-md);
    }
    .margin-top-lg\@xs {
      margin-top: var(--space-lg);
    }
    .margin-top-xl\@xs {
      margin-top: var(--space-xl);
    }
    .margin-top-xxl\@xs {
      margin-top: var(--space-xxl);
    }
    .margin-top-xxxl\@xs {
      margin-top: var(--space-xxxl);
    }
    .margin-top-xxxxl\@xs {
      margin-top: var(--space-xxxxl);
    }
    .margin-top-auto\@xs {
      margin-top: auto;
    }
    .margin-top-0\@xs {
      margin-top: 0;
    }
    .margin-bottom-xxxxs\@xs {
      margin-bottom: var(--space-xxxxs);
    }
    .margin-bottom-xxxs\@xs {
      margin-bottom: var(--space-xxxs);
    }
    .margin-bottom-xxs\@xs {
      margin-bottom: var(--space-xxs);
    }
    .margin-bottom-xs\@xs {
      margin-bottom: var(--space-xs);
    }
    .margin-bottom-sm\@xs {
      margin-bottom: var(--space-sm);
    }
    .margin-bottom-md\@xs {
      margin-bottom: var(--space-md);
    }
    .margin-bottom-lg\@xs {
      margin-bottom: var(--space-lg);
    }
    .margin-bottom-xl\@xs {
      margin-bottom: var(--space-xl);
    }
    .margin-bottom-xxl\@xs {
      margin-bottom: var(--space-xxl);
    }
    .margin-bottom-xxxl\@xs {
      margin-bottom: var(--space-xxxl);
    }
    .margin-bottom-xxxxl\@xs {
      margin-bottom: var(--space-xxxxl);
    }
    .margin-bottom-auto\@xs {
      margin-bottom: auto;
    }
    .margin-bottom-0\@xs {
      margin-bottom: 0;
    }
    .margin-right-xxxxs\@xs {
      margin-right: var(--space-xxxxs);
    }
    .margin-right-xxxs\@xs {
      margin-right: var(--space-xxxs);
    }
    .margin-right-xxs\@xs {
      margin-right: var(--space-xxs);
    }
    .margin-right-xs\@xs {
      margin-right: var(--space-xs);
    }
    .margin-right-sm\@xs {
      margin-right: var(--space-sm);
    }
    .margin-right-md\@xs {
      margin-right: var(--space-md);
    }
    .margin-right-lg\@xs {
      margin-right: var(--space-lg);
    }
    .margin-right-xl\@xs {
      margin-right: var(--space-xl);
    }
    .margin-right-xxl\@xs {
      margin-right: var(--space-xxl);
    }
    .margin-right-xxxl\@xs {
      margin-right: var(--space-xxxl);
    }
    .margin-right-xxxxl\@xs {
      margin-right: var(--space-xxxxl);
    }
    .margin-right-auto\@xs {
      margin-right: auto;
    }
    .margin-right-0\@xs {
      margin-right: 0;
    }
    .margin-left-xxxxs\@xs {
      margin-left: var(--space-xxxxs);
    }
    .margin-left-xxxs\@xs {
      margin-left: var(--space-xxxs);
    }
    .margin-left-xxs\@xs {
      margin-left: var(--space-xxs);
    }
    .margin-left-xs\@xs {
      margin-left: var(--space-xs);
    }
    .margin-left-sm\@xs {
      margin-left: var(--space-sm);
    }
    .margin-left-md\@xs {
      margin-left: var(--space-md);
    }
    .margin-left-lg\@xs {
      margin-left: var(--space-lg);
    }
    .margin-left-xl\@xs {
      margin-left: var(--space-xl);
    }
    .margin-left-xxl\@xs {
      margin-left: var(--space-xxl);
    }
    .margin-left-xxxl\@xs {
      margin-left: var(--space-xxxl);
    }
    .margin-left-xxxxl\@xs {
      margin-left: var(--space-xxxxl);
    }
    .margin-left-auto\@xs {
      margin-left: auto;
    }
    .margin-left-0\@xs {
      margin-left: 0;
    }
    .margin-x-xxxxs\@xs {
      margin-left: var(--space-xxxxs);
      margin-right: var(--space-xxxxs);
    }
    .margin-x-xxxs\@xs {
      margin-left: var(--space-xxxs);
      margin-right: var(--space-xxxs);
    }
    .margin-x-xxs\@xs {
      margin-left: var(--space-xxs);
      margin-right: var(--space-xxs);
    }
    .margin-x-xs\@xs {
      margin-left: var(--space-xs);
      margin-right: var(--space-xs);
    }
    .margin-x-sm\@xs {
      margin-left: var(--space-sm);
      margin-right: var(--space-sm);
    }
    .margin-x-md\@xs {
      margin-left: var(--space-md);
      margin-right: var(--space-md);
    }
    .margin-x-lg\@xs {
      margin-left: var(--space-lg);
      margin-right: var(--space-lg);
    }
    .margin-x-xl\@xs {
      margin-left: var(--space-xl);
      margin-right: var(--space-xl);
    }
    .margin-x-xxl\@xs {
      margin-left: var(--space-xxl);
      margin-right: var(--space-xxl);
    }
    .margin-x-xxxl\@xs {
      margin-left: var(--space-xxxl);
      margin-right: var(--space-xxxl);
    }
    .margin-x-xxxxl\@xs {
      margin-left: var(--space-xxxxl);
      margin-right: var(--space-xxxxl);
    }
    .margin-x-auto\@xs {
      margin-left: auto;
      margin-right: auto;
    }
    .margin-x-0\@xs {
      margin-left: 0;
      margin-right: 0;
    }
    .margin-y-xxxxs\@xs {
      margin-top: var(--space-xxxxs);
      margin-bottom: var(--space-xxxxs);
    }
    .margin-y-xxxs\@xs {
      margin-top: var(--space-xxxs);
      margin-bottom: var(--space-xxxs);
    }
    .margin-y-xxs\@xs {
      margin-top: var(--space-xxs);
      margin-bottom: var(--space-xxs);
    }
    .margin-y-xs\@xs {
      margin-top: var(--space-xs);
      margin-bottom: var(--space-xs);
    }
    .margin-y-sm\@xs {
      margin-top: var(--space-sm);
      margin-bottom: var(--space-sm);
    }
    .margin-y-md\@xs {
      margin-top: var(--space-md);
      margin-bottom: var(--space-md);
    }
    .margin-y-lg\@xs {
      margin-top: var(--space-lg);
      margin-bottom: var(--space-lg);
    }
    .margin-y-xl\@xs {
      margin-top: var(--space-xl);
      margin-bottom: var(--space-xl);
    }
    .margin-y-xxl\@xs {
      margin-top: var(--space-xxl);
      margin-bottom: var(--space-xxl);
    }
    .margin-y-xxxl\@xs {
      margin-top: var(--space-xxxl);
      margin-bottom: var(--space-xxxl);
    }
    .margin-y-xxxxl\@xs {
      margin-top: var(--space-xxxxl);
      margin-bottom: var(--space-xxxxl);
    }
    .margin-y-auto\@xs {
      margin-top: auto;
      margin-bottom: auto;
    }
    .margin-y-0\@xs {
      margin-top: 0;
      margin-bottom: 0;
    }
  }
  /*   padding */
  @supports (--css: variables) {
    .padding-xxxxs\@xs {
      padding: var(--space-xxxxs);
    }
    .padding-xxxs\@xs {
      padding: var(--space-xxxs);
    }
    .padding-xxs\@xs {
      padding: var(--space-xxs);
    }
    .padding-xs\@xs {
      padding: var(--space-xs);
    }
    .padding-sm\@xs {
      padding: var(--space-sm);
    }
    .padding-md\@xs {
      padding: var(--space-md);
    }
    .padding-lg\@xs {
      padding: var(--space-lg);
    }
    .padding-xl\@xs {
      padding: var(--space-xl);
    }
    .padding-xxl\@xs {
      padding: var(--space-xxl);
    }
    .padding-xxxl\@xs {
      padding: var(--space-xxxl);
    }
    .padding-xxxxl\@xs {
      padding: var(--space-xxxxl);
    }
    .padding-0\@xs {
      padding: 0;
    }
    .padding-component\@xs {
      padding: var(--component-padding);
    }
    .padding-top-xxxxs\@xs {
      padding-top: var(--space-xxxxs);
    }
    .padding-top-xxxs\@xs {
      padding-top: var(--space-xxxs);
    }
    .padding-top-xxs\@xs {
      padding-top: var(--space-xxs);
    }
    .padding-top-xs\@xs {
      padding-top: var(--space-xs);
    }
    .padding-top-sm\@xs {
      padding-top: var(--space-sm);
    }
    .padding-top-md\@xs {
      padding-top: var(--space-md);
    }
    .padding-top-lg\@xs {
      padding-top: var(--space-lg);
    }
    .padding-top-xl\@xs {
      padding-top: var(--space-xl);
    }
    .padding-top-xxl\@xs {
      padding-top: var(--space-xxl);
    }
    .padding-top-xxxl\@xs {
      padding-top: var(--space-xxxl);
    }
    .padding-top-xxxxl\@xs {
      padding-top: var(--space-xxxxl);
    }
    .padding-top-0\@xs {
      padding-top: 0;
    }
    .padding-top-component\@xs {
      padding-top: var(--component-padding);
    }
    .padding-bottom-xxxxs\@xs {
      padding-bottom: var(--space-xxxxs);
    }
    .padding-bottom-xxxs\@xs {
      padding-bottom: var(--space-xxxs);
    }
    .padding-bottom-xxs\@xs {
      padding-bottom: var(--space-xxs);
    }
    .padding-bottom-xs\@xs {
      padding-bottom: var(--space-xs);
    }
    .padding-bottom-sm\@xs {
      padding-bottom: var(--space-sm);
    }
    .padding-bottom-md\@xs {
      padding-bottom: var(--space-md);
    }
    .padding-bottom-lg\@xs {
      padding-bottom: var(--space-lg);
    }
    .padding-bottom-xl\@xs {
      padding-bottom: var(--space-xl);
    }
    .padding-bottom-xxl\@xs {
      padding-bottom: var(--space-xxl);
    }
    .padding-bottom-xxxl\@xs {
      padding-bottom: var(--space-xxxl);
    }
    .padding-bottom-xxxxl\@xs {
      padding-bottom: var(--space-xxxxl);
    }
    .padding-bottom-0\@xs {
      padding-bottom: 0;
    }
    .padding-bottom-component\@xs {
      padding-bottom: var(--component-padding);
    }
    .padding-right-xxxxs\@xs {
      padding-right: var(--space-xxxxs);
    }
    .padding-right-xxxs\@xs {
      padding-right: var(--space-xxxs);
    }
    .padding-right-xxs\@xs {
      padding-right: var(--space-xxs);
    }
    .padding-right-xs\@xs {
      padding-right: var(--space-xs);
    }
    .padding-right-sm\@xs {
      padding-right: var(--space-sm);
    }
    .padding-right-md\@xs {
      padding-right: var(--space-md);
    }
    .padding-right-lg\@xs {
      padding-right: var(--space-lg);
    }
    .padding-right-xl\@xs {
      padding-right: var(--space-xl);
    }
    .padding-right-xxl\@xs {
      padding-right: var(--space-xxl);
    }
    .padding-right-xxxl\@xs {
      padding-right: var(--space-xxxl);
    }
    .padding-right-xxxxl\@xs {
      padding-right: var(--space-xxxxl);
    }
    .padding-right-0\@xs {
      padding-right: 0;
    }
    .padding-right-component\@xs {
      padding-right: var(--component-padding);
    }
    .padding-left-xxxxs\@xs {
      padding-left: var(--space-xxxxs);
    }
    .padding-left-xxxs\@xs {
      padding-left: var(--space-xxxs);
    }
    .padding-left-xxs\@xs {
      padding-left: var(--space-xxs);
    }
    .padding-left-xs\@xs {
      padding-left: var(--space-xs);
    }
    .padding-left-sm\@xs {
      padding-left: var(--space-sm);
    }
    .padding-left-md\@xs {
      padding-left: var(--space-md);
    }
    .padding-left-lg\@xs {
      padding-left: var(--space-lg);
    }
    .padding-left-xl\@xs {
      padding-left: var(--space-xl);
    }
    .padding-left-xxl\@xs {
      padding-left: var(--space-xxl);
    }
    .padding-left-xxxl\@xs {
      padding-left: var(--space-xxxl);
    }
    .padding-left-xxxxl\@xs {
      padding-left: var(--space-xxxxl);
    }
    .padding-left-0\@xs {
      padding-left: 0;
    }
    .padding-left-component\@xs {
      padding-left: var(--component-padding);
    }
    .padding-x-xxxxs\@xs {
      padding-left: var(--space-xxxxs);
      padding-right: var(--space-xxxxs);
    }
    .padding-x-xxxs\@xs {
      padding-left: var(--space-xxxs);
      padding-right: var(--space-xxxs);
    }
    .padding-x-xxs\@xs {
      padding-left: var(--space-xxs);
      padding-right: var(--space-xxs);
    }
    .padding-x-xs\@xs {
      padding-left: var(--space-xs);
      padding-right: var(--space-xs);
    }
    .padding-x-sm\@xs {
      padding-left: var(--space-sm);
      padding-right: var(--space-sm);
    }
    .padding-x-md\@xs {
      padding-left: var(--space-md);
      padding-right: var(--space-md);
    }
    .padding-x-lg\@xs {
      padding-left: var(--space-lg);
      padding-right: var(--space-lg);
    }
    .padding-x-xl\@xs {
      padding-left: var(--space-xl);
      padding-right: var(--space-xl);
    }
    .padding-x-xxl\@xs {
      padding-left: var(--space-xxl);
      padding-right: var(--space-xxl);
    }
    .padding-x-xxxl\@xs {
      padding-left: var(--space-xxxl);
      padding-right: var(--space-xxxl);
    }
    .padding-x-xxxxl\@xs {
      padding-left: var(--space-xxxxl);
      padding-right: var(--space-xxxxl);
    }
    .padding-x-0\@xs {
      padding-left: 0;
      padding-right: 0;
    }
    .padding-x-component\@xs {
      padding-left: var(--component-padding);
      padding-right: var(--component-padding);
    }
    .padding-y-xxxxs\@xs {
      padding-top: var(--space-xxxxs);
      padding-bottom: var(--space-xxxxs);
    }
    .padding-y-xxxs\@xs {
      padding-top: var(--space-xxxs);
      padding-bottom: var(--space-xxxs);
    }
    .padding-y-xxs\@xs {
      padding-top: var(--space-xxs);
      padding-bottom: var(--space-xxs);
    }
    .padding-y-xs\@xs {
      padding-top: var(--space-xs);
      padding-bottom: var(--space-xs);
    }
    .padding-y-sm\@xs {
      padding-top: var(--space-sm);
      padding-bottom: var(--space-sm);
    }
    .padding-y-md\@xs {
      padding-top: var(--space-md);
      padding-bottom: var(--space-md);
    }
    .padding-y-lg\@xs {
      padding-top: var(--space-lg);
      padding-bottom: var(--space-lg);
    }
    .padding-y-xl\@xs {
      padding-top: var(--space-xl);
      padding-bottom: var(--space-xl);
    }
    .padding-y-xxl\@xs {
      padding-top: var(--space-xxl);
      padding-bottom: var(--space-xxl);
    }
    .padding-y-xxxl\@xs {
      padding-top: var(--space-xxxl);
      padding-bottom: var(--space-xxxl);
    }
    .padding-y-xxxxl\@xs {
      padding-top: var(--space-xxxxl);
      padding-bottom: var(--space-xxxxl);
    }
    .padding-y-0\@xs {
      padding-top: 0;
      padding-bottom: 0;
    }
    .padding-y-component\@xs {
      padding-top: var(--component-padding);
      padding-bottom: var(--component-padding);
    }
  }
  /*  text-align */
  .text-center\@xs {
    text-align: center;
  }
  .text-left\@xs {
    text-align: left;
  }
  .text-right\@xs {
    text-align: right;
  }
  .text-justify\@xs {
    text-align: justify;
  }
  /*  font-size */
  @supports (--css: variables) {
    .text-xs\@xs {
      font-size: var(--text-xs, 0.694em);
    }
    .text-sm\@xs {
      font-size: var(--text-sm, 0.875em);
    }
    .text-base\@xs {
      font-size: var(--text-unit, 1em);
    }
    .text-md\@xs {
      font-size: var(--text-md, 1.2em);
    }
    .text-lg\@xs {
      font-size: var(--text-lg, 1.44em);
    }
    .text-xl\@xs {
      font-size: var(--text-xl, 1.728em);
    }
    .text-xxl\@xs {
      font-size: var(--text-xxl, 2.074em);
    }
    .text-xxxl\@xs {
      font-size: var(--text-xxxl, 2.488em);
    }
    .text-xxxxl\@xs {
      font-size: var(--text-xxxxl, 2.985em);
    }
  }
  /*   width */
  @supports (--css: variables) {
    .width-xxxxs\@xs {
      width: var(--size-xxxxs, 0.25rem);
    }
    .width-xxxs\@xs {
      width: var(--size-xxxs, 0.5rem);
    }
    .width-xxs\@xs {
      width: var(--size-xxs, 0.75rem);
    }
    .width-xs\@xs {
      width: var(--size-xs, 1rem);
    }
    .width-sm\@xs {
      width: var(--size-sm, 1.5rem);
    }
    .width-md\@xs {
      width: var(--size-md, 2rem);
    }
    .width-lg\@xs {
      width: var(--size-lg, 3rem);
    }
    .width-xl\@xs {
      width: var(--size-xl, 4rem);
    }
    .width-xxl\@xs {
      width: var(--size-xxl, 6rem);
    }
    .width-xxxl\@xs {
      width: var(--size-xxxl, 8rem);
    }
    .width-xxxxl\@xs {
      width: var(--size-xxxxl, 16rem);
    }
  }
  .width-0\@xs {
    width: 0;
  }
  .width-10\%\@xs {
    width: 10%;
  }
  .width-20\%\@xs {
    width: 20%;
  }
  .width-25\%\@xs {
    width: 25%;
  }
  .width-30\%\@xs {
    width: 30%;
  }
  .width-33\%\@xs {
    width: calc(100% / 3);
  }
  .width-40\%\@xs {
    width: 40%;
  }
  .width-50\%\@xs {
    width: 50%;
  }
  .width-60\%\@xs {
    width: 60%;
  }
  .width-66\%\@xs {
    width: calc(100% / 1.5);
  }
  .width-70\%\@xs {
    width: 70%;
  }
  .width-75\%\@xs {
    width: 75%;
  }
  .width-80\%\@xs {
    width: 80%;
  }
  .width-90\%\@xs {
    width: 90%;
  }
  .width-100\%\@xs {
    width: 100%;
  }
  .width-100vw\@xs {
    width: 100vw;
  }
  .width-auto\@xs {
    width: auto;
  }
  /*   height */
  @supports (--css: variables) {
    .height-xxxxs\@xs {
      height: var(--size-xxxxs, 0.25rem);
    }
    .height-xxxs\@xs {
      height: var(--size-xxxs, 0.5rem);
    }
    .height-xxs\@xs {
      height: var(--size-xxs, 0.75rem);
    }
    .height-xs\@xs {
      height: var(--size-xs, 1rem);
    }
    .height-sm\@xs {
      height: var(--size-sm, 1.5rem);
    }
    .height-md\@xs {
      height: var(--size-md, 2rem);
    }
    .height-lg\@xs {
      height: var(--size-lg, 3rem);
    }
    .height-xl\@xs {
      height: var(--size-xl, 4rem);
    }
    .height-xxl\@xs {
      height: var(--size-xxl, 6rem);
    }
    .height-xxxl\@xs {
      height: var(--size-xxxl, 8rem);
    }
    .height-xxxxl\@xs {
      height: var(--size-xxxxl, 16rem);
    }
  }
  .height-0\@xs {
    height: 0;
  }
  .height-10\%\@xs {
    height: 10%;
  }
  .height-20\%\@xs {
    height: 20%;
  }
  .height-25\%\@xs {
    height: 25%;
  }
  .height-30\%\@xs {
    height: 30%;
  }
  .height-33\%\@xs {
    height: calc(100% / 3);
  }
  .height-40\%\@xs {
    height: 40%;
  }
  .height-50\%\@xs {
    height: 50%;
  }
  .height-60\%\@xs {
    height: 60%;
  }
  .height-66\%\@xs {
    height: calc(100% / 1.5);
  }
  .height-70\%\@xs {
    height: 70%;
  }
  .height-75\%\@xs {
    height: 75%;
  }
  .height-80\%\@xs {
    height: 80%;
  }
  .height-90\%\@xs {
    height: 90%;
  }
  .height-100\%\@xs {
    height: 100%;
  }
  .height-100vh\@xs {
    height: 100vh;
  }
  .height-auto\@xs {
    height: auto;
  }
  position .position-relative\@xs {
    position: relative;
  }
  .position-absolute\@xs {
    position: absolute;
  }
  .position-fixed\@xs {
    position: fixed;
  }
  .position-sticky\@xs {
    position: sticky;
  }
  .position-static\@xs {
    position: static;
  }
  .top-0\@xs {
    top: 0;
  }
  .top-50\%\@xs {
    top: 50%;
  }
  .bottom-0\@xs {
    bottom: 0;
  }
  .bottom-50\%\@xs {
    bottom: 50%;
  }
  .left-0\@xs {
    left: 0;
  }
  .left-50\%\@xs {
    left: 50%;
  }
  .right-0\@xs {
    right: 0;
  }
  .right-50\%\@xs {
    right: 50%;
  }
  .inset-0\@xs {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  /*   visibility */
  .hide\@xs {
    display: none !important;
  }
}

@media not all and (min-width: 32rem) {
  .has-margin\@xs {
    margin: 0 !important;
  }
  .has-padding\@xs {
    padding: 0 !important;
  }
  .display\@xs {
    display: none !important;
  }
}

@media (min-width: 48rem) {
  /*  flexbox */
  .flex\@sm {
    display: flex;
  }
  .inline-flex\@sm {
    display: inline-flex;
  }
  .flex-wrap\@sm {
    flex-wrap: wrap;
  }
  .flex-column\@sm {
    flex-direction: column;
  }
  .flex-column-reverse\@sm {
    flex-direction: column-reverse;
  }
  .flex-row\@sm {
    flex-direction: row;
  }
  .flex-row-reverse\@sm {
    flex-direction: row-reverse;
  }
  .flex-center\@sm {
    justify-content: center;
    align-items: center;
  }
  .flex-grow\@sm {
    flex-grow: 1;
  }
  .flex-grow-0\@sm {
    flex-grow: 0;
  }
  .flex-shrink\@sm {
    flex-shrink: 1;
  }
  .flex-shrink-0\@sm {
    flex-shrink: 0;
  }
  .flex-basis-0\@sm {
    flex-basis: 0;
  }
  /*  justify-content */
  .justify-start\@sm {
    justify-content: flex-start;
  }
  .justify-end\@sm {
    justify-content: flex-end;
  }
  .justify-center\@sm {
    justify-content: center;
  }
  .justify-between\@sm {
    justify-content: space-between;
  }
  /*  align-items */
  .items-center\@sm {
    align-items: center;
  }
  .items-start\@sm {
    align-items: flex-start;
  }
  .items-end\@sm {
    align-items: flex-end;
  }
  .items-baseline\@sm {
    align-items: baseline;
  }
  /*  order */
  .order-1\@sm {
    order: 1;
  }
  .order-2\@sm {
    order: 2;
  }
  .order-3\@sm {
    order: 3;
  }
  /*   display */
  .block\@sm {
    display: block;
  }
  .inline-block\@sm {
    display: inline-block;
  }
  .inline\@sm {
    display: inline;
  }
  /*   margin */
  @supports (--css: variables) {
    .margin-xxxxs\@sm {
      margin: var(--space-xxxxs);
    }
    .margin-xxxs\@sm {
      margin: var(--space-xxxs);
    }
    .margin-xxs\@sm {
      margin: var(--space-xxs);
    }
    .margin-xs\@sm {
      margin: var(--space-xs);
    }
    .margin-sm\@sm {
      margin: var(--space-sm);
    }
    .margin-md\@sm {
      margin: var(--space-md);
    }
    .margin-lg\@sm {
      margin: var(--space-lg);
    }
    .margin-xl\@sm {
      margin: var(--space-xl);
    }
    .margin-xxl\@sm {
      margin: var(--space-xxl);
    }
    .margin-xxxl\@sm {
      margin: var(--space-xxxl);
    }
    .margin-xxxxl\@sm {
      margin: var(--space-xxxxl);
    }
    .margin-auto\@sm {
      margin: auto;
    }
    .margin-0\@sm {
      margin: 0;
    }
    .margin-top-xxxxs\@sm {
      margin-top: var(--space-xxxxs);
    }
    .margin-top-xxxs\@sm {
      margin-top: var(--space-xxxs);
    }
    .margin-top-xxs\@sm {
      margin-top: var(--space-xxs);
    }
    .margin-top-xs\@sm {
      margin-top: var(--space-xs);
    }
    .margin-top-sm\@sm {
      margin-top: var(--space-sm);
    }
    .margin-top-md\@sm {
      margin-top: var(--space-md);
    }
    .margin-top-lg\@sm {
      margin-top: var(--space-lg);
    }
    .margin-top-xl\@sm {
      margin-top: var(--space-xl);
    }
    .margin-top-xxl\@sm {
      margin-top: var(--space-xxl);
    }
    .margin-top-xxxl\@sm {
      margin-top: var(--space-xxxl);
    }
    .margin-top-xxxxl\@sm {
      margin-top: var(--space-xxxxl);
    }
    .margin-top-auto\@sm {
      margin-top: auto;
    }
    .margin-top-0\@sm {
      margin-top: 0;
    }
    .margin-bottom-xxxxs\@sm {
      margin-bottom: var(--space-xxxxs);
    }
    .margin-bottom-xxxs\@sm {
      margin-bottom: var(--space-xxxs);
    }
    .margin-bottom-xxs\@sm {
      margin-bottom: var(--space-xxs);
    }
    .margin-bottom-xs\@sm {
      margin-bottom: var(--space-xs);
    }
    .margin-bottom-sm\@sm {
      margin-bottom: var(--space-sm);
    }
    .margin-bottom-md\@sm {
      margin-bottom: var(--space-md);
    }
    .margin-bottom-lg\@sm {
      margin-bottom: var(--space-lg);
    }
    .margin-bottom-xl\@sm {
      margin-bottom: var(--space-xl);
    }
    .margin-bottom-xxl\@sm {
      margin-bottom: var(--space-xxl);
    }
    .margin-bottom-xxxl\@sm {
      margin-bottom: var(--space-xxxl);
    }
    .margin-bottom-xxxxl\@sm {
      margin-bottom: var(--space-xxxxl);
    }
    .margin-bottom-auto\@sm {
      margin-bottom: auto;
    }
    .margin-bottom-0\@sm {
      margin-bottom: 0;
    }
    .margin-right-xxxxs\@sm {
      margin-right: var(--space-xxxxs);
    }
    .margin-right-xxxs\@sm {
      margin-right: var(--space-xxxs);
    }
    .margin-right-xxs\@sm {
      margin-right: var(--space-xxs);
    }
    .margin-right-xs\@sm {
      margin-right: var(--space-xs);
    }
    .margin-right-sm\@sm {
      margin-right: var(--space-sm);
    }
    .margin-right-md\@sm {
      margin-right: var(--space-md);
    }
    .margin-right-lg\@sm {
      margin-right: var(--space-lg);
    }
    .margin-right-xl\@sm {
      margin-right: var(--space-xl);
    }
    .margin-right-xxl\@sm {
      margin-right: var(--space-xxl);
    }
    .margin-right-xxxl\@sm {
      margin-right: var(--space-xxxl);
    }
    .margin-right-xxxxl\@sm {
      margin-right: var(--space-xxxxl);
    }
    .margin-right-auto\@sm {
      margin-right: auto;
    }
    .margin-right-0\@sm {
      margin-right: 0;
    }
    .margin-left-xxxxs\@sm {
      margin-left: var(--space-xxxxs);
    }
    .margin-left-xxxs\@sm {
      margin-left: var(--space-xxxs);
    }
    .margin-left-xxs\@sm {
      margin-left: var(--space-xxs);
    }
    .margin-left-xs\@sm {
      margin-left: var(--space-xs);
    }
    .margin-left-sm\@sm {
      margin-left: var(--space-sm);
    }
    .margin-left-md\@sm {
      margin-left: var(--space-md);
    }
    .margin-left-lg\@sm {
      margin-left: var(--space-lg);
    }
    .margin-left-xl\@sm {
      margin-left: var(--space-xl);
    }
    .margin-left-xxl\@sm {
      margin-left: var(--space-xxl);
    }
    .margin-left-xxxl\@sm {
      margin-left: var(--space-xxxl);
    }
    .margin-left-xxxxl\@sm {
      margin-left: var(--space-xxxxl);
    }
    .margin-left-auto\@sm {
      margin-left: auto;
    }
    .margin-left-0\@sm {
      margin-left: 0;
    }
    .margin-x-xxxxs\@sm {
      margin-left: var(--space-xxxxs);
      margin-right: var(--space-xxxxs);
    }
    .margin-x-xxxs\@sm {
      margin-left: var(--space-xxxs);
      margin-right: var(--space-xxxs);
    }
    .margin-x-xxs\@sm {
      margin-left: var(--space-xxs);
      margin-right: var(--space-xxs);
    }
    .margin-x-xs\@sm {
      margin-left: var(--space-xs);
      margin-right: var(--space-xs);
    }
    .margin-x-sm\@sm {
      margin-left: var(--space-sm);
      margin-right: var(--space-sm);
    }
    .margin-x-md\@sm {
      margin-left: var(--space-md);
      margin-right: var(--space-md);
    }
    .margin-x-lg\@sm {
      margin-left: var(--space-lg);
      margin-right: var(--space-lg);
    }
    .margin-x-xl\@sm {
      margin-left: var(--space-xl);
      margin-right: var(--space-xl);
    }
    .margin-x-xxl\@sm {
      margin-left: var(--space-xxl);
      margin-right: var(--space-xxl);
    }
    .margin-x-xxxl\@sm {
      margin-left: var(--space-xxxl);
      margin-right: var(--space-xxxl);
    }
    .margin-x-xxxxl\@sm {
      margin-left: var(--space-xxxxl);
      margin-right: var(--space-xxxxl);
    }
    .margin-x-auto\@sm {
      margin-left: auto;
      margin-right: auto;
    }
    .margin-x-0\@sm {
      margin-left: 0;
      margin-right: 0;
    }
    .margin-y-xxxxs\@sm {
      margin-top: var(--space-xxxxs);
      margin-bottom: var(--space-xxxxs);
    }
    .margin-y-xxxs\@sm {
      margin-top: var(--space-xxxs);
      margin-bottom: var(--space-xxxs);
    }
    .margin-y-xxs\@sm {
      margin-top: var(--space-xxs);
      margin-bottom: var(--space-xxs);
    }
    .margin-y-xs\@sm {
      margin-top: var(--space-xs);
      margin-bottom: var(--space-xs);
    }
    .margin-y-sm\@sm {
      margin-top: var(--space-sm);
      margin-bottom: var(--space-sm);
    }
    .margin-y-md\@sm {
      margin-top: var(--space-md);
      margin-bottom: var(--space-md);
    }
    .margin-y-lg\@sm {
      margin-top: var(--space-lg);
      margin-bottom: var(--space-lg);
    }
    .margin-y-xl\@sm {
      margin-top: var(--space-xl);
      margin-bottom: var(--space-xl);
    }
    .margin-y-xxl\@sm {
      margin-top: var(--space-xxl);
      margin-bottom: var(--space-xxl);
    }
    .margin-y-xxxl\@sm {
      margin-top: var(--space-xxxl);
      margin-bottom: var(--space-xxxl);
    }
    .margin-y-xxxxl\@sm {
      margin-top: var(--space-xxxxl);
      margin-bottom: var(--space-xxxxl);
    }
    .margin-y-auto\@sm {
      margin-top: auto;
      margin-bottom: auto;
    }
    .margin-y-0\@sm {
      margin-top: 0;
      margin-bottom: 0;
    }
  }
  /*   padding */
  @supports (--css: variables) {
    .padding-xxxxs\@sm {
      padding: var(--space-xxxxs);
    }
    .padding-xxxs\@sm {
      padding: var(--space-xxxs);
    }
    .padding-xxs\@sm {
      padding: var(--space-xxs);
    }
    .padding-xs\@sm {
      padding: var(--space-xs);
    }
    .padding-sm\@sm {
      padding: var(--space-sm);
    }
    .padding-md\@sm {
      padding: var(--space-md);
    }
    .padding-lg\@sm {
      padding: var(--space-lg);
    }
    .padding-xl\@sm {
      padding: var(--space-xl);
    }
    .padding-xxl\@sm {
      padding: var(--space-xxl);
    }
    .padding-xxxl\@sm {
      padding: var(--space-xxxl);
    }
    .padding-xxxxl\@sm {
      padding: var(--space-xxxxl);
    }
    .padding-0\@sm {
      padding: 0;
    }
    .padding-component\@sm {
      padding: var(--component-padding);
    }
    .padding-top-xxxxs\@sm {
      padding-top: var(--space-xxxxs);
    }
    .padding-top-xxxs\@sm {
      padding-top: var(--space-xxxs);
    }
    .padding-top-xxs\@sm {
      padding-top: var(--space-xxs);
    }
    .padding-top-xs\@sm {
      padding-top: var(--space-xs);
    }
    .padding-top-sm\@sm {
      padding-top: var(--space-sm);
    }
    .padding-top-md\@sm {
      padding-top: var(--space-md);
    }
    .padding-top-lg\@sm {
      padding-top: var(--space-lg);
    }
    .padding-top-xl\@sm {
      padding-top: var(--space-xl);
    }
    .padding-top-xxl\@sm {
      padding-top: var(--space-xxl);
    }
    .padding-top-xxxl\@sm {
      padding-top: var(--space-xxxl);
    }
    .padding-top-xxxxl\@sm {
      padding-top: var(--space-xxxxl);
    }
    .padding-top-0\@sm {
      padding-top: 0;
    }
    .padding-top-component\@sm {
      padding-top: var(--component-padding);
    }
    .padding-bottom-xxxxs\@sm {
      padding-bottom: var(--space-xxxxs);
    }
    .padding-bottom-xxxs\@sm {
      padding-bottom: var(--space-xxxs);
    }
    .padding-bottom-xxs\@sm {
      padding-bottom: var(--space-xxs);
    }
    .padding-bottom-xs\@sm {
      padding-bottom: var(--space-xs);
    }
    .padding-bottom-sm\@sm {
      padding-bottom: var(--space-sm);
    }
    .padding-bottom-md\@sm {
      padding-bottom: var(--space-md);
    }
    .padding-bottom-lg\@sm {
      padding-bottom: var(--space-lg);
    }
    .padding-bottom-xl\@sm {
      padding-bottom: var(--space-xl);
    }
    .padding-bottom-xxl\@sm {
      padding-bottom: var(--space-xxl);
    }
    .padding-bottom-xxxl\@sm {
      padding-bottom: var(--space-xxxl);
    }
    .padding-bottom-xxxxl\@sm {
      padding-bottom: var(--space-xxxxl);
    }
    .padding-bottom-0\@sm {
      padding-bottom: 0;
    }
    .padding-bottom-component\@sm {
      padding-bottom: var(--component-padding);
    }
    .padding-right-xxxxs\@sm {
      padding-right: var(--space-xxxxs);
    }
    .padding-right-xxxs\@sm {
      padding-right: var(--space-xxxs);
    }
    .padding-right-xxs\@sm {
      padding-right: var(--space-xxs);
    }
    .padding-right-xs\@sm {
      padding-right: var(--space-xs);
    }
    .padding-right-sm\@sm {
      padding-right: var(--space-sm);
    }
    .padding-right-md\@sm {
      padding-right: var(--space-md);
    }
    .padding-right-lg\@sm {
      padding-right: var(--space-lg);
    }
    .padding-right-xl\@sm {
      padding-right: var(--space-xl);
    }
    .padding-right-xxl\@sm {
      padding-right: var(--space-xxl);
    }
    .padding-right-xxxl\@sm {
      padding-right: var(--space-xxxl);
    }
    .padding-right-xxxxl\@sm {
      padding-right: var(--space-xxxxl);
    }
    .padding-right-0\@sm {
      padding-right: 0;
    }
    .padding-right-component\@sm {
      padding-right: var(--component-padding);
    }
    .padding-left-xxxxs\@sm {
      padding-left: var(--space-xxxxs);
    }
    .padding-left-xxxs\@sm {
      padding-left: var(--space-xxxs);
    }
    .padding-left-xxs\@sm {
      padding-left: var(--space-xxs);
    }
    .padding-left-xs\@sm {
      padding-left: var(--space-xs);
    }
    .padding-left-sm\@sm {
      padding-left: var(--space-sm);
    }
    .padding-left-md\@sm {
      padding-left: var(--space-md);
    }
    .padding-left-lg\@sm {
      padding-left: var(--space-lg);
    }
    .padding-left-xl\@sm {
      padding-left: var(--space-xl);
    }
    .padding-left-xxl\@sm {
      padding-left: var(--space-xxl);
    }
    .padding-left-xxxl\@sm {
      padding-left: var(--space-xxxl);
    }
    .padding-left-xxxxl\@sm {
      padding-left: var(--space-xxxxl);
    }
    .padding-left-0\@sm {
      padding-left: 0;
    }
    .padding-left-component\@sm {
      padding-left: var(--component-padding);
    }
    .padding-x-xxxxs\@sm {
      padding-left: var(--space-xxxxs);
      padding-right: var(--space-xxxxs);
    }
    .padding-x-xxxs\@sm {
      padding-left: var(--space-xxxs);
      padding-right: var(--space-xxxs);
    }
    .padding-x-xxs\@sm {
      padding-left: var(--space-xxs);
      padding-right: var(--space-xxs);
    }
    .padding-x-xs\@sm {
      padding-left: var(--space-xs);
      padding-right: var(--space-xs);
    }
    .padding-x-sm\@sm {
      padding-left: var(--space-sm);
      padding-right: var(--space-sm);
    }
    .padding-x-md\@sm {
      padding-left: var(--space-md);
      padding-right: var(--space-md);
    }
    .padding-x-lg\@sm {
      padding-left: var(--space-lg);
      padding-right: var(--space-lg);
    }
    .padding-x-xl\@sm {
      padding-left: var(--space-xl);
      padding-right: var(--space-xl);
    }
    .padding-x-xxl\@sm {
      padding-left: var(--space-xxl);
      padding-right: var(--space-xxl);
    }
    .padding-x-xxxl\@sm {
      padding-left: var(--space-xxxl);
      padding-right: var(--space-xxxl);
    }
    .padding-x-xxxxl\@sm {
      padding-left: var(--space-xxxxl);
      padding-right: var(--space-xxxxl);
    }
    .padding-x-0\@sm {
      padding-left: 0;
      padding-right: 0;
    }
    .padding-x-component\@sm {
      padding-left: var(--component-padding);
      padding-right: var(--component-padding);
    }
    .padding-y-xxxxs\@sm {
      padding-top: var(--space-xxxxs);
      padding-bottom: var(--space-xxxxs);
    }
    .padding-y-xxxs\@sm {
      padding-top: var(--space-xxxs);
      padding-bottom: var(--space-xxxs);
    }
    .padding-y-xxs\@sm {
      padding-top: var(--space-xxs);
      padding-bottom: var(--space-xxs);
    }
    .padding-y-xs\@sm {
      padding-top: var(--space-xs);
      padding-bottom: var(--space-xs);
    }
    .padding-y-sm\@sm {
      padding-top: var(--space-sm);
      padding-bottom: var(--space-sm);
    }
    .padding-y-md\@sm {
      padding-top: var(--space-md);
      padding-bottom: var(--space-md);
    }
    .padding-y-lg\@sm {
      padding-top: var(--space-lg);
      padding-bottom: var(--space-lg);
    }
    .padding-y-xl\@sm {
      padding-top: var(--space-xl);
      padding-bottom: var(--space-xl);
    }
    .padding-y-xxl\@sm {
      padding-top: var(--space-xxl);
      padding-bottom: var(--space-xxl);
    }
    .padding-y-xxxl\@sm {
      padding-top: var(--space-xxxl);
      padding-bottom: var(--space-xxxl);
    }
    .padding-y-xxxxl\@sm {
      padding-top: var(--space-xxxxl);
      padding-bottom: var(--space-xxxxl);
    }
    .padding-y-0\@sm {
      padding-top: 0;
      padding-bottom: 0;
    }
    .padding-y-component\@sm {
      padding-top: var(--component-padding);
      padding-bottom: var(--component-padding);
    }
  }
  /*  text-align */
  .text-center\@sm {
    text-align: center;
  }
  .text-left\@sm {
    text-align: left;
  }
  .text-right\@sm {
    text-align: right;
  }
  .text-justify\@sm {
    text-align: justify;
  }
  /*  font-size */
  @supports (--css: variables) {
    .text-xs\@sm {
      font-size: var(--text-xs, 0.694em);
    }
    .text-sm\@sm {
      font-size: var(--text-sm, 0.875em);
    }
    .text-base\@sm {
      font-size: var(--text-unit, 1em);
    }
    .text-md\@sm {
      font-size: var(--text-md, 1.2em);
    }
    .text-lg\@sm {
      font-size: var(--text-lg, 1.44em);
    }
    .text-xl\@sm {
      font-size: var(--text-xl, 1.728em);
    }
    .text-xxl\@sm {
      font-size: var(--text-xxl, 2.074em);
    }
    .text-xxxl\@sm {
      font-size: var(--text-xxxl, 2.488em);
    }
    .text-xxxxl\@sm {
      font-size: var(--text-xxxxl, 2.985em);
    }
  }
  /*   width */
  @supports (--css: variables) {
    .width-xxxxs\@sm {
      width: var(--size-xxxxs, 0.25rem);
    }
    .width-xxxs\@sm {
      width: var(--size-xxxs, 0.5rem);
    }
    .width-xxs\@sm {
      width: var(--size-xxs, 0.75rem);
    }
    .width-xs\@sm {
      width: var(--size-xs, 1rem);
    }
    .width-sm\@sm {
      width: var(--size-sm, 1.5rem);
    }
    .width-md\@sm {
      width: var(--size-md, 2rem);
    }
    .width-lg\@sm {
      width: var(--size-lg, 3rem);
    }
    .width-xl\@sm {
      width: var(--size-xl, 4rem);
    }
    .width-xxl\@sm {
      width: var(--size-xxl, 6rem);
    }
    .width-xxxl\@sm {
      width: var(--size-xxxl, 8rem);
    }
    .width-xxxxl\@sm {
      width: var(--size-xxxxl, 16rem);
    }
  }
  .width-0\@sm {
    width: 0;
  }
  .width-10\%\@sm {
    width: 10%;
  }
  .width-20\%\@sm {
    width: 20%;
  }
  .width-25\%\@sm {
    width: 25%;
  }
  .width-30\%\@sm {
    width: 30%;
  }
  .width-33\%\@sm {
    width: calc(100% / 3);
  }
  .width-40\%\@sm {
    width: 40%;
  }
  .width-50\%\@sm {
    width: 50%;
  }
  .width-60\%\@sm {
    width: 60%;
  }
  .width-66\%\@sm {
    width: calc(100% / 1.5);
  }
  .width-70\%\@sm {
    width: 70%;
  }
  .width-75\%\@sm {
    width: 75%;
  }
  .width-80\%\@sm {
    width: 80%;
  }
  .width-90\%\@sm {
    width: 90%;
  }
  .width-100\%\@sm {
    width: 100%;
  }
  .width-100vw\@sm {
    width: 100vw;
  }
  .width-auto\@sm {
    width: auto;
  }
  /*   height */
  @supports (--css: variables) {
    .height-xxxxs\@sm {
      height: var(--size-xxxxs, 0.25rem);
    }
    .height-xxxs\@sm {
      height: var(--size-xxxs, 0.5rem);
    }
    .height-xxs\@sm {
      height: var(--size-xxs, 0.75rem);
    }
    .height-xs\@sm {
      height: var(--size-xs, 1rem);
    }
    .height-sm\@sm {
      height: var(--size-sm, 1.5rem);
    }
    .height-md\@sm {
      height: var(--size-md, 2rem);
    }
    .height-lg\@sm {
      height: var(--size-lg, 3rem);
    }
    .height-xl\@sm {
      height: var(--size-xl, 4rem);
    }
    .height-xxl\@sm {
      height: var(--size-xxl, 6rem);
    }
    .height-xxxl\@sm {
      height: var(--size-xxxl, 8rem);
    }
    .height-xxxxl\@sm {
      height: var(--size-xxxxl, 16rem);
    }
  }
  .height-0\@sm {
    height: 0;
  }
  .height-10\%\@sm {
    height: 10%;
  }
  .height-20\%\@sm {
    height: 20%;
  }
  .height-25\%\@sm {
    height: 25%;
  }
  .height-30\%\@sm {
    height: 30%;
  }
  .height-33\%\@sm {
    height: calc(100% / 3);
  }
  .height-40\%\@sm {
    height: 40%;
  }
  .height-50\%\@sm {
    height: 50%;
  }
  .height-60\%\@sm {
    height: 60%;
  }
  .height-66\%\@sm {
    height: calc(100% / 1.5);
  }
  .height-70\%\@sm {
    height: 70%;
  }
  .height-75\%\@sm {
    height: 75%;
  }
  .height-80\%\@sm {
    height: 80%;
  }
  .height-90\%\@sm {
    height: 90%;
  }
  .height-100\%\@sm {
    height: 100%;
  }
  .height-100vh\@sm {
    height: 100vh;
  }
  .height-auto\@sm {
    height: auto;
  }
  position .position-relative\@sm {
    position: relative;
  }
  .position-absolute\@sm {
    position: absolute;
  }
  .position-fixed\@sm {
    position: fixed;
  }
  .position-sticky\@sm {
    position: sticky;
  }
  .position-static\@sm {
    position: static;
  }
  .top-0\@sm {
    top: 0;
  }
  .top-50\%\@sm {
    top: 50%;
  }
  .bottom-0\@sm {
    bottom: 0;
  }
  .bottom-50\%\@sm {
    bottom: 50%;
  }
  .left-0\@sm {
    left: 0;
  }
  .left-50\%\@sm {
    left: 50%;
  }
  .right-0\@sm {
    right: 0;
  }
  .right-50\%\@sm {
    right: 50%;
  }
  .inset-0\@sm {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  /*   visibility */
  .hide\@sm {
    display: none !important;
  }
}

@media not all and (min-width: 48rem) {
  .has-margin\@sm {
    margin: 0 !important;
  }
  .has-padding\@sm {
    padding: 0 !important;
  }
  .display\@sm {
    display: none !important;
  }
}

@media (min-width: 64rem) {
  /*  flexbox */
  .flex\@md {
    display: flex;
  }
  .inline-flex\@md {
    display: inline-flex;
  }
  .flex-wrap\@md {
    flex-wrap: wrap;
  }
  .flex-column\@md {
    flex-direction: column;
  }
  .flex-column-reverse\@md {
    flex-direction: column-reverse;
  }
  .flex-row\@md {
    flex-direction: row;
  }
  .flex-row-reverse\@md {
    flex-direction: row-reverse;
  }
  .flex-center\@md {
    justify-content: center;
    align-items: center;
  }
  .flex-grow\@md {
    flex-grow: 1;
  }
  .flex-grow-0\@md {
    flex-grow: 0;
  }
  .flex-shrink\@md {
    flex-shrink: 1;
  }
  .flex-shrink-0\@md {
    flex-shrink: 0;
  }
  .flex-basis-0\@md {
    flex-basis: 0;
  }
  /*  justify-content */
  .justify-start\@md {
    justify-content: flex-start;
  }
  .justify-end\@md {
    justify-content: flex-end;
  }
  .justify-center\@md {
    justify-content: center;
  }
  .justify-between\@md {
    justify-content: space-between;
  }
  /*  align-items */
  .items-center\@md {
    align-items: center;
  }
  .items-start\@md {
    align-items: flex-start;
  }
  .items-end\@md {
    align-items: flex-end;
  }
  .items-baseline\@md {
    align-items: baseline;
  }
  /*  order */
  .order-1\@md {
    order: 1;
  }
  .order-2\@md {
    order: 2;
  }
  .order-3\@md {
    order: 3;
  }
  /*   display */
  .block\@md {
    display: block;
  }
  .inline-block\@md {
    display: inline-block;
  }
  .inline\@md {
    display: inline;
  }
  /*   margin */
  @supports (--css: variables) {
    .margin-xxxxs\@md {
      margin: var(--space-xxxxs);
    }
    .margin-xxxs\@md {
      margin: var(--space-xxxs);
    }
    .margin-xxs\@md {
      margin: var(--space-xxs);
    }
    .margin-xs\@md {
      margin: var(--space-xs);
    }
    .margin-sm\@md {
      margin: var(--space-sm);
    }
    .margin-md\@md {
      margin: var(--space-md);
    }
    .margin-lg\@md {
      margin: var(--space-lg);
    }
    .margin-xl\@md {
      margin: var(--space-xl);
    }
    .margin-xxl\@md {
      margin: var(--space-xxl);
    }
    .margin-xxxl\@md {
      margin: var(--space-xxxl);
    }
    .margin-xxxxl\@md {
      margin: var(--space-xxxxl);
    }
    .margin-auto\@md {
      margin: auto;
    }
    .margin-0\@md {
      margin: 0;
    }
    .margin-top-xxxxs\@md {
      margin-top: var(--space-xxxxs);
    }
    .margin-top-xxxs\@md {
      margin-top: var(--space-xxxs);
    }
    .margin-top-xxs\@md {
      margin-top: var(--space-xxs);
    }
    .margin-top-xs\@md {
      margin-top: var(--space-xs);
    }
    .margin-top-sm\@md {
      margin-top: var(--space-sm);
    }
    .margin-top-md\@md {
      margin-top: var(--space-md);
    }
    .margin-top-lg\@md {
      margin-top: var(--space-lg);
    }
    .margin-top-xl\@md {
      margin-top: var(--space-xl);
    }
    .margin-top-xxl\@md {
      margin-top: var(--space-xxl);
    }
    .margin-top-xxxl\@md {
      margin-top: var(--space-xxxl);
    }
    .margin-top-xxxxl\@md {
      margin-top: var(--space-xxxxl);
    }
    .margin-top-auto\@md {
      margin-top: auto;
    }
    .margin-top-0\@md {
      margin-top: 0;
    }
    .margin-bottom-xxxxs\@md {
      margin-bottom: var(--space-xxxxs);
    }
    .margin-bottom-xxxs\@md {
      margin-bottom: var(--space-xxxs);
    }
    .margin-bottom-xxs\@md {
      margin-bottom: var(--space-xxs);
    }
    .margin-bottom-xs\@md {
      margin-bottom: var(--space-xs);
    }
    .margin-bottom-sm\@md {
      margin-bottom: var(--space-sm);
    }
    .margin-bottom-md\@md {
      margin-bottom: var(--space-md);
    }
    .margin-bottom-lg\@md {
      margin-bottom: var(--space-lg);
    }
    .margin-bottom-xl\@md {
      margin-bottom: var(--space-xl);
    }
    .margin-bottom-xxl\@md {
      margin-bottom: var(--space-xxl);
    }
    .margin-bottom-xxxl\@md {
      margin-bottom: var(--space-xxxl);
    }
    .margin-bottom-xxxxl\@md {
      margin-bottom: var(--space-xxxxl);
    }
    .margin-bottom-auto\@md {
      margin-bottom: auto;
    }
    .margin-bottom-0\@md {
      margin-bottom: 0;
    }
    .margin-right-xxxxs\@md {
      margin-right: var(--space-xxxxs);
    }
    .margin-right-xxxs\@md {
      margin-right: var(--space-xxxs);
    }
    .margin-right-xxs\@md {
      margin-right: var(--space-xxs);
    }
    .margin-right-xs\@md {
      margin-right: var(--space-xs);
    }
    .margin-right-sm\@md {
      margin-right: var(--space-sm);
    }
    .margin-right-md\@md {
      margin-right: var(--space-md);
    }
    .margin-right-lg\@md {
      margin-right: var(--space-lg);
    }
    .margin-right-xl\@md {
      margin-right: var(--space-xl);
    }
    .margin-right-xxl\@md {
      margin-right: var(--space-xxl);
    }
    .margin-right-xxxl\@md {
      margin-right: var(--space-xxxl);
    }
    .margin-right-xxxxl\@md {
      margin-right: var(--space-xxxxl);
    }
    .margin-right-auto\@md {
      margin-right: auto;
    }
    .margin-right-0\@md {
      margin-right: 0;
    }
    .margin-left-xxxxs\@md {
      margin-left: var(--space-xxxxs);
    }
    .margin-left-xxxs\@md {
      margin-left: var(--space-xxxs);
    }
    .margin-left-xxs\@md {
      margin-left: var(--space-xxs);
    }
    .margin-left-xs\@md {
      margin-left: var(--space-xs);
    }
    .margin-left-sm\@md {
      margin-left: var(--space-sm);
    }
    .margin-left-md\@md {
      margin-left: var(--space-md);
    }
    .margin-left-lg\@md {
      margin-left: var(--space-lg);
    }
    .margin-left-xl\@md {
      margin-left: var(--space-xl);
    }
    .margin-left-xxl\@md {
      margin-left: var(--space-xxl);
    }
    .margin-left-xxxl\@md {
      margin-left: var(--space-xxxl);
    }
    .margin-left-xxxxl\@md {
      margin-left: var(--space-xxxxl);
    }
    .margin-left-auto\@md {
      margin-left: auto;
    }
    .margin-left-0\@md {
      margin-left: 0;
    }
    .margin-x-xxxxs\@md {
      margin-left: var(--space-xxxxs);
      margin-right: var(--space-xxxxs);
    }
    .margin-x-xxxs\@md {
      margin-left: var(--space-xxxs);
      margin-right: var(--space-xxxs);
    }
    .margin-x-xxs\@md {
      margin-left: var(--space-xxs);
      margin-right: var(--space-xxs);
    }
    .margin-x-xs\@md {
      margin-left: var(--space-xs);
      margin-right: var(--space-xs);
    }
    .margin-x-sm\@md {
      margin-left: var(--space-sm);
      margin-right: var(--space-sm);
    }
    .margin-x-md\@md {
      margin-left: var(--space-md);
      margin-right: var(--space-md);
    }
    .margin-x-lg\@md {
      margin-left: var(--space-lg);
      margin-right: var(--space-lg);
    }
    .margin-x-xl\@md {
      margin-left: var(--space-xl);
      margin-right: var(--space-xl);
    }
    .margin-x-xxl\@md {
      margin-left: var(--space-xxl);
      margin-right: var(--space-xxl);
    }
    .margin-x-xxxl\@md {
      margin-left: var(--space-xxxl);
      margin-right: var(--space-xxxl);
    }
    .margin-x-xxxxl\@md {
      margin-left: var(--space-xxxxl);
      margin-right: var(--space-xxxxl);
    }
    .margin-x-auto\@md {
      margin-left: auto;
      margin-right: auto;
    }
    .margin-x-0\@md {
      margin-left: 0;
      margin-right: 0;
    }
    .margin-y-xxxxs\@md {
      margin-top: var(--space-xxxxs);
      margin-bottom: var(--space-xxxxs);
    }
    .margin-y-xxxs\@md {
      margin-top: var(--space-xxxs);
      margin-bottom: var(--space-xxxs);
    }
    .margin-y-xxs\@md {
      margin-top: var(--space-xxs);
      margin-bottom: var(--space-xxs);
    }
    .margin-y-xs\@md {
      margin-top: var(--space-xs);
      margin-bottom: var(--space-xs);
    }
    .margin-y-sm\@md {
      margin-top: var(--space-sm);
      margin-bottom: var(--space-sm);
    }
    .margin-y-md\@md {
      margin-top: var(--space-md);
      margin-bottom: var(--space-md);
    }
    .margin-y-lg\@md {
      margin-top: var(--space-lg);
      margin-bottom: var(--space-lg);
    }
    .margin-y-xl\@md {
      margin-top: var(--space-xl);
      margin-bottom: var(--space-xl);
    }
    .margin-y-xxl\@md {
      margin-top: var(--space-xxl);
      margin-bottom: var(--space-xxl);
    }
    .margin-y-xxxl\@md {
      margin-top: var(--space-xxxl);
      margin-bottom: var(--space-xxxl);
    }
    .margin-y-xxxxl\@md {
      margin-top: var(--space-xxxxl);
      margin-bottom: var(--space-xxxxl);
    }
    .margin-y-auto\@md {
      margin-top: auto;
      margin-bottom: auto;
    }
    .margin-y-0\@md {
      margin-top: 0;
      margin-bottom: 0;
    }
  }
  /*   padding */
  @supports (--css: variables) {
    .padding-xxxxs\@md {
      padding: var(--space-xxxxs);
    }
    .padding-xxxs\@md {
      padding: var(--space-xxxs);
    }
    .padding-xxs\@md {
      padding: var(--space-xxs);
    }
    .padding-xs\@md {
      padding: var(--space-xs);
    }
    .padding-sm\@md {
      padding: var(--space-sm);
    }
    .padding-md\@md {
      padding: var(--space-md);
    }
    .padding-lg\@md {
      padding: var(--space-lg);
    }
    .padding-xl\@md {
      padding: var(--space-xl);
    }
    .padding-xxl\@md {
      padding: var(--space-xxl);
    }
    .padding-xxxl\@md {
      padding: var(--space-xxxl);
    }
    .padding-xxxxl\@md {
      padding: var(--space-xxxxl);
    }
    .padding-0\@md {
      padding: 0;
    }
    .padding-component\@md {
      padding: var(--component-padding);
    }
    .padding-top-xxxxs\@md {
      padding-top: var(--space-xxxxs);
    }
    .padding-top-xxxs\@md {
      padding-top: var(--space-xxxs);
    }
    .padding-top-xxs\@md {
      padding-top: var(--space-xxs);
    }
    .padding-top-xs\@md {
      padding-top: var(--space-xs);
    }
    .padding-top-sm\@md {
      padding-top: var(--space-sm);
    }
    .padding-top-md\@md {
      padding-top: var(--space-md);
    }
    .padding-top-lg\@md {
      padding-top: var(--space-lg);
    }
    .padding-top-xl\@md {
      padding-top: var(--space-xl);
    }
    .padding-top-xxl\@md {
      padding-top: var(--space-xxl);
    }
    .padding-top-xxxl\@md {
      padding-top: var(--space-xxxl);
    }
    .padding-top-xxxxl\@md {
      padding-top: var(--space-xxxxl);
    }
    .padding-top-0\@md {
      padding-top: 0;
    }
    .padding-top-component\@md {
      padding-top: var(--component-padding);
    }
    .padding-bottom-xxxxs\@md {
      padding-bottom: var(--space-xxxxs);
    }
    .padding-bottom-xxxs\@md {
      padding-bottom: var(--space-xxxs);
    }
    .padding-bottom-xxs\@md {
      padding-bottom: var(--space-xxs);
    }
    .padding-bottom-xs\@md {
      padding-bottom: var(--space-xs);
    }
    .padding-bottom-sm\@md {
      padding-bottom: var(--space-sm);
    }
    .padding-bottom-md\@md {
      padding-bottom: var(--space-md);
    }
    .padding-bottom-lg\@md {
      padding-bottom: var(--space-lg);
    }
    .padding-bottom-xl\@md {
      padding-bottom: var(--space-xl);
    }
    .padding-bottom-xxl\@md {
      padding-bottom: var(--space-xxl);
    }
    .padding-bottom-xxxl\@md {
      padding-bottom: var(--space-xxxl);
    }
    .padding-bottom-xxxxl\@md {
      padding-bottom: var(--space-xxxxl);
    }
    .padding-bottom-0\@md {
      padding-bottom: 0;
    }
    .padding-bottom-component\@md {
      padding-bottom: var(--component-padding);
    }
    .padding-right-xxxxs\@md {
      padding-right: var(--space-xxxxs);
    }
    .padding-right-xxxs\@md {
      padding-right: var(--space-xxxs);
    }
    .padding-right-xxs\@md {
      padding-right: var(--space-xxs);
    }
    .padding-right-xs\@md {
      padding-right: var(--space-xs);
    }
    .padding-right-sm\@md {
      padding-right: var(--space-sm);
    }
    .padding-right-md\@md {
      padding-right: var(--space-md);
    }
    .padding-right-lg\@md {
      padding-right: var(--space-lg);
    }
    .padding-right-xl\@md {
      padding-right: var(--space-xl);
    }
    .padding-right-xxl\@md {
      padding-right: var(--space-xxl);
    }
    .padding-right-xxxl\@md {
      padding-right: var(--space-xxxl);
    }
    .padding-right-xxxxl\@md {
      padding-right: var(--space-xxxxl);
    }
    .padding-right-0\@md {
      padding-right: 0;
    }
    .padding-right-component\@md {
      padding-right: var(--component-padding);
    }
    .padding-left-xxxxs\@md {
      padding-left: var(--space-xxxxs);
    }
    .padding-left-xxxs\@md {
      padding-left: var(--space-xxxs);
    }
    .padding-left-xxs\@md {
      padding-left: var(--space-xxs);
    }
    .padding-left-xs\@md {
      padding-left: var(--space-xs);
    }
    .padding-left-sm\@md {
      padding-left: var(--space-sm);
    }
    .padding-left-md\@md {
      padding-left: var(--space-md);
    }
    .padding-left-lg\@md {
      padding-left: var(--space-lg);
    }
    .padding-left-xl\@md {
      padding-left: var(--space-xl);
    }
    .padding-left-xxl\@md {
      padding-left: var(--space-xxl);
    }
    .padding-left-xxxl\@md {
      padding-left: var(--space-xxxl);
    }
    .padding-left-xxxxl\@md {
      padding-left: var(--space-xxxxl);
    }
    .padding-left-0\@md {
      padding-left: 0;
    }
    .padding-left-component\@md {
      padding-left: var(--component-padding);
    }
    .padding-x-xxxxs\@md {
      padding-left: var(--space-xxxxs);
      padding-right: var(--space-xxxxs);
    }
    .padding-x-xxxs\@md {
      padding-left: var(--space-xxxs);
      padding-right: var(--space-xxxs);
    }
    .padding-x-xxs\@md {
      padding-left: var(--space-xxs);
      padding-right: var(--space-xxs);
    }
    .padding-x-xs\@md {
      padding-left: var(--space-xs);
      padding-right: var(--space-xs);
    }
    .padding-x-sm\@md {
      padding-left: var(--space-sm);
      padding-right: var(--space-sm);
    }
    .padding-x-md\@md {
      padding-left: var(--space-md);
      padding-right: var(--space-md);
    }
    .padding-x-lg\@md {
      padding-left: var(--space-lg);
      padding-right: var(--space-lg);
    }
    .padding-x-xl\@md {
      padding-left: var(--space-xl);
      padding-right: var(--space-xl);
    }
    .padding-x-xxl\@md {
      padding-left: var(--space-xxl);
      padding-right: var(--space-xxl);
    }
    .padding-x-xxxl\@md {
      padding-left: var(--space-xxxl);
      padding-right: var(--space-xxxl);
    }
    .padding-x-xxxxl\@md {
      padding-left: var(--space-xxxxl);
      padding-right: var(--space-xxxxl);
    }
    .padding-x-0\@md {
      padding-left: 0;
      padding-right: 0;
    }
    .padding-x-component\@md {
      padding-left: var(--component-padding);
      padding-right: var(--component-padding);
    }
    .padding-y-xxxxs\@md {
      padding-top: var(--space-xxxxs);
      padding-bottom: var(--space-xxxxs);
    }
    .padding-y-xxxs\@md {
      padding-top: var(--space-xxxs);
      padding-bottom: var(--space-xxxs);
    }
    .padding-y-xxs\@md {
      padding-top: var(--space-xxs);
      padding-bottom: var(--space-xxs);
    }
    .padding-y-xs\@md {
      padding-top: var(--space-xs);
      padding-bottom: var(--space-xs);
    }
    .padding-y-sm\@md {
      padding-top: var(--space-sm);
      padding-bottom: var(--space-sm);
    }
    .padding-y-md\@md {
      padding-top: var(--space-md);
      padding-bottom: var(--space-md);
    }
    .padding-y-lg\@md {
      padding-top: var(--space-lg);
      padding-bottom: var(--space-lg);
    }
    .padding-y-xl\@md {
      padding-top: var(--space-xl);
      padding-bottom: var(--space-xl);
    }
    .padding-y-xxl\@md {
      padding-top: var(--space-xxl);
      padding-bottom: var(--space-xxl);
    }
    .padding-y-xxxl\@md {
      padding-top: var(--space-xxxl);
      padding-bottom: var(--space-xxxl);
    }
    .padding-y-xxxxl\@md {
      padding-top: var(--space-xxxxl);
      padding-bottom: var(--space-xxxxl);
    }
    .padding-y-0\@md {
      padding-top: 0;
      padding-bottom: 0;
    }
    .padding-y-component\@md {
      padding-top: var(--component-padding);
      padding-bottom: var(--component-padding);
    }
  }
  /*  text-align */
  .text-center\@md {
    text-align: center;
  }
  .text-left\@md {
    text-align: left;
  }
  .text-right\@md {
    text-align: right;
  }
  .text-justify\@md {
    text-align: justify;
  }
  /*  font-size */
  @supports (--css: variables) {
    .text-xs\@md {
      font-size: var(--text-xs, 0.694em);
    }
    .text-sm\@md {
      font-size: var(--text-sm, 0.875em);
    }
    .text-base\@md {
      font-size: var(--text-unit, 1em);
    }
    .text-md\@md {
      font-size: var(--text-md, 1.2em);
    }
    .text-lg\@md {
      font-size: var(--text-lg, 1.44em);
    }
    .text-xl\@md {
      font-size: var(--text-xl, 1.728em);
    }
    .text-xxl\@md {
      font-size: var(--text-xxl, 2.074em);
    }
    .text-xxxl\@md {
      font-size: var(--text-xxxl, 2.488em);
    }
    .text-xxxxl\@md {
      font-size: var(--text-xxxxl, 2.985em);
    }
  }
  /*   width */
  @supports (--css: variables) {
    .width-xxxxs\@md {
      width: var(--size-xxxxs, 0.25rem);
    }
    .width-xxxs\@md {
      width: var(--size-xxxs, 0.5rem);
    }
    .width-xxs\@md {
      width: var(--size-xxs, 0.75rem);
    }
    .width-xs\@md {
      width: var(--size-xs, 1rem);
    }
    .width-sm\@md {
      width: var(--size-sm, 1.5rem);
    }
    .width-md\@md {
      width: var(--size-md, 2rem);
    }
    .width-lg\@md {
      width: var(--size-lg, 3rem);
    }
    .width-xl\@md {
      width: var(--size-xl, 4rem);
    }
    .width-xxl\@md {
      width: var(--size-xxl, 6rem);
    }
    .width-xxxl\@md {
      width: var(--size-xxxl, 8rem);
    }
    .width-xxxxl\@md {
      width: var(--size-xxxxl, 16rem);
    }
  }
  .width-0\@md {
    width: 0;
  }
  .width-10\%\@md {
    width: 10%;
  }
  .width-20\%\@md {
    width: 20%;
  }
  .width-25\%\@md {
    width: 25%;
  }
  .width-30\%\@md {
    width: 30%;
  }
  .width-33\%\@md {
    width: calc(100% / 3);
  }
  .width-40\%\@md {
    width: 40%;
  }
  .width-50\%\@md {
    width: 50%;
  }
  .width-60\%\@md {
    width: 60%;
  }
  .width-66\%\@md {
    width: calc(100% / 1.5);
  }
  .width-70\%\@md {
    width: 70%;
  }
  .width-75\%\@md {
    width: 75%;
  }
  .width-80\%\@md {
    width: 80%;
  }
  .width-90\%\@md {
    width: 90%;
  }
  .width-100\%\@md {
    width: 100%;
  }
  .width-100vw\@md {
    width: 100vw;
  }
  .width-auto\@md {
    width: auto;
  }
  /*   height */
  @supports (--css: variables) {
    .height-xxxxs\@md {
      height: var(--size-xxxxs, 0.25rem);
    }
    .height-xxxs\@md {
      height: var(--size-xxxs, 0.5rem);
    }
    .height-xxs\@md {
      height: var(--size-xxs, 0.75rem);
    }
    .height-xs\@md {
      height: var(--size-xs, 1rem);
    }
    .height-sm\@md {
      height: var(--size-sm, 1.5rem);
    }
    .height-md\@md {
      height: var(--size-md, 2rem);
    }
    .height-lg\@md {
      height: var(--size-lg, 3rem);
    }
    .height-xl\@md {
      height: var(--size-xl, 4rem);
    }
    .height-xxl\@md {
      height: var(--size-xxl, 6rem);
    }
    .height-xxxl\@md {
      height: var(--size-xxxl, 8rem);
    }
    .height-xxxxl\@md {
      height: var(--size-xxxxl, 16rem);
    }
  }
  .height-0\@md {
    height: 0;
  }
  .height-10\%\@md {
    height: 10%;
  }
  .height-20\%\@md {
    height: 20%;
  }
  .height-25\%\@md {
    height: 25%;
  }
  .height-30\%\@md {
    height: 30%;
  }
  .height-33\%\@md {
    height: calc(100% / 3);
  }
  .height-40\%\@md {
    height: 40%;
  }
  .height-50\%\@md {
    height: 50%;
  }
  .height-60\%\@md {
    height: 60%;
  }
  .height-66\%\@md {
    height: calc(100% / 1.5);
  }
  .height-70\%\@md {
    height: 70%;
  }
  .height-75\%\@md {
    height: 75%;
  }
  .height-80\%\@md {
    height: 80%;
  }
  .height-90\%\@md {
    height: 90%;
  }
  .height-100\%\@md {
    height: 100%;
  }
  .height-100vh\@md {
    height: 100vh;
  }
  .height-auto\@md {
    height: auto;
  }
  position .position-relative\@md {
    position: relative;
  }
  .position-absolute\@md {
    position: absolute;
  }
  .position-fixed\@md {
    position: fixed;
  }
  .position-sticky\@md {
    position: sticky;
  }
  .position-static\@md {
    position: static;
  }
  .top-0\@md {
    top: 0;
  }
  .top-50\%\@md {
    top: 50%;
  }
  .bottom-0\@md {
    bottom: 0;
  }
  .bottom-50\%\@md {
    bottom: 50%;
  }
  .left-0\@md {
    left: 0;
  }
  .left-50\%\@md {
    left: 50%;
  }
  .right-0\@md {
    right: 0;
  }
  .right-50\%\@md {
    right: 50%;
  }
  .inset-0\@md {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  /*   visibility */
  .hide\@md {
    display: none !important;
  }
}

@media not all and (min-width: 64rem) {
  .has-margin\@md {
    margin: 0 !important;
  }
  .has-padding\@md {
    padding: 0 !important;
  }
  .display\@md {
    display: none !important;
  }
}

@media (min-width: 71.25rem) {
  /*  flexbox */
  .flex\@lg {
    display: flex;
  }
  .inline-flex\@lg {
    display: inline-flex;
  }
  .flex-wrap\@lg {
    flex-wrap: wrap;
  }
  .flex-column\@lg {
    flex-direction: column;
  }
  .flex-column-reverse\@lg {
    flex-direction: column-reverse;
  }
  .flex-row\@lg {
    flex-direction: row;
  }
  .flex-row-reverse\@lg {
    flex-direction: row-reverse;
  }
  .flex-center\@lg {
    justify-content: center;
    align-items: center;
  }
  .flex-grow\@lg {
    flex-grow: 1;
  }
  .flex-grow-0\@lg {
    flex-grow: 0;
  }
  .flex-shrink\@lg {
    flex-shrink: 1;
  }
  .flex-shrink-0\@lg {
    flex-shrink: 0;
  }
  .flex-basis-0\@lg {
    flex-basis: 0;
  }
  /*  justify-content */
  .justify-start\@lg {
    justify-content: flex-start;
  }
  .justify-end\@lg {
    justify-content: flex-end;
  }
  .justify-center\@lg {
    justify-content: center;
  }
  .justify-between\@lg {
    justify-content: space-between;
  }
  /*  align-items */
  .items-center\@lg {
    align-items: center;
  }
  .items-start\@lg {
    align-items: flex-start;
  }
  .items-end\@lg {
    align-items: flex-end;
  }
  .items-baseline\@lg {
    align-items: baseline;
  }
  /*  order */
  .order-1\@lg {
    order: 1;
  }
  .order-2\@lg {
    order: 2;
  }
  .order-3\@lg {
    order: 3;
  }
  /*   display */
  .block\@lg {
    display: block;
  }
  .inline-block\@lg {
    display: inline-block;
  }
  .inline\@lg {
    display: inline;
  }
  /*   margin */
  @supports (--css: variables) {
    .margin-xxxxs\@lg {
      margin: var(--space-xxxxs);
    }
    .margin-xxxs\@lg {
      margin: var(--space-xxxs);
    }
    .margin-xxs\@lg {
      margin: var(--space-xxs);
    }
    .margin-xs\@lg {
      margin: var(--space-xs);
    }
    .margin-sm\@lg {
      margin: var(--space-sm);
    }
    .margin-md\@lg {
      margin: var(--space-md);
    }
    .margin-lg\@lg {
      margin: var(--space-lg);
    }
    .margin-xl\@lg {
      margin: var(--space-xl);
    }
    .margin-xxl\@lg {
      margin: var(--space-xxl);
    }
    .margin-xxxl\@lg {
      margin: var(--space-xxxl);
    }
    .margin-xxxxl\@lg {
      margin: var(--space-xxxxl);
    }
    .margin-auto\@lg {
      margin: auto;
    }
    .margin-0\@lg {
      margin: 0;
    }
    .margin-top-xxxxs\@lg {
      margin-top: var(--space-xxxxs);
    }
    .margin-top-xxxs\@lg {
      margin-top: var(--space-xxxs);
    }
    .margin-top-xxs\@lg {
      margin-top: var(--space-xxs);
    }
    .margin-top-xs\@lg {
      margin-top: var(--space-xs);
    }
    .margin-top-sm\@lg {
      margin-top: var(--space-sm);
    }
    .margin-top-md\@lg {
      margin-top: var(--space-md);
    }
    .margin-top-lg\@lg {
      margin-top: var(--space-lg);
    }
    .margin-top-xl\@lg {
      margin-top: var(--space-xl);
    }
    .margin-top-xxl\@lg {
      margin-top: var(--space-xxl);
    }
    .margin-top-xxxl\@lg {
      margin-top: var(--space-xxxl);
    }
    .margin-top-xxxxl\@lg {
      margin-top: var(--space-xxxxl);
    }
    .margin-top-auto\@lg {
      margin-top: auto;
    }
    .margin-top-0\@lg {
      margin-top: 0;
    }
    .margin-bottom-xxxxs\@lg {
      margin-bottom: var(--space-xxxxs);
    }
    .margin-bottom-xxxs\@lg {
      margin-bottom: var(--space-xxxs);
    }
    .margin-bottom-xxs\@lg {
      margin-bottom: var(--space-xxs);
    }
    .margin-bottom-xs\@lg {
      margin-bottom: var(--space-xs);
    }
    .margin-bottom-sm\@lg {
      margin-bottom: var(--space-sm);
    }
    .margin-bottom-md\@lg {
      margin-bottom: var(--space-md);
    }
    .margin-bottom-lg\@lg {
      margin-bottom: var(--space-lg);
    }
    .margin-bottom-xl\@lg {
      margin-bottom: var(--space-xl);
    }
    .margin-bottom-xxl\@lg {
      margin-bottom: var(--space-xxl);
    }
    .margin-bottom-xxxl\@lg {
      margin-bottom: var(--space-xxxl);
    }
    .margin-bottom-xxxxl\@lg {
      margin-bottom: var(--space-xxxxl);
    }
    .margin-bottom-auto\@lg {
      margin-bottom: auto;
    }
    .margin-bottom-0\@lg {
      margin-bottom: 0;
    }
    .margin-right-xxxxs\@lg {
      margin-right: var(--space-xxxxs);
    }
    .margin-right-xxxs\@lg {
      margin-right: var(--space-xxxs);
    }
    .margin-right-xxs\@lg {
      margin-right: var(--space-xxs);
    }
    .margin-right-xs\@lg {
      margin-right: var(--space-xs);
    }
    .margin-right-sm\@lg {
      margin-right: var(--space-sm);
    }
    .margin-right-md\@lg {
      margin-right: var(--space-md);
    }
    .margin-right-lg\@lg {
      margin-right: var(--space-lg);
    }
    .margin-right-xl\@lg {
      margin-right: var(--space-xl);
    }
    .margin-right-xxl\@lg {
      margin-right: var(--space-xxl);
    }
    .margin-right-xxxl\@lg {
      margin-right: var(--space-xxxl);
    }
    .margin-right-xxxxl\@lg {
      margin-right: var(--space-xxxxl);
    }
    .margin-right-auto\@lg {
      margin-right: auto;
    }
    .margin-right-0\@lg {
      margin-right: 0;
    }
    .margin-left-xxxxs\@lg {
      margin-left: var(--space-xxxxs);
    }
    .margin-left-xxxs\@lg {
      margin-left: var(--space-xxxs);
    }
    .margin-left-xxs\@lg {
      margin-left: var(--space-xxs);
    }
    .margin-left-xs\@lg {
      margin-left: var(--space-xs);
    }
    .margin-left-sm\@lg {
      margin-left: var(--space-sm);
    }
    .margin-left-md\@lg {
      margin-left: var(--space-md);
    }
    .margin-left-lg\@lg {
      margin-left: var(--space-lg);
    }
    .margin-left-xl\@lg {
      margin-left: var(--space-xl);
    }
    .margin-left-xxl\@lg {
      margin-left: var(--space-xxl);
    }
    .margin-left-xxxl\@lg {
      margin-left: var(--space-xxxl);
    }
    .margin-left-xxxxl\@lg {
      margin-left: var(--space-xxxxl);
    }
    .margin-left-auto\@lg {
      margin-left: auto;
    }
    .margin-left-0\@lg {
      margin-left: 0;
    }
    .margin-x-xxxxs\@lg {
      margin-left: var(--space-xxxxs);
      margin-right: var(--space-xxxxs);
    }
    .margin-x-xxxs\@lg {
      margin-left: var(--space-xxxs);
      margin-right: var(--space-xxxs);
    }
    .margin-x-xxs\@lg {
      margin-left: var(--space-xxs);
      margin-right: var(--space-xxs);
    }
    .margin-x-xs\@lg {
      margin-left: var(--space-xs);
      margin-right: var(--space-xs);
    }
    .margin-x-sm\@lg {
      margin-left: var(--space-sm);
      margin-right: var(--space-sm);
    }
    .margin-x-md\@lg {
      margin-left: var(--space-md);
      margin-right: var(--space-md);
    }
    .margin-x-lg\@lg {
      margin-left: var(--space-lg);
      margin-right: var(--space-lg);
    }
    .margin-x-xl\@lg {
      margin-left: var(--space-xl);
      margin-right: var(--space-xl);
    }
    .margin-x-xxl\@lg {
      margin-left: var(--space-xxl);
      margin-right: var(--space-xxl);
    }
    .margin-x-xxxl\@lg {
      margin-left: var(--space-xxxl);
      margin-right: var(--space-xxxl);
    }
    .margin-x-xxxxl\@lg {
      margin-left: var(--space-xxxxl);
      margin-right: var(--space-xxxxl);
    }
    .margin-x-auto\@lg {
      margin-left: auto;
      margin-right: auto;
    }
    .margin-x-0\@lg {
      margin-left: 0;
      margin-right: 0;
    }
    .margin-y-xxxxs\@lg {
      margin-top: var(--space-xxxxs);
      margin-bottom: var(--space-xxxxs);
    }
    .margin-y-xxxs\@lg {
      margin-top: var(--space-xxxs);
      margin-bottom: var(--space-xxxs);
    }
    .margin-y-xxs\@lg {
      margin-top: var(--space-xxs);
      margin-bottom: var(--space-xxs);
    }
    .margin-y-xs\@lg {
      margin-top: var(--space-xs);
      margin-bottom: var(--space-xs);
    }
    .margin-y-sm\@lg {
      margin-top: var(--space-sm);
      margin-bottom: var(--space-sm);
    }
    .margin-y-md\@lg {
      margin-top: var(--space-md);
      margin-bottom: var(--space-md);
    }
    .margin-y-lg\@lg {
      margin-top: var(--space-lg);
      margin-bottom: var(--space-lg);
    }
    .margin-y-xl\@lg {
      margin-top: var(--space-xl);
      margin-bottom: var(--space-xl);
    }
    .margin-y-xxl\@lg {
      margin-top: var(--space-xxl);
      margin-bottom: var(--space-xxl);
    }
    .margin-y-xxxl\@lg {
      margin-top: var(--space-xxxl);
      margin-bottom: var(--space-xxxl);
    }
    .margin-y-xxxxl\@lg {
      margin-top: var(--space-xxxxl);
      margin-bottom: var(--space-xxxxl);
    }
    .margin-y-auto\@lg {
      margin-top: auto;
      margin-bottom: auto;
    }
    .margin-y-0\@lg {
      margin-top: 0;
      margin-bottom: 0;
    }
  }
  /*   padding */
  @supports (--css: variables) {
    .padding-xxxxs\@lg {
      padding: var(--space-xxxxs);
    }
    .padding-xxxs\@lg {
      padding: var(--space-xxxs);
    }
    .padding-xxs\@lg {
      padding: var(--space-xxs);
    }
    .padding-xs\@lg {
      padding: var(--space-xs);
    }
    .padding-sm\@lg {
      padding: var(--space-sm);
    }
    .padding-md\@lg {
      padding: var(--space-md);
    }
    .padding-lg\@lg {
      padding: var(--space-lg);
    }
    .padding-xl\@lg {
      padding: var(--space-xl);
    }
    .padding-xxl\@lg {
      padding: var(--space-xxl);
    }
    .padding-xxxl\@lg {
      padding: var(--space-xxxl);
    }
    .padding-xxxxl\@lg {
      padding: var(--space-xxxxl);
    }
    .padding-0\@lg {
      padding: 0;
    }
    .padding-component\@lg {
      padding: var(--component-padding);
    }
    .padding-top-xxxxs\@lg {
      padding-top: var(--space-xxxxs);
    }
    .padding-top-xxxs\@lg {
      padding-top: var(--space-xxxs);
    }
    .padding-top-xxs\@lg {
      padding-top: var(--space-xxs);
    }
    .padding-top-xs\@lg {
      padding-top: var(--space-xs);
    }
    .padding-top-sm\@lg {
      padding-top: var(--space-sm);
    }
    .padding-top-md\@lg {
      padding-top: var(--space-md);
    }
    .padding-top-lg\@lg {
      padding-top: var(--space-lg);
    }
    .padding-top-xl\@lg {
      padding-top: var(--space-xl);
    }
    .padding-top-xxl\@lg {
      padding-top: var(--space-xxl);
    }
    .padding-top-xxxl\@lg {
      padding-top: var(--space-xxxl);
    }
    .padding-top-xxxxl\@lg {
      padding-top: var(--space-xxxxl);
    }
    .padding-top-0\@lg {
      padding-top: 0;
    }
    .padding-top-component\@lg {
      padding-top: var(--component-padding);
    }
    .padding-bottom-xxxxs\@lg {
      padding-bottom: var(--space-xxxxs);
    }
    .padding-bottom-xxxs\@lg {
      padding-bottom: var(--space-xxxs);
    }
    .padding-bottom-xxs\@lg {
      padding-bottom: var(--space-xxs);
    }
    .padding-bottom-xs\@lg {
      padding-bottom: var(--space-xs);
    }
    .padding-bottom-sm\@lg {
      padding-bottom: var(--space-sm);
    }
    .padding-bottom-md\@lg {
      padding-bottom: var(--space-md);
    }
    .padding-bottom-lg\@lg {
      padding-bottom: var(--space-lg);
    }
    .padding-bottom-xl\@lg {
      padding-bottom: var(--space-xl);
    }
    .padding-bottom-xxl\@lg {
      padding-bottom: var(--space-xxl);
    }
    .padding-bottom-xxxl\@lg {
      padding-bottom: var(--space-xxxl);
    }
    .padding-bottom-xxxxl\@lg {
      padding-bottom: var(--space-xxxxl);
    }
    .padding-bottom-0\@lg {
      padding-bottom: 0;
    }
    .padding-bottom-component\@lg {
      padding-bottom: var(--component-padding);
    }
    .padding-right-xxxxs\@lg {
      padding-right: var(--space-xxxxs);
    }
    .padding-right-xxxs\@lg {
      padding-right: var(--space-xxxs);
    }
    .padding-right-xxs\@lg {
      padding-right: var(--space-xxs);
    }
    .padding-right-xs\@lg {
      padding-right: var(--space-xs);
    }
    .padding-right-sm\@lg {
      padding-right: var(--space-sm);
    }
    .padding-right-md\@lg {
      padding-right: var(--space-md);
    }
    .padding-right-lg\@lg {
      padding-right: var(--space-lg);
    }
    .padding-right-xl\@lg {
      padding-right: var(--space-xl);
    }
    .padding-right-xxl\@lg {
      padding-right: var(--space-xxl);
    }
    .padding-right-xxxl\@lg {
      padding-right: var(--space-xxxl);
    }
    .padding-right-xxxxl\@lg {
      padding-right: var(--space-xxxxl);
    }
    .padding-right-0\@lg {
      padding-right: 0;
    }
    .padding-right-component\@lg {
      padding-right: var(--component-padding);
    }
    .padding-left-xxxxs\@lg {
      padding-left: var(--space-xxxxs);
    }
    .padding-left-xxxs\@lg {
      padding-left: var(--space-xxxs);
    }
    .padding-left-xxs\@lg {
      padding-left: var(--space-xxs);
    }
    .padding-left-xs\@lg {
      padding-left: var(--space-xs);
    }
    .padding-left-sm\@lg {
      padding-left: var(--space-sm);
    }
    .padding-left-md\@lg {
      padding-left: var(--space-md);
    }
    .padding-left-lg\@lg {
      padding-left: var(--space-lg);
    }
    .padding-left-xl\@lg {
      padding-left: var(--space-xl);
    }
    .padding-left-xxl\@lg {
      padding-left: var(--space-xxl);
    }
    .padding-left-xxxl\@lg {
      padding-left: var(--space-xxxl);
    }
    .padding-left-xxxxl\@lg {
      padding-left: var(--space-xxxxl);
    }
    .padding-left-0\@lg {
      padding-left: 0;
    }
    .padding-left-component\@lg {
      padding-left: var(--component-padding);
    }
    .padding-x-xxxxs\@lg {
      padding-left: var(--space-xxxxs);
      padding-right: var(--space-xxxxs);
    }
    .padding-x-xxxs\@lg {
      padding-left: var(--space-xxxs);
      padding-right: var(--space-xxxs);
    }
    .padding-x-xxs\@lg {
      padding-left: var(--space-xxs);
      padding-right: var(--space-xxs);
    }
    .padding-x-xs\@lg {
      padding-left: var(--space-xs);
      padding-right: var(--space-xs);
    }
    .padding-x-sm\@lg {
      padding-left: var(--space-sm);
      padding-right: var(--space-sm);
    }
    .padding-x-md\@lg {
      padding-left: var(--space-md);
      padding-right: var(--space-md);
    }
    .padding-x-lg\@lg {
      padding-left: var(--space-lg);
      padding-right: var(--space-lg);
    }
    .padding-x-xl\@lg {
      padding-left: var(--space-xl);
      padding-right: var(--space-xl);
    }
    .padding-x-xxl\@lg {
      padding-left: var(--space-xxl);
      padding-right: var(--space-xxl);
    }
    .padding-x-xxxl\@lg {
      padding-left: var(--space-xxxl);
      padding-right: var(--space-xxxl);
    }
    .padding-x-xxxxl\@lg {
      padding-left: var(--space-xxxxl);
      padding-right: var(--space-xxxxl);
    }
    .padding-x-0\@lg {
      padding-left: 0;
      padding-right: 0;
    }
    .padding-x-component\@lg {
      padding-left: var(--component-padding);
      padding-right: var(--component-padding);
    }
    .padding-y-xxxxs\@lg {
      padding-top: var(--space-xxxxs);
      padding-bottom: var(--space-xxxxs);
    }
    .padding-y-xxxs\@lg {
      padding-top: var(--space-xxxs);
      padding-bottom: var(--space-xxxs);
    }
    .padding-y-xxs\@lg {
      padding-top: var(--space-xxs);
      padding-bottom: var(--space-xxs);
    }
    .padding-y-xs\@lg {
      padding-top: var(--space-xs);
      padding-bottom: var(--space-xs);
    }
    .padding-y-sm\@lg {
      padding-top: var(--space-sm);
      padding-bottom: var(--space-sm);
    }
    .padding-y-md\@lg {
      padding-top: var(--space-md);
      padding-bottom: var(--space-md);
    }
    .padding-y-lg\@lg {
      padding-top: var(--space-lg);
      padding-bottom: var(--space-lg);
    }
    .padding-y-xl\@lg {
      padding-top: var(--space-xl);
      padding-bottom: var(--space-xl);
    }
    .padding-y-xxl\@lg {
      padding-top: var(--space-xxl);
      padding-bottom: var(--space-xxl);
    }
    .padding-y-xxxl\@lg {
      padding-top: var(--space-xxxl);
      padding-bottom: var(--space-xxxl);
    }
    .padding-y-xxxxl\@lg {
      padding-top: var(--space-xxxxl);
      padding-bottom: var(--space-xxxxl);
    }
    .padding-y-0\@lg {
      padding-top: 0;
      padding-bottom: 0;
    }
    .padding-y-component\@lg {
      padding-top: var(--component-padding);
      padding-bottom: var(--component-padding);
    }
  }
  /*  text-align */
  .text-center\@lg {
    text-align: center;
  }
  .text-left\@lg {
    text-align: left;
  }
  .text-right\@lg {
    text-align: right;
  }
  .text-justify\@lg {
    text-align: justify;
  }
  /*  font-size */
  @supports (--css: variables) {
    .text-xs\@lg {
      font-size: var(--text-xs, 0.694em);
    }
    .text-sm\@lg {
      font-size: var(--text-sm, 0.875em);
    }
    .text-base\@lg {
      font-size: var(--text-unit, 1em);
    }
    .text-md\@lg {
      font-size: var(--text-md, 1.2em);
    }
    .text-lg\@lg {
      font-size: var(--text-lg, 1.44em);
    }
    .text-xl\@lg {
      font-size: var(--text-xl, 1.728em);
    }
    .text-xxl\@lg {
      font-size: var(--text-xxl, 2.074em);
    }
    .text-xxxl\@lg {
      font-size: var(--text-xxxl, 2.488em);
    }
    .text-xxxxl\@lg {
      font-size: var(--text-xxxxl, 2.985em);
    }
  }
  /*   width */
  @supports (--css: variables) {
    .width-xxxxs\@lg {
      width: var(--size-xxxxs, 0.25rem);
    }
    .width-xxxs\@lg {
      width: var(--size-xxxs, 0.5rem);
    }
    .width-xxs\@lg {
      width: var(--size-xxs, 0.75rem);
    }
    .width-xs\@lg {
      width: var(--size-xs, 1rem);
    }
    .width-sm\@lg {
      width: var(--size-sm, 1.5rem);
    }
    .width-md\@lg {
      width: var(--size-md, 2rem);
    }
    .width-lg\@lg {
      width: var(--size-lg, 3rem);
    }
    .width-xl\@lg {
      width: var(--size-xl, 4rem);
    }
    .width-xxl\@lg {
      width: var(--size-xxl, 6rem);
    }
    .width-xxxl\@lg {
      width: var(--size-xxxl, 8rem);
    }
    .width-xxxxl\@lg {
      width: var(--size-xxxxl, 16rem);
    }
  }
  .width-0\@lg {
    width: 0;
  }
  .width-10\%\@lg {
    width: 10%;
  }
  .width-20\%\@lg {
    width: 20%;
  }
  .width-25\%\@lg {
    width: 25%;
  }
  .width-30\%\@lg {
    width: 30%;
  }
  .width-33\%\@lg {
    width: calc(100% / 3);
  }
  .width-40\%\@lg {
    width: 40%;
  }
  .width-50\%\@lg {
    width: 50%;
  }
  .width-60\%\@lg {
    width: 60%;
  }
  .width-66\%\@lg {
    width: calc(100% / 1.5);
  }
  .width-70\%\@lg {
    width: 70%;
  }
  .width-75\%\@lg {
    width: 75%;
  }
  .width-80\%\@lg {
    width: 80%;
  }
  .width-90\%\@lg {
    width: 90%;
  }
  .width-100\%\@lg {
    width: 100%;
  }
  .width-100vw\@lg {
    width: 100vw;
  }
  .width-auto\@lg {
    width: auto;
  }
  /*   height */
  @supports (--css: variables) {
    .height-xxxxs\@lg {
      height: var(--size-xxxxs, 0.25rem);
    }
    .height-xxxs\@lg {
      height: var(--size-xxxs, 0.5rem);
    }
    .height-xxs\@lg {
      height: var(--size-xxs, 0.75rem);
    }
    .height-xs\@lg {
      height: var(--size-xs, 1rem);
    }
    .height-sm\@lg {
      height: var(--size-sm, 1.5rem);
    }
    .height-md\@lg {
      height: var(--size-md, 2rem);
    }
    .height-lg\@lg {
      height: var(--size-lg, 3rem);
    }
    .height-xl\@lg {
      height: var(--size-xl, 4rem);
    }
    .height-xxl\@lg {
      height: var(--size-xxl, 6rem);
    }
    .height-xxxl\@lg {
      height: var(--size-xxxl, 8rem);
    }
    .height-xxxxl\@lg {
      height: var(--size-xxxxl, 16rem);
    }
  }
  .height-0\@lg {
    height: 0;
  }
  .height-10\%\@lg {
    height: 10%;
  }
  .height-20\%\@lg {
    height: 20%;
  }
  .height-25\%\@lg {
    height: 25%;
  }
  .height-30\%\@lg {
    height: 30%;
  }
  .height-33\%\@lg {
    height: calc(100% / 3);
  }
  .height-40\%\@lg {
    height: 40%;
  }
  .height-50\%\@lg {
    height: 50%;
  }
  .height-60\%\@lg {
    height: 60%;
  }
  .height-66\%\@lg {
    height: calc(100% / 1.5);
  }
  .height-70\%\@lg {
    height: 70%;
  }
  .height-75\%\@lg {
    height: 75%;
  }
  .height-80\%\@lg {
    height: 80%;
  }
  .height-90\%\@lg {
    height: 90%;
  }
  .height-100\%\@lg {
    height: 100%;
  }
  .height-100vh\@lg {
    height: 100vh;
  }
  .height-auto\@lg {
    height: auto;
  }
  position .position-relative\@lg {
    position: relative;
  }
  .position-absolute\@lg {
    position: absolute;
  }
  .position-fixed\@lg {
    position: fixed;
  }
  .position-sticky\@lg {
    position: sticky;
  }
  .position-static\@lg {
    position: static;
  }
  .top-0\@lg {
    top: 0;
  }
  .top-50\%\@lg {
    top: 50%;
  }
  .bottom-0\@lg {
    bottom: 0;
  }
  .bottom-50\%\@lg {
    bottom: 50%;
  }
  .left-0\@lg {
    left: 0;
  }
  .left-50\%\@lg {
    left: 50%;
  }
  .right-0\@lg {
    right: 0;
  }
  .right-50\%\@lg {
    right: 50%;
  }
  .inset-0\@lg {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  /*   visibility */
  .hide\@lg {
    display: none !important;
  }
}

@media not all and (min-width: 71.25rem) {
  .has-margin\@lg {
    margin: 0 !important;
  }
  .has-padding\@lg {
    padding: 0 !important;
  }
  .display\@lg {
    display: none !important;
  }
}

@media (min-width: 90rem) {
  /*  flexbox */
  .flex\@xl {
    display: flex;
  }
  .inline-flex\@xl {
    display: inline-flex;
  }
  .flex-wrap\@xl {
    flex-wrap: wrap;
  }
  .flex-column\@xl {
    flex-direction: column;
  }
  .flex-column-reverse\@xl {
    flex-direction: column-reverse;
  }
  .flex-row\@xl {
    flex-direction: row;
  }
  .flex-row-reverse\@xl {
    flex-direction: row-reverse;
  }
  .flex-center\@xl {
    justify-content: center;
    align-items: center;
  }
  .flex-grow\@xl {
    flex-grow: 1;
  }
  .flex-grow-0\@xl {
    flex-grow: 0;
  }
  .flex-shrink\@xl {
    flex-shrink: 1;
  }
  .flex-shrink-0\@xl {
    flex-shrink: 0;
  }
  .flex-basis-0\@xl {
    flex-basis: 0;
  }
  /*  justify-content */
  .justify-start\@xl {
    justify-content: flex-start;
  }
  .justify-end\@xl {
    justify-content: flex-end;
  }
  .justify-center\@xl {
    justify-content: center;
  }
  .justify-between\@xl {
    justify-content: space-between;
  }
  /*  align-items */
  .items-center\@xl {
    align-items: center;
  }
  .items-start\@xl {
    align-items: flex-start;
  }
  .items-end\@xl {
    align-items: flex-end;
  }
  .items-baseline\@xl {
    align-items: baseline;
  }
  /*  order */
  .order-1\@xl {
    order: 1;
  }
  .order-2\@xl {
    order: 2;
  }
  .order-3\@xl {
    order: 3;
  }
  /*   display */
  .block\@xl {
    display: block;
  }
  .inline-block\@xl {
    display: inline-block;
  }
  .inline\@xl {
    display: inline;
  }
  /*   margin */
  @supports (--css: variables) {
    .margin-xxxxs\@xl {
      margin: var(--space-xxxxs);
    }
    .margin-xxxs\@xl {
      margin: var(--space-xxxs);
    }
    .margin-xxs\@xl {
      margin: var(--space-xxs);
    }
    .margin-xs\@xl {
      margin: var(--space-xs);
    }
    .margin-sm\@xl {
      margin: var(--space-sm);
    }
    .margin-md\@xl {
      margin: var(--space-md);
    }
    .margin-lg\@xl {
      margin: var(--space-lg);
    }
    .margin-xl\@xl {
      margin: var(--space-xl);
    }
    .margin-xxl\@xl {
      margin: var(--space-xxl);
    }
    .margin-xxxl\@xl {
      margin: var(--space-xxxl);
    }
    .margin-xxxxl\@xl {
      margin: var(--space-xxxxl);
    }
    .margin-auto\@xl {
      margin: auto;
    }
    .margin-0\@xl {
      margin: 0;
    }
    .margin-top-xxxxs\@xl {
      margin-top: var(--space-xxxxs);
    }
    .margin-top-xxxs\@xl {
      margin-top: var(--space-xxxs);
    }
    .margin-top-xxs\@xl {
      margin-top: var(--space-xxs);
    }
    .margin-top-xs\@xl {
      margin-top: var(--space-xs);
    }
    .margin-top-sm\@xl {
      margin-top: var(--space-sm);
    }
    .margin-top-md\@xl {
      margin-top: var(--space-md);
    }
    .margin-top-lg\@xl {
      margin-top: var(--space-lg);
    }
    .margin-top-xl\@xl {
      margin-top: var(--space-xl);
    }
    .margin-top-xxl\@xl {
      margin-top: var(--space-xxl);
    }
    .margin-top-xxxl\@xl {
      margin-top: var(--space-xxxl);
    }
    .margin-top-xxxxl\@xl {
      margin-top: var(--space-xxxxl);
    }
    .margin-top-auto\@xl {
      margin-top: auto;
    }
    .margin-top-0\@xl {
      margin-top: 0;
    }
    .margin-bottom-xxxxs\@xl {
      margin-bottom: var(--space-xxxxs);
    }
    .margin-bottom-xxxs\@xl {
      margin-bottom: var(--space-xxxs);
    }
    .margin-bottom-xxs\@xl {
      margin-bottom: var(--space-xxs);
    }
    .margin-bottom-xs\@xl {
      margin-bottom: var(--space-xs);
    }
    .margin-bottom-sm\@xl {
      margin-bottom: var(--space-sm);
    }
    .margin-bottom-md\@xl {
      margin-bottom: var(--space-md);
    }
    .margin-bottom-lg\@xl {
      margin-bottom: var(--space-lg);
    }
    .margin-bottom-xl\@xl {
      margin-bottom: var(--space-xl);
    }
    .margin-bottom-xxl\@xl {
      margin-bottom: var(--space-xxl);
    }
    .margin-bottom-xxxl\@xl {
      margin-bottom: var(--space-xxxl);
    }
    .margin-bottom-xxxxl\@xl {
      margin-bottom: var(--space-xxxxl);
    }
    .margin-bottom-auto\@xl {
      margin-bottom: auto;
    }
    .margin-bottom-0\@xl {
      margin-bottom: 0;
    }
    .margin-right-xxxxs\@xl {
      margin-right: var(--space-xxxxs);
    }
    .margin-right-xxxs\@xl {
      margin-right: var(--space-xxxs);
    }
    .margin-right-xxs\@xl {
      margin-right: var(--space-xxs);
    }
    .margin-right-xs\@xl {
      margin-right: var(--space-xs);
    }
    .margin-right-sm\@xl {
      margin-right: var(--space-sm);
    }
    .margin-right-md\@xl {
      margin-right: var(--space-md);
    }
    .margin-right-lg\@xl {
      margin-right: var(--space-lg);
    }
    .margin-right-xl\@xl {
      margin-right: var(--space-xl);
    }
    .margin-right-xxl\@xl {
      margin-right: var(--space-xxl);
    }
    .margin-right-xxxl\@xl {
      margin-right: var(--space-xxxl);
    }
    .margin-right-xxxxl\@xl {
      margin-right: var(--space-xxxxl);
    }
    .margin-right-auto\@xl {
      margin-right: auto;
    }
    .margin-right-0\@xl {
      margin-right: 0;
    }
    .margin-left-xxxxs\@xl {
      margin-left: var(--space-xxxxs);
    }
    .margin-left-xxxs\@xl {
      margin-left: var(--space-xxxs);
    }
    .margin-left-xxs\@xl {
      margin-left: var(--space-xxs);
    }
    .margin-left-xs\@xl {
      margin-left: var(--space-xs);
    }
    .margin-left-sm\@xl {
      margin-left: var(--space-sm);
    }
    .margin-left-md\@xl {
      margin-left: var(--space-md);
    }
    .margin-left-lg\@xl {
      margin-left: var(--space-lg);
    }
    .margin-left-xl\@xl {
      margin-left: var(--space-xl);
    }
    .margin-left-xxl\@xl {
      margin-left: var(--space-xxl);
    }
    .margin-left-xxxl\@xl {
      margin-left: var(--space-xxxl);
    }
    .margin-left-xxxxl\@xl {
      margin-left: var(--space-xxxxl);
    }
    .margin-left-auto\@xl {
      margin-left: auto;
    }
    .margin-left-0\@xl {
      margin-left: 0;
    }
    .margin-x-xxxxs\@xl {
      margin-left: var(--space-xxxxs);
      margin-right: var(--space-xxxxs);
    }
    .margin-x-xxxs\@xl {
      margin-left: var(--space-xxxs);
      margin-right: var(--space-xxxs);
    }
    .margin-x-xxs\@xl {
      margin-left: var(--space-xxs);
      margin-right: var(--space-xxs);
    }
    .margin-x-xs\@xl {
      margin-left: var(--space-xs);
      margin-right: var(--space-xs);
    }
    .margin-x-sm\@xl {
      margin-left: var(--space-sm);
      margin-right: var(--space-sm);
    }
    .margin-x-md\@xl {
      margin-left: var(--space-md);
      margin-right: var(--space-md);
    }
    .margin-x-lg\@xl {
      margin-left: var(--space-lg);
      margin-right: var(--space-lg);
    }
    .margin-x-xl\@xl {
      margin-left: var(--space-xl);
      margin-right: var(--space-xl);
    }
    .margin-x-xxl\@xl {
      margin-left: var(--space-xxl);
      margin-right: var(--space-xxl);
    }
    .margin-x-xxxl\@xl {
      margin-left: var(--space-xxxl);
      margin-right: var(--space-xxxl);
    }
    .margin-x-xxxxl\@xl {
      margin-left: var(--space-xxxxl);
      margin-right: var(--space-xxxxl);
    }
    .margin-x-auto\@xl {
      margin-left: auto;
      margin-right: auto;
    }
    .margin-x-0\@xl {
      margin-left: 0;
      margin-right: 0;
    }
    .margin-y-xxxxs\@xl {
      margin-top: var(--space-xxxxs);
      margin-bottom: var(--space-xxxxs);
    }
    .margin-y-xxxs\@xl {
      margin-top: var(--space-xxxs);
      margin-bottom: var(--space-xxxs);
    }
    .margin-y-xxs\@xl {
      margin-top: var(--space-xxs);
      margin-bottom: var(--space-xxs);
    }
    .margin-y-xs\@xl {
      margin-top: var(--space-xs);
      margin-bottom: var(--space-xs);
    }
    .margin-y-sm\@xl {
      margin-top: var(--space-sm);
      margin-bottom: var(--space-sm);
    }
    .margin-y-md\@xl {
      margin-top: var(--space-md);
      margin-bottom: var(--space-md);
    }
    .margin-y-lg\@xl {
      margin-top: var(--space-lg);
      margin-bottom: var(--space-lg);
    }
    .margin-y-xl\@xl {
      margin-top: var(--space-xl);
      margin-bottom: var(--space-xl);
    }
    .margin-y-xxl\@xl {
      margin-top: var(--space-xxl);
      margin-bottom: var(--space-xxl);
    }
    .margin-y-xxxl\@xl {
      margin-top: var(--space-xxxl);
      margin-bottom: var(--space-xxxl);
    }
    .margin-y-xxxxl\@xl {
      margin-top: var(--space-xxxxl);
      margin-bottom: var(--space-xxxxl);
    }
    .margin-y-auto\@xl {
      margin-top: auto;
      margin-bottom: auto;
    }
    .margin-y-0\@xl {
      margin-top: 0;
      margin-bottom: 0;
    }
  }
  /*   padding */
  @supports (--css: variables) {
    .padding-xxxxs\@xl {
      padding: var(--space-xxxxs);
    }
    .padding-xxxs\@xl {
      padding: var(--space-xxxs);
    }
    .padding-xxs\@xl {
      padding: var(--space-xxs);
    }
    .padding-xs\@xl {
      padding: var(--space-xs);
    }
    .padding-sm\@xl {
      padding: var(--space-sm);
    }
    .padding-md\@xl {
      padding: var(--space-md);
    }
    .padding-lg\@xl {
      padding: var(--space-lg);
    }
    .padding-xl\@xl {
      padding: var(--space-xl);
    }
    .padding-xxl\@xl {
      padding: var(--space-xxl);
    }
    .padding-xxxl\@xl {
      padding: var(--space-xxxl);
    }
    .padding-xxxxl\@xl {
      padding: var(--space-xxxxl);
    }
    .padding-0\@xl {
      padding: 0;
    }
    .padding-component\@xl {
      padding: var(--component-padding);
    }
    .padding-top-xxxxs\@xl {
      padding-top: var(--space-xxxxs);
    }
    .padding-top-xxxs\@xl {
      padding-top: var(--space-xxxs);
    }
    .padding-top-xxs\@xl {
      padding-top: var(--space-xxs);
    }
    .padding-top-xs\@xl {
      padding-top: var(--space-xs);
    }
    .padding-top-sm\@xl {
      padding-top: var(--space-sm);
    }
    .padding-top-md\@xl {
      padding-top: var(--space-md);
    }
    .padding-top-lg\@xl {
      padding-top: var(--space-lg);
    }
    .padding-top-xl\@xl {
      padding-top: var(--space-xl);
    }
    .padding-top-xxl\@xl {
      padding-top: var(--space-xxl);
    }
    .padding-top-xxxl\@xl {
      padding-top: var(--space-xxxl);
    }
    .padding-top-xxxxl\@xl {
      padding-top: var(--space-xxxxl);
    }
    .padding-top-0\@xl {
      padding-top: 0;
    }
    .padding-top-component\@xl {
      padding-top: var(--component-padding);
    }
    .padding-bottom-xxxxs\@xl {
      padding-bottom: var(--space-xxxxs);
    }
    .padding-bottom-xxxs\@xl {
      padding-bottom: var(--space-xxxs);
    }
    .padding-bottom-xxs\@xl {
      padding-bottom: var(--space-xxs);
    }
    .padding-bottom-xs\@xl {
      padding-bottom: var(--space-xs);
    }
    .padding-bottom-sm\@xl {
      padding-bottom: var(--space-sm);
    }
    .padding-bottom-md\@xl {
      padding-bottom: var(--space-md);
    }
    .padding-bottom-lg\@xl {
      padding-bottom: var(--space-lg);
    }
    .padding-bottom-xl\@xl {
      padding-bottom: var(--space-xl);
    }
    .padding-bottom-xxl\@xl {
      padding-bottom: var(--space-xxl);
    }
    .padding-bottom-xxxl\@xl {
      padding-bottom: var(--space-xxxl);
    }
    .padding-bottom-xxxxl\@xl {
      padding-bottom: var(--space-xxxxl);
    }
    .padding-bottom-0\@xl {
      padding-bottom: 0;
    }
    .padding-bottom-component\@xl {
      padding-bottom: var(--component-padding);
    }
    .padding-right-xxxxs\@xl {
      padding-right: var(--space-xxxxs);
    }
    .padding-right-xxxs\@xl {
      padding-right: var(--space-xxxs);
    }
    .padding-right-xxs\@xl {
      padding-right: var(--space-xxs);
    }
    .padding-right-xs\@xl {
      padding-right: var(--space-xs);
    }
    .padding-right-sm\@xl {
      padding-right: var(--space-sm);
    }
    .padding-right-md\@xl {
      padding-right: var(--space-md);
    }
    .padding-right-lg\@xl {
      padding-right: var(--space-lg);
    }
    .padding-right-xl\@xl {
      padding-right: var(--space-xl);
    }
    .padding-right-xxl\@xl {
      padding-right: var(--space-xxl);
    }
    .padding-right-xxxl\@xl {
      padding-right: var(--space-xxxl);
    }
    .padding-right-xxxxl\@xl {
      padding-right: var(--space-xxxxl);
    }
    .padding-right-0\@xl {
      padding-right: 0;
    }
    .padding-right-component\@xl {
      padding-right: var(--component-padding);
    }
    .padding-left-xxxxs\@xl {
      padding-left: var(--space-xxxxs);
    }
    .padding-left-xxxs\@xl {
      padding-left: var(--space-xxxs);
    }
    .padding-left-xxs\@xl {
      padding-left: var(--space-xxs);
    }
    .padding-left-xs\@xl {
      padding-left: var(--space-xs);
    }
    .padding-left-sm\@xl {
      padding-left: var(--space-sm);
    }
    .padding-left-md\@xl {
      padding-left: var(--space-md);
    }
    .padding-left-lg\@xl {
      padding-left: var(--space-lg);
    }
    .padding-left-xl\@xl {
      padding-left: var(--space-xl);
    }
    .padding-left-xxl\@xl {
      padding-left: var(--space-xxl);
    }
    .padding-left-xxxl\@xl {
      padding-left: var(--space-xxxl);
    }
    .padding-left-xxxxl\@xl {
      padding-left: var(--space-xxxxl);
    }
    .padding-left-0\@xl {
      padding-left: 0;
    }
    .padding-left-component\@xl {
      padding-left: var(--component-padding);
    }
    .padding-x-xxxxs\@xl {
      padding-left: var(--space-xxxxs);
      padding-right: var(--space-xxxxs);
    }
    .padding-x-xxxs\@xl {
      padding-left: var(--space-xxxs);
      padding-right: var(--space-xxxs);
    }
    .padding-x-xxs\@xl {
      padding-left: var(--space-xxs);
      padding-right: var(--space-xxs);
    }
    .padding-x-xs\@xl {
      padding-left: var(--space-xs);
      padding-right: var(--space-xs);
    }
    .padding-x-sm\@xl {
      padding-left: var(--space-sm);
      padding-right: var(--space-sm);
    }
    .padding-x-md\@xl {
      padding-left: var(--space-md);
      padding-right: var(--space-md);
    }
    .padding-x-lg\@xl {
      padding-left: var(--space-lg);
      padding-right: var(--space-lg);
    }
    .padding-x-xl\@xl {
      padding-left: var(--space-xl);
      padding-right: var(--space-xl);
    }
    .padding-x-xxl\@xl {
      padding-left: var(--space-xxl);
      padding-right: var(--space-xxl);
    }
    .padding-x-xxxl\@xl {
      padding-left: var(--space-xxxl);
      padding-right: var(--space-xxxl);
    }
    .padding-x-xxxxl\@xl {
      padding-left: var(--space-xxxxl);
      padding-right: var(--space-xxxxl);
    }
    .padding-x-0\@xl {
      padding-left: 0;
      padding-right: 0;
    }
    .padding-x-component\@xl {
      padding-left: var(--component-padding);
      padding-right: var(--component-padding);
    }
    .padding-y-xxxxs\@xl {
      padding-top: var(--space-xxxxs);
      padding-bottom: var(--space-xxxxs);
    }
    .padding-y-xxxs\@xl {
      padding-top: var(--space-xxxs);
      padding-bottom: var(--space-xxxs);
    }
    .padding-y-xxs\@xl {
      padding-top: var(--space-xxs);
      padding-bottom: var(--space-xxs);
    }
    .padding-y-xs\@xl {
      padding-top: var(--space-xs);
      padding-bottom: var(--space-xs);
    }
    .padding-y-sm\@xl {
      padding-top: var(--space-sm);
      padding-bottom: var(--space-sm);
    }
    .padding-y-md\@xl {
      padding-top: var(--space-md);
      padding-bottom: var(--space-md);
    }
    .padding-y-lg\@xl {
      padding-top: var(--space-lg);
      padding-bottom: var(--space-lg);
    }
    .padding-y-xl\@xl {
      padding-top: var(--space-xl);
      padding-bottom: var(--space-xl);
    }
    .padding-y-xxl\@xl {
      padding-top: var(--space-xxl);
      padding-bottom: var(--space-xxl);
    }
    .padding-y-xxxl\@xl {
      padding-top: var(--space-xxxl);
      padding-bottom: var(--space-xxxl);
    }
    .padding-y-xxxxl\@xl {
      padding-top: var(--space-xxxxl);
      padding-bottom: var(--space-xxxxl);
    }
    .padding-y-0\@xl {
      padding-top: 0;
      padding-bottom: 0;
    }
    .padding-y-component\@xl {
      padding-top: var(--component-padding);
      padding-bottom: var(--component-padding);
    }
  }
  /*  text-align */
  .text-center\@xl {
    text-align: center;
  }
  .text-left\@xl {
    text-align: left;
  }
  .text-right\@xl {
    text-align: right;
  }
  .text-justify\@xl {
    text-align: justify;
  }
  /*  font-size */
  @supports (--css: variables) {
    .text-xs\@xl {
      font-size: var(--text-xs, 0.694em);
    }
    .text-sm\@xl {
      font-size: var(--text-sm, 0.875em);
    }
    .text-base\@xl {
      font-size: var(--text-unit, 1em);
    }
    .text-md\@xl {
      font-size: var(--text-md, 1.2em);
    }
    .text-lg\@xl {
      font-size: var(--text-lg, 1.44em);
    }
    .text-xl\@xl {
      font-size: var(--text-xl, 1.728em);
    }
    .text-xxl\@xl {
      font-size: var(--text-xxl, 2.074em);
    }
    .text-xxxl\@xl {
      font-size: var(--text-xxxl, 2.488em);
    }
    .text-xxxxl\@xl {
      font-size: var(--text-xxxxl, 2.985em);
    }
  }
  /*   width */
  @supports (--css: variables) {
    .width-xxxxs\@xl {
      width: var(--size-xxxxs, 0.25rem);
    }
    .width-xxxs\@xl {
      width: var(--size-xxxs, 0.5rem);
    }
    .width-xxs\@xl {
      width: var(--size-xxs, 0.75rem);
    }
    .width-xs\@xl {
      width: var(--size-xs, 1rem);
    }
    .width-sm\@xl {
      width: var(--size-sm, 1.5rem);
    }
    .width-md\@xl {
      width: var(--size-md, 2rem);
    }
    .width-lg\@xl {
      width: var(--size-lg, 3rem);
    }
    .width-xl\@xl {
      width: var(--size-xl, 4rem);
    }
    .width-xxl\@xl {
      width: var(--size-xxl, 6rem);
    }
    .width-xxxl\@xl {
      width: var(--size-xxxl, 8rem);
    }
    .width-xxxxl\@xl {
      width: var(--size-xxxxl, 16rem);
    }
  }
  .width-0\@xl {
    width: 0;
  }
  .width-10\%\@xl {
    width: 10%;
  }
  .width-20\%\@xl {
    width: 20%;
  }
  .width-25\%\@xl {
    width: 25%;
  }
  .width-30\%\@xl {
    width: 30%;
  }
  .width-33\%\@xl {
    width: calc(100% / 3);
  }
  .width-40\%\@xl {
    width: 40%;
  }
  .width-50\%\@xl {
    width: 50%;
  }
  .width-60\%\@xl {
    width: 60%;
  }
  .width-66\%\@xl {
    width: calc(100% / 1.5);
  }
  .width-70\%\@xl {
    width: 70%;
  }
  .width-75\%\@xl {
    width: 75%;
  }
  .width-80\%\@xl {
    width: 80%;
  }
  .width-90\%\@xl {
    width: 90%;
  }
  .width-100\%\@xl {
    width: 100%;
  }
  .width-100vw\@xl {
    width: 100vw;
  }
  .width-auto\@xl {
    width: auto;
  }
  /*   height */
  @supports (--css: variables) {
    .height-xxxxs\@xl {
      height: var(--size-xxxxs, 0.25rem);
    }
    .height-xxxs\@xl {
      height: var(--size-xxxs, 0.5rem);
    }
    .height-xxs\@xl {
      height: var(--size-xxs, 0.75rem);
    }
    .height-xs\@xl {
      height: var(--size-xs, 1rem);
    }
    .height-sm\@xl {
      height: var(--size-sm, 1.5rem);
    }
    .height-md\@xl {
      height: var(--size-md, 2rem);
    }
    .height-lg\@xl {
      height: var(--size-lg, 3rem);
    }
    .height-xl\@xl {
      height: var(--size-xl, 4rem);
    }
    .height-xxl\@xl {
      height: var(--size-xxl, 6rem);
    }
    .height-xxxl\@xl {
      height: var(--size-xxxl, 8rem);
    }
    .height-xxxxl\@xl {
      height: var(--size-xxxxl, 16rem);
    }
  }
  .height-0\@xl {
    height: 0;
  }
  .height-10\%\@xl {
    height: 10%;
  }
  .height-20\%\@xl {
    height: 20%;
  }
  .height-25\%\@xl {
    height: 25%;
  }
  .height-30\%\@xl {
    height: 30%;
  }
  .height-33\%\@xl {
    height: calc(100% / 3);
  }
  .height-40\%\@xl {
    height: 40%;
  }
  .height-50\%\@xl {
    height: 50%;
  }
  .height-60\%\@xl {
    height: 60%;
  }
  .height-66\%\@xl {
    height: calc(100% / 1.5);
  }
  .height-70\%\@xl {
    height: 70%;
  }
  .height-75\%\@xl {
    height: 75%;
  }
  .height-80\%\@xl {
    height: 80%;
  }
  .height-90\%\@xl {
    height: 90%;
  }
  .height-100\%\@xl {
    height: 100%;
  }
  .height-100vh\@xl {
    height: 100vh;
  }
  .height-auto\@xl {
    height: auto;
  }
  position .position-relative\@xl {
    position: relative;
  }
  .position-absolute\@xl {
    position: absolute;
  }
  .position-fixed\@xl {
    position: fixed;
  }
  .position-sticky\@xl {
    position: sticky;
  }
  .position-static\@xl {
    position: static;
  }
  .top-0\@xl {
    top: 0;
  }
  .top-50\%\@xl {
    top: 50%;
  }
  .bottom-0\@xl {
    bottom: 0;
  }
  .bottom-50\%\@xl {
    bottom: 50%;
  }
  .left-0\@xl {
    left: 0;
  }
  .left-50\%\@xl {
    left: 50%;
  }
  .right-0\@xl {
    right: 0;
  }
  .right-50\%\@xl {
    right: 50%;
  }
  .inset-0\@xl {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  /*   visibility */
  .hide\@xl {
    display: none !important;
  }
}

@media not all and (min-width: 90rem) {
  .has-margin\@xl {
    margin: 0 !important;
  }
  .has-padding\@xl {
    padding: 0 !important;
  }
  .display\@xl {
    display: none !important;
  }
}

/*   Header Section with phone and open information */
.bg-alert {
  background: var(--color-accent);
}

.bg-alert.angle-right, .main-footer_site_info .bg-alert.angle-tag {
  padding-right: 10px;
  margin-right: 75px;
}

@media (min-width: 1800px) {
  .bg-alert.angle-right, .main-footer_site_info .bg-alert.angle-tag {
    margin-right: 110px;
  }
}

.bg-alert.angle-right:before, .main-footer_site_info .bg-alert.angle-tag:before {
  transform: skewX(-15deg);
  width: 100px;
  right: -45px;
}

@media (min-width: 1800px) {
  .bg-alert.angle-right:before, .main-footer_site_info .bg-alert.angle-tag:before {
    right: -80px;
    width: 200px;
  }
}

/*   Angled Edges for buttons */
.angled-edge, .angle-right, .main-footer_site_info .angle-tag, .angle-left {
  position: relative;
  background: var(--color-accent);
}

.angled-edge:before, .angle-right:before, .main-footer_site_info .angle-tag:before, .angle-left:before {
  position: absolute;
  height: 100%;
  width: 60px;
  content: '';
  background: var(--color-accent);
  position: absolute;
  top: 0;
}

@media (min-width: 64rem) {
  .angled-edge:before, .angle-right:before, .main-footer_site_info .angle-tag:before, .angle-left:before {
    width: 40px;
  }
}

.angled-edge:before {
  left: -20px;
  transform: skewX(-15deg);
}

.angle-right, .main-footer_site_info .angle-tag {
  padding-right: 30px;
  margin-right: 40px;
}

.angle-right:before, .main-footer_site_info .angle-tag:before {
  right: -25px;
  transform: skewX(-15deg);
}

.angle-left {
  padding-left: 30px;
  margin-left: 40px;
}

.angle-left:after {
  left: -25px;
  transform: skewX(-15deg);
}

/*   Ripped BG  */
.ripped-bg-blue {
  background: url(../img/end-of-category-paper-tear-texture.svg) no-repeat top left/100% 100%;
  min-height: 3em;
  padding: 1.5em 1em .75em;
}

/* Ripped BG - Top */
.ripped-top {
  padding: 4rem 0 2rem;
}

.ripped-top::before {
  content: '';
  background: url(../img/ripped-tear-divider.svg) no-repeat top left 10%/120% 100%;
  height: 50px;
  width: 100%;
  z-index: 9;
  border: 2px;
  display: block;
  margin-top: -100px;
}

.ripped-top .container {
  z-index: 9;
}

.ripped-bottom {
  position: relative;
}

.ripped-bottom::after {
  content: '';
  width: 102%;
  height: 100px;
  transform: rotate(180deg);
  background: url("../img/hero-grad-paper-tear-texture.svg");
  background-repeat: no-repeat;
  background-size: cover;
  transform: rotate(0deg);
  position: absolute;
  left: -1%;
  bottom: -50px;
}

/* Gradient BG */
.gradient-bottom {
  background-image: linear-gradient(180deg, #FFFFFF 11%, #0A93DB 67%, #184097 87%);
  margin-bottom: 100px;
  padding-bottom: 100px;
}

.bg-gradient {
  background: linear-gradient(90deg, #184097 0%, #4ba6f8 100%);
}

@media (min-width: 64rem) {
  .bg-gradient.pelican-sidelines div:first-child {
    border-right: 1px solid var(--color-white);
  }
}

.bg-gradient.pelican-ad-container {
  color: var(--color-white);
}

.bg-gradient.pelican-ad-container h2, .bg-gradient.pelican-ad-container h3 {
  color: var(--color-white);
}

.bg-gradient.pelican-ad-container h2 {
  font-size: 1.875rem;
}

.bg-gradient.pelican-ad-container p {
  margin-bottom: 1rem;
}

.bg-gradient.pelican-ad-container .text-xs {
  font-size: .875rem;
}

/* Border */
.border-right-desktop {
  border: none;
}

@media (min-width: 64rem) {
  .border-right-desktop {
    border-right: 1px solid var(--color-black);
  }
}

/*! purgecss start ignore */
.pelican-alert {
  background: #E5FFD4;
  border-radius: 3px;
  align-items: center;
  padding: 16px 16px;
  margin-bottom: 0px;
}

.pelican-alert img {
  max-width: 1.6em;
}

.pelican-alert p {
  position: relative;
  text-indent: -35px;
  margin-left: 40px;
}

.pelican-alert p::before {
  content: '\f058';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 20px;
  color: #4B9D17;
}

.pelican-alert-danger {
  background: #FFE3E3;
  border-radius: 3px;
  align-items: center;
  padding: 16px 16px;
  margin-bottom: 0px;
}

.pelican-alert-danger img {
  max-width: 1.6em;
}

.pelican-alert-danger p {
  position: relative;
  text-indent: -35px;
  margin-left: 40px;
}

.pelican-alert-danger p::before {
  content: '\f058';
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  margin-right: 20px;
  color: #FF1C1C;
}

/* -------------------------------- 

File#: _anim-menu-btn
Title: Animated Menu Button
Descr: A menu button w/ a morphing icon
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --anim-menu-btn-size: 48px;
  --anim-menu-btn-transition-duration: .2s;
  /* 🍔 icon */
  --anim-menu-btn-icon-size: 32px;
  --anim-menu-btn-icon-stroke: 2px;
}

.anim-menu-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 1.2em .8em;
  box-shadow: 0 2px 8px 0 rgba(7, 35, 101, 0.15);
  border-radius: 50% 50%;
  margin-right: 1em;
}

/* icons */
.anim-menu-btn__icon {
  position: relative;
  display: block;
  font-size: var(--anim-menu-btn-icon-size);
  width: .8em;
  height: var(--anim-menu-btn-icon-stroke);
  color: var(--color-primary-darker);
  background-image: linear-gradient(currentColor, currentColor);
  background-repeat: no-repeat;
  transform: scale(1);
}

.anim-menu-btn__icon::before, .anim-menu-btn__icon::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-image: inherit;
  border-radius: inherit;
}

/* menu to 'X' close */
.anim-menu-btn__icon--close {
  background-size: 100% 100%;
  will-change: transform, background-size;
  transition-property: transform, background-size;
  transition-duration: var(--anim-menu-btn-transition-duration, 0.2s);
}

.anim-menu-btn:active .anim-menu-btn__icon--close {
  transform: scale(0.9);
}

.anim-menu-btn__icon--close::before, .anim-menu-btn__icon--close::after {
  will-change: inherit;
  transition: inherit;
}

.anim-menu-btn__icon--close::before {
  /* line top */
  transform: translateY(-0.25em) rotate(0);
}

.anim-menu-btn__icon--close::after {
  /* line bottom */
  transform: translateY(0.25em) rotate(0);
}

.anim-menu-btn--state-b .anim-menu-btn__icon--close {
  background-size: 0% 100%;
}

.anim-menu-btn--state-b .anim-menu-btn__icon--close::before {
  transform: translateY(0) rotate(45deg);
}

.anim-menu-btn--state-b .anim-menu-btn__icon--close::after {
  transform: translateY(0) rotate(-45deg);
}

/* menu to arrow */
.anim-menu-btn__icon--arrow-left,
.anim-menu-btn__icon--arrow-right,
.anim-menu-btn__icon--arrow-up,
.anim-menu-btn__icon--arrow-down {
  border-radius: 50em;
  will-change: transform;
  transition-property: transform;
  transition-duration: var(--anim-menu-btn-transition-duration, 0.2s);
}

.anim-menu-btn:active .anim-menu-btn__icon--arrow-left, .anim-menu-btn:active
.anim-menu-btn__icon--arrow-right, .anim-menu-btn:active
.anim-menu-btn__icon--arrow-up, .anim-menu-btn:active
.anim-menu-btn__icon--arrow-down {
  transform: scale(0.9);
}

.anim-menu-btn__icon--arrow-left::before, .anim-menu-btn__icon--arrow-left::after,
.anim-menu-btn__icon--arrow-right::before,
.anim-menu-btn__icon--arrow-right::after,
.anim-menu-btn__icon--arrow-up::before,
.anim-menu-btn__icon--arrow-up::after,
.anim-menu-btn__icon--arrow-down::before,
.anim-menu-btn__icon--arrow-down::after {
  transform-origin: calc(var(--anim-menu-btn-icon-stroke)/2) 50%;
  will-change: transform, width;
  transition-property: transform, width;
  transition-duration: var(--anim-menu-btn-transition-duration, 0.2s);
}

.anim-menu-btn__icon--arrow-left::before,
.anim-menu-btn__icon--arrow-right::before,
.anim-menu-btn__icon--arrow-up::before,
.anim-menu-btn__icon--arrow-down::before {
  /* line top */
  transform: translateY(-0.25em) rotate(0);
}

.anim-menu-btn__icon--arrow-left::after,
.anim-menu-btn__icon--arrow-right::after,
.anim-menu-btn__icon--arrow-up::after,
.anim-menu-btn__icon--arrow-down::after {
  /* line bottom */
  transform: translateY(0.25em) rotate(0);
}

.anim-menu-btn__icon--arrow-right {
  transform: rotate(180deg);
}

.anim-menu-btn:active .anim-menu-btn__icon--arrow-right {
  transform: rotate(180deg) scale(0.9);
}

.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-left::before, .anim-menu-btn--state-b .anim-menu-btn__icon--arrow-left::after,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-right::before,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-right::after,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-up::before,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-up::after,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-down::before,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-down::after {
  width: 50%;
}

.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-left::before,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-right::before,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-up::before,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-down::before {
  transform: translateY(0) rotate(-45deg);
}

.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-left::after,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-right::after,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-up::after,
.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-down::after {
  transform: translateY(0) rotate(45deg);
}

.anim-menu-btn--state-b:active .anim-menu-btn__icon--arrow-up {
  transform: rotate(90deg) scale(0.9);
}

.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-up {
  transform: rotate(90deg);
}

.anim-menu-btn--state-b:active .anim-menu-btn__icon--arrow-down {
  transform: rotate(-90deg) scale(0.9);
}

.anim-menu-btn--state-b .anim-menu-btn__icon--arrow-down {
  transform: rotate(-90deg);
}

/* -------------------------------- 

File#: _1_card-v2
Title: Card v2
Descr: Container of information used as teasers for further content, often displayed in a gallery of related items
Usage: codyhouse.co/license

-------------------------------- */
.card-v2__caption {
  position: absolute;
  bottom: 0;
  width: 100%;
  background: linear-gradient(180deg, rgba(238, 238, 238, 0) 0%, #184097 80%);
  background-blend-mode: multiply;
  height: 50%;
  color: var(--color-white);
  text-shadow: 0 1px 1px rgba(0, 0, 0, 0.35);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: all 0.4s ease-in-out;
}

/* --blurred-img */
.card-v2--blur-fx .card-v2__caption {
  background: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.8);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

/* --link */
a.card-v2 {
  display: block;
  text-decoration: none;
  transition: box-shadow .2s;
}

a.card-v2:hover {
  box-shadow: var(--shadow-md);
}

.card-v2 {
  position: relative;
  overflow: hidden;
  border-radius: 25px;
}

.card-v2 img {
  display: block;
  width: 100%;
}

.card-v2 .card-v2__custom_text {
  position: absolute;
  left: 50%;
  bottom: 0%;
  transform: translateX(-50%) translateY(-20px);
  text-align: center;
  font-size: 1.1em;
  color: var(--color-white);
}

.card-v2:hover {
  cursor: pointer;
}

.card-v2:hover .card-v2__caption {
  height: 100%;
  background: linear-gradient(180deg, rgba(238, 238, 238, 0) 0%, #184097 76%);
}

/* -------------------------------- 

File#: 
Title: Card v5
Descr: Container of information used as teasers for further content, often displayed in a gallery of related items
Usage: codyhouse.co/license

-------------------------------- */
.card-v5 {
  background-image: linear-gradient(180deg, #FEFEFF 33%, #CFE7FD 73%, #94CAFB 100%);
  border-radius: 16px;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.card-v5__img-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.card-v5__img {
  will-change: transform;
  transition: transform .3s;
  overflow: hidden;
  border-radius: 16px 16px 0 0;
}

.card-v5__img img {
  display: block;
  width: 100%;
  will-change: inherit;
  transition: inherit;
}

.card-v5__content {
  padding: var(--space-sm);
  border-radius: 0 0 16px 16px;
  flex-grow: 1;
  flex-direction: column;
  display: flex;
}

.card-v5__content h2 {
  margin-bottom: 10px;
}

.card-v5__content h2 a {
  color: var(--color-primary-darker);
  margin-bottom: .8em;
  text-decoration: none;
}

.card-v5__content ul {
  margin-bottom: .6em;
}

.card-v5__content .card__footer {
  justify-self: flex-end;
  border-top: 1px solid var(--color-black);
  margin-top: auto;
  padding-top: .4em;
}

.card-v5__content .card__footer a {
  margin-left: -.4em;
}

/* Outline card */
.card-outline {
  border: 2px solid var(--color-accent);
  border-radius: .8em;
  padding: 1em;
  background: var(--color-white);
  line-height: 1.25em;
}

.card-outline:hover {
  background: var(--color-primary-lighter);
  border-color: var(--color-primary-darker);
}

.card-outline:hover h4 {
  color: var(--color-primary-darker);
  text-decoration: underline;
}

.card-outline a {
  color: var(--color-black);
  text-decoration: none;
}

.card-outline a i {
  color: var(--color-primary);
}

.card-outline p a {
  color: var(--color-primary-darker);
  text-decoration: underline;
}

.card-outline h3.alt {
  margin-bottom: .5em;
}

.card-outline .header-side-slash {
  background: url(../img/double-angles.svg) no-repeat top left/30px 100%;
  padding-left: 40px;
  margin-bottom: .5em;
}

.card-outline .header-side-slash h3 {
  padding-bottom: .2em;
}

/* Card with footer */
.card-w-footer .card-content {
  padding: 1em 1em 1em;
}

.card-w-footer .card-content h2 {
  padding-bottom: .1em;
  margin-bottom: .5em;
  border-bottom: 1px solid var(--color-grey);
}

.card-w-footer .footer-summary {
  padding: .5em 1em;
  background: var(--color-primary-darker);
  color: var(--color-white);
  border-radius: 0 0 1em 1em;
}

.p-order-summary .btn-standard {
  display: block;
  width: 100%;
  text-align: center;
}

.p-order-summary .no-background-btn {
  display: block;
  margin-left: auto;
  color: var(--color-dark);
}

.p-order-summary .no-background-btn i {
  color: var(--color-error);
}

.pelican-gradient-header-card-standard {
  /* Table */
  /* Forms */
  /* Choice */
}

.pelican-gradient-header-card-standard .p-header-solid, .pelican-gradient-header-card-standard .p-header-gradient {
  color: var(--color-white);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

.pelican-gradient-header-card-standard .p-header-solid {
  background: var(--color-primary-darker);
  font-size: 1.25rem;
}

.pelican-gradient-header-card-standard .p-header-gradient {
  text-transform: uppercase;
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
}

.pelican-gradient-header-card-standard .p-body-card-bottom {
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
  background: var(--color-primary-lighter);
  padding: 1rem;
}

.pelican-gradient-header-card-standard .p-body-card-bottom .angled-button, .pelican-gradient-header-card-standard .p-body-card-bottom .impact-button {
  width: 100%;
  max-width: 90%;
}

.pelican-gradient-header-card-standard.p-with-footer .p-body-card-bottom {
  border-radius: 0;
}

.pelican-gradient-header-card-standard .p-footer-card-bottom {
  /*background: var(--color-primary);*/
  background: #edeff1;
  padding: 1.0rem 1rem;
  font-size: .875rem;
}

.pelican-gradient-header-card-standard .table--expanded .table__header .table__cell {
  background: transparent;
}

.pelican-gradient-header-card-standard input {
  border: 3px solid var(--color-primary-darker);
}

.pelican-gradient-header-card-standard textarea {
  border: 3px solid var(--color-primary-darker);
}

.pelican-gradient-header-card-standard .choice-accordion__panel {
  background: none;
}

.pelican-gradient-header-card-standard .choice-accordion__panel:before {
  display: none;
}

/* -------------------------------- 

File#: _custom-select
Title: Custom Select
Descr: Custom Select Control
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --select-icon-size: 1em;
  --select-icon-right-margin: var(--space-sm);
  --select-text-icon-gap: var(--space-xxxs);
}

.select {
  position: relative;
}

.select__input {
  width: 100%;
  height: 100%;
  padding-right: calc(var(--select-icon-size) + var(--select-icon-right-margin) + var(--select-text-icon-gap)) !important;
}

.select__icon {
  width: var(--select-icon-size);
  height: var(--select-icon-size);
  pointer-events: none;
  position: absolute;
  right: var(--select-icon-right-margin);
  top: 50%;
  transform: translateY(-50%);
}

:root {
  --select-dropdown-gap: 4px;
}

.select__button {
  width: 100%;
}

.select__dropdown {
  position: absolute;
  left: 0;
  top: 100%;
  min-width: 200px;
  max-height: 1px;
  background-color: var(--color-bg);
  box-shadow: var(--shadow-md);
  padding: var(--space-xxs) 0;
  border-radius: var(--radius-md);
  z-index: var(--zindex-popover);
  margin-top: var(--select-dropdown-gap);
  margin-bottom: var(--select-dropdown-gap);
  overflow: auto;
  --space-unit:  1rem;
  --text-unit: 1rem;
  font-size: var(--text-unit);
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s .2s, opacity .2s;
}

.select__dropdown--right {
  right: 0;
  left: auto;
}

.select__dropdown--up {
  bottom: 100%;
  top: auto;
}

.select__button[aria-expanded="true"] + .select__dropdown {
  visibility: visible;
  opacity: 1;
  position: relative;
  transition: visibility 0s, opacity .2s;
}

.select__list {
  list-style: none !important;
}

.select__list:not(:first-of-type) {
  padding-top: var(--space-xxs);
}

.select__list:not(:last-of-type) {
  border-bottom: 1px solid var(--color-contrast-low);
  padding-bottom: var(--space-xxs);
}

.select__item {
  display: block;
  padding: var(--space-xs) var(--space-lg) var(--space-xs) var(--space-md);
  color: var(--color-contrast-high);
  width: 100%;
  text-align: left;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.select__item--optgroup {
  font-size: var(--text-sm);
  color: var(--color-contrast-medium);
}

.select__item--option {
  cursor: pointer;
}

.select__item--option:hover {
  background-color: var(--color-contrast-lower);
}

.select__item--option:focus {
  outline: none;
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.1);
}

.select__item--option[aria-selected=true] {
  background-color: var(--color-primary);
  color: var(--color-white);
  position: relative;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.select__item--option[aria-selected=true]::after {
  content: '';
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  height: 16px;
  width: 16px;
  right: var(--space-sm);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolyline stroke-width='1.5' stroke='%23ffffff' fill='none' stroke-linecap='round' stroke-linejoin='round' points='1,9 5,13 15,3 '/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}

html:not(.js) .select .icon {
  display: none;
}

.border-select {
  border: 1px solid var(--color-black);
  padding: .5em;
  min-width: 150px;
}

.border-select .icon {
  position: absolute;
  right: .5em;
}

/* -------------------------------- 

File#: N/A
Title: Diagonal Movement
Descr: A JavaScript plugin that detects the direction of the mouse movement (diagonal vs vertical)
Usage: codyhouse.co/license
Based on the jQuery-menu-aim plugin https://github.com/kamens/jQuery-menu-aim

⚠️ The style of this component is only for demo purpose. You don't need it to use the plugin.

-------------------------------- */
.d-movement {
  max-width: 720px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: var(--space-xxs);
}

.d-movement__source {
  display: grid;
  grid-gap: var(--space-xxs);
}

.d-movement__item {
  height: 50px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  border-radius: 0.25em;
}

.d-movement__item--one {
  background-color: var(--color-primary);
}

.d-movement__item--two {
  background-color: var(--color-contrast-higher);
}

.d-movement__item--three {
  background-color: var(--color-accent);
}

.d-movement__sub-element {
  background-color: var(--color-contrast-lower);
  border-radius: 0.25em;
  transition: background 0.2s;
}

.d-movement__arrow {
  width: 0;
  height: 0;
  border: 12px solid transparent;
  border-left-color: white;
}

/* -------------------------------- 

File#: _dropdown
Title: Dropdown
Descr: A hoverable link that toggles the visibility of a dropdown list
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --dropdown-item-padding: var(--space-xxs) var(--space-sm);
}

.dropdown {
  position: relative;
}

.dropdown.disabled {
  opacity: .3;
}

.dropdown__menu {
  width: 100%;
  background-color: var(--color-bg);
  box-shadow: var(--shadow-sm);
  z-index: var(--zindex-popover);
  position: absolute;
  left: 0;
  top: 100%;
  /* reset spacing and text units - no longer affected by em units */
  --space-unit:  1rem;
  --text-unit: 1rem;
  font-size: var(--text-unit);
  /* hide */
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s, visibility 0s .2s;
}

@media not all and (pointer: fine) {
  .dropdown__trigger-icon {
    display: none;
  }
}

.dropdown__item {
  display: block;
  text-decoration: none;
  color: var(--color-contrast-high);
  padding: .8em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dropdown__item:hover, .dropdown__item.dropdown__item--hover {
  background-color: var(--color-primary-darker);
  color: var(--color-white);
}

.dropdown__separator {
  /* h line divider */
  height: 1px;
  background-color: var(--color-contrast-low);
  margin: var(--dropdown-item-padding);
}

.dropdown__sub-wrapper {
  position: relative;
}

.dropdown__sub-wrapper > .dropdown__item {
  /* item w/ right arrow */
  position: relative;
  padding-right: calc(var(--space-sm) + 12px);
}

.dropdown__sub-wrapper > .dropdown__item .icon {
  /* right arrow */
  position: absolute;
  display: block;
  width: 12px;
  height: 12px;
  right: var(--space-xxs);
  top: calc(50% - 6px);
}

.dropdown__sub-wrapper > .dropdown__menu {
  /* sub menu */
  top: calc(var(--space-xxs) * -1);
  box-shadow: var(--shadow-md);
}

.js {
  /* add animations if JS = enabled */
}

.js .dropdown__menu {
  top: 100%;
  /* add a 4px margin between trigger and dropdown */
}

.js .dropdown__sub-wrapper .dropdown__menu {
  top: calc(var(--space-xxs) * -1);
}

/* EK */
/*@media (pointer: fine) {*/
@media (min-width: 64rem) {
  .js .dropdown__menu--is-visible {
    opacity: 1;
    visibility: visible;
    transition: opacity .2s;
  }
  .footer-after-estimates {
	margin-top: 400px !important;
  }
  .enter-info-submit {
	font-size: inherit;
  }
}

/*@media (max-width: 512px) {*/
@media (max-width: 64rem) {
  .dropdown__menu--is-visible {
    opacity: 1;
    visibility: visible;
    transition: opacity .2s;
  }
  .pelican-shipping-calendar {
	display: none;
  }
  .footer-after-estimates {
	margin-top: 0px !important;
  }
  .enter-info-submit {
	font-size: .9em;
  }
}

.retrieve-cart-info-btn {
	text-decoration: underline;
	color: blue;
}

.js .dropdown__menu--is-hidden {
  opacity: 0;
  visibility: hidden;
  transition: opacity .2s, visibility 0s .2s;
}

.js .dropdown__sub-wrapper > .dropdown__menu--is-visible,
.js .dropdown__sub-wrapper > .dropdown__menu--is-hidden {
  left: 100%;
}

.js .dropdown__sub-wrapper > .dropdown__menu--is-visible.dropdown__menu--left,
.js .dropdown__sub-wrapper > .dropdown__menu--is-hidden.dropdown__menu--left {
  left: -100%;
}

.dropdown__trigger {
  background: var(--color-white);
  width: 100%;
  padding: .5em;
  color: var(--color-black);
  text-decoration: none;
}

.disabled.dropdown .dropdown__wrapper:hover > .dropdown__menu, .disabled.dropdown .dropdown__wrapper:hover > .dropdown__menu--is-visible {
  display: none;
  opacity: 0;
}

.disabled.dropdown:hover {
  cursor: default !important;
}

.disabled.dropdown .dropdown__menu {
  display: none !important;
}

/* -------------------------------- 

File#: _full-screen-search
Title: Full Screen Search
Descr: A full-screen window w/ a search input element
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --fs-search-btn-size: 1.5em;
  --fs-search-border-bottom-width: 2px;
}

.modal--search {
  background-color: hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), 0.95);
}

.modal--search .modal__close-btn--outer {
  background-color: var(--color-contrast-lower);
}

.modal--search .modal__close-btn--outer .icon {
  color: var(--color-contrast-high);
}

.modal--search .modal__close-btn--outer:hover {
  background-color: var(--color-contrast-low);
}

.full-screen-search {
  position: relative;
  font-size: var(--text-xl);
  background-image: linear-gradient(transparent calc(100% - var(--fs-search-border-bottom-width) * 2), var(--color-contrast-low) calc(100% - var(--fs-search-border-bottom-width) * 2), var(--color-contrast-low) calc(100% - var(--fs-search-border-bottom-width)), transparent var(--fs-search-border-bottom-width));
  /* border bottom */
}

.full-screen-search__input {
  background: transparent;
  /* reset */
  width: 100%;
  padding: var(--space-sm) var(--space-xs);
  padding-right: calc(var(--space-xs) + var(--fs-search-btn-size));
  background-image: linear-gradient(transparent calc(100% - var(--fs-search-border-bottom-width) * 2), var(--color-primary) calc(100% - var(--fs-search-border-bottom-width) * 2), var(--color-primary) calc(100% - var(--fs-search-border-bottom-width)), transparent var(--fs-search-border-bottom-width));
  /* filling effect */
  background-size: 0% 100%;
  background-repeat: no-repeat;
}

.full-screen-search__input:focus {
  outline: none;
  background-size: 100% 100%;
}

.full-screen-search__input::-webkit-search-decoration,
.full-screen-search__input::-webkit-search-cancel-button,
.full-screen-search__input::-webkit-search-results-button,
.full-screen-search__input::-webkit-search-results-decoration {
  display: none;
}

.full-screen-search__btn {
  position: absolute;
  top: calc(50%);
  transform: translateY(-50%);
  right: var(--space-xs);
  height: var(--fs-search-btn-size);
  width: var(--fs-search-btn-size);
  background-color: var(--color-primary);
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.full-screen-search__btn .icon {
  display: block;
  color: var(--color-white);
  font-size: 20px;
  /* icon size */
  transition: transform .2s;
}

.full-screen-search__btn:hover .icon {
  transform: scale(1.1);
}

@media (prefers-reduced-motion: no-preference) {
  .modal--search .full-screen-search__input {
    transition: background-size 0.4s var(--ease-out);
  }
  .modal--search .full-screen-search__btn {
    transform: translateY(-30%) scale(0.6);
    opacity: 0;
    transition: opacity 0.4s, transform 0.4s var(--ease-out);
  }
  .modal--search.modal--is-visible .full-screen-search__btn {
    /*transform: translateY(-20%) scale(1);*/
    opacity: 1;
  }
}

/* -------------------------------- 

File#: _modal-window
Title: Modal Window
Descr: A modal dialog used to display critical information
Usage: codyhouse.co/license

-------------------------------- */
.modal {
  position: fixed;
  display:none;
  /*z-index: var(--zindex-overlay);*/
  z-index: 99999 !important;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  opacity: 0;
  visibility: hidden;
}

.modal:not(.modal--is-visible) {
  pointer-events: none;
  background-color: transparent;
}

.modal--is-visible {
  display: flex;
  opacity: 1;
  visibility: visible;
}

/*  close button */
.modal__close-btn {
  display: flex;
  flex-shrink: 0;
  border-radius: 50%;
  transition: .2s;
}

.modal__close-btn .icon {
  display: block;
  margin: auto;
}

.modal__close-btn--outer {
  /* close button - outside the modal__content */
  width: 48px;
  height: 48px;
  position: fixed;
  top: var(--space-sm);
  right: var(--space-sm);
  z-index: var(--zindex-fixed-element);
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.8);
}

.modal__close-btn--outer:hover {
  background-color: var(--color-contrast-higher);
}

.modal__close-btn--outer .icon {
  color: var(--color-bg);
  /* icon color */
}

.modal__close-btn--inner {
  /* close button - inside the modal__content */
  width: 2em;
  height: 2em;
  background-color: var(--color-bg);
  box-shadow: var(--shadow-sm);
}

.modal__close-btn--inner .icon {
  color: inherit;
  /* icon color */
}

.modal__close-btn--inner:hover {
  box-shadow: var(--shadow-md);
}

/* animations */
:root {
  --modal-transition-duration: 0.2s;
  /* fallback (i.e., unless specified differently in the variations 👇) */
}

@media (prefers-reduced-motion: no-preference) {
  .modal--animate-fade {
    --modal-transition-duration: 0.2s;
    transition: opacity var(--modal-transition-duration), background-color var(--modal-transition-duration), visibility 0s var(--modal-transition-duration);
  }
  .modal--animate-fade.modal--is-visible {
    transition: opacity var(--modal-transition-duration), background-color var(--modal-transition-duration), visibility 0s;
  }
  .modal--animate-scale,
  .modal--animate-translate-up,
  .modal--animate-translate-down,
  .modal--animate-translate-right,
  .modal--animate-translate-left {
    --modal-transition-duration: .2s;
    transition: opacity var(--modal-transition-duration), background-color var(--modal-transition-duration), visibility 0s var(--modal-transition-duration);
  }
  .modal--animate-scale .modal__content,
  .modal--animate-translate-up .modal__content,
  .modal--animate-translate-down .modal__content,
  .modal--animate-translate-right .modal__content,
  .modal--animate-translate-left .modal__content {
    will-change: transform;
    transition: transform var(--modal-transition-duration) var(--ease-out);
  }
  .modal--animate-scale.modal--is-visible,
  .modal--animate-translate-up.modal--is-visible,
  .modal--animate-translate-down.modal--is-visible,
  .modal--animate-translate-right.modal--is-visible,
  .modal--animate-translate-left.modal--is-visible {
    transition: opacity var(--modal-transition-duration), background-color var(--modal-transition-duration), visibility 0s;
  }
  .modal--animate-scale.modal--is-visible .modal__content,
  .modal--animate-translate-up.modal--is-visible .modal__content,
  .modal--animate-translate-down.modal--is-visible .modal__content,
  .modal--animate-translate-right.modal--is-visible .modal__content,
  .modal--animate-translate-left.modal--is-visible .modal__content {
    transform: scale(1);
    /* reset all transformations */
  }
  .modal--animate-slide-up,
  .modal--animate-slide-down,
  .modal--animate-slide-right,
  .modal--animate-slide-left {
    --modal-transition-duration: 0.3s;
    transition: opacity 0s var(--modal-transition-duration), background-color var(--modal-transition-duration), visibility 0s var(--modal-transition-duration);
  }
  .modal--animate-slide-up .modal__content,
  .modal--animate-slide-down .modal__content,
  .modal--animate-slide-right .modal__content,
  .modal--animate-slide-left .modal__content {
    will-change: transform;
    transition: transform var(--modal-transition-duration) var(--ease-out);
  }
  .modal--animate-slide-up.modal--is-visible,
  .modal--animate-slide-down.modal--is-visible,
  .modal--animate-slide-right.modal--is-visible,
  .modal--animate-slide-left.modal--is-visible {
    transition: background-color var(--modal-transition-duration), visibility 0s;
  }
  .modal--animate-slide-up.modal--is-visible .modal__content,
  .modal--animate-slide-down.modal--is-visible .modal__content,
  .modal--animate-slide-right.modal--is-visible .modal__content,
  .modal--animate-slide-left.modal--is-visible .modal__content {
    transform: scale(1);
    /* reset all transformations */
  }
  /* scale */
  .modal--animate-scale .modal__content {
    transform: scale(0.95);
  }
  /* translate */
  .modal--animate-translate-up .modal__content {
    transform: translateY(40px);
  }
  .modal--animate-translate-down .modal__content {
    transform: translateY(-40px);
  }
  .modal--animate-translate-right .modal__content {
    transform: translateX(-40px);
  }
  .modal--animate-translate-left .modal__content {
    transform: translateX(40px);
  }
  /* slide */
  .modal--animate-slide-up .modal__content {
    transform: translateY(100%);
  }
  .modal--animate-slide-down .modal__content {
    transform: translateY(-100%);
  }
  .modal--animate-slide-right .modal__content {
    transform: translateX(-100%);
  }
  .modal--animate-slide-left .modal__content {
    transform: translateX(100%);
  }
}

/* load content - optional */
.modal--is-loading .modal__content {
  visibility: hidden;
}

.modal--is-loading .modal__loader {
  display: flex;
}

.modal__loader {
  /* loader icon */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
  display: none;
  pointer-events: none;
}

/* Vehicle Selector */
@media (max-width: 64em) {
  #pelican-vehicle-selector {
    /*display: none;*/
  }
  .modal--is-visible {
    display: block;
    opacity: 1;
    visibility: visible;
  }
  .selector-head-txt-cnt {
	flex-basis: calc( 100% - 0.01px - var(--gap-x, 0.75em));
    max-width: calc( 100% - 0.01px - var(--gap-x, 0.75em));
  }
  p.selector-head-txt {
	color: white;
  }
}

#pelican-vehicle-selector .grid {
  background: linear-gradient(90deg, #ff8b03 13%, #234bab 15%, #0a93db 100%);
  position: relative;
}

@media (max-width: 64em) {
  #pelican-vehicle-selector .grid {
    background: linear-gradient(90deg, #234bab 0%, #0a93db 100%);
  }
}

.selector-modal-all-btn {
	cursor:pointer;
}

#pelican-vehicle-selector .grid:before {
  position: absolute;
  top: 0;
  left: 11%;
  /*content: '';*/
  width: 50px;
  height: 100%;
  background: var(--color-accent);
  transform: skewX(-15deg);
}

@media (max-width: 64em) {
	#pelican-vehicle-selector .grid:before {
		height: 50px;
		width: 90%;
		left: -20px;
	}
	.cart-right-item-list {
		display:none;
	}
}

#pelican-vehicle-selector .grid .col {
  z-index: 9;
}

@media (max-width: 64em) {
  #pelican-vehicle-selector .grid .col:first-child {
    height: 40px;
  }
}

#pelican-vehicle-selector .h5_formatted:focus {
  outline: none;
}

#pelican-vehicle-selector .dropdown {
  border: 2px solid var(--color-accent);
  margin-right: .4rem;
  height: -webkit-max-content;
  height: -moz-max-content;
  height: max-content;
}

/* -------------------------------- 

File#: _popover
Title: Popover
Descr: A pop-up box controlled by a trigger element
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --popover-width: 500px;
  --popover-control-gap: 4px;
  /* ⚠️ use px units - vertical gap between the popover and its control */
  --popover-viewport-gap: 20px;
  /* ⚠️ use px units - vertical gap between the popover and the viewport - visible if popover height > viewport height */
  --popover-transition-duration: 0.2s;
}

.popover {
  position: fixed;
  /* top/left position set in JS */
  width: var(--popover-width);
  z-index: var(--zindex-popover);
  margin-top: var(--popover-control-gap);
  margin-bottom: var(--popover-control-gap);
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  z-index: 99;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s var(--popover-transition-duration), opacity var(--popover-transition-duration);
}

.popover--is-visible {
  visibility: visible;
  opacity: 1;
  transition: visibility 0s, opacity var(--popover-transition-duration);
}

/* -------------------------------- 

File#: _2_slideshow
Title: Slideshow
Descr: Show a collection of items one at a time
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --slideshow-height: 280px;
  /* transitions */
  --slideshow-fade-transition-duration: 0.25s;
  /* fade effect transition duration */
  --slideshow-slide-transition-duration: 0.35s;
  /* slide effect transition duration */
  --slideshow-prx-transition-duration: 0.5s;
  /* parallax effect transition duration */
  /* controls */
  --slideshow-btn-width: 1.6em;
  --slideshow-btn-height: 3.2em;
  --slideshow-btn-icon-size: 1.6em;
  --slideshow-btn-offset: var(--space-xs);
  /* gap between button and slideshow edges */
}

@media (min-width: 48rem) {
  :root {
    --slideshow-height: 380px;
  }
}

@media (min-width: 64rem) {
  :root {
    /*--slideshow-height: 480px;*/
  }
}

@media (min-width: 71.25rem) {
  :root {
    /*--slideshow-height: 580px;*/
	--slideshow-height: 500px; /* Jay changed to fix top padding issue on product page image display */
  }
}

/* slide */
.slideshow__item {
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--slideshow-height);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.slideshow__item:focus {
  outline: none;
}

/* set a fixed ratio for the slides */
.slideshow--ratio-16\:9 .slideshow__item {
  height: 0;
  padding-bottom: 56.25%;
  /* 16:9 aspect ratio */
}

.slideshow--ratio-4\:3 .slideshow__item {
  height: 0;
  padding-bottom: 75%;
  /* 4:3 aspect ratio */
}

.slideshow--ratio-1\:1 .slideshow__item {
  height: 0;
  padding-bottom: 100%;
  /* 1:1 aspect ratio */
}

/* slideshow basic style */
.js .slideshow {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.js .slideshow__content {
  overflow: hidden;
}

.js .slideshow__item {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  visibility: hidden;
}

.js .slideshow__item--selected {
  position: relative;
  z-index: 3;
  visibility: visible;
}

/* fade-in animation */
.js .slideshow--transition-fade .slideshow__item {
  opacity: 0;
  transition: opacity 0s var(--slideshow-fade-transition-duration), visibility 0s var(--slideshow-fade-transition-duration);
}

.js .slideshow--transition-fade .slideshow__item--selected {
  opacity: 1;
  transition: opacity var(--slideshow-fade-transition-duration);
}

/* slide-in animation */
.js .slideshow--transition-slide .slideshow__item {
  -webkit-animation-duration: var(--slideshow-slide-transition-duration);
          animation-duration: var(--slideshow-slide-transition-duration);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: var(--ease-out);
          animation-timing-function: var(--ease-out);
}

.js .slideshow--transition-slide .slideshow__item > * {
  /* hide content of not-visible items so that they are not focusable */
  visibility: hidden;
}

.js .slideshow--transition-slide .slideshow__item--selected > * {
  /* show content of selected item  */
  visibility: visible;
}

.js .slideshow--transition-slide .slideshow__item--slide-in-left {
  /* visible item - enter from left to right */
  -webkit-animation-name: slide-in-left;
          animation-name: slide-in-left;
}

.js .slideshow--transition-slide .slideshow__item--slide-in-right {
  /* visible item - enter from right to left */
  -webkit-animation-name: slide-in-right;
          animation-name: slide-in-right;
}

.js .slideshow--transition-slide .slideshow__item--slide-out-left {
  /*  leaving item - leave from left to right */
  -webkit-animation-name: slide-out-left;
          animation-name: slide-out-left;
}

.js .slideshow--transition-slide .slideshow__item--slide-out-right {
  /*  leaving item - leave from right to left */
  -webkit-animation-name: slide-out-right;
          animation-name: slide-out-right;
}

.js .slideshow--transition-slide .slideshow__item--slide-out-left,
.js .slideshow--transition-slide .slideshow__item--slide-out-right {
  z-index: 2;
}

.js .slideshow--transition-slide .slideshow__item--slide-out-left.slideshow__item--selected,
.js .slideshow--transition-slide .slideshow__item--slide-out-right.slideshow__item--selected {
  z-index: 3;
  /*  fix bug on browsers not supporting CSS animations */
}

.js .slideshow--transition-slide .slideshow__item--slide-out-left > *,
.js .slideshow--transition-slide .slideshow__item--slide-out-right > * {
  visibility: visible;
}

@-webkit-keyframes slide-in-left {
  0% {
    visibility: visible;
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes slide-in-left {
  0% {
    visibility: visible;
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

@-webkit-keyframes slide-in-right {
  0% {
    visibility: visible;
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes slide-in-right {
  0% {
    visibility: visible;
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@-webkit-keyframes slide-out-left {
  0% {
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}

@keyframes slide-out-left {
  0% {
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}

@-webkit-keyframes slide-out-right {
  0% {
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

@keyframes slide-out-right {
  0% {
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

/* parallax animation  */
.js .slideshow--transition-prx .slideshow__item {
  -webkit-animation-duration: var(--slideshow-prx-transition-duration);
          animation-duration: var(--slideshow-prx-transition-duration);
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: var(--ease-out);
          animation-timing-function: var(--ease-out);
}

.js .slideshow--transition-prx .slideshow__item > * {
  /* hide content of not-visible items so that they are not focusable  */
  visibility: hidden;
}

.js .slideshow--transition-prx .slideshow__item--selected > * {
  /* show content of selected item  */
  visibility: visible;
}

.js .slideshow--transition-prx .slideshow__item--prx-in-left {
  /* visible item - enter from left to right */
  -webkit-animation-name: prx-in-left;
          animation-name: prx-in-left;
}

.js .slideshow--transition-prx .slideshow__item--prx-in-right {
  /* visible item - enter from right to left */
  -webkit-animation-name: prx-in-right;
          animation-name: prx-in-right;
}

.js .slideshow--transition-prx .slideshow__item--prx-out-left {
  /* leaving item - leave from left to right */
  -webkit-animation-name: prx-out-left;
          animation-name: prx-out-left;
}

.js .slideshow--transition-prx .slideshow__item--prx-out-right {
  /* leaving item - leave from right to left */
  -webkit-animation-name: prx-out-right;
          animation-name: prx-out-right;
}

.js .slideshow--transition-prx .slideshow__item--prx-out-left,
.js .slideshow--transition-prx .slideshow__item--prx-out-right {
  z-index: 2;
}

.js .slideshow--transition-prx .slideshow__item--prx-out-left.slideshow__item--selected,
.js .slideshow--transition-prx .slideshow__item--prx-out-right.slideshow__item--selected {
  z-index: 3;
  /* fix bug on browsers not supporting CSS animations */
}

.js .slideshow--transition-prx .slideshow__item--prx-out-left > *,
.js .slideshow--transition-prx .slideshow__item--prx-out-right > * {
  visibility: visible;
}

@-webkit-keyframes prx-in-left {
  0% {
    visibility: visible;
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes prx-in-left {
  0% {
    visibility: visible;
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(0);
  }
}

@-webkit-keyframes prx-in-right {
  0% {
    visibility: visible;
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@keyframes prx-in-right {
  0% {
    visibility: visible;
    transform: translateX(100%);
  }
  100% {
    transform: translateX(0);
  }
}

@-webkit-keyframes prx-out-left {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    opacity: 0.3;
    transform: translateX(40%);
  }
}

@keyframes prx-out-left {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    opacity: 0.3;
    transform: translateX(40%);
  }
}

@-webkit-keyframes prx-out-right {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    opacity: 0.3;
    transform: translateX(-40%);
  }
}

@keyframes prx-out-right {
  0% {
    opacity: 1;
    visibility: visible;
    transform: translateX(0);
  }
  100% {
    opacity: 0.3;
    transform: translateX(-40%);
  }
}

/* touch swipe enabled */
.js .slideshow[data-swipe="on"] .slideshow__content {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.js .slideshow[data-swipe="on"] .slideshow__content img {
  pointer-events: none;
}

/* slideshow arrow controls */
.slideshow__control {
  display: none;
}

.js .slideshow[data-controls="hover"] .slideshow__control {
  opacity: 0;
  /*  hide arrows */
  transition: opacity .3s;
}

.js .slideshow[data-controls="hover"]:hover .slideshow__control {
  opacity: 1;
  /*  show arrows on hover */
}

.js .slideshow[data-swipe="on"] .slideshow__control {
  display: none;
  /*  hide arrows on mobile if swipe is enabled */
}

.js .slideshow__control {
  display: block;
  position: absolute;
  z-index: 4;
  top: 50%;
  transform: translateY(-50%);
}

.js .slideshow__control:first-of-type {
  left: var(--slideshow-btn-offset);
}

.js .slideshow__control:last-of-type {
  right: var(--slideshow-btn-offset);
}

@media (min-width: 64rem) {
  .js .slideshow[data-swipe="on"] .slideshow__control {
    display: block;
    /*  show arrow controls */
  }
}

.slideshow__btn {
  display: block;
  background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.75);
  /*  IE fallback */
  height: var(--slideshow-btn-height);
  width: var(--slideshow-btn-width);
  border-radius: var(--radius-md);
  cursor: pointer;
  transition: background .2s, transform 0.2s;
}

.slideshow__btn:hover {
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.85);
}

.slideshow__btn:hover .icon {
  color: var(--color-bg);
}

.slideshow:not(.slideshow--is-animating) .slideshow__btn:active {
  /*  active effect */
  transform: translateY(2px);
}

.slideshow__btn .icon {
  display: block;
  width: var(--slideshow-btn-icon-size);
  height: var(--slideshow-btn-icon-size);
  margin: 0 auto;
  transition: color .2s;
  color: var(--color-white);
  /*  IE fallback */
}

@supports (grid-area: auto) {
  .slideshow__btn {
    background-color: transparent;
    /*  button color */
  }
  .slideshow__btn .icon {
    color: var(--color-contrast-higher);
    /*  icon color */
  }
}

/* slideshow navigation */
.slideshow__navigation {
  /*  created in JS */
  position: absolute;
  z-index: 4;
  bottom: 0;
  width: 100%;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: transparent;
}

.slideshow__nav-item {
  display: inline-block;
  /*  flex fallback */
  margin: 0 var(--space-xxxs);
}

.slideshow__nav-item button {
  /*  dot */
  display: block;
  position: relative;
  font-size: 8px;
  /*  dot size */
  color: var(--color-contrast-high);
  /*  dot color */
  height: 1em;
  width: 1em;
  border-radius: 50%;
  background-color: currentColor;
  opacity: 0.4;
  cursor: pointer;
  transition: background .3s;
}

.slideshow__nav-item button::before {
  /*  focus circle */
  content: '';
  position: absolute;
  top: calc(50% - 0.5em);
  left: calc(50% - 0.5em);
  height: 1em;
  width: 1em;
  font-size: 14px;
  border-radius: inherit;
  border: 1px solid var(--color-contrast-high);
  opacity: 0;
  transform: scale(0);
  transition: 0.3s;
}

.slideshow__nav-item button:focus {
  outline: none;
}

.slideshow__nav-item button:focus::before {
  opacity: 1;
  transform: scale(1);
}

.slideshow__nav-item--selected button {
  opacity: 1;
}

@media (min-width: 64rem) {
  .slideshow__navigation {
    height: 40px;
  }
  .slideshow__nav-item button {
    font-size: 10px;
    /*  dot size */
  }
  .slideshow__nav-item button::before {
    /*  focus circle */
    font-size: 16px;
  }
}

:root, [data-theme="default"] {
  /* main */
  --color-primary-darker: hsl(221, 73%, 34%);
  --color-primary-darker-h: 221;
  --color-primary-darker-s: 73%;
  --color-primary-darker-l: 34%;
  /* Dark Blue */
  --color-primary-dark: hsl(208, 93%, 53%);
  --color-primary-dark-h: 208;
  --color-primary-dark-s: 93%;
  --color-primary-dark-l: 53%;
  --color-primary: hsl(208, 93%, 63%);
  --color-primary-h: 208;
  --color-primary-s: 93%;
  --color-primary-l: 63%;
  /* Primary */
  --color-primary-light: hsl(208, 93%, 73%);
  --color-primary-light-h: 208;
  --color-primary-light-s: 93%;
  --color-primary-light-l: 73%;
  --color-primary-lighter: hsl(208, 100%, 93%);
  --color-primary-lighter-h: 208;
  --color-primary-lighter-s: 100%;
  --color-primary-lighter-l: 93%;
  /* Lightest Blue */
  --color-accent-darker: hsl(32, 100%, 31%);
  --color-accent-darker-h: 32;
  --color-accent-darker-s: 100%;
  --color-accent-darker-l: 31%;
  --color-accent-dark: hsl(32, 100%, 41%);
  --color-accent-dark-h: 32;
  --color-accent-dark-s: 100%;
  --color-accent-dark-l: 41%;
  --color-accent: hsl(32, 100%, 51%);
  --color-accent-h: 32;
  --color-accent-s: 100%;
  --color-accent-l: 51%;
  /* Accent */
  --color-accent-light: hsl(32, 100%, 61%);
  --color-accent-light-h: 32;
  --color-accent-light-s: 100%;
  --color-accent-light-l: 61%;
  --color-accent-lighter: hsl(32, 100%, 71%);
  --color-accent-lighter-h: 32;
  --color-accent-lighter-s: 100%;
  --color-accent-lighter-l: 71%;
  --color-grey-darker: hsl(215, 5%, 56%);
  --color-grey-darker-h: 215;
  --color-grey-darker-s: 5%;
  --color-grey-darker-l: 56%;
  /* Dark Grey */
  --color-grey-dark: hsl(215, 14%, 73%);
  --color-grey-dark-h: 215;
  --color-grey-dark-s: 14%;
  --color-grey-dark-l: 73%;
  --color-grey: hsl(215, 14%, 83%);
  --color-grey-h: 215;
  --color-grey-s: 14%;
  --color-grey-l: 83%;
  /* Light Grey */
  --color-grey-light: hsl(215, 14%, 92%);
  --color-grey-light-h: 215;
  --color-grey-light-s: 14%;
  --color-grey-light-l: 92%;
  --color-grey-lighter: hsl(215, 14%, 100%);
  --color-grey-lighter-h: 215;
  --color-grey-lighter-s: 14%;
  --color-grey-lighter-l: 100%;
  --color-black: hsl(224, 23%, 16%);
  --color-black-h: 224;
  --color-black-s: 23%;
  --color-black-l: 16%;
  /* Darkest */
  --color-white: hsl(0, 0%, 100%);
  --color-white-h: 0;
  --color-white-s: 0%;
  --color-white-l: 100%;
  /* White */
  /* feedback */
  --color-warning-darker: hsl(47, 100%, 30%);
  --color-warning-darker-h: 47;
  --color-warning-darker-s: 100%;
  --color-warning-darker-l: 30%;
  --color-warning-dark: hsl(47, 100%, 40%);
  --color-warning-dark-h: 47;
  --color-warning-dark-s: 100%;
  --color-warning-dark-l: 40%;
  --color-warning: hsl(47, 100%, 50%);
  --color-warning-h: 47;
  --color-warning-s: 100%;
  --color-warning-l: 50%;
  --color-warning-light: hsl(47, 100%, 60%);
  --color-warning-light-h: 47;
  --color-warning-light-s: 100%;
  --color-warning-light-l: 60%;
  --color-warning-lighter: hsl(47, 100%, 70%);
  --color-warning-lighter-h: 47;
  --color-warning-lighter-s: 100%;
  --color-warning-lighter-l: 70%;
  --color-success-darker: hsl(97, 74%, 15%);
  --color-success-darker-h: 97;
  --color-success-darker-s: 74%;
  --color-success-darker-l: 15%;
  --color-success-dark: hsl(97, 74%, 25%);
  --color-success-dark-h: 97;
  --color-success-dark-s: 74%;
  --color-success-dark-l: 25%;
  --color-success: hsl(120, 100%, 27%);
  --color-success-h: 120;
  --color-success-s: 100%;
  --color-success-l: 27%;
  --color-success-light: hsl(97, 74%, 45%);
  --color-success-light-h: 97;
  --color-success-light-s: 74%;
  --color-success-light-l: 45%;
  --color-success-lighter: hsl(97, 74%, 55%);
  --color-success-lighter-h: 97;
  --color-success-lighter-s: 74%;
  --color-success-lighter-l: 55%;
  --color-error-darker: hsl(351, 78%, 24%);
  --color-error-darker-h: 351;
  --color-error-darker-s: 78%;
  --color-error-darker-l: 24%;
  --color-error-dark: hsl(351, 78%, 34%);
  --color-error-dark-h: 351;
  --color-error-dark-s: 78%;
  --color-error-dark-l: 34%;
  --color-error: hsl(0, 100%, 55%);
  --color-error-h: 0;
  --color-error-s: 100%;
  --color-error-l: 55%;
  --color-error-light: hsl(351, 78%, 54%);
  --color-error-light-h: 351;
  --color-error-light-s: 78%;
  --color-error-light-l: 54%;
  --color-error-lighter: hsl(351, 78%, 64%);
  --color-error-lighter-h: 351;
  --color-error-lighter-s: 78%;
  --color-error-lighter-l: 64%;
  --color-yellow: hsl(46, 100%, 50%);
  --color-yellow-h: 46;
  --color-yellow-s: 100%;
  --color-yellow-l: 50%;
  /* color contrasts */
  --color-bg: hsl(0, 0%, 100%);
  --color-bg-h: 0;
  --color-bg-s: 0%;
  --color-bg-l: 100%;
  --color-contrast-lower: hsl(0, 0%, 95%);
  --color-contrast-lower-h: 0;
  --color-contrast-lower-s: 0%;
  --color-contrast-lower-l: 95%;
  --color-contrast-low: hsl(240, 1%, 83%);
  --color-contrast-low-h: 240;
  --color-contrast-low-s: 1%;
  --color-contrast-low-l: 83%;
  --color-contrast-medium: hsl(240, 1%, 48%);
  --color-contrast-medium-h: 240;
  --color-contrast-medium-s: 1%;
  --color-contrast-medium-l: 48%;
  --color-contrast-high: hsl(240, 4%, 20%);
  --color-contrast-high-h: 240;
  --color-contrast-high-s: 4%;
  --color-contrast-high-l: 20%;
  --color-contrast-higher: hsl(240, 8%, 12%);
  --color-contrast-higher-h: 240;
  --color-contrast-higher-s: 8%;
  --color-contrast-higher-l: 12%;
  /* gradients */
  --gradient-primary-stop-1: hsl(201, 91%, 45%);
  --gradient-primary-stop-1-h: 201;
  --gradient-primary-stop-1-s: 91%;
  --gradient-primary-stop-1-l: 45%;
  --gradient-primary-stop-2: hsl(221, 73%, 34%);
  --gradient-primary-stop-2-h: 221;
  --gradient-primary-stop-2-s: 73%;
  --gradient-primary-stop-2-l: 34%;
}

/* background color */
.bg-grey-darker {
  background-color: hsla(var(--color-grey-darker-h), var(--color-grey-darker-s), var(--color-grey-darker-l), var(--bg-o, 1));
}

.bg-grey-dark {
  background-color: hsla(var(--color-grey-dark-h), var(--color-grey-dark-s), var(--color-grey-dark-l), var(--bg-o, 1));
}

.bg-grey {
  background-color: hsla(var(--color-grey-h), var(--color-grey-s), var(--color-grey-l), var(--bg-o, 1));
}

.bg-grey-light {
  background-color: hsla(var(--color-grey-light-h), var(--color-grey-light-s), var(--color-grey-light-l), var(--bg-o, 1));
}

.bg-grey-lighter {
  background-color: hsla(var(--color-grey-lighter-h), var(--color-grey-lighter-s), var(--color-grey-lighter-l), var(--bg-o, 1));
}

/* background gradient */
.bg-gradient-primary {
  background-image: radial-gradient(var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.bg-gradient-primary-top {
  background-image: linear-gradient(0deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.bg-gradient-primary-right {
  background-image: linear-gradient(90deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.bg-gradient-primary-bottom {
  background-image: linear-gradient(180deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.bg-gradient-primary-left {
  background-image: linear-gradient(270deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

/* border color */
.border-grey-darker {
  border-color: hsla(var(--color-grey-darker-h), var(--color-grey-darker-s), var(--color-grey-darker-l), var(--bg-o, 1));
}

.border-grey-dark {
  border-color: hsla(var(--color-grey-dark-h), var(--color-grey-dark-s), var(--color-grey-dark-l), var(--bg-o, 1));
}

.border-grey {
  border-color: hsla(var(--color-grey-h), var(--color-grey-s), var(--color-grey-l), var(--bg-o, 1));
}

.border-grey-light {
  border-color: hsla(var(--color-grey-light-h), var(--color-grey-light-s), var(--color-grey-light-l), var(--bg-o, 1));
}

.border-grey-lighter {
  border-color: hsla(var(--color-grey-lighter-h), var(--color-grey-lighter-s), var(--color-grey-lighter-l), var(--bg-o, 1));
}

/* --------------------------------

(START) Global editor code https://codyhouse.co/ds/globals/spacing

--------------------------------

👇 uncomment to modify default spacing scale
:root {
  --space-unit:  1em;
}

:root, * {
  --space-xxxxs: calc(0.125 * var(--space-unit)); 
  --space-xxxs:  calc(0.25 * var(--space-unit));
  --space-xxs:   calc(0.375 * var(--space-unit));
  --space-xs:    calc(0.5 * var(--space-unit));
  --space-sm:    calc(0.75 * var(--space-unit));
  --space-md:    calc(1.25 * var(--space-unit));
  --space-lg:    calc(2 * var(--space-unit));
  --space-xl:    calc(3.25 * var(--space-unit));
  --space-xxl:   calc(5.25 * var(--space-unit));
  --space-xxxl:  calc(8.5 * var(--space-unit));
  --space-xxxxl: calc(13.75 * var(--space-unit));
  --component-padding: var(--space-md);
} */
@supports (--css: variables) {
  @media (min-width: 64rem) {
    :root {
      --space-unit:  1.25em;
    }
  }
}

/* --------------------------------

(END) Global editor code

-------------------------------- */
/* Move Up */
.section-move-up, .section-move-up-sm, .section-move-up-to-header {
  z-index: 9;
  position: relative;
}

.section-move-up {
  margin-top: -100px;
}

@media (min-width: 64rem) {
  .section-move-up {
    margin-top: -200px;
  }
}

@media (min-width: 64rem) {
  .section-move-up-to-header {
    margin-top: -170px;
  }
}

@media (min-width: 64rem) {
  .section-move-up-sm {
    margin-top: -70px;
  }
}

:root {
  /* radius */
  --radius: 0.25em;
  /*  border radius base size */
  /* 👇 uncomment to modify default radius values
  --radius-sm: calc(var(--radius)/2);
  --radius-md: var(--radius);
  --radius-lg: calc(var(--radius)*2); */
  /* box shadow - 👇 uncomment to modify default shadow values
  --shadow-xs:  0 0.1px 0.3px rgba(0, 0, 0, 0.06),
                0 1px 2px rgba(0, 0, 0, 0.12);
  --shadow-sm:  0 0.3px 0.4px rgba(0, 0, 0, 0.025),
                0 0.9px 1.5px rgba(0, 0, 0, 0.05), 
                0 3.5px 6px rgba(0, 0, 0, 0.1);
  --shadow-md:  0 0.9px 1.5px rgba(0, 0, 0, 0.03), 
                0 3.1px 5.5px rgba(0, 0, 0, 0.08), 
                0 14px 25px rgba(0, 0, 0, 0.12);
  --shadow-lg:  0 1.2px 1.9px -1px rgba(0, 0, 0, 0.014), 
                0 3.3px 5.3px -1px rgba(0, 0, 0, 0.038), 
                0 8.5px 12.7px -1px rgba(0, 0, 0, 0.085), 
                0 30px 42px -1px rgba(0, 0, 0, 0.15);
  --shadow-xl:  0 1.5px 2.1px -6px rgba(0, 0, 0, 0.012), 
                0 3.6px 5.2px -6px rgba(0, 0, 0, 0.035), 
                0 7.3px 10.6px -6px rgba(0, 0, 0, 0.07), 
                0 16.2px 21.9px -6px rgba(0, 0, 0, 0.117), 
                0 46px 60px -6px rgba(0, 0, 0, 0.2); */
}

/* --------------------------------

(START) Global editor code https://codyhouse.co/ds/globals/shared-styles

-------------------------------- */
.hover\:reduce-opacity {
  opacity: 1;
  transition: all 0.3s ease;
}

.hover\:reduce-opacity:hover {
  opacity: 0.8;
}

/* text styles */
.link-subtle {
  color: inherit;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease;
}

.link-subtle:hover {
  color: var(--color-primary);
}

/* Five Columns */
.col-five-columns {
  max-width: 20%;
}

@media (max-width: 1024px) {
  .col-five-columns {
    max-width: 50%;
  }
}

@media (max-width: 512px) {
  .col-five-columns {
    max-width: 100%;
  }
}

/* --------------------------------

(END) Global editor code

-------------------------------- */
:root {
  /* font family */
  --font-primary: 'Cabin', sans-serif;
  --font-secondary: 'Poppins', sans-serif;
  --font-tertiary: 'Cabin Condensed', sans-serif;
  --font-quaternary: 'Permanent Marker', cursive;
  /* font size */
  --text-base-size: 1em;
  /*  body font-size */
  --text-scale-ratio: 1.2;
  /* multiplier used to generate the type scale values 👇 */
  /* line-height */
  --body-line-height: 1.4;
  --heading-line-height: 1.2;
  /* capital letters - used in combo with the lhCrop mixin */
  --font-primary-capital-letter: 1;
  --font-secondary-capital-letter: 1;
  --font-tertiary-capital-letter: 1;
  --font-quaternary-capital-letter: 1;
  /* unit - don't modify unless you want to change the typography unit (e.g., from Em to Rem units) */
  --text-unit: 1em;
  /* if not Em units → --text-unit: var(--text-base-size); */
}

:root, * {
  /* type scale */
  --text-xs: .75em;
  --text-sm: .875em;
  --text-md: 1.125em;
  --text-lg: calc(var(--text-md) * var(--text-scale-ratio));
  --text-xl: calc(var(--text-lg) * var(--text-scale-ratio));
  --text-xxl: calc(var(--text-xl) * var(--text-scale-ratio));
  --text-xxxl: calc(var(--text-xxl) * var(--text-scale-ratio));
  --text-xxxxl: calc(var(--text-xxxl) * var(--text-scale-ratio));
}

@supports (--css: variables) {
  @media (min-width: 64rem) {
    :root {
      --text-base-size: 1em;
      --text-scale-ratio: 1.25;
    }
  }
}

body {
  font-family: var(--font-primary);
}

h1, .h1_formatted, h2, .h2_formatted, h3, .h3_formatted, h4, .h4_formatted {
  font-weight: 400;
}

h1, .h1_formatted, h2, .h2_formatted, h5, .h5_formatted {
  font-family: var(--font-secondary);
}

h3, .h3_formatted, h6, .h6_formatted {
  font-family: var(--font-tertiary);
}

h4, .h4_formatted, h6, .h6_formatted {
  text-transform: uppercase;
}

h5, h6, .h6_formatted {
  font-weight: bold;
}

h4, .h4_formatted {
  font-family: var(--font-quaternary);
}

h4.alt, .h4_formatted.alt {
  text-transform: none;
  font-family: var(--font-primary);
  font-size: 1.125em;
  line-height: 1.325em;
}

h1, .h1_formatted {
  font-size: 2.1875rem;
  line-height: 2.5rem;
}

@media (min-width: 48rem) {
  h1, .h1_formatted {
    font-size: 3.125em;
    line-height: 3.4375rem;
  }
}

.h2_formatted {
  font-size: 2.250em;
  min-height: 90px;
}

h3, .h3_formatted {
  font-size: 1.50rem;
  line-height: 2.125rem;
}

@media (min-width: 64rem) {
  h3, .h3_formatted {
    font-size: 1.750rem;
    line-height: 34px;
  }
}

h4, .h4_formatted {
  font-size: 1.5rem;
}

h4, .h4_formatted {
  font-family: var(--font-quaternary);
}

h4.alt, .h4_formatted.alt {
  text-transform: none;
  font-family: var(--font-primary);
  font-size: 1.125em;
  line-height: 1.325em;
}

h4.highlight, .h4_formatted.highlight {
  font-size: 2rem;
}

h5, .h5_formatted {
  font-size: 1.1875em;
}

h6, .h6_formatted {
  font-size: 1em;
  color: var(--color-primary-darker);
  letter-spacing: 1px;
}

p {
  font-size: 1.125em;
  line-height: 1.625em;
}

/* Custom Links */
.arrow-link {
  color: var(--color-black);
  text-decoration: none;
  text-transform: uppercase;
  position: relative;
  margin-right: 25px;
  display: inline-block;
}

.arrow-link.white {
  color: var(--color-white);
}

.arrow-link::after {
  content: '\f054';
  font-family: 'Font Awesome 5 Free';
  font-weight: 900;
  color: var(--color-accent);
  margin-left: 12px;
  position: absolute;
  right: -25px;
  top: 50%;
  transform: translateY(-50%);
  transition: all 0.3s ease-in-out;
}

.arrow-link:hover::after {
  right: -35px;
}

button.arrow-link {
  background: transparent;
  border: none;
  font-family: var(--font-tertiary);
}

/* font family */
.font-primary {
  font-family: var(--font-primary);
}

.font-secondary {
  font-family: var(--font-secondary);
}

.font-tertiary {
  font-family: var(--font-tertiary);
}

.font-quaternary {
  font-family: var(--font-quaternary);
  color: var(--color-primary-darker);
}

/* color */
.color-grey-darker {
  color: hsla(var(--color-grey-darker-h), var(--color-grey-darker-s), var(--color-grey-darker-l), var(--color-o, 1));
}

.color-grey-dark {
  color: hsla(var(--color-grey-dark-h), var(--color-grey-dark-s), var(--color-grey-dark-l), var(--color-o, 1));
}

.color-grey {
  color: hsla(var(--color-grey-h), var(--color-grey-s), var(--color-grey-l), var(--color-o, 1));
}

.color-grey-light {
  color: hsla(var(--color-grey-light-h), var(--color-grey-light-s), var(--color-grey-light-l), var(--color-o, 1));
}

.color-grey-lighter {
  color: hsla(var(--color-grey-lighter-h), var(--color-grey-lighter-s), var(--color-grey-lighter-l), var(--color-o, 1));
}

/* gradient */
.color-gradient-primary-top {
  background-image: linear-gradient(0deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.color-gradient-primary-right {
  background-image: linear-gradient(90deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.color-gradient-primary-bottom {
  background-image: linear-gradient(180deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

.color-gradient-primary-left {
  background-image: linear-gradient(270deg, var(--gradient-primary-stop-1), var(--gradient-primary-stop-2));
}

/* Misc */
.pelican-heading-label {
  text-transform: uppercase;
  color: var(--color-primary-darker);
  font-size: 1em;
  font-weight: 800;
  letter-spacing: 1px;
  display: block;
}

.pelican-large-slashes {
  font-size: var(--text-xxxl);
  margin-right: 20px;
  font-weight: normal;
  color: var(--color-accent);
}

.highlight-accent {
  color: var(--color-accent);
  margin: 0 12px;
}

:root {
  /* size - 👇 uncomment to modify default icon sizes */
  /* --icon-xxxs: 8px; */
  /* --icon-xxs:  12px; */
  /* --icon-xs:   16px; */
  /* --icon-sm:   24px; */
  /* --icon-md:   32px; */
  /* --icon-lg:   48px; */
  /* --icon-xl:   64px; */
  /* --icon-xxl:  96px; */
  /* --icon-xxxl: 128px; */
}

.icon {
  /* 👇 include the font-family declaration here if you are using an icon font */
  /* font-family: 'fontName'; */
}

html {
  background: #fff;
}

@media (min-width: 64rem) {
  .rotate-img {
    transform: rotate(-6deg);
  }
}

.max-content-size {
  /* height: -webkit-max-content; */
  /* height: -moz-max-content; */
  /* height: max-content; */
}

@media (max-width: 64em) {
  .pelican-mobile-iframe {
    --aspect-ratio: 16/9;
    position: relative;
    height: 0;
    padding-bottom: calc(100%/(var(--aspect-ratio)));
  }
  .pelican-mobile-iframe > * {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

/* --------------------------------

 (START) Global editor code https:codyhouse.co/ds/globals/buttons

 --------------------------------
 */
:root {
  --btn-padding-y: var(--space-xxs);
  /*  padding top/bottom */
  --btn-padding-x: var(--space-sm);
  /* padding left/right */
  --btn-radius: 0.25em;
  /* border radius */
  --btn-font-size: 1em;
  /* font size */
}

.btn {
  /* style affecting all buttons */
  line-height: 1.2;
  box-shadow: var(--shadow-xs);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: .2s;
}

.btn:hover {
  cursor: pointer;
  box-shadow: var(--shadow-sm);
}

.btn:focus {
  outline: none;
  box-shadow: 0px 0px 0px 2px hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.15);
}

.btn:active {
  transform: translateY(2px);
}

/* themes */
.btn--primary {
  background-color: var(--color-primary);
  color: var(--color-white);
}

.btn--primary:hover {
  background-color: var(--color-primary-dark);
}

.btn--primary:focus {
  box-shadow: 0px 0px 0px 2px hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
}

.btn--subtle {
  background-color: var(--color-contrast-lower);
  color: var(--color-contrast-higher);
}

.btn--accent {
  background-color: var(--color-accent);
  color: var(--color-white);
}

.btn--accent:hover {
  background-color: var(--color-accent-dark);
}

.btn--accent:focus {
  box-shadow: 0px 0px 0px 2px hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.2);
}

/*  feedback */
.btn--disabled,
.btn[disabled],
.btn[readonly] {
  opacity: 0.6;
  cursor: not-allowed;
}

/* sizes */
.btn--sm {
  font-size: 0.8em;
}

.btn--md {
  font-size: 1.2em;
}

.btn--lg {
  font-size: 1.4em;
}

/* 
 --------------------------------

 (END) Global editor code

 -------------------------------- */
/* --------------------------------

 (START) Global editor code https:codyhouse.co/ds/globals/forms

 -------------------------------- */
:root {
  --form-control-padding-y: var(--space-xxs);
  /* padding top/bottom */
  --form-control-padding-x: var(--space-xs);
  /* padding left/right */
  --form-control-radius: 0.25em;
  /*  border radius */
  --form-control-font-size: 1em;
  /*  font size */
}

.form-control {
  /* basic form element style */
  line-height: 1.2;
  background-color: var(--color-bg);
  border: 2px solid transparent;
  transition: .2s;
}

.form-control::-moz-placeholder {
  opacity: 1;
  color: var(--color-black);
}

.form-control:-ms-input-placeholder {
  opacity: 1;
  color: var(--color-black);
}

.form-control::placeholder {
  opacity: 1;
  color: var(--color-black);
}

.form-control:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 2px hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
}

.form-control--error,
.form-control[aria-invalid="true"] {
  border-color: var(--color-error);
}

.form-control--error:focus,
.form-control[aria-invalid="true"]:focus {
  box-shadow: 0 0 0 2px hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), 0.2);
}

.form-control--disabled,
.form-control[disabled],
.form-control[readonly] {
  cursor: not-allowed;
}

/* 
 --------------------------------

 (END) Global editor code

 --------------------------------
 */
.pelican-label {
  text-transform: uppercase;
  font-size: .875rem;
}

/* Checkout Form */
.pelican-checkout-form select {
  border: 3px solid var(--color-primary-darker);
}

.pelican-checkout-form .form-control {
  padding-right: 2rem;
  width: 100%;
}

.pelican-checkout-form .pelican-form-input-container {
  position: relative;
}

.pelican-checkout-form .pelican-form-input-container::after {
  font-size: 1rem;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.pelican-checkout-form .pelican-form-input-container.pelican-valid::after {
  content: '\f058';
  color: var(--color-success);
}

.pelican-checkout-form .pelican-form-input-container.pelican-invalid::after {
  content: '\f06a';
  color: var(--color-error);
}

.pelican-checkout-form .pelican-form-input-container .select::after {
  font-size: 1rem;
  position: absolute;
  bottom: 1rem;
  right: 1rem;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
}

.pelican-checkout-form .pelican-form-input-container .select.pelican-valid::after {
  content: '\f058';
  color: var(--color-success);
}

.pelican-checkout-form .pelican-form-input-container .select.pelican-invalid::after {
  content: '\f06a';
  color: var(--color-error);
}

.pelican-checkout-form .pelican-form-input-container .select i {
  padding-right: 40px;
}

.pelican-checkout-form .form-control[aria-invalid="false"] {
  border-color: var(--color-success);
}

.error-message {
  color: var(--color-error);
  font-size: .875rem;
  display: none;
}

.pelican-shipping-calendar .container {
  width: 210px;
  background: var(--color-primary);
  color: var(--color-black);
}

.pelican-shipping-calendar .container .cal {
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 2px;
}

.pelican-shipping-calendar .cal {
  display: block;
  width: 210px;
  background: #efefef;
  font-weight: normal;
  color: var(--color-black);
}

.pelican-shipping-calendar .cal a {
  text-decoration: none;
}

.pelican-shipping-calendar .cal caption {
  display: block;
  line-height: 25px;
  font-weight: bold;
  color: #FFF;
  text-align: center;
  background: #5580C8;
  border-top-right-radius: 5px;
  border-top-left-radius: 5px;
}

.pelican-shipping-calendar .cal caption a {
  display: block;
  line-height: 25px;
  padding: 0 10px;
  font-size: 12px;
  color: #e2e2e2;
}

.pelican-shipping-calendar .cal caption a:hover {
  color: white;
}

.pelican-shipping-calendar .cal caption .prev {
  float: left;
}

.pelican-shipping-calendar .cal caption .next {
  float: right;
}

.pelican-shipping-calendar .cal th, .pelican-shipping-calendar .cal td {
  width: 28px;
  text-align: center;
  text-shadow: 0 1px rgba(255, 255, 255, 0.8);
}

.pelican-shipping-calendar .cal th:first-child, .pelican-shipping-calendar .cal td:first-child {
  border-left: 0px none;
}

.pelican-shipping-calendar .cal th {
  line-height: 20px;
  font-size: 8px;
  color: #696969;
  text-transform: uppercase;
  background: #fff;
  border-left: 1px solid #f3f3f3;
  font-weight: bold;
}

.pelican-shipping-calendar .cal td {
  font-size: 11px;
  text-align: center;
  width: 28px;
  height: 25px;
  position: relative;
  padding: 1px;
}

.pelican-shipping-calendar .cal td a {
  clear: both;
  display: block;
  position: relative;
  width: 25px;
  line-height: 20px;
  color: #1957BD;
}

.pelican-shipping-calendar .cal td a:hover, .pelican-shipping-calendar .cal td.off a {
  background: #f3f3f3;
}

.pelican-shipping-calendar .cal td.off a {
  color: #b3b3b3;
}

.pelican-shipping-calendar .cal td.active a, .pelican-shipping-calendar .cal td a:active {
  margin: -1px;
  color: #C60000;
  background-image: url("circle_red1.png");
}

.pelican-shipping-calendar .cal td.active:first-child a, .pelican-shipping-calendar .cal td:first-child a:active {
  border-left: 0px none;
  margin-left: 0;
}

.pelican-shipping-calendar .cal td.active:last-child a, .pelican-shipping-calendar .cal td:last-child a:active {
  border-right: 0px none;
  margin-right: 0;
}

.pelican-shipping-calendar .cal tr:last-child td.active a, .pelican-shipping-calendar .cal tr:last-child td a:active {
  border-bottom: 0px none;
  margin-bottom: 0;
}

.pelican-shipping-calendar .cal img {
  max-width: none;
}

#pelican-page-container {
  overflow: hidden;
}

.main-footer {
  position: relative;
  margin-top: 70px;
}

.main-footer::before {
  content: '';
  background: url(../img/ripped-tear-divider.svg) no-repeat top left 10%/120% 100%;
  height: 120px;
  width: 100%;
  position: absolute;
  top: -40px;
  left: 0;
  z-index: 9;
}

.main-footer, .main-footer a {
  color: var(--color-white);
}

.main-footer a {
  text-decoration: none;
}

.main-footer a i {
  transition: .3s;
}

.main-footer a.main-footer__social:hover i {
  color: var(--color-white);
}

.main-footer ul a:not(.main-footer__social) {
  border-bottom: 2px solid transparent;
}

.main-footer ul a:not(.main-footer__social):hover {
  border-color: var(--color-primary);
}

.main-footer i {
  color: var(--color-accent);
}

/* Footer Info Area  */
.main-footer_site_info {
  position: relative;
  padding-top: 120px;
  margin-top: 50px;
  background: url(../img/footer-background-texture2.jpg) no-repeat center center/cover;
  overflow: hidden;
}

.main-footer_site_info .container {
  position: relative;
}

.main-footer_site_info .h6_formatted {
  color: var(--color-white);
  padding-bottom: .5em;
  letter-spacing: 1px;
}

.main-footer_site_info .angle-right, .main-footer_site_info .angle-tag, .main-footer_site_info .angle-right a, .main-footer_site_info .angle-tag a {
  color: var(--color-black);
}

.main-footer_site_info .angle-tag {
  z-index: 9;
  margin-bottom: 1em;
  padding-left: 1em;
  min-height: 4.69rem;
}

.main-footer_site_info .angle-tag:before, .main-footer_site_info .angle-tag:after {
  min-height: 4.69rem;
}

.main-footer_site_info .angle-tag:after {
  content: '';
  background: var(--color-accent);
  height: 100%;
  width: 1000px;
  position: absolute;
  left: -900px;
  top: 0;
  z-index: -9;
}

.main-footer_site_info .angle-tag a {
  font-size: 1.5em;
}

@media (min-width: 64rem) {
  .main-footer_site_info .angle-tag:after {
    content: '';
    width: 1000px;
    left: -900px;
  }
}

.main-footer_site_info .angled-button, .main-footer_site_info .impact-button {
  margin-right: 1.2em;
  margin-left: 1.1em;
  padding: 12px;
  font-size: .875rem;
}

.main-footer_site_info .indent-icon {
  position: relative;
}

.main-footer_site_info .indent-icon span {
  margin-left: 2em;
  display: block;
}

.main-footer_site_info .indent-icon i {
  position: absolute;
  top: .3em;
  left: 0;
}

/* Copyright  */
.main-footer__colophon {
  background: var(--color-primary-darker);
}

/* Additional Header Area */
.pelican-additional-header {
  height: 20px;
  background: var(--color-black);
  color: var(--color-white);
}

.header--is-down .pelican-additional-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99;
}

/* Super Header */
.super-header {
  background: var(--color-primary-darker);
  background-image: linear-gradient(90deg, var(--color-primary-darker) 0%, var(--color-primary-darker) 75%, var(--color-accent) 75%);
}

@media (min-width: 64rem) {
  .super-header > div {
    position: relative;
  }
  .super-header > div::after {
   width: 3000px;
    height: 100%;
    position: absolute;
    right: -2999px;
    top: 0;
    content: '';
    background: var(--color-accent);
  }
}

.super-header .bg-alert, .super-header .bg-alert a {
  font-family: var(--font-secondary);
}

.super-header .bg-alert a:hover {
  font-weight: bold;
  text-decoration: underline;
  color: var(--color-black);
}

.super-header .primary_color .header-v2__nav-dropdown {
  left: -14px;
}

/* Selector Header */
.header-selector {
  background: linear-gradient(#234bab 0%, #0a93db 100%);
}
/* Selector classes */
@media (min-width: 64rem) {
	.label-selected {
		opacity: 0.4;
	}
	.veh-selector-spinner {
		margin: 0 auto; 
		position: absolute;
		top: 40%;
		left:47%;
	}
}
@media (max-width: 64rem) {
	.label-selected {
		background-color: #cccccc;
	}
	.veh-selector-spinner {
		margin: 0 auto; 
		position: absolute;
		top: 43%;
		left:35%;
	}	
}
.working-overlay {
	display: none;
	background-color: black; 
	position: fixed; 
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	border: 1px; 
	z-index: 1000; 
	opacity: .8;
}
.img-spinner {
	width:100px;
	height:100px;
}

@media (max-width: 64rem) {
  .header-selector .dropdown__menu--is-visible {
    position: relative !important;
  }
}

@media (min-width: 64rem) {
  .header-selector > div {
    position: relative;
  }
  .header-selector > div::after {
    width: 3000px;
    height: 100%;
    position: absolute;
    left: -2999px;
    top: 0;
    content: '';
    background: var(--color-accent);
  }
}

.header-selector .bg-alert {
  padding-bottom: 1.5em;
}

@media (min-width: 1023px) {
  .header-selector span {
    display: block;
  }
  .header-selector .bg-alert {
    padding-bottom: 1em;
  }
}

@media (max-width: 64em) {
  .header-selector .drop-container {
    margin-top: -25px;
  }
}

@media (min-width: 1023px) and (max-width: 1600px) {
  .header-selector {
    background: #ff8b03;
    background: linear-gradient(90deg, #ff8b03 15%, #234bab 15%, #0a93db 100%);
  }
}

@media (min-width: 1600px) and (max-width: 1800px) {
  .header-selector {
    background: linear-gradient(90deg, #ff8b03 20%, #234bab 20%, #0a93db 100%);
  }
}

@media (min-width: 1800px) {
  .header-selector {
    background: linear-gradient(90deg, #ff8b03 25%, #234bab 25%, #0a93db 100%);
  }
}

.header-selector .dropdown {
  z-index: 9;
}

.header-selector .dropdown.disabled {
  display: none;
}

@media (min-width: 64rem) {
  .header-selector .dropdown.disabled {
    display: block;
  }
}

.header-selector .bg-alert {
  width: 90%;
  padding-left: 1em;
}

@media (max-width: 64em) {
  .header-selector .bg-alert {
    width: 70%;
  }
}

.header-selector .bg-alert p {
  position: relative;
  z-index: 9;
  font-weight: bold;
}

.header-selector .bg-alert::after {
  width: 40%;
  content: '';
  top: 0;
  height: 100%;
  left: -30%;
  position: absolute;
  background: var(--color-accent);
}

@media (min-width: 64rem) {
  .header-selector .bg-alert {
    width: auto;
  }
  .header-selector .bg-alert::after {
    display: none;
  }
}

/* Main Header */
.main-footer__logo {
  max-width: 250px;
}

@media (max-width: 48rem) {
  .header-v2__nav-list li {
    display: inline;
  }
  .header-v2__nav-list li a, .header-v2__nav-list li .fa-search {
    padding-right: .3rem;
    padding-left: .3rem;
  }
  .header-v2__nav-list li .fa-phone {
    padding-left: .5rem;
  }
  .header-v2__nav-list li .pelican-shopping-cart-indicator {
    padding-right: .3rem;
    padding-left: .3rem;
  }
}

@media (max-width: 48rem) {
  .header-v2__nav-list .circle-button {
    background: none;
    color: var(--color-primary-darker);
  }
}

.header-v2__nav-list .pelican-shopping-cart-indicator {
  position: relative;
}

.header-v2__nav-list .pelican-shopping-cart-indicator:hover span {
  background: var(--color-primary-darker);
  color: var(--color-white);
}

.header-v2__nav-list .pelican-shopping-cart-indicator span {
  position: absolute;
  top: -.5rem;
  right: -.8rem;
  border-radius: 50% 50%;
  background: var(--color-primary);
  padding: .2rem .5rem;
  font-size: .7rem;
  transition: .3s;
  color: var(--color-black);
}

.header-v2__nav-list .mobile-header-icon i {
  color: var(--color-primary-darker);
}

@media (min-width: 48rem) {
  .header-v2__nav-list .mobile-header-icon {
    display: none;
  }
}

.mobile-promo {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  color: var(--color-black);
}

/* Header with no selector */
.header-border {
  border-bottom: 1px solid var(--color-grey);
  margin-bottom: 0em;
}

/* Header of add to cart  */
.pelican-header-alt-social a {
  text-decoration: none;
}

.pelican-header-alt-social a span {
  color: var(--color-black);
}

@media (max-width: 64em) {
  .pelican-header-alt-social div i.fa-comments, .pelican-header-alt-social div div, .pelican-header-alt-social div a {
    display: inline-block;
    padding-left: .5rem;
    padding-right: .4rem;
    font-size: 1rem;
    color: var(--color-primary-darker);
  }
  .pelican-header-alt-social div .circle-button {
    background: none;
  }
}

/* Vehicle List  */
.pelican-vehicle-list li {
  position: relative;
  display: block;
}

.pelican-vehicle-list li i {
  position: absolute;
  top: 40%;
  right: .5rem;
}

@media (max-width: 64em) {
  .pelican-vehicle-list li i {
    top: 27%;
    right: 1rem;
  }
}

.pelican-vehicle-list li a {
  padding-right: .8rem;
}

.js-sidebar {
  z-index: 2 !important;
}

.js-sidebar.pelican-article-sticky-sidebar {
  border-radius: 1rem;
  border-bottom: 1px solid var(--color-black);
}

@media (min-width: 64rem) {
  .js-sidebar {
    z-index: 2 !important;
  }
}

@media (min-width: 64rem) {
  .js-sidebar {
    margin-top: 0px;
  }
}

@media (max-width: 64em) {
  .js-sidebar.pelican-sidebar-drawer {
    z-index: 99999 !important;
  }
}

#pelican-shopping-sticky-sidebar {
  overflow-y: visible;
  overflow-x: visible;
}


.header--is-down #pelican-shopping-sticky-sidebar {
  z-index: 9 !important;
}

.pelican-article-sticky-sidebar .sidebar__panel {
  border-left: 1px solid var(--color-black);
  border-right: 1px solid var(--color-black);
  width: calc(100% - 2px);
}

.pelican-interior-slider-content {
  background: var(--color-white);
}

@media (max-width: 64em) {
  #show-sidebar {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 9999;
    border-radius: 0;
    padding: .5rem;
  }
  #show-sidebar.hide {
    display: none;
  }
}

.sidebar-heading, #sidebar-title, .sidebar .sidebar__header {
  background: var(--color-accent);
  color: var(--color-black);
  text-transform: uppercase;
  font-weight: bold;
  font-size: 1.125rem;
  font-family: var(--font-primary);
  width: calc(100% + 3px);
  margin-left: -1px;
}

.sidebar__panel {
  padding-bottom: 20px;
}

.sidebar .part-type h3 {
  margin-top: 0;
  font-size: 1.125em;
  font-weight: bold;
  font-family: var(--font-primary);
}

.sidebar .part-type p.text-sm {
  line-height: 1.1rem;
}

.sidebar .part-type .btn-standard {
  padding: .4em;
}

.sidebar .part-type img {
  width: 100px;
}

.sidebar .h5_formatted {
  font-size: 1rem;
  margin-bottom: .5rem;
}

.sidebar-emphasis {
  font-size: 1.25rem;
}

/* Blur Ripped Container */
.sidebar-blue-ad {
  background: url(../img/sidebar-blue-ripped-bg.svg) no-repeat top left/100% 100%;
  padding: 3rem 3.5rem 5rem 3.5rem;
  max-width: 300px;
}

@media (max-width: 935px) {
  .sidebar-blue-ad {
    max-width: 100%;
    width: 400px;
    margin: 0 auto;
  }
}

.sidebar-blue-ad .marker-writting {
  font-family: var(--font-quaternary);
  font-size: 1.875rem;
  line-height: 2.2rem;
  color: var(--color-white);
  margin-bottom: 1rem;
}

.sidebar-blue-ad a {
  color: var(--color-black);
  font-size: 1.125rem;
  text-decoration: none;
  letter-spacing: 1px;
  font-family: var(--font-tertiary);
  text-transform: uppercase;
}

.sidebar-blue-ad a:hover {
  color: var(--color-white);
}

/* Basic Sidebar */
.sidebar-basic {
  font-size: .875rem;
}

.sidebar-basic > li {
  border-bottom: 1px solid var(--color-primary);
}

.sidebar-basic > li:not(.selected) {
  padding: 1rem;
}

.sidebar-basic > li:not(.selected) > a {
  border-bottom: 3px solid transparent;
}

.sidebar-basic > li:not(.selected):hover > a {
  border-color: var(--color-accent);
}

.sidebar-basic > li:last-child {
  border-color: transparent;
}

.sidebar-basic li.selected {
  border-color: transparent;
}

.sidebar-basic li.selected > a {
  color: var(--color-white);
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
  padding: 1rem;
  display: block;
}

.sidebar-basic a {
  color: var(--color-black);
  text-decoration: none;
}

.sidebar-basic li ul {
  background: var(--color-primary-lighter);
  padding-left: 1rem;
  padding-right: 1rem;
  position: relative;
  margin-bottom: 30px;
}

.sidebar-basic li ul:after {
  content: '';
  position: absolute;
  left: .95rem;
  height: 30px;
  width: 101%;
  display: block;
  margin-left: -1rem;
  background: url(../img/sidebar-bottom.svg) no-repeat bottom left/100% 30px;
}

.sidebar-basic li ul li {
  padding: .8rem;
}

.sidebar-basic li ul li a {
  border-bottom: 3px solid transparent;
}

.sidebar-basic li ul li:hover a {
  border-color: var(--color-accent);
}

.sidebar-basic li ul li.active a {
  border-color: var(--color-accent);
}

.sidebar-basic.back-arrows > li:not(.selected) {
  position: relative;
  padding-left: .5rem;
}

.sidebar-basic.back-arrows > li:not(.selected)::before {
  position: absolute;
  left: .5rem;
  top: 35%;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0d9";
  display: inline;
}

.sidebar-basic.back-arrows > li > a {
  padding-left: 1rem;
}

.sidebar-basic.forward-arrows > li:not(.selected) {
  position: relative;
  padding-right: .5rem;
}

.sidebar-basic.forward-arrows > li:not(.selected)::before {
  position: absolute;
  right: .5rem;
  top: 35%;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0da";
  display: inline;
}

@media (max-width: 64em) {
  .sidebar-basic.mobile-sub-nav > li:not(.selected) {
    display: none;
  }
  .sidebar-basic.mobile-sub-nav .selected {
    position: relative;
  }
  .sidebar-basic.mobile-sub-nav .selected > a {
    background: var(--color-primary-lighter);
    border-radius: 30px;
    color: var(--color-black);
  }
  .sidebar-basic.mobile-sub-nav .selected:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content: "\f0d7";
    position: absolute;
    right: .8rem;
    top: .5rem;
    color: var(--color-white);
    transition: .3s;
    background: var(--color-primary-darker);
    padding: .6rem .8rem;
    border-radius: 50%;
  }
  .sidebar-basic.mobile-sub-nav .selected:hover ul {
    display: block;
  }
  .sidebar-basic.mobile-sub-nav .selected:hover:after {
    transform: rotate(180deg);
  }
  .sidebar-basic.mobile-sub-nav .selected ul {
    position: absolute;
    top: 100%;
    width: 100%;
    z-index: 9;
    display: none;
    background: var(--color-white);
    box-shadow: var(--shadow-sm);
    padding-left: 0;
    padding-right: 0;
  }
  .sidebar-basic.mobile-sub-nav .selected ul:after {
    display: none;
  }
  .sidebar-basic.mobile-sub-nav .selected ul li:hover {
    background: var(--color-primary-darker);
  }
  .sidebar-basic.mobile-sub-nav .selected ul li:hover a {
    border-color: transparent;
    font-weight: normal;
    color: var(--color-white);
  }
}

.pelican-sidebar-nav-collapse {
  font-size: .875rem;
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
}

.pelican-sidebar-nav-collapse ul {
  border: 0px;
}

.pelican-sidebar-nav-collapse ul li {
  list-style-type: none;
  margin-bottom: 8px;
  border: 0px;
  background: var(--color-primary-lighter);
  font-size: .875rem;
}

.pelican-sidebar-nav-collapse ul li a {
  border-bottom: 3px solid transparent;
  text-decoration: none;
  color: var(--color-black);
  font-size: .875rem;
}

.pelican-sidebar-nav-collapse ul li a:hover {
  border-color: var(--color-accent);
  font-weight: bold;
}

.pelican-sidebar-nav-collapse ul .accordion__item button {
  text-transform: uppercase;
}

.pelican-sidebar-nav-collapse ul .accordion__item button[aria-expanded="true"] {
  color: var(--color-white);
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
}

.pelican-sidebar-nav-collapse ul .accordion__item .accordion__panel {
  padding-top: 16px;
}

/* Sidebar filter */
.sidebar-filter {
  background: var(--color-primary-lighter);
  position: relative;
}

.sidebar-filter:after {
  content: '';
  position: absolute;
  left: -2px;
  height: 30px;
  width: calc(100% + 4px);
  display: block;
  background: url(../img/sidebar-bottom.svg) no-repeat bottom left/100% 30px;
}

@media (min-width: 64rem) {
  .sidebar-filter:after {
    left: .95rem;
    width: 101%;
    margin-left: -1rem;
  }
}

.sidebar-filter li {
  font-size: .875rem;
}

.sidebar-filter a {
  text-decoration: none;
  color: var(--color-black);
}

.sidebar-filter > li {
  position: relative;
}

.sidebar-filter > li:before {
  width: 100%;
  height: 5px;
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
  bottom: 0;
  left: 0;
  content: '';
  position: absolute;
}

.sidebar-filter > li:last-child:before {
  display: none;
}

.sidebar-filter > li > span {
  display: block;
  padding: 1rem;
  text-transform: uppercase;
  font-weight: bold;
}

.sidebar-filter > li:after {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0d7";
  position: absolute;
  right: 1.2rem;
  top: 1.1rem;
  color: var(--color-black);
  transition: .3s;
}

.sidebar-filter > li.open > span {
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
  color: var(--color-white);
}

.sidebar-filter > li.open:after {
  color: var(--color-white);
  transform: rotate(180deg);
}

.sidebar-filter > li.open > ul {
  display: block;
}

.sidebar-filter > li > ul {
  padding: 1rem;
  display: none;
}

.sidebar-filter > li > ul li {
  display: block;
}

.sidebar-filter > li > ul li a {
  border-bottom: 2px solid transparent;
  margin: 0 .8rem .8rem;
  display: inline-block;
}

.sidebar-filter > li > ul li a:hover {
  border-color: var(--color-accent);
}

.sidebar-filter > li > ul li.active a {
  border-color: var(--color-accent);
}

.sidebar-filter .pelican-has-children ul li ul {
  max-height: 250px;
  overflow-y: scroll;
}

.sidebar-filter .pelican-sub-back > a::before {
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: "\f0d9";
  display: inline;
  padding-right: .5rem;
}

/* // Sidebar Sticky Primary */
.pelican-sticky-side-primary {
  padding-top: 65px;
}

.header--is-down .pelican-sticky-side-primary {
  padding-top: 125px;
}

.sidebar--sticky-on-desktop {
  padding-top: 0;
}

/* -------------------------------- 

File#: _1_filter-navigation
Title: Filter Navigation
Descr: Filter navigation template
Usage: codyhouse.co/license

-------------------------------- */
/*   --expanded version */
.filter-nav--expanded .filter-nav__nav {
  display: flex;
  overflow: auto;
  padding: var(--space-xs) 0;
}

.filter-nav--expanded .filter-nav__list {
  display: inline-flex;
  position: relative;
}

.filter-nav--expanded .filter-nav__item {
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.filter-nav--expanded .filter-nav__btn {
  /* <button> element inside each list item */
  margin: 0 var(--space-xxxs);
  padding: var(--space-xxxs) var(--space-xs);
  color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.5);
  cursor: pointer;
  transition: color .2s;
}

.filter-nav--expanded .filter-nav__btn:hover {
  color: var(--color-contrast-higher);
}

.filter-nav--expanded .filter-nav__btn[aria-current="true"] {
  color: var(--color-primary);
}

.filter-nav--expanded .filter-nav__marker {
  /*  animated marker */
  display: none;
}

/*  --collapsed version - available horizontal space not enough to contain all list items */
.filter-nav--collapsed .filter-nav__wrapper {
  position: fixed;
  z-index: var(--zindex-overlay);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.9);
  visibility: hidden;
  opacity: 0;
}

.filter-nav--collapsed .filter-nav__wrapper--is-visible {
  visibility: visible;
  opacity: 1;
  transition: opacity .3s;
  z-index: 999999;
}

.filter-nav--collapsed .filter-nav__wrapper--is-visible .filter-nav__nav {
  transform: translateY(0);
  transition: transform .3s;
}

.filter-nav--collapsed .filter-nav__nav {
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  background-color: var(--color-bg);
  box-shadow: var(--shadow-md);
  max-height: 100%;
  transform: translateY(-1em);
}

.filter-nav--collapsed .filter-nav__list {
  order: 2;
  flex-direction: column;
  overflow: auto;
  padding: 0 0 var(--space-md);
}

.filter-nav--collapsed .filter-nav__list::before {
  /*  top shadow - visible if menu height triggers vertical scrolling */
  content: '';
  display: block;
  width: 100%;
  height: 10px;
  background: linear-gradient(hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), 1), hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), 0));
  position: sticky;
  top: 0;
  left: 0;
  z-index: 1;
}

.filter-nav--collapsed .filter-nav__btn {
  display: block;
  /* fallback */
  display: flex;
  align-items: center;
  width: 100%;
  text-align: left;
  font-size: var(--text-md);
  padding: var(--space-xs) var(--space-sm);
  color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.5);
  cursor: pointer;
}

.filter-nav--collapsed .filter-nav__btn:hover {
  color: var(--color-contrast-higher);
}

.filter-nav--collapsed .filter-nav__btn[aria-current="true"] {
  color: var(--color-accent);
}

.filter-nav--collapsed .filter-nav__btn::before {
  /*  check icon next to the selected button */
  content: '';
  display: block;
  height: 1em;
  width: 1em;
  margin-right: var(--space-xxxs);
  background-color: transparent;
}

.filter-nav--collapsed .filter-nav__btn[aria-current="true"]::before {
  background-color: var(--color-accent);
  /*  icon color */
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http: www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolyline stroke-width='1.5' stroke='%23000000' fill='none' stroke-linecap='round' stroke-linejoin='round' points='1,9 5,13 15,3 '/%3E%3C/svg%3E");
          mask-image: url("data:image/svg+xml,%3Csvg xmlns='http: www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpolyline stroke-width='1.5' stroke='%23000000' fill='none' stroke-linecap='round' stroke-linejoin='round' points='1,9 5,13 15,3 '/%3E%3C/svg%3E");
}

.filter-nav--collapsed .filter-nav__marker {
  /*  hide animated marker */
  display: none !important;
}

.filter-nav--collapsed .filter-nav__close-btn {
  /*  X button */
  display: flex;
  order: 1;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  margin: var(--space-xs) var(--space-xs) 0 auto;
  width: 2em;
  height: 2em;
  justify-content: center;
  align-items: center;
  border-radius: 50%;
  background-color: var(--color-bg);
  box-shadow: var(--shadow-sm);
  transition: .2s;
}

.filter-nav--collapsed .filter-nav__close-btn:hover {
  background-color: var(--color-bg);
  box-shadow: var(--shadow-md);
}

.filter-nav--collapsed .filter-nav__close-btn .icon {
  display: block;
  color: var(--color-contrast-high);
}

/*   no js */
html:not(.js) .filter-nav__nav {
  justify-content: left;
}

/* -------------------------------- 

File#: _1_list
Title: List
Descr: Custom list component
Usage: codyhouse.co/license

-------------------------------- */
.list, .text-component .list {
  --list-v-space: 0.85;
  /*  control vertical space */
  --list-offset: 1;
  /*   control offset of sublists */
  padding-left: 0;
  list-style: none;
}

.list ul, .list ol, .text-component .list ul, .text-component .list ol {
  list-style: none;
  margin: 0;
  /* reset */
  margin-top: calc(var(--space-xxxs) * var(--list-v-space, 1));
  padding-top: calc(var(--space-xxxs) * var(--list-v-space, 1));
  padding-left: calc(var(--space-xs) * var(--list-offset, 1));
}

.list li, .text-component .list li {
  padding-bottom: calc( var(--space-xxxs) * var(--list-v-space, 1));
  margin-bottom: calc( var(--space-xxxs) * var(--list-v-space, 1));
}

.list > li:last-child, .list ul > li:last-child, .list ol > li:last-child, .text-component .list > li:last-child, .text-component .list ul > li:last-child, .text-component .list ol > li:last-child {
  margin-bottom: 0;
}

.list:not(.list--border) > li:last-child, .list ul > li:last-child, .list ol > li:last-child, .text-component .list:not(.list--border) > li:last-child, .text-component .list ul > li:last-child, .text-component .list ol > li:last-child {
  padding-bottom: 0;
}

.list--ul li, .list--ol li {
  padding-left: calc(var(--bullet-size) + var(--bullet-margin-right));
}

.list--ul li::before, .list--ol li::before {
  width: var(--bullet-size);
  height: var(--bullet-size);
  margin-left: calc(var(--bullet-size) * -1);
  display: inline-flex;
  vertical-align: middle;
  position: relative;
  left: calc(var(--bullet-margin-right) * -1);
}

.list--ul {
  /*   unordered list */
  --bullet-size: 7px;
  /*  dot width and height */
  --bullet-margin-right: var(--space-xxs);
  /*  gap between bullet and content */
}

.list--ul li::before {
  /*  bullet */
  content: '';
  border-radius: 50%;
  color: var(--color-primary);
  /*  bullet color */
  background-color: currentColor;
  border: 2px solid currentColor;
}

.list--ul ul li::before {
  background-color: transparent;
}

.list--ol {
  /*  ordered list */
  --bullet-size: 26px;
  /*  ⚠️ use px or rem units - circle width and height */
  --bullet-margin-right: 6px;
  /*  ⚠️ use px or rem units - gap between circle and content */
  counter-reset: list-items;
}

.list--ol li {
  counter-increment: list-items;
}

.list--ol ol {
  counter-reset: list-items;
}

.list--ol li::before {
  content: counter(list-items);
  font-size: 0.75em;
  justify-content: center;
  align-items: center;
  top: -0.1em;
  border-radius: 50%;
  background-color: var(--color-contrast-lower);
  border: 2px solid var(--color-contrast-lower);
  color: var(--color-contrast-high);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.list--ol ol li::before {
  background-color: transparent;
}

.list--border show divider among list items li:not(:last-child) {
  border-bottom: 1px solid hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.15);
}

.list--border ul, .list--border ol {
  border-top: 1px solid hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.15);
}

.dash-list {
  text-indent: -18px;
  margin-left: 18px;
}

.dash-list li:before {
  content: '\002F \002F';
  color: var(--color-accent);
  padding-right: 8px;
}

/* -------------------------------- 

File#: _1_menu
Title: Menu
Descr: Application menu that provides access to a set of functionalities
Usage: codyhouse.co/license

-------------------------------- */
.menu {
  --menu-vertical-gap: 4px;
  /* vertical gap between the Menu element and its control */
  --menu-item-padding: var(--space-xxs) var(--space-sm);
  list-style: none;
  width: 220px;
  position: fixed;
  /*  top/left position set in JS */
  background-color: var(--color-bg);
  box-shadow: var(--shadow-md);
  padding: var(--space-xxs) 0;
  border-radius: var(--radius-md);
  z-index: var(--zindex-popover);
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  margin-top: var(--menu-vertical-gap);
  margin-bottom: var(--menu-vertical-gap);
  overflow: auto;
  /*   reset spacing and text units - no longer affected by em units */
  --space-unit:  1rem;
  --text-unit: 1rem;
  font-size: var(--text-unit);
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s .2s, opacity .2s;
}

.menu--is-visible {
  visibility: visible;
  opacity: 1;
  transition: visibility 0s, opacity .2s;
}

.menu--overlay {
  z-index: var(--zindex-overlay);
}

.menu__content {
  display: block;
  /*   fallback */
  display: flex;
  align-items: center;
  text-decoration: none;
  /*  reset link style */
  padding: var(--menu-item-padding);
  color: var(--color-contrast-high);
  cursor: pointer;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.menu__content:hover {
  background-color: var(--color-contrast-lower);
}

.menu__content:focus {
  outline: none;
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.1);
}

.menu__label {
  padding: var(--menu-item-padding);
  font-size: var(--text-sm);
  color: var(--color-contrast-medium);
}

.menu__separator {
  height: 1px;
  background-color: var(--color-contrast-low);
  margin: var(--menu-item-padding);
}

.menu__icon {
  color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.7);
  margin-right: var(--space-xxs);
}

/* -------------------------------- 

File#: _2_menu-bar
Title: Menu Bar
Descr: Application menu with a list of common actions that users can perform
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --menu-bar-button-size: 2.5em;
  /*  size of the menu buttons */
  --menu-bar-icon-size: 1em;
  /*  size of the icons inside the buttons */
  --menu-bar-horizontal-gap: var(--space-xxs);
  /*  horizontal gap between buttons */
  --menu-bar-vertical-gap: 4px;
  /*  vertical gap between buttons and labels (tooltips) */
  --menu-bar-label-size: var(--text-xs);
  /*  label font size */
}

.menu-bar {
  list-style: none;
  display: inline-flex;
  align-items: center;
}

.menu-bar__item {
  /*  menu button */
  position: relative;
  display: inline-block;
  /* flex fallback */
  display: flex;
  align-items: center;
  justify-content: center;
  height: var(--menu-bar-button-size);
  width: var(--menu-bar-button-size);
  border-radius: 50%;
  cursor: pointer;
  transition: background-color .2s;
}

.menu-bar__item:not(:last-child) {
  margin-right: var(--menu-bar-horizontal-gap);
}

.menu-bar__item:hover, .menu-bar__item.menu-control--active {
  background-color: var(--color-contrast-lower);
}

.menu-bar__item:hover > .menu-bar__icon, .menu-bar__item.menu-control--active > .menu-bar__icon {
  color: var(--color-contrast-higher);
}

.menu-bar__item:hover > .menu-bar__label, .menu-bar__item.menu-control--active > .menu-bar__label {
  /*  show label */
  clip: auto;
  -webkit-clip-path: none;
          clip-path: none;
  height: auto;
  width: auto;
}

.menu-bar__item:focus {
  outline: none;
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.1);
}

.menu-bar__item:active {
  background-color: var(--color-contrast-low);
}

.menu-bar__item:focus:active {
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
}

.menu-bar__item--trigger {
  /*  button used to show hidden actions - visibile only if menu = collapsed */
  display: none;
}

.menu-bar__icon {
  display: block;
  color: var(--color-contrast-high);
  font-size: var(--menu-bar-icon-size);
  /*  set icon size */
  transition: color .2s;
}

.menu-bar__label {
  /*  label visible on :hover */
  /*   hide */
  position: absolute;
  z-index: var(--zindex-popover);
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  /*   style */
  top: 100%;
  left: 50%;
  transform: translateX(-50%) translateY(var(--menu-bar-vertical-gap));
  padding: var(--space-xxs) var(--space-xs);
  color: var(--color-bg);
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.95);
  border-radius: var(--radius-md);
  font-size: var(--menu-bar-label-size);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.menu-bar--collapsed {
  /*  mobile layout style */
}

.menu-bar--collapsed .menu-bar__item--hide {
  /*  hide buttons  */
  display: none;
}

.menu-bar--collapsed .menu-bar__item--trigger {
  /*  show submenu trigger */
  display: inline-block;
  /*  flex fallback */
  display: flex;
}

/*   detect when the menu needs to switch from the mobile layout to an expanded one - used in JS */
.js .menu-bar {
  opacity: 0;
  /*  hide menu bar while it is initialized in JS */
}

.js .menu-bar::before {
  display: none;
  content: 'collapsed';
}

.js .menu-bar--loaded {
  opacity: 1;
}

@media (min-width: 32rem) {
  .js .menu-bar--expanded\@xs::before {
    content: 'expanded';
  }
}

@media (min-width: 48rem) {
  .js .menu-bar--expanded\@sm::before {
    content: 'expanded';
  }
}

@media (min-width: 64rem) {
  .js .menu-bar--expanded\@md::before {
    content: 'expanded';
  }
}

@media (min-width: 71.25rem) {
  .js .menu-bar--expanded\@lg::before {
    content: 'expanded';
  }
}

@media (min-width: 90rem) {
  .js .menu-bar--expanded\@xl::before {
    content: 'expanded';
  }
}

/* -------------------------------- 

File#: _2_product-card-v2
Title: Product Card v2
Descr: A selection of product information used as a teaser for further content
Usage: codyhouse.co/license

-------------------------------- */
.prod-card-v2 {
  --rating-icon-size: 28px;
  position: relative;
}

.prod-card-v2__img-link {
  display: block;
  position: relative;
  overflow: hidden;
}

.prod-card-v2__img-link img {
  display: block;
  width: 100%;
  transition: .3s;
}

.prod-card-v2__img-link img:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
}

.prod-card-v2__img-link:hover img:nth-child(1) {
  opacity: 0.85;
}

.prod-card-v2__img-link:hover img:nth-child(2) {
  opacity: 1;
}

.prod-card-v2__badge {
  position: absolute;
  z-index: 1;
  top: var(--space-sm);
  right: var(--space-sm);
  background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.9);
  padding: var(--space-xxs) var(--space-sm);
  border-radius: var(--radius-md);
  pointer-events: none;
  font-size: var(--text-sm);
  color: var(--color-white);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.product-card-v2__title {
  color: var(--color-contrast-higher);
  text-decoration: none;
  font-weight: bold;
}

.product-card-v2__title:hover {
  text-decoration: underline;
}

.prod-card-v2__price {
  text-decoration: none;
}

.prod-card-v2__old-price {
  color: var(--color-contrast-medium);
  text-decoration: line-through;
}

.prod-card-v2__old-price::before {
  content: 'original price';
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

/* -------------------------------- 

File#: _3_lightbox
Title: Lightbox
Descr: A modal media gallery
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --lightbox-thumbnail-size: 80px;
  /* thumbnail width */
  --lightbox-thumbnail-grid-gap: var(--space-xxs);
  /* gap among thumbnails */
}

.lightbox .menu-bar {
  --menu-bar-button-size: 2.2em;
  /* size of the menu buttons */
  --menu-bar-icon-size: 1.2em;
  /* size of the icons inside the buttons */
  --menu-bar-horizontal-gap: var(--space-xxs);
  /* horizontal gap between buttons */
  --menu-bar-vertical-gap: 4px;
  /* vertical gap between buttons and labels (tooltips) */
  --menu-bar-label-size: var(--text-xs);
  /* label font size */
}

.lightbox .slideshow {
  --slideshow-btn-width: 1.6em;
  /* slideshow button width */
  --slideshow-btn-height: 3.2em;
  /* slideshow button height */
  --slideshow-btn-icon-size: 1.6em;
  /* slideshow button icon size */
  --slideshow-btn-offset: var(--component-padding);
  /* gap between button and slideshow edges */
}

/* modal window style */
.lightbox {
  background-color: var(--color-bg);
}

.lightbox .slideshow__content {
  position: relative;
}

.lightbox__content {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

.lightbox__header,
.lightbox__footer {
  position: relative;
  z-index: 2;
  flex-shrink: 0;
}

.lightbox__header {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding: var(--space-xs) var(--component-padding) 0;
}

.lightbox__footer {
  padding: var(--space-sm) var(--component-padding) var(--space-xs);
}

.lightbox__title {
  font-size: var(--text-md);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-right: var(--space-sm);
}

.lightbox__body {
  position: relative;
  z-index: 1;
  flex-grow: 1;
  padding: var(--space-md);
  /* slideshow padding */
}

@media (min-width: 64rem) {
  .lightbox__body {
    padding-top: var(--space-xs);
    padding-bottom: var(--space-xs);
    padding-right: calc(var(--space-xs) + var(--slideshow-btn-width) + var(--slideshow-btn-offset));
    padding-left: calc(var(--space-xs) + var(--slideshow-btn-width) + var(--slideshow-btn-offset));
  }
}

/* slideshow style */
.js .lightbox {
  --slideshow-height: 100%;
  /* update slideshow height - inherited from Slideshow component */
}

.js .lightbox .slideshow {
  display: flex;
  align-items: stretch;
}

.js .lightbox .slideshow__content {
  flex-grow: 1;
}

.lightbox--no-transition .slideshow__content * {
  /* used in JS to select the first visible slide */
  transition: none !important;
  -webkit-animation: none !important;
          animation: none !important;
}

/* single slide content style */
.lightbox__media {
  /* figure element wrapping images/videos/iframes */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
  max-height: 100%;
  max-width: 100%;
}

.lightbox__media-outer {
  position: relative;
  width: 100%;
  flex-grow: 1;
}

.lightbox__media[data-media="video"] .lightbox__media-outer,
.lightbox__media[data-media="iframe"] .lightbox__media-outer {
  max-width: 100%;
  max-height: 100%;
  overflow: hidden;
}

.lightbox__media-inner {
  position: absolute;
  width: 100%;
}

.lightbox__media[data-media="img"] .lightbox__media-inner {
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.lightbox__media[data-media="img"] .lightbox__media-inner img {
  display: inline-block;
  height: auto;
  width: auto;
  max-height: 100%;
}

.lightbox__media[data-media="video"] .lightbox__media-inner,
.lightbox__media[data-media="iframe"] .lightbox__media-inner {
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}

.lightbox__caption {
  /* img/video caption */
  flex-shrink: 0;
  text-align: center;
  max-width: 600px;
  margin-top: var(--space-xs);
  font-size: var(--text-sm);
}

.lightbox__text-outer {
  /* slide with text content */
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  overflow: hidden;
}

.lightbox__text {
  overflow: auto;
}

.lightbox__media-outer {
  /* flex fallback */
  min-height: 200px;
}

@supports (display: flex) {
  .lightbox__media-outer {
    min-height: 0;
  }
}

/* thumbnails list style */
.lightbox_thumb-nav {
  display: flex;
  width: 100%;
  overflow: hidden;
}

.lightbox_thumb-list {
  display: inline-flex;
  overflow: auto;
  flex-wrap: nowrap;
}

.lightbox_thumb-list:hover .lightbox__thumb {
  /* reduce opacity of not selected thumbs on hover */
  opacity: 0.6;
}

.lightbox__thumb {
  display: inline-block;
  /* flex-fallback */
  width: var(--lightbox-thumbnail-size);
  height: var(--lightbox-thumbnail-size);
  border-radius: var(--radius-sm);
  margin-right: var(--lightbox-thumbnail-grid-gap);
  flex-shrink: 0;
  flex-grow: 0;
  cursor: pointer;
  transition: opacity 0.3s;
}

.lightbox__thumb:hover {
  opacity: 1 !important;
}

.lightbox__thumb img {
  display: block;
  border-radius: inherit;
}

@supports ((-o-object-fit: cover) or (object-fit: cover)) {
  .lightbox__thumb img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: 100%;
  }
}

.lightbox__thumb--active {
  position: relative;
  opacity: 1 !important;
}

.lightbox__thumb--active::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.7) url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http: www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg stroke-width='1.5' stroke='%23ffffff'%3E%3Cpolyline fill='none' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10' points='1,9 5,13 15,3 ' %3E%3C/polyline%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
  background-size: 1.25em;
  border-radius: inherit;
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}

/* -------------------------------- 

File#: _3_main-header-v2
Title: Main Header v2
Descr: Accessible website navigation w/ sub navigations
Usage: codyhouse.co/license

-------------------------------- */
:root {
  /*--header-v2-height: 80px;*/
  --header-v2-height: 75px;
}

@media (min-width: 48rem) {
  :root {
    --header-v2-height: 100px;
  }
}

@media (min-width: 71.25rem) {
  :root {
    --header-v2-height: 125px;
  }
}

.header-v2 {
  width: 100vw;
}

.header-v2--expanded {
  /* class added when navigation is visible - small devices only */
}

.header-v2,
.header-v2__wrapper {
  position: relative;
  z-index: var(--zindex-header);
  height: var(--header-v2-height);
}

@media (max-width: 48em) {
  .header-v2,
  .header-v2__wrapper {
    z-index: 99999;
  }
}

@media (max-width: 32em) {
  .header-v2,
  .header-v2__wrapper {
    height: 75px;
  }
}

.header-v2__wrapper.header-v2__wrapper--slides-down {
  height: 100px;
}

@media (max-width: 32em) {
  .header-v2__wrapper.header-v2__wrapper--slides-down {
    height: 75px;
  }
}

.header-v2__wrapper.header-v2__wrapper--slides-down .header-v2__container {
  padding-top: 0 !important;
}

.header-v2__wrapper.header-v2__wrapper--slides-down .header-v2__nav-link-main {
  padding-bottom: 0;
}

.header-v2__container {
  display: flex;
  position: relative;
  height: 100%;
  align-items: center;
  justify-content: space-between;
}

.header-v2__logo {
  flex-shrink: 0;
}

.header-v2__logo a, .header-v2__logo svg {
  display: block;
}

.header-v2__nav-control {
  /*   menu button - visible only on small screens */
  --anim-menu-btn-size: 40px;
  /*   🍔 icon */
  --anim-menu-btn-icon-size: 24px;
  --anim-menu-btn-icon-stroke: 2px;
}

.header-v2__nav {
  /*  main navigation */
  top: var(--header-v2-height);
  left: 0;
  width: 100%;
  padding: var(--space-sm);
  background: var(--color-primary-darker);
  box-shadow: var(--shadow-md);
  z-index: var(--zindex-popover);
  /*   hide */
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  height: 0;
  overflow: hidden;
  visibility: hidden;
}

.header-v2__nav a {
  text-decoration: none;
  padding: 5px;
}

@media (min-width: 48rem) {
  .header-v2__nav {
    background-color: var(--color-bg);
  }
}

.header-v2__nav--is-visible {
  /*  show nav */
  clip: auto;
  -webkit-clip-path: none;
          clip-path: none;
  height: calc(100vh - 80px);
  max-height: calc(100vh - var(--header-v2-height) - var(--space-md));
  overflow: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  visibility: visible;
  position: fixed;
  /*top: 100px;*/
  top: 70px;
  padding-bottom: 100px;
}

.header-v2__nav-list--main:nth-child(2) {
  /*  horizontal divider between main navs */
  border-top: 1px solid var(--color-contrast-low);
  margin-top: var(--space-md);
  padding-top: var(--space-md);
}

.header-v2__nav-item .btn {
  width: 100%;
  /*  make buttons full width on small screens */
  font-size: var(--text-md);
  margin: var(--space-xxs) 0;
}

.header-v2__nav-item--main {
  margin-bottom: var(--space-sm);
}

.header-v2__nav-item--label {
  text-transform: uppercase;
  font-size: 0.6em;
  letter-spacing: 0.1em;
  color: var(--color-contrast-medium);
  padding: var(--space-xxs) 0;
}

.header-v2__nav-item--divider {
  /*  list divider */
  height: 1px;
  background-color: var(--color-contrast-low);
  margin: var(--space-md) 0;
}

.header-v2__nav-item--search-btn {
  display: none;
  /*  hide search btn on small devices */
}

.header-v2__nav-dropdown-icon {
  display: none;
  /*  hide arrow icon on small devices */
}

.header-v2__nav-link {
  display: block;
  /*  fallback */
  display: flex;
  align-items: center;
  text-decoration: none;
}

.header-v2__nav-link:not(.link-angled) {
  padding: var(--space-xs) 0;
}

@media (min-width: 48rem) {
  .header-v2__nav-link:not(.text-prim-color):not(.link-angled) {
    color: var(--color-contrast-high);
    /*  nav links color */
  }
}

@media (min-width: 48rem) {
  .header-v2__nav-link:hover:not(.link-angled), .header-v2__nav-link[aria-current] {
    color: var(--color-primary);
  }
}

/*   nested <ul> v1 -> title + description w/ optional icon */
.header-v2__nav-list--title-desc .header-v2__nav-link {
  display: flex;
}

.header-v2__nav-list--title-desc .header-v2__nav-link .header-v2__nav-icon {
  margin-right: var(--space-xs);
  flex-shrink: 0;
}

.header-v2__nav-list--title-desc .header-v2__nav-link strong {
  /*  title */
  display: block;
}

.header-v2__nav-list--title-desc .header-v2__nav-link small {
  /*  description */
  color: var(--color-contrast-medium);
}

.header-v2__nav-list--title-desc .header-v2__nav-link:hover small {
  color: var(--color-contrast-high);
}

.header-v2__nav-col-2 {
  /*  utility class -> create 2 columns */
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  grid-gap: var(--space-sm);
}

/*   change header style on bigger screens */
@media (min-width: 48rem) {
  .header-v2__nav-list {
    /*   reduce size of all text elements */
  }
  .lower-header {
    font-size: .875em;
  }
  .header-v2[data-animation="on"] .header-v2__wrapper--slides-down {
    transform: translateY(100%);
    box-shadow: var(--shadow-sm);
  }
  .header-v2[data-animation="on"] .header-v2__wrapper--is-fixed, .header-v2[data-animation="on"] .header-v2__wrapper--slides-down {
    position: fixed;
    top: calc(-1 * 100px);
    left: 0;
    width: 100%;
    background-color: var(--color-bg);
    z-index: var(--zindex-fixed-element);
    transition: transform .2s;
  }
  .header-v2__nav-control {
    display: none;
    /*  hide menu btn */
  }
  .header-v2__logo {
    margin-right: var(--space-sm);
  }
  .header-v2__nav {
    /*   make main nav visible */
    position: static;
    clip: auto;
    -webkit-clip-path: none;
            clip-path: none;
    height: auto;
    max-height: none;
    overflow: visible;
    -ms-scroll-chaining: chained;
        overscroll-behavior: auto;
    visibility: visible;
    /*   reset style */
    padding: 0;
    background-color: transparent;
    border-radius: 0;
    box-shadow: none;
    display: flex;
    justify-content: space-between;
  }
  .header-v2__nav-list--main {
    /*  left/right navs */
    display: flex;
    align-items: center;
  }
  .header-v2__nav-item {
    position: relative;
  }
  .header-v2__nav-item .btn {
    /*  reset btn style */
    width: auto;
    font-size: 1em;
    margin: 0;
  }
  .header-v2__nav-item--main {
    /*  main nav items */
    display: inline-block;
    margin-bottom: 0;
    /*  reset */
    z-index: 999;
  }
  .header-v2__nav-item--main > .header-v2__nav-link:not(.link-angled) {
    padding: var(--space-xxs) 0;
  }
  .header-v2__nav-item--main:not(:first-child) {
    margin-left: var(--space-md);
    /*  margin between main nav items */
  }
  .header-v2__nav-item--main.header-v2__nav-item--divider {
    margin-top: 0;
    /* reset */
    margin-bottom: 0;
    /*  reset */
    margin-right: 0;
    /*  reset */
    width: 1px;
    height: 1em;
  }
  .header-v2__nav-list--main:last-child {
    /*   remove horizontal separation between navs */
    border-top: none;
    margin-top: 0;
    padding-top: 0;
    z-index: 9999;
  }
  .header-v2__nav-dropdown-icon {
    display: block;
    /*   arrow icon = visible */
  }
  .header-v2__nav-item--search {
    display: none;
    /*  hide search input */
  }
  .header-v2__nav-item--search-btn {
    display: inline-block;
    /*  show search btn */
  }
  .header-v2__nav-item--search-btn button, .header-v2__nav-item--search-btn .icon {
    display: block;
  }
  .header-v2__nav-item--search-btn button {
    width: 24px;
    height: 24px;
    display: flex;
    justify-content: center;
    align-items: center;
    transition: opacity .2s;
    cursor: pointer;
  }
  .header-v2__nav-item--search-btn button:hover {
    opacity: 0.65;
  }
  .header-v2__nav-dropdown {
    /*  dropdown menu */
    --space-unit:  1rem;
    /*  set space unit = 1rem */
    position: absolute;
    top: 100%;
    left: calc(50% - 100px);
    z-index: var(--zindex-popover);
    width: 200px;
    background-color: var(--color-bg);
    box-shadow: var(--shadow-md);
    transition: opacity .2s, visibility .2s;
    display: none;
    /*   hide */
    visibility: hidden;
    opacity: 0;
  }
  .header-v2__nav-dropdown ul {
    width: 100%;
  }
  .header-v2__nav-item--main > .header-v2__nav-dropdown {
    font-size: 1.1em;
    /*  reduce font-size of all dropdown text elements */
  }
  .header-v2__nav-dropdown .header-v2__nav-link, .header-v2__nav-dropdown .header-v2__nav-item--label {
    padding-left: var(--space-sm);
    padding-right: var(--space-sm);
  }
  .header-v2__nav-dropdown .header-v2__nav-link:hover,
  .header-v2__nav-dropdown .header-v2__nav-link--hover {
    background-color: var(--color-contrast-lower);
  }
  .header-v2__nav-dropdown .header-v2__nav-dropdown--nested {
    /*  sub dropdown */
    left: 100%;
    top: calc(var(--space-xs) * -1);
  }
  .header-v2__nav-dropdown .header-v2__nav-dropdown--nested-left {
    left: auto;
    right: 100%;
  }
  .header-v2__nav-dropdown .header-v2__nav-item--divider {
    margin: var(--space-xs) 0;
  }
  .primary_color .header-v2__nav-dropdown, .primary_color-lt .header-v2__nav-dropdown {
    left: 0;
  }
  .primary_color .header-v2__nav-dropdown a.header-v2__nav-link, .primary_color-lt .header-v2__nav-dropdown a.header-v2__nav-link {
    padding: .7em 1em;
  }
  .header-v2__nav-item--main > .primary_color .header-v2__nav-dropdown, .header-v2__nav-item--main > .primary_color-lt .header-v2__nav-dropdown {
    font-size: 1em;
  }
  .primary_color .header-v2__nav-dropdown {
    background: var(--color-primary-darker);
  }
  .primary_color .header-v2__nav-dropdown a.header-v2__nav-link {
    color: var(--color-white);
  }
  .primary_color .header-v2__nav-dropdown a.header-v2__nav-link:hover {
    background: var(--color-primary-lighter);
    color: var(--color-black);
  }
  .primary_color-lt i, .primary_color i {
    transition: all .3s linear;
  }
  .primary_color-lt:hover > a i, .primary_color:hover > a i {
    transform: rotate(180deg);
  }
  .primary_color-lt {
    padding-left: .5em;
    padding-right: .5em;
  }
  .primary_color-lt:hover, .primary_color-lt a:hover {
    background: var(--color-primary-lighter);
  }
  .primary_color-lt:hover a, .primary_color-lt:hover span, .primary_color-lt:hover i, .primary_color-lt a:hover a, .primary_color-lt a:hover span, .primary_color-lt a:hover i {
    color: var(--color-black);
  }
  .primary_color-lt .header-v2__nav-dropdown {
    background: var(--color-primary-lighter);
  }
  .primary_color-lt .header-v2__nav-dropdown a.header-v2__nav-link {
    color: var(--color-black);
  }
  .primary_color-lt .header-v2__nav-dropdown a.header-v2__nav-link:hover {
    background: var(--color-primary-darker);
    color: var(--color-white);
  }
  .header-v2__nav-dropdown--sm {
    width: 200px;
    left: calc(50% - 100px);
  }
  .header-v2__nav-dropdown--md {
    width: 300px;
    left: calc(50% - 150px);
  }
  .header-v2__nav-dropdown--lg {
    width: 480px;
    left: calc(50% - 240px);
  }
  .header-v2__nav-list--title-desc .header-v2__nav-link {
    padding: var(--space-sm) var(--space-md);
  }
  .header-v2__nav-list--is-visible,
  .header-v2__nav-item--has-children:hover > .header-v2__nav-dropdown {
    /*   show dropdown */
    visibility: visible;
    opacity: 1;
  }
}

.header-v2[data-animation="on"] .header-v2__wrapper--slides-down {
  position: fixed;
  background: white;
  width: 100%;
}

@media (max-width: 48em) {
  .header-v2[data-animation="on"] .header-v2__wrapper--slides-down {
    /*top: 20px; -- black bar*/
	top: 0px;
  }
}

.header-v2__nav-dropdown, .header-v2__nav-list--main {
  display: none;
}

@media (min-width: 48rem) {
  .header-v2__nav-dropdown, .header-v2__nav-list--main {
    display: flex;
  }
}

.header-v2__nav-item--has-children.open .header-v2__nav-dropdown, .header-v2__nav-item--has-children.open .header-v2__nav-list {
  display: block !important;
}

.header-v2__nav-list {
  z-index: 5;
}

@media (max-width: 64em) {
  .header-v2__nav-list {
    font-size: .875rem;
  }
}

@media (max-width: 48em) {
  .header-v2__nav-list {
    font-size: 1rem;
  }
}

.top-nav {
  z-index: 9;
  position: relative;
}

@media (min-width: 64em) {
  .top-nav .rt-side-nav {
    margin-top: .5em;
  }
  .top-nav .header-v2__nav-item--has-children {
    padding-left: 1em;
    padding-right: 1em;
  }
}

@media (max-width: 48em) {
  .top-nav .rt-side-nav, .top-nav .my-car {
    padding-top: .5em;
    padding-bottom: .5em;
  }
}

.lower-header {
  z-index: 5;
}

.lower-header .header-v2__nav-item--has-children {
  padding-left: 1em;
  padding-right: 1em;
}

@media (max-width: 800px) {
  .lower-header .header-v2__nav-item--has-children {
    padding-left: .5em;
    padding-right: .5em;
  }
}

.lower-header .header-v2__nav-item--has-children ul {
  font-size: .875rem;
}

@media (max-width: 48rem) {
  .mobile-indent {
    /*margin-left: 17%;*/
    padding-left: 1rem;
  }
  .vehicle-selector {
    padding-bottom: 1rem;
  }
  .vehicle-selector .btn-standard {
    color: var(--color-black);
  }
  .mobile-border-top {
    border-top: 2px solid var(--color-accent);
  }
  .header-v2__nav-list li.header-v2__nav-item--has-children a {
    position: relative;
    display: block;
  }
  .header-v2__nav-list li.header-v2__nav-item--has-children a i {
    position: absolute;
    right: 1em;
    top: .5em;
  }
  .header-v2__nav-list li.header-v2__nav-item--has-children ul {
    margin-left: 1em;
  }
  .header-v2__nav-list li.mobile-label {
    display: block;
  }
  .open .fa-caret-down {
    transform: rotate(180deg);
  }
  .header-v2__nav, .header-v2__nav a, .header-v2__nav h3 {
    color: var(--color-white);
  }
}

/* -------------------------------- 

File#: _1_accordion
Title: Accordion
Descr: Create stacked sections of content and allow the user to expand/collapse them
Usage: codyhouse.co/license

-------------------------------- */
:root {
  /*  general */
  --accordion-border-width: 1px;
  --accordion-border-color: var(--color-contrast-low);
  /*  icon */
  --accordion-icon-size: .875rem;
  --accordion-icon-stroke-width: 1.5px;
}

.accordion__item {
  border-style: solid;
  border-color: var(--accordion-border-color);
  border-bottom-width: var(--accordion-border-width);
}

.accordion__item:first-child {
  border-top-width: var(--accordion-border-width);
}

.accordion__header {
  /* button */
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
  cursor: pointer;
}

.accordion__header .icon {
  font-size: var(--accordion-icon-size);
}

.accordion__header .icon .icon__group {
  stroke-width: var(--accordion-icon-stroke-width);
}

.accordion__icon-arrow .icon__group,
.accordion__icon-arrow-v2 .icon__group,
.accordion__icon-plus .icon__group {
  will-change: transform;
  transform-origin: 8px 8px;
}

.accordion__icon-arrow .icon__group > *,
.accordion__icon-arrow-v2 .icon__group > *,
.accordion__icon-plus .icon__group > * {
  transform-origin: 8px 8px;
}

.accordion__icon-arrow .icon__group > *,
.accordion__icon-arrow-v2 .icon__group > * {
  stroke-dasharray: 17;
  transform: translateY(3px);
}

.accordion__icon-arrow .icon__group > *:first-child,
.accordion__icon-arrow-v2 .icon__group > *:first-child {
  stroke-dashoffset: 8.5;
}

.accordion__icon-arrow .icon__group > *:last-child,
.accordion__icon-arrow-v2 .icon__group > *:last-child {
  stroke-dashoffset: 8.5;
}

.accordion__icon-plus .icon__group {
  transform: rotate(-90deg);
}

.accordion__icon-plus .icon__group > *:first-child {
  transform: rotate(-90deg);
}

.pelican-accordion-comment {
  flex-direction: row-reverse;
  display: flex;
  margin-right: .5rem;
}

.pelican-accordion-comment::after {
  content: "Open";
  font-size: .875rem;
}

.accordion__item--is-open .pelican-accordion-comment::after {
  content: "Hide";
}

.accordion__item--is-open > .accordion__header > .accordion__icon-arrow .icon__group {
  /* animated arrow icon */
}

.accordion__item--is-open > .accordion__header > .accordion__icon-arrow .icon__group > *:first-child {
  transform: translateY(-3px) rotate(-90deg);
}

.accordion__item--is-open > .accordion__header > .accordion__icon-arrow .icon__group > *:last-child {
  transform: translateY(-3px) rotate(90deg);
}

.accordion__item--is-open > .accordion__header > .accordion__icon-arrow-v2 .icon__group {
  /* animated arrow icon v2 */
  transform: rotate(-90deg);
}

.accordion__item--is-open > .accordion__header > .accordion__icon-arrow-v2 .icon__group > *:first-child, .accordion__item--is-open > .accordion__header > .accordion__icon-arrow-v2 .icon__group *:last-child {
  stroke-dashoffset: 0;
  transform: translateY(0px);
}

.accordion__item--is-open > .accordion__header > .accordion__icon-plus .icon__group {
  /* animated plus icon */
  transform: rotate(0);
}

.accordion__item--is-open > .accordion__header > .accordion__icon-plus .icon__group > *:first-child {
  transform: rotate(0);
}

.js .accordion__panel {
  display: none;
  will-change: height;
  transform: translateZ(0px);
}

.js .accordion__item--is-open > .accordion__panel {
  display: block;
}

/*  animations */
.accordion[data-animation="on"] .accordion__item--is-open .accordion__panel > * {
  -webkit-animation: accordion-entry-animation 0.4s var(--ease-out);
          animation: accordion-entry-animation 0.4s var(--ease-out);
}

.accordion[data-animation="on"] .accordion__icon-arrow .icon__group,
.accordion[data-animation="on"] .accordion__icon-arrow-v2 .icon__group,
.accordion[data-animation="on"] .accordion__icon-plus .icon__group {
  transition: transform 0.3s var(--ease-out);
}

.accordion[data-animation="on"] .accordion__icon-arrow .icon__group > *,
.accordion[data-animation="on"] .accordion__icon-arrow-v2 .icon__group > *,
.accordion[data-animation="on"] .accordion__icon-plus .icon__group > * {
  transition: transform .3s, stroke-dashoffset .3s;
  transition-timing-function: var(--ease-out);
}

@-webkit-keyframes accordion-entry-animation {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}

@keyframes accordion-entry-animation {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0px);
  }
}

/* -------------------------------- 

File#: _2_adv-custom-select
Title: Advanced Custom Select
Descr: Custom select with advanced structure options
Usage: codyhouse.co/license

-------------------------------- */
.adv-select-popover {
  --space-unit:  1rem;
  --text-unit: 1rem;
  font-size: var(--text-unit);
}

.adv-select-popover.popover {
  --popover-width: 250px;
  --popover-control-gap: 4px;
  --popover-viewport-gap: 20px;
  --popover-transition-duration: 0.2s;
}

@media (min-width: 64rem) {
  .adv-select-popover.popover {
    --popover-width: 320px;
  }
}

.adv-select-popover__optgroup:not(:first-of-type) {
  padding-top: var(--space-xxs);
}

.adv-select-popover__optgroup:not(:last-of-type) {
  border-bottom: 1px solid hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.1);
  padding-bottom: var(--space-xxs);
}

.adv-select-popover__check {
  display: none;
}

.adv-select-popover__option {
  position: relative;
  cursor: pointer;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.adv-select-popover__option:hover {
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.05);
}

.adv-select-popover__option:focus {
  outline: none;
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.1);
}

.adv-select-popover__option[aria-selected=true] {
  background-color: var(--color-primary);
  color: var(--color-white);
}

.adv-select-popover__option[aria-selected=true] .adv-select-popover__check {
  display: block;
}

.adv-select-popover__option[aria-selected=true]:focus {
  box-shadow: inset 0 0 0 2px var(--color-primary-dark);
}

.search-error {
  color: red;
  font-size: 14px;
  display: none;
}

.search-input {
  position: relative;
}

.search-input .adv-select__control {
  width: 120px;
  border-radius: 30px;
  background: #49a6f8;
  border: 2px solid #49a6f8;
}

.search-input #adv-select-popover-1 {
  top: 0px !important;
  left: 0;
  right: unset !important;
  width: 120px;
  position: absolute;
  margin: 0;
  background: #49a6f8;
  font-size: 14px;
  border-radius: 10px;
}

.search-input .adv-select-popover__option:hover {
  color: #fff;
  background: #173f96;
}

.search-input .adv-select-popover__option[aria-selected=true] {
  background: #173f96;
}

.search-container.warning .adv-select__control {
  border-color: red;
}

.search-container.warning .search-error {
  display: block;
}

@media (max-width: 768px) {
  #pelican-search-desk {
    display: none;
    position: absolute;
    top: 78px;
    width: 100%;
    left: 0;
  }
  #pelican-search-desk.show-mobile {
    display: block;
  }
  #pelican-search-desk .mobile-header-icon {
    display: none;
  }
  #pelican-search-desk .search-input {
    background: var(--color-primary-lighter);
  }
  #pelican-search-desk .search-input .search-input__input {
    display: inline-block;
  }
}

/* -------------------------------- 

File#: _1_breadcrumbs
Title: Breadcrumbss
Descr: List of links to help the user move within website structure
Usage: codyhouse.co/license

-------------------------------- */
.breadcrumbs__item {
  display: inline-block;
  /* flex fallback */
  display: inline-flex;
  align-items: center;
  text-transform: uppercase;
}

@media (max-width: 48rem) {
  .breadcrumbs .breadcrumbs__item:not(.mobile-show) {
    /*display: none;*/
  }
  .breadcrumbs__item.mobile-show {
    flex-direction: row-reverse;
  }
  .breadcrumbs__item.mobile-show span {
    transform: rotate(180deg);
  }
  .breadcrumbs__item.mobile-show a {
    margin-left: .5em;
  }
}

/* -------------------------------- 

File#: _2_carousel
Title: Carousel
Descr: Display and cycle through a collection of items


-------------------------------- */
:root {
  --carousel-grid-gap: var(--space-xs);
  --carousel-item-auto-size: 100%;
  /* min-width value -> used in JS to auto update the carousel items width */
  --carousel-transition-duration: 0.5s;
}

.carousel {
  position: relative;
}

.carousel .hero-slider-arrows {
  position: absolute;
  width: 100%;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
}

.carousel__list {
  display: flex;
  flex-wrap: nowrap;
  will-change: transform;
}

.carousel__item {
  flex-shrink: 0;
  width: var(--carousel-item-auto-size);
  margin-right: var(--carousel-grid-gap);
  margin-bottom: var(--carousel-grid-gap);
}

.js .carousel__list--animating {
  transition-property: transform;
  transition-duration: var(--carousel-transition-duration);
  transition-timing-function: var(--ease-out);
}

.js .carousel__item {
  /*  hide items while the carousel is initialized in JS */
  opacity: 0;
  margin-bottom: 0;
}

.js .carousel--loaded .carousel__item {
  /* reveal items */
  opacity: 1;
}

.js .carousel:not(.carousel--is-dragging) .carousel__list:not(.carousel__list--animating) .carousel__item[tabindex="-1"] > * {
  visibility: hidden;
  /* hide content of off-canvas items so that they are not focusable  */
}

.js .carousel[data-drag="on"] .carousel__item {
  /* if drag = enabled */
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.js .carousel[data-drag="on"] .carousel__item img {
  pointer-events: none;
}

.carousel__control {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background-color: var(--color-accent);
  border-radius: 0%;
  box-shadow: var(--shadow-sm);
  z-index: 1;
  transition: .2s;
}

.carousel__control:active {
  transform: translateY(1px);
}

.carousel__control:hover {
  box-shadow: var(--shadow-md);
}

.carousel__control[disabled] {
  pointer-events: none;
  background-color: var(--color-contrast-lower);
  color: var(--color-contrast-low);
  box-shadow: none;
}

.carousel__control .icon {
  display: block;
  font-size: 20px;
  /* icon size */
}

/*  carousel dots navigation */
.carousel__navigation {
  /* created in JS */
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, 10px);
  /* = button size 👇 */
  gap: var(--space-xs);
  /* gap among dots */
  justify-content: center;
  align-items: center;
  margin-top: var(--space-sm);
}

.carousel__nav-item {
  display: inline-block;
  /* grid fallback */
  margin: 0 var(--space-xxxs);
}

@supports (grid-area: auto) {
  .carousel__nav-item {
    margin: 0;
  }
}

.carousel__nav-item button {
  /* dot */
  display: block;
  position: relative;
  font-size: 10px;
  /*  ⚠️ button size */
  height: 1em;
  width: 1em;
  border-radius: 50%;
  background-color: var(--color-contrast-high);
  opacity: 0.4;
  cursor: pointer;
  transition: background .3s;
}

.carousel__nav-item button::before {
  /* focus circle */
  content: '';
  position: absolute;
  top: calc(50% - 0.5em);
  left: calc(50% - 0.5em);
  font-size: 16px;
  /* focus circle size */
  height: 1em;
  width: 1em;
  border-radius: inherit;
  border: 1px solid var(--color-contrast-high);
  opacity: 0;
  transform: scale(0);
  transition: 0.3s;
}

.carousel__nav-item button:focus {
  outline: none;
}

.carousel__nav-item button:focus::before {
  opacity: 1;
  transform: scale(1);
}

.carousel__nav-item--selected button {
  opacity: 1;
}

--pagination .carousel__navigation--pagination {
  grid-template-columns: repeat(auto-fit, minmax(24px, auto));
}

--pagination .carousel__navigation--pagination .carousel__nav-item button {
  width: 100%;
  height: auto;
  color: var(--color-bg);
  font-size: var(--text-xs);
  padding: var(--space-xxxs) var(--space-xxs);
  border-radius: var(--radius-md);
  text-align: center;
}

--pagination .carousel__navigation--pagination .carousel__nav-item button:focus {
  outline: 1px solid var(--color-primary);
  outline-offset: 2px;
}

html:not(.js) .carousel__list {
  overflow: auto;
}

.carousel--hide-controls .carousel__navigation, .carousel--hide-controls .carousel__control {
  display: none;
}

/*  Carousel Thirds */
.carousel__thirds .carousel__item {
  width: var(--carousel-item-auto-size);
  margin-right: 1.5rem;
}

@media (min-width: 48rem) {
  .carousel__thirds .carousel__item {
    width: 30%;
  }
}

/*  Outline Carousel */
.carousel-outline-cards {
  position: relative;
  padding-bottom: 40px;
}

@media (max-width: 48em) {
  .carousel-outline-cards .carousel__item {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}

.carousel-outline-cards nav button {
  position: absolute;
  top: 40%;
}

.carousel-outline-cards nav button.carousel__control--prev {
  left: 0;
}

@media (min-width: 64rem) {
  .carousel-outline-cards nav button.carousel__control--prev {
    left: -3.5rem;
  }
}

.carousel-outline-cards nav button.carousel__control--next {
  right: 0;
}

@media (min-width: 64rem) {
  .carousel-outline-cards nav button.carousel__control--next {
    right: -3.5rem;
  }
}

.carousel-outline-cards .carousel__navigation {
  position: absolute;
  bottom: 0;
}

.carousel-outline-cards .carousel__navigation button {
  background-color: var(--color-primary-lighter);
  opacity: 1;
}

.carousel-outline-cards .carousel__navigation .carousel__nav-item--selected button {
  background-color: var(--color-primary-darker);
}

/*  Swiper Slider */
.swiper-container {
  width: 100%;
  height: 500px;
  margin-left: auto;
  margin-right: auto;
}

.swiper-container .swiper-button-prev::after {
  left: -39px;
  padding: 15px;
  font-size: 18px;
  right: auto;
  position: fixed;
  background-color: var(--color-accent);
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .swiper-container .swiper-button-prev {
    display: none;
  }
}

.swiper-container .swiper-button-next::after {
  right: -39px;
  padding: 15px;
  font-size: 18px;
  font-weight: bold !important;
  left: auto;
  position: fixed;
  background-color: var(--color-accent);
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .swiper-container .swiper-button-next {
    display: none;
  }
}

.swiper-container-horizontal > .swiper-pagination-bullets {
  bottom: -40px !important;
  right: 0 !important;
  position: fixed;
  text-align: right;
}

@media (max-width: 1024px) {
  .swiper-container-horizontal > .swiper-pagination-bullets {
    text-align: center;
  }
}

.swiper-slide {
  text-align: center;
  font-size: 18px;
  /* background: #cccccc; */
  border-radius: 15px;
  /* Center slide text vertically */
  display: flex;
  justify-content: center;
  align-items: center;
}

/* -------------------------------- 

File#: _choice-accordion
Title: Choice Accordion
Descr: A group of radio/checkbox buttons controlling expandable content
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --choice-accordion-border-width: 2px;
  /*  accordion border width */
  --choice-accordion-border-radius: var(--radius-md);
  /* accordion border radius */
  /*  custom input */
  --choice-accordion-input-size: 20px;
  /* custom input size */
  --choice-accordion-input-icon-size: 16px;
  /* icon size */
  --choice-accordion-input-border-width: 2px;
  /* custom input border width */
  --choice-accordion-input-margin-right: var(--space-xxs);
  /* gap between custom input and label */
}

.choice-accordion {
  overflow: hidden;
}

.choice-accordion__btn {
  display: none;
  /* hide button if JS = disabled */
}

.js .choice-accordion__btn {
  display: block;
  /* fallback */
  display: grid;
  grid-template-columns: var(--choice-accordion-input-size) 1fr;
  grid-gap: var(--choice-accordion-input-margin-right);
  align-items: center;
  cursor: pointer;
}

.js .choice-accordion__item:first-child .choice-accordion__btn {
  border-top: none;
}

.choice-accordion__panel {
  position: relative;
  background-color: var(--color-contrast-lower);
  overflow: hidden;
  will-change: height;
  transform: translateZ(0px);
}

.choice-accordion__panel::before {
  /* panel top border */
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--choice-accordion-border-width);
  background-color: var(--color-contrast-low);
  pointer-events: none;
}

/*  custom input */
.choice-accordion__input {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color-bg);
  width: var(--choice-accordion-input-size);
  height: var(--choice-accordion-input-size);
  border-width: var(--choice-accordion-input-border-width);
  border-style: solid;
  border-color: var(--color-contrast-low);
  transition: .2s;
}

.choice-accordion__input .icon {
  color: var(--color-white);
  /*  icon color */
  font-size: var(--choice-accordion-input-icon-size);
}

.choice-accordion__btn:hover .choice-accordion__input {
  border-color: var(--color-contrast-medium);
}

.choice-accordion__btn--checked .choice-accordion__input,
.choice-accordion__btn--focus .choice-accordion__input,
.choice-accordion__btn--checked:hover .choice-accordion__input,
.choice-accordion__btn--focus:hover .choice-accordion__input {
  border-color: var(--color-primary);
}

.choice-accordion__btn--checked .choice-accordion__input {
  background-color: var(--color-primary);
}

.choice-accordion__btn--focus .choice-accordion__input {
  box-shadow: 0 0 0 3px hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
}

.choice-accordion__input--checkbox {
  border-radius: var(--radius-sm);
}

.choice-accordion__input--checkbox .icon > * {
  transition: stroke-dashoffset .3s;
  stroke-dasharray: 18;
  stroke-dashoffset: 18;
}

.choice-accordion__btn--checked .choice-accordion__input--checkbox .icon > * {
  stroke-dasharray: 18;
  stroke-dashoffset: 0;
}

.choice-accordion__input--radio {
  border-radius: 50%;
}

.choice-accordion__input--radio .icon {
  transition: transform 0.3s var(--ease-out-back);
  transform: scale(0);
}

.choice-accordion__btn--checked .choice-accordion__input--radio .icon {
  transform: scale(1);
}

.js .choice-accordion__fallback {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
  /* visible only to screen readers */
}

/*  Pelican Accordion */
.pelican-shipping-accordion .choice-accordion__input--radio {
  margin-top: .3rem;
}

.pelican-shipping-accordion .choice-accordion__btn {
  align-items: flex-start;
}

/* -------------------------------- 

File#: _1_choice-tags
Title: Choice tags
Descr: Custom, "tag-looking" radio/checkbox buttons
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --choice-tag-icon-size: 16px;
  --choice-tag-icon-stroke-width: 2px;
}

.choice-tag {
  display: inline-flex;
  align-items: center;
  padding: .5rem 1rem;
  border-radius: 50em;
  border: 2px solid var(--color-contrast-low);
  cursor: pointer;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  transition: .2s;
}

.choice-tag:hover {
  border-color: hsl(var(--color-contrast-low-h), var(--color-contrast-low-s), calc(var(--color-contrast-low-l) * 0.85));
}

.choice-tag:active, .choice-tag:focus-within, .choice-tag.choice-tag--checked {
  border-color: var(--color-primary);
}

.choice-tag:active, .choice-tag:focus-within {
  box-shadow: 0 0 0 2px hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
}

.choice-tag.choice-tag--checked {
  background-color: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.08);
}

/*  icon */
.choice-tag__icon {
  font-size: var(--choice-tag-icon-size);
}

.choice-tag__icon-group * {
  transform-origin: 8px 8px;
}

/*  checkbox */
.choice-tag--checkbox {
  /*  not checked */
  /*  checked */
}

.choice-tag--checkbox .choice-tag__icon {
  color: var(--color-primary);
}

.choice-tag--checkbox .choice-tag__icon-group {
  stroke-width: var(--choice-tag-icon-stroke-width);
}

.choice-tag--checkbox .choice-tag__icon-group * {
  stroke-dasharray: 16;
}

.choice-tag--checkbox .choice-tag__icon-group :nth-child(1),
.choice-tag--checkbox .choice-tag__icon-group :nth-child(2) {
  transition: transform 0.3s var(--ease-out-back), stroke-dashoffset 0.3s var(--ease-out-back);
}

.choice-tag--checkbox .choice-tag__icon-group :nth-child(1) {
  stroke-dashoffset: 24;
}

.choice-tag--checkbox .choice-tag__icon-group :nth-child(2) {
  stroke-dashoffset: 10;
}

.choice-tag--checkbox .choice-tag__icon-group :nth-child(3) {
  transition: stroke-dashoffset .3s;
  stroke-dashoffset: 0;
}

.choice-tag--checkbox input:checked + .choice-tag__icon .choice-tag__icon-group :nth-child(1) {
  stroke-dashoffset: 23;
  transform: translateX(-2px) translateY(4px) rotate(45deg);
}

.choice-tag--checkbox input:checked + .choice-tag__icon .choice-tag__icon-group :nth-child(2) {
  stroke-dashoffset: 5;
  transform: translateX(-2px) translateY(4px) rotate(-45deg);
}

.choice-tag--checkbox input:checked + .choice-tag__icon .choice-tag__icon-group :nth-child(3) {
  transition: none;
  stroke-dashoffset: 16;
  opacity: 0;
}

/*  radio */
.choice-tag--radio {
  /*  not checked */
  /*  checked */
}

.choice-tag--radio .choice-tag__icon {
  color: var(--color-contrast-low);
  /* radio dot stroke color */
}

.choice-tag--radio .choice-tag__icon-group :nth-child(1) {
  fill: none;
  stroke-width: var(--choice-tag-icon-stroke-width);
  /* radio dot stroke width */
}

.choice-tag--radio .choice-tag__icon-group :nth-child(2) {
  fill: var(--color-white);
  transform: scale(0);
  transition: transform 0.3s var(--ease-out-back);
}

.choice-tag--radio input:checked + .choice-tag__icon .choice-tag__icon-group :nth-child(1) {
  stroke: var(--color-primary);
  fill: var(--color-primary);
}

.choice-tag--radio input:checked + .choice-tag__icon .choice-tag__icon-group :nth-child(2) {
  transform: scale(1);
}

.pelican-cta-callout {
  padding: 60px;
}

@media (max-width: 1024px) {
  .pelican-cta-callout {
    padding: 0px;
    overflow: hidden;
  }
}

@media (max-width: 768px) {
  .pelican-cta-callout {
    padding: 0px;
  }
}

.pelican-cta-callout .container {
  position: relative;
}

.pelican-cta-callout .container .pelican-bg-image-wrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  max-width: 1280px;
  transform: translate(-50%, -60%) scale(1.1);
}

.pelican-cta-callout .container .pelican-bg-image-wrapper img {
  width: 100%;
  max-width: 1280px;
}

@media (max-width: 1199px) {
  .pelican-cta-callout .container .pelican-bg-image-wrapper {
    width: 450px;
  }
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .pelican-bg-image-wrapper {
    transform: translate(-50%, 60%) scale(2);
  }
}

.pelican-cta-callout .container .inner-content {
  padding: 60px 80px 100px 80px;
  position: relative;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content {
    padding: 40px;
  }
}

.pelican-cta-callout .container .inner-content .font-quaternary {
  color: var(--color-primary-darker);
}

.pelican-cta-callout .container .inner-content .pelican-heading-label {
  margin-bottom: 45px;
  display: inline-block;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content .pelican-heading-label {
    margin-bottom: 14px;
    margin-left: auto;
    margin-right: auto;
    display: table;
  }
}

.pelican-cta-callout .container .inner-content h2 {
  margin-bottom: 45px;
  max-width: 60%;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content h2 {
    margin-top: 45px;
    margin-bottom: 14px;
    max-width: 100%;
  }
}

.pelican-cta-callout .container .inner-content p {
  max-width: 70%;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content p {
    max-width: 100%;
  }
}

.pelican-cta-callout .container .inner-content::before {
  content: '';
  border-left: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  border-top-left-radius: 25px;
  border-bottom-left-radius: 25px;
  left: 14px;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content::before {
    display: none;
  }
}

.pelican-cta-callout .container .inner-content::after {
  content: '';
  border-right: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  right: -100px;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  transform: skew(-15deg);
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content::after {
    display: none;
  }
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .inner-content {
    border: 5px solid var(--color-accent);
    border-radius: 25px;
  }
}

.pelican-cta-callout .container .pelican-image-mobile {
  display: none;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .pelican-image-mobile {
    display: block;
  }
}

.pelican-cta-callout .container .pelican-image-wrapper {
  position: absolute;
  width: 564px;
  height: auto;
  top: 50%;
  right: 0;
  transform: translate(0%, -50%);
}

.pelican-cta-callout .container .pelican-image-wrapper img {
  width: 100%;
  height: auto;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .pelican-image-wrapper {
    position: static;
    transform: translate(0%, 0%);
  }
}

.pelican-cta-callout .container .pelican-image-wrapper .pelican-image-desktop {
  display: block;
}

@media (max-width: 1024px) {
  .pelican-cta-callout .container .pelican-image-wrapper .pelican-image-desktop {
    display: none;
  }
}

.pelican-two-column-cta-callout {
  padding: 60px 0;
}

.pelican-two-column-cta-callout .pelican-two-column-cta-title {
  align-items: center;
  margin: 0 auto 24px auto;
}

@media (max-width: 1024px) {
  .pelican-two-column-cta-callout .pelican-two-column-cta-title {
    max-width: 500px;
  }
}

.pelican-two-column-cta-callout .pelican-heading-label {
  margin-bottom: 16px;
  display: block;
  transition: all 0.3s ease-in-out;
}

@media (max-width: 1024px) {
  .pelican-two-column-cta-callout .pelican-heading-label {
    max-width: 500px;
    display: block;
    margin: 0 auto 16px auto;
  }
}

.pelican-two-column-cta-callout .pelican-large-slashes {
  transition: all 0.3s ease-in-out;
}

.pelican-two-column-cta-callout h2 {
  margin-bottom: 45px;
  text-align: center;
  transition: all 0.3s ease-in-out;
}

.pelican-two-column-cta-callout h3 {
  max-width: 70%;
  margin-bottom: 0px;
  transition: all 0.3s ease-in-out;
}

@media (max-width: 1024px) {
  .pelican-two-column-cta-callout h3 {
    max-width: 500px;
  }
}

.pelican-two-column-cta-callout .angled-button, .pelican-two-column-cta-callout .impact-button {
  margin: -35px 0 0 auto !important;
  transform: translateX(-30px);
  display: table;
  text-decoration: none;
  position: absolute;
  bottom: -20px;
  right: 5px;
}

.pelican-two-column-cta-callout .pelican-col-image {
  position: relative;
}

.pelican-two-column-cta-callout .pelican-col-image:before, .pelican-two-column-cta-callout .pelican-col-image:after {
  content: '';
  width: 30px;
  position: absolute;
  background: no-repeat top left / 100% 100%;
}

.pelican-two-column-cta-callout .pelican-col-image:before {
  left: -4px;
  background-image: url(../img/textured-edge-left.png);
  height: 98%;
  top: 0;
}

.pelican-two-column-cta-callout .pelican-col-image:after {
  right: -4px;
  background-image: url(../img/texture-edge-rt.png);
  height: 101%;
  top: -1px;
}

@media (max-width: 1024px) {
  .pelican-two-column-cta-callout .pelican-col-image {
    max-width: 550px;
    margin: 0 auto;
  }
}

.pelican-two-column-cta-callout .pelican-col-image-2:before {
  left: -4px;
  background-image: url(../img/textured-edge-left.png);
  height: 98%;
  top: 0;
}

.pelican-two-column-cta-callout .pelican-col-image-2:after {
  right: -4px;
  background-image: url(../img/textured-edge-left.png);
  height: 101%;
  top: -1px;
  transform: rotate(180deg);
}

.pelican-two-column-cta-callout .pelican-col-6-link {
  position: relative;
}

.pelican-two-column-cta-callout .pelican-col-6-link .pelican-two-column-link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover .pelican-heading-label {
  margin-bottom: 16px;
  display: block;
  color: var(--color-primary-darker);
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover .pelican-large-slashes {
  color: var(--color-primary-darker);
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover h2 {
  margin-bottom: 45px;
  text-align: center;
  color: var(--color-primary-darker);
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover h3 {
  max-width: 70%;
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .pelican-two-column-cta-callout .pelican-col-6-link:hover h3 {
    max-width: 100%;
  }
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover .impact-button {
  background: var(--color-primary);
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover .angled-button, .pelican-two-column-cta-callout .pelican-col-6-link:hover .impact-button {
  background: var(--color-primary-dark);
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover .angled-button::after, .pelican-two-column-cta-callout .pelican-col-6-link:hover .impact-button::after {
  background: var(--color-primary-dark);
}

.pelican-two-column-cta-callout .pelican-col-6-link:hover .angled-button::before, .pelican-two-column-cta-callout .pelican-col-6-link:hover .impact-button::before {
  background: var(--color-primary-dark);
}

.pelican-featured-brands h2, .pelican-join-section h2 {
  margin-bottom: 35px;
}

@media (max-width: 1024px) {
  .pelican-featured-brands h2, .pelican-join-section h2 {
    display: table;
    margin: 0 auto 16px auto;
  }
}

@media (max-width: 1024px) {
  .pelican-featured-brands, .pelican-join-section {
    overflow: hidden;
    padding-bottom: 60px;
  }
}

.pelican-featured-brands .arrow-link, .pelican-join-section .arrow-link {
  max-width: 140px;
}

@media (max-width: 1024px) {
  .pelican-featured-brands .arrow-link, .pelican-join-section .arrow-link {
    display: table;
    margin: 0 auto;
  }
}

.pelican-featured-brands .container, .pelican-join-section .container {
  position: relative;
}

.pelican-featured-brands .container .background-strip, .pelican-join-section .container .background-strip {
  width: 105%;
  height: 150px;
  background: #CED3DA;
  position: absolute;
  left: 50%;
  bottom: 0%;
  transform: translate(-52%, 30%) skew(-15deg);
}

@media (max-width: 1024px) {
  .pelican-featured-brands .container .background-strip, .pelican-join-section .container .background-strip {
    transform: translateX(-50%) skew(0deg);
    width: 150%;
    height: 90%;
  }
}

.pelican-featured-brands .container .pelican-custom-card-flex, .pelican-join-section .container .pelican-custom-card-flex {
  display: flex;
  flex-flow: row wrap;
}

@media (max-width: 1024px) {
  .pelican-featured-brands .container .pelican-custom-card-flex, .pelican-join-section .container .pelican-custom-card-flex {
    justify-content: center;
  }
}

.pelican-featured-brands .container .pelican-custom-card-flex .col-5-wrapper, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper {
  flex-basis: 17%;
}

@media (max-width: 1024px) {
  .pelican-featured-brands .container .pelican-custom-card-flex .col-5-wrapper, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper {
    flex-basis: 45%;
  }
}

@media (max-width: 512px) {
  .pelican-featured-brands .container .pelican-custom-card-flex .col-5-wrapper, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper {
    flex-basis: 43%;
  }
}

.pelican-featured-brands .container .pelican-custom-card-flex .col-5-wrapper .card-v2, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper .card-v2 {
  position: relative;
  box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.16);
  border: 5px solid white;
}

.pelican-featured-brands .container .pelican-custom-card-flex .col-5-wrapper .card-v2 .card-text, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper .card-v2 .card-text {
  position: absolute;
  left: 50%;
  bottom: 10px;
  width: 100%;
  transform: translateX(-50%);
  text-align: center;
}

.pelican-featured-brands .container .pelican-custom-card-flex .col-5-wrapper .card-v2:hover, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper .card-v2:hover {
  border: 5px solid var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .pelican-featured-brands .pelican-featured-brands-title h2, .pelican-join-section .pelican-featured-brands-title h2 {
    text-align: center;
  }
}

@media (max-width: 1024px) {
  .pelican-featured-brands .pelican-featured-brands-title, .pelican-join-section .pelican-featured-brands-title {
    flex-flow: column;
    margin-bottom: 25px;
  }
}

.pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper .card-v2, .pelican-join-section .container .pelican-custom-card-flex .col-5-wrapper .card-v2:hover {
  border: none;
}

@media (max-width: 64rem) {
  .pelican-join-section {
    padding-bottom: 0;
  }
}

.pelican-tire-track-cta-callout {
  padding: 220px 0 80px 0;
  overflow: hidden;
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout {
    padding: 120px 0 80px 0;
  }
}

@media (max-width: 768px) {
  .pelican-tire-track-cta-callout {
    padding: 0px 0 80px 0;
  }
}

@media (max-width: 512px) {
  .pelican-tire-track-cta-callout {
    transform: translateY(-100px);
  }
  .category-page .pelican-tire-track-cta-callout {
    transform: translateY(0);
  }
}

.pelican-tire-track-cta-callout .container {
  position: relative;
}

.pelican-tire-track-cta-callout .container .tire-track-graphic {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  max-width: 1280px;
  transform: translate(-50%, -50%) scale(2.3);
}

.pelican-tire-track-cta-callout .container .tire-track-graphic img {
  width: 100%;
  height: auto;
}

.pelican-tire-track-cta-callout .container .tire-track-graphic .bottom-tire-graphic {
  transform: translateY(-50px);
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout .container .tire-track-graphic {
    display: none;
  }
}

.pelican-tire-track-cta-callout .container .pelican-image-wrapper {
  width: 100%;
  position: relative;
  z-index: 2;
  transform: translate(-120px, -40%) rotate(-6deg);
  height: 350px;
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout .container .pelican-image-wrapper {
    transform: translate(20px, -40%) rotate(-6deg) !important;
    height: 250px;
  }
}

@media (max-width: 768px) {
  .pelican-tire-track-cta-callout .container .pelican-image-wrapper {
    transform: translate(20px, 20%) rotate(-6deg) !important;
    height: 250px;
  }
}

@media (max-width: 512px) {
  .pelican-tire-track-cta-callout .container .pelican-image-wrapper {
    transform: translate(20px, 55%) rotate(-6deg) !important;
    height: 250px;
  }
}

.pelican-tire-track-cta-callout .container .pelican-image-wrapper img {
  position: absolute;
  top: 50%;
  right: -200px;
  max-width: 825px;
  width: 100%;
  height: auto;
  display: block;
  z-index: 2;
  box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.16);
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout .container .pelican-image-wrapper img {
    width: 80%;
    right: 0;
    left: 50%;
    top: 40px;
    transform: translateX(-60%);
  }
}

@media (max-width: 512px) {
  .pelican-tire-track-cta-callout .container .pelican-image-wrapper img {
    width: 70%;
    right: 0;
    left: 50%;
    top: -20px;
  }
}

@media (max-width: 480px) {
  .pelican-tire-track-cta-callout .container .pelican-image-wrapper img {
    width: 70%;
    right: 0;
    left: 50%;
    top: 40px;
  }
}

.pelican-tire-track-cta-callout .container .inner-content {
  position: relative;
  background-image: linear-gradient(43deg, #0A93DB 0%, #184097 100%);
  border-radius: 15px;
  padding: 50px 20px 40px 120px;
  z-index: 1;
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout .container .inner-content {
    max-width: 100%;
    padding: 120px 40px 80px 50px;
  }
}

.pelican-tire-track-cta-callout .container .inner-content .pelican-cta-date {
  color: var(--color-white);
  text-transform: uppercase;
  margin-bottom: 14px;
  display: block;
}

.pelican-tire-track-cta-callout .container .inner-content h2 {
  font-family: var(--font-tertiary);
  font-size: var(--text-xxl);
  max-width: 80%;
  color: var(--color-white);
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout .container .inner-content h2 {
    max-width: 100%;
  }
}

.pelican-tire-track-cta-callout .container .inner-content h2 a {
  color: var(--color-white);
  text-decoration: none;
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button, .pelican-tire-track-cta-callout .container .inner-content .impact-button {
  text-decoration: none !important;
  position: absolute;
  right: -30px;
  bottom: -30px;
  background: var(--color-accent);
  padding: 20px 20px;
}

@media (max-width: 1024px) {
  .pelican-tire-track-cta-callout .container .inner-content .angled-button, .pelican-tire-track-cta-callout .container .inner-content .impact-button {
    right: 0%;
    left: 50%;
    padding: 20px 50px;
    transform: translateX(-50%);
  }
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button i, .pelican-tire-track-cta-callout .container .inner-content .impact-button i {
  margin-left: 6px;
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button:before, .pelican-tire-track-cta-callout .container .inner-content .impact-button:before {
  background: var(--color-accent);
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button:after, .pelican-tire-track-cta-callout .container .inner-content .impact-button:after {
  background: var(--color-accent);
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button:hover, .pelican-tire-track-cta-callout .container .inner-content .impact-button:hover {
  background: var(--color-primary-dark);
  color: var(--color-primary-darker);
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button:hover:before, .pelican-tire-track-cta-callout .container .inner-content .impact-button:hover:before {
  background: var(--color-primary-dark);
}

.pelican-tire-track-cta-callout .container .inner-content .angled-button:hover:after, .pelican-tire-track-cta-callout .container .inner-content .impact-button:hover:after {
  background: var(--color-primary-dark);
}

.category .pelican-tire-track-cta-callout, .tech-articles .pelican-tire-track-cta-callout {
  padding-top: 50px;
  padding-bottom: 50px;
}

.category .pelican-tire-track-cta-callout .container .tire-track-graphic, .tech-articles .pelican-tire-track-cta-callout .container .tire-track-graphic {
  top: 68%;
}

.tech-articles .pelican-tire-track-cta-callout .container .tire-track-graphic .bottom-tire-graphic {
  transform: translateY(-25px);
}

/* Tire Tracks Catalog
 */
@media (min-width: 64rem) {
  .pelican-tire-track-cta-callout-catalog {
    background: url(../img/tire-tracks-2.svg) no-repeat top left/100% 100%;
  }
}

.pelican-tire-track-cta-callout-catalog .container {
  margin-top: 1em;
  margin-bottom: 1em;
  padding-top: 3em;
  padding-bottom: 4em;
}

.pelican-tire-track-cta-callout-catalog .inner-content {
  padding: 40px 40px 40px 90px;
  background-image: linear-gradient(43deg, #0A93DB 0%, #184097 100%);
  border-radius: 15px;
  position: relative;
  color: var(--color-white);
}

@media (max-width: 64rem) {
  .pelican-tire-track-cta-callout-catalog .inner-content {
    padding: 150px 40px 60px;
    margin-top: -125px;
  }
}

.pelican-tire-track-cta-callout-catalog h2 {
  color: var(--color-white);
}

@media (max-width: 64em) {
  .pelican-tire-track-cta-callout-catalog h2 {
    font-size: 1.87em;
  }
}

.pelican-tire-track-cta-callout-catalog .pelican-cta-date {
  text-transform: uppercase;
  margin-bottom: .7em;
}

.pelican-tire-track-cta-callout-catalog .impact-button {
  text-decoration: none !important;
  position: absolute;
  right: 35%;
  bottom: -50px;
}

@media (min-width: 64rem) {
  .pelican-tire-track-cta-callout-catalog .impact-button {
    right: -10px;
  }
}

.pelican-tire-track-cta-callout-catalog .pelican-image-wrapper {
  position: relative;
  z-index: 2;
  transform: rotate(-6deg);
}

@media (min-width: 64rem) {
  .pelican-tire-track-cta-callout-catalog .pelican-image-wrapper {
    height: 100%;
  }
}

.pelican-tire-track-cta-callout-catalog .pelican-image-wrapper img {
  max-width: 100%;
  display: block;
  z-index: 2;
}

@media (max-width: 64em) {
  .pelican-tire-track-cta-callout-catalog .pelican-image-wrapper img {
    margin: 0 auto;
    height: 200px;
  }
}

@media (min-width: 64rem) {
  .pelican-tire-track-cta-callout-catalog .pelican-image-wrapper img {
    position: absolute;
    top: 25%;
    right: -80px;
    width: 250px;
    max-width: none;
  }
}

.pelican-car-selector {
  padding: 100px 100px 200px 100px;
}

.pelican-car-selector .loop-tabs__content {
  position: relative;
  padding: 80px 140px 80px 60px;
}

.pelican-car-selector .loop-tabs__content .pelican-car-selector-overlay {
  position: absolute;
  left: 0;
  top: 0;
  height: 90%;
  width: 90%;
}

.pelican-car-selector .loop-tabs__content .pelican-car-selector-overlay::before {
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  border-left: 5px solid var(--color-accent);
  border-right: 5px solid var(--color-accent);
}

.pelican-car-selector .loop-tabs__media {
  position: relative;
}

.pelican-car-selector .loop-tabs__media .loop-tabs__assets {
  position: absolute;
  left: 0;
  top: 50%;
  width: 600px;
  height: auto;
  transform: translate(-50%, -50%);
}

.pelican-browse-car {
  padding-bottom: 160px;
  display: block;
  position: relative;
}

.pelican-browse-car h2 {
  margin-bottom: 50px;
}

.pelican-browse-car .pelican-mobile-car-selector-ripped-background {
  position: absolute;
  right: 30px;
  bottom: -10px;
  width: 700px;
  height: 700px;
  background-image: url(../img/angle-background-color-block-light-blue.jpg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}

@media (max-width: 1024px) {
  .pelican-browse-car {
    display: none;
  }
}

/* Pelican Car Model List */
.pelican-car-modal-list ul li::before {
  content: '//';
  margin-right: 14px;
  color: var(--color-accent);
}

.pelican-car-modal-list ul li a {
  color: var(--color-black);
  text-decoration: none;
}

.pelican-car-modal-list ul li a:hover {
  text-decoration: underline;
  -webkit-text-decoration-color: var(--color-primary-darker);
          text-decoration-color: var(--color-primary-darker);
  text-decoration-thickness: 3px;
}

.pelican-mobile-car-selector {
  display: none;
  padding-bottom: 60px;
  position: relative;
}

.pelican-mobile-car-selector .swiper-container {
  height: 400px !important;
  position: relative;
}

.pelican-mobile-car-selector .swiper-slide {
  background: url(../img/angle-background-color-block-light-blue.jpg);
  background-size: contain;
  background-repeat: no-repeat;
}

.pelican-mobile-car-selector .carousel__navigation {
  justify-content: center;
  position: absolute;
  bottom: -65px;
}

.pelican-mobile-car-selector .carousel__navigation button {
  background: var(--color-primary-light);
}

.pelican-mobile-car-selector .carousel__navigation .carousel__nav-item--selected button {
  background: var(--color-primary-darker);
}

.pelican-mobile-car-selector .pelican-angle-orange-border {
  position: absolute;
  width: 70%;
  height: 100%;
  left: -100px;
  top: -20px;
}

.pelican-mobile-car-selector .pelican-angle-orange-border::before {
  content: '';
  border-left: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  border-top-left-radius: 25px;
  border-bottom-left-radius: 25px;
  left: 14px;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
}

.pelican-mobile-car-selector .pelican-angle-orange-border::after {
  content: '';
  border-right: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  right: -100px;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  transform: skew(-15deg);
}

@media (max-width: 1024px) {
  .pelican-mobile-car-selector {
    display: block;
  }
  .pelican-mobile-car-selector .swiper-button-prev {
    display: block;
    margin-top: 174px;
  }
  .pelican-mobile-car-selector .swiper-button-prev::before {
    content: '\f104';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: var(--color-primary-darker);
    font-size: 2em;
  }
  .pelican-mobile-car-selector .swiper-button-next {
    display: block;
    margin-top: 174px;
  }
  .pelican-mobile-car-selector .swiper-button-next::before {
    content: '\f105';
    font-family: 'Font Awesome 5 Free';
    font-weight: 900;
    color: var(--color-primary-darker);
    font-size: 2em;
  }
  .pelican-mobile-car-selector .swiper-pagination {
    position: absolute;
    bottom: 0px !important;
  }
  .pelican-mobile-car-selector .swiper-pagination .swiper-pagination-bullet {
    bottom: 0px !important;
    width: 12px;
    height: 12px;
  }
  .pelican-mobile-car-selector .swiper-pagination .swiper-pagination-bullet-active {
    background: var(--color-primary-darker) !important;
  }
}

.pelican-mobile-car-selector .pelican-mobile-car-selector-controls {
  position: absolute;
  bottom: -80px;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
}

.pelican-mobile-car-selector .pelican-mobile-car-selector-controls .carousel__control {
  background: transparent;
  box-shadow: none;
  color: var(--color-primary-darker);
}

/* Pelican Contact */
.pelican-contact-section .contact-cards {
  background: var(--color-primary-lighter);
  border-radius: 15px;
  text-align: center;
  display: flex;
  flex-flow: column;
  height: 100%;
}

.pelican-contact-section .contact-cards p {
  text-align: center;
}

.pelican-contact-section .contact-cards a {
  color: var(--color-primary-darker);
}

.pelican-contact-section .contact-cards .pelican-contact-form-label {
  font-size: 0.8em;
  text-transform: uppercase;
  text-align: left;
}

.pelican-contact-section .contact-cards .btn {
  margin-bottom: 25px;
}

.pelican-contact-section .arrow-link {
  margin-right: 40px;
}

/* Pelican Promo Cards */
.pelican-promo-cards .pelican-promo-image-container {
  position: relative;
  z-index: 9;
}

.pelican-promo-cards .pelican-promo-image-container .tag {
  position: absolute;
  top: 0;
  left: 0;
  background: var(--color-primary-darker);
  color: var(--color-white);
  padding: .3rem .5rem;
}

@media (min-width: 64rem) {
  .pelican-promo-cards .pelican-promo-image-container .tag {
    padding: .3rem 0;
    top: 1rem;
  }
}

.pelican-promo-cards .pelican-promo-image-container .tag span {
  position: relative;
  z-index: 9;
  padding: 0 .3rem;
}

.pelican-promo-cards .pelican-promo-image-container .tag span img {
  vertical-align: middle;
}

.pelican-promo-cards .pelican-promo-image-container .tag:before, .pelican-promo-cards .pelican-promo-image-container .tag:after {
  transform: skewX(-15deg);
  position: absolute;
  height: 100%;
  content: '';
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  width: 15px;
}

@media (min-width: 64rem) {
  .pelican-promo-cards .pelican-promo-image-container .tag:before, .pelican-promo-cards .pelican-promo-image-container .tag:after {
    width: 20px;
  }
}

@media (min-width: 48rem) {
  .pelican-promo-cards .pelican-promo-image-container .tag:before, .pelican-promo-cards .pelican-promo-image-container .tag:after {
    transform: skewX(-15deg);
  }
}

.pelican-promo-cards .pelican-promo-image-container .tag:before {
  left: -7px;
}

@media (min-width: 64rem) {
  .pelican-promo-cards .pelican-promo-image-container .tag:before {
    left: -10px;
  }
}

.pelican-promo-cards .pelican-promo-image-container .tag:after {
  right: -7px;
}

@media (min-width: 64rem) {
  .pelican-promo-cards .pelican-promo-image-container .tag:after {
    right: -10px;
  }
}

/* Hot tip */
.hot-tip {
  position: relative;
  padding: .6em 2.5em .5em 3em;
}

.hot-tip .h4_formatted {
  color: var(--color-primary-darker);
}

.hot-tip i {
  color: var(--color-primary);
}

.hot-tip::before {
  content: '';
  border-left: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  border-top-left-radius: 45px;
  border-bottom-left-radius: 45px;
  left: 14px;
  top: 0;
  position: absolute;
  width: 80%;
  height: 100%;
}

@media (max-width: 1024px) {
  .hot-tip::before {
    display: none;
  }
}

.hot-tip::after {
  content: '';
  border-right: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  right: 30px;
  top: 0;
  position: absolute;
  width: 80%;
  height: 100%;
  transform: skew(-15deg);
}

@media (max-width: 1024px) {
  .hot-tip::after {
    display: none;
  }
}

@media (max-width: 1024px) {
  .hot-tip {
    border: 5px solid var(--color-accent);
    border-radius: 25px;
  }
}

/* -------------------------------- 

File#: _1_drawer
Title: Drawer
Descr: A slide-in panel used to display critical content
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --drawer-width: 400px;
}

.drawer {
  position: absolute;
  z-index: var(--zindex-overlay);
  display: none;
  min-height: 100vh;
  width: 100%;
  max-width: var(--drawer-width);
  top: 80%;
  right: 0;
  /*  hide drawer */
  visibility: hidden;
  transition: visibility 0s 0.3s;
}

.drawer:focus {
  outline: none;
}

.drawer--is-visible {
  visibility: visible;
  transition: none;
  display: block;
}

.drawer--open-left {
  right: auto;
  left: 0;
}

.drawer__content {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  transform: translateX(100%);
  transition: transform 0.3s;
  transition-timing-function: var(--ease-in-out);
}

.drawer--open-left .drawer__content {
  transform: translateX(-100%);
}

.drawer--is-visible .drawer__content {
  transform: translateX(0);
}

.drawer__body {
  /* scrollable area */
  height: 100%;
  overflow: auto;
  -ms-scroll-chaining: none;
      overscroll-behavior: contain;
  -webkit-overflow-scrolling: touch;
  /* smooth scroll on iOS */
}

.drawer__body h1, .drawer__body h3 {
  color: var(--color-black);
}

.drawer__body a {
  color: #184097;
}

.drawer__close-btn {
  text-transform: uppercase;
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: .2s;
}

.drawer__close-btn:hover {
  cursor: pointer;
}

.drawer__close-btn i {
  margin-left: .2em;
}

.drawer__close-btn .icon {
  display: block;
  color: var(--color-contrast-high);
}

/* --modal */
.drawer--modal {
  max-width: none;
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0);
  transition: background-color 0.3s, visibility 0s 0.3s;
}

.drawer--modal.drawer--is-visible {
  background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.75);
  transition: background-color 0.3s;
}

.drawer--modal.drawer--open-left .drawer__content {
  right: auto;
  left: 0;
}

.drawer--modal .drawer__content {
  max-width: var(--drawer-width);
}

/*  Add to cart */
#drawer-add-to-cart {
  position: fixed;
  top: 100px;
}

#drawer-add-to-cart .drawer__body {
  height: calc(100vh - 180px);
}

.header--is-down #drawer-add-to-cart .drawer__body {
  /*height: calc(100vh - 120px);*/
}

@media (max-width: 48em) {
  #drawer-add-to-cart {
    top: 75px;
  }
  #drawer-add-to-cart .drawer__body {
    height: 95%;
  }
}

#drawer-add-to-cart .drawer__content {
  height: calc(100% - 100px);
}

@media (max-width: 48em) {
  #drawer-add-to-cart .drawer__content {
    height: calc(100% - 75px);
  }
}

.header-v2__wrapper--is-fixed #drawer-add-to-cart {
  top: 100px;
}

.header-v2__wrapper--is-fixed #drawer-add-to-cart .drawer__content {
  height: calc(100% - 100px);
}

#drawer-add-to-cart h2 {
  font-size: 1.75rem;
  line-height: 2.375rem;
  font-family: var(--font-tertiary);
  margin-top: 0;
}

#drawer-add-to-cart h3 {
  font-weight: bold;
  font-size: 1.125rem;
  line-height: 1.375rem;
  font-family: var(--font-primary);
  margin-top: 0;
}

#drawer-add-to-cart .arrow-link {
  color: var(--color-black);
  align-items: center;
}

#drawer-add-to-cart .arrow-link:after {
  top: auto;
  right: auto;
  position: relative;
  transform: none;
}

#drawer-add-to-cart .angled-button, #drawer-add-to-cart .impact-button {
  color: var(--color-black);
}

.angled-nav-list {
  align-items: center;
}

.angled-nav-list .js-filter-selected {
  position: relative;
  background: var(--color-accent);
  border-radius: 0;
  color: var(--color-black);
  font-weight: 500;
  font-size: 16px;
  padding: 8px 11px;
}

.angled-nav-list .js-filter-selected:after, .angled-nav-list .js-filter-selected:before {
  position: absolute;
  height: 100%;
  width: 20px;
  background: var(--color-accent);
  position: absolute;
  top: 0;
  content: '';
  transition: .2s;
}

.angled-nav-list .js-filter-selected:after {
  right: -10px;
  transform: skewX(-15deg);
}

.angled-nav-list .js-filter-selected:before {
  left: -10px;
  transform: skewX(-15deg);
}

.angled-nav-list li {
  margin: 0 25px 0px 0;
}

.angled-nav-list li a, .angled-nav-list li button {
  color: var(--color-black);
  text-decoration: none;
  padding: 8px 11px;
  text-decoration: none;
}

.angled-nav-list li a:after, .angled-nav-list li button:after {
  right: -10px;
  transform: skewX(-15deg);
}

.angled-nav-list li a:before, .angled-nav-list li button:before {
  left: -10px;
  transform: skewX(-15deg);
}

.angled-nav-list li a:hover, .angled-nav-list li button:hover {
  position: relative;
  background: var(--color-primary-darker);
  border-radius: 0;
  color: var(--color-white);
  font-weight: 500;
  padding: 8px 11px;
}

.angled-nav-list li a:hover:after, .angled-nav-list li a:hover:before, .angled-nav-list li button:hover:after, .angled-nav-list li button:hover:before {
  position: absolute;
  height: 100%;
  width: 20px;
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  content: '';
  transition: .2s;
}

.angled-nav-list li a:hover:after, .angled-nav-list li button:hover:after {
  right: -10px;
  transform: skewX(-15deg);
}

.angled-nav-list li a:hover:before, .angled-nav-list li button:hover:before {
  left: -10px;
  transform: skewX(-15deg);
}

.pelican-filter-list label {
  display: block;
}

.pelican-filter-list li {
  margin: 0 10px 25px 0;
}

.pelican-filter-list .link-angled:hover button {
  color: var(--color-white);
}

.pelican-filter-list .link-angled.js-filter-selected {
  background: var(--color-accent);
  position: relative;
  padding: 5px 10px;
}

.pelican-filter-list .link-angled.js-filter-selected:after {
  right: -10px;
  transform: skewX(-15deg);
}

.pelican-filter-list .link-angled.js-filter-selected:before {
  left: -10px;
  transform: skewX(-15deg);
}

.pelican-filter-list button {
  background: none;
  border: none;
  padding: 20px 0 50px 0;
}

.pelican-filter-list button:focus {
  outline: none;
}

.pelican-hero-home-carousel {
  background-repeat: no-repeat !important;
  position: relative;
}

.pelican-hero-home-carousel .pelican-hero-home-top-half {
  height: 300px;
  background: url("../img/pelican-parts-car-event-hero-gradient-overlay.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  margin-bottom: 350px;
}

@media (max-width: 1024px) {
  .pelican-hero-home-carousel .pelican-hero-home-top-half {
    margin-bottom: 350px;
  }
}

@media (max-width: 767px) {
  .pelican-hero-home-carousel .pelican-hero-home-top-half {
    margin-bottom: 400px;
  }
}

@media (max-width: 512px) {
  .pelican-hero-home-carousel .pelican-hero-home-top-half {
    margin-bottom: 250px;
    height: 200px;
  }
}

@media (max-width: 480px) {
  .pelican-hero-home-carousel .pelican-hero-home-top-half {
    margin-bottom: 250px;
    height: 200px;
  }
}

.pelican-hero-home-carousel .pelican-hero-home-top-half::before {
  content: '';
  background: url(../img/hero-grad-paper-tear-texture.svg) no-repeat top left 10%/120% 100%;
  height: 120px;
  width: 100%;
  position: absolute;
  bottom: -40px;
  left: 0;
  z-index: 0;
}

@media (max-width: 1024px) {
  .pelican-hero-home-carousel .pelican-hero-home-top-half {
    height: 300px;
  }
}

@media (max-width: 600px) {
  .pelican-hero-home-carousel .pelican-hero-home-top-half {
    height: 200px;
  }
}

.pelican-hero-home-carousel .carousel-container {
  transform: translateX(-50%);
  border-radius: 15px;
  position: absolute;
  top: 100px;
  left: 50%;
  z-index: 5;
  margin-bottom: 100px;
}

@media (max-width: 512px) {
  .pelican-hero-home-carousel .carousel-container .swiper-container {
    max-height: 300px;
  }
}

.pelican-hero-home-carousel .swiper-button-prev::after {
  left: -49px;
  top: 0px;
  padding: 15px;
  font-size: 18px;
  right: auto;
  position: absolute;
  background-color: var(--color-accent);
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .pelican-hero-home-carousel .swiper-button-prev {
    display: none;
  }
}

.pelican-hero-home-carousel .swiper-button-next::after {
  right: -50px;
  top: 0px;
  padding: 15px;
  font-size: 18px;
  font-weight: bold !important;
  left: auto;
  position: absolute;
  background-color: var(--color-accent);
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .pelican-hero-home-carousel .swiper-button-next {
    display: none;
  }
}

.pelican-hero-home-carousel .swiper-pagination {
  bottom: -40px;
  right: 0;
}

.pelican-hero-home-carousel .swiper-pagination .swiper-pagination-bullet {
  margin-right: 6px !important;
}

@media (max-width: 1024px) {
  .pelican-hero-home-carousel .swiper-pagination {
    right: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}

/* Pelican Inner Hero */
.pelican-inner-hero {
  padding-bottom: 0px;
}

@media (max-width: 600px) {
  .pelican-inner-hero {
    padding-bottom: 0px;
  }
}

.pelican-inner-hero .pelican-hero-home-top-half {
  height: 500px;
  background: url("../img/pelican-parts-car-event-hero-gradient-overlay.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.pelican-inner-hero .pelican-hero-home-top-half::after {
  content: '';
  width: 100%;
  height: 100px;
  transform: rotate(180deg);
  background: url("../img/tear-texture-horizontal.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0;
  bottom: -10px;
}

@media (max-width: 1024px) {
  .pelican-inner-hero .pelican-hero-home-top-half {
    margin-bottom: 400px;
  }
}

@media (max-width: 767px) {
  .pelican-inner-hero .pelican-hero-home-top-half {
    margin-bottom: 400px;
  }
}

@media (max-width: 512px) {
  .pelican-inner-hero .pelican-hero-home-top-half {
    margin-bottom: 250px;
  }
}

@media (max-width: 480px) {
  .pelican-inner-hero .pelican-hero-home-top-half {
    height: 500px;
    margin-bottom: 250px;
  }
}

.pelican-inner-hero h1 {
  text-align: center;
  color: var(--color-white);
  margin-bottom: 25px;
}

.pelican-inner-hero p {
  text-align: center;
  color: var(--color-white);
  margin-bottom: 25px;
  display: block;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

.pelican-inner-hero .carousel-container {
  height: 320px;
  border-radius: 15px;
  position: absolute;
  top: 300px;
}

@media (max-width: 1024px) {
  .pelican-inner-hero .carousel-container {
    top: 350px;
  }
}

@media (max-width: 767px) {
  .pelican-inner-hero .carousel-container {
    top: 350px;
  }
}

@media (max-width: 512px) {
  .pelican-inner-hero .carousel-container {
    top: 350px;
    height: 120px;
  }
}

.pelican-inner-hero .swiper-button-prev::after {
  left: -49px;
  top: 50px;
  padding: 15px;
  font-size: 18px;
  right: auto;
  position: absolute;
  background-color: var(--color-accent);
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .pelican-inner-hero .swiper-button-prev {
    display: none;
  }
}

.pelican-inner-hero .swiper-button-next::after {
  right: -50px;
  top: 50px;
  padding: 15px;
  font-size: 18px;
  font-weight: bold !important;
  left: auto;
  position: absolute;
  background-color: var(--color-accent);
  color: var(--color-primary-darker);
}

@media (max-width: 1024px) {
  .pelican-inner-hero .swiper-button-next {
    display: none;
  }
}

.pelican-inner-hero .swiper-pagination {
  bottom: -220px;
  right: 0;
}

.pelican-inner-hero .swiper-pagination .swiper-pagination-bullet {
  margin-right: 6px !important;
}

@media (max-width: 1024px) {
  .pelican-inner-hero .swiper-pagination {
    right: 0;
    left: 50%;
    transform: translateX(-50%);
  }
}

/* Pelican Overlay Hero  */
.pelican-hero-overlay-header {
  color: var(--color-white);
  padding-bottom: 5em;
  position: relative;
  background-image: linear-gradient(-34deg, #5CB7F8 0%, #234BAB 37%, #184097 52%);
}

@media (max-width: 48em) {
  .pelican-hero-overlay-header .internal-page-nav {
    max-width: 65%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
  }
  .pelican-hero-overlay-header .internal-page-nav li {
    flex: 50%;
    display: flex;
  }
}

@media (max-width: 32em) {
  .pelican-hero-overlay-header .internal-page-nav {
    max-width: 100%;
  }
}

.pelican-hero-overlay-header .internal-page-nav a {
  color: var(--color-white);
}

.pelican-hero-overlay-header .internal-page-nav a i {
  color: var(--color-accent);
  padding-right: .5em;
  font-size: 1.25em;
}

@media (max-width: 48em) {
  .pelican-hero-overlay-header .internal-page-nav li {
    width: 49%;
    text-align: left;
    margin-bottom: 1rem;
  }
}

.pelican-hero-overlay-header.bottom-content-overlap {
  padding-bottom: 105px;
  z-index: 9;
  overflow: hidden;
}

@media (min-width: 64rem) {
  .pelican-hero-overlay-header.bottom-content-overlap {
    padding-bottom: 230px;
  }
}

.pelican-hero-overlay-header:before, .pelican-hero-overlay-header:after {
  content: '';
  position: absolute;
  left: 0;
}

.pelican-hero-overlay-header .hero-bg-img {
  position: absolute;
  top: 0;
  right: 0;
  opacity: .2;
  height: 100%;
  min-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.pelican-hero-overlay-header:before {
  height: 100%;
  width: 100%;
  top: 0;
  opacity: .9;
}

.pelican-hero-overlay-header:after {
  height: 70px;
  width: 100%;
  bottom: -25px;
  background: url(../img/hero-grad-paper-tear-texture.svg) no-repeat top left 10%/120% 100%;
}

.pelican-hero-overlay-header .container {
  position: relative;
  z-index: 9;
}

.pelican-hero-overlay-header h1 {
  color: var(--color-white);
}

/* Product Template Hero Section */
/*
.product-template-hero {
  background-image: linear-gradient(-34deg, #5CB7F8 0%, #234BAB 37%, #184097 52%);
  padding: 60px 0px;
  position: relative;
}
*/
.product-template-hero {
    background-image: linear-gradient(-34deg, #5CB7F8 0%, #234BAB 37%, #184097 52%);
    padding-top: 10px;
    padding-bottom: 40px;
    position: relative;
}

@media (max-width: 512px) {
	.product-template-hero {
	  background-image: linear-gradient(-34deg, #5CB7F8 0%, #234BAB 37%, #184097 52%);
	  padding: 0px 0px;
	  position: relative;
	}
	.breadcrumbs {
		position: relative;
		top: 0px;
		left: 0;
	}
	.more-info-title {
		width: 100%;
		margin-left: 0px;
	}
	.product-template-hero h1 {
		color: var(--color-white);
		line-height: 25px !important;
	}
	.h2_formatted {
		font-size: 1.250em;
	}
	.designstudio-button {
		display:none;
	}
	.modal__close-btn--outer {
		width: 48px;
		height: 48px;
		position: fixed;
		top: 60px;
		z-index: var(--zindex-fixed-element);
		background-color: hsla(var(--color-contrast-higher-h), var(--color-contrast-higher-s), var(--color-contrast-higher-l), 0.8);
	}
	.lightbox__header {
		top: 70px;
	}
}

@media (min-width: 512px) {
	.product-template-hero .breadcrumbs {
		  position: absolute;
		  top: 0px;
		  left: 0;
	}
	.more-info-title {
		width: 80%;
		margin-left: 0px;
		margin-bottom: 0px; /* Jay added to stop title from occasionally overlapping under the product image at some responsive scales */
	}
}

.product-template-hero .container {
  position: relative;
}

.product-template-hero .breadcrumbs a {
  color: var(--color-white);
  margin-right: 12px;
  margin-left: 12px;
}

.product-template-hero .breadcrumbs a:first-child {
  margin-left: 0px;
}

.product-template-hero .breadcrumbs .breadcrumbs__item {
  color: var(--color-white);
}

.product-template-hero .product-hero-breadcrumb {
  display: inline-block;
  color: var(--color-white);
  position: absolute;
  top: 0;
  left: 0;
  transform: translateY(-50px);
}

.product-template-hero .product-hero-breadcrumb a {
  color: var(--color-white);
  margin-right: 12px;
  margin-left: 12px;
}

.product-template-hero .product-hero-breadcrumb a:first-child {
  margin-left: 0px;
}

.product-template-hero:before, .product-template-hero:after {
  content: '';
  position: absolute;
  left: 0;
}

.product-template-hero .hero-bg-img {
  position: absolute;
  top: 0;
  right: 0;
  opacity: .2;
  height: 100%;
}

.product-template-hero:before {
  height: 100%;
  width: 100%;
  top: 0;
  opacity: .9;
}

.product-template-hero:after {
  height: 70px;
  width: 100%;
  bottom: -25px;
  background: url(../img/hero-grad-paper-tear-texture.svg) no-repeat top left 10%/120% 100%;
}

.product-template-hero h1 {
  color: var(--color-white);
  line-height: 46px;
}

/* -------------------------------- 

File#: _image-magnifier
Title: Image Magnifier
Descr: Plugin to create a magnifying effect on an image
Usage: codyhouse.co/license

-------------------------------- */
.img-mag {
  overflow: hidden;
}

.img-mag__asset {
  display: block;
  width: 100%;
  transform-origin: left top;
}

.pelican-inner-page-banner h3 {
  margin-bottom: 25px;
}

.pelican-inner-page-banner .pelican-inner-page-banner-img {
  background: url("http://via.placeholder.com/825x300");
  width: 100%;
  height: 300px;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

/* -------------------------------- 

File#: _1_looping_tabs
Title: Looping Tabs
Descr: Accessible tabbed content that loops automatically from one item to the next
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --loop-tabs-fill-size: 1px;
  /*  control border width */
  --loop-tabs-animation-duration: 0.5s;
  /* transition duration among tabs (to hide/reveal new content) */
}

.loop-tabs {
  position: relative;
  z-index: 1;
}

.loop-tabs .container {
  position: relative;
}

.loop-tabs .container h2 {
  padding-top: 80px;
}

.loop-tabs .container .pelican-angle-orange-border {
  position: absolute;
  width: 70%;
  height: 100%;
  left: -100px;
}

.loop-tabs .container .pelican-angle-orange-border::before {
  content: '';
  border-left: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  border-top-left-radius: 25px;
  border-bottom-left-radius: 25px;
  left: 14px;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
}

.loop-tabs .container .pelican-angle-orange-border::after {
  content: '';
  border-right: 5px solid var(--color-accent);
  border-top: 5px solid var(--color-accent);
  border-bottom: 5px solid var(--color-accent);
  right: -140px;
  top: 0;
  position: absolute;
  width: 100%;
  height: 100%;
  transform: skew(-15deg);
}

.loop-tabs .btn {
  margin-bottom: 20px;
  width: 220px;
  display: inline-block;
  text-align: left;
  transform: translateX(-50%);
  padding-left: 115px;
  background: transparent;
  box-shadow: none;
}

.loop-tabs .btn::after {
  background: transparent;
}

.loop-tabs .btn::before {
  background: transparent;
}

.loop-tabs .btn:hover {
  background: var(--color-primary-darker);
  color: var(--color-white);
}

.loop-tabs .btn:hover::after {
  background: var(--color-primary-darker);
}

.loop-tabs .btn:hover::before {
  background: var(--color-primary-darker);
}

.loop-tabs__media {
  /* hide media section if js is disabled */
  display: none;
}

.js .loop-tabs__assets,
.js .loop-tabs__panels {
  /* tab descriptions list */
  position: absolute;
  top: 150px;
  left: 250px;
  max-width: 80%;
}

.js .loop-tabs__asset,
.js .loop-tabs__panel {
  /* tab description */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
  /*  hide asset/description when not selected */
  opacity: 0;
  visibility: hidden;
  transition: opacity var(--loop-tabs-animation-duration), visibility var(--loop-tabs-animation-duration), transform var(--loop-tabs-animation-duration);
}

.js .loop-tabs__asset img,
.js .loop-tabs__panel img {
  max-width: 90%;
}

.js .loop-tabs__asset .btn,
.js .loop-tabs__panel .btn {
  max-width: 300px;
  left: 30%;
  top: -30px;
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
  display: table;
  background: var(--color-accent);
}

.js .loop-tabs__asset .btn::after,
.js .loop-tabs__panel .btn::after {
  background: var(--color-accent);
}

.js .loop-tabs__asset .btn::before,
.js .loop-tabs__panel .btn::before {
  background: var(--color-accent);
}

.js .loop-tabs__asset .btn:hover,
.js .loop-tabs__panel .btn:hover {
  background: var(--color-primary-darker);
  color: var(--color-white);
}

.js .loop-tabs__asset .btn:hover::after,
.js .loop-tabs__panel .btn:hover::after {
  background: var(--color-primary-darker);
}

.js .loop-tabs__asset .btn:hover::before,
.js .loop-tabs__panel .btn:hover::before {
  background: var(--color-primary-darker);
}

.js .loop-tabs__asset {
  transform: scale(0.9);
}

.js .loop-tabs__asset--selected,
.js .loop-tabs__panel--selected {
  position: relative;
  opacity: 1;
  z-index: 2;
  visibility: visible;
}

.js .loop-tabs__asset--selected {
  transform: scale(1);
}

.js .loop-tabs__asset--exit {
  /* create asset exit-animation when a new tab is selected  */
  transform: scale(1.1);
}

.js .loop-tabs__control--selected {
  color: var(--color-black);
  background: var(--color-accent);
}

.js .loop-tabs__control--selected::before, .js .loop-tabs__control--selected::after {
  background: var(--color-accent);
}

.js .loop-tabs__media {
  display: flex;
  justify-content: center;
}

@media (min-width: 64rem) {
  .js .loop-tabs__control::before,
  .js .loop-tabs__control::after {
    width: var(--loop-tabs-fill-size);
    height: 100%;
  }
  .js .loop-tabs__control:focus::after,
  .js .loop-tabs--autoplay-off .loop-tabs__control::after {
    transform: scaleY(1);
  }
}

.loop-tabs__controls .btn {
  text-transform: none;
}

/*  style for no-js support */
html:not(.js) .loop-tabs__content {
  width: 100%;
  flex-basis: 100%;
  max-width: 100%;
  margin: 0;
}

html:not(.js) .loop-tabs__controls {
  display: none;
}

/* -------------------------------- 

File#: _masonry
Title: Masonry
Descr: Gallery with elements laid out in optimal position based on available vertical space
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --masonry-grid-gap: var(--space-sm);
  --masonry-col-auto-size: 280px;
  /* col min-width value -> used in JS to auto-update the masonry cols width */
}

.masonry__loader {
  display: none;
}

.masonry__list {
  display: flex;
  flex-wrap: wrap;
  margin-right: calc( -1 * var(--masonry-grid-gap));
  margin-bottom: calc( -1 * var(--masonry-grid-gap));
}

.masonry__item {
  display: inline-block;
  /*  flex fallback */
  width: var(--masonry-col-auto-size);
  /* this will be updated using JS */
  margin-right: var(--masonry-grid-gap);
  margin-bottom: var(--masonry-grid-gap);
}

.js .masonry {
  position: relative;
}

.js .masonry__loader {
  display: block;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: 0;
}

.js .masonry__list {
  opacity: 0;
  transition: opacity .4s;
}

.js .masonry--loaded {
  /* reveal gallery once it has been initialized using JS */
}

.js .masonry--loaded .masonry__loader {
  display: none;
}

.js .masonry--loaded .masonry__list {
  opacity: 1;
}

@supports (flex-basis: 0px) {
  .js .masonry__list {
    flex-direction: column;
  }
  .js .masonry__item {
    flex-basis: 0px;
  }
}

/* -------------------------------- 

File#: _1_number-input
Title: Number input
Descr: Number input field with custom increment buttons
Usage: codyhouse.co/license

-------------------------------- */
.js-number-input__value {
  padding: .5em;
}

.number-input__btn {
  /* hide custom increment buttons if js is disabled */
  display: none;
}

.js .number-input {
  /* basic style */
}

.js .number-input .form-control::-webkit-inner-spin-button,
.js .number-input .form-control::-webkit-outer-spin-button {
  /* hide native increment on webkit */
  display: none;
}

.js .number-input .form-control {
  /* hide native increment on Firefox  */
  -moz-appearance: textfield;
  display: block;
}

.js .number-input__btn {
  /* custom increment buttons  */
  display: inline-block;
  /* flex fallback */
  display: flex;
}

/*   default - custom increment buttons inside input
 */
.js .number-input--v1 {
  position: relative;
  margin-right: 2em;
}

.js .number-input--v1 .form-control {
  padding: 1em .6em;
  width: 100%;
  border: 1px solid var(--color-grey);
  margin-left: .5em;
  text-align: center;
}

.js .number-input--v1 .number-input__btns {
  position: absolute;
  height: calc(100% - var(--space-xxxs)*2);
  top: var(--space-xxxs);
  right: -1.25em;
  width: var(--number-input-btn-width);
  display: flex;
  flex-direction: column;
}

.js .number-input--v1 .number-input__btn {
  position: relative;
  height: 50%;
  width: calc(100% - var(--space-xxxs));
}

.js .number-input--v1 .number-input__btn.disabled {
  opacity: .2;
}

.js .number-input--v1 .number-input__btn .icon {
  display: block;
  font-size: 0.8em;
  /* icon size */
  width: 1em;
  height: 1em;
  position: absolute;
  left: calc(50% - 0.5em);
  top: calc(50% - 0.5em);
  color: var(--color-primary-darker);
  font-size: 1.2em;
}

.js .number-input--v1 .number-input__btn:hover {
  background-color: var(--color-contrast-low);
  opacity: .7;
}

.js .number-input--v1 .number-input__btn:focus {
  outline: none;
  background-color: var(--color-primary);
}

.js .number-input--v1 .number-input__btn:focus .icon {
  opacity: .7;
}

.js .number-input--v1 .number-input__btn:active {
  background-color: hsl(var(--color-primary-h), var(--color-primary-s), calc(var(--color-primary-l) * 0.9));
}

.js .number-input--v1 .number-input__btn--plus {
  margin-bottom: var(--space-xxxxs);
}

/*  --v2 - custom increment w/ buttons outside input element */
.js .number-input--v2 {
  --number-input-btn-width: 1.6em;
  display: flex;
  align-items: center;
  font-size: 0.875em;
}

.js .number-input--v2 .form-control {
  margin: 0 var(--space-xxs);
  width: 4em;
  order: 1;
  text-align: center;
}

.js .number-input--v2 .number-input__btn {
  width: var(--number-input-btn-width);
  height: var(--number-input-btn-width);
  border-radius: 50%;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  background-color: var(--color-contrast-lower);
}

.js .number-input--v2 .number-input__btn:hover {
  background-color: var(--color-contrast-low);
}

.js .number-input--v2 .number-input__btn:focus {
  outline: none;
  background-color: var(--color-primary);
}

.js .number-input--v2 .number-input__btn:active {
  background-color: hsl(var(--color-primary-h), var(--color-primary-s), calc(var(--color-primary-l) * 0.9));
}

.js .number-input--v2 .number-input__btn .icon {
  font-size: 12px;
  /* icon size */
  width: 1em;
  height: 1em;
}

.js .number-input--v2 .number-input__btn--plus {
  order: 2;
}

/* Add to cart */
.drawer .form-control {
  padding: 1em .6em;
  border: 1px solid var(--color-grey);
  margin-left: .5em;
  text-align: center;
}

/* Shopping cart */
.js .shopping-cart-item .number-input--v1 .form-control {
  padding: .5em .3em;
}

#drawer-add-to-cart .form-control {
  margin: 0 var(--space-xxs);
  width: 2em;
  order: 1;
  text-align: center;
}

/* -------------------------------- 

File#: _1_table
Title: Table
Descr: Data tables used to organize and display information in rows and columns
Usage: codyhouse.co/license

-------------------------------- */
/*  >>> style affecting all (block + expanded) versions 👇 */
.table {
  position: relative;
  z-index: 1;
}

/* <<< end style affecting all versions */
/* >>> block version only (mobile) 👇 */
.table:not(.table--expanded) {
  border-collapse: separate;
  border-spacing: 0 var(--space-md);
  /* row gap */
  margin-top: calc(-2 * var(--space-md));
  /* set spacing variable = row gap ☝️ */
}

.table:not(.table--expanded) .table__header {
  /* hide table header - but keep it accessible to SR */
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

.table:not(.table--expanded) .table__row .table__cell:first-child {
  border-radius: var(--radius-md) var(--radius-md) 0 0;
}

.table:not(.table--expanded) .table__row .table__cell:last-child {
  border-radius: 0 0 var(--radius-md) var(--radius-md);
}

.table:not(.table--expanded) .table__row .table__cell:last-child::after {
  /* hide border bottom */
  display: none;
}

.table:not(.table--expanded) .table__cell {
  position: relative;
  display: flex;
  justify-content: space-between;
  width: 100%;
  text-align: right;
  padding: var(--space-md);
  background-color: var(--color-contrast-lower);
}

.table:not(.table--expanded) .table__cell::after {
  /* border bottom */
  content: '';
  position: absolute;
  bottom: 0;
  left: var(--space-md);
  width: calc(100% - (2 * var(--space-md)));
  height: 1px;
  background-color: var(--color-contrast-low);
}

.table:not(.table--expanded) .table__label {
  /* inline labels -> visible when table header is hidden */
  font-weight: bold;
  text-align: left;
  color: var(--color-contrast-higher);
  margin-right: var(--space-md);
}

/* <<< end block version */
/* >>> expanded version only (desktop) 👇 -> show standard rows and cols */
.table--expanded {
  border-bottom: 2px solid var(--color-contrast-low);
  /* table border bottom */
  /* --header-sticky */
}

.table--expanded .table__header .table__cell {
  /* header cell style */
  position: relative;
  z-index: 10;
  background-color: var(--color-bg);
  box-shadow: 0 2px 0 var(--color-contrast-low);
  /* header border bottom */
  font-weight: bold;
  color: var(--color-contrast-higher);
}

.table--expanded .table__body .table__row:nth-child(odd) {
  background-color: var(--color-contrast-lower);
}

.table--expanded .table__cell {
  padding: var(--space-sm);
}

.table--expanded .table__label {
  /* hide inline labels */
  display: none;
}

.table--expanded .table__header--sticky .table__cell {
  /* header cell style */
  position: sticky;
  top: 0;
}

/* <<< end expanded version */
.js .table {
  opacity: 0;
  /* hide table while it is initialized in JS */
}

.js .table--loaded {
  opacity: 1;
}

/* detect when the table needs to switch from the mobile layout to an expanded one - used in JS */
[class*="table--expanded"]::before {
  display: none;
}

.table--expanded\@xs::before {
  content: 'collapsed';
}

@media (min-width: 32rem) {
  .table--expanded\@xs::before {
    content: 'expanded';
  }
}

.table--expanded\@sm::before {
  content: 'collapsed';
}

@media (min-width: 48rem) {
  .table--expanded\@sm::before {
    content: 'expanded';
  }
}

.table--expanded\@md::before {
  content: 'collapsed';
}

@media (min-width: 64rem) {
  .table--expanded\@md::before {
    content: 'expanded';
  }
}

.table--expanded\@lg::before {
  content: 'collapsed';
}

@media (min-width: 71.25rem) {
  .table--expanded\@lg::before {
    content: 'expanded';
  }
}

.table--expanded\@xl::before {
  content: 'collapsed';
}

@media (min-width: 90rem) {
  .table--expanded\@xl::before {
    content: 'expanded';
  }
}

/* -------------------------------- 

File#: _1_rating
Title: Rating
Descr: A rating plugin that allows users to vote for your products
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --rating-icon-size: 1.75em;
}

/* .rating {} */
.rating__control ul {
  /* created in js */
  display: inline-block;
  /* flex fallback */
  display: inline-flex;
  vertical-align: top;
}

.rating__control li {
  position: relative;
  height: var(--rating-icon-size);
  width: var(--rating-icon-size);
  float: left;
  cursor: pointer;
}

.rating__control li:focus {
  outline: none;
}

.rating__control li:focus::before {
  transform: scale(1);
  opacity: 0.2;
}

.rating__control li::before {
  /* circle focus effect */
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  transform: scale(0);
  transition: 0.2s;
}

.rating__control li.rating__item--zero {
  /* hidden item - created in js if rating is 0 or not available */
  display: none;
}

.rating__control--is-hidden {
  display: none;
}

.rating__icon,
.rating__control li::before,
.rating[data-animation="on"] .rating__control ul:hover .rating__icon {
  color: var(--color-primary);
  /* star active color */
}

.rating__icon--inactive,
.rating[data-animation="on"] .rating__control li:hover ~ li .rating__icon,
.rating__item--checked ~ li .rating__icon {
  color: var(--color-contrast-low);
  /* star inactive color */
}

.rating__icon {
  /* star icon */
  overflow: hidden;
}

.rating__icon svg {
  display: block;
  height: var(--rating-icon-size);
  width: var(--rating-icon-size);
  max-width: var(--rating-icon-size);
  pointer-events: none;
}

/* read-only mode */
.rating--read-only .rating__control li {
  cursor: default;
}

.rating__icon--inactive {
  /* star icon -> off status */
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.rating__item--half .rating__icon:not(.rating__icon--inactive) {
  /* show half of active star */
  position: relative;
  z-index: 2;
  width: 50%;
}

/* animation */
.rating[data-animation="on"] .rating__control li:active .rating__icon {
  transform: scale(0.8);
}

.rating[data-animation="on"] .rating__icon {
  transition: .2s;
}

.js .rating__select {
  /* hide select element if js is enabled */
  display: none;
}

/* --link */
.rating__link {
  display: inline-block;
  transition: opacity .2s;
}

.rating__link:hover {
  opacity: 0.85;
}

/* -------------------------------- 

File#: _responsive-sidebar
Title: Responsive Sidebar
Descr: Responsive sidebar container
Usage: codyhouse.co/license

-------------------------------- */
/* mobile version only (--default) 👇 */
.sidebar:not(.sidebar--static) {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--zindex-fixed-element);
  width: 100%;
  height: 100%;
  visibility: hidden;
  transition: visibility 0s .3s;
}

.sidebar:not(.sidebar--static)::after {
  /* overlay layer */
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0);
  transition: background-color .3s;
  z-index: 1;
}

.sidebar:not(.sidebar--static) .sidebar__panel {
  /* content */
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  max-width: 380px;
  height: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  background-color: var(--color-bg);
  transform: translateX(-100%);
  transition: .3s;
}

.sidebar:not(.sidebar--static).sidebar--right-on-mobile .sidebar__panel {
  left: auto;
  right: 0;
  transform: translateX(100%);
}

.sidebar:not(.sidebar--static).sidebar--is-visible {
  visibility: visible;
  transition: none;
}

.sidebar:not(.sidebar--static).sidebar--is-visible::after {
  background-color: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.85);
}

.sidebar:not(.sidebar--static).sidebar--is-visible .sidebar__panel {
  transform: translateX(0);
  box-shadow: var(--shadow-md);
}

/* end mobile version */
.sidebar__header {
  background-color: var(--color-bg);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--space-sm) var(--space-md);
  border-bottom: 2px solid var(--color-contrast-lower);
  position: sticky;
  top: 0;
}

.sidebar__close-btn {
  width: 32px;
  height: 32px;
  display: flex;
  border-radius: 50%;
  background-color: var(--color-bg);
  box-shadow: var(--shadow-sm);
  transition: .2s;
  flex-shrink: 0;
}

.sidebar__close-btn:hover {
  box-shadow: var(--shadow-md);
}

.sidebar__close-btn .icon {
  display: block;
  margin: auto;
}

/* desktop version only (--static) 👇 */
.sidebar--static, html:not(.js) .sidebar {
  flex-shrink: 0;
  flex-grow: 1;
}

.sidebar--static .sidebar__header, html:not(.js) .sidebar .sidebar__header {
  display: none;
}

.sidebar--sticky-on-desktop {
  position: sticky;
  top: 0;
  max-height: 100vh;
  -webkit-overflow-scrolling: touch;
}

.sidebar--sticky-on-desktop.pelican-article-sticky-sidebar {
  top: 125px;
  max-height: calc(100vh - 125px);
  overflow: auto;
}

/* end desktop version */
.js .sidebar {
  opacity: 0;
  /* hide sidebar while it is initialized in JS */
}

.js .sidebar--loaded {
  opacity: 1;
}

/* no-js */
html:not(.js) .sidebar {
  position: static;
}

/* detect when the sidebar needs to switch from the mobile layout to a static one - used in JS */
[class*="sidebar--static"]::before {
  display: none;
}

.sidebar--static\@xs::before {
  content: 'mobile';
}

@media (min-width: 32rem) {
  .sidebar--static\@xs::before {
    content: 'static';
  }
}

.sidebar--static\@sm::before {
  content: 'mobile';
}

@media (min-width: 48rem) {
  .sidebar--static\@sm::before {
    content: 'static';
  }
}

.sidebar--static\@md::before {
  content: 'mobile';
}

@media (min-width: 64rem) {
  .sidebar--static\@md::before {
    content: 'static';
  }
}

.sidebar--static\@lg::before {
  content: 'mobile';
}

@media (min-width: 71.25rem) {
  .sidebar--static\@lg::before {
    content: 'static';
  }
}

.sidebar--static\@xl::before {
  content: 'mobile';
}

@media (min-width: 90rem) {
  .sidebar--static\@xl::before {
    content: 'static';
  }
}

.pelican-shop-by-category {
  background: linear-gradient(180deg, #FEFEFF 5%, var(--color-primary-light) 100%);
  background-position: top;
  padding-bottom: 100px;
  position: relative;
}

.pelican-shop-by-category .p-mobile-shop-by-drop-down {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: var(--color-primary-lighter);
  padding: 8px;
  border-radius: 30px;
}

.pelican-shop-by-category .p-mobile-shop-by-drop-down svg {
  background: var(--color-primary-darker);
  width: 20px;
  height: 20px;
  border-radius: 50%;
  position: relative;
  padding: 5px;
}

.pelican-shop-by-category .filter-nav__btn {
  position: relative;
  border-radius: 0;
  text-transform: none;
  color: var(--color-black);
  text-decoration: none;
  margin-right: 20px;
  margin-bottom: 10px;
  padding-right: 12px;
  padding-left: 12px;
  font-size: var(--text-sm);
}

.pelican-shop-by-category .filter-nav__btn:after, .pelican-shop-by-category .filter-nav__btn:before {
  position: absolute;
  height: 100%;
  width: 20px;
  position: absolute;
  top: 0;
  content: '';
  transition: color .3s ease-in-out;
}

.pelican-shop-by-category .filter-nav__btn:after {
  right: -10px;
  transform: skewX(-15deg);
  transition: color .3s ease-in-out;
}

.pelican-shop-by-category .filter-nav__btn:before {
  left: -10px;
  transform: skewX(-15deg);
  transition: color .3s ease-in-out;
}

.pelican-shop-by-category .filter-nav__btn:hover {
  background: var(--color-primary);
  color: var(color-primary-darker);
}

.pelican-shop-by-category .filter-nav__btn:hover:after, .pelican-shop-by-category .filter-nav__btn:hover:before {
  background: var(--color-primary);
}

.pelican-shop-by-category .js-filter-selected {
  position: relative;
  border-radius: 0;
  text-transform: none;
  background: var(--color-accent);
  color: var(--color-black) !important;
  text-decoration: none;
  margin-right: 20px;
  padding-right: 12px;
  padding-left: 12px;
  font-size: var(--text-sm);
}

.pelican-shop-by-category .js-filter-selected:after, .pelican-shop-by-category .js-filter-selected:before {
  position: absolute;
  height: 100%;
  width: 20px;
  background: var(--color-accent);
  top: 0;
  content: '';
  transition: color .3s ease-in-out;
}

.pelican-shop-by-category .js-filter-selected:after {
  right: -10px;
  transform: skewX(-15deg);
  transition: color .3s ease-in-out;
}

.pelican-shop-by-category .js-filter-selected:before {
  left: -10px;
  transform: skewX(-15deg);
  transition: color .3s ease-in-out;
}

.pelican-shop-by-category::after {
  content: '';
  width: 100%;
  height: 100px;
  transform: rotate(180deg);
  background: url("../img/tear-texture-horizontal.svg");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  left: 0;
  bottom: 0;
}

.pelican-shop-by-category .pelican-mobile-shop-category {
  display: none;
}

@media (max-width: 1024px) {
  .pelican-shop-by-category .pelican-mobile-shop-category {
    display: block;
    margin-top: 24px;
  }
}

.pelican-shop-by-category .pelican-mobile-shop-category .dropdown__trigger {
  background: var(--color-primary-lighter);
  border-radius: 30px;
}

.pelican-shop-by-category .pelican-mobile-shop-category .dropdown__trigger .fa-caret-down {
  background-color: var(--color-primary-darker);
  color: var(--color-white);
  border-radius: 50%;
  width: 40px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.pelican-shop-by-category .pelican-filter-links {
  padding: 20px 0 50px 0;
  display: block;
}

@media (max-width: 1024px) {
  .pelican-shop-by-category .pelican-filter-links {
    display: none;
  }
}

.pelican-shop-by-category .pelican-filter-links ul {
  align-items: center;
}

.pelican-shop-by-category .pelican-filter-links ul .pelican-selected-item {
  position: relative;
  background: var(--color-accent);
  border-radius: 0;
  color: var(--color-black);
  font-weight: 500;
  font-size: 16px;
  padding: 8px 11px;
}

.pelican-shop-by-category .pelican-filter-links ul .pelican-selected-item:after, .pelican-shop-by-category .pelican-filter-links ul .pelican-selected-item:before {
  position: absolute;
  height: 100%;
  width: 20px;
  background: var(--color-accent);
  position: absolute;
  top: 0;
  content: '';
  transition: .2s;
}

.pelican-shop-by-category .pelican-filter-links ul .pelican-selected-item:after {
  right: -10px;
  transform: skewX(-15deg);
}

.pelican-shop-by-category .pelican-filter-links ul .pelican-selected-item:before {
  left: -10px;
  transform: skewX(-15deg);
}

.pelican-shop-by-category .pelican-filter-links ul li {
  margin: 0 25px 25px 0;
}

.pelican-shop-by-category .pelican-filter-links ul li a {
  color: var(--color-black);
  text-decoration: none;
  padding: 8px 11px;
}

.pelican-shop-by-category .pelican-filter-links ul li a:after {
  right: -10px;
  transform: skewX(-15deg);
}

.pelican-shop-by-category .pelican-filter-links ul li a:before {
  left: -10px;
  transform: skewX(-15deg);
}

.pelican-shop-by-category .pelican-filter-links ul li a:hover {
  position: relative;
  background: var(--color-primary-darker);
  border-radius: 0;
  color: var(--color-white);
  font-weight: 500;
  padding: 8px 11px;
}

.pelican-shop-by-category .pelican-filter-links ul li a:hover:after, .pelican-shop-by-category .pelican-filter-links ul li a:hover:before {
  position: absolute;
  height: 100%;
  width: 20px;
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  content: '';
  transition: .2s;
}

.pelican-shop-by-category .pelican-filter-links ul li a:hover:after {
  right: -10px;
  transform: skewX(-15deg);
}

.pelican-shop-by-category .pelican-filter-links ul li a:hover:before {
  left: -10px;
  transform: skewX(-15deg);
}

.pelican-shop-by-category .pelican-custom-card-flex {
  display: flex;
  flex-flow: row wrap;
}

.pelican-shop-by-category .pelican-custom-card-flex .col-5-wrapper {
  flex-basis: 18%;
}

@media (max-width: 1024px) {
  .pelican-shop-by-category .pelican-custom-card-flex .col-5-wrapper {
    flex-basis: 48%;
  }
}

@media (max-width: 512px) {
  .pelican-shop-by-category .pelican-custom-card-flex .col-5-wrapper {
    flex-basis: 48%;
  }
}

.pelican-marquee-shop-category .p-category-title-wrapper {
  border-bottom: 1px solid #888D94;
}

/* -------------------------------- 

File#: _smooth-scrolling
Title: Smooth Scrolling
Descr: Replace the default browser behaviour (jump) with a smooth scrolling transition
Usage: codyhouse.co/license

-------------------------------- */
html {
  /* you can apply this to the container of your scrolling section */
  scroll-behavior: smooth;
  scroll-padding: 80px;
}

html.tech-article-page {
  scroll-padding: 250px;
}

/* -------------------------------- 

File#: _1_steps
Title: Steps
Descr: Multi-step indicator
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --steps-number: 4;
  --step-separator-line-stroke:10px;
  --step-separator-line-gap: 3px;
  --step-circle-size: 30px;
  --step-circle-font-size: 16px;
}

.steps {
  padding: var(--space-md);
  border-radius: var(--radius-md);
}

.steps__list {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: calc(var(--space-xs) * -1);
}

.step {
  display: inline-block;
  /* flex fallback */
  display: inline-flex;
  align-items: center;
  margin-bottom: var(--space-xs);
  /* equal to steps__list margin-bottom 👆 */
}

.step__label {
  color: var(--color-contrast-low);
  text-decoration: none;
  font-size: 1rem;
}

.step--completed:first-child .step__separator {
  left: 0;
  width: 160%;
}

.step--completed .step__label, .step--current .step__label {
  color: var(--color-black);
}

.step--completed .step__label i, .step--current .step__label i {
  color: var(--color-primary);
}

.step__separator {
  /* on small devices -> icon separator */
  margin: 0 var(--space-xs);
  /* flex fallback */
  display: inline-block;
  vertical-align: middle;
}

.step__separator .icon {
  display: block;
}

.step__circle {
  display: none;
}

@media (min-width: 64rem) {
  .steps {
    background-color: transparent;
    padding: calc(var(--step-circle-size)/2) 0 0;
    border-radius: 0px;
  }
  .steps__list {
    margin-bottom: initial;
    align-items: flex-start;
  }
  @supports (grid-area: auto) {
    .steps__list {
      display: grid;
      align-items: start;
      grid-template-columns: repeat(var(--steps-number), 1fr);
    }
  }
  .step {
    float: left;
    /* flex fallback */
    width: calc(100% / var(--steps-number));
    justify-content: center;
    text-align: center;
    position: relative;
    margin-bottom: initial;
    padding: 0 var(--space-xs);
  }
  @supports (grid-area: auto) {
    .step {
      width: auto;
    }
  }
  .step__label {
    display: inline-block;
    /* flex fallback */
    margin-top: calc(var(--space-xxs) + var(--step-circle-size)/2);
  }
  .step__separator {
    /* on bigger devices -> line connecting two adjacent steps */
    position: absolute;
    top: calc(var(--step-separator-line-stroke) * -1/2);
    left: calc(50% + var(--step-circle-size)/2 + var(--step-separator-line-gap));
    height: var(--step-separator-line-stroke);
    width: 100%;
    margin: 0;
    background-color: var(--color-contrast-low);
    /* hide text - if there's any */
    color: transparent;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
  }
  .step--completed .step__separator {
    background-color: var(--color-primary-darker);
  }
  .step:last-child .step__separator {
    width: 50%;
  }
  .step__circle {
    /* flex fallback */
    display: inline-block;
    line-height: var(--step-circle-size);
    transform: skewX(-15deg);
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: var(--color-contrast-low);
    width: var(--step-circle-size);
    height: 10px;
    position: absolute;
    left: calc(50.4% - var(--step-circle-size)/2);
    top: 5px;
    font-size: var(--step-circle-font-size);
  }
  .step__circle .icon {
    width: var(--step-circle-font-size);
    height: var(--step-circle-font-size);
    display: none;
  }
  .step--completed .step__circle, .step--current .step__circle {
    background-color: var(--color-primary-darker);
    color: var(--color-white);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

@media (max-width: 64em) {
  .step .step__label span {
    display: none;
  }
  .step:last-child .step__separator {
    display: none;
  }
}

/* screen reader */
.step--completed .step__label::after,
.step--current .step__label::after {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
          clip-path: inset(50%);
}

.step--completed .step__label::after {
  content: 'step completed';
}

.step--current .step__label::after {
  content: 'step current';
}

/* -------------------------------- 

File#: N/A
Title: Swipe Content
Descr: A Vanilla JavaScript plugin to detect touch interactions
Usage: codyhouse.co/license

-------------------------------- */
.swipe-content {
  /*  demo */
  height: 280px;
  width: 280px;
  background-color: var(--color-contrast-low);
  border-radius: var(--radius-md);
  cursor: default;
  transition: background 0.2s;
}

.swipe-content:active {
  background-color: var(--color-contrast-medium);
}

/* -------------------------------- 

File#: _3_thumbnail-slideshow
Title: Thumbnail Slideshow
Descr: Show a collection of items one at a time with additional preview images for easier selection
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --thumbslide-thumbnail-auto-size: 100px;
  /* min-width value -> used in JS to auto update the thumbnails width */
  --thumbslide-thumbnail-grid-gap: var(--space-xs);
  /* gap among thumbnails */
}

/* optional -> overwrite slideshow height at different breakpoints */
.thumbslide {
  /* --slideshow-height: 280px;  slideshow height - inherited from Slideshow component */
}

@media (min-width: 64rem) {
  .thumbslide {
    /* --slideshow-height: 400px; */
  }
}

@media (min-width: 71.25rem) {
  .thumbslide {
    /* --slideshow-height: 480px; */
  }
}

.js .thumbslide .slideshow {
  --slideshow-fade-transition-duration: 0.3s;
  /* fade effect transition duration */
  --slideshow-slide-transition-duration: 0.3s;
  /* slide effect transition duration; */
}

html:not(.js) .thumbslide__nav-wrapper {
  /* if JavaScript is disabled, hide thumbnails */
  display: none;
}

.thumbslide__nav {
  display: flex;
  overflow: hidden;
  padding: var(--thumbslide-thumbnail-grid-gap) 0;
  position: relative;
}

.thumbslide__nav::after, .thumbslide__nav::before {
  /* shadow on the side of the thumbs list - if there are enough items to scroll */
  content: '';
  position: absolute;
  z-index: 2;
  height: 80%;
  width: 0;
  top: 10%;
  box-shadow: 0 0 8px 2px rgba(0, 0, 0, 0.9);
  pointer-events: none;
  transition: opacity .2s;
  opacity: 0;
}

.thumbslide__nav::before {
  left: 0;
}

.thumbslide__nav::after {
  right: 0;
}

.thumbslide__nav--scroll-end::after {
  /* show right shadow */
  opacity: 1;
}

.thumbslide__nav--scroll-start::before {
  /* show left shadow */
  opacity: 1;
}

.thumbslide__nav-list {
  position: relative;
  z-index: 1;
  display: inline-flex;
  flex-wrap: nowrap;
  align-items: center;
  will-change: transform;
  transition: transform 0.5s;
}

.thumbslide__nav-list:hover .thumbslide__nav-item {
  /* reduce opacity of not selected thumbs on hover */
  opacity: 0.6;
}

.thumbslide__nav-list--dragging {
  /* change cursor while dragging the thumbnails list */
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

.thumbslide__nav-list--no-transition {
  /* class added in JS during dragging */
  transition: none;
}

.thumbslide__nav-item {
  float: left;
  /* flexbox fallback */
  flex-shrink: 0;
  width: var(--thumbslide-thumbnail-auto-size);
  /* this is the min-width value that will be used in js to update the thumb items width */
  margin-right: var(--thumbslide-thumbnail-grid-gap);
  transition: opacity 0.3s, transform 0.3s;
  will-change: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  /* enable drag  */
}

.thumbslide__nav-item img {
  display: block;
  pointer-events: none;
  /* enable drag */
}

.thumbslide__nav-item:hover {
  opacity: 1 !important;
}

.thumbslide__nav-item--active {
  /* selected thumb */
  position: relative;
  opacity: 1 !important;
}

.thumbslide__nav-item--active::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.7) url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http:www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cg stroke-width='1.5' stroke='%23ffffff'%3E%3Cpolyline fill='none' stroke-linecap='round' stroke-linejoin='round' stroke-miterlimit='10' points='1,9 5,13 15,3 ' %3E%3C/polyline%3E%3C/g%3E%3C/svg%3E") no-repeat center center;
  background-size: 1.25em;
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}

.thumbslide__caption {
  background-color: hsla(var(--color-bg-h), var(--color-bg-s), var(--color-bg-l), 0.85);
  padding: var(--component-padding);
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

/* --top */
.thumbslide--top {
  display: flex;
  flex-direction: column;
}

.thumbslide--top .slideshow {
  /* invert order of slideshow/thumbnails */
  order: 1;
}

/* --right/--left */
.thumbslide--vertical {
  display: flex;
}

@media not all and (min-width: 48rem) {
  .thumbslide--vertical {
    /*  on small devices only, reduce thumbnails size */
    --thumbslide-thumbnail-auto-size: 50px;
  }
}

.thumbslide--vertical .slideshow {
  display: inline-block;
  /* flex fallback */
  flex-grow: 1;
}

.thumbslide--vertical .thumbslide__nav-wrapper {
  float: right;
  /* flex fallback */
  width: var(--thumbslide-thumbnail-auto-size);
  flex-shrink: 0;
}

.thumbslide--vertical .thumbslide__nav {
  padding: 0 var(--thumbslide-thumbnail-grid-gap);
  width: 100%;
  height: 100%;
}

.thumbslide--vertical .thumbslide__nav::after, .thumbslide--vertical .thumbslide__nav::before {
  /* reset shadow position/dimensions */
  width: 80%;
  height: 0;
  left: 10%;
}

.thumbslide--vertical .thumbslide__nav::before {
  top: 0;
}

.thumbslide--vertical .thumbslide__nav::after {
  top: auto;
  bottom: 0;
}

.thumbslide--vertical .thumbslide__nav-list {
  flex-direction: column;
  position: absolute;
  top: 0;
}

.thumbslide--vertical .thumbslide__nav-item {
  margin-right: 0;
  margin-bottom: var(--thumbslide-thumbnail-grid-gap);
}

.thumbslide--vertical .thumbslide__nav-item img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* --right */
.thumbslide--left .slideshow {
  order: 1;
}

/* -------------------------------- 

File#: _tooltip
Title: Tooltip
Descr: A popup displaying additional text information
Usage: codyhouse.co/license

-------------------------------- */
:root {
  --tooltip-triangle-size: 12px;
}

.tooltip-trigger {
  /*  style inline-text tooltip trigger */
  white-space: nowrap;
  border-bottom: 1px dotted var(--color-contrast-high);
  cursor: help;
}

.tooltip {
  /*  tooltip element - created using js */
  display: inline-block;
  position: absolute;
  z-index: var(--zindex-popover);
  padding: 1.5em;
  border-radius: 1em;
  max-width: 200px;
  background-color: var(--color-primary-lighter);
  box-shadow: var(--shadow-md);
  color: var(--color-black);
  font-size: var(--text-sm);
  line-height: 1.4;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  transition: opacity 0.2s, visibility 0.2s;
}

.tooltip a {
  color: inherit;
  text-decoration: underline;
  color: var(--color-primary-darker);
}

@supports ((-webkit-clip-path: inset(50%)) or (clip-path: inset(50%))) {
  .tooltip::before {
    /*  tooltip triangle  */
    content: '';
    position: absolute;
    background-color: inherit;
    border: inherit;
    width: var(--tooltip-triangle-size);
    height: var(--tooltip-triangle-size);
    -webkit-clip-path: polygon(0% 0%, 100% 100%, 100% 100%, 0% 100%);
            clip-path: polygon(0% 0%, 100% 100%, 100% 100%, 0% 100%);
  }
}

.tootip:not(.tooltip--sticky) {
  pointer-events: none;
}

.tooltip--lg {
  max-width: 350px;
  padding: var(--space-xs);
}

.tooltip--top::before, .tooltip--bottom::before {
  left: calc(50% - var(--tooltip-triangle-size) / 2);
}

.tooltip--top::before {
  bottom: calc(var(--tooltip-triangle-size) * -0.5);
  transform: rotate(-45deg);
}

.tooltip--bottom::before {
  top: calc(var(--tooltip-triangle-size) * -0.5);
  transform: rotate(135deg);
}

.tooltip--left::before, .tooltip--right::before {
  top: calc(50% - var(--tooltip-triangle-size) / 2);
}

.tooltip--left::before {
  right: calc(var(--tooltip-triangle-size) * -0.5);
  transform: rotate(-135deg);
}

.tooltip--right::before {
  left: calc(var(--tooltip-triangle-size) * -0.5);
  transform: rotate(45deg);
}

.tooltip--is-hidden {
  /* class used in js to hide the tooltip element before its top/left positions are set */
  visibility: hidden;
  opacity: 0;
}

.pelican-brand-columns h3 {
  margin-bottom: 12px;
}

.pelican-brand-columns p {
  margin-bottom: 25px;
}

/*  how to edit the breakpoints -> copy the $breakpoints SASS map (remove the !default flag) and import it before the 'base' and 'custom-style' files -> check the _style.scss file
  https: codyhouse.co/ds/docs/framework/breakpoints#edit */
main.category-page h1 {
  font-size: 2.815rem;
  line-height: 3.4375rem;
}

main.category-page p {
  font-size: 1.125rem;
  line-height: 1.375rem;
}

main.category-page p.price {
  font-size: 1.5rem;
}

main.category-page .catelog-section label {
  margin-bottom: 0;
}

main.category-page .catelog-section a {
  color: var(--color-black);
  text-decoration: none;
}

main.category-page .catelog-section a:hover {
  text-decoration: underline;
}

main.category-page .brand-logo {
  min-height: 35px;
}

main.category-page .product-img-container {
  position: relative;
  z-index: 9;
  border: 1px solid var(--color-grey);
  margin-right: 1.875em;
}

@media (min-width: 48rem) {
  main.category-page .product-img-container a {
    display: block;
    /*height: 250px;*/
  }
  main.category-page .product-img-container a img {
    display: block;
    height: 100%;
    margin: 0 auto;
  }
}

@media (max-width: 64em) {
  main.category-page .product-img-container.w-tag {
    margin-bottom: 40px;
  }
  main.category-page .product-img-container.w-tag .tag {
    bottom: -40px;
    height: 30px;
    left: 15px;
  }
  main.category-page .product-img-container.w-tag .tag::before, main.category-page .product-img-container.w-tag .tag:after {
    height: 30px;
  }
main.category-page h1 {
  font-size: 1rem;
  line-height: 1.2rem;
}

}

@media (max-width: 32rem) {
  main.category-page .product-img-container.w-tag .tag {
    height: 25px;
    padding: 0;
  }
  main.category-page .product-img-container.w-tag .tag::before, main.category-page .product-img-container.w-tag .tag:after {
    height: 25px;
  }
  main.category-page .product-img-container.w-tag .tag img {
    width: 15px;
  }
  main.category-page .product-img-container.w-tag .tag span {
    font-size: .35em;
    vertical-align: middle;
  }
}

main.category-page .product-img-container .tag {
  position: absolute;
  left: 0;
  background: var(--color-primary-darker);
  color: var(--color-white);
  padding: .3rem .5rem;
}

@media (min-width: 64rem) {
  main.category-page .product-img-container .tag {
    padding: .3rem 0;
    top: 1rem;
  }
}

main.category-page .product-img-container .tag span {
  position: relative;
  z-index: 9;
  padding: 0 .3rem;
}

main.category-page .product-img-container .tag span img {
  vertical-align: middle;
}

main.category-page .product-img-container .tag:before, main.category-page .product-img-container .tag:after {
  transform: skewX(-15deg);
  position: absolute;
  height: 100%;
  content: '';
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  width: 15px;
}

@media (min-width: 64rem) {
  main.category-page .product-img-container .tag:before, main.category-page .product-img-container .tag:after {
    width: 20px;
  }
}

@media (min-width: 48rem) {
  main.category-page .product-img-container .tag:before, main.category-page .product-img-container .tag:after {
    transform: skewX(-15deg);
  }
}

main.category-page .product-img-container .tag:before {
  left: -7px;
}

@media (min-width: 64rem) {
  main.category-page .product-img-container .tag:before {
    left: -10px;
  }
}

main.category-page .product-img-container .tag:after {
  right: -7px;
}

@media (min-width: 64rem) {
  main.category-page .product-img-container .tag:after {
    right: -10px;
  }
}

@media (min-width: 48rem) {
  main.category-page .notes-container {
    padding-right: 1.875em;
  }
}

main.category-page .open-popup {
  position: absolute;
  bottom: 1em;
  right: 1em;
}

main.category-page .dash-list li {
  margin-bottom: 1.2rem;
}

main.category-page .dash-list li a {
  color: var(--color-black);
  text-decoration: none;
}

.product-img-container {
  position: relative;
}

.product-img-container .mag-icon {
  position: absolute;
  bottom: 0;
  right: 0;
  background: var(--color-accent);
  padding: .2em .3em;
  font-size: 1em;
}

.product-img-container .mag-icon:hover {
  cursor: pointer;
}

.catelog-section h3 {
  font-weight: bold;
}

.catelog-section .product-img-container {
  border: 1px solid var(--color-grey);
}

.catelog-section .product-img-container:hover {
  border-width: 2px;
  box-shadow: 0 2px 16px 0 rgba(0, 0, 0, 0.16);
}

.catelog-section ul li {
  margin-right: 1.5em;
}

.catelog-section ul button {
  text-decoration: underline;
  color: var(--color-primary-darker);
  padding: 0;
}

.catelog-section ul button i {
  color: var(--color-accent);
  margin-right: .5em;
}

.rating {
  font-size: .75em;
}

.rating i {
  color: var(--color-yellow);
}

.rating i.disabled {
  color: var(--color-grey);
}

/* Ripped side */
.pelican-ripped-sides {
  position: relative;
}

.pelican-ripped-sides:before, .pelican-ripped-sides:after {
  content: '';
  width: 30px;
  position: absolute;
  background: no-repeat top left / 100% 100%;
}

.pelican-ripped-sides:before {
  left: -4px;
  background-image: url(../img/textured-edge-left.png);
  height: 98%;
  top: 0;
}

.pelican-ripped-sides:after {
  right: -4px;
  background-image: url(../img/texture-edge-rt.png);
  height: 101%;
  top: -1px;
}

/* Catalog Category Page */
@media (min-width: 64rem) {
  .pelican-catalog-parts-sub-category .pelican-tire-track-cta-callout-catalog .inner-content {
    margin-right: 2.5rem;
  }
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  footer .angled-button, footer .impact-button {
    min-width: 80px;
    margin-left: 0px;
    height: 70px;
  }
}

/*  how to edit the breakpoints -> copy the $breakpoints SASS map (remove the !default flag) and import it before the 'base' and 'custom-style' files -> check the _style.scss file
  https: codyhouse.co/ds/docs/framework/breakpoints#edit */
@media (max-width: 768px) {
  .pelican-product-list-section .pelican-product-list-hero .container {
    flex-flow: column;
    align-items: flex-start;
  }
}

.pelican-product-list-section .pelican-product-list-hero .pelican-product-list-title-wrapper {
  width: 100%;
}

.pelican-product-list-section .pelican-product-list-hero .p-filters-wrapper {
  width: 100%;
}

.pelican-product-list-section .pelican-product-list-hero .p-filters {
  margin-bottom: 12px;
}

@media (max-width: 768px) {
  .pelican-product-list-section .pelican-product-list-hero .p-filters {
    flex-flow: column;
    align-items: flex-start;
    width: 100%;
  }
}

.pelican-product-list-section .pelican-product-list-hero .p-filters .p-download-items {
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

@media (max-width: 768px) {
  .pelican-product-list-section .pelican-product-list-hero .p-filters .p-download-items {
    align-items: flex-start;
    justify-content: flex-start;
  }
}

.pelican-product-list-section .pelican-product-list-hero .p-filters .p-download-items li {
  margin-right: 8px;
  display: flex;
}

.pelican-product-list-section .pelican-product-list-hero .p-filters .p-download-items li i {
  color: var(--color-accent);
  margin-right: 12px;
}

.pelican-product-list-section .pelican-product-list-hero .p-filters .p-download-items li a {
  margin: 0 4px;
  color: var(--color-black);
}

.pelican-product-list-section .pelican-product-list-hero .p-logout i {
  color: var(--color-accent);
  margin-left: 6px;
}

.pelican-product-list-section .pelican-product-list-hero .p-logout a {
  color: var(--color-black);
  text-decoration: none;
}

.pelican-product-list-section .pelican-product-list-hero .p-logout a:hover {
  text-decoration: underline;
}

@media (max-width: 768px) {
  .pelican-product-list-section .pelican-product-list-hero .border-select {
    min-width: 100%;
  }
}

.pelican-product-list-section .pelican-product-list-items {
  margin-bottom: 100px;
}

.pelican-product-list-section .pelican-product-list-items .border-select {
  min-width: 90%;
}

@media (max-width: 768px) {
  .pelican-product-list-section .pelican-product-list-items .border-select {
    min-width: 100%;
  }
}

.pelican-product-list-section .dropdown__wrapper {
  border: 1px solid var(--color-black);
  max-width: 90%;
}

.pelican-product-list-section .product-list-section a {
  color: var(--color-black);
  text-decoration: none;
}

.pelican-product-list-section .product-list-section a:hover {
  text-decoration: underline;
}

@media (max-width: 1024px) {
  .pelican-product-list-section .product-list-section .rating {
    margin-bottom: 15px;
  }
}

.pelican-product-list-section .product-list-section .fa-check-circle {
  color: var(--color-success);
  margin-right: 4px;
}

.pelican-product-list-section .product-list-section .fa-times-circle {
  color: var(--color-error);
  margin-right: 4px;
}

.pelican-product-list-section .product-list-section .p-logo-tag {
  height: 35px;
}

.pelican-product-list-section .product-list-section .price {
  font-size: 1.5rem;
}

.pelican-product-list-section .p-logo-tag {
  height: 35px;
}

.pelican-product-list-section .product-img-container {
  position: relative;
  z-index: 9;
  border: 1px solid var(--color-grey);
  max-width: 300px;
  max-height: 300px;
}

.pelican-product-list-section .product-img-container .btn {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: var(--color-accent);
  border-radius: 0px;
  border: none;
  padding: 14px;
}

.pelican-product-list-section .product-img-container .tag {
  position: absolute;
  top: 0;
  left: 0;
  background: var(--color-primary-darker);
  color: var(--color-white);
  padding: .3rem .5rem;
}

@media (min-width: 64rem) {
  .pelican-product-list-section .product-img-container .tag {
    padding: .2rem 0;
    top: 1rem;
  }
}

.pelican-product-list-section .product-img-container .tag span {
  position: relative;
  z-index: 9;
  padding: 0 .3rem;
}

.pelican-product-list-section .product-img-container .tag span img {
  vertical-align: middle;
}

.pelican-product-list-section .product-img-container .tag:before, .pelican-product-list-section .product-img-container .tag:after {
  transform: skewX(-15deg);
  position: absolute;
  height: 100%;
  content: '';
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  width: 15px;
}

@media (min-width: 64rem) {
  .pelican-product-list-section .product-img-container .tag:before, .pelican-product-list-section .product-img-container .tag:after {
    width: 20px;
  }
}

@media (min-width: 48rem) {
  .pelican-product-list-section .product-img-container .tag:before, .pelican-product-list-section .product-img-container .tag:after {
    transform: skewX(-15deg);
  }
}

.pelican-product-list-section .product-img-container .tag:before {
  left: -7px;
}

@media (min-width: 64rem) {
  .pelican-product-list-section .product-img-container .tag:before {
    left: -10px;
  }
}

.pelican-product-list-section .product-img-container .tag:after {
  right: -7px;
}

@media (min-width: 64rem) {
  .pelican-product-list-section .product-img-container .tag:after {
    right: -10px;
  }
}

.pelican-product-list-section .product-img-container i {
  position: absolute;
  right: 4px;
  bottom: 4px;
}

.pelican-product-list-section .p-empty-list {
  max-width: 600px;
  margin: 0 auto;
  text-align: center;
  padding: 100px 0 0 0;
}

.p-category-title {
  display: block;
  width: 100%;
  border-bottom: 1px solid var(--color-grey);
  padding-bottom: 0.8em;
}

.pelican-comments-section .p-contact-banner-card {
  background: var(--color-primary-lighter);
  border-radius: 15px;
  padding: 25px;
}

.pelican-comments-section textarea {
  width: 100%;
}

/*  how to edit the breakpoints -> copy the $breakpoints SASS map (remove the !default flag) and import it before the 'base' and 'custom-style' files -> check the _style.scss file
  https: codyhouse.co/ds/docs/framework/breakpoints#edit */
.shopping-cart-item a {
  text-decoration: none;
}

.shopping-cart-item a:hover {
  text-decoration: underline;
}

.shopping-cart-item h2 a {
  color: var(--color-black);
  font-weight: bold;
}

.shopping-cart-item p a {
  color: var(--color-primary-darker);
}

#shipping-price, #shipping-price-mobile {
  display: none;
}

#CountrySelectMobile {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

.countryMobileSelect {
  position: relative;
}

.countryMobileSelect svg {
  position: absolute;
  right: 1rem;
  top: 1rem;
}

/* Shop by Brand / Catalog */
.pelican-shop-filter-tags .js-repeater__add {
  display: none;
}

/* Shopping Cart */
.pelican-shopping-cart-main .table--expanded .table__body .table__row:nth-child(odd) {
  background: transparent;
}

.pelican-shopping-main-gradient {
  background-image: linear-gradient(179deg, #FEFEFF 3%, rgba(75, 166, 248, 0.7) 97%);
  padding-bottom: 50px;
  position: relative;
}

@media (min-width: 64rem) {
  .pelican-shopping-main-gradient {
    padding-bottom: 100px;
  }
}

.pelican-shopping-main-gradient::after {
  content: '';
  background: url(../img/hero-grad-paper-tear-texture.svg) no-repeat top left 10%/110% 100%;
  height: 50px;
  width: 100%;
  z-index: 9;
  bottom: -20px;
  position: absolute;
  left: 0;
}

.pelican-shopping-cart .pelican-gradient-header-card-standard .p-body-card-bottom {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.pelican-shipping-info-container {
  text-transform: uppercase;
  font-size: 1.125rem;
  position: relative;
}

@media (min-width: 64rem) {
  .pelican-shipping-info-container {
    padding: 5rem;
  }
}

.pelican-shipping-info-container .tire-track-graphic {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

.pelican-shipping-info-container .tire-track-graphic img {
  width: 100%;
}

.pelican-shipping-info-container .tire-track-graphic img.bottom-tire-graphic {
  margin-top: -4rem;
}

.pelican-shipping-info-container .pelican-ad-container {
  z-index: 9;
  position: relative;
}

.pelican-table-prices-confirm.pelican-order-confirm .table__header .table__cell {
  background: none;
  text-transform: uppercase;
  font-size: .875rem;
  font-weight: normal;
  box-shadow: none;
  border-bottom: 1px solid var(--color-accent);
}

.pelican-table-prices-confirm.pelican-order-confirm .table__row {
  border-bottom: 1px solid var(--color-grey);
}

.pelican-table-prices-confirm.pelican-order-confirm .product-img-container {
  width: 100%;
  height: auto;
}

@media (min-width: 64rem) {
  .pelican-table-prices-confirm.pelican-order-confirm .product-img-container {
    width: 180px;
    height: 180px;
  }
}

.pelican-table-prices-confirm.pelican-order-confirm a {
  font-size: 1.125rem;
}

.pelican-table-prices-confirm.pelican-order-confirm .table--expanded {
  border-bottom: none;
}

.pelican-table-prices-confirm.pelican-order-confirm .table--expanded .table__body .table__row:nth-child(odd) {
  background: transparent;
}

.pelican-table-prices-confirm .table--expanded .table__cell {
  vertical-align: top;
}

.pelican-table-prices-confirm .table--expanded .table__cell:first-child {
  padding-left: 0;
}

.pelican-table-prices-confirm .table--expanded .table__cell:last-child {
  padding-right: 0;
}

.pelican-table-prices-confirm .table--expanded .table__body .table__row {
  border-bottom: 1px solid var(--color-grey);
}

.pelican-shopping-cart-accordion li {
  border: none;
}

.pelican-shopping-cart-accordion li .accordion__header {
  color: var(--color-white);
  background: var(--color-primary-darker);
  font-size: 1.25rem;
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
}

.pelican-shopping-cart-accordion li .accordion__panel {
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
  background: var(--color-primary-lighter);
  padding: 2rem;
}

.pelican-shopping-cart-accordion li .table__header .table__cell {
  box-shadow: 0 1px 0 var(--color-primary-darker);
  text-transform: uppercase;
  font-size: .875rem;
  font-weight: normal;
}

/* Sidebar  */
.pelican-shopping-product-sidebar h2 {
  font-size: 1.4rem;
  color: var(--color-primary-darker);
}

.pelican-shopping-product-sidebar h3 {
  font-weight: bold;
  font-size: 1rem;
  line-height: 1.125rem;
  font-family: var(--font-tertiary);
  margin-top: 0;
  margin-bottom: .5rem;
}

.pelican-shopping-product-sidebar p {
  font-size: .875rem;
}

.pelican-shopping-product-sidebar p.pelican-success {
  color: var(--color-success);
}

.pelican-shopping-product-sidebar .arrow-link {
  font-size: 1.125rem;
  font-weight: bold;
}

.pelican-shopping-product-sidebar .pelican-gradient-header-card-standard .p-body-card-bottom {
  padding: 1rem;
}

#modal-pelican-all-items .table__header .table__cell {
  box-shadow: 0 1px 0 var(--color-primary-darker);
  font-weight: normal;
  text-transform: uppercase;
  font-size: .875rem;
  line-height: 1.125rem;
}

#modal-pelican-all-items header h3 {
  font-size: 1.4rem;
  font-weight: normal;
}

.pelican-success {
  color: var(--color-success);
}

.pelican-single-product-template .h2_formatted {
  margin-bottom: 12px;
}

.pelican-single-product-template a {
  color: var(--color-primary-darker);
}

.pelican-single-product-template .thumbslide {
  transform: translateY(-240px);
  padding: 30px;
  max-height: 420px;
}

.pel-thumb-cnt {
	margin-top: 150px;
}

.selector-dropdown{
	max-height: 400px !important;
	overflow-x: clip !important;
	overflow-y: scroll !important;
}
/*
.pelican-single-product-template .thumbslide {
    transform: translateY(-40px);
    padding: 30px;
    max-height: 420px;
}*/

@media (max-width: 1024px) {
  .pelican-single-product-template .thumbslide {
    transform: translateY(0px);
    max-height: 550px;
    padding: 0;
  }
  .pelican-single-product-template .thumbslide .slideshow, .pelican-single-product-template .thumbslide .thumbslide__nav-wrapper {
    padding-left: 37px;
    padding-right: 37px;
  }
}

@media (max-width: 768px) {
  .pelican-single-product-template .thumbslide {
    transform: translateY(0px);
    max-height: 420px;
  }
 .selector-dropdown {
	max-height: 300px !important;
	overflow-x: clip !important;
	overflow-y: scroll !important;
  }
}

@media (max-width: 512px) {
  .pelican-single-product-template .thumbslide {
    transform: translateY(0px);
    max-height: 450px;
  }
}

.pelican-single-product-template .slideshow__content {
  border: 2px solid #888D94;
  max-height: 500px;
}

.pelican-single-product-template .slideshow__content .slideshow__item button {
  position: absolute;
  right: 0;
  bottom: 80px;
  padding: 8px;
  border-radius: 0px;
  border: none;
  background-color: var(--color-accent);
}

@media (max-width: 1024px) {
  .pelican-single-product-template .slideshow__content .slideshow__item button {
    bottom: 0;
  }
}

.pelican-single-product-template .slideshow__control {
  width: 20px;
  height: 20px;
}

.pelican-single-product-template .slideshow__control .slideshow__btn {
  width: 40px;
  height: 40px;
  background: var(--color-accent) !important;
  color: var(--color-black) !important;
  border-radius: 0px;
}

.pelican-single-product-template .slideshow__control .slideshow__btn:hover {
  background: var(--color-primary) !important;
  color: var(--color-black) !important;
  border-radius: 0px;
}

.pelican-single-product-template .slideshow__control-prev {
  transform: translateX(-20px);
  position: fixed;
  top: 60%;
}

.pelican-single-product-template .slideshow__control-prev:hover {
  background: var(--color-primary-dark);
  color: var(--color-primary-darker);
  cursor: pointer;
}

@media (max-width: 1024px) {
  .pelican-single-product-template .slideshow__control-prev {
    position: absolute;
    transform: translateX(-10px);
    left: 0;
    top: 50%;
  }
}

.pelican-single-product-template .slideshow__control-next {
  transform: translateX(0px);
  position: fixed;
  top: 60%;
}

.pelican-single-product-template .slideshow__control-next:hover {
  background: var(--color-primary-dark);
  color: var(--color-primary-darker);
  cursor: pointer;
}

@media (max-width: 1024px) {
  .pelican-single-product-template .slideshow__control-next {
    transform: translateX(-10px);
    position: absolute;
    right: 0;
    top: 50%;
  }
}

.pelican-single-product-template .pelican-single-product-parts-info {
  margin-bottom: 0px;
  padding-top: 10px;
}

.pelican-single-product-template .pelican-single-product-parts-info .model-info {
  margin-bottom: 25px;
}

.pelican-single-product-template .pelican-single-product-parts-info .parts-number {
  font-weight: 200;
}

.pelican-single-product-template .pelican-single-product-rating {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}

.pelican-single-product-template .pelican-single-product-rating .pelican-rating {
  display: flex;
  flex-flow: row nowrap;
}

.pelican-single-product-template .pelican-single-product-rating .pelican-rating .p-item {
  margin-right: 12px;
}

.pelican-single-product-template .pelican-single-product-rating .pelican-rating .p-item:last-child {
  margin-right: 0px;
}

.pelican-single-product-template .pelican-single-product-pricing {
  padding: 25px 0;
}

@media (max-width: 767px) {
  .pelican-single-product-template .pelican-single-product-pricing .p-product-qty {
    flex-flow: column;
  }
}

.pelican-single-product-template .pelican-single-product-pricing .p-product-price {
  font-size: 2.2em;
  font-weight: 900;
  display: inline-block;
  margin-bottom: 8px;
}

.pelican-single-product-template .pelican-single-product-pricing .fa-check {
  color: #4B9D17;
}

.pelican-single-product-template .pelican-share-bar {
  padding: 0px;
}

.pelican-single-product-template .pelican-share-bar ul {
  display: flex;
}

.pelican-single-product-template .pelican-share-bar ul li {
  margin-right: 18px;
}

.pelican-single-product-template .pelican-share-bar ul li i {
  margin-right: 6px;
  color: var(--color-accent);
}

.pelican-single-product-template .pelican-other-brands-list {
  padding: 25px 0;
}

.pelican-single-product-template .pelican-other-brands-list ul li {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  margin-bottom: 12px;
}

.pelican-single-product-template .pelican-other-brands-list ul li span {
  display: inline-block;
  margin-right: 18px;
}

.pelican-single-product-details {
  background-image: linear-gradient(0deg, #FFFFFF 11%, #0A93DB 67%, #184097 87%);
  padding-top: 6%;
  position: relative;
}

.pelican-single-product-details::before {
  content: '';
  background: url(../img/tear-texture-horizontal.svg) no-repeat top left 10%/120% 100%;
  height: 120px;
  width: 100%;
  position: absolute;
  top: -43px;
  left: 0;
  z-index: 9;
}

.pelican-single-product-details .container {
  background: var(--color-white);
  padding: 3%;
}

@media (max-width: 1024px) {
  .pelican-single-product-details .p-detail-button-wrapper {
    flex-flow: column;
    margin-bottom: 30px;
  }
  .pelican-single-product-details .p-detail-button-wrapper .btn {
    margin-bottom: 8px;
  }
}

.pelican-single-product-details .pelican-detail-section {
  margin-bottom: 80px;
  position: relative;
}

.pelican-single-product-details .pelican-detail-section h2 {
  color: var(--color-primary-darker);
  margin-bottom: 14px;
}

.pelican-single-product-details .pelican-detail-section h4 a {
  color: var(--color-black);
  text-decoration: none;
}

.pelican-single-product-details .pelican-detail-section h4 a:hover {
  text-decoration: underline;
  color: var(--color-primary-darker);
}

.pelican-single-product-details .pelican-detail-section p {
  margin-bottom: 25px;
}

.pelican-single-product-details .pelican-detail-section a {
  color: var(--color-primary-darker);
}

.pelican-single-product-details .pelican-detail-section .p-review-title {
  margin-bottom: 8px;
}

.pelican-single-product-details .pelican-detail-section .p-section-anchor {
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(150px);
}

@media (max-width: 1024px) {
  .pelican-single-product-details .pelican-detail-section .p-section-anchor {
    transform: translateX(0px);
  }
}

@media (max-width: 512px) {
  .pelican-single-product-details .pelican-detail-section .p-section-anchor {
    top: -20px;
  }
}

.pelican-single-product-details .pelican-detail-section .p-section-anchor i {
  color: var(--color-accent);
  margin-right: 8px;
}

.pelican-single-product-details .pelican-detail-section ul li {
  margin-bottom: 8px;
}

.pelican-single-product-details .pelican-detail-section .btn {
  color: var(--color-black);
}

.pelican-single-product-details .pelican-detail-section .product-img-container {
  border: 1px solid #888D94;
  position: relative;
  max-width: 150px;
}

.pelican-single-product-details .pelican-detail-section .product-img-container .btn {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: var(--color-accent);
  border-radius: 0px;
  border: none;
  padding: 4px;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card {
  border-radius: 15px;
  border: 3px solid var(--color-accent);
  padding: 5%;
  position: relative;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card a {
  position: absolute;
  width: 100%;
  height: 100%;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card:hover {
  background: var(--color-primary-lighter);
  border: 3px solid var(--color-primary-darker);
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card:hover h3 {
  color: var(--color-primary-darker);
  text-decoration: underline;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card header {
  margin-bottom: 8px;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card header img {
  height: 70px;
  display: block;
  margin-right: 6px;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card header h3 {
  margin-bottom: 6px;
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card header i {
  margin-right: 6px;
  color: var(--color-primary);
}

.pelican-single-product-details .pelican-detail-section .p-tech-article-card footer {
  border-top: 1px solid #1F2432;
  padding-top: 8px;
}

.pelican-single-product-details .pelican-detail-section .pelican-detail-section-list li {
  list-style-type: none;
  margin-bottom: 8px;
}

.pelican-single-product-details .pelican-detail-section .pelican-detail-section-list li::before {
  content: '//';
  color: var(--color-accent);
  margin-right: 12px;
}

.pelican-single-product-details .pelican-customer-review {
  margin-bottom: 80px;
}

.pelican-single-product-details .pelican-customer-review .p-author {
  display: inline-block;
  color: var(--color-primary-dark);
  margin-bottom: 8px;
}

.pelican-single-product-details .pelican-customer-review .p-date {
  display: inline-block;
  color: #888D94;
}

.pelican-single-product-details .pelican-customer-review h3 {
  font-family: var(--font-primary);
  margin-bottom: 8px;
}

/*  how to edit the breakpoints -> copy the $breakpoints SASS map (remove the !default flag) and import it before the 'base' and 'custom-style' files -> check the _style.scss file
  https: codyhouse.co/ds/docs/framework/breakpoints#edit */
.tech-articles .img-mag {
  position: relative;
}

.tech-articles .mag-icon {
  position: absolute;
  bottom: 0;
  right: 0;
  background: var(--color-accent);
  padding: .2em .3em;
  font-size: 1.4em;
}

.tech-articles .mag-icon:hover {
  cursor: pointer;
}

.tech-articles .author-section {
  font-size: .875em;
  border-bottom: 1px solid var(--color-black);
  padding-bottom: 2em;
  margin-bottom: 2em;
}

.tech-articles .author-section p:not(:last-child) {
  padding-right: 1em;
}

.tech-articles .author-section img {
  width: 20px;
  height: 20px;
  display: inline;
  vertical-align: middle;
}

@media (max-width: 64em) {
  .tech-articles .author-section p {
    width: 100%;
  }
}

.tech-articles main a {
  color: var(--color-primary-darker);
}

.tech-articles .tech-article-main figure {
  margin: 2em;
}

.tech-articles .pelican-tire-track-cta-callout {
  padding-top: 20px;
}

.tech-articles .pelican-tire-track-cta-callout .container {
  width: 100%;
}

.tech-articles .pelican-tire-track-cta-callout .container .tire-track-graphic {
  top: 85%;
}

.tech-articles .pelican-tire-track-cta-callout .container .tire-track-graphic .bottom-tire-graphic {
  transform: translateY(-45px);
}

.tech-articles .card-outline h4 {
  font-size: 1.75rem;
  margin-bottom: .5rem;
}

@media (min-width: 64rem) {
  .project-info > div:first-child {
    border-right: 1px solid var(--color-black);
  }
}

.project-info ul {
  list-style: none;
}

.project-info ul li {
  margin-bottom: 1.2rem;
  position: relative;
}

.project-info ul li.indent {
  padding-left: 1.5rem;
}

.project-info ul li.indent i {
  position: absolute;
  left: 0;
  top: .15em;
}

.project-info ul strong {
  color: var(--color-primary-darker);
}

.project-info ul i {
  color: var(--color-primary);
  margin-right: .5em;
}

.project-info ul i.disabled {
  opacity: .4;
}

.project-info ul a {
  text-decoration: underline;
  color: var(--color-primary-darker);
}

.pelican-comment {
  padding-bottom: 1rem;
}

.pelican-comment:not(:last-child) {
  border-bottom: 1px solid var(--color-black);
}

.pelican-comment .pelican-response {
  margin-left: 2.5em;
  margin-top: 1em;
}

/* Directory */
#pelican-article-nav {
  border-top: 2px solid var(--color-accent);
  border-bottom: 2px solid var(--color-accent);
  margin-top: 1.875rem;
  margin-bottom: 1.875rem;
  padding-top: .5rem;
  padding-bottom: .5rem;
}

#pelican-article-nav h2 {
  color: var(--color-primary-darker);
  font-weight: bold;
  font-size: 1rem;
  margin-top: .625rem;
}

#pelican-article-nav ul {
  margin-top: 1rem;
  margin-bottom: 1.25rem;
}

#pelican-article-nav ul li {
  display: inline-block;
}

#pelican-article-nav ul li a {
  color: var(--color-black);
  text-decoration: underline;
}

#pelican-article-nav ul li a:hover {
  color: var(--color-white);
}

#pelican-article-nav ul li:not(:last-child) {
  margin-right: .5em;
}

.pelican-desktop-app-models img {
  width: 45%;
}

.pelican-desktop-app-models img:nth-child(odd) {
  margin-right: .5em;
}

@media (min-width: 64rem) {
  .article-directory .two-column-list {
    -moz-column-count: 2;
         column-count: 2;
  }
}

.article-directory .card-outline {
  height: 100%;
  width: 100%;
  transition: .3s;
}

@media (min-width: 64rem) {
  .article-directory .card-outline {
    width: 97%;
  }
}

.article-directory .card-outline:hover {
  background: var(--color-primary-lighter);
  border-color: var(--color-primary-darker);
}

.article-directory .card-outline:hover h3 {
  color: var(--color-primary-darker);
  text-decoration: underline;
}

.article-directory .card-outline h3 {
  font-size: 1.75rem;
  margin-bottom: .5rem;
}

.article-directory .js-filter__item .count {
  font-family: var(--font-secondary);
  color: var(--color-black);
}

.jump-to-category .pelican-mobile-shop-category {
  display: none;
}

@media (max-width: 1024px) {
  .jump-to-category .pelican-mobile-shop-category {
    display: block;
    margin-top: 24px;
  }
}

.jump-to-category .pelican-mobile-shop-category .dropdown__trigger {
  background: var(--color-primary-lighter);
  border-radius: 30px;
}

.jump-to-category .pelican-mobile-shop-category .dropdown__trigger .fa-caret-down {
  background-color: var(--color-primary-darker);
  color: var(--color-white);
  border-radius: 50%;
  width: 40px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.tech-article-page, .shopping-sticky-sidebar {
  overflow-x: hidden;
}

@media (max-width: 64em) {
  .tech-article-page footer {
    margin-bottom: 42px;
  }
}

.pelican-track-order .pelican-track-order-text {
  border-bottom: 3px solid var(--color-accent);
}

.pelican-order-forms .order-cards {
  background: var(--color-primary-lighter);
  border-radius: 15px;
  text-align: left;
  display: flex;
  flex-flow: column;
}

.pelican-order-forms .order-cards p {
  text-align: left;
}

.pelican-order-forms .order-cards a {
  color: var(--color-primary-darker);
}

.pelican-order-forms .order-cards small {
  text-transform: uppercase;
  margin-bottom: 4px;
  display: block;
}

.pelican-order-forms .order-cards .pelican-contact-form-label {
  font-size: 0.8em;
  text-transform: uppercase;
  text-align: left;
}

.pelican-order-forms .order-cards form {
  flex-flow: column;
}

.pelican-order-forms .order-cards form input[type="text"] {
  padding: 8px;
  border: 1px solid var(--color-primary-darker);
  margin-bottom: 25px;
}

.pelican-order-forms .order-cards form input[type="email"] {
  padding: 8px;
  border: 1px solid var(--color-primary-darker);
  margin-bottom: 25px;
}

.pelican-order-forms .order-cards .btn {
  margin-bottom: 25px;
  width: 90%;
}

.pelican-order-confirm a, .pelican-shopping-cart-accordion a, #modal-pelican-all-items a {
  color: var(--color-black);
  text-decoration: none;
}

.pelican-order-confirm a:hover, .pelican-shopping-cart-accordion a:hover, #modal-pelican-all-items a:hover {
  color: var(--color-primary-darker);
  text-decoration: underline;
}

.pelican-order-confirm .p-small-slash, .pelican-shopping-cart-accordion .p-small-slash, #modal-pelican-all-items .p-small-slash {
  color: var(--color-accent);
  margin-right: 4px;
}

.pelican-order-confirm .pelican-confirm-header-section .p-header-label, .pelican-shopping-cart-accordion .pelican-confirm-header-section .p-header-label, #modal-pelican-all-items .pelican-confirm-header-section .p-header-label {
  color: var(--color-primary-darker);
}

.pelican-order-confirm .pelican-confirm-header-section p, .pelican-shopping-cart-accordion .pelican-confirm-header-section p, #modal-pelican-all-items .pelican-confirm-header-section p {
  color: var(--color-black);
}

.pelican-order-confirm .pelican-gradient-header-card .p-header-gradient, .pelican-shopping-cart-accordion .pelican-gradient-header-card .p-header-gradient, #modal-pelican-all-items .pelican-gradient-header-card .p-header-gradient {
  color: var(--color-white);
  background: linear-gradient(42.55deg, #0A93DB 0%, #184097 100%);
  border-top-left-radius: 15px;
  border-top-right-radius: 15px;
  text-transform: uppercase;
}

.pelican-order-confirm .pelican-gradient-header-card .p-body-card-bottom, .pelican-shopping-cart-accordion .pelican-gradient-header-card .p-body-card-bottom, #modal-pelican-all-items .pelican-gradient-header-card .p-body-card-bottom {
  border-bottom-left-radius: 15px;
  border-bottom-right-radius: 15px;
  background: var(--color-primary-lighter);
}

.pelican-order-confirm .pelican-gradient-header-card .p-body-card-bottom .angled-button, .pelican-order-confirm .pelican-gradient-header-card .p-body-card-bottom .impact-button, .pelican-shopping-cart-accordion .pelican-gradient-header-card .p-body-card-bottom .angled-button, .pelican-shopping-cart-accordion .pelican-gradient-header-card .p-body-card-bottom .impact-button, #modal-pelican-all-items .pelican-gradient-header-card .p-body-card-bottom .angled-button, #modal-pelican-all-items .pelican-gradient-header-card .p-body-card-bottom .impact-button {
  width: 100%;
  max-width: 90%;
}

@media (max-width: 1024px) {
  .pelican-order-confirm .pelican-gradient-header-card .p-body-card-bottom .angled-button, .pelican-order-confirm .pelican-gradient-header-card .p-body-card-bottom .impact-button, .pelican-shopping-cart-accordion .pelican-gradient-header-card .p-body-card-bottom .angled-button, .pelican-shopping-cart-accordion .pelican-gradient-header-card .p-body-card-bottom .impact-button, #modal-pelican-all-items .pelican-gradient-header-card .p-body-card-bottom .angled-button, #modal-pelican-all-items .pelican-gradient-header-card .p-body-card-bottom .impact-button {
    max-width: 95%;
    margin-left: 3%;
    margin-right: 3%;
  }
}

.pelican-order-confirm .pelican-table-header, .pelican-shopping-cart-accordion .pelican-table-header, #modal-pelican-all-items .pelican-table-header {
  border-bottom: 3px solid var(--color-accent);
}

.pelican-order-confirm .pelican-table-header span, .pelican-shopping-cart-accordion .pelican-table-header span, #modal-pelican-all-items .pelican-table-header span {
  text-transform: uppercase;
}

.pelican-order-confirm .pelican-table-body, .pelican-shopping-cart-accordion .pelican-table-body, #modal-pelican-all-items .pelican-table-body {
  border-bottom: 1px solid var(--color-grey);
}

.pelican-order-confirm .pelican-table-body .p-custom-hidden-mobile ul, .pelican-shopping-cart-accordion .pelican-table-body .p-custom-hidden-mobile ul, #modal-pelican-all-items .pelican-table-body .p-custom-hidden-mobile ul {
  margin-top: 8px;
}

.pelican-order-confirm .pelican-table-body .p-custom-hidden-mobile ul li, .pelican-shopping-cart-accordion .pelican-table-body .p-custom-hidden-mobile ul li, #modal-pelican-all-items .pelican-table-body .p-custom-hidden-mobile ul li {
  margin-bottom: 8px;
}

.pelican-order-confirm .pelican-shipping-confirmation, .pelican-shopping-cart-accordion .pelican-shipping-confirmation, #modal-pelican-all-items .pelican-shipping-confirmation {
  background: var(--color-primary-lighter);
  padding: 25px;
  position: relative;
}

.pelican-order-confirm .pelican-shipping-confirmation::after, .pelican-shopping-cart-accordion .pelican-shipping-confirmation::after, #modal-pelican-all-items .pelican-shipping-confirmation::after {
  content: '';
  height: 70px;
  width: 100%;
  bottom: -45px;
  left: 0;
  position: absolute;
  background: url(../img/hero-grad-paper-tear-texture.svg) no-repeat top left 10%/120% 100%;
}

.pelican-order-confirm .table--expanded .table__header .table__cell, .pelican-shopping-cart-accordion .table--expanded .table__header .table__cell, #modal-pelican-all-items .table--expanded .table__header .table__cell {
  background: none;
}

.pelican-order-confirm .pelican-table-title-confirm .p-sub-label, .pelican-shopping-cart-accordion .pelican-table-title-confirm .p-sub-label, #modal-pelican-all-items .pelican-table-title-confirm .p-sub-label {
  color: var(--color-primary-darker);
}

.pelican-order-confirm .pelican-table-title-confirm h2, .pelican-shopping-cart-accordion .pelican-table-title-confirm h2, #modal-pelican-all-items .pelican-table-title-confirm h2 {
  color: var(--color-primary-darker);
}

.pelican-order-confirm .product-img-container, .pelican-shopping-cart-accordion .product-img-container, #modal-pelican-all-items .product-img-container {
  width: 140px;
  height: 140px;
  position: relative;
  z-index: 9;
  border: 1px solid var(--color-grey);
  margin-right: 1.875em;
}

.pelican-order-confirm .product-img-container img, .pelican-shopping-cart-accordion .product-img-container img, #modal-pelican-all-items .product-img-container img {
  height: auto !important;
}

.pelican-order-confirm .product-img-container .btn, .pelican-shopping-cart-accordion .product-img-container .btn, #modal-pelican-all-items .product-img-container .btn {
  position: absolute;
  right: 0;
  bottom: 0;
  background-color: var(--color-accent);
  border-radius: 0px;
  border: none;
  padding: 6px;
}

.pelican-order-confirm .product-img-container .tag, .pelican-shopping-cart-accordion .product-img-container .tag, #modal-pelican-all-items .product-img-container .tag {
  position: absolute;
  left: 0;
  background: var(--color-primary-darker);
  color: var(--color-white);
  padding: .3rem .5rem;
}

.pelican-order-confirm .product-img-container .tag:before, .pelican-shopping-cart-accordion .product-img-container .tag:before, #modal-pelican-all-items .product-img-container .tag:before {
  transform: skewX(-15deg);
  position: absolute;
  height: 100%;
  content: '';
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  width: 15px;
  left: -10px;
}

.pelican-order-confirm .product-img-container .tag:after, .pelican-shopping-cart-accordion .product-img-container .tag:after, #modal-pelican-all-items .product-img-container .tag:after {
  transform: skewX(-15deg);
  position: absolute;
  height: 100%;
  content: '';
  background: var(--color-primary-darker);
  position: absolute;
  top: 0;
  width: 15px;
}

.pelican-order-confirm .pelican-confirm-general-text .h3_formatted, .pelican-shopping-cart-accordion .pelican-confirm-general-text .h3_formatted, #modal-pelican-all-items .pelican-confirm-general-text .h3_formatted {
  color: var(--color-primary-darker) !important;
}
.pel-critical {
	width:95%;
	color:red;
	font-weight:bold;
	font-size:1.1em;
	border: solid 1px black;
	padding-top:15px;
	padding-bottom:20px;
	padding-left:10px;
}
/*! purgecss end ignore */

.select-vehicle-cb {
	cursor:pointer;
}

.cart-code-q {
font-size: 20px; 
font-weight: 600; 
color: #2b51a0;
}

.cart-code-text {
color: #4c4c4c; 
font-size: 1.1em; 
padding-top: 5px; 
padding-bottom: 5px; 
line-height: 1.3em;

}

.cart-code-box {
display: block; 
width: 100%; 
border: 1px dashed #dbeeff; 
padding: 10px; 
border-radius: 4px; 
background: #ffffff;
margin: 0 auto;
}

.cart-code-box-text {
color: #e27b05; 
text-align: center; 
font-family: 'Cabin', sans-serif; 
font-size: 1.6em; 
font-weight: 600;
letter-spacing: 1px;
}

/* Car Bar - START */
.pelican-hero-home-carousel h1 {
	margin-top: -40px;
}
.header-selector-carbar[class*="carbar-shown"] ~ .pelican-hero-home-carousel h1 {
	margin-top: -10px !important;
}
.header-selector-carbar {
background: linear-gradient(#234bab 0%, #0a93db 100%);
}
/* fix */
@media (min-width: 64rem) {
.header-selector-carbar > div {
position: relative;
}
.header-selector-carbar > div::after {
width: 3000px;
height: 100%;
position: absolute;
left: -2999px;
top: 0;
content: '';
background: var(--color-accent);
}
}
.header-selector-carbar .bg-alert {
padding-bottom: 1.5em;
}
@media (min-width: 1023px) {
.header-selector-carbar span {
display: block;
}
.header-selector-carbar .bg-alert {
padding-bottom: 1em;
}
}
@media (min-width: 1023px) and (max-width: 1600px) {
.header-selector-carbar {
background: #ff8b03;
background: linear-gradient(90deg, #ff8b03 15%, #234bab 15%, #0a93db 100%);
}
}
@media (min-width: 1600px) and (max-width: 1800px) {
.header-selector-carbar {
background: linear-gradient(90deg, #ff8b03 20%, #234bab 20%, #0a93db 100%);
}
}
@media (min-width: 1800px) {
.header-selector-carbar {
background: linear-gradient(90deg, #ff8b03 25%, #234bab 25%, #0a93db 100%);
}
}
.header-selector-carbar .bg-alert {
width: 90%;
padding-left: 1em;
}
@media (max-width: 64em) {
.header-selector-carbar .bg-alert {
width: 70%;
}
}
.header-selector-carbar .bg-alert p {
position: relative;
z-index: 9;
font-weight: bold;
}
.header-selector-carbar .bg-alert::after {
width: 40%;
content: '';
top: 0;
height: 100%;
left: -30%;
position: absolute;
background: var(--color-accent);
}
@media (min-width: 64rem) {
.header-selector-carbar .bg-alert {
width: auto;
}
.header-selector-carbar .bg-alert::after {
display: none;
}
}
.header-selector-carbar {
background: #173F96;
background-color: #173F96;
}
#car-bar-inner {
padding: 10px;
background-color: #173F96;
height: 92px;
padding-left: 0px;
position: relative;
z-index: 1;
}
.carbar-table {
display: table;
width: 100%;
padding-top:36px;
}
.carbar-table-row {
display: table-row;
width: 100%;
}
.carbar-table-col {
display: table-cell;
}
.carbar-vertical-center {
vertical-align: middle;
}
.carbar-cars {
width: 100%;
padding-right: 10px;
}
.carbar-cars-inner {
background-color: transparent;
border-radius: 5px;
padding: 5px;
margin-left: 5px;
}
.carbar-cars-inner a {
text-decoration: none;
}
.carbar-cars-inner span {
position:relative;
}
.carbar-cars-inner img {
width: 120px;
height: 83px;
border: 4px solid #c1e2ff;
box-shadow: 5px 5px 8px -3px rgba(0,0,0,0.6);
background-color: #fff;
}
.carbar-cars-inner a:hover > img {
border: 4px solid #7ac1ff;
box-shadow: 4px 4px 6px -3px rgba(0,0,0,0.6);
margin-left: 1px;
margin-right: -1px;
margin-top: 1px;
margin-bottom: -1px;
}
.carbar-name {
background-color: #bfe1ff;
box-shadow: 5px 5px 12px 0px rgba(0,0,0,0.48);
border: 2px solid #fff;
display: inline-block;
bottom: 7px;
/* fix */
max-width: 170px;
min-width: 140px;
/* fix */
left: 30px;
padding-left: 4px;
padding-right: 4px;
border-radius: 3px;
}
.carbar-cars-inner a:hover > .carbar-name {
background-color: #7ac1ff;
box-shadow: 4px 4px 8px 0px rgba(0,0,0,0.48);
border: 2px solid #c1e2ff;
}
/* not used yet - layout adjustment needed to support */
/*
.carbar-nevermind {
white-space: nowrap;
display: inline;
cursor:pointer;
background-color: #ddd;
border-radius:5px;
padding:5px;
}
.col\@md > .carbar-nevermind {
display:inline;
float: right;
margin-top:4px;
}
.carbar-nevermind-col {
}
*/
.carbar-cars-col {
position: relative;
padding-top:10px;
padding-bottom:10px;
}
.carbar-cars-col-inner {
position: absolute;
/*top: 50%;
transform: translateY(-50%);*/
top:0px !important;
}
/*
.carbar-goto {
display: inline-block;
color: #fff;
font-weight: bold;
padding-left: 4px;
margin-bottom: 2px;
}
*/
.header-selector-carbar .h5_formatted {
white-space: nowrap;
padding-left: 0px;
padding-right: 10px;
}
.header-selector-carbar .bg-alert {
padding-right: 0px;
}
.carbar-vertical-center > span.angled-button,
.carbar-vertical-center-mobile > span.angled-button {
padding: 8px;
padding-left: 10px;
padding-right: 10px;
margin-top: -34px;
}
/* fix */
.carbar-table {
margin-top: -144px;
padding-left: 221px;
}
.header-selector-carbar .bg-alert {
height: 92px;
margin-top: -10px;
max-width:145px;
}
.carbar-subcar1, .carbar-subcar2 {
/*margin-top: -16px;*/
}
.carbar-vertical-center > span.angled-button {
margin-top: -44px !important;
}
/* fix */
@media (min-width: 1px) {
/* override to force image tilt in all scales */
.carbar-cars-inner img.rotate-img {
transform: rotate(-6deg);
}
}
@media (max-width: 1280px) {
/* fix */
.carbar-table {
margin-top: -130px;
}
.carbar-subcar1, .carbar-subcar2 {
/*margin-top: -18px;*/
}
.carbar-vertical-center > span.angled-button {
margin-top: -40px !important;
}
/* fix */
.carbar-cars-inner img {
width: 100px;
height: 69px;
}
.carbar-name {
left: -10px;
}
.carbar-table {
padding-top: 24px;
}
.carbar-vertical-center > span.angled-button,
.carbar-vertical-center-mobile > span.angled-button {
/* fix */
/* margin-top: -24px; */
margin-top: -10px;
/* fix */
}
}
@media (max-width: 1024px) {
.carbar-table {
/* fix */
/* margin-top: -40px; */
margin-top: -8px;
padding-left:0px;
/* fix */
}
/* fix */
.header-selector-carbar .bg-alert {
max-width:none;
}
.carbar-vertical-center-mobile {
margin-top:-10px;
}
/* fix */
.carbar-subcar1, .carbar-subcar2 {
margin-top: 0px;
}
.bg-alert.angle-right,
.bg-alert.angle-tag {
padding-right: 0px;
margin-right: 0px;
right: 10px;
width: 100%;
}
.bg-alert.angle-right:before,
bg-alert.angle-tag:before {
right: auto;
width: 100%;
}
#car-bar-inner {
height: 200px;
}
.carbar-cars-inner span {
top: 0px;
}
.carbar-table {
padding-top:0px;
position: relative;
top:-100px;
left:140px;
}
.carbar-cars-col {
max-width: 180px;
}
.carbar-vertical-center-mobile {
display: block !important
}
.carbar-vertical-center {
display: none
}
}
@media (max-width: 768px) {
.carbar-subcar2 { /* requires back-end to generate carbar-subcar[X] */
display: none !important;
}
}
@media (max-width: 640px) {
.carbar-subcar1 { /* requires back-end to generate carbar-subcar[X] */
display: none;
}
.carbar-vertical-center-mobile {
margin-left: -60px;
padding-left: 0px;
}
}
@media (max-width: 512px) {
.carbar-vertical-center-mobile {
margin-left: -70px;
}
}
@media (max-width: 480px) {
.carbar-vertical-center-mobile {
margin-left: -80px;
}
.carbar-table {
left:130px;
}
}
@media (max-width: 380px) {
.carbar-vertical-center-mobile {
margin-left: -100px;
}
.carbar-table {
left:120px;
}
}
@media (max-width: 360px) {
.carbar-vertical-center-mobile {
margin-left: -110px;
}
.carbar-table {
left:115px;
}
}
/* Car Bar - END */
#drawer-area {

}

/* Minimized modal selector - START */
#minimized_selector {
	display: block;
	position: fixed;
	bottom: 40px;
	left: 40px;
	background-color: #305ec9;
	color: #fff;
	border-left: 2px solid #99c;
	border-top: 2px solid #99c;
	border-right: 2px solid #339;
	border-bottom: 2px solid #339;
	opacity: 0.90;
	transition-property: opacity;
	transition-property: background-color;
	transition-duration: 0.25s;
	cursor: pointer;
	font-size: 2rem;
	padding: 10px;
	padding-left: 18px;
	padding-right: 64px;
	border-radius: 6px;
	z-index:9;
	box-shadow: rgba(0, 0, 0, 0.19) 0px 10px 20px, rgba(0, 0, 0, 0.23) 0px 6px 6px;
}
#minimized_selector:hover {
	opacity: 1;
	background-color: #224bab;
}
#minimized_selector_close {
	outline: none;
	position: absolute;
	top: 6px;
	right: 6px;
}
#minimized_selector_close:hover {
	color: #ff0;
	cursor: pointer;
	background-color: #000;
}
#minimized_selector_close > svg:hover {
	color: #ff0;
}
/* Minimized modal selector - END */


/* CY Shipping Info Checkout Fix */
.edit-info-ship {
    font-size: 1.125em;
    line-height: 1.625em;
    min-width: 100%;
    max-width: 525px;
    word-wrap: break-word;
}