meta.foundation-version {
  font-family: "/5.5.3/";
}

meta.foundation-mq-small {
  font-family: "/only screen/";
  width: 0;
}

meta.foundation-mq-small-only {
  font-family: "/only screen and (max-width: 40em)/";
  width: 0;
}

meta.foundation-mq-medium {
  font-family: "/only screen and (min-width:40.0625em)/";
  width: 40.0625em;
}

meta.foundation-mq-medium-only {
  font-family: "/only screen and (min-width:40.0625em) and (max-width:64em)/";
  width: 40.0625em;
}

meta.foundation-mq-large {
  font-family: "/only screen and (min-width:64.0625em)/";
  width: 64.0625em;
}

meta.foundation-mq-large-only {
  font-family: "/only screen and (min-width:64.0625em) and (max-width:90em)/";
  width: 64.0625em;
}

meta.foundation-mq-xlarge {
  font-family: "/only screen and (min-width:90.0625em)/";
  width: 90.0625em;
}

meta.foundation-mq-xlarge-only {
  font-family: "/only screen and (min-width:90.0625em) and (max-width:120em)/";
  width: 90.0625em;
}

meta.foundation-mq-xxlarge {
  font-family: "/only screen and (min-width:120.0625em)/";
  width: 120.0625em;
}

meta.foundation-data-attribute-namespace {
  font-family: false;
}

html, body {
  height: 100%;
}

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

html,
body {
  font-size: 16px;
}

body {
  background: #fff;
  color: #222;
  cursor: auto;
  font-family: "Helvetica Neue", Helvetica, Roboto, Arial, sans-serif;
  font-style: normal;
  font-weight: normal;
  line-height: 24px;
  margin: 0;
  padding: 0;
  position: relative;
}

a:hover {
  cursor: pointer;
}

img {
  max-width: 100%;
  height: auto;
}

img {
  -ms-interpolation-mode: bicubic;
}

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object,
.mqa-display img,
.mqa-display embed,
.mqa-display object {
  max-width: none !important;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.hide {
  display: none;
}

.invisible {
  visibility: hidden;
}

.antialiased {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

img {
  display: inline-block;
  vertical-align: middle;
}

textarea {
  height: auto;
  min-height: 50px;
}

select {
  width: 100%;
}

.row {
  margin: 0 auto;
  max-width: 62.5rem;
  width: 100%;
}

.row:before, .row:after {
  content: " ";
  display: table;
}

.row:after {
  clear: both;
}

.row.collapse > .column,
.row.collapse > .columns {
  padding-left: 0;
  padding-right: 0;
}

.row.collapse .row {
  margin-left: 0;
  margin-right: 0;
}

.row .row {
  margin: 0 -0.9375rem;
  max-width: none;
  width: auto;
}

.row .row:before, .row .row:after {
  content: " ";
  display: table;
}

.row .row:after {
  clear: both;
}

.row .row.collapse {
  margin: 0;
  max-width: none;
  width: auto;
}

.row .row.collapse:before, .row .row.collapse:after {
  content: " ";
  display: table;
}

.row .row.collapse:after {
  clear: both;
}

.column,
.columns {
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  width: 100%;
  float: left;
}

.column + .column:last-child,
.column + .columns:last-child,
.columns + .column:last-child,
.columns + .columns:last-child {
  float: right;
}

.column + .column.end,
.column + .columns.end,
.columns + .column.end,
.columns + .columns.end {
  float: left;
}

@media only screen {
  .small-push-0 {
    position: relative;
    left: 0;
    right: auto;
  }
  .small-pull-0 {
    position: relative;
    right: 0;
    left: auto;
  }
  .small-push-1 {
    position: relative;
    left: 8.3333333333%;
    right: auto;
  }
  .small-pull-1 {
    position: relative;
    right: 8.3333333333%;
    left: auto;
  }
  .small-push-2 {
    position: relative;
    left: 16.6666666667%;
    right: auto;
  }
  .small-pull-2 {
    position: relative;
    right: 16.6666666667%;
    left: auto;
  }
  .small-push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .small-pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .small-push-4 {
    position: relative;
    left: 33.3333333333%;
    right: auto;
  }
  .small-pull-4 {
    position: relative;
    right: 33.3333333333%;
    left: auto;
  }
  .small-push-5 {
    position: relative;
    left: 41.6666666667%;
    right: auto;
  }
  .small-pull-5 {
    position: relative;
    right: 41.6666666667%;
    left: auto;
  }
  .small-push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .small-pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .small-push-7 {
    position: relative;
    left: 58.3333333333%;
    right: auto;
  }
  .small-pull-7 {
    position: relative;
    right: 58.3333333333%;
    left: auto;
  }
  .small-push-8 {
    position: relative;
    left: 66.6666666667%;
    right: auto;
  }
  .small-pull-8 {
    position: relative;
    right: 66.6666666667%;
    left: auto;
  }
  .small-push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .small-pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .small-push-10 {
    position: relative;
    left: 83.3333333333%;
    right: auto;
  }
  .small-pull-10 {
    position: relative;
    right: 83.3333333333%;
    left: auto;
  }
  .small-push-11 {
    position: relative;
    left: 91.6666666667%;
    right: auto;
  }
  .small-pull-11 {
    position: relative;
    right: 91.6666666667%;
    left: auto;
  }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left;
  }
  .small-1 {
    width: 8.3333333333%;
  }
  .small-2 {
    width: 16.6666666667%;
  }
  .small-3 {
    width: 25%;
  }
  .small-4 {
    width: 33.3333333333%;
  }
  .small-5 {
    width: 41.6666666667%;
  }
  .small-6 {
    width: 50%;
  }
  .small-7 {
    width: 58.3333333333%;
  }
  .small-8 {
    width: 66.6666666667%;
  }
  .small-9 {
    width: 75%;
  }
  .small-10 {
    width: 83.3333333333%;
  }
  .small-11 {
    width: 91.6666666667%;
  }
  .small-12 {
    width: 100%;
  }
  .small-offset-0 {
    margin-left: 0 !important;
  }
  .small-offset-1 {
    margin-left: 8.3333333333% !important;
  }
  .small-offset-2 {
    margin-left: 16.6666666667% !important;
  }
  .small-offset-3 {
    margin-left: 25% !important;
  }
  .small-offset-4 {
    margin-left: 33.3333333333% !important;
  }
  .small-offset-5 {
    margin-left: 41.6666666667% !important;
  }
  .small-offset-6 {
    margin-left: 50% !important;
  }
  .small-offset-7 {
    margin-left: 58.3333333333% !important;
  }
  .small-offset-8 {
    margin-left: 66.6666666667% !important;
  }
  .small-offset-9 {
    margin-left: 75% !important;
  }
  .small-offset-10 {
    margin-left: 83.3333333333% !important;
  }
  .small-offset-11 {
    margin-left: 91.6666666667% !important;
  }
  .small-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto;
  }
  .column.small-centered,
  .columns.small-centered {
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
  .column.small-uncentered,
  .columns.small-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
  .column.small-centered:last-child,
  .columns.small-centered:last-child {
    float: none;
  }
  .column.small-uncentered:last-child,
  .columns.small-uncentered:last-child {
    float: left;
  }
  .column.small-uncentered.opposite,
  .columns.small-uncentered.opposite {
    float: right;
  }
  .row.small-collapse > .column,
  .row.small-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .row.small-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .row.small-uncollapse > .column,
  .row.small-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left;
  }
}

@media only screen and (min-width:40.0625em) {
  .medium-push-0 {
    position: relative;
    left: 0;
    right: auto;
  }
  .medium-pull-0 {
    position: relative;
    right: 0;
    left: auto;
  }
  .medium-push-1 {
    position: relative;
    left: 8.3333333333%;
    right: auto;
  }
  .medium-pull-1 {
    position: relative;
    right: 8.3333333333%;
    left: auto;
  }
  .medium-push-2 {
    position: relative;
    left: 16.6666666667%;
    right: auto;
  }
  .medium-pull-2 {
    position: relative;
    right: 16.6666666667%;
    left: auto;
  }
  .medium-push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .medium-pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .medium-push-4 {
    position: relative;
    left: 33.3333333333%;
    right: auto;
  }
  .medium-pull-4 {
    position: relative;
    right: 33.3333333333%;
    left: auto;
  }
  .medium-push-5 {
    position: relative;
    left: 41.6666666667%;
    right: auto;
  }
  .medium-pull-5 {
    position: relative;
    right: 41.6666666667%;
    left: auto;
  }
  .medium-push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .medium-pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .medium-push-7 {
    position: relative;
    left: 58.3333333333%;
    right: auto;
  }
  .medium-pull-7 {
    position: relative;
    right: 58.3333333333%;
    left: auto;
  }
  .medium-push-8 {
    position: relative;
    left: 66.6666666667%;
    right: auto;
  }
  .medium-pull-8 {
    position: relative;
    right: 66.6666666667%;
    left: auto;
  }
  .medium-push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .medium-pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .medium-push-10 {
    position: relative;
    left: 83.3333333333%;
    right: auto;
  }
  .medium-pull-10 {
    position: relative;
    right: 83.3333333333%;
    left: auto;
  }
  .medium-push-11 {
    position: relative;
    left: 91.6666666667%;
    right: auto;
  }
  .medium-pull-11 {
    position: relative;
    right: 91.6666666667%;
    left: auto;
  }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left;
  }
  .medium-1 {
    width: 8.3333333333%;
  }
  .medium-2 {
    width: 16.6666666667%;
  }
  .medium-3 {
    width: 25%;
  }
  .medium-4 {
    width: 33.3333333333%;
  }
  .medium-5 {
    width: 41.6666666667%;
  }
  .medium-6 {
    width: 50%;
  }
  .medium-7 {
    width: 58.3333333333%;
  }
  .medium-8 {
    width: 66.6666666667%;
  }
  .medium-9 {
    width: 75%;
  }
  .medium-10 {
    width: 83.3333333333%;
  }
  .medium-11 {
    width: 91.6666666667%;
  }
  .medium-12 {
    width: 100%;
  }
  .medium-offset-0 {
    margin-left: 0 !important;
  }
  .medium-offset-1 {
    margin-left: 8.3333333333% !important;
  }
  .medium-offset-2 {
    margin-left: 16.6666666667% !important;
  }
  .medium-offset-3 {
    margin-left: 25% !important;
  }
  .medium-offset-4 {
    margin-left: 33.3333333333% !important;
  }
  .medium-offset-5 {
    margin-left: 41.6666666667% !important;
  }
  .medium-offset-6 {
    margin-left: 50% !important;
  }
  .medium-offset-7 {
    margin-left: 58.3333333333% !important;
  }
  .medium-offset-8 {
    margin-left: 66.6666666667% !important;
  }
  .medium-offset-9 {
    margin-left: 75% !important;
  }
  .medium-offset-10 {
    margin-left: 83.3333333333% !important;
  }
  .medium-offset-11 {
    margin-left: 91.6666666667% !important;
  }
  .medium-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto;
  }
  .column.medium-centered,
  .columns.medium-centered {
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
  .column.medium-uncentered,
  .columns.medium-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
  .column.medium-centered:last-child,
  .columns.medium-centered:last-child {
    float: none;
  }
  .column.medium-uncentered:last-child,
  .columns.medium-uncentered:last-child {
    float: left;
  }
  .column.medium-uncentered.opposite,
  .columns.medium-uncentered.opposite {
    float: right;
  }
  .row.medium-collapse > .column,
  .row.medium-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .row.medium-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .row.medium-uncollapse > .column,
  .row.medium-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left;
  }
  .push-0 {
    position: relative;
    left: 0;
    right: auto;
  }
  .pull-0 {
    position: relative;
    right: 0;
    left: auto;
  }
  .push-1 {
    position: relative;
    left: 8.3333333333%;
    right: auto;
  }
  .pull-1 {
    position: relative;
    right: 8.3333333333%;
    left: auto;
  }
  .push-2 {
    position: relative;
    left: 16.6666666667%;
    right: auto;
  }
  .pull-2 {
    position: relative;
    right: 16.6666666667%;
    left: auto;
  }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .push-4 {
    position: relative;
    left: 33.3333333333%;
    right: auto;
  }
  .pull-4 {
    position: relative;
    right: 33.3333333333%;
    left: auto;
  }
  .push-5 {
    position: relative;
    left: 41.6666666667%;
    right: auto;
  }
  .pull-5 {
    position: relative;
    right: 41.6666666667%;
    left: auto;
  }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .push-7 {
    position: relative;
    left: 58.3333333333%;
    right: auto;
  }
  .pull-7 {
    position: relative;
    right: 58.3333333333%;
    left: auto;
  }
  .push-8 {
    position: relative;
    left: 66.6666666667%;
    right: auto;
  }
  .pull-8 {
    position: relative;
    right: 66.6666666667%;
    left: auto;
  }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .push-10 {
    position: relative;
    left: 83.3333333333%;
    right: auto;
  }
  .pull-10 {
    position: relative;
    right: 83.3333333333%;
    left: auto;
  }
  .push-11 {
    position: relative;
    left: 91.6666666667%;
    right: auto;
  }
  .pull-11 {
    position: relative;
    right: 91.6666666667%;
    left: auto;
  }
}

@media only screen and (min-width:64.0625em) {
  .large-push-0 {
    position: relative;
    left: 0;
    right: auto;
  }
  .large-pull-0 {
    position: relative;
    right: 0;
    left: auto;
  }
  .large-push-1 {
    position: relative;
    left: 8.3333333333%;
    right: auto;
  }
  .large-pull-1 {
    position: relative;
    right: 8.3333333333%;
    left: auto;
  }
  .large-push-2 {
    position: relative;
    left: 16.6666666667%;
    right: auto;
  }
  .large-pull-2 {
    position: relative;
    right: 16.6666666667%;
    left: auto;
  }
  .large-push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .large-pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .large-push-4 {
    position: relative;
    left: 33.3333333333%;
    right: auto;
  }
  .large-pull-4 {
    position: relative;
    right: 33.3333333333%;
    left: auto;
  }
  .large-push-5 {
    position: relative;
    left: 41.6666666667%;
    right: auto;
  }
  .large-pull-5 {
    position: relative;
    right: 41.6666666667%;
    left: auto;
  }
  .large-push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .large-pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .large-push-7 {
    position: relative;
    left: 58.3333333333%;
    right: auto;
  }
  .large-pull-7 {
    position: relative;
    right: 58.3333333333%;
    left: auto;
  }
  .large-push-8 {
    position: relative;
    left: 66.6666666667%;
    right: auto;
  }
  .large-pull-8 {
    position: relative;
    right: 66.6666666667%;
    left: auto;
  }
  .large-push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .large-pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .large-push-10 {
    position: relative;
    left: 83.3333333333%;
    right: auto;
  }
  .large-pull-10 {
    position: relative;
    right: 83.3333333333%;
    left: auto;
  }
  .large-push-11 {
    position: relative;
    left: 91.6666666667%;
    right: auto;
  }
  .large-pull-11 {
    position: relative;
    right: 91.6666666667%;
    left: auto;
  }
  .column,
  .columns {
    position: relative;
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left;
  }
  .large-1 {
    width: 8.3333333333%;
  }
  .large-2 {
    width: 16.6666666667%;
  }
  .large-3 {
    width: 25%;
  }
  .large-4 {
    width: 33.3333333333%;
  }
  .large-5 {
    width: 41.6666666667%;
  }
  .large-6 {
    width: 50%;
  }
  .large-7 {
    width: 58.3333333333%;
  }
  .large-8 {
    width: 66.6666666667%;
  }
  .large-9 {
    width: 75%;
  }
  .large-10 {
    width: 83.3333333333%;
  }
  .large-11 {
    width: 91.6666666667%;
  }
  .large-12 {
    width: 100%;
  }
  .large-offset-0 {
    margin-left: 0 !important;
  }
  .large-offset-1 {
    margin-left: 8.3333333333% !important;
  }
  .large-offset-2 {
    margin-left: 16.6666666667% !important;
  }
  .large-offset-3 {
    margin-left: 25% !important;
  }
  .large-offset-4 {
    margin-left: 33.3333333333% !important;
  }
  .large-offset-5 {
    margin-left: 41.6666666667% !important;
  }
  .large-offset-6 {
    margin-left: 50% !important;
  }
  .large-offset-7 {
    margin-left: 58.3333333333% !important;
  }
  .large-offset-8 {
    margin-left: 66.6666666667% !important;
  }
  .large-offset-9 {
    margin-left: 75% !important;
  }
  .large-offset-10 {
    margin-left: 83.3333333333% !important;
  }
  .large-offset-11 {
    margin-left: 91.6666666667% !important;
  }
  .large-reset-order {
    float: left;
    left: auto;
    margin-left: 0;
    margin-right: 0;
    right: auto;
  }
  .column.large-centered,
  .columns.large-centered {
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
  .column.large-uncentered,
  .columns.large-uncentered {
    float: left;
    margin-left: 0;
    margin-right: 0;
  }
  .column.large-centered:last-child,
  .columns.large-centered:last-child {
    float: none;
  }
  .column.large-uncentered:last-child,
  .columns.large-uncentered:last-child {
    float: left;
  }
  .column.large-uncentered.opposite,
  .columns.large-uncentered.opposite {
    float: right;
  }
  .row.large-collapse > .column,
  .row.large-collapse > .columns {
    padding-left: 0;
    padding-right: 0;
  }
  .row.large-collapse .row {
    margin-left: 0;
    margin-right: 0;
  }
  .row.large-uncollapse > .column,
  .row.large-uncollapse > .columns {
    padding-left: 0.9375rem;
    padding-right: 0.9375rem;
    float: left;
  }
  .push-0 {
    position: relative;
    left: 0;
    right: auto;
  }
  .pull-0 {
    position: relative;
    right: 0;
    left: auto;
  }
  .push-1 {
    position: relative;
    left: 8.3333333333%;
    right: auto;
  }
  .pull-1 {
    position: relative;
    right: 8.3333333333%;
    left: auto;
  }
  .push-2 {
    position: relative;
    left: 16.6666666667%;
    right: auto;
  }
  .pull-2 {
    position: relative;
    right: 16.6666666667%;
    left: auto;
  }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .push-4 {
    position: relative;
    left: 33.3333333333%;
    right: auto;
  }
  .pull-4 {
    position: relative;
    right: 33.3333333333%;
    left: auto;
  }
  .push-5 {
    position: relative;
    left: 41.6666666667%;
    right: auto;
  }
  .pull-5 {
    position: relative;
    right: 41.6666666667%;
    left: auto;
  }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .push-7 {
    position: relative;
    left: 58.3333333333%;
    right: auto;
  }
  .pull-7 {
    position: relative;
    right: 58.3333333333%;
    left: auto;
  }
  .push-8 {
    position: relative;
    left: 66.6666666667%;
    right: auto;
  }
  .pull-8 {
    position: relative;
    right: 66.6666666667%;
    left: auto;
  }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .push-10 {
    position: relative;
    left: 83.3333333333%;
    right: auto;
  }
  .pull-10 {
    position: relative;
    right: 83.3333333333%;
    left: auto;
  }
  .push-11 {
    position: relative;
    left: 91.6666666667%;
    right: auto;
  }
  .pull-11 {
    position: relative;
    right: 91.6666666667%;
    left: auto;
  }
}

.uppercase {
  text-transform: uppercase;
  font-feature-settings: "case";
}

/*
  html5doctor.com Reset Stylesheet
  v1.6.1
  Last Updated: 2010-09-17
  Author: Richard Clark - http://richclarkdesign.com
  Twitter: @rich_clark
 */

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

nav ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: "";
  content: none;
}

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

/* change colours to suit your needs */

ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none;
}

/* change colours to suit your needs */

mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold;
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
  display: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* change border colour to suit your needs */

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}

input,
select {
  vertical-align: middle;
}

td > p:first-child,
li > p:first-child {
  margin-top: 0;
}

td > p:last-child,
li > p:last-child {
  margin-bottom: 0;
}

main {
  display: block;
}

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

@font-face {
  font-family: "Beausite Classic Light";
  src: url(/packs/media/store/fonts/BeausiteClassicWeb-Light-0dd62cbd9bd9203f15288dc9b166189d.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassicWeb-Light-57649eb1842678d0372db90044f40fbe.woff) format("woff");
  font-weight: 200;
  font-style: normal;
}

@font-face {
  font-family: "Beausite Classic Clear";
  src: url(/packs/media/store/fonts/BeausiteClassicWeb-Clear-10d3834e0929bc7bd26e69d46bc80ee5.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassicWeb-Clear-6a1d73a50a97b3cbe48650feffb8809d.woff) format("woff");
  font-weight: 300;
  font-style: normal;
}

.font-beausite-clear {
  font-family: "Beausite Classic Clear", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.02em;
}

@font-face {
  font-family: "Beausite Classic";
  src: url(/packs/media/store/fonts/BeausiteClassic-Regular_web-7fa09cebaab88c4481af9aa6b72c3e09.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassic-Regular_web-da35ffe5d917f1b686b116333ea4eb11.woff) format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "Beausite Classic";
  src: url(/packs/media/store/fonts/BeausiteClassicWeb-RegularItalic-960874103da287fa48f3db79be47c6f3.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassicWeb-RegularItalic-8f0a31f60ce60324b6f3bcd2a6ae9b8e.woff) format("woff");
  font-weight: 400;
  font-style: italic;
}

@font-face {
  font-family: "Beausite Classic";
  src: url(/packs/media/store/fonts/BeausiteClassic-Medium_web-a2fbf6553a77affbb9ab602aacf3254c.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassic-Medium_web-eac81ed5903f801829101ed7a7bcd3bd.woff) format("woff");
  font-weight: 500;
  font-style: normal;
}

@font-face {
  font-family: "Beausite Classic";
  src: url(/packs/media/store/fonts/BeausiteClassicWeb-Semibold-477b4b7c9d1814eba5351170b57ab044.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassicWeb-Semibold-b9298609941382e8ee976dd0f5c6d72a.woff) format("woff");
  font-weight: 600;
  font-style: normal;
}

@font-face {
  font-family: "Beausite Classic";
  src: url(/packs/media/store/fonts/BeausiteClassic-Bold_web-f840a00c4dd333195dd0131672cee19a.woff2) format("woff2"), url(/packs/media/store/fonts/BeausiteClassic-Bold_web-cf15f3850e82e057c99aa9b4c7e9e75f.woff) format("woff");
  font-weight: 700;
  font-style: normal;
}

h1,
h2,
h3,
h4,
h5 {
  font-weight: 300;
}

@font-face {
  font-family: "UCityProVar";
  src: url(/packs/media/store/fonts/UCityProVar-611dd91f8d8f75cc8461a31e08722556.woff2) format("woff2");
}

@font-face {
  font-family: "BatonNouveauVar";
  src: url(/packs/media/store/fonts/BatonNouveauVar-ececbe70f044fcc37594106200648415.woff2) format("woff2");
}

@font-face {
  font-family: "StatesVar";
  src: url(/packs/media/store/fonts/States-Var-7302d15b8b22e4c38115cd6dad7a0fbe.woff2) format("woff2");
}

@font-face {
  font-family: "LaplaceMono";
  src: url(/packs/media/store/fonts/LaplaceMonoWeb-Regular-7ecd11c755ee4092aa4f7e4ac68c2967.woff) format("woff");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: "LaplaceMono";
  src: url(/packs/media/store/fonts/LaplaceMonoWeb-Italic-0364d08cbeefbe03392408e833934d65.woff) format("woff");
  font-weight: 400;
  font-style: italic;
}

.font-size-small {
  font-size: 14px;
}

.font-size-medium {
  font-size: 16px;
}

.font-size-large {
  font-size: 20px;
}

.font-size-xlarge {
  font-size: 26px;
}

.font-size-xxlarge {
  font-size: 34px;
}

button,
.button {
  font-size: 12px;
  line-height: 24px;
  display: inline-block;
  border: 0;
  text-align: center;
  text-decoration: none !important;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 700;
  cursor: pointer;
  transition: background-color 0.5s, color 0.3s ease-in-out, box-shadow 0.5s;
}

button, button.small,
.button,
.button.small {
  padding: 0px 8px;
}

button.round,
.button.round {
  padding: 1px 12px 1px 15px;
  background: transparent;
  color: black;
  border: 1px solid black;
  border-radius: 80px;
}

button.round.round-bigger,
.button.round.round-bigger {
  padding: 9px 20px;
}

button.big,
.button.big {
  padding: 12px 20px 13px;
  background-color: white;
  border: 2px solid black;
  color: black;
  vertical-align: top;
  font-size: var(--h2-font-size);
  font-family: "Beausite Classic";
  letter-spacing: 0em;
  font-weight: 400;
  line-height: 100%;
  width: 100%;
}

button.big.centered,
.button.big.centered {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

button.big:focus, button.big:active,
.button.big:focus,
.button.big:active {
  box-shadow: none;
}

button.breakable,
.button.breakable {
  white-space: normal;
  max-width: var(--page-width);
  text-wrap: balance;
  height: auto;
  line-height: 1.2;
}

button:active, button:focus,
.button:active,
.button:focus {
  outline: 0;
}

button:hover,
.button:hover {
  box-shadow: 0 0 black;
}

a.button.inline:hover {
  text-decoration: none;
  border-bottom: none;
}

.card {
  background-color: rgb(245, 245, 247);
  margin-right: 0;
  padding: 20px 30px;
}

/* reset */

input,
select {
  vertical-align: baseline;
}

input:active, input:focus,
textarea:active,
textarea:focus,
select:active,
select:focus {
  outline: 0;
}

button,
input,
select,
textarea {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: 0;
}

button:disabled,
input:disabled,
select:disabled,
textarea:disabled {
  opacity: 0.5;
}

/* styling */

.form-inputs {
  margin-bottom: 20px;
}

.input.text label {
  vertical-align: top;
}

input::placeholder {
  color: black;
  font-weight: 500;
}

input,
textarea,
select {
  padding: 6px 8px;
}

input[type=text],
input[type=number],
input[type=email],
input[type=password],
input[type=url],
textarea,
select {
  height: 36px;
  width: 100%;
  border: 0 none black;
  background-color: #f0f0ef;
  font: 12px Verdana, Arial, Sans;
}

textarea {
  height: 70px;
  padding-top: 8px;
}

select {
  border-radius: 0;
  appearance: none;
  text-align: left;
  background: #f0f0ef url(/packs/media/store/images/arrowdown-dac1b954c6bdb756c6bb96eb8db3f46e.svg) no-repeat right center;
}

select[multiple] {
  background: none;
}

input:focus,
textarea:focus,
select:focus {
  border: 1px dotted black;
}

select::-ms-expand {
  display: none;
}

.form-inputs {
  text-align: left;
}

.form-inputs .input {
  display: grid;
  grid-template-columns: 2fr 3fr;
  grid-gap: 10px;
  margin-bottom: 10px;
  align-items: center;
}

.form-inputs .input > * {
  grid-column: 2;
}

.form-inputs .input .control-label {
  grid-column: 1;
}

.form-inputs .input.boolean {
  grid-template-columns: 1fr;
}

.form-inputs.without-labels .input {
  display: block;
}

.simple_form {
  width: 100%;
}

@media (min-width: 1100px) {
  .simple_form {
    width: 519px;
  }
  .simple_form.form--full-width {
    width: 100%;
  }
}

.simple_form .links {
  text-align: center;
}

.form__button-group {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 10px;
  margin-top: 20px;
  place-items: center;
  max-width: 700px;
}

.form__button-container--small-gap-below {
  margin-bottom: 20px;
}

.form__button-container--small-gap-above {
  margin-top: 20px;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=checkbox] + label,
input[type=radio] + label {
  position: relative;
  width: 100%;
  cursor: pointer;
  font-size: 1.2rem;
  text-transform: uppercase;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
}

input[type=checkbox] + label:before,
input[type=radio] + label:before {
  content: " ";
  display: inline-block;
  position: relative;
  top: -1px;
  width: 35px;
  height: 35px;
  margin-right: 16px;
  border: solid black 1.5px;
  border-radius: 50%;
  font-size: 1.4rem;
  text-align: center;
  line-height: 10px;
  vertical-align: middle;
  margin-bottom: 4px;
  margin-top: 4px;
  background-color: white;
}

input[type=checkbox] + label.small,
input[type=radio] + label.small {
  font-size: 12px;
  text-transform: none;
}

input[type=checkbox] + label.small:before,
input[type=radio] + label.small:before {
  width: 18px;
  height: 18px;
  margin-right: 4px;
}

input[type=checkbox]:checked + label:before,
input[type=radio]:checked + label:before {
  background: black;
  border-color: black;
  box-shadow: none;
}

[type=range] {
  -webkit-appearance: none;
  background: transparent;
  margin: 7px 0;
  width: 100%;
}

[type=range]::-moz-focus-outer {
  border: 0;
}

[type=range]:focus {
  outline: 0;
}

[type=range]:focus::-webkit-slider-runnable-track {
  background: #0d0d0d;
}

[type=range]:focus::-ms-fill-lower {
  background: black;
}

[type=range]:focus::-ms-fill-upper {
  background: #0d0d0d;
}

[type=range]::-webkit-slider-runnable-track {
  cursor: default;
  height: 1px;
  transition: all 0.2s ease;
  width: 100%;
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  background: black;
  border: 0 solid black;
  border-radius: 0;
}

[type=range]::-webkit-slider-thumb {
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  background: black;
  border: 0 solid black;
  border-radius: 14px;
  box-sizing: border-box;
  cursor: default;
  height: 14px;
  width: 14px;
  -webkit-appearance: none;
  margin-top: -6.5px;
}

[type=range]::-moz-range-track {
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  cursor: default;
  height: 1px;
  transition: all 0.2s ease;
  width: 100%;
  background: black;
  border: 0 solid black;
  border-radius: 0;
  height: 1px;
}

[type=range]::-moz-range-thumb {
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  background: black;
  border: 0 solid black;
  border-radius: 14px;
  box-sizing: border-box;
  cursor: default;
  height: 14px;
  width: 14px;
}

[type=range]::-ms-track {
  cursor: default;
  height: 1px;
  transition: all 0.2s ease;
  width: 100%;
  background: transparent;
  border-color: transparent;
  border-width: 7px 0;
  color: transparent;
}

[type=range]::-ms-fill-lower {
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  background: black;
  border: 0 solid black;
  border-radius: 0;
}

[type=range]::-ms-fill-upper {
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  background: black;
  border: 0 solid black;
  border-radius: 0;
}

[type=range]::-ms-thumb {
  box-shadow: 0 0 0 black, 0 0 0 #0d0d0d;
  background: black;
  border: 0 solid black;
  border-radius: 14px;
  box-sizing: border-box;
  cursor: default;
  height: 14px;
  width: 14px;
  margin-top: 0.25px;
}

[type=range]:disabled::-webkit-slider-thumb, [type=range]:disabled::-moz-range-thumb, [type=range]:disabled::-ms-thumb, [type=range]:disabled::-webkit-slider-runnable-track, [type=range]:disabled::-ms-fill-lower, [type=range]:disabled::-ms-fill-upper {
  cursor: not-allowed;
}

[type=range]:focus {
  border: 0;
}

a {
  color: black;
  text-decoration: none;
}

a:hover, a.active {
  text-decoration: none;
  border-bottom: 1px solid;
}

a.image:hover {
  border-bottom: none;
}

a.icon-link:hover {
  border-bottom: none;
}

li {
  list-style: none;
}

ul.bullet-list {
  list-style-type: disc;
  line-height: 1.2;
}

ul.bullet-list li {
  list-style-type: disc;
  list-style-position: inside;
}

html {
  --header-height: $max;
  --header-height: clamp(
    38px,
    calc(
      38px + (56) *
        ((100vw - 150px) / (450))
    ),
    94px
  );
  scroll-behavior: smooth;
  scroll-padding-top: calc(var(--mobile-menu-vertical-margin));
  --licensing-mobile-top: 855px;
  --document-width: 100vw;
  --page-horizontal-margin: 15px;
  --page-width: calc(
    var(--document-width) - (2 * var(--page-horizontal-margin))
  );
}

@media (min-width: 1100px) {
  html {
    --header-height: 91px;
  }
}

@media (min-width: 1100px) {
  html {
    scroll-padding-top: var(--header-height);
  }
}

@media (min-width: 1100px) {
  html {
    --page-horizontal-margin: 24px;
  }
}

html,
body {
  padding: 0;
  margin: 0;
  height: 100%;
}

body {
  min-width: 200px;
}

body.menu-open {
  overflow: hidden;
}

@media (min-width: 1100px) {
  body.menu-open {
    overflow: unset;
  }
}

#page-container {
  min-height: 100%;
  display: grid;
  grid-template-rows: 1fr auto;
}

body {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-feature-settings: "kern", "liga";
}

#hamnav #hamitems {
  position: fixed;
  z-index: 2850;
  box-sizing: border-box;
}

#hamnav #hamitems .item a {
  color: inherit;
}

#hamnav #hamitems .item a:hover, #hamnav #hamitems .item a:active {
  border-bottom: 0 none !important;
}

#hamnav #hamitems .item:hover {
  background: black;
  color: white;
}

#hamnav #hamitems .item.spacer {
  pointer-events: none;
}

html {
  --mobile-menu-font-size: 60px;
  --mobile-menu-font-size: clamp(
    20px,
    calc(
      20px + 50 * ((100vw - 150px) / 450)
    ),
    70px
  );
  --mobile-menu-border-thickness: 5px;
  --mobile-menu-border-thickness: clamp(
    2.5px,
    calc(
      2.5px + 3.5 * ((100vw - 150px) / 450)
    ),
    6px
  );
  --header-height: $header-height-mobile;
  --header-height: clamp(
    64px,
    calc(
      64px + 60 * ((100vw - 150px) / 450)
    ),
    124px
  );
  --mobile-menu-horizontal-margin: 15px;
  --mobile-menu-vertical-margin: 16px;
  --mobile-menu-item-horizontal-padding: 10px;
  --mobile-menu-item-vertical-padding: 8px;
}

body {
  --logo-left: calc(
    var(--mobile-menu-horizontal-margin) +
      var(--mobile-menu-item-horizontal-padding)
  );
  --mobile-menu-line-height: 1.1;
}

/* (A) Vertical Menu (Mobile) */

#hamnav {
  background-color: white;
  z-index: 5100;
  position: fixed;
  top: 0;
  left: 0;
  /* (B) Hamburger icon */
  /* (C) Show/Hide menu */
}

#hamnav .background {
  display: none;
}

#hamnav #hamitems {
  height: 100vh;
  width: 100%;
  padding: var(--mobile-menu-vertical-margin) var(--mobile-menu-horizontal-margin);
  overflow: auto;
}

@media (min-width: 1100px) {
  #hamnav #hamitems {
    height: unset;
    width: unset;
    padding: unset;
  }
}

#hamnav #hamitems .item a {
  box-sizing: border-box;
  display: block;
  width: 100%;
  flex: 1 1;
  text-align: left;
  font-family: "Beausite Classic Clear";
  font-weight: 300;
  font-size: var(--mobile-menu-font-size);
  line-height: 1.2;
  letter-spacing: 0.01em;
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item a {
    font-size: unset;
  }
}

#hamnav .open {
  width: 100%;
  height: 100%;
}

#hamnav .close {
  width: 100%;
  height: 100%;
  display: none;
  position: relative;
  margin-right: 0.045em;
  top: 0.06em;
}

#hamnav label[for=hamburger] {
  display: block;
  background: transparent;
  color: black;
  font-size: var(--mobile-menu-font-size);
  position: fixed;
  top: calc(var(--mobile-menu-vertical-margin) + var(--hamburger-icon-offset));
  right: var(--page-horizontal-margin);
  right: calc(var(--mobile-menu-horizontal-margin) + var(--mobile-menu-item-horizontal-padding) - 0.07em);
  z-index: 5400;
}

@media (min-width: 1100px) {
  #hamnav label[for=hamburger] {
    display: none;
  }
}

#hamnav #hamburger {
  display: none;
}

#hamnav #hamitems {
  display: none;
}

#hamnav input:checked ~ #hamitems {
  display: block;
}

#hamnav input:checked ~ .facts {
  display: block;
  background: white;
}

@media (min-width: 1100px) {
  #hamnav input:checked ~ .facts {
    background: transparent;
  }
}

#hamnav input:checked ~ .burks {
  display: block;
  opacity: 1;
  background: red;
}

.logo {
  display: block;
  font-family: "Beausite Classic Clear";
  font-weight: 300;
  font-size: var(--mobile-menu-font-size);
  line-height: 1.2;
  letter-spacing: 0.01em;
  position: absolute;
  z-index: 2700;
  left: 0px;
  top: 0px;
  width: 33vw;
  padding-right: 15px;
  padding-bottom: 15px;
  padding-left: var(--logo-left);
  -webkit-animation: color-change 20s infinite;
  -moz-animation: color-change 20s infinite;
  -o-animation: color-change 20s infinite;
  -ms-animation: color-change 20s infinite;
  animation: color-change 20s infinite;
}

.logo p {
  font-size: unset;
  margin: 0;
  padding: 0;
  line-height: var(--mobile-menu-line-height);
}

@media (min-width: 1100px) {
  .logo {
    display: none;
  }
}

.logo,
#hamnav label[for=hamburger] {
  padding-top: var(--mobile-menu-vertical-margin);
  line-height: var(--mobile-menu-line-height);
}

/* [ON MOBILE SCREENS] */

#hamnav #hamitems .item {
  border-width: 5px;
  border-width: var(--mobile-menu-border-thickness);
  border-color: black;
  border-style: none;
}

#hamnav #hamitems .item a {
  padding: 0;
  line-height: var(--mobile-menu-line-height);
  padding-bottom: var(--mobile-menu-item-vertical-padding);
}

#hamnav #hamitems .item:not(:nth-child(1)) a {
  padding-top: var(--mobile-menu-item-vertical-padding);
}

#hamnav #hamitems .item::after {
  border-top: none 0;
  border-left: none 0;
}

#hamnav #hamitems .item:nth-child(1) {
  border-bottom-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(1) {
    border-bottom: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(3) {
  border-bottom-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
  width: 85vw;
  max-width: 100%;
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(3) {
    border-bottom: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(4) {
  border-left-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(4) {
    border-left: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(5) {
  border-left-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
  border-right-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(5) {
    border-left: unset;
    padding-left: unset;
  }
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(5) {
    border-right: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(6) {
  border-top-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
  margin-left: 25vw;
  width: auto;
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(6) {
    border-top: unset;
    padding-left: unset;
  }
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(6) {
    margin-left: unset;
    width: unset;
  }
}

#hamnav #hamitems .item:nth-child(7) {
  border-right-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(7) {
    border-right: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(8) {
  border-left-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(8) {
    border-left: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(9) {
  border-top-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
  width: 75vw;
  max-width: 100%;
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(9) {
    border-top: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(11) {
  border-right-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(11) {
    border-right: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(12) {
  border-right-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(12) {
    border-right: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(13) {
  border-top-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(13) {
    border-top: unset;
    padding-left: unset;
  }
}

#hamnav #hamitems .item:nth-child(14) {
  border-right-style: solid;
  padding-left: var(--mobile-menu-item-horizontal-padding);
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item:nth-child(14) {
    border-right: unset;
    padding-left: unset;
  }
}

@media (min-width: 1100px) {
  #hamnav {
    z-index: unset;
    position: static;
  }
  #hamnav .background {
    display: block;
    position: fixed;
    z-index: 2500;
    left: 0;
    top: 0;
    right: 0;
    opacity: 0;
    background-color: white;
  }
  #hamnav:hover .background {
    opacity: 1;
    z-index: 2600;
  }
  #hamnav #hamitems {
    position: fixed;
    z-index: 2850;
    top: 0;
    left: var(--page-horizontal-margin);
    right: var(--page-horizontal-margin);
    overflow-y: auto;
    display: flex !important;
    flex-direction: row;
  }
  #hamnav #hamitems::after {
    content: " ";
  }
  #hamnav #hamitems .item a {
    font-size: unset;
    border: unset;
    padding: 0 0 0 0;
    font-size: 15px;
    padding: 14px;
  }
}

@media (min-width: 1100px) and (min-width: 1750px) {
  #hamnav #hamitems .item a {
    font-size: 18px;
    padding: 18px 20px;
  }
}

@media (min-width: 1100px) {
  #hamnav .avoid-break {
    display: inline-block;
  }
}

@media (min-width: 1100px) {
  #hamnav #hamitems .item {
    z-index: 2850;
    flex-grow: 1;
    flex-basis: 0;
    color: black;
    text-align: center;
    font-size: 18px;
    letter-spacing: 0.01em;
    box-sizing: border-box;
    height: 64px;
    display: grid;
    justify-items: stretch;
    align-items: center;
    position: relative;
    white-space: nowrap;
  }
  #hamnav #hamitems .item a {
    font-family: "Beausite Classic", sans-serif;
    font-weight: 500;
    text-align: center;
    display: block;
    width: 100%;
    text-decoration: none;
  }
  #hamnav #hamitems .item a, #hamnav #hamitems .item:not(:nth-child(1)) a {
    padding: 18px 20px;
  }
  #hamnav #hamitems .item::after {
    display: block;
    z-index: -1;
    content: "";
    position: absolute;
    inset: 0;
  }
  #hamnav.v1 #hamitems .item::after {
    border-bottom: solid 4px black;
  }
  #hamnav.v1 #hamitems .item::after a {
    padding-bottom: 16px;
  }
  #hamnav.v2 #hamitems .item::after {
    border-bottom: solid 4px black;
  }
  #hamnav.v2 #hamitems .item::after a {
    padding-bottom: 16px;
  }
  #hamnav.v2 #hamitems .item::after {
    border-top: solid 4px black;
  }
  #hamnav.v2 #hamitems .item::after a {
    padding-top: 16px;
  }
}

/* Shape Fonts */

@font-face {
  font-family: "ft-menu-1";
  src: url(/packs/media/store/fonts/ft-menu-1-c79026ef748a4c4f3ec5059f3ca5c36c.woff) format("woff");
  font-display: block;
}

@font-face {
  font-family: "ft-menu-2";
  src: url(/packs/media/store/fonts/ft-menu-2-0b8d96a8caaf0799b6e50bf1dc1a9941.woff) format("woff");
  font-display: block;
}

@font-face {
  font-family: "ft-menu-3";
  src: url(/packs/media/store/fonts/ft-menu-3-a251e40aa0e9a39949e884ad7f322b7e.woff) format("woff");
  font-display: block;
}

@font-face {
  font-family: "ft-menu-4";
  src: url(/packs/media/store/fonts/ft-menu-4-e295b0152c2553ddc86fa4346df716e2.woff) format("woff");
  font-display: block;
}

/*
  in ham_menu.js we generate random properties for .factDisplay{1..4} elements::after
    - paddding-right: 0 to 49 vw
    - padding-left: 0 to 14 wv
    - margin-top: 1 to 31 px

*/

#hamnav {
  /* (X) Decorative Shapes Behind the menu */
}

#hamnav .facts {
  position: fixed;
  z-index: 2540;
  pointer-events: none;
  top: -1.75em;
  left: -8px;
  right: -8px;
  filter: blur(0px);
  transition: filter 0.5s ease 0.05s;
  line-height: normal;
}

#hamnav:hover .facts {
  z-index: 2640;
}

#hamnav .facts {
  display: none;
  filter: blur(4px);
  background: white;
}

#hamnav #factDisplay1,
#hamnav #factDisplay2,
#hamnav #factDisplay3,
#hamnav #factDisplay4 {
  font-size: 300px;
  width: 100%;
  text-align: center;
  opacity: 0;
}

#hamnav .facts-1 {
  width: 100%;
  height: 40vh;
  margin-left: 40vw;
}

#hamnav .facts-2 {
  width: 100%;
  height: 40vh;
  margin-left: -30vw;
}

#hamnav .facts-3 {
  width: 100%;
  height: 40vh;
  margin-left: 30vw;
}

#hamnav .facts-4 {
  width: 100%;
  height: 40vh;
}

#hamnav #factDisplay1 {
  font-family: ft-menu-1 !important;
}

#hamnav #factDisplay2 {
  font-family: ft-menu-4 !important;
}

#hamnav #factDisplay3 {
  font-family: ft-menu-3 !important;
}

#hamnav #factDisplay4 {
  font-family: ft-menu-2 !important;
}

@media (min-width: 1100px) {
  #hamnav .facts {
    display: block;
    filter: none;
    background: none;
  }
  #hamnav:hover .facts {
    filter: blur(4px);
  }
  #hamnav #hamitems a {
    font-size: 15px;
    padding: 14px;
  }
  #hamnav #factDisplay1,
  #hamnav #factDisplay2,
  #hamnav #factDisplay3,
  #hamnav #factDisplay4 {
    height: 150%;
    font-size: 100px;
  }
  #hamnav .facts-1,
  #hamnav .facts-2,
  #hamnav .facts-3,
  #hamnav .facts-4 {
    margin-left: 0;
    width: 24.5vw;
    float: left;
    z-index: 2540;
    pointer-events: none;
  }
  #hamnav:hover .facts-1,
  #hamnav:hover .facts-2,
  #hamnav:hover .facts-3,
  #hamnav:hover .facts-4 {
    z-index: 2640;
  }
}

.submenu {
  width: 100%;
  min-height: 37px;
}

.submenu nav {
  width: 100%;
  font-size: 14px;
  display: grid;
  grid-template-columns: auto;
  grid-gap: 15px;
  justify-content: stretch;
  margin-top: 0px;
  margin-bottom: 0;
  margin-left: 0px;
  margin-right: 0px;
}

@media (min-width: 1100px) {
  .submenu nav {
    top: 90px;
    left: var(--page-horizontal-margin);
    right: var(--page-horizontal-margin);
    width: auto;
    z-index: 2750;
    padding: 0;
    position: fixed;
  }
}

@media (min-width: 800px) {
  .submenu nav {
    grid-template-columns: auto auto;
    justify-content: space-between;
    align-items: center;
    margin-left: 0;
    margin-right: 0;
  }
}

.submenu nav ul {
  margin-left: 0px;
}

.submenu nav li {
  display: inline-block;
}

.submenu nav a {
  display: inline-block;
  padding: 7px 21px;
  border-top: 3px solid transparent;
  border-bottom: 3px solid black;
  background: white;
  min-width: 90px;
  text-align: center;
}

.submenu nav a.active, .submenu nav a:hover {
  background-color: black;
  border-top-color: black;
  color: white;
}

.submenu nav > *:last-child {
  justify-self: end;
}

a.buy-button {
  display: inline-block;
  padding: 5px 10px 5px;
  min-width: 90px;
  line-height: 1;
  border: solid 1px rgb(255, 65, 17);
  color: white;
  background-color: rgb(255, 65, 17);
  text-transform: uppercase;
  text-align: center;
}

a.buy-button:hover {
  background: white;
  border: 1px solid rgba(255, 65, 17, 0.9);
  color: rgba(255, 65, 17, 0.9);
}

a.buy-button--top,
.submenu nav a.buy-button {
  background-color: rgba(255, 65, 17, 0.9);
  border-color: rgba(255, 65, 17, 0.9);
  color: white;
  display: inline-block;
  padding: 7px 21px;
  min-width: 150px;
  text-align: center;
  text-transform: uppercase;
  font-size: 14px;
}

a.buy-button--top.active, a.buy-button--top:hover,
.submenu nav a.buy-button.active,
.submenu nav a.buy-button:hover {
  background-color: black;
  border-top-color: black;
  color: white;
}

a.buy-button--top:hover,
.submenu nav a.buy-button:hover {
  background: white;
  border-color: white;
  color: rgba(255, 65, 17, 0.9);
  border-bottom-color: rgba(255, 65, 17, 0.9);
}

a.buy-button--top.sticky.stuck,
.submenu nav a.buy-button.sticky.stuck {
  position: fixed;
  z-index: 2300;
  top: var(--header-height);
  right: var(--page-horizontal-margin);
}

@media (min-width: 1100px) {
  a.buy-button--top.sticky.stuck,
  .submenu nav a.buy-button.sticky.stuck {
    position: unset;
  }
}

a.buy-button--top.hidden,
.submenu nav a.buy-button.hidden {
  display: block;
  visibility: hidden;
}

.floating-buy-button-container {
  position: fixed;
  top: var(--header-height);
  width: 100%;
  min-height: 10px;
  margin: 0 var(--page-horizontal-margin);
  text-align: right;
  z-index: 2300;
  right: 0;
}

@media (min-width: 1100px) {
  .floating-buy-button-container {
    top: 90px;
  }
}

.floating-buy-button-container.hidden {
  display: block;
  visibility: hidden;
  height: 0;
  overflow: hidden;
}

body {
  --page-top-margin: 25px;
  --content-top: calc(var(--header-height) + var(--page-top-margin));
  --debug1: 47px;
  --debug2: 83px;
}

#page-main {
  padding-top: 185px;
  padding-top: var(--content-top);
  padding-bottom: 48px;
  margin-left: var(--page-horizontal-margin);
  margin-right: var(--page-horizontal-margin);
  font-size: 18px;
  line-height: 1.2;
  letter-spacing: 0.02em;
  width: var(--page-width);
}

#page-main h1,
#page-main .h1 {
  font-family: "Beausite Classic Clear", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 200;
  text-align: center;
  margin-top: 30px;
  margin-bottom: calc(var(--h1-font-size) / 2);
  line-height: 1.2;
  text-transform: uppercase;
  letter-spacing: 0;
}

@media (min-width: 1100px) {
  #page-main h1,
  #page-main .h1 {
    margin-top: 2px;
  }
}

#page-main .h1--midpage {
  margin-top: calc(var(--h1-font-size) / 2);
}

#page-main h2,
#page-main .h2 {
  font-family: "Beausite Classic Clear", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 300;
}

#page-main h3,
#page-main .h3 {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 400;
}

#page-main h1,
#page-main .h1,
#page-main h2,
#page-main .h2,
#page-main h3,
#page-main .h3 {
  text-wrap: balance;
}

#page-main > form {
  width: 100%;
}

#page-main > form > * {
  width: 100%;
}

#page-main .narrow-width,
#page-main form > .narrow-width {
  width: 100%;
}

@media (min-width: 700px) {
  #page-main .narrow-width > *,
  #page-main form > .narrow-width > * {
    max-width: 652px;
    margin-left: auto;
    margin-right: auto;
  }
}

#page-main .narrow-width > .full-page-width,
#page-main form > .narrow-width > .full-page-width {
  width: 100%;
}

@media (min-width: 700px) {
  #page-main .narrow-width > .full-page-width,
  #page-main form > .narrow-width > .full-page-width {
    max-width: unset;
  }
}

#page-main .xwide-width,
#page-main form > .xwide-width {
  width: 100%;
}

@media (min-width: 1100px) {
  #page-main .xwide-width > *,
  #page-main form > .xwide-width > * {
    max-width: 1052px;
    margin-left: auto;
    margin-right: auto;
  }
}

#page-main .xwide-width > .full-page-width,
#page-main form > .xwide-width > .full-page-width {
  width: 100%;
}

@media (min-width: 1100px) {
  #page-main .xwide-width > .full-page-width,
  #page-main form > .xwide-width > .full-page-width {
    max-width: unset;
  }
}

#page-main h1,
#page-main h2,
#page-main .space-after {
  margin-bottom: 24px;
}

#page-main .space-before-1 {
  margin-top: 24px;
}

#page-main .space-before-2 {
  margin-top: 48px;
}

#page-main .space-before-3 {
  margin-top: 72px;
}

#page-main,
#page-main > form {
  display: grid;
  align-content: start;
  place-items: center;
}

.separator-before {
  margin-top: 24px;
  border-top: dotted 2px black;
  padding-top: 24px;
}

.separator-after {
  padding-bottom: 24px;
  border-bottom: dotted 2px black;
  margin-bottom: 24px;
}

.gaps > * {
  margin-top: 1.2em;
  margin-bottom: 1.2em;
}

.gaps > *:first-child {
  margin-top: 0;
}

.gaps > *:last-child {
  margin-bottom: 0;
}

#page-main {
  --font-size-90: 60px;
  --font-size-90: clamp(
    30px,
    calc(
      30px + (60) *
        ((100vw - 280px) / 320)
    ),
    90px
  );
  --font-size-45: 45px;
  --font-size-45: clamp(
    20px,
    calc(
      20px + (25) *
        ((100vw - 280px) / 320)
    ),
    45px
  );
  --font-size-40: 40px;
  --font-size-40: clamp(
    20px,
    calc(
      20px + (20) *
        ((100vw - 280px) / 320)
    ),
    40px
  );
  --font-size-36: 36px;
  --font-size-36: clamp(
    18px,
    calc(
      18px + (18) *
        ((100vw - 280px) / 320)
    ),
    36px
  );
  --font-size-34: 34px;
  --font-size-34: clamp(
    18px,
    calc(
      18px + (16) *
        ((100vw - 280px) / 320)
    ),
    34px
  );
  --font-size-32: 32px;
  --font-size-32: clamp(
    18px,
    calc(
      18px + (14) *
        ((100vw - 280px) / 320)
    ),
    32px
  );
  --font-size-26: 26px;
  --font-size-26: clamp(
    18px,
    calc(
      18px + (8) *
        ((100vw - 280px) / 320)
    ),
    26px
  );
  --font-size-22: 22px;
  --font-size-22: clamp(
    18px,
    calc(
      18px + (4) *
        ((100vw - 280px) / 320)
    ),
    22px
  );
  --font-size-20: 20px;
  --font-size-20: clamp(
    16px,
    calc(
      16px + (4) *
        ((100vw - 280px) / 320)
    ),
    20px
  );
  --font-size-16: 16px;
  --font-size-16: clamp(
    15px,
    calc(
      15px + (1) *
        ((100vw - 280px) / 320)
    ),
    16px
  );
  --font-size-14: 14px;
  --font-size-14: clamp(
    14px,
    calc(
      14px + (0) *
        ((100vw - 280px) / 320)
    ),
    14px
  );
  --h1-font-size: var(--font-size-90);
  --h2-font-size: var(--font-size-45);
  --h2-question-font-size: var(--font-size-40);
  --h2-subtitle-font-size: var(--font-size-34);
  --h3-font-size: var(--font-size-26);
  --content-h3-font-size: var(--font-size-34);
  --content-h4-font-size: var(--font-size-26);
  --article-fontinfo-body-font-size: var(--font-size-22);
  --article-fontinfo-subtitle-font-size: var(--font-size-36);
  --xl-font-size: var(--font-size-26);
  --large-font-size: var(--font-size-20);
  --normal-font-size: var(--font-size-16);
  --small-font-size: var(--font-size-14);
}

#page-main h1,
#page-main .h1 {
  font-size: var(--h1-font-size);
}

#page-main h2,
#page-main .h2 {
  font-size: var(--h2-font-size);
}

#page-main h3,
#page-main .h3 {
  font-size: var(--h3-font-size);
}

.flash-messages {
  margin-bottom: 20px;
  margin-top: 1px;
  color: black;
  width: 100%;
  padding: 30px;
  font-size: 20px;
  background-color: rgba(250, 240, 0, 0.9);
  text-align: center;
}

.flash-messages--floating {
  --timeout: 15s;
  --fadeout: 1s;
  position: fixed;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: calc(100% - 15px);
  max-width: 600px;
  z-index: 6010;
  transition: opacity var(--fadeout) ease-out;
}

@media (min-width: 1000px) {
  .flash-messages--floating {
    width: 600px;
  }
}

.flash-messages__progress-bar {
  --progress: 100%;
  position: absolute;
  bottom: 0;
  left: calc(100% - var(--progress));
  height: 4px;
  width: var(--progress);
  background-color: rgba(0, 0, 0, 0.1);
  transition: width var(--timeout) linear, left var(--timeout) linear;
}

.flash-messages--fade-out {
  opacity: 0;
}

#page-footer {
  z-index: 2;
  border-top: solid 4px black;
  background-color: white;
  margin-right: var(--page-horizontal-margin);
  margin-left: var(--page-horizontal-margin);
  padding-top: 12px;
  padding-bottom: 15px;
  padding-left: 0;
  padding-right: 0;
  display: grid;
  grid-gap: 30px;
  align-items: center;
  justify-items: center;
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  text-transform: uppercase;
  font-feature-settings: "case";
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: 14px;
}

@media (min-width: 1100px) {
  #page-footer {
    grid-gap: var(--page-horizontal-margin);
    grid-template-columns: 1fr auto 1fr;
    justify-content: space-between;
  }
  #page-footer > *:first-child {
    justify-self: left;
  }
  #page-footer > *:last-child {
    justify-self: right;
  }
}

#page-footer section {
  text-wrap: balance;
  min-width: 0;
  width: 100%;
  text-align: center;
}

@media (min-width: 1100px) {
  #page-footer section:first-child {
    text-align: left;
  }
}

@media (min-width: 1100px) {
  #page-footer section:last-child {
    text-align: right;
  }
}

#page-footer .social-nav ul {
  display: grid;
  grid-template-columns: repeat(3, 25px);
  grid-gap: 5px;
  align-items: center;
  justify-content: center;
}

#page-footer .social-nav ul img {
  height: 24px;
  width: 24px;
  transition: transform 0.2s;
  display: block;
  --scale-ratio: 1;
}

#page-footer .social-nav ul a {
  display: block;
  text-decoration: none;
  border-bottom: none 0;
  opacity: 1;
  transition: opacity 0.2s;
}

#page-footer .social-nav ul a:hover {
  opacity: 0.5;
}

#page-footer .newsletter form {
  display: grid;
  grid-gap: 10px;
  align-items: end;
}

@media (min-width: 420px) {
  #page-footer .newsletter form {
    grid-template-columns: auto auto;
    justify-content: center;
  }
}

@media (min-width: 1100px) {
  #page-footer .newsletter form {
    justify-content: start;
  }
}

#page-footer .newsletter form input,
#page-footer .newsletter form button {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  text-transform: uppercase;
  font-feature-settings: "case";
  font-weight: 600;
  letter-spacing: 0.05em;
  font-size: 14px;
  border: none;
  outline: none;
  padding-left: 15px;
  padding-right: 15px;
}

#page-footer .newsletter form input[type=submit],
#page-footer .newsletter form button {
  min-width: 96px;
  height: 36px;
  border: solid 2px black;
  background: white;
}

@media (min-width: 420px) {
  #page-footer .newsletter form input[type=submit],
  #page-footer .newsletter form button {
    max-width: 30vw;
  }
}

#page-footer .newsletter form input[type=email] {
  padding: 0;
  text-align: center;
  height: 36px;
  padding-bottom: 6px;
  padding-top: 6px;
  color: black;
}

@media (min-width: 420px) {
  #page-footer .newsletter form input[type=email] {
    width: 325px;
    max-width: 50vw;
  }
}

#page-footer .newsletter form input[type=email]::placeholder {
  color: black;
  transition: opacity 0.2s;
  opacity: 1;
}

#page-footer .newsletter form input[type=email]:focus::placeholder {
  opacity: 0.25;
}

.narrow-with-sidebars {
  max-width: 792px;
  margin-left: auto;
  margin-right: auto;
}

.narrow-with-sidebars > * {
  grid-area: main;
}

.narrow-with-sidebars aside,
.narrow-with-sidebars .article__navigation {
  width: 100%;
  max-width: var(--sidebar-width);
  grid-area: left;
}

.narrow-with-sidebars aside.right,
.narrow-with-sidebars .article__navigation.right {
  grid-area: right;
}

.narrow-with-sidebars .infobox {
  margin-left: auto;
  margin-right: auto;
  --width: 100%;
  --first-column-width: auto;
  margin-top: 24px;
  border-top: dotted 2px black;
  padding-top: 24px;
}

@media (min-width: 420px) {
  .narrow-with-sidebars .infobox {
    max-width: var(--width);
  }
}

.narrow-with-sidebars .infobox > * {
  display: grid;
  grid-template-columns: auto;
  grid-gap: 1em;
  padding-bottom: 24px;
  border-bottom: dotted 2px black;
  margin-bottom: 24px;
}

@media (min-width: 420px) {
  .narrow-with-sidebars .infobox > * {
    grid-template-columns: var(--first-column-width) auto;
  }
}

.narrow-with-sidebars .infobox > * > span:last-child {
  text-transform: uppercase;
  font-feature-settings: "case";
}

@media (min-width: 1640px) {
  .narrow-with-sidebars {
    width: 100%;
    max-width: 100%;
    display: grid;
    grid-gap: var(--page-horizontal-margin);
    grid-template-columns: 1fr 792px 1fr;
    grid-template-areas: "left main right";
  }
  .narrow-with-sidebars aside,
  .narrow-with-sidebars .article__navigation {
    justify-self: center;
    margin-top: 0;
  }
  .narrow-with-sidebars .infobox {
    margin-top: 6px;
  }
}

.side-by-side-layout {
  width: 100%;
}

.side-by-side-layout > * {
  width: 100%;
}

.side-by-side-layout > *:not(:last-child) {
  margin-bottom: 48px;
}

@media (min-width: 1100px) {
  .side-by-side-layout {
    display: grid;
    gap: 24px;
    justify-items: center;
    align-items: start;
    grid-template-columns: 1fr 1px 1fr;
    grid-template-areas: "left separator right";
  }
  .side-by-side-layout::before {
    content: " ";
    grid-area: separator;
    border-right: dotted 2px black;
    height: 100%;
  }
  .side-by-side-layout > *:first-child {
    grid-area: left;
  }
  .side-by-side-layout > *:last-child {
    grid-area: right;
  }
  .side-by-side-layout .simple_form {
    width: 100%;
  }
}

.side-by-side-layout > * {
  max-width: 501px;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.side-by-side-layout > * h2,
.side-by-side-layout > * h3 {
  text-align: center;
}

.article {
  max-width: 792px;
  margin-left: auto;
  margin-right: auto;
}

.article p {
  margin-top: 1em;
  margin-bottom: 1em;
}

@media (min-width: 1640px) {
  .article {
    max-width: 792px;
    margin-left: auto;
    margin-right: auto;
  }
  .article.article--grid, .article.article--with-header, .article.article--with-navigation {
    width: 100%;
    max-width: calc(100% - 2 * var(--page-horizontal-margin));
    display: grid;
    grid-gap: 24px;
    grid-template-columns: 1fr 792px 1fr;
    grid-template-areas: "left main right";
  }
  .article.article--with-header {
    grid-template-areas: "header header header" "left main right";
  }
  .article.article--with-header .article__header {
    grid-area: header;
  }
}

.article .article__text--large {
  font-size: var(--xl-font-size);
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 500;
}

.article .article__footnote {
  margin-top: 40px;
  margin-bottom: 40px;
  font-size: 16px;
  line-height: 1.2;
}

.article.article--narrow {
  max-width: 652px;
  margin-left: auto;
  margin-right: auto;
}

@media (min-width: 700px) {
  .article.article--narrow {
    grid-template-columns: 1fr 652px 1fr;
  }
}

.article .article__content--centered {
  display: grid;
  justify-content: center;
}

.article.article--font-info {
  font-size: var(--article-fontinfo-body-font-size);
  line-height: 1.3;
}

.article.article--font-info .article__subtitle {
  font-size: var(--article-fontinfo-subtitle-font-size);
  line-height: 1.14;
  margin-bottom: 1.5em;
}

.article.article--full-width {
  max-width: 100%;
  width: 100%;
}

.article.article--var-width {
  max-width: 100%;
}

.article.article--var-width .article__subtitle {
  max-width: 1000px;
  hyphens: auto;
}

@media (min-width: 700px) {
  .article.article--var-width .article__subtitle {
    margin-left: auto;
    margin-right: auto;
  }
}

.article.article--var-width .article__body > * {
  width: 100%;
  overflow-wrap: anywhere;
}

@media (min-width: 700px) {
  .article.article--var-width .article__body > * {
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
  }
}

.article.article--var-width .article__body > img,
.article.article--var-width .article__body > video,
.article.article--var-width .article__body > blockquote {
  width: 100%;
}

@media (min-width: 700px) {
  .article.article--var-width .article__body > img,
  .article.article--var-width .article__body > video,
  .article.article--var-width .article__body > blockquote {
    max-width: 1000px;
  }
}

.article__navigation {
  width: 100%;
  max-width: var(--sidebar-width);
  grid-area: left;
  margin-top: 0;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

.article__navigation.right {
  grid-area: right;
}

@media (min-width: 700px) {
  .article__navigation {
    display: flex;
    justify-content: center;
  }
  .article__navigation ul {
    display: flex;
  }
  .article__navigation ul li {
    text-align: center;
  }
  .article__navigation ul li a {
    text-align: center;
    text-wrap: balance;
  }
}

.article__navigation.article__navigation--internal {
  display: unset;
}

.article__navigation.article__navigation--internal ul {
  display: unset;
}

.article__navigation.article__navigation--internal ul li {
  text-align: left;
}

@media (min-width: 1640px) {
  .article__navigation {
    display: unset;
    justify-self: center;
    margin-top: 0;
    margin-left: 0;
    margin-right: 0;
    justify-self: end;
  }
  .article__navigation ul {
    display: unset;
  }
  .article__navigation ul li {
    text-align: left;
  }
}

.article__navigation ul {
  list-style: none;
  padding: 0;
  margin: 0;
  margin-bottom: 54.6666666667px;
}

.article__navigation li a {
  display: grid;
  align-content: center;
  justify-content: center;
  text-align: center;
  padding: 14px;
  height: 82px;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

@media (min-width: 1640px) {
  .article__navigation li a {
    justify-content: start;
    text-align: left;
  }
}

.article__navigation li a:hover {
  background-color: black;
  color: white;
  border: none 0 !important;
}

@media (min-width: 1640px) {
  .article__navigation--fixed {
    position: fixed;
    top: var(--header-height);
    left: var(--page-horizontal-margin);
    z-index: 1;
  }
}

#page-main .article__group-title {
  display: grid;
  align-content: center;
  justify-content: start;
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.02em;
  font-size: 20px;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  line-height: 1;
  opacity: 0.5;
  padding: 30px 0;
  margin: 0;
  border-bottom: dotted 1px black;
}

#page-main .article__entry {
  border-bottom: dotted 1px black;
}

#page-main .article__entry:last-child:not(.article__entry--expandable) {
  border-bottom: none 0;
}

#page-main .article__entry-title {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 500;
  font-size: var(--h2-font-size);
  letter-spacing: 0;
  line-height: 1;
  padding: 40px 0;
  margin-top: 0;
  margin-bottom: 0;
}

#page-main .article__entry-title a {
  color: black;
}

#page-main .article__entry-title a:hover {
  border-bottom: none 0;
}

#page-main .article__entry-title.article__entry-title--centered {
  text-align: center;
}

#page-main .article__entry-title.article__entry-title--following-main-title {
  padding-top: 10px;
}

#page-main .article__entry-title.article__entry-title--hug-content {
  padding-bottom: 10px;
}

#page-main .cd-faq-items .article__entry-title {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 400;
  font-size: var(--h2-question-font-size);
}

#page-main .article__entry-content {
  margin-bottom: 40px;
}

#page-main .article__entry-subtitle {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 500;
  font-size: var(--h2-subtitle-font-size);
  line-height: 1;
  margin-bottom: 40px;
}

#page-main .article__entry-content {
  font-size: 16px;
  line-height: 1.2;
}

#page-main .article__entry-content h3 {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 500;
  font-size: var(--content-h3-font-size);
  line-height: 1;
  margin-bottom: 15px;
}

#page-main .article__entry-content h4 {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-weight: 500;
  font-size: var(--content-h4-font-size);
  line-height: 1.25;
  margin-top: 30px;
  margin-bottom: 15px;
}

#page-main .article__entry--expandable {
  display: grid;
  align-content: center;
  justify-content: stretch;
}

#page-main .article__entry--expandable .article__entry-content {
  transition: max-height 0.2s ease, margin-bottom 0.2s ease;
  overflow: hidden;
}

#page-main .article__entry--expandable .article__entry-title {
  padding-top: 25px;
  padding-bottom: 25px;
  display: grid;
  grid-template-columns: 1fr auto;
}

#page-main .article__entry--expandable .article__entry-title::after {
  content: "";
  display: block;
  cursor: pointer;
  width: var(--h2-font-size);
  height: var(--h2-font-size);
  background: white no-repeat center center;
  background-size: var(--h2-font-size);
  background-image: url(/packs/media/store/images/icon-buttons/caret-down-6eba003eba2d12e548dfbdfb1bd7bc07.svg);
  transition: transform 0.2s ease;
}

#page-main .article__entry--expandable.article__entry--expanded .article__entry-title::after {
  transform: rotate(180deg);
}

#page-main .article__entry--collapsed .article__entry-content {
  margin-bottom: 0;
}

.debug-info {
  font-size: 11px;
  opacity: 0.5;
}

.debug-line {
  position: fixed;
}

.debug-line.debug-line--top {
  left: 0;
  right: 0;
  box-sizing: border-box;
  border-top: 1px solid red;
  z-index: 9000;
  color: red;
  font-size: 11px;
  text-align: center;
  opacity: 0.5;
}

.debug-line.debug-line--left {
  top: 0;
  bottom: 0;
  box-sizing: border-box;
  border-left: 1px solid red;
  z-index: 9000;
  color: red;
  font-size: 11px;
  text-align: center;
  opacity: 0.5;
  writing-mode: vertical-lr;
}

.hidden {
  display: none;
}

.invisible {
  visibility: hidden;
}

.inline {
  --display-when-not-hidden: inline;
  display: var(--display-when-not-hidden);
}

.inline.hidden {
  display: none;
}

.side-by-side {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: var(--page-horizontal-margin);
}

.side-by-side.side-by-side--on-desktop {
  grid-template-columns: 1fr;
}

@media (min-width: 1100px) {
  .side-by-side.side-by-side--on-desktop {
    grid-template-columns: 1fr 1fr;
  }
}

.test-info {
  text-align: left;
  width: 100%;
  background-color: #f3f3f9;
  color: #339;
  padding: 1em;
  border-radius: 0.5em;
}

.test-info p {
  margin: 0.5em 0;
}

table.table {
  display: block;
  background-color: rgb(195, 255, 212);
}

@media screen and (min-width: 700px) {
  table.table {
    display: table;
  }
}

table.table thead {
  display: none;
}

@media screen and (min-width: 700px) {
  table.table thead {
    display: table-row-group;
    background-color: rgb(50, 255, 150);
  }
  table.table thead th {
    padding: 10px 10px 8px 10px;
    text-align: left;
  }
}

table.table .label--inline {
  font-weight: bold;
}

@media screen and (min-width: 700px) {
  table.table .label--inline {
    display: none;
  }
}

table.table tbody {
  display: block;
}

@media screen and (min-width: 700px) {
  table.table tbody {
    display: table-row-group;
  }
}

table.table tr {
  display: block;
  padding: 12px 10px;
  border-bottom: 3px solid white;
}

@media screen and (min-width: 700px) {
  table.table tr {
    display: table-row;
    padding: 0;
  }
}

table.table td {
  display: block;
}

@media screen and (min-width: 700px) {
  table.table td {
    display: table-cell;
    padding: 12px 10px;
  }
}

table.table td:last-child {
  border-right: none;
}

table.table td,
table.table .licensing-option-group {
  margin-bottom: 10px;
}

table.table h2,
table.table h3 {
  font-size: inherit !important;
}

.tooltip {
  display: none;
  position: absolute;
  padding: 1em;
  background: black;
  color: white;
  font-size: 16px;
  line-height: 1.4;
  width: auto;
  max-width: 15em;
  z-index: 2580;
  pointer-events: none;
  transition: opacity 0.2s ease;
}

.carousel {
  border-top: dotted 2px black;
  padding: clamp(1em, 10vw, 60px) 0;
}

.carousel:first-child {
  border-top: none;
  padding-top: 0;
}

.carousel:last-child {
  padding-bottom: 0;
}

.carousel .anchor {
  height: 0;
}

.carousel__title {
  text-align: center;
  margin-bottom: clamp(1em, 10vw, 60px);
}

.carousel .slides {
  margin-left: calc(0px - var(--page-horizontal-margin));
  margin-right: calc(0px - var(--page-horizontal-margin));
}

.carousel .slides img {
  width: 100%;
}

.carousel__description {
  display: block;
  font-size: 16px;
  line-height: 140%;
  max-width: 80em;
  margin: 0 auto;
  padding: 0;
  max-width: calc(var(--carousel-frame-width) - 2 * var(--carousel-suggested-padding));
}

.carousel__description p {
  margin-bottom: 1em;
}

.card table.address {
  width: 100%;
  padding-bottom: 12px;
  font-size: 14px;
  letter-spacing: 0.03em;
  margin-bottom: 10px;
}

.card table.address tr {
  border-bottom: 1px dotted black;
}

.card table.address td {
  padding: 10px 0px 10px 0px;
  border-right: 0px dotted black;
}

.card table.address td:last-child {
  border-right: none;
  text-align: left;
}

.card table.address thead {
  background-color: rgb(255, 70, 160);
}

.card table.address thead th {
  padding: 10px 10px 8px 10px;
  text-align: left;
  color: black;
  font-size: 14px;
  line-height: 130%;
}

.message.message--main {
  font-size: 21px;
  text-align: left;
  margin-top: 40px;
}

.message.message--main p {
  font-size: 30px;
  line-height: 125%;
  margin-bottom: 0.5em;
}

.license__text {
  font-size: 16px;
  line-height: 24px;
  line-height: 1.5;
  display: none;
  margin-top: 1em;
  margin-bottom: 2em;
  white-space: pre-wrap;
  columns: 2;
}

@media screen and (max-width: 800px) {
  .license__text {
    columns: 1;
  }
}

.license__toggler {
  display: block;
  position: relative;
  margin-bottom: 0;
  padding-left: 52px;
  font-size: 18px;
  line-height: 1.5;
  cursor: pointer;
}

.license__toggler:before {
  display: inline-block;
  position: absolute;
  top: 6px;
  left: 16px;
  content: " ";
  width: 8px;
  height: 10px;
  background: url(/packs/media/store/images/arrow-small-right-fe92c58a95ae4f3bf164c2233c3259de.png) no-repeat;
  background-size: contain;
  transform-origin: center center;
  transition: transform 0.1s;
}

.license__toggler:hover {
  border-bottom: 0;
  font-weight: 700;
}

.license__toggler.open:before {
  transform: rotate(90deg);
}

.rendered_text {
  hyphens: auto;
  white-space: nowrap;
  --pushdown-height: 0px;
  --ascender-padding: 0px;
  --descender-padding: 0px;
  --line-height-gap-top-correction: 0px;
  --line-height-gap-bottom-correction: 0px;
  margin-top: calc(var(--pushdown-height) - var(--ascender-padding) + var(--line-height-gap-top-correction));
  margin-bottom: calc(0px - var(--descender-padding) + var(--line-height-gap-bottom-correction));
}

.rendered_text p {
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}

.rendered_text.multiline {
  white-space: pre;
}

.rendered_text.editable {
  user-select: inherit;
}

.rendered_text.breakable {
  max-width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  white-space: pre-line !important;
}

.icon-button {
  display: block;
  cursor: pointer;
  width: 16px;
  height: 16px;
  background: white no-repeat right center;
}

.icon-button.sm {
  width: 8px;
  height: 8px;
  background-size: 8px;
}

.align-left-button {
  background-image: url(/packs/media/store/images/icon-buttons/align-left-fb5c1a8ad9f9684febdae852e79dd5c7.svg);
}

.align-center-button {
  background-image: url(/packs/media/store/images/icon-buttons/align-center-bf8381f5690eea99acf8ad2caaae3dd1.svg);
}

.column-1-button {
  background-image: url(/packs/media/store/images/icon-buttons/column-1-1df4b4847bc03ffa65b9362cd6470d06.svg);
}

.column-2-button {
  background-image: url(/packs/media/store/images/icon-buttons/column-2-152d8a118d076f7e633c9ef03a0cae9c.svg);
}

.column-3-button {
  background-image: url(/packs/media/store/images/icon-buttons/column-3-678836d51d5d09806066ee8a14bb5f37.svg);
}

.minus-button {
  background-image: url(/packs/media/store/images/icon-buttons/minus-9af11ee96250b9b5e76384153e9600d3.svg);
}

.plus-button {
  background-image: url(/packs/media/store/images/icon-buttons/plus-095a5a468a10be2dd0140587a94302e6.svg);
}

.spacing-horizontal-button {
  background-image: url(/packs/media/store/images/icon-buttons/spacing-horizontal-be08fc8f2fec8b2f1b2bfb3de4993170.svg);
}

.spacing-horizontal-button.sm {
  background-image: url(/packs/media/store/images/icon-buttons/spacing-horizontal-sm-5fe0afaa867183c22a0709980f513c9c.svg);
}

.spacing-vertical-button {
  background-image: url(/packs/media/store/images/icon-buttons/spacing-vertical-65acd9ed2b33361b5e0110618f22a940.svg);
}

.spacing-vertical-button.sm {
  background-image: url(/packs/media/store/images/icon-buttons/spacing-vertical-sm-dc460c6c34f33f25fb41a129d68637e9.svg);
}

.refresh-button {
  background-image: url(/packs/media/store/images/icon-buttons/refresh-77fb13e8c3faf12cb41e47a0181b8916.svg);
  background-position: 3px -1px;
}

.size-button {
  background-image: url(/packs/media/store/images/icon-buttons/size-66a1725e28973238eb70db5c59dc391d.svg);
}

.size-button.sm {
  background-image: url(/packs/media/store/images/icon-buttons/size-sm-3d17e8ea99d7c82bc18d2d2593f77843.svg);
}

.with-icon-in-front {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 0.5em;
}

.type-tester input[type=radio],
.type-tester input[type=radio] + label,
.type-tester input[type=checkbox],
.type-tester input[type=checkbox] + label {
  text-transform: unset;
  display: unset;
  position: unset;
  width: unset;
  cursor: unset;
  font-size: unset;
  margin: unset;
}

.type-tester input[type=radio]::before,
.type-tester input[type=radio] + label::before,
.type-tester input[type=checkbox]::before,
.type-tester input[type=checkbox] + label::before {
  all: unset;
}

.type-tester input[type=range] {
  margin: 0;
  padding: 0;
  height: 16px;
}

.type-tester input[type=checkbox],
.type-tester input[type=radio] {
  display: none;
}

.type-tester input[type=checkbox] + label,
.type-tester input[type=radio] + label {
  position: relative;
  width: 100%;
  cursor: pointer;
}

.type-tester input[type=checkbox] + label:before,
.type-tester input[type=radio] + label:before {
  box-sizing: border-box;
  content: " ";
  display: inline-block;
  position: relative;
  top: -1px;
  width: 11px;
  height: 11px;
  margin-right: 4px;
  border: solid black 1.5px;
  text-align: center;
  line-height: 10px;
  vertical-align: middle;
  background-color: white;
}

.type-tester input[type=checkbox]:checked + label:before,
.type-tester input[type=radio]:checked + label:before {
  background-color: black;
  border-color: black;
}

.type-tester input[type=radio] + label:before {
  border-radius: 50%;
  width: 12px;
  height: 12px;
  margin-right: 3px;
}

.type-tester .header,
.type-tester .tyte-panel {
  font-family: "Beausite Classic Clear", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 12px;
  font-weight: 300;
  letter-spacing: 0.02em;
}

.type-tester .tabular-numbers {
  font-variant-numeric: tabular-nums;
}

.type-tester {
  --transition-params: 0.2s ease;
  transition: height var(--transition-params), opacity var(--transition-params);
  margin-bottom: 10px;
  width: 100%;
}

.type-tester {
  --header-height: 32px;
}

.type-tester .header {
  display: flex;
  width: 100%;
  position: relative;
  z-index: 300;
  align-items: center;
  height: var(--header-height);
  text-transform: uppercase;
}

.type-tester .header.with-font-family-name {
  grid-template-columns: 28em 1fr 11em;
  grid-gap: 4em;
}

.type-tester .header > * {
  overflow: hidden;
}

.type-tester .header > *:nth-child(2) {
  justify-self: center;
  flex-grow: 1;
}

.type-tester .header > *:nth-child(3) {
  justify-self: end;
}

.type-tester .font-settings {
  display: flex;
  flex-direction: row;
  grid-gap: 1em;
  justify-content: center;
  align-items: center;
}

.type-tester .visible-only-when-active {
  transition: opacity var(--transition-params);
  opacity: 0;
}

.type-tester.active .visible-only-when-active, .type-tester.hovered .visible-only-when-active {
  opacity: 1;
}

.type-tester .input-group.expandable, .type-tester .input-group.expandable > .tool-panel {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.type-tester .input-group.expandable .tyte-label, .type-tester .input-group.expandable > .tool-panel .tyte-label {
  cursor: pointer;
}

.type-tester .input-group.expandable .icon-button, .type-tester .input-group.expandable > .tool-panel .icon-button {
  height: 8px;
  width: 8px;
}

.type-tester .input-group.expandable .icon-button.expand-button, .type-tester .input-group.expandable > .tool-panel .icon-button.expand-button {
  background-image: url(/packs/media/store/images/icon-buttons/plus-095a5a468a10be2dd0140587a94302e6.svg);
}

.type-tester .input-group.expandable.open .icon-button.expand-button, .type-tester .input-group.expandable > .tool-panel.open .icon-button.expand-button {
  background-image: url(/packs/media/store/images/icon-buttons/minus-9af11ee96250b9b5e76384153e9600d3.svg);
}

.type-tester .button-group {
  --display: flex;
  display: var(--display);
  flex-direction: row;
  gap: 6px;
  align-items: center;
}

.type-tester .button-group::before, .type-tester .button-group::after {
  content: none;
  display: none;
}

.type-tester .with-icon-in-front.with-value-indicator {
  grid-template-columns: auto 1fr auto;
}

.type-tester .value-indicator.tabular-numbers {
  min-width: calc(var(--value-indicator-max-digits) * 1.1ch);
}

.type-tester {
  position: relative;
}

.type-tester .panels {
  margin-bottom: 0em;
  transition: all var(--transition-params);
}

.type-tester .panel-container {
  transition: all var(--transition-params);
  font-size: 12px;
  position: absolute;
  z-index: 400;
  top: var(--header-height);
  left: var(--label-offset-left);
  display: none;
  opacity: 0;
}

.type-tester .panel-container.display {
  display: block;
}

.type-tester .panel-container.visible {
  opacity: 1;
}

.type-tester .panel-container.popup {
  z-index: 450;
}

.type-tester .panel-container.center {
  place-items: center;
  left: 0;
  right: 0;
}

.type-tester .panel-container.center.display {
  display: grid;
}

.type-tester .panel-container .tyte-panel {
  background-color: white;
}

.type-tester .panel-container.distant {
  top: calc(var(--header-height) + 10px);
}

.type-tester .tool-panel {
  background: white;
  padding: 2px 6px;
  margin: -2px -6px;
  box-sizing: border-box;
}

.type-tester .header .tool-panel {
  height: 22px;
}

.type-tester .input-group.style-input-group {
  text-wrap: nowrap;
  min-width: 200px;
}

.type-tester .panel-container.style-panel-container.covers-label {
  margin-left: -8px;
  top: 3px;
}

.type-tester .panel-container.style-panel-container .tyte-panel {
  width: 17.5em;
  max-height: 33.3em;
  overflow-y: scroll;
  overflow-x: hidden;
  --scrollbar-width: 8px;
  --scrollbar-color-track: transparent;
  --scrollbar-color-thumb: #000;
  scrollbar-color: var(--scrollbar-color-thumb) var(--scrollbar-color-track);
  scrollbar-width: thin;
  scrollbar-gutter: stable;
}

.type-tester .panel-container.style-panel-container .tyte-panel::-webkit-scrollbar {
  width: var(--scrollbar-width);
  height: var(--scrollbar-width);
  max-width: var(--scrollbar-width);
  max-height: var(--scrollbar-width);
}

.type-tester .panel-container.style-panel-container .tyte-panel::-webkit-scrollbar-thumb {
  background: var(--scrollbar-color-thumb);
  border-radius: var(--scrollbar-width);
}

.type-tester .panel-container.style-panel-container .tyte-panel::-webkit-scrollbar-track {
  background: var(--scrollbar-color-track);
}

.type-tester .panel-container.style-panel-container .tyte-panel .option {
  text-transform: uppercase;
  cursor: pointer;
  text-wrap: nowrap;
  padding: 4px 8px;
}

.type-tester .panel-container.style-panel-container .tyte-panel .option.selected {
  background-color: black;
  color: white;
}

.type-tester .panel-container.style-panel-container .tyte-panel .option:hover {
  background-color: black;
  color: white;
}

.type-tester .panel-container.feature-panel-container .tyte-panel {
  --max-item-width: 12em;
}

.type-tester .panel-container.feature-panel-container .tyte-panel form {
  line-height: 10px;
  display: flex;
  flex-direction: row;
}

.type-tester .panel-container.feature-panel-container .tyte-panel form .column {
  margin: 0;
  padding: 0;
  margin-right: 1em;
}

.type-tester .panel-container.feature-panel-container .tyte-panel form .column:last-child {
  margin-right: 0;
}

.type-tester .panel-container.feature-panel-container .tyte-panel form .item {
  height: 16px;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: var(--max-item-width);
  display: grid;
  grid-template-columns: auto 1fr;
}

.type-tester .panel-container.feature-panel-container .tyte-panel form .item label {
  height: 16px;
}

.type-tester .input-group.size-input-group {
  display: grid;
  align-items: center;
  margin-right: calc(var(--gap-factor) * 5px);
}

.type-tester .panel-container.size-panel-container {
  width: 6em;
}

.type-tester .tool-panel {
  margin: 0;
}

.type-tester .input-group.spacing-input-group {
  margin-right: 20px;
  --display: grid;
  display: var(--display);
}

.type-tester .input-group.spacing-input-group .items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: calc(var(--gap-factor) * 17px);
}

.type-tester .input-group.spacing-input-group .items .item {
  margin-bottom: 0;
}

.type-tester .tool-panel {
  margin: 0;
}

.type-tester .panel-container.spacing-panel-container.covers-label,
.type-tester .input-group.spacing-input-group.covers-label {
  top: 10px;
}

.type-tester .panel-container.spacing-panel-container .items .item,
.type-tester .input-group.spacing-input-group .items .item {
  margin-bottom: 4px;
}

.type-tester .panel-container.spacing-panel-container .icon-button,
.type-tester .input-group.spacing-input-group .icon-button {
  height: 8px;
  width: 8px;
}

.type-tester .input-group.variation-input-group {
  --display: block;
  margin-right: 20px;
}

.type-tester .input-group.variation-input-group .items {
  align-items: center;
  gap: calc(var(--gap-factor) * 17px);
}

.type-tester .input-group.variation-input-group .items .item {
  margin-bottom: 0;
}

.type-tester .input-group.variation-input-group .tool-panel {
  margin: 0;
}

.type-tester .input-group.variation-input-group .items {
  display: flex;
  flex-direction: row;
  gap: 17px;
}

.type-tester .rendered_text {
  width: 100%;
  overflow-wrap: break-word;
  word-wrap: break-word;
  white-space: pre-line !important;
  overflow: hidden;
  overflow: clip;
}

.type-tester .rendered_text p {
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}

.type-tester .rendered_text p:first-child {
  margin-top: var(--column-balance-correction);
}

.type-tester .rendered_text .ql-editor {
  max-width: 100%;
  font-feature-settings: "kern" 1, "liga" 1, "salt" 1, "calt" 1;
  transition: none;
  outline: none;
  cursor: text;
  white-space: pre-wrap;
  overflow: hidden;
  overflow: clip;
  padding-top: var(--ascender-padding);
  padding-bottom: var(--descender-padding);
}

.type-tester .rendered_text.nowrap {
  white-space: nowrap !important;
}

.type-tester .rendered_text.nowrap .ql-editor {
  white-space: nowrap;
}

.type-tester.nowrap {
  white-space: nowrap !important;
}

.type-tester.nowrap .ql-editor {
  white-space: nowrap;
}

@media (max-width: 1000px) {
  .type-tester .header {
    grid-template-columns: auto auto;
    justify-content: space-between;
  }
  .type-tester .header.with-font-family-name {
    grid-template-columns: auto auto;
  }
  .type-tester .font-settings {
    display: none;
  }
  .type-tester.type-tester--variable .buy-button-box {
    width: 100%;
    text-align: right;
  }
}

@media (max-width: 500px) {
  .type-tester .font-family-name {
    display: none;
  }
}

/*

Rules for:
- showing multiple type-testers side-by-side
- layout of the tools depending on the sample width (visibility & size)

Implementation overview:
  - functions for width1-rules, width2-rules, etc.
  - set up rules when the type-tester is not wrapped in a .sample-row div (so that the type-tester looks good standalone)
  - set up rules when the type-tester is wrapped in a .sample-row div
  - for each side-by-side count, we set up multiple @media rules for when the width reaches the minimum sample width plus gaps
*/

.type-tester {
  --split-vw: 1vw;
  --sample-width-category: 0;
  --sample-width-category-string: "0";
}

.type-tester .header {
  --gap-factor: 1;
  --slider-width-factor: 6;
  --primary-slider-width: min(
    160px,
    calc(var(--slider-width-factor) * var(--split-vw))
  );
  --secondary-slider-width: calc(0.5 * var(--primary-slider-width));
}

.type-tester .header custom-range-slider {
  width: var(--secondary-slider-width);
}

.type-tester .header .size-input-group custom-range-slider {
  width: var(--primary-slider-width);
}

.type-tester .header .input-group.variation-input-group {
  display: none;
}

.type-tester.type-tester--variable .header .input-group.variation-input-group {
  display: var(--display);
}

@media screen and (min-width: 648px) {
  .type-tester {
    --split-vw: 1vw;
  }
  .type-tester {
    --sample-width-category: 1;
    --sample-width-category-string: "1";
  }
  .type-tester .header {
    --slider-width-factor: 18;
    display: flex;
  }
  .type-tester .header > * {
    flex-grow: 1;
  }
  .type-tester .header > *.buy-button-box {
    flex-grow: 0;
  }
  .type-tester .header .font-settings {
    justify-self: end;
    justify-content: end;
  }
  .type-tester .header .letter-spacing-control,
  .type-tester .header .columns-input-group {
    display: none;
  }
  .type-tester .header .input-group.spacing-input-group {
    margin-right: 0;
  }
  .type-tester .header .input-group.spacing-input-group .items {
    grid-template-columns: 1fr;
  }
  .type-tester.type-tester--variable .header {
    --slider-width-factor: 12;
    display: flex;
    gap: calc(var(--gap-factor) * 17px);
    justify-content: space-between;
  }
  .type-tester.type-tester--variable .header .buy-button-box {
    flex-grow: 0;
  }
  .type-tester.type-tester--variable .header .style-input-group {
    display: none;
  }
  .type-tester.type-tester--variable .header .font-settings {
    justify-self: space-between;
    justify-content: space-between;
  }
  .type-tester.type-tester--variable .header .input-group.size-input-group,
  .type-tester.type-tester--variable .header .input-group.variation-input-group,
  .type-tester.type-tester--variable .header .input-group.spacing-input-group {
    margin-right: 0;
  }
  .type-tester.type-tester--variable .header .input-group.size-input-group {
    width: auto;
  }
  .type-tester.type-tester--variable .header .input-group.variation-input-group .items,
  .type-tester.type-tester--variable .header .input-group.spacing-input-group .items {
    gap: 0;
  }
  .type-tester.type-tester--variable .header .input-group.spacing-input-group,
  .type-tester.type-tester--variable .header .input-group.alignment-input-group,
  .type-tester.type-tester--variable .header .input-group.columns-input-group {
    display: none;
  }
}

@media screen and (min-width: 794px) {
  .type-tester {
    --sample-width-category: 2;
    --sample-width-category-string: "2";
  }
  .type-tester .header {
    --slider-width-factor: 18;
  }
  .type-tester .header .letter-spacing-control {
    display: grid;
  }
  .type-tester .header .input-group.spacing-input-group {
    margin-right: 20px;
  }
  .type-tester .header .input-group.spacing-input-group .items {
    grid-template-columns: 1fr 1fr;
  }
  .type-tester.type-tester--variable .header .input-group.alignment-input-group {
    display: var(--display);
  }
}

@media screen and (min-width: 848px) {
  .type-tester {
    --sample-width-category: 3;
    --sample-width-category-string: "3";
  }
  .type-tester .header {
    --slider-width-factor: 12;
  }
  .type-tester .header .input-group.columns-input-group {
    display: var(--display);
  }
  .type-tester.type-tester--variable .header {
    grid-template-columns: 1fr 6fr 1fr;
  }
  .type-tester.type-tester--variable .header .font-settings {
    justify-self: space-between;
    justify-content: space-between;
  }
}

@media screen and (min-width: 1048px) {
  .type-tester {
    --sample-width-category: 4;
    --sample-width-category-string: "4";
  }
  .type-tester .header {
    --slider-width-factor: 12;
  }
  .type-tester .header,
  .type-tester.type-tester--variable .header {
    display: grid;
    grid-template-columns: 1fr 4fr 1fr;
  }
  .type-tester .header .style-input-group,
  .type-tester.type-tester--variable .header .style-input-group {
    display: var(--display);
  }
  .type-tester .header .font-settings,
  .type-tester.type-tester--variable .header .font-settings {
    justify-self: center;
    justify-content: center;
  }
}

@media screen and (min-width: 1448px) {
  .type-tester {
    --sample-width-category: 5;
    --sample-width-category-string: "5";
  }
  .type-tester.type-tester--variable .header .input-group.spacing-input-group {
    display: var(--display);
    width: auto;
  }
  .type-tester.type-tester--variable .header .input-group.columns-input-group {
    display: var(--display);
  }
}

.sample-row {
  width: 100%;
  display: grid;
  gap: var(--page-horizontal-margin);
}

.sample-row > * {
  min-width: 0;
}

@media screen and (min-width: 648px) {
  .sample-row {
    grid-template-columns: 1fr;
  }
}

@media screen and (min-width: 1272px) {
  .sample-row.sample-row--of-2 {
    grid-template-columns: 1fr 1fr;
  }
  .sample-row.sample-row--of-2 .type-tester {
    --split-vw: 0.5vw;
  }
  .sample-row.sample-row--of-2 .buy-button-box,
  .sample-row.sample-row--of-2 .buy-button {
    display: none;
  }
  .sample-row.sample-row--of-2 .type-tester {
    --sample-width-category: 1;
    --sample-width-category-string: "1";
  }
  .sample-row.sample-row--of-2 .type-tester .header {
    --slider-width-factor: 18;
    display: flex;
  }
  .sample-row.sample-row--of-2 .type-tester .header > * {
    flex-grow: 1;
  }
  .sample-row.sample-row--of-2 .type-tester .header > *.buy-button-box {
    flex-grow: 0;
  }
  .sample-row.sample-row--of-2 .type-tester .header .font-settings {
    justify-self: end;
    justify-content: end;
  }
  .sample-row.sample-row--of-2 .type-tester .header .letter-spacing-control,
  .sample-row.sample-row--of-2 .type-tester .header .columns-input-group {
    display: none;
  }
  .sample-row.sample-row--of-2 .type-tester .header .input-group.spacing-input-group {
    margin-right: 0;
  }
  .sample-row.sample-row--of-2 .type-tester .header .input-group.spacing-input-group .items {
    grid-template-columns: 1fr;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header {
    --slider-width-factor: 12;
    display: flex;
    gap: calc(var(--gap-factor) * 17px);
    justify-content: space-between;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .buy-button-box {
    flex-grow: 0;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .style-input-group {
    display: none;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .font-settings {
    justify-self: space-between;
    justify-content: space-between;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.size-input-group,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.variation-input-group,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.spacing-input-group {
    margin-right: 0;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.size-input-group {
    width: auto;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.variation-input-group .items,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.spacing-input-group .items {
    gap: 0;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.spacing-input-group,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.alignment-input-group,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.columns-input-group {
    display: none;
  }
}

@media screen and (min-width: 1564px) {
  .sample-row.sample-row--of-2 .type-tester {
    --sample-width-category: 2;
    --sample-width-category-string: "2";
  }
  .sample-row.sample-row--of-2 .type-tester .header {
    --slider-width-factor: 18;
  }
  .sample-row.sample-row--of-2 .type-tester .header .letter-spacing-control {
    display: grid;
  }
  .sample-row.sample-row--of-2 .type-tester .header .input-group.spacing-input-group {
    margin-right: 20px;
  }
  .sample-row.sample-row--of-2 .type-tester .header .input-group.spacing-input-group .items {
    grid-template-columns: 1fr 1fr;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.alignment-input-group {
    display: var(--display);
  }
}

@media screen and (min-width: 1672px) {
  .sample-row.sample-row--of-2 .type-tester {
    --sample-width-category: 3;
    --sample-width-category-string: "3";
  }
  .sample-row.sample-row--of-2 .type-tester .header {
    --slider-width-factor: 12;
  }
  .sample-row.sample-row--of-2 .type-tester .header .input-group.columns-input-group {
    display: var(--display);
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header {
    grid-template-columns: 1fr 6fr 1fr;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .font-settings {
    justify-self: space-between;
    justify-content: space-between;
  }
}

@media screen and (min-width: 2072px) {
  .sample-row.sample-row--of-2 .type-tester {
    --sample-width-category: 4;
    --sample-width-category-string: "4";
  }
  .sample-row.sample-row--of-2 .type-tester .header {
    --slider-width-factor: 12;
  }
  .sample-row.sample-row--of-2 .type-tester .header,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header {
    display: grid;
    grid-template-columns: 1fr 4fr 1fr;
  }
  .sample-row.sample-row--of-2 .type-tester .header .style-input-group,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .style-input-group {
    display: var(--display);
  }
  .sample-row.sample-row--of-2 .type-tester .header .font-settings,
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .font-settings {
    justify-self: center;
    justify-content: center;
  }
}

@media screen and (min-width: 2872px) {
  .sample-row.sample-row--of-2 .type-tester {
    --sample-width-category: 5;
    --sample-width-category-string: "5";
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.spacing-input-group {
    display: var(--display);
    width: auto;
  }
  .sample-row.sample-row--of-2 .type-tester.type-tester--variable .header .input-group.columns-input-group {
    display: var(--display);
  }
}

@media screen and (min-width: 1896px) {
  .sample-row.sample-row--of-3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .sample-row.sample-row--of-3 .type-tester {
    --split-vw: 0.333333vw;
  }
  .sample-row.sample-row--of-3 .buy-button-box,
  .sample-row.sample-row--of-3 .buy-button {
    display: none;
  }
  .sample-row.sample-row--of-3 .type-tester {
    --sample-width-category: 1;
    --sample-width-category-string: "1";
  }
  .sample-row.sample-row--of-3 .type-tester .header {
    --slider-width-factor: 18;
    display: flex;
  }
  .sample-row.sample-row--of-3 .type-tester .header > * {
    flex-grow: 1;
  }
  .sample-row.sample-row--of-3 .type-tester .header > *.buy-button-box {
    flex-grow: 0;
  }
  .sample-row.sample-row--of-3 .type-tester .header .font-settings {
    justify-self: end;
    justify-content: end;
  }
  .sample-row.sample-row--of-3 .type-tester .header .letter-spacing-control,
  .sample-row.sample-row--of-3 .type-tester .header .columns-input-group {
    display: none;
  }
  .sample-row.sample-row--of-3 .type-tester .header .input-group.spacing-input-group {
    margin-right: 0;
  }
  .sample-row.sample-row--of-3 .type-tester .header .input-group.spacing-input-group .items {
    grid-template-columns: 1fr;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header {
    --slider-width-factor: 12;
    display: flex;
    gap: calc(var(--gap-factor) * 17px);
    justify-content: space-between;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .buy-button-box {
    flex-grow: 0;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .style-input-group {
    display: none;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .font-settings {
    justify-self: space-between;
    justify-content: space-between;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.size-input-group,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.variation-input-group,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.spacing-input-group {
    margin-right: 0;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.size-input-group {
    width: auto;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.variation-input-group .items,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.spacing-input-group .items {
    gap: 0;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.spacing-input-group,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.alignment-input-group,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.columns-input-group {
    display: none;
  }
}

@media screen and (min-width: 2334px) {
  .sample-row.sample-row--of-3 .type-tester {
    --sample-width-category: 2;
    --sample-width-category-string: "2";
  }
  .sample-row.sample-row--of-3 .type-tester .header {
    --slider-width-factor: 18;
  }
  .sample-row.sample-row--of-3 .type-tester .header .letter-spacing-control {
    display: grid;
  }
  .sample-row.sample-row--of-3 .type-tester .header .input-group.spacing-input-group {
    margin-right: 20px;
  }
  .sample-row.sample-row--of-3 .type-tester .header .input-group.spacing-input-group .items {
    grid-template-columns: 1fr 1fr;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.alignment-input-group {
    display: var(--display);
  }
}

@media screen and (min-width: 2496px) {
  .sample-row.sample-row--of-3 .type-tester {
    --sample-width-category: 3;
    --sample-width-category-string: "3";
  }
  .sample-row.sample-row--of-3 .type-tester .header {
    --slider-width-factor: 12;
  }
  .sample-row.sample-row--of-3 .type-tester .header .input-group.columns-input-group {
    display: var(--display);
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header {
    grid-template-columns: 1fr 6fr 1fr;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .font-settings {
    justify-self: space-between;
    justify-content: space-between;
  }
}

@media screen and (min-width: 3096px) {
  .sample-row.sample-row--of-3 .type-tester {
    --sample-width-category: 4;
    --sample-width-category-string: "4";
  }
  .sample-row.sample-row--of-3 .type-tester .header {
    --slider-width-factor: 12;
  }
  .sample-row.sample-row--of-3 .type-tester .header,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header {
    display: grid;
    grid-template-columns: 1fr 4fr 1fr;
  }
  .sample-row.sample-row--of-3 .type-tester .header .style-input-group,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .style-input-group {
    display: var(--display);
  }
  .sample-row.sample-row--of-3 .type-tester .header .font-settings,
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .font-settings {
    justify-self: center;
    justify-content: center;
  }
}

@media screen and (min-width: 4296px) {
  .sample-row.sample-row--of-3 .type-tester {
    --sample-width-category: 5;
    --sample-width-category-string: "5";
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.spacing-input-group {
    display: var(--display);
    width: auto;
  }
  .sample-row.sample-row--of-3 .type-tester.type-tester--variable .header .input-group.columns-input-group {
    display: var(--display);
  }
}

.type-tester.type-tester--variable .input-group.style-input-group .tool-panel {
  display: none;
}

.carousel__description.good__details {
  max-width: calc(var(--carousel-frame-width));
}

@media (min-width: 900px) {
  .carousel__description.good__details .good__info {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 32px 64px;
    align-items: start;
  }
}

.carousel__description.good__details .good__properties {
  margin-bottom: 1em;
}

.carousel__description.good__details p.good__property {
  margin: 0;
}

@media screen and (min-width: 600px) {
  .carousel__description.good__details p.good__property {
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 8px;
  }
}

.carousel__description.good__details .good__price-box {
  padding-top: 24px;
  border-top: dotted 1px black;
  margin-top: 24px;
  padding-bottom: 24px;
  border-bottom: dotted 1px black;
  margin-bottom: 24px;
  text-align: center;
  padding: 16px;
}

.carousel__description.good__details .good__price-row {
  padding-top: 24px;
  border-top: dotted 1px black;
  margin-top: 24px;
  padding-bottom: 24px;
  border-bottom: dotted 1px black;
  margin-bottom: 24px;
  text-align: center;
  padding: 16px;
}

.carousel__description.good__details .good__price-row:not(:last-child) {
  margin-bottom: 0px;
}

.carousel__description.good__details .good__price-row:not(:first-child) {
  margin-top: 0px;
  border-top: none 0px;
}

.carousel__description.good__details .good__price-row--shipping {
  font-size: 14px;
}

.carousel__description.good__details .good__price-row--shipping > div:not(:last-child) {
  margin-bottom: 1em;
}

.carousel__description.good__details .button_to > .button {
  width: 100%;
  background-color: rgba(255, 65, 17, 0.9);
  color: white;
  border: solid 1px rgba(255, 65, 17, 0.9);
  text-transform: uppercase;
  font-size: 14px;
  padding: 15px;
  font-weight: 500;
  letter-spacing: 0.02em;
  transition: background-color 0.1s, color 0.1s;
}

.carousel__description.good__details .button_to > .button:hover {
  background-color: white;
  color: rgba(255, 65, 17, 0.9);
}

.carousel__description.good__details .button_to > .button:focus, .carousel__description.good__details .button_to > .button:focus-visible, .carousel__description.good__details .button_to > .button:active {
  outline: none;
  border: none;
  border: solid 1px rgba(255, 65, 17, 0.9);
}

.carousel__description.good__details .button_to > .button.button--toggled {
  background-color: white;
  color: rgba(255, 65, 17, 0.9);
}

small.error {
  color: red;
}

.alert-box {
  margin-bottom: 10px;
  color: red;
}

.alert-box.warning {
  color: orange;
}

a.captcha-reload-button {
  margin-left: 10px;
  text-decoration: none;
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  background-image: url(/packs/media/store/images/icon-buttons/refresh-77fb13e8c3faf12cb41e47a0181b8916.svg);
  background-size: contain;
  background-position: center bottom;
  background-repeat: no-repeat;
  position: relative;
  top: 0.2em;
}

a.captcha-reload-button:hover {
  text-decoration: none;
  border-bottom: none 0;
}

.font_families.index .tile-group {
  position: relative;
}

.font_families.index .tile-group::before {
  content: "";
  display: block;
  height: 2px;
  background-color: black;
  z-index: 2550;
  position: absolute;
  inset: 0 0 auto 0;
}

.font_families.index .overview-category--inverted-colors .tile-group::before {
  background-color: white;
}

.font_families.index .tile-row .tile {
  display: grid;
  grid-template-columns: auto 1px;
  grid-template-rows: auto 1px;
}

.font_families.index .tile-row .tile__row-separator .line {
  height: 1px;
  width: 100%;
}

.font_families.index .tile-row .tile__row-separator.adjacent-tile-hovered {
  background: black;
}

.font_families.index .tile-row:last-child .tile:last-child .tile__row-separator {
  display: none;
}

.font_families.index .tile-row .tile__separator-crosshair {
  display: none;
}

@media (min-width: 420px) {
  .font_families.index .tile-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .font_families.index .tile-row:last-child .tile {
    grid-template-rows: auto;
  }
  .font_families.index .tile-row:last-child .tile .tile__row-separator {
    display: none;
  }
  .font_families.index .tile-row:not(:last-child) .tile:first-child .tile__row-separator {
    padding-right: 10px;
  }
  .font_families.index .tile-row:not(:last-child) .tile:last-child .tile__row-separator {
    padding-left: 10px;
  }
  .font_families.index .tile-row:not(:last-child) .tile .tile__separator-crosshair {
    display: block;
  }
  .font_families.index .tile-row:not(:last-child) .tile .tile__separator-crosshair.adjacent-tile-hovered {
    background: black;
  }
  .font_families.index .tile-row .tile:not(:last-child) .tile__column-separator {
    padding: 10px 0;
  }
  .font_families.index .tile-row .tile:not(:last-child) .tile__column-separator .line {
    width: 1px;
    height: 100%;
  }
  .font_families.index .tile-row .tile:not(:last-child) .tile__column-separator.adjacent-tile-hovered {
    background: black;
  }
}

.font_families.index .tile__row-separator .line,
.font_families.index .tile__column-separator .line {
  background: rgba(0, 0, 0, 0.17);
}

.font_families.index .overview-category--inverted-colors .tile__row-separator .line,
.font_families.index .overview-category--inverted-colors .tile__column-separator .line {
  background: rgba(255, 255, 255, 0.17);
}

.font_families.index {
  --tile-1st-column-padding-left: 14px;
  --tile-1st-column-padding-right: 0px;
  --tile-2nd-column-padding-left: 30px;
  --tile-2nd-column-padding-right: 0;
  --tile-sample-shift: -4px;
  --tile-sample-vertical-shift: 2px;
}

.font_families.index .tile {
  --tile-padding-left: var(--tile-1st-column-padding-left);
}

.font_families.index .tile .tile__contents {
  padding-right: var(--tile-2st-column-padding-right);
}

.font_families.index .tile-row .tile {
  --tile-padding-left: var(--tile-1st-column-padding-left);
}

.font_families.index .tile-row .tile .tile__contents {
  padding-right: var(--tile-2st-column-padding-right);
}

.font_families.index .tile-row .tile .tile__contents .tile__slides {
  overflow: hidden;
}

@media (min-width: 420px) {
  .font_families.index .tile-row .tile:first-child {
    --tile-padding-left: var(--tile-1st-column-padding-left);
  }
  .font_families.index .tile-row .tile:first-child .tile__contents {
    padding-right: var(--tile-1st-column-padding-right);
  }
  .font_families.index .tile-row .tile:last-child {
    --tile-padding-left: var(--tile-2nd-column-padding-left);
  }
  .font_families.index .tile-row .tile:last-child .tile__contents {
    padding-right: var(--tile-2nd-column-padding-right);
  }
}

.font_families.index .tile__slides {
  position: relative;
  top: 0px;
  height: 100%;
}

.font_families.index .tile__slides .font-style,
.font_families.index .tile__slides .font-style-hover {
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.font_families.index .tile__slides .font-style-hover {
  position: absolute;
  top: 0;
  visibility: hidden;
}

.font_families.index .tile__slides .font-style,
.font_families.index .tile__slides .font-style-hover {
  position: absolute;
  top: var(--tile-sample-vertical-shift);
  display: grid;
  align-content: center;
}

.font_families.index .tile__slides .rendered_text {
  vertical-align: middle;
  padding-top: 10px;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: calc(var(--tile-padding-left) + var(--tile-sample-shift));
}

.font_families.index .tile__slide {
  position: absolute;
}

.font_families.index .tile .tile__info {
  position: absolute;
  z-index: 2550;
  top: 8px;
  left: var(--tile-padding-left);
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.02em;
  line-height: 1.2;
  text-align: left;
  text-transform: capitalize;
  color: black;
}

@media (min-width: 70em) {
  .font_families.index .tile .tile__info .tile__info__primary {
    display: inline-block;
    min-width: 18em;
    margin-right: 2em;
  }
  .font_families.index .tile .tile__info .tile__info__secondary {
    display: inline-block;
  }
}

.font_families.index .tile:hover .tile__info {
  color: white;
}

.font_families.index .overview-category--inverted-colors .tile__info {
  color: white;
}

.font_families.index .overview-category--inverted-colors .tile:hover .tile__info {
  color: black;
}

.font_families.index .overview-category--beta-fonts .tile__info {
  font-weight: 500;
}

.font_families.index .tile__slide--cyclable,
.font_families.index .tile__slide--start {
  opacity: 0;
  visibility: hidden;
  transition: opacity 700ms ease-in, visibility 0s ease-in 700ms;
}

.font_families.index .tile__slide--cyclable.tile__slide--current,
.font_families.index .tile__slide--start.tile__slide--current {
  opacity: 1;
  visibility: visible;
  transition: opacity 700ms ease-in, visibility 0s ease-in 0s;
}

.font_families.index #page-main {
  padding-top: 185px;
  padding-top: calc(var(--header-height) + 25px);
  padding-bottom: var(--page-horizontal-margin);
  margin-bottom: 0;
}

@media (min-width: 1100px) {
  .font_families.index #page-main {
    padding-top: 90px;
  }
}

.font_families.index #page-main > * {
  width: 100%;
  margin-bottom: 0;
}

.font_families.index .tile-group__title {
  display: none;
}

.font_families.index .tile-group__main:before, .font_families.index .tile-group__main:after {
  content: "";
  display: table;
}

.font_families.index .tile-group__main:after {
  clear: both;
}

.font_families.index .tile {
  display: block;
  overflow: hidden;
  position: relative;
  height: 167px;
  text-align: left;
}

.font_families.index .tile:hover {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  background-color: black;
  color: white;
  border-bottom: 0;
}

.font_families.index .tile:hover .font-styles .rendered_text {
  color: white !important;
}

.font_families.index .tile:hover .font-style {
  visibility: hidden !important;
}

.font_families.index .tile:hover .font-style-hover {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  background-color: black;
  color: white;
  visibility: visible !important;
  z-index: 0;
}

.font_families.index .overview-category--inverted-colors {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  background-color: black;
  color: white;
}

.font_families.index .overview-category--inverted-colors .overview-category__title {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  background-color: black;
  color: white;
  color: white;
  background-color: transparent;
}

.font_families.index .overview-category--inverted-colors .rendered_text {
  color: white !important;
}

.font_families.index .overview-category--inverted-colors .tile:hover {
  background-color: white;
}

.font_families.index .overview-category--inverted-colors .tile:hover .tile__slide--hover {
  background-color: white;
}

.font_families.index .overview-category--inverted-colors .tile:hover .font-styles .rendered_text {
  color: black !important;
}

.font_families.index .overview-category--beta-fonts {
  margin-top: -7px;
}

.font_families.index .overview-category--beta-fonts > .overview-category__title {
  padding-left: 14px !important;
  padding-top: 1px !important;
  padding-bottom: 10px !important;
  margin-top: 6px !important;
  margin-bottom: 0 !important;
  font-family: "Times New Roman" !important;
  font-size: 26px !important;
  font-weight: 700 !important;
  line-height: 1;
  box-sizing: content-box;
  height: 26px;
}

.font_families.index .overview-category--beta-fonts > .overview-category__title > * {
  position: absolute;
  z-index: 2550;
  background-color: black;
}

.font_families.index .overview-category--beta-fonts .overview-category__title {
  font-weight: 500;
}

.font_families.index .dynamic-background {
  transition: background-color 1s;
}

#teaserBox {
  width: 100%;
  text-align: center;
  color: black;
  margin-bottom: 0;
  min-width: 0;
}

.teaserRow {
  width: 100%;
  clear: both;
  overflow: hidden;
}

.teaserRow .slideshow {
  position: relative;
}

.teaserRow .slideshow > * {
  height: 100%;
}

.teaserRow .slideshow > *:not(:first-child) {
  display: none;
}

.teaserRow.VarSample .FontWindow,
.teaserRow.VarSample #FontWindow {
  min-height: 167px;
  display: grid;
  place-content: center;
}

.font_families.show .licensing {
  position: relative;
  padding: 0px;
}

.font_families.show .licensing > h2 {
  margin: 12px !important;
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  text-transform: uppercase;
  text-align: center;
  text-align: left;
}

.font_families.show .licensing label {
  font-family: "Beausite Classic Clear", Arial, "Helvetica Neue", Helvetica, sans-serif;
  letter-spacing: 0.02em;
  text-transform: uppercase;
}

.font_families.show .licensing select {
  background-color: white;
  border: none 0px;
  max-width: 100%;
  margin: 0;
  border-radius: 0;
  color: black;
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 12px;
  letter-spacing: 0.04em;
  outline: none;
}

.font_families.show .licensing .licensing-medium-row {
  border-top: solid 1px white;
  padding: 8px 12px;
}

@media (min-width: 640px) {
  .font_families.show .licensing .licensing-medium-row {
    display: grid;
    grid-template-columns: 18em auto;
    align-items: center;
    box-sizing: content-box;
    min-height: 64px;
  }
}

.font_families.show .licensing .licensing-medium-row.selected {
  background-color: rgba(0, 0, 0, 0.05);
}

@media (min-width: 640px) {
  .font_families.show .licensing .licensing-medium-row__head {
    display: flex;
    align-items: start;
  }
  .font_families.show .licensing .licensing-medium-row__head .licenseinfo {
    margin-top: 10px;
    margin-left: 24px;
  }
}

.font_families.show .licensing .licensing-medium-row__options {
  padding-left: 52px;
}

@media (min-width: 1024px) {
  .font_families.show .licensing .licensing-medium-row__options > * {
    display: inline-block;
  }
}

.font_families.show .licensing .licensing-option-group {
  margin-bottom: 6px;
}

.font_families.show .licensing .licensing-option-group label {
  font-size: 12px;
}

@media (min-width: 640px) {
  .font_families.show .licensing .contact-required {
    padding-top: 6px;
  }
}

.font_families.show .licensing .licenseinfo {
  position: relative;
  margin-bottom: 8px;
  height: 22px;
  width: 22px;
  cursor: pointer;
  display: none;
}

@media (min-width: 640px) {
  .font_families.show .licensing .licenseinfo {
    display: block;
  }
}

.font_families.show .licensing .licenseinfo:hover > .licenseinfo__text {
  display: block;
}

.font_families.show .licensing .licenseinfo__text {
  display: none;
  position: absolute;
  width: 300px;
  height: auto;
  padding: 12px 16px;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.6);
  background-color: rgb(255, 255, 100);
  z-index: 3000;
  white-space: normal;
  cursor: auto;
}

@media (min-width: 0) {
  .font_families.show .licensing .licenseinfo__text {
    right: 0;
    top: 30px;
  }
}

@media (min-width: 1000px) {
  .font_families.show .licensing .licenseinfo__text {
    left: 8px;
    top: 8px;
    width: 290px;
  }
}

.font_families.show .licensing .licenseinfo__text p {
  font-size: 12px;
  line-height: 145%;
  letter-spacing: 0.02em;
}

.font_families.show .licensing .error-messages {
  display: none;
  border-top: solid 1px white;
  padding: 12px;
  color: rgb(255, 65, 17);
  min-height: 43px;
}

.font_families.show #page-main .font-family-samples {
  width: var(--page-width);
}

.font_families.show #page-main .font-family-samples .buy-button {
  border: solid 1px black;
  color: black;
  background-color: white;
}

.font_families.show #page-main .font-family-samples .buy-button:hover {
  background: white;
  border: 1px solid rgba(255, 65, 17, 0.9);
  color: rgba(255, 65, 17, 0.9);
}

.font_families.show #page-main .purchase-section {
  max-width: var(--page-width);
  width: 100%;
  background-color: rgb(245, 245, 247);
}

.font_families.show #page-main .purchase .button {
  border-bottom: 0 none;
}

.font_families.show #page-main .purchase .button.disabled {
  cursor: not-allowed;
}

.font_families.show #page-main .font_style_sample {
  width: 100%;
}

.font_families.show #page-main .buyable-item {
  padding: 4px;
  display: grid;
  align-items: center;
}

@media (min-width: 1000px) {
  .font_families.show #page-main .buyable-item {
    grid-template-columns: 1fr auto;
    padding-right: 12px;
  }
}

.font_families.show #page-main .buyable-item .buyable-item__title {
  overflow: hidden;
  font-weight: 400;
}

.font_families.show #page-main .buyable-item .buyable-item__title .rendered_text {
  font-size: 44px;
  white-space: nowrap;
  line-height: 1;
  padding: 3px;
}

@media (min-width: 1000px) {
  .font_families.show #page-main .buyable-item .buyable-item__title .rendered_text {
    padding-top: 6px;
    padding-bottom: 6px;
    padding-left: 3px;
    margin-left: 3px;
    overflow: hidden;
  }
}

.font_families.show #page-main .buyable-item--header,
.font_families.show #page-main .buyable-item--subheader {
  color: white;
  background-color: black;
  margin-bottom: 1px;
  padding-left: 10px;
}

.font_families.show #page-main .buyable-item--header .buyable-item__title,
.font_families.show #page-main .buyable-item--subheader .buyable-item__title {
  font-family: "Beausite Classic", Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 6vw;
  line-height: 7.5vw;
  margin-bottom: 0;
  padding: 1px 0;
  text-align: left;
  text-transform: uppercase;
}

@media (min-width: 1000px) {
  .font_families.show #page-main .buyable-item--header .buyable-item__title,
  .font_families.show #page-main .buyable-item--subheader .buyable-item__title {
    font-size: 30px;
    line-height: 40px;
  }
}

.font_families.show #page-main .buyable-item--subheader .buyable-item__title {
  font-size: 6vw;
  line-height: 7.5vw;
}

@media (min-width: 1000px) {
  .font_families.show #page-main .buyable-item--subheader .buyable-item__title {
    font-size: 30px;
    line-height: 30px;
  }
}

.font_families.show #page-main .buyable-item--regular {
  border-bottom: solid 1px black;
}

.font_families.show #page-main .buyable-item--regular:hover {
  background-color: rgb(255, 200, 255);
}

.font_families.show #page-main .buyable-item--regular:last-child {
  border-bottom: 0 none;
}

.font_families.show #page-main .buyable-item--regular .sample {
  display: flex;
  align-items: center;
  height: 100%;
}

.font_families.show #page-main .buyable-item--regular.purchased {
  background-color: rgb(255, 65, 17);
  color: white;
}

.font_families.show #page-main .buyable-item--regular.purchased .buy-button {
  border-color: white;
}

.font_families.show #page-main .buyable-item__purchase {
  padding-left: 4px;
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
}

.font_families.show #page-main .buyable-item__purchase .infobits > * {
  margin-right: 12px;
}

.font_families.show #page-main .buyable-item__purchase span {
  line-height: 16px;
}

@media (min-width: 1000px) {
  .font_families.show #page-main .buyable-item__purchase {
    width: 100%;
  }
}

.font_families.show #purchase_fonts {
  position: absolute;
  top: -5px;
}

@media (min-width: 1000px) {
  .font_families.show #purchase_fonts {
    top: -140px;
  }
}

.font_families.show .bottomBox {
  max-width: var(--page-width);
}

.font_families.show .bottomBox .rendered_text {
  white-space: unset;
}

.font_families.show .checkout-button-container {
  margin: 24px auto 0;
  width: 100%;
}

@media (min-width: 700px) {
  .font_families.show .checkout-button-container {
    max-width: 489px;
  }
}

.font_families.font_info main section, .font_families.character_set main section, .font_families.features main section {
  min-height: auto;
  margin-top: 24px;
  margin-bottom: 0;
}

.font_families.font_info main section h1,
.font_families.font_info main section h2,
.font_families.font_info main section h3, .font_families.character_set main section h1,
.font_families.character_set main section h2,
.font_families.character_set main section h3, .font_families.features main section h1,
.font_families.features main section h2,
.font_families.features main section h3 {
  font-size: 14px;
  line-height: 24px;
}

.font_families.font_info main section .image, .font_families.character_set main section .image, .font_families.features main section .image {
  margin-left: auto;
  margin-right: auto;
  max-width: max(1200px, 80vw);
}

.font_families.font_info main section .image img,
.font_families.font_info main section .image video, .font_families.character_set main section .image img,
.font_families.character_set main section .image video, .font_families.features main section .image img,
.font_families.features main section .image video {
  display: block;
  width: 100%;
}

.font_families.font_info main section img, .font_families.character_set main section img, .font_families.features main section img {
  max-width: 100%;
  height: auto;
  display: block;
}

.font_families.font_info main section .image__caption, .font_families.character_set main section .image__caption, .font_families.features main section .image__caption {
  font-family: "LaplaceMono";
  font-size: 15px;
}

.font_families.font_info main section p.image__caption, .font_families.character_set main section p.image__caption, .font_families.features main section p.image__caption {
  margin: 0;
  font-size: 22px;
  line-height: 132%;
  font-family: "LaplaceMono";
  font-size: 15px;
}

.font_families.font_info main section blockquote, .font_families.character_set main section blockquote, .font_families.features main section blockquote {
  padding: clamp(5px, 4vw, 30px) clamp(5px, 4vw, 50px);
  font-family: "LaplaceMono";
  text-align: center;
  font-size: var(--font-size-36);
  line-height: 132%;
  margin-top: 20px;
  border-left: 2px solid black;
  border-right: 2px solid black;
}

body.home {
  margin: 0 !important;
}

body.home > main {
  width: 100vw;
  height: 100vh;
  max-width: inherit;
  min-height: inherit;
  margin: 0 !important;
  padding: 0;
  margin-top: 0px;
  overflow: hidden;
}

@media (min-width: 1000px) {
  body.home > main {
    height: 100%;
    margin-top: 0;
  }
}

body.home > main .flash-messages {
  position: absolute;
  top: 120px;
  width: 380px;
  left: 50%;
  margin-left: -190px;
  padding: 30px;
  z-index: 999;
  text-align: center;
}

body.home > footer {
  display: none !important;
}

body.home .slides {
  font-size: 18px;
  line-height: 24px;
  position: absolute;
  inset: 0;
  width: 100vw;
  height: 100vh;
  overflow: hidden;
}

body.home .slides > * {
  width: 100%;
  height: 100%;
}

body.home .slides .slide-bg {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
  min-width: 320px;
  width: 100%;
  height: auto;
}

body.home .slides .slide-img {
  position: absolute;
  left: 0;
  width: 100%;
  top: 131px;
  height: calc(
        100vh - 211px
      );
  display: flex;
  justify-content: center;
  align-items: center;
}

@media screen and (max-height: 1100px) {
  body.home .slides .slide-img {
    top: 200px;
    height: calc(100vh - 280px);
  }
}

body.home .slides a:hover {
  border: 0;
}

body.home .slides .slide-font-style, body.home .slides .slide-credits {
  position: absolute;
  padding-left: 5px;
  color: black;
  left: var(--logo-left);
}

body.home .slides .slide-font-style {
  font-size: 22px;
  font-weight: 500;
  top: 170px;
  top: var(--content-top);
}

@media (min-width: 1100px) {
  body.home .slides .slide-font-style {
    top: 96px;
  }
}

body.home .slides .slide-font-style a {
  padding-bottom: 1px;
}

body.home .slides .slide-credits {
  bottom: 30px;
}

.shopping_cart main,
.shopping_cart_order main {
  padding-top: 91px;
  padding-bottom: 150px;
}

.shopping_cart main h1,
.shopping_cart_order main h1 {
  margin-top: 20px;
  margin-bottom: 14px;
}

.shopping_cart main h2,
.shopping_cart_order main h2 {
  font-size: 22px;
  font-weight: 500;
}

#page-main .shopping-cart-page {
  width: 100%;
}

@media (min-width: 1060px) {
  #page-main .shopping-cart-page {
    width: auto;
    min-width: 1000px;
  }
}

#page-main .shopping-cart-page table.shopping-cart {
  width: 100%;
  color: #000;
  letter-spacing: 0.03em;
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page table.shopping-cart {
    padding-bottom: 12px;
  }
}

#page-main .shopping-cart-page table.shopping-cart thead th {
  padding: 10px 10px 8px 10px;
  text-align: left;
  border-right: 1px dotted black;
  color: black;
  line-height: 130%;
}

#page-main .shopping-cart-page table.shopping-cart thead th.last-column {
  border-right: none;
}

#page-main .shopping-cart-page table.shopping-cart tr {
  display: block;
  padding: 12px 10px;
  border-bottom: 3px solid white;
  position: relative;
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page table.shopping-cart tr {
    display: table-row;
    padding: 0;
  }
}

#page-main .shopping-cart-page table.shopping-cart td {
  display: block;
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page table.shopping-cart td {
    padding: 12px 10px 12px 10px;
    display: table-cell;
    border-right: 1px dotted black;
  }
}

#page-main .shopping-cart-page table.shopping-cart td.last-column {
  border-right: none;
}

#page-main .shopping-cart-page table.shopping-cart td,
#page-main .shopping-cart-page table.shopping-cart .licensing-option-group {
  margin-bottom: 10px;
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody a {
  vertical-align: top;
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(1) {
  width: calc(100% - 35px);
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody .cart-item__name {
  font-size: var(--h3-font-size);
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody .cart-item__name {
    font-size: inherit;
  }
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(5) {
  position: absolute;
  top: 10px;
  right: 10px;
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(5) {
    position: static;
    top: auto;
    right: auto;
  }
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody tr {
    height: 40px;
  }
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(1) {
    width: 33%;
  }
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(2) {
    width: 21%;
  }
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(3) {
    width: 27%;
  }
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(4) {
    width: 15%;
    text-align: right;
  }
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td:nth-of-type(5) {
    width: 4%;
    text-align: center;
  }
  #page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td.price {
    white-space: nowrap;
    text-align: right;
  }
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td .font-style-count {
  display: block;
  margin-top: 5px;
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody td.price {
  text-align: right;
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody tr:last-child {
  font-size: 150%;
}

#page-main .shopping-cart-page table.shopping-cart table.shopping-cart tbody tr:last-child td:nth-of-type(3) {
  text-align: right;
}

#page-main .shopping-cart-page h3 {
  margin-bottom: 8px;
}

#page-main .shopping-cart-page .article__entry-title {
  padding-top: 0;
}

#page-main .shopping-cart-page .licensing h1 {
  margin-bottom: 15px;
}

#page-main .shopping-cart-page .licensing label {
  display: block;
  text-transform: uppercase;
}

#page-main .shopping-cart-page .licensing select {
  min-width: 130px;
  height: 25px;
  border-radius: 0;
  border: 1px dotted black;
  padding: 0 6px;
  color: black;
  background-color: white;
  outline: medium none;
  -webkit-appearance: none;
}

#page-main .shopping-cart-page .licensing select[name=licensing_media] {
  text-transform: uppercase;
}

#page-main .shopping-cart-page .form-section {
  margin-bottom: 40px;
}

#page-main .shopping-cart-page .form-inputs {
  letter-spacing: 0.03em;
}

#page-main .shopping-cart-page .radio-group {
  margin-bottom: 10px;
}

#page-main .shopping-cart-page .shopping-cart input,
#page-main .shopping-cart-page .shopping-cart textarea,
#page-main .shopping-cart-page .shopping-cart select {
  padding: 0 10px;
}

#page-main .shopping-cart-page .shopping-cart input[type=text],
#page-main .shopping-cart-page .shopping-cart input[type=number] {
  border: 0;
  padding: 4px 10px;
  font: 11px Verdana, Arial, Sans;
  background: white;
  margin-bottom: 4px;
  width: auto !important;
}

#page-main .shopping-cart-page .shopping-cart textarea {
  height: 70px;
  padding-top: 8px;
}

#page-main .shopping-cart-page .shopping-cart label.control-label {
  min-width: 40%;
  vertical-align: top;
}

@media screen and (min-width: 700px) {
  #page-main .shopping-cart-page .shopping-cart label.control-label {
    min-width: 180px;
  }
}

#page-main .shopping-cart-page .order_different_address label {
  font-size: 14px;
  line-height: 24px;
  border: 1px dotted black;
  width: inherit;
  height: auto;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.03em;
  margin-bottom: 20px;
  vertical-align: center;
  padding: 16px 20px;
  cursor: pointer;
  font-weight: 400;
}

#page-main .shopping-cart-page .order_different_address label:before {
  content: none;
}

#page-main .shopping-cart-page .order_different_address label:hover {
  border: 1px solid black;
}

#page-main .shopping-cart-page .form-inputs .radio-with-input {
  display: grid;
  grid-template-columns: 1fr;
  grid-gap: 0px;
}

#page-main .shopping-cart-page .form-inputs .radio-with-input > *:nth-child(2) {
  margin-left: 52px;
}

#page-main .shopping-cart-page .form-inputs .radio-with-input .input {
  display: block;
}

@media (min-width: 1100px) {
  #page-main .shopping-cart-page .form-inputs .radio-with-input {
    grid-template-columns: 2fr 3fr;
    grid-gap: 10px;
  }
  #page-main .shopping-cart-page .form-inputs .radio-with-input > *:nth-child(2) {
    margin-left: 0px;
  }
}

.shopping_cart main select {
  padding-left: 6px;
}

.shopping_cart_order.waiting {
  cursor: progress;
}

.shopping_cart_order.confirm address {
  font-style: normal;
}

.shopping_cart_order.confirm .order-details-grid {
  display: grid;
  gap: 20px;
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-details-grid {
    min-width: 700px;
    grid-template-columns: 1fr 1fr;
  }
  .shopping_cart_order.confirm .order-details-grid .grid-item--full-width {
    grid-column: 1/-1;
  }
}

.shopping_cart_order.confirm .order-information {
  width: 100%;
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-information {
    width: auto;
  }
}

.shopping_cart_order.confirm .order-information table {
  display: block;
  width: 100%;
  background-color: rgb(195, 255, 212);
  color: #000;
  font-size: 14px;
  letter-spacing: 0.03em;
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-information table {
    display: table;
    padding-bottom: 12px;
  }
}

.shopping_cart_order.confirm .order-information table thead {
  display: none;
  background-color: rgb(50, 255, 150);
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-information table thead {
    display: table-row-group;
  }
}

.shopping_cart_order.confirm .order-information table thead th {
  padding: 10px 10px 8px 10px;
  text-align: left;
  color: black;
  font-size: 14px;
  line-height: 130%;
}

.shopping_cart_order.confirm .order-information table tbody {
  display: block;
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-information table tbody {
    display: table-row-group;
  }
}

.shopping_cart_order.confirm .order-information table tr {
  display: block;
  padding: 12px 10px;
  border-bottom: 3px solid white;
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-information table tr {
    display: table-row;
  }
}

.shopping_cart_order.confirm .order-information table td {
  display: block;
  line-height: 135%;
}

@media screen and (min-width: 700px) {
  .shopping_cart_order.confirm .order-information table td {
    display: table-cell;
    padding: 10px 10px 9px 10px;
    border-right: 1px dotted black;
  }
}

.shopping_cart_order.confirm .order-information table td.last-column {
  border-right: none;
  text-align: right;
}

.shopping_cart_order.confirm .order-information table tbody tr:last-child {
  font-size: 18px;
}

.shopping_cart_order.confirm .card td:nth-child(1) {
  font-weight: 700;
}

.shopping_cart_order.confirm .card > h2 {
  font-size: var(--font-size-32) !important;
}

.shopping_cart_order.confirm .card table {
  width: 100%;
  padding-bottom: 12px;
  font-size: 14px;
  letter-spacing: 0.03em;
  margin-bottom: 10px;
}

.shopping_cart_order.confirm .card table tr {
  border-bottom: 1px dotted black;
}

.shopping_cart_order.confirm .card table td {
  padding: 10px 0px 10px 0px;
  border-right: 0px dotted black;
}

.shopping_cart_order.confirm .card table td.last-column {
  border-right: none;
  text-align: left;
}

.shopping_cart_order.confirm .card table thead {
  background-color: rgb(255, 70, 160);
}

.shopping_cart_order.confirm .card table thead th {
  padding: 10px 10px 8px 10px;
  text-align: left;
  color: black;
  font-size: 14px;
  line-height: 130%;
}

.shopping_cart_order.confirm .links {
  margin-top: 1em;
}

.shopping_cart_order.confirm .payment-description {
  margin-bottom: 0.6em;
  max-width: 60em;
  margin-left: auto;
  margin-right: auto;
}

.shopping_cart_order.confirm #payment-form {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

.shopping_cart_order.confirm #payment-form.waiting {
  cursor: progress;
}

.shopping_cart_order.confirm #payment-form button:disabled {
  background: black !important;
  color: white !important;
}

.shopping_cart_order.confirm #payment-form button.waiting {
  cursor: progress;
}

.shopping_cart_order.confirm #card-errors {
  margin-top: 5px;
}

.shopping_cart_order.completed table {
  width: 100%;
  border-top: 1px solid rgb(220, 220, 220);
  margin: 8px 0;
}

.shopping_cart_order.completed table thead th {
  padding: 12px 0;
  font-size: 15px;
  text-align: left;
  border-bottom: 1px solid rgb(220, 220, 220);
}

.shopping_cart_order.completed table tbody tr {
  height: 40px;
}

.shopping_cart_order.completed table tbody td {
  padding: 5px 0;
}

.shopping_cart_order.completed .message {
  font-size: 21px;
  text-align: left;
  margin-top: 40px;
}

.shopping_cart_order.completed .message p {
  font-size: 30px;
  line-height: 125%;
  margin-bottom: 0.5em;
}

.static_pages main .static-bg {
  position: absolute;
  top: 0;
  left: 0;
  min-height: 100%;
  width: 100%;
  height: auto;
  background-size: cover;
  background-position: 50%;
}

.static_pages main .static-img {
  width: 100%;
  position: relative;
}

.trials.index > main .font-families {
  display: grid;
}

@media screen and (min-width: 600px) {
  .trials.index > main .font-families {
    grid-template-columns: 1fr 1fr;
  }
}

@media screen and (min-width: 600px) {
  .font-family-selection-section--two-columns {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}

.user_accounts > main {
  padding-top: 91px;
  padding-bottom: 150px;
}

.user_accounts > main #pass {
  color: #585858;
  float: right;
  font-weight: bold;
}

.user_accounts > main .form-inputs {
  margin-bottom: 20px;
}

.user_accounts > main input::placeholder {
  color: black;
  font-weight: 500;
}

.user_accounts > main textarea {
  height: 60px;
}

.user_accounts > main label.control-label {
  min-width: 180px;
  display: inline-block;
  font-weight: 500;
}

.user_accounts > main .input.user_password_confirmation, .user_accounts > main .input.user_website {
  margin-bottom: 40px;
}

.user_accounts > main .button {
  padding: 10px;
}

.user_accounts.show table {
  width: 100%;
}

.user_accounts.show table td {
  padding: 10px;
}

.user_accounts.show .license {
  font-size: 15px;
  margin-bottom: 15px;
}

.user_accounts.show .options {
  font-size: 12px;
}

.user_accounts.show .list {
  border-top: 1px solid rgb(220, 220, 220);
  font-size: 12px;
  padding: 5px 0;
}

.user_licenses > main {
  padding-top: 91px;
  padding-bottom: 150px;
}

.user_licenses.index table {
  width: 100%;
}

.user_licenses.index table tr {
  border-bottom: 3px solid white;
}

.user_licenses.index table thead {
  background-color: rgb(50, 255, 150);
}

.user_licenses.index table thead th {
  padding: 8px 12px;
  font-size: 15px;
  text-align: left;
}

.user_licenses.index table tbody {
  background-color: rgb(195, 255, 212);
}

@media screen and (min-width: 700px) {
  .user_licenses.index table tbody tr {
    height: 40px;
  }
}

.user_licenses.index table tbody td {
  padding: 8px 12px;
  vertical-align: top;
  font-size: 14px;
  line-height: 16px;
}

.user_licenses.index table tbody input {
  height: 30px;
  background-color: white;
}

@media screen and (min-width: 700px) {
  .user_licenses.index table tbody input {
    width: 250px;
  }
}

@media screen and (min-width: 700px) {
  .user_licenses.index table tbody td:nth-of-type(1) {
    width: 25%;
  }
  .user_licenses.index table tbody td:nth-of-type(2) {
    width: 25%;
  }
  .user_licenses.index table tbody td:nth-of-type(3) {
    width: 35%;
  }
  .user_licenses.index table tbody td:nth-of-type(4) {
    width: 10%;
  }
}

.user_licenses.index table .label--inline {
  margin-bottom: 5px;
}

.user_licenses.index input[type=submit] {
  font-size: 24px;
  width: 100%;
}

.user_orders > main {
  padding-top: 91px;
  padding-bottom: 150px;
}

.user_orders > main table {
  line-height: 20px;
}

.user_orders > main table li {
  list-style: none;
}

.user_orders .disabled {
  cursor: not-allowed;
}

.user_orders.index table {
  width: 100%;
}

.user_orders.index table tr {
  border-bottom: 3px solid white;
}

.user_orders.index table thead th {
  padding: 8px 12px;
  font-size: 15px;
  text-align: left;
}

@media screen and (min-width: 700px) {
  .user_orders.index table tbody tr {
    height: 40px;
  }
  .user_orders.index table tbody td {
    padding: 8px 12px;
  }
  .user_orders.index table tbody td:nth-of-type(1) {
    width: 18%;
  }
  .user_orders.index table tbody td:nth-of-type(2) {
    width: 39%;
  }
  .user_orders.index table tbody td:nth-of-type(3) {
    width: 15%;
  }
  .user_orders.index table tbody td:nth-of-type(4) {
    width: 22%;
  }
  .user_orders.index table tbody td:nth-of-type(4) ul li:not(:last-child) {
    margin-bottom: 8px;
  }
}

/*# sourceMappingURL=store-ce605e68.css.map*/