link {
  cursor: pointer;
}
.btn--bigest.btn--alt .icon {
  color: #fff;
  fill: #fff;
}

button,
hr,
input {
  overflow: visible;
}

img,
legend {
  max-width: 100%;
}

progress,
sub,
sup {
  vertical-align: baseline;
}

details,
hr,
main {
  display: block;
}

.clearfix:after,
.slick-track:after,
.text:after,
hr {
  clear: both;
}

fieldset,
hr,
legend,
ol,
ul {
  padding: 0;
}

.column-layout__col,
.site {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
}

.login-panel,
.main-content,
sub,
sup {
  position: relative;
}

.editor .icon,
.form__text-icon,
.icon,
.link-btn__icon {
  fill: #6;
}

.add-btn:after,
.add-btn:before,
.fit-block:after,
.font-info__item:after,
.font-list__item:after,
.loader-local:after,
.loader-local:before,
.loader:after,
.loader:before,
.remove-btn:after,
.remove-btn:before,
.select:after {
  content: "";
}

.grecaptcha-badge,
.is-editing .font-info,
.popup {
  visibility: hidden;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

.action-link,
.btn,
.font-block,
.header-block__link,
.icon {
  text-decoration: none;
}

b,
strong {
  font-weight: 800;
}

small {
  font-size: 80%;
}

sub,
sup {
  font-size: 75%;
  line-height: 0;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
  height: auto;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
select {
  text-transform: none;
}

[type="button"],
[type="reset"],
[type="submit"],
button {
  -webkit-appearance: button;
}

[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner,
button::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring,
button:-moz-focusring {
  outline: ButtonText dotted 1px;
}

legend {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  color: inherit;
  display: table;
  white-space: normal;
}

textarea {
  overflow: auto;
  resize: vertical;
}

[type="checkbox"],
[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

.field__input,
.select__element {
  -webkit-appearance: none;
  -moz-appearance: none;
  outline: 0;
}

summary {
  display: list-item;
}

[hidden],
template {
  display: none;
}

/*! HTML5 Boilerplate v6.1.0 | MIT License | https://html5boilerplate.com/  - modified by Studio X */

html {
  -webkit-text-size-adjust: 100%;
  color: #222;
  font-size: 14px;
  line-height: 1.2;
}

@media (max-width: 1024px) {
  html {
    font-size: 14px;
  }
}

@media (max-width: 480px) {
  html {
    font-size: 14px;
  }
}

::-moz-selection {
  background: rgba(0, 0, 0, 0.99);
  color: #fff;
  text-shadow: none;
}

::selection {
  background: var(--accent-color, #613afb);
  color: #fff;
  text-shadow: none;
}

main.services .main-content--light,
.section--light {
  background-color: #efeee5;
}

hr {
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
  margin: 2em 0;
}

.panel,
.site,
body,
html {
  height: auto;
}

audio,
canvas,
iframe,
img,
picture,
svg,
video {
  vertical-align: middle;
}

fieldset {
  border: 0;
  margin: 0;
}

address {
  font-style: normal;
}

ol,
ul {
  font-weight: 100;
  margin: 0;
  list-style: none;
}

.section--padded-40,
.section--padded-40-bottom {
  padding-bottom: 2.5rem;
}

button {
  cursor: pointer;
}

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

body,
html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-smoothing: antialiased;
}

html {
  overflow-x: hidden;
}

@font-face {
  font-family: Typedepot;
  src:
    url(../fonts/Typedepot_Mono-Regular.woff2) format("woff2"),
    url(../fonts/Typedepot_Mono-Regular.woff) format("woff"),
    url(../fonts/Typedepot_Mono-Regular.ttf) format("truetype");
  font-weight: 400;
  font-style: normal;
}

@font-face {
  font-family: Typedepot;
  src:
    url(../fonts/Typedepot_Mono-Bold.woff2) format("woff2"),
    url(../fonts/Typedepot_Mono-Bold.woff) format("woff"),
    url(../fonts/Typedepot_Mono-Bold.ttf) format("truetype");
  font-weight: 800;
  font-style: bold;
}

body {
  margin: 0;
  font-family: Typedepot, monospaced;
}

.wrapper {
  /* max-width: 1372px; */
  margin: 0 auto;
  /* width: 80%; */
  /* padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right); */
  padding-left: 5em;
  padding-right: 5em;
}

@media (max-width: 640px) {
  .wrapper {
    width: 100%;
    padding-left: 2em;
    padding-right: 2em;
    box-sizing: border-box;
  }
}

.wrapper__inner {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  max-width: 1035px;
  margin: 0 auto;
}

.site {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh;
}

.header-block--flex,
.main-content {
  display: -webkit-box;
  display: -ms-flexbox;
}

.main-header {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.main-content {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.main-content > :not(.wrapper) {
  width: 100%;
}

.main-footer {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.section--padded-40,
.section--padded-40-top {
  padding-top: 2.5rem;
}

.section--padded-80,
.section--padded-80-top {
  padding-top: 0;
}

.section--padded-80,
.section--padded-80-bottom {
  padding-bottom: 0;
}

.section--padded-120,
.section--padded-120-top {
  padding-top: 7.5rem;
}

.section--font-slider {
  padding-top: 50px;
  padding-left: 0;
  padding-right: 0;
}

.section--font-slider .wrapper {
  max-width: none;
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}

#content > .header-block {
  text-align: left;
  border-bottom: 1px solid #000;
  padding-bottom: 1rem;
  margin-bottom: 2rem;
  margin-left: auto;
  margin-right: auto;
}
.login-panel {
  max-width: 1200px;
  margin: 2.5rem auto 3rem;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2.5rem;
  align-items: start;
}
.login-panel__column {
  width: auto;
  padding: 0;
}
.login-panel__separator {
  display: none;
}
.login-panel .panel {
  background: transparent;
  border: 1px solid #000;
  padding: 2.5rem 2.5rem 1rem;
}
.login-panel .header-block {
  text-align: left;
  margin-bottom: 0;
}
.login-panel .header-block__title {
  font-size: 1.5rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.login-panel .header-block__subtitle {
  font-size: 0.95rem;
  color: rgba(0, 0, 0, 0.6);
}
.login-panel .field__input {
  border: 1px solid #000;
  border-radius: 0;
  background: transparent;
}
.login-panel .field__label {
  background: #fff;
}
.login-panel .btn-row--center {
  justify-content: flex-start;
}
.login-panel .form--narrow {
  width: 100%;
  max-width: none;
}
.login-panel .panel form {
  display: grid;
  grid-template-columns: 220px 1fr;
  column-gap: 2rem;
  row-gap: 1rem;
  align-items: start;
}
.login-panel .panel form > .header-block {
  grid-column: 1;
  grid-row: 1/-1;
}
.login-panel .panel form > .fieldset {
  grid-column: 2;
}
.login-panel .form__row--remember {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
}
.login-panel .form__row--remember .form__item {
  width: 100%;
}
.login-panel .form__row--login-actions {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1rem;
  width: 100%;
}
.login-panel .form__row--login-actions .form__item {
  flex: 0 1 auto;
}
.login-panel .form__row--login-actions .form__item--login-left {
  padding-left: 0;
}
.login-panel
  .form__row--login-actions
  .form__item--login-left
  .form__text-link {
  display: inline-block;
  white-space: nowrap;
  margin-left: 0;
  padding-left: 0;
  text-align: left;
}
.login-panel .form__row--login-actions .form__item--auto {
  margin-left: auto;
}
.login-panel .form__row--remember .form__item--forgotten .form__text-link {
  margin-left: 0;
  padding-left: 1.75rem;
  white-space: nowrap;
  display: inline-block;
}
.login-panel .panel form > .btn-row {
  grid-column: 2;
}
.login-panel .panel form > p {
  grid-column: 2;
}
.login-panel .form__row--login-actions {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 1rem;
  width: 100%;
}
.login-panel .form__row--login-actions .form__item {
  flex: 0 1 auto;
}
.login-panel .form__row--login-actions .form__item--auto {
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
}
.login-panel .form__row--login-actions .form__item--auto .field {
  display: flex;
  justify-content: flex-end;
}
.login-panel .form__row--login-actions .form__item--auto {
  margin-left: auto;
}
.login-panel .form__row--register-actions {
  grid-column: 2;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 1rem;
  width: 100%;
}
.login-panel .form__row--register-actions .form__item {
  flex: 0 1 auto;
}
.login-panel .form__row--register-actions .form__item--auto {
  flex: 0 0 auto;
  margin-left: auto;
  text-align: right;
}
.login-panel .form__row--register-actions .form__item--auto .field {
  display: flex;
  justify-content: flex-end;
}
.login-panel .form__row--register-actions .form__item--subscribe {
  align-self: flex-start;
  text-align: left;
  padding-left: 0;
  white-space: nowrap;
}
.login-panel .subscribe-short {
  display: none;
}
.login-panel .subscribe-full {
  display: inline;
}
.login-panel .btn {
  padding: 1em 1.5em;
  font-size: 0.95rem;
  line-height: 1;
}
.login-panel .btn {
  transition:
    background-color 0.2s ease,
    color 0.2s ease;
}
.login-panel .btn:hover {
  transform: none;
  box-shadow: none;
}
.login-panel .btn__icon {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 0.5rem;
  background: url("../images/right_arrow_cursor.png") center/contain no-repeat;
}
.form__text-link {
  margin-left: -10px;
}
.form__text.center .form__text-link {
  margin-left: 0;
}
@media (max-width: 960px) {
  .login-panel {
    grid-template-columns: 1fr;
    gap: 1.75rem;
  }
}
@media (max-width: 960px) {
  .login-panel .panel form {
    grid-template-columns: 1fr;
  }
  .login-panel .panel form > .header-block {
    grid-column: 1;
    grid-row: auto;
  }
}
.login-panel .repeat-short {
  display: none;
}
.login-panel .repeat-full {
  display: inline;
}
@media (max-width: 1085px) {
  .login-panel .subscribe-full {
    display: none;
  }
  .login-panel .subscribe-short {
    display: inline;
  }
}
@media (max-width: 718px) {
  .login-panel .subscribe-full {
    display: inline;
  }
  .login-panel .subscribe-short {
    display: none;
  }
}
@media (max-width: 725px) {
  .login-panel .repeat-full {
    display: none;
  }
  .login-panel .repeat-short {
    display: inline;
  }
}
@media (max-width: 554px) {
  .login-panel .subscribe-full {
    display: none;
  }
  .login-panel .subscribe-short {
    display: inline;
  }
}

main.project .section--padded-120,
.section--padded-120-bottom {
  padding-bottom: 3rem;
}

main.services .section__title {
  font-size: 2.75rem;
  font-weight: 400;
  color: bblack;
  text-transform: uppercase;
  margin: 0 0 0;
  text-align: left;
}

@media main. project (max-width: 1024px) {
  .section--padded-40,
  .section--padded-40-top {
    padding-top: 2rem;
  }
  .section--padded-40,
  .section--padded-40-bottom {
    padding-bottom: 2rem;
  }
  .section--padded-80,
  .section--padded-80-top {
    padding-top: 4rem;
  }
  .section--padded-80,
  .section--padded-80-bottom {
    padding-bottom: 2rem;
  }
  .section--padded-120 {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
  .section--padded-120-top {
    padding-top: 6rem;
  }
  .section--padded-120-bottom {
    padding-bottom: 5rem;
  }
  .section__title {
    font-size: 2.25rem;
    margin: 0 0 2.75rem;
  }
}

@media (max-width: 640px) {
  .section--padded-80,
  .section--padded-80-top {
    padding-top: 0;
  }
  .section--padded-80,
  .section--padded-80-bottom {
    padding-bottom: 3rem;
  }
  .section__title {
    font-size: 1.75rem;
    margin: 0 0 1.75rem;
  }
  .section--padded-120,
  .section--padded-120-top {
    padding-top: 4.5rem;
  }
  .section--padded-120,
  .section--padded-120-bottom {
    padding-bottom: 4.5rem;
  }
}

.header-block {
  width: 100%;
  text-align: center;
  margin-bottom: 1.75em;
}

main.project .header-block--big {
  font-size: calc((9px + (40 - 14) * ((100vw - 320px) / (1920 - 320))) * 0.875);
  margin-bottom: 1.5em;
}

@media (min-width: 1920px) {
  .header-block--big {
    font-size: calc(40px * 0.875);
  }
}

@media (max-width: 1024px) {
  .header-block--big {
    margin-bottom: 1.75em;
  }
}

.header-block--smaller-space-bottom {
  margin-bottom: 0.5em;
}

.header-block--medium-space-bottom {
  margin-bottom: 1.25em;
}

.header-block--spaced {
  margin-bottom: 2.625em;
}

.header-block--spaced-top {
  margin-top: 2em;
}

.header-block--no-space-bottom {
  margin-bottom: 0;
}

.header-block--flex {
  display: flex;
  margin-top: 2em;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.column-layout,
.column-layout__col {
  display: -webkit-box;
  display: -ms-flexbox;
}

.header-block__title {
  font-size: clamp(2rem, 2.5vw, 1rem);
  font-weight: 700;
  color: #000;
  margin: -2px 0 0.375em;
}

.header-block__title--smaller {
  font-size: 1.5em;
}

.header-block__title--white {
  color: #fff;
}

.header-block__subtitle {
  font-size: 1.125em;
  font-weight: 300;
  color: rgba(0, 0, 0, 0.54);
}

.header-block--border {
  border-bottom: 1px solid rgba(3, 3, 3, 0.12);
  margin-bottom: 0;
  padding-bottom: 0.5em;
}

.header-block__link {
  color: inherit;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.font-list__item,
.remove-btn {
  -webkit-transition: background-color 0.3s ease;
}

.non-touch .header-block__link:hover {
  color: var(--accent-color, #613afb);
}

.non-touch .header-block__title--white .header-block__link:hover {
  color: rgba(255, 255, 255, 0.82);
}

.page-title {
  margin: 0 0 0;
  font-size: 3.625em;
  font-weight: 700;
  color: #000;
  text-align: left;
}

.page-title--no-spacing {
  margin-bottom: 0;
}

.column-layout {
  display: flex;
  margin-left: 5em;
  margin-right: 5em;
}

/* Header: light background + black iconography */
.main-header {
  background-color: #ffffff;
  border-bottom: 2px solid #000;
}

.main-header .main-nav__link,
.main-header .main-nav__list-item--profile,
.main-header .main-nav__link .icon,
.main-header .main-nav__submenu-link {
  color: #000;
  fill: #000;
}

.main-header .main-nav__link:before {
  background-color: #000;
}

.main-header .site-logo__link img {
  filter: brightness(0) saturate(100%);
}

.main-header .main-nav__mobile-menu-btn:before {
  border-top-color: #000;
  border-bottom-color: #000;
}

.main-header .main-nav__mobile-menu-btn:after {
  background-color: #000;
}

.column-layout--no-spacing {
  margin: 0;
}

.column-layout__col {
  justify-content: flex-start;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  width: 100%;
  margin-left: 0;
  padding: 0;
}

.character-map,
.login-panel {
  display: -webkit-box;
  display: -ms-flexbox;
}

.column-layout--no-spacing .column-layout__col {
  padding: 0;
}

.column-layout__col--sidebar {
  width: 37.33%;
  max-width: 27.375rem;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: 0;
  margin-right: 0;
}

.column-layout--no-spacing .column-layout__col--sidebar {
  border-right: 0 solid rgba(3, 3, 3, 0.05);
}

.column-layout--cart .column-layout__col--sidebar {
  width: 60%;
  max-width: none;
  margin-right: 40px;
}

.column-layout--orders .column-layout__col--sidebar {
  max-width: 20.25rem;
  margin-right: 30px;
}

.column-layout--news .column-layout__col--sidebar {
  width: 290px;
  max-width: 290px;
  padding-right: 1.5rem;
  margin-right: 1.5rem;
  border-right: 2px solid #000;
  text-align: right;
  flex-shrink: 0;
}

.column-layout--font-desc .column-layout__col--sidebar {
  position: -webkit-sticky;
  position: sticky;
  top: 100px;
  align-self: flex-start;
}

@media (max-width: 1200px) {
  .column-layout__col--sidebar {
    width: 40%;
  }
}

@media (max-width: 1024px) {
  .column-layout--cart {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .column-layout__col--sidebar {
    width: auto;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
  .column-layout--cart .column-layout__col--sidebar {
    padding-right: 1rem;
  }
  .column-layout--font-desc {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .column-layout--font-desc .column-layout__col--sidebar {
    position: static;
    align-self: auto;
    width: 100%;
    max-width: none;
    padding-top: 2rem;
  }
}

@media (max-width: 768px) {
  .column-layout {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .column-layout__col--sidebar {
    width: 100%;
    max-width: none;
    -ms-flex-negative: 1;
    flex-shrink: 1;
  }
  .column-layout--orders .column-layout__col--sidebar {
    max-width: none;
    margin-right: 0;
  }
  .column-layout--news .column-layout__col--sidebar {
    width: 100%;
    max-width: none;
    padding-right: 0;
    margin-right: 0;
    border-right: none;
  }
}

@media (max-width: 640px) {
  .column-layout {
    margin-left: 2em;
    margin-right: 2em;
  }
}

.panel {
  background-color: #fff;
  padding: 1.5rem 2.5rem 1.5em 2.125rem;
  width: 100%;
  font-size: 1em;
}

.panel--small-padding {
  padding: 2rem;
}

@media (max-width: 1024px) {
  .panel {
    padding: 2rem 2.75rem;
  }
}

@media (max-width: 640px) {
  .panel {
    padding: 2rem;
    margin-bottom: 0;
  }
}

.panel--light {
  background-color: #f7f7f7;
}

.panel--height-auto {
  height: auto;
  align-self: flex-start;
}

.login-panel {
  display: flex;
  max-width: 69rem;
  margin: 0 auto 1.25rem;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.login-panel__separator {
  position: absolute;
  font-size: 1.0625rem;
  color: rgba(0, 0, 0, 0.32);
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  display: none;
  transform: translate(-50%, -50%);
}

@media (max-width: 768px) {
  .login-panel__separator {
    position: static;
    margin: 0 auto;
    -webkit-transform: none;
    transform: none;
  }
}

.login-panel__column {
  width: 50%;
  padding: 0 1.75rem;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  height: auto;
}

@media (max-width: 1024px) {
  .login-panel {
    margin: 0 -1.25rem 1.25rem;
  }
  .login-panel__column {
    padding: 0 1.25rem;
  }
}

@media (max-width: 768px) {
  .login-panel {
    margin: -1.25rem 0 1.25rem;
  }
  .login-panel__column {
    width: 100%;
    padding: 1.25rem 0;
  }
}

.scrollable-content {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.design-example {
  width: 100%;
  position: relative;
  margin: 0;
}

.design-example__title {
  position: absolute;
  top: 4rem;
  left: 4rem;
  font-size: 2.25rem;
  font-weight: 700;
  color: #fff;
}

@media (max-width: 1200px) {
  .design-example__title {
    top: 3rem;
    left: 3rem;
  }
}

@media (max-width: 1024px) {
  .design-example__title {
    top: 2rem;
    left: 2rem;
    font-size: 1.75rem;
  }
}

@media (max-width: 640px) {
  .design-example__title {
    top: 1.25rem;
    left: 1.25rem;
    font-size: 1.5rem;
  }
}

.design-example__image,
.design-example__image img {
  display: block;
  width: 100%;
  height: auto;
}

.loader {
  background-color: rgba(0, 0, 0, 0.64);
  position: fixed;
  z-index: 9999;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}

.loader:after,
.loader:before {
  width: 4rem;
  height: 4rem;
  -webkit-animation: loading-rotate 2s infinite;
  animation: loading-rotate 2s infinite;
  border: 0.25rem solid transparent;
  border-top-color: #fff;
  border-left-color: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  margin-top: -2rem;
  margin-left: -2rem;
}

.loader:after {
  -webkit-animation-duration: 1.2s;
  animation-duration: 1.2s;
  opacity: 0.64;
}

@-webkit-keyframes loading {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

@keyframes loading {
  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

.loader-local {
  display: inline-block;
  vertical-align: bottom;
  width: 2rem;
  height: 2rem;
  position: relative;
  margin: 0 auto;
  -webkit-animation: loading-rotate 1.2s infinite;
  animation: loading-rotate 1.2s infinite;
}

.is-loading .loader-local {
  position: absolute;
  z-index: 10;
  top: 50%;
  left: 50%;
  margin-top: -1rem;
  margin-left: -1rem;
}

.loader-local:after,
.loader-local:before {
  width: 2rem;
  height: 2rem;
  -webkit-animation: loading-rotate 2s infinite;
  animation: loading-rotate 2s infinite;
  border: 0.25rem solid transparent;
  border-top-color: var(--accent-color, #613afb);
  border-left-color: var(--accent-color, #613afb);
  border-radius: 50%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-animation-duration: 0.8s;
  animation-duration: 0.8s;
}

.loader-local:after {
  -webkit-animation-duration: 1.6s;
  animation-duration: 1.6s;
}

@-webkit-keyframes loading-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes loading-rotate {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.character-map {
  word-break: break-all;
  word-wrap: break-word;
  font-size: 5em;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: end;
}

.character-map li,
.font-info {
  display: -webkit-box;
  display: -ms-flexbox;
}

.character-map li {
  display: flex;
  width: 1.575em;
  height: 1.575em;
  flex: 1 1 auto;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: flex-end;
  text-align: center;
  background: #efefef;
  padding: 0 8px 8px 8px;
  margin: 5px;
}

.font-list__item--edit:after,
.font-list__item:only-of-type .editor__btn--remove {
  display: none;
}

.font-list--spaced-bottom {
  margin-bottom: 3.75em;
}

.font-list__item {
  min-height: calc(
    (150px + (360 - 150) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  position: relative;
  overflow: hidden;
  background-color: #efeee5;
  transition: background-color 0.3s ease;
}

.font-list__item:hover {
  background-color: #f1f1f1;
}

.font-list__item:after {
  position: absolute;
  bottom: 0;
  border-bottom: 2px solid #eee;
  max-width: 1372px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  margin: 0 auto;
  width: 80%;
}

@media (max-width: 640px) {
  .font-list__item:after {
    width: 90%;
  }
}

.font-list__item:last-child:after {
  border-bottom-width: 0;
}

.font-list--last-child-border .font-list__item:last-child:after {
  border-bottom-width: 2px;
}

.font-list__item.is-editing {
  background: #f1f1f1;
}

.font-list__item.is-editing--contrast {
  background-color: #030303;
  color: #fff;
}

.font-list__item--edit {
  cursor: pointer;
  overflow: visible;
  padding-top: calc(
    (20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .font-list__item {
    min-height: calc(360px * 0.875);
  }
  .font-list__item--edit {
    padding-top: calc(50px * 0.875);
  }
}

.non-touch .font-list__item--edit:hover .font-info__item {
  opacity: 0;
}

.non-touch .font-list__item--edit:hover .font-info__item--edit {
  opacity: 1;
}

.font-info {
  position: relative;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: currentColor;
  font-family: Typedepot;
  font-size: 1rem;
  width: 100%;
  box-sizing: border-box;
  margin: 0;
}

@media (max-width: 768px) {
  .font-info {
    font-size: 0.875rem;
  }
}

@media (max-width: 480px) {
  .font-info {
    font-size: 0.75rem;
  }
}

.font-info--white {
  color: #fff;
}

.font-info__item {
  font-size: 1.25em;
  line-height: 1.2;
  color: inherit;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-transform: uppercase;
  -webkit-transition: opacity 0.15s ease;
  transition: opacity 0.15s ease;
  padding: 0.25em 0;
}

.font-info__item:after {
  width: 3px;
  height: 3px;
  background-color: currentColor;
  border-radius: 50%;
  margin-left: 0.5em;
  margin-right: 0.5em;
  margin-top: 0.2em;
}

.font-info__item:last-child:after,
.font-list__item--edit .font-info__item:after {
  display: none;
}

.font-info__item--edit {
  position: absolute;
  opacity: 0;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  left: 50%;
  top: 0;
}

.fit-block,
.font-block {
  overflow: hidden;
  position: relative;
}

.font-info__title {
  display: block;
  color: inherit;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  font-weight: 700;
}

.font-info__title--alt {
  font-weight: 500;
  text-transform: none;
  font-size: 1.2em;
  margin: -0.166666666666667em 0 0;
}

@media (max-width: 480px) {
  .font-info__title--alt {
    margin: 0;
  }
}

.font-block {
  /* max-width: 1372px; */
  margin: 0 auto;
  /* width: 80%; */
  /* padding-left: env(safe-area-inset-left);
  padding-right: env(safe-area-inset-right); */
  padding-left: 10em;
  padding-right: 10em;
  display: block;
  padding-bottom: calc(
    (20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  color: inherit;
}

.font-block__badge {
  position: absolute;
  top: 1.2rem;
  right: 8.5rem;
  z-index: 2;
  isolation: isolate;
  width: 5.25rem;
  height: 5.25rem;
  pointer-events: none;
}

/* Previous badge palette for quick revert:
   free weight: #ff6b2c / hover #ff5a16
   proto: #8b8698 / hover #7e798b
*/
.font-block__badge::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #171512;
  border-radius: 50%;
  transform: translate(0.22rem, 0.28rem);
  z-index: -1;
}

.font-block__badge-face {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0.75rem;
  border: 2px solid #171512;
  border-radius: 50%;
  background: #ef7a38;
  color: #171512;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.15;
  text-align: center;
  text-transform: uppercase;
  white-space: normal;
  transform: rotate(8deg) scale(1);
  transform-origin: center;
  transition: transform 900ms cubic-bezier(0.2, 0.8, 0.18, 1),
    background-color 220ms ease;
}

.font-block__badge-face::before {
  content: "";
  position: absolute;
  inset: 0.38rem;
  border: 1.5px solid rgba(23, 21, 18, 0.92);
  border-radius: 50%;
}

.font-block__badge--proto .font-block__badge-face {
  background: #d6d0c7;
}

.non-touch .font-block:hover .font-block__badge::before,
.font-block:focus-visible .font-block__badge::before {
  transform: translate(0.3rem, 0.36rem);
}

.non-touch .font-block:hover .font-block__badge .font-block__badge-face,
.font-block:focus-visible .font-block__badge .font-block__badge-face {
  transform: rotate(368deg) scale(1.06);
  background: #f08a4e;
  transition-duration: 1400ms, 180ms;
  transition-timing-function: linear, ease;
}

.non-touch .font-block:hover .font-block__badge--proto .font-block__badge-face,
.font-block:focus-visible .font-block__badge--proto .font-block__badge-face {
  background: #cfc8bd;
}

@media (max-width: 1024px) {
  .font-block__badge {
    display: none;
  }
}

.editor__controls,
.fit-block {
  display: -webkit-box;
  display: -ms-flexbox;
}

@media (max-width: 640px) {
  .font-block {
    width: 90%;
  }
}

.font-list__item--edit .font-block {
  padding-bottom: 0;
  padding-top: 0;
}

.font-list__item--edit.is-editing .font-block {
  cursor: default;
}

.font-block .non-touch .font-list__item--edit:hover .fit-block__text,
.non-touch .font-block:hover {
}

.non-touch .is-editing .font-block:hover .fit-block__text {
  color: currentColor;
}

.non-touch .font-list__item--edit .font-block:hover .font-info__title {
  color: #000;
}

.non-touch
  .font-list__item--edit.is-editing--contrast
  .font-block:hover
  .font-info__title {
  color: #fff;
}

.non-touch .font-block:hover .font-info__title {
  color: #222;
}

.fit-block {
  text-align: left;
  font-size: 0;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: calc(
    (120px + (290 - 120) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  opacity: 0;
  -webkit-transition:
    opacity 1.2s ease,
    -webkit-transform 1.2s ease;
  transition:
    opacity 1.2s ease,
    -webkit-transform 1.2s ease;
  transition:
    opacity 1.2s ease,
    transform 1.2s ease;
  transition:
    opacity 1.2s ease,
    transform 1.2s ease,
    -webkit-transform 1.2s ease;
  transition: opacity 0.2s linear;
}

.btn,
.fit-block__text,
.form__msg {
  text-align: center;
}

.fit-block:after {
  min-height: inherit;
  font-size: 0;
}

.fit-block.is-fit {
  opacity: 1;
}

@media (min-width: 1920px) {
  .font-block {
    padding-bottom: calc(50px * 0.875);
  }
  .font-list__item--edit .font-block {
    padding-top: 0;
    padding-bottom: 0;
  }
  .fit-block {
    min-height: calc(290px * 0.875);
  }
}

.fit-block--below {
  position: absolute;
  top: 0;
  left: 50%;
  max-width: 1372px;
  width: 100%;
  opacity: 0;
  -webkit-transition:
    opacity 1.2s ease,
    -webkit-transform 1.2s ease;
  transition:
    opacity 1.2s ease,
    -webkit-transform 1.2s ease;
  transition:
    opacity 1.2s ease,
    transform 1.2s ease;
  transition:
    opacity 1.2s ease,
    transform 1.2s ease,
    -webkit-transform 1.2s ease;
  -webkit-transform: translateY(0) translateX(-50%);
  transform: translateY(0) translateX(-50%);
}

.fit-block--below.is-fit {
  opacity: 0;
}

.touch .fit-block--below {
  display: none;
}

.non-touch .font-block:hover .fit-block--below {
  -webkit-animation: fadeInStayFadeOut 4s;
  animation: fadeInStayFadeOut 4s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@keyframes fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeInStayFadeOut {
  0%,
  100% {
    opacity: 0;
  }
  25%,
  75% {
    opacity: 1;
  }
}

@keyframes fadeInStayFadeOut {
  0%,
  100% {
    opacity: 0;
  }
  25%,
  75% {
    opacity: 1;
  }
}

.fit-block__text {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  line-height: 1.2;
  font-size: calc(
    (100px + (280 - 100) * ((100vw - 320px) / (1920 - 320))) * 0.95
  );
  min-width: 100%;
  padding: 0;
  outline: 0;
  color: currentColor;
  -webkit-transition: color 0.3s ease;
}

.fit-block__text:hover {
  color: var(--accent-color, #613afb);
}

@media (min-width: 1920px) {
  .fit-block__text {
    font-size: calc(280px * 0.95);
  }
}

.is-edited .fit-block__text,
.is-editing .fit-block__text {
  white-space: pre-wrap;
  word-break: break-word;
  display: block;
  width: 100%;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  cursor: text;
  padding: 1.5% 0;
  transition: all 0.3s ease;
}

.fit-block__text p {
  margin: 0;
}

.fit-block__text > * {
  font-size: inherit !important;
}

.fit-block__font-size {
  color: transparent;
  visibility: hidden;
  font-size: calc(
    (100px + (280 - 100) * ((100vw - 320px) / (1920 - 320))) * 0.95
  );
}

@media (min-width: 1920px) {
  .fit-block__font-size {
    font-size: calc(280px * 0.95);
  }
}

.editor {
  display: block;
  color: #000;
  position: absolute;
  width: 99%%;
  z-index: 1;
}

.is-editing--contrast .editor {
  color: #fff;
}

.editor__controls {
  margin: -0.9em auto -2.5em;
  -ms-flex-wrap: wrap;
  display: flex;
  flex-wrap: wrap;
  left: 0;
  right: 0;
  position: relative;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  align-content: center;
}

.editor__controls-group,
.editor__range {
  display: -webkit-box;
  display: -ms-flexbox;
}

@media (max-width: 1024px) {
  .editor__controls {
    font-size: 0.875em;
    position: inherit;
    justify-content: ce;
  }

  .topbar__btn {
    margin-top: 10px;
    padding: 0.2em 1.5em;
  }
}

.editor__controls-group {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  align-items: center;
  justify-content: center;
}

.editor__controls-group--features {
  width: fit-content;
  padding-left: 20px;
  padding-right: 20px;
  flex-wrap: nowrap;

  background: white;
  margin-top: 10px;
  justify-content: center;
  border-radius: 20px;
  position: inherit;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  align-items: center;
  flex-grow: 1;
  display: inline-flex;
  padding-top: 2px;
  align-items: baseline;
  flex-direction: row;
  justify-items: stretch;
  justify-content: center;
  align-content: stretch;
}

.editor__controls-item {
  padding: 0.2em 0.3em;
  align-items: center;
}

@media (max-width: 480px) {
  .editor__controls-group--range,
  .editor__controls-group--range .editor__controls-item {
    width: 100%;
  }
}

@media (max-width: 1200px) {
  .editor {
    position: relative;
  }
  .editor__controls-group--features,
  .editor__controls-item--hideable {
    display: none;
  }
}

.editor__btn {
  display: block;
  color: currentColor;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  background-color: transparent;
  border: none;
  outline: 0;
}

.non-touch .editor__btn:hover {
  color: var(--accent-color, #613afb);
}

.editor__range {
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 14em;
  margin-top: 0;
}

@media (max-width: 480px) {
  .editor__range {
    width: 100%;
  }
}

.editor__range-slider {
  width: 100%;
  padding: 0 1em;
  margin-bottom: 3px;
}

.editor__range .icon {
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
}

.editor__range-label {
  text-transform: uppercase;
  font-size: 1em;
  display: none;
}

.fe-list {
  width: 30%;
  display: contents;
  display: -ms-flexbox;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-line-pack: start;

  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.fe-list--wide {
  width: 40%;
}

.fe-list__item {
  width: 50%;
  padding: 0.5em;
  padding-left: 0.2em;
  padding-right: 0.2em;
}

.fe-list--wide .fe-list__item {
  width: 33.33%;
}

.icon {
  display: inline-block;
}

.icon--24x24 {
  width: 1.3rem;
  height: 1.3rem;
  padding-left: 3px;
  padding-top: 2px;
}

.icon--rotate-180 {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background-color: #000;
  text-transform: uppercase;
  font-size: 1.5em;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  padding: 10px 30px;
  border-radius: 24px;
  border-width: 0;
  -webkit-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
  outline: 0;
}

.btn--alt {
  font-weight: 400;
  text-transform: none;
}

.ff-list__tag,
.footer-nav__title,
.form-group__field-btn,
.highlight-block__btn,
.highlight-block__title,
.order-header__status,
.topbar__btn {
  text-transform: uppercase;
}

.btn--bigger {
  padding: 0.825em 1.5em;
}

.btn--big {
  padding: 0.5em 1.125em;
  font-size: 1.75em;
}

.btn--bigest {
  border-radius: 8px;
  padding: 0.625em 1em;
  font-size: calc(
    (18px + (42 - 18) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .btn--bigest {
    font-size: calc(42px * 0.875);
  }
}

.btn--bigest .icon {
  width: 2rem;
  height: 2rem;
}

@media (max-width: 1024px) {
  .btn--bigest .icon {
    width: 1.5rem;
    height: 1.5rem;
  }
}

.btn--smaller {
  padding: 0.7em 1.2em;
  font-size: 1em;
}

.btn--min-width {
  min-width: 7.6em;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.btn--124 {
  max-width: 124px;
  margin: 0;
}

.btn--icon-right .icon {
  margin-left: 0.5em;
}

.btn--icon-left {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.btn--icon-left .icon {
  margin-right: 0.5em;
}

.non-touch .btn:not([disabled]):not(.btn--disabled):hover {
  background-color: var(--accent-color, #613afb);
}

.non-touch .btn:not([disabled]):not(.btn--disabled):active {
  background-color: #7858f9;
}

.btn--secondary {
  background-color: white;
  color: #000;
  border: 2px solid black;
}

.non-touch .btn--secondary:not([disabled]):not(.btn--disabled):hover {
  background-color: #4f30c5;
  color: #fff;
}

.non-touch .btn--secondary:not([disabled]):not(.btn--disabled):active {
  background-color: #141414;
}

.btn--download-order {
  background-color: #000;
  color: #fff;
  border: none;
}

.non-touch .btn--download-order:not([disabled]):not(.btn--disabled):hover {
  background-color: var(--accent-color, #613afb);
  color: #fff;
}

.non-touch .btn--download-order:not([disabled]):not(.btn--disabled):active {
  background-color: #4f30c5;
}

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

.btn--light {
  background-color: white;
  color: #000;
}

.non-touch .btn--light:not([disabled]):not(.btn--disabled):hover {
  background-color: rgba(0, 0, 0, 0.06);
}

.is-editing--contrast .btn--light,
.is-editing--contrast .btn--secondary {
  background-color: #fff;
  color: #000;
  opacity: 0.8;
}

.non-touch
  .is-editing--contrast
  .btn--light:not([disabled]):not(.btn--disabled):hover,
.non-touch
  .is-editing--contrast
  .btn--secondary:not([disabled]):not(.btn--disabled):hover {
  background-color: #f7f7f7;
  color: #000;
  opacity: 0.8;
}

.btn-row {
  width: calc(100% + 1em);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: -0.5em;
}

.btn-row .btn {
  margin: 1.5em;
}

.action-list--top-auto,
.btn-row--top-auto {
  margin-top: auto;
}

.btn-row--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.btn-row--right {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.btn-row--space-between {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  margin: 0;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.btn-row--space-between .btn {
  margin: 0;
}

@media (max-width: 640px) {
  .btn-row--space-between {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1em;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.btn-row--spaced-bottom {
  margin-bottom: 4em;
}

.action-list {
  font-size: 1rem;
}

.action-list__item {
  margin-bottom: 0.5em;
}

.action-list__item:last-child {
  margin-bottom: 0;
}

.action-link {
  display: inline-block;
  color: var(--accent-color, #613afb);
  font-weight: 300;
  font-size: 1.5em;
  background-color: transparent;
  border: none;
  padding: 0;
}

.action-link--bigger {
  font-size: 1.7em;
  font-weight: 700;
}

.action-link--accent {
  color: var(--accent-color, #613afb);
}

.non-touch .action-link:hover {
  text-decoration: underline;
}

.remove-btn {
  padding: 0;
  width: 2.5em;
  height: 2.5em;
  background-color: #f7f7f7;
  position: relative;
  color: transparent;
  border: 2px solid black;
  border-radius: 50%;
  transition: background-color 0.3s ease;
  outline: 0;
}

.remove-btn:after,
.remove-btn:before {
  width: 1.25em;
  height: 2px;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.remove-btn:before {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.non-touch .remove-btn:hover {
  background-color: var(--accent-color, #613afb);
}

.non-touch .remove-btn:hover:after,
.non-touch .remove-btn:hover:before {
  background-color: #fff;
}

.add-btn {
  display: block;
  width: 3.75em;
  height: 3.75em;
  border: 0;
  background-color: #fff;
  border: 2px solid black;
  outline: 0;
  position: relative;
  cursor: pointer;
  border-radius: 50%;
  margin-left: 1em;
  -webkit-transition:
    background-color 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
}

.add-btn--remove:before {
  display: none;
}

.form,
.form__row {
  display: -webkit-box;
  display: -ms-flexbox;
}

/* .add-btn.is-open {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
} */

/* .add-btn:after,
.add-btn:before {
    width: 2em;
    height: 2px;
    background-color: #000;
    -webkit-transition: background-color .3s ease;
    transition: background-color .3s ease;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.add-btn:before {
    -webkit-transform: translate(-50%, -50%) rotate(90deg);
    transform: translate(-50%, -50%) rotate(90deg)
} */

.non-touch .add-btn:hover {
  background-color: var(--accent-color, #613afb);
  border: 2px solid black;
}

.non-touch .add-btn:hover:after,
.non-touch .add-btn:hover:before {
  background-color: #fff;
}

.non-touch .add-btn:active {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

.form {
  margin: 0 auto;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  font-size: 1rem;
}

.form--scale {
  font-size: calc(
    (16px + (22.4 - 16) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .form--scale {
    font-size: 1.4rem;
  }
}

.form--narrow {
  max-width: 30rem;
  max-height: 40em;
}

.form--narrow-2 {
  max-width: 32rem;
}

.form--100 {
  width: 100%;
}

.form__text {
  margin: 0 0 0.25em;
  font-size: 0.9375rem;
  color: rgba(0, 0, 0, 0.54);
  font-weight: 300;
  line-height: 1.46;
}

.form__text-link {
  color: #df3726;
  text-decoration: none;
}

.non-touch .form__text-link:hover {
  text-decoration: underline;
}

.form__text--with-icon {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0.5em;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

@media (max-width: 480px) {
  .form__text--with-icon {
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
  }
}

.form__text-icon {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  margin-right: 0.5em;
}

.form__msg {
  font-size: 1.125em;
  margin: 0 0 0.5em;
  color: #000;
}

.form__msg--spaced-top,
.form__row--spaced-top {
  margin-top: 1.5em;
}

.form__msg--error {
  color: #b90d0d;
}

.form__msg--warning {
  color: #ec7a09;
}

.form__msg--success {
  color: #26c676;
}

.free-order-notice {
  background-color: #e8f5e9;
  border: 1px solid #26c676;
  border-radius: 4px;
  padding: 1em 1.25em;
  margin-top: 1.5em;
}

.free-order-notice__text {
  color: #1b5e20;
  font-size: 0.9375em;
  margin: 0;
  text-align: center;
}

.form__row {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.form__row .form__item {
  width: 12rem;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.form__row .form__item--auto {
  width: auto;
}

.form__row .form__item--half {
  max-width: 50%;
}

.form__item {
  padding: 0.5em 0.75em;
}

.form__item--alt {
  padding: 0.75em;
}

.field__input,
.field__label {
  padding: 0.722222222222222em 0.888888em;
  line-height: 1.333333333333333;
  font-family: Typedepot;
  font-size: 1em;
}

.form__item--btn-align {
  text-align: right;
}

.form__item--btn-align-center {
  text-align: center;
}

.form__item--btn-align-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

@media (max-width: 480px) {
  .form__row .form__item--half {
    max-width: none;
  }
  .form__item--btn-align {
    text-align: center;
  }
  .form__item--btn-align-2 {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.form__error {
  display: block;
  font-size: 1em;
  margin-top: 0.5em;
  color: #b90d0d;
}

.form__error-container {
  display: block;
  width: 100%;
}

.form__error-container--alt .form__error {
  color: currentColor;
}

.field__input,
.fieldset__title {
  display: block;
  color: #000;
  font-weight: 300;
}

.fieldset {
  margin-left: -0.75em;
  margin-right: -0.75em;
  margin-bottom: 0;
}

.fieldset--smaller-bottom {
  margin-bottom: 0.75em;
}

.fieldset--negative-bottom {
  margin-bottom: -1.5em;
}

.fieldset--no-margin-bottom {
  margin-bottom: 0;
}

.fieldset--spaced-top {
  margin-top: 1.75em;
}

.fieldset__title {
  font-size: 1.5em;
  font-weight: 700;
  margin: 0 0.75em 0.555556em;
}

.field {
  font-size: 1em;
  position: relative;
}

.field__input {
  position: relative;
  z-index: 1;
  width: 100%;
  font-size: 1em;
  border: 1px solid #aeaeae;
  -webkit-transition: border-color 0.3s ease;
  transition: border-color 0.3s ease;
  appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 0;
  background: #fff;
}

.field__input::-ms-clear {
  display: none;
}

.field__label,
.form-group {
  display: -webkit-box;
  display: -ms-flexbox;
}

.field__input:focus {
  border-color: #030303;
}

.field__input--error,
.field__input.error {
  border-color: #b90d0d;
}

.field__input--warning {
  border-color: #ec7a09;
}

.field__input--success {
  border-color: #26c676;
}

.field__input::-webkit-input-placeholder {
  color: transparent;
  font-weight: 300;
  opacity: 1;
  line-height: 1.333333333333333;
}

.field__input:focus::-webkit-input-placeholder {
  color: #858585;
}

.field__input:-webkit-autofill::-webkit-input-placeholder {
  opacity: 0;
}

.field__input:-webkit-autofill + .field__label,
.field__input:-webkit-autofill:focus + .field__label,
.field__input:-webkit-autofill:hover + .field__label {
  opacity: 0;
}

.field__input::-moz-placeholder {
  color: transparent;
  font-weight: 300;
  opacity: 1;
  line-height: 1.333333333333333;
}

.field__input:focus::-moz-placeholder {
  color: #858585;
}

.field__input:-ms-input-placeholder {
  color: transparent;
  font-weight: 300;
  opacity: 1;
  line-height: 1.333333333333333;
}

.field__input:focus:-ms-input-placeholder {
  color: #858585;
}

.field__input:-moz-placeholder {
  color: transparent;
  font-weight: 300;
  opacity: 1;
  line-height: 1.333333333333333;
}

.field__input:focus:-moz-placeholder {
  color: #858585;
}

@media (max-width: 768px) {
  .field__input {
    font-size: 16px;
  }
}

.field__input--textarea {
  height: auto;
  max-height: 20em;
  min-height: 2.777777777777778em;
}

.field__label {
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
  border: 1px solid transparent;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1em;
  font-weight: 500;
  color: #858585;
  opacity: 1;
}

.field__label-optional {
  font-size: 0.777777777777778em;
  color: rgba(0, 0, 0, 0.24);
}

@media (max-width: 1024px) {
  .field__label-optional {
    font-size: 0.625em;
  }
}

@media (max-width: 768px) {
  .field__label {
    font-size: 16px;
  }
}

.field__input.is-filled + .field__label,
.field__input:focus + .field__label {
  opacity: 0;
  z-index: 0;
}

.field__msg {
  margin: 0.5em 0 0;
}

.field__msg--error {
  color: #b90d0d;
}

.field__msg--warning {
  color: #ec7a09;
}

.field__msg--success {
  color: #26c676;
}

.check-radio {
  display: inline-block;
}

.check-radio__element {
  display: inline-block;
  padding-left: 1.75rem;
  position: relative;
  font-size: 1rem;
  line-height: 1.25rem;
  font-weight: 300;
  color: #000;
}

.is-editing--contrast .check-radio__element {
  color: #fff;
}

.check-radio__element a {
  color: inherit;
  display: inline;
}

.check-radio__element:after,
.check-radio__element:before {
  content: "";
  width: 1.25rem;
  height: 1.25rem;
  background-color: #fff;
  background-position: center center;
  border: 1px solid #aeaeae;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transition: all 0.35s ease;
  transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: 4px;
}

.check-radio__element:after {
  -webkit-transform: scale(0);
  transform: scale(0);
}

.check-radio__element--alt {
  font-size: 1.2em;
  text-transform: uppercase;
}

.check-radio__input--error + .check-radio__element {
  color: #b90d0d;
}

.check-radio__input--error + .check-radio__element:before {
  border-color: #b90d0d;
}

.check-radio__input {
  display: none;
}

.lt-ie9 .check-radio__input {
  display: inline-block;
  vertical-align: middle;
}

.lt-ie9 .check-radio__element:after,
.lt-ie9 .check-radio__element:before {
  display: none;
}

.check-radio__input:checked ~ .check-radio__element:after {
  background: #000;
  border-color: #000;
  -webkit-transform: scale(1);
  transform: scale(0.9);
}

.check-radio__input:disabled ~ .check-radio__element:after {
  background: #aeaeae;
}

.check-radio__input[type="radio"] ~ .check-radio__element:after,
.check-radio__input[type="radio"] ~ .check-radio__element:before {
  border-radius: 50%;
}

.check-radio__input[type="radio"] ~ .check-radio__element:after {
  width: 0.75rem;
  height: 0.75rem;
  border: 0;
  top: 0.25rem;
  left: 0.25rem;
}

.check-radio__input[type="checkbox"]:checked ~ .check-radio__element:after {
  background: url(../images/checkbox.svg) center center no-repeat #000;
}

.select--alt,
.tag {
  background-color: transparent;
}

.check-radio--square {
  margin: 0.5em 1em 0.5em 0;
}

.check-radio--square .check-radio__element {
  font-size: 1.875em;
  line-height: 1;
  padding-left: 1.25em;
  font-weight: 500;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.check-radio--square .check-radio__element:before {
  border: 4px solid #000;
  border-radius: 0;
  width: 1em;
  height: 1em;
}

.check-radio--square .check-radio__element:after {
  border-radius: 0;
  width: 1em;
  height: 1em;
}

.is-checked
  .check-radio--square
  .check-radio__input:checked
  ~ .check-radio__element {
  color: var(--accent-color, #613afb);
}

.select {
  position: relative;
  display: inline-block;
  max-width: 100%;
}

.select:after {
  position: absolute;
  top: 50%;
  right: 0.5em;
  width: 0;
  height: 0;
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  border: 0.375em solid transparent;
  border-top: 0.5em solid #000;
  border-bottom-width: 0;
}

.select--2:after {
  display: none;
}

.select--border {
  border: 2px solid #000;
}

.is-checked .select--border {
  border-color: #000;
}

.select--alt:after {
  border: 0;
  width: 0.625em;
  height: 0.625em;
  border-bottom: 1px solid #000;
  border-right: 1px solid #000;
  -webkit-transform: rotate(45deg) translate(-50%, -50%);
  transform: rotate(45deg) translate(-50%, -50%);
  right: 1em;
}

.select--alt2 {
  background-color: transparent;
  color: currentColor;
  min-width: auto;
}

.select--alt2:after {
  border: 0;
  width: 0.625em;
  height: 0.625em;
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
  -webkit-transform: rotate(45deg) translate(-50%, -50%);
  transform: rotate(45deg) translate(-50%, -50%);
  right: 1em;
}

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

.select__element {
  width: 100%;
  border: 0;
  padding: 0.35em 1.5em 0.35em 0.5em;
  background-color: transparent;
  font-size: 1.25em;
  color: rgba(0, 0, 0, 0.64);
  font-weight: 300;
  line-height: 1.3;
  appearance: none;
  border-radius: 0;
}

.editor__fw-static {
  padding-right: 0;
}

.select--alt .select__element {
  color: #df3726;
  padding-right: 2em;
}

.select--alt2 .select__element {
  color: currentColor;
  font-weight: 700;
  padding-right: 2em;
}

.select--alt2 .editor__fw-static {
  padding-right: 1em;
}

.select__element::-ms-expand {
  display: none;
}

.select__element:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #000;
}

.select__element option:not(:checked) {
  color: #000;
}

.subscribe-form {
  font-size: 1rem;
  max-width: 39rem;
  margin-left: auto;
  margin-bottom: 1rem;
}

@media (max-width: 1024px) {
  .subscribe-form {
    max-width: 30em;
  }
}

@media (max-width: 768px) {
  .subscribe-form {
    max-width: none;
  }
}

.subscribe-form__text {
  margin: 0 0 0.75em;
  color: rgba(255, 255, 255, 0.54);
  font-size: 1em;
  line-height: 1.375;
}

.subscribe-form__text:last-child {
  margin-bottom: 0;
}

.subscribe-form__text a {
  color: inherit;
}

.form-group {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 1em;
  font-size: 1rem;
  width: 100%;
}

.form-group__field,
.link-list {
  display: -webkit-box;
  display: -ms-flexbox;
}

.form-group--small-width {
  max-width: 27rem;
}

.form-group--smaller {
  font-size: 0.875rem;
}

.form-group--spaced-bottom {
  margin-bottom: 2.285714285714286em;
}

.form-group--spaced {
  margin: 0.5em;
}

.form-group__field {
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.form-group__field-input {
  width: 100%;
  font-family: Typedepot, monospace;
  font-size: 1.25em;
  font-weight: 300;
  height: 100%;
  background: #fff;
  border: 0;
  outline: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 0.375em 0 0 0.375em;
  padding: 0 1.2em;
}

.form-group__field-input::-webkit-input-placeholder {
  color: rgba(0, 0, 0, 0.38);
  font-size: 1em;
  font-weight: 300;
  line-height: 1.4;
}

.form-group__field-input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.38);
  font-size: 1em;
  font-weight: 300;
  line-height: 1.4;
  line-height: 2.75;
  opacity: 1;
}

.form-group__field-input:-ms-input-placeholder {
  color: rgba(0, 0, 0, 0.38);
  font-size: 1em;
  font-weight: 300;
  line-height: 1.4;
}

.form-group__field-input:-moz-placeholder {
  color: rgba(0, 0, 0, 0.38);
  font-size: 1em;
  font-weight: 300;
  line-height: 1.4;
  opacity: 1;
}

.form-group__field-input--border {
  border: 1px solid #aeaeae;
  border-right-width: 0;
  width: 10em;
}

.form-group__field-btn {
  background-color: var(--accent-color, #613afb);
  border: 0;
  height: 2.8em;
  color: #fff;
  border-top-right-radius: 0.375em;
  border-bottom-right-radius: 0.375em;
  font-size: 1.25em;
  font-weight: 700;
  -webkit-transition: background-color 0.15s ease;
  transition: background-color 0.15s ease;
  outline: 0;
  padding: 0 1.25em;
}

.hosted-field,
.hosted-fields--label {
  display: block;
  font-family: Typedepot;
  font-weight: 300;
}

.form-group__field-btn--alt {
  background-color: #030303;
}

.non-touch .form-group__field-btn:hover {
  background-color: #4f30c5;
}

.non-touch .form-group__field-btn:active {
  background-color: #d22f1f;
}

.non-touch .form-group__field-btn--alt:hover {
  background-color: #0d0d0d;
}

.non-touch .form-group__field-btn--alt:active {
  background-color: #000;
}

@media (max-width: 480px) {
  .form-group__field-input {
    height: 2.8em;
    border-radius: 0.375em 0.375em 0 0;
  }
  .form-group__field {
    width: 100%;
  }
  .form-group__field-input--border {
    border-bottom-width: 0;
    border-right-width: 1px;
  }
  .form-group__field-btn {
    width: 100%;
    border-top-right-radius: 0;
    border-bottom-left-radius: 0.375em;
  }
}

.hosted-fields--label {
  font-size: 1.125em;
  color: #000;
  margin-bottom: 1.555556em;
}

.hosted-field {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: 2.875em;
  width: 100%;
  padding: 0 1em;
  border: 1px solid #aeaeae;
  background: #fff;
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 0;
  font-size: 16px;
  line-height: 24px;
  -webkit-transition: border 0.3s;
  transition: border 0.3s;
}

.noUi-target,
.noUi-target *,
.slick-slider {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  -ms-user-select: none;
  -webkit-box-sizing: border-box;
}

.braintree-hosted-fields-focused {
  border: 1px solid #030303;
}

.braintree-hosted-fields-invalid {
  border: 1px solid #b90d0d;
}

.braintree-hosted-fields-valid {
  border: 1px solid #26c676;
}

.link-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  color: rgba(0, 0, 0, 0.54);
  text-decoration: none;
}

.link-btn--alt {
  text-decoration: underline;
}

.notification__text a,
.pagination__btn,
.pagination__link,
.tag {
  text-decoration: none;
}

.link-btn__icon {
  display: inline-block;
  margin-right: 0.75em;
}

.link-btn__text {
  display: inline-block;
  display: none;
  font-size: 1.5em;
}

.link-btn--alt .link-btn__text {
  font-size: 1em;
}

.link-btn__text + .link-btn__icon {
  margin-left: 0.75em;
  margin-right: 0;
}

.link-list {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: calc(
    (18px + (40 - 18) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  margin-bottom: 1.625em;
}

@media (min-width: 1920px) {
  .link-list {
    font-size: calc(40px * 0.875);
  }
}

.link-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.link-list__item:after {
  content: "|";
  margin: 0 0.4em;
  color: rgba(0, 0, 0, 0.24);
}

.main-nav__link:before,
.pagination__btn:after,
.popup__close-overlay,
.popup__close:after,
.popup__close:before,
.sitemap__list .sitemap__list .sitemap__list-item:after {
  content: "";
}

.link-list__link,
.tag {
  font-weight: 300;
  color: #000;
}

.link-list__item:last-child:after {
  display: none;
}

.link-list__link {
  display: inline-block;
  font-size: 1em;
}

.tags-group {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: calc(
    (10px + (16 - 10) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  margin-bottom: -1em;
}

@media (min-width: 1920px) {
  .tags-group {
    font-size: calc(16px * 0.875);
  }
}

.tags-group--border {
  border-top: 0.5rem solid #000;
  padding-top: 2em;
}

.tags-group--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.tag {
  display: inline-block;
  font-size: 1.2em;
  /* margin: 0 0.615384615384615em 0.615384615384615em 0; */
  margin: 0.5em 0.5em 0.5em 0;
  line-height: 1;
  border-radius: 20px;
  border: 2px solid black;
  padding: 0.4em 0.923076923076923em;
  -webkit-transition:
    border-color 0.3s ease,
    color 0.3s ease,
    background-color 0.3s ease;
  transition:
    border-color 0.3s ease,
    color 0.3s ease,
    background-color 0.3s ease;
  background: #f5f5f5;
}

.pagination,
.pagination__list {
  display: -webkit-box;
  display: -ms-flexbox;
}

.non-touch .tag:hover,
.tag--selected-alt {
  border-color: var(--accent-color, #613afb);
  color: #fff;
  background: var(--accent-color, #613afb);
}

.tag--selected {
  background-color: var(--accent-color, #613afb);
  color: #fff;
}

.tag--selected-alt {
  color: #df3726;
}

.pagination {
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 2.5em;
  padding-bottom: 2.5em;
}

@media (max-width: 640px) {
  .pagination {
    font-size: 0.875rem;
  }
}

.pagination__list {
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.pagination__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.5em 0;
  position: relative;
}

.pagination__btn:after {
  display: block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 1.125em;
  height: 1.125em;
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  -webkit-transition: border-color 0.3s ease;
  transition: border-color 0.3s ease;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin: 0 0.5em;
}

.pagination__btn--prev {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
}

.address-list__item,
.flex-table__col--column,
.notification-box,
.popup {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
}

.pagination__btn--prev:after {
  -webkit-transform: rotate(-135deg);
  transform: rotate(-135deg);
}

.pagination__btn--disabled {
  opacity: 0.2;
  cursor: not-allowed;
}

.pagination__btn-text {
  display: block;
  color: #000;
  font-size: 1.25em;
  line-height: 1;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (max-width: 640px) {
  .pagination__btn-text {
    display: none;
  }
}

.non-touch
  .pagination__btn:hover:not(.pagination__btn--disabled)
  .pagination__btn-text {
  color: rgba(0, 0, 0, 0.68);
}

.non-touch .pagination__btn:hover:not(.pagination__btn--disabled):after {
  border-color: #df3726;
}

.pagination__link {
  display: block;
  font-size: 1.5em;
  line-height: 1;
  font-weight: 600;
  padding: 0.25em;
  text-align: center;
  min-width: 1.5em;
  margin: 0 0.25em;
  color: #000;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.custom-dropdown__link,
.popup {
  display: -webkit-box;
  display: -ms-flexbox;
}

.pagination__link.is-active {
  color: var(--accent-color, #613afb);
}

.non-touch .pagination__link:not(.is-active):hover {
  color: rgba(0, 0, 0, 0.68);
}

.popup {
  font-size: calc(
    (10px + (16 - 10) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  z-index: 9999;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 5em;
  padding-top: calc(env(safe-area-inset-top) + 5em);
  padding-bottom: calc(env(safe-area-inset-bottom) + 5em);
  padding-left: calc(env(safe-area-inset-left) + 5em);
  padding-right: calc(env(safe-area-inset-right) + 5em);
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-direction: column;
  flex-direction: column;
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.popup__container,
.popup__controls {
  max-width: 1310px;
  position: relative;
  width: 100%;
}

@media (min-width: 1920px) {
  .popup {
    font-size: calc(16px * 0.875);
  }
}

.popup.is-open {
  visibility: visible;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

@media (max-width: 480px) {
  .popup {
    padding-left: 1.5em;
    padding-right: 1.5em;
    padding-left: calc(env(safe-area-inset-left) + 1.5em);
    padding-right: calc(env(safe-area-inset-right) + 1.5em);
  }
}

.popup__container {
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  max-height: 100%;
  background-color: #fff;
  z-index: 2;
  -webkit-transform: translateY(5em) scale(1.1);
  transform: translateY(5em) scale(1.1);
  opacity: 0;
  -webkit-transition:
    opacity 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    opacity 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    transform 0.3s ease,
    opacity 0.3s ease;
  transition:
    transform 0.3s ease,
    opacity 0.3s ease,
    -webkit-transform 0.3s ease;
}

.popup-is-open .popup__container {
  -webkit-transform: translateY(0) scale(1);
  transform: translateY(0) scale(1);
  opacity: 1;
}

.popup__content {
  padding: 1.5em;
}

.popup__content img {
  display: block;
  margin: 0 auto;
}

.popup__close-overlay {
  position: fixed;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  background-color: transparent;
  outline: 0;
  cursor: pointer;
}

.popup__close {
  padding: 0;
  z-index: 2;
  position: absolute;
  top: 0;
  left: 100%;
  width: 4.375em;
  height: 4.375em;
  background-color: #eee;
  border: 0;
  outline: 0;
  opacity: 0;
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
  -webkit-transition:
    background-color 0.3s ease,
    opacity 0.3s ease 0.3s,
    -webkit-transform 0.3s ease 0.3s;
  transition:
    background-color 0.3s ease,
    opacity 0.3s ease 0.3s,
    -webkit-transform 0.3s ease 0.3s;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease 0.3s,
    opacity 0.3s ease 0.3s;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease 0.3s,
    opacity 0.3s ease 0.3s,
    -webkit-transform 0.3s ease 0.3s;
}

@media (max-width: 480px) {
  .popup__close {
    top: auto;
    left: auto;
    right: 0;
    bottom: 100%;
  }
}

.popup-is-open .popup__close {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  opacity: 1;
}

.popup__close:after,
.popup__close:before {
  width: 2.125em;
  height: 3px;
  background-color: #000;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
  transform: translate(-50%, -50%) rotate(45deg);
}

.popup__close:after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
  transform: translate(-50%, -50%) rotate(-45deg);
}

.non-touch .popup__close:hover {
  background-color: #e1e1e1;
}

.non-touch .popup__close:active {
  background-color: #d5d5d5;
}

.custom-dropdown {
  display: inline-block;
  position: relative;
}

.custom-dropdown__list {
  border: 1px solid #eee;
  padding: 0.75em;
  position: absolute;
  z-index: 1;
  right: 0;
  top: 125%;
  background-color: #fff;
  -webkit-transform: translateY(-1em);
  transform: translateY(-1em);
  opacity: 0;
  visibility: hidden;
  -webkit-transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    opacity 0.3s ease,
    visibility 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    transform 0.3s ease,
    opacity 0.3s ease,
    visibility 0.3s ease;
  transition:
    transform 0.3s ease,
    opacity 0.3s ease,
    visibility 0.3s ease,
    -webkit-transform 0.3s ease;
}

.is-open .custom-dropdown__list {
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
  visibility: visible;
}

.custom-dropdown__link {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1em;
  margin-bottom: 0.5em;
  color: #000;
  text-decoration: none;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.notification-box,
.notification__icon {
  display: -webkit-box;
  display: -ms-flexbox;
}

.custom-dropdown__link:last-child {
  margin-bottom: 0;
}

.non-touch .custom-dropdown__link:hover {
  color: #df3726;
}

.custom-dropdown__link-icon {
  width: 1.25em;
  height: 1.25em;
  fill: rgba(0, 0, 0, 0.75);
  margin-right: 0.5rem;
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
}

.non-touch .custom-dropdown__link:hover .custom-dropdown__link-icon {
  fill: #df3726;
}

.notification-box {
  position: fixed;
  z-index: 1000;
  bottom: 1.5em;
  right: 1.5em;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  max-width: 28.5em;
}

@media (max-width: 480px) {
  .notification-box {
    max-width: none;
    width: 90%;
    right: 5%;
  }
}

.purchase-page .notification-box {
  bottom: 11em;
}

.ie-11 .purchase-page .notification-box {
  bottom: 1.5em;
}

@media (max-width: 1200px) {
  .purchase-page .notification-box {
    bottom: 1.5em;
  }
}

.notification {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.142857142857143rem;
  padding: 0.75em;
  background-color: #fff;
  -webkit-box-shadow: 0 1px 4px rgba(102, 102, 102, 0.14);
  box-shadow: 0 1px 4px rgba(102, 102, 102, 0.14);
  border: 1px solid rgba(190, 190, 190, 0.08);
  -webkit-animation: notification-open 0.3s ease;
  animation: notification-open 0.3s ease;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  opacity: 0;
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
  -webkit-transition:
    opacity 1s,
    -webkit-transform 1s;
  transition:
    opacity 1s,
    -webkit-transform 1s;
  transition:
    opacity 1s,
    transform 1s;
  transition:
    opacity 1s,
    transform 1s,
    -webkit-transform 1s;
  margin-bottom: 1em;
}

.notification:last-child {
  margin-bottom: 0;
}

.notification.is-closed {
  -webkit-animation: notification-close 0.3s ease;
  animation: notification-close 0.3s ease;
}

@-webkit-keyframes notification-open {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes notification-open {
  0% {
    opacity: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@-webkit-keyframes notification-close {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

@keyframes notification-close {
  0% {
    opacity: 1;
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    opacity: 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

.notification--info {
  color: #6b81ef;
}

.notification--warning {
  color: #ec7a09;
}

.notification--success {
  color: #26c676;
}

.notification--error {
  color: #b90d0d;
}

.notification__icon {
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-left: 3px;
  width: 1.5em;
  height: 1.5em;
  /*fill: currentColor*/
}

.notification__close {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  color: #000;
  background-color: #eee;
  width: 1.5em;
  height: 1.5em;
  border-radius: 50%;
  margin-left: 0.875em;
  padding: 0;
  border: 0;
  outline: 0;
  -webkit-transition:
    color 0.3s ease,
    background-color 0.3s ease;
  transition:
    color 0.3s ease,
    background-color 0.3s ease;
}

.notification__close .notification__icon {
  margin-left: 0;
}

.non-touch .notification__close:hover {
  color: #fff;
  background-color: var(--accent-color, #613afb);
}

.non-touch .notification__close:active {
  background-color: #d22f1f;
}

.notification__text {
  color: #000;
  font-size: 1em;
  font-weight: 300;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 0 0.625em;
  margin: 0;
}

.notification__text a {
  display: inline-block;
  font-size: 1em;
  color: inherit;
  text-decoration: underline;
}

.non-touch .notification__text a:hover {
  text-decoration: underline;
  color: inherit;
}

.main-nav__link,
.site-logo,
.sitemap__list-link,
.topbar__btn,
.topbar__link {
  text-decoration: none;
}

.non-touch .notification__text a:active {
  color: inherit;
}

.sitemap {
  font-size: 1.5em;
  margin: 0 auto;
}

@media (max-width: 1024px) {
  .sitemap {
    font-size: 1.375em;
  }
}

@media (max-width: 640px) {
  .sitemap {
    font-size: 1.125em;
  }
}

.sitemap__list .sitemap__list,
.sitemap__list .sitemap__list .sitemap__list-item {
  padding-left: 1em;
}

.sitemap__list .sitemap__list .sitemap__list-item:before {
  content: "";
  position: absolute;
  left: -0.5em;
  top: 0.625em;
  width: 1em;
  height: 1px;
  background: #eee;
}

.sitemap__list .sitemap__list .sitemap__list-item:after {
  position: absolute;
  top: 0;
  left: -0.5em;
  bottom: 0;
  width: 1px;
  background: #eee;
}

.sitemap__list .sitemap__list .sitemap__list-item:first-child {
  padding-top: 1em;
}

.sitemap__list .sitemap__list .sitemap__list-item:first-child:before {
  top: 1.625em;
}

.sitemap__list .sitemap__list .sitemap__list-item:first-child:after {
  top: 0.625em;
}

.sitemap__list .sitemap__list .sitemap__list-item:last-child:after {
  bottom: auto;
  height: 0.625em;
}

.sitemap__list-item {
  padding-bottom: 1em;
  position: relative;
}

.sitemap__list-item:last-child {
  padding-bottom: 0;
}

.sitemap__list-link {
  display: inline-block;
  font-size: 1em;
  line-height: 1;
  color: #000;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.sitemap__list-link--large {
  font-weight: 700;
  font-size: 1.125em;
}

.sitemap__list-link--small {
  font-size: 0.875em;
  color: rgba(0, 0, 0, 0.8);
}

.non-touch .sitemap__list-link:hover {
  color: #df3726;
}

.main-header {
  background-color: #ffffff;
  backdrop-filter: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 10;
  will-change: transform;
}

.main-nav__link,
.main-nav__list-item--profile {
  position: relative;
}

.main-header--transition {
  -webkit-transition: -webkit-transform 0.6s ease;
  transition: -webkit-transform 0.6s ease;
  transition: transform 0.6s ease;
  transition:
    transform 0.6s ease,
    -webkit-transform 0.6s ease;
}

.mobile-menu-is-open .main-header {
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.site-logo {
  margin: 0.5rem 1rem 0.5rem -12px;
  display: inline-block;
}

.site-logo__link {
  display: block;
}

.site-logo__link img {
  display: block;
  width: 80%;
  height: auto;
  max-width: 100%;
}

.main-nav,
.main-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
}

.site-logo--smaller {
  max-width: 8rem;
  margin-right: 0;
}

@media (max-width: 480px) {
  .site-logo {
    max-width: 8rem;
  }
}

.main-nav {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 1rem;
}

.main-nav__list {
  display: flex;
}

.main-nav__list-item {
  margin: 0 1em;
}

.main-nav__list-item:last-child {
  margin-right: 0;
}

.main-nav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #fff;
  font-size: 1.25em;
  line-height: 1.2;
  padding: 1.2em 0;
  z-index: 2;
  background-color: transparent;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  cursor: pointer;
}

.main-nav__link:before {
  background-color: #f9f9f9;
  height: 0.2em;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  -webkit-transform: translateY(-100%);
  transform: translateY(-100%);
  opacity: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.non-touch .main-header .main-nav__link:hover,
.non-touch .main-header .main-nav__list-item:hover .main-nav__link {
  color: #5e7ace;
}

.main-header .main-nav__link.is-active:before,
.non-touch .main-header .main-nav__link:hover:before,
.non-touch .main-header .main-nav__list-item:hover .main-nav__link:before {
  -webkit-transform: translateY(0);
  transform: translateY(0);
  opacity: 1;
}

.main-nav__link .icon {
  margin-left: 0.6em;
  margin-right: 0.6em;
  margin-bottom: 3px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  fill: #fff;
}

.main-nav__list-item--profile .main-nav__link .icon {
  margin-left: 0;
}

.main-nav__mobile-menu-btn {
  outline: 0;
  display: none;
  width: 2.75em;
  height: 2.75em;
  padding: 0;
  border: 0;
  background-color: transparent;
  position: relative;
}

.main-nav__mobile-menu-btn:after,
.main-nav__mobile-menu-btn:before {
  left: 0.5em;
  width: 1.75em;
  content: "";
}

.main-nav__mobile-menu-btn:before {
  position: absolute;
  top: 0.75em;
  height: 1.25em;
  border-top: 3px solid #fff;
  border-bottom: 3px solid #fff;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition:
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
}

.main-nav__mobile-menu-btn:after {
  position: absolute;
  top: 1.25em;
  height: 3px;
  background-color: #fff;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition:
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
}

.mobile-menu-is-open .main-nav__mobile-menu-btn:before {
  height: 3px;
  border: 0;
  background: #fff;
  -webkit-transform: rotate(225deg) translate(-0.375em, -0.375em);
  transform: rotate(225deg) translate(-0.375em, -0.375em);
}

.mobile-menu-is-open .main-nav__mobile-menu-btn:after {
  -webkit-transform: rotate(-225deg);
  transform: rotate(-225deg);
}

.main-nav__submenu {
  position: absolute;
  z-index: 1;
  top: calc(100% + 8px);
  background-color: #000;
  padding: 1em 0 1em;
  border-radius: 14px;
  overflow: hidden;
  opacity: 0;
  -webkit-transform: translateY(-1em);
  transform: translateY(-1em);
  visibility: hidden;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

.main-nav__list-item--profile .main-nav__submenu {
  right: 0;
  min-width: 100%;
}

.main-nav__submenu:not(.main-nav__submenu--mega) {
  min-width: max-content;
}

.main-nav__submenu:not(.main-nav__submenu--mega) .main-nav__submenu-link {
  white-space: nowrap;
}

.main-nav__submenu-link {
  display: block;
  font-size: 1.2em;
  color: rgba(255, 255, 255, 0.8);
  text-decoration: none;
  padding: 0.8em;
  margin: 0 1em;
}

.main-nav__submenu--mega,
.topbar__row {
  display: -webkit-box;
  display: -ms-flexbox;
  -ms-flex-wrap: wrap;
}

.non-touch .main-nav__submenu-link:hover {
  color: #000000;
  background: white;
  border-radius: 5px;
}

.main-nav__submenu--mega {
  max-width: 96rem;
  display: list-item;
  background: #1c1c1c;
  flex-wrap: wrap;
}

.main-nav__submenu--mega .main-nav__submenu-link:not(:last-child) {
  width: 33.33%;
  min-width: 290px;
}

.main-nav__submenu--two-col {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 0;
  padding: 0;
  width: max-content;
  max-width: none;
}

.main-nav__submenu--two-col .main-nav__submenu-col {
  flex: 0 0 auto;
  padding: 1em 0;
}

.main-nav__submenu--two-col .main-nav__submenu-col--proto {
  border-left: 1px solid rgba(255, 255, 255, 0.08);
}

body.header-rework .main-nav__submenu--two-col .main-nav__submenu-col--proto {
  border-left-color: rgba(23, 21, 18, 0.1);
}

html.theme-dark body.header-rework .main-nav__submenu--two-col .main-nav__submenu-col--proto {
  border-left-color: rgba(242, 240, 232, 0.1);
}

.main-nav__submenu--two-col .main-nav__submenu-col-header {
  display: block;
  font-size: 0.95em;
  font-weight: 400;
  letter-spacing: 0.02em;
  text-transform: none;
  opacity: 0.38;
  padding: 0.4em 0.8em 0.2em 1.6em;
  pointer-events: none;
}

.main-nav__submenu--two-col .main-nav__submenu-link {
  width: auto;
  min-width: 0;
  white-space: nowrap;
}

.non-touch .main-nav__list-item:hover .main-nav__submenu {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

@media (max-width: 1024px) {
  .main-nav__list-item {
    margin-left: 0.8em;
    margin-right: 0.8em;
  }
  .main-nav__link-hidden-text {
    display: none;
  }
  .main-nav__list-item--profile .main-nav__link .icon {
    margin-left: 0.6em;
  }
  .main-nav__list-item--profile .main-nav__submenu {
    min-width: 7em;
    left: auto;
  }
}

@media (max-width: 990px) {
  .main-nav {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .main-nav__list--primary {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    max-height: calc(100vh - 5em);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    opacity: 0;
    position: absolute;
    z-index: 111;
    top: 100%;
    left: 0;
    right: 0;
    -webkit-transform: translateY(-1em);
    transform: translateY(-1em);
    visibility: hidden;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    background-color: #030303;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-left: 5%;
    padding-right: 5%;
    padding-left: calc(env(safe-area-inset-left) + 5%);
    padding-right: calc(env(safe-area-inset-right) + 5%);
  }
  .mobile-menu-is-open .main-nav__list--primary {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    opacity: 1;
    visibility: visible;
  }
  .main-nav__list-item {
    margin-left: 0.5em;
    margin-right: 0.5em;
  }
  .main-nav__list-item:first-child {
    margin-left: 0;
  }
  .main-nav__mobile-menu-btn {
    display: block;
  }
  .main-nav__submenu {
    display: none;
  }
}

.ff-list__item.is-disabled .add-btn,
.invisible,
.slick-loading .slick-slide,
.slick-loading .slick-track {
  visibility: hidden;
}

@media (max-width: 640px) {
  .main-nav__list--primary,
  .main-nav__list--primary .main-nav__link {
    padding-top: 0.6em;
    padding-bottom: 0.6em;
  }
  .main-nav__list--primary .main-nav__list-item {
    width: 100%;
    margin: 0;
  }
  .main-nav__list--primary .main-nav__link:before {
    display: none;
  }
}

.cart-counter {
  display: inline-block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background-color: var(--accent-color, #613afb);
  color: #fff;
  font-size: 0.6em;
  line-height: 1.636363636363636;
  padding: 0 0.5em;
  min-width: 1.636363636363636em;
  border-radius: 0.818181818181818em;
  text-align: center;
}

.cart-counter--absolute {
  position: absolute;
  top: 1.3em;
  right: 0.5em;
}

.cart-counter--alt {
  font-size: 1em;
  margin: 0 0 0.5em 1em;
}

.topbar {
  background-color: rgb(239 238 229);
  width: 100%;
  z-index: 1111;
  border-top: 0px solid #000;
  border-bottom: 2px solid black;
}

.topbar__row {
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-height: none;
  min-height: 3.5em;
  font-size: 1rem;
}

.topbar__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  color: black;
  flex-wrap: wrap;
}

@media (max-width: 1200px) {
  .topbar__item {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
  .topbar__item:first-child {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 66%;
  }
  .topbar__item:last-child {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    width: 34%;
    margin-top: 10px;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
}

.topbar__title {
  display: block;
  color: #222;
  font-size: 1.3em;
  font-weight: 300;
  margin: 0.5em 0;
}

.topbar__btn,
.topbar__title--alt {
  font-weight: 700;
}

@media (max-width: 640px) {
  .topbar {
    padding-bottom: 0.125em;
  }
  .topbar__title {
    margin: 0.125em;
    font-size: 1.25em;
  }
}

.topbar__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #222;
  font-size: 1.2em;
  line-height: 1.333333333333333em;
  height: 100%;
  padding: 0.888888888888889em 0;
  margin-right: 1.333333333333333em;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.topbar__item .topbar__link[href="#buy"] {
  font-weight: 700;
}

.noUi-target:before,
.topbar__btn {
  -webkit-transition: background-color 0.3s ease;
}

.non-touch .topbar__link:hover {
  color: #5e7ace;
}

.topbar__link.is-active {
  color: #000;
}

.topbar__link--alt {
  color: #000;
  font-size: 1.1em;
  line-height: 1.25em;
  padding: 1.125em 0;
  margin-right: 2em;
}

.topbar__link:last-child {
  margin-right: 0;
}

@media (max-width: 650px) {
  .topbar__link,
  .topbar__link--alt {
    padding: 0.5em 0;
    font-size: 1em;
  }
}

.topbar__icon {
  margin-left: 0.5em;
  width: 0.75em;
  height: 0.75em;
  fill: currentColor;
  display: none;
}

.topbar__icon--rotate {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.topbar__btn {
  color: #fff;
  font-size: 1.2em;
  line-height: 2;
  border-radius: 50px;
  padding: 0.2em 2.5em;
  transition: background-color 0.3s ease;
  background-color: #000;
}

.non-touch .topbar__btn:hover {
  background-color: var(--accent-color, #613afb);
}

.non-touch .topbar__btn:active {
  background-color: rgba(255, 255, 255, 0.08);
}

.topbar__btn--accent {
  background-color: black;
  position: relative;
}

.topbar__btn--accent:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  margin-left: -8px;
  border-width: 6px 8px 0;
  border-style: solid;
  display: none;
  border-color: #000 transparent transparent;
}

.non-touch .topbar__btn--accent:hover {
  background-color: var(--accent-color, #613afb);
}

.non-touch .topbar__btn--accent:active {
  background-color: #714ef9;
}

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

main.project .text {
  max-width: 100%;
  font-size: calc(
    (18px + (32 - 18) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  color: #000;
}

@media (min-width: 1920px) {
  .text {
    font-size: calc(32px * 0.875);
  }
}

.text--normal {
  font-size: calc(
    (18px + (40 - 18) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .text--normal {
    font-size: calc(40px * 0.875);
  }
}

.text--smaller {
  font-size: calc(
    (18px + (32 - 18) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .text--smaller {
    font-size: calc(32px * 0.875);
  }
}

.text--small {
  font-size: calc(
    (18px + (26 - 18) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .text--small {
    font-size: calc(26px * 0.875);
  }
}

.text h1,
.text h2,
.text h3,
.text h4,
.text h5,
.text h6 {
  margin: 0 0 0.25em;
  color: currentColor;
  font-weight: 400;
  line-height: 1.1;
}

.text ol,
.text p,
.text ul {
  margin: 0 0 1em;
}

.text h1 {
  font-size: 1.75em;
}

.text h2 {
  font-size: 1.625em;
}

main.services .text h3 {
  font-size: 2em;
  margin-bottom: 2em;
}

.text h4 {
  font-size: 1.375em;
}

.text h5 {
  font-size: 1.25em;
}

.text h6 {
  font-size: 1.125em;
}

.text li,
.text p {
  font-size: clamp(1.5rem, 2.5vw, 1rem);
  line-height: 1.4;
  width: 100%;
  padding-right: 1em;
}

.text--accent-titles h1,
.text--accent-titles h2,
.text--accent-titles h3,
.text--accent-titles h4,
.text--accent-titles h5,
.text--accent-titles h6 {
  color: black;
  font-weight: 500;
  padding: 0.4em 0;
  letter-spacing: -0.5px;
}

main.project .text p {
  font-weight: 300;
  padding-right: 0em;
  color: currentColor;
  font-size: clamp(1.5rem, 2.5vw, 1rem);
}

.text a:not(.btn) {
  color: var(--accent-color, #613afb);
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.non-touch .text a:not(.btn):hover {
  color: #e7685b;
}

.non-touch .text a:not(.btn):active {
  color: #ae271a;
}

.text li {
  font-weight: 300;
  color: currentColor;
  margin-bottom: 0.25em;
  padding-left: 1em;
  overflow: hidden;
  position: relative;
}

.text li:last-child {
  margin-bottom: 0;
}

.text li:before {
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
  width: 0.25em;
  height: 0.25em;
  background-color: #df3726;
  border-radius: 50%;
}

.text ol {
  list-style: decimal inside;
}

.text ol li {
  padding-left: 0;
}

.text ol li:before {
  display: none;
}

.text blockquote {
  font-size: 1.25em;
  line-height: 1.36;
  font-weight: 300;
  margin: 0 0 2em;
  padding: 1.6em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.wrapper__inner .text blockquote {
  margin-left: -16.280193236714976%;
  margin-right: -16.280193236714976%;
}

@media (min-width: 1920px) {
  .wrapper__inner .text blockquote {
    margin-left: -19%;
    margin-right: -19%;
  }
}

@media (max-width: 1372px) {
  .wrapper__inner .text blockquote {
    margin-left: -12.5%;
    margin-right: -12.5%;
  }
}

@media (max-width: 1200px) {
  .wrapper__inner .text blockquote {
    margin-left: -10%;
    margin-right: -10%;
  }
}

@media (max-width: 1024px) {
  .wrapper__inner .text blockquote {
    margin-left: -5%;
    margin-right: -5%;
  }
}

@media (max-width: 768px) {
  .wrapper__inner .text blockquote {
    margin-left: 0;
    margin-right: 0;
  }
}

.text blockquote:before {
  content: "";
  display: inline-block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 2.32em;
  height: 1.701em;
  background: url(../images/blockquote.svg) center center no-repeat;
  background-size: cover;
  margin-right: 1.6em;
  margin-top: 0.25em;
}

@media (max-width: 640px) {
  .text blockquote {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .text blockquote:before {
    margin: 0 0 1.7em;
  }
}

.text table {
  margin-bottom: 1em;
  border-collapse: collapse;
}

.text table.table-layout-fixed {
  table-layout: fixed;
}

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

.text table td,
.text table th {
  padding: 0.75em;
  font-size: 0.875em;
  border: 1px solid #eee;
  text-align: left;
}

.text table th {
  font-weight: 700;
  font-size: 0.875em;
  background-color: #f7f7f7;
}

.text table .table-icon-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

main.project .text img {
  max-width: 100%;
  margin: 1em 0 1em 0;
  max-height: 100%;
}

.center .text img {
  margin-left: auto;
  margin-right: auto;
}

.text img[style*="float: left"] {
  margin: 0.25em 2em 2em 0;
  max-width: 50%;
}

.text img[style*="float: right"] {
  margin: 0.25em 0 2em 2em;
  max-width: 50%;
}

@media (max-width: 768px) {
  .text img[style*="float:  left"],
  .text img[style*="float: right"] {
    max-width: 45%;
  }
}

@media (max-width: 480px) {
  .text img[style*="float:  left"],
  .text img[style*="float: right"] {
    margin: 0 0 2em;
    max-width: 100%;
    float: none !important;
  }
}

.text .video-embed-wrapper {
  width: 50%;
  margin: 0.25em auto 2em;
}

.text .video-embed-wrapper--left {
  float: left;
  margin-right: 2em;
}

.text .video-embed-wrapper--right {
  float: right;
  margin-left: 2em;
}

.text .video-embed-wrapper--full {
  width: 100%;
}

@media (max-width: 480px) {
  .text .video-embed-wrapper {
    width: 100%;
  }
}

.text .video-embed {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  margin: 0 auto;
}

.text .video-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.cover__image,
.cover__image img {
  width: 100%;
  height: 80%;
}

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

.cover,
.cover__header {
  display: -webkit-box;
  display: -ms-flexbox;
  position: relative;
}

@-moz-document url-prefix() {
  .text:not(.text--no-dropcap) p:first-of-type:first-letter {
    margin-top: 0.125em;
  }
}

.under-the-line {
  border-top: 1px solid rgba(3, 3, 3, 0.12);
  padding-top: 1.5em;
  font-size: 1rem;
  text-align: center;
}

.under-the-line__text {
  font-size: 1em;
  font-weight: 300;
  color: rgba(0, 0, 0, 0.54);
  margin: 0;
}

.cover {
  z-index: 1;
  margin-bottom: 3.875em;
  font-size: 1rem;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  -ms-flex-item-align: start;
  align-self: flex-start;
}

.cover--spaced-bottom {
  margin-bottom: 1.25em;
}

.cover--no-spaced-bottom {
  margin-bottom: 0;
}

@media (max-width: 1024px) {
  .cover {
    font-size: 0.875rem;
  }
  .cover--spaced-bottom {
    margin-bottom: 5em;
  }
}

.cover__header {
  z-index: 2;
  background-color: transparent;
  margin-top: 0;
  margin-left: 4%;
  margin-right: 4%;
  margin-left: calc(env(safe-area-inset-left) + 4%);
  margin-right: calc(env(safe-area-inset-right) + 4%);
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 5em 5% 0;
}

@media (max-width: 1200px) {
  .cover__header {
    margin-top: -6.5em;
    padding-top: 4em;
    min-height: 6.5em;
  }
}

@media (max-width: 1024px) {
  .cover__header {
    margin-top: -4em;
    padding-top: 3em;
    min-height: 4em;
  }
}

@media (max-width: 640px) {
  .cover {
    font-size: 0.75rem;
    margin-bottom: 2em;
  }
  .cover--spaced-bottom {
    margin-bottom: 2.75em;
  }
  .cover__header {
    margin-top: -2em;
    padding-top: 2em;
    min-height: 2em;
  }
}

.cover__header-row {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.cover__header-row-element {
  width: 4rem;
  text-align: center;
  padding-top: 1em;
}

.cover__header-row-element--mid {
  padding-top: 0;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

@media (max-width: 1200px) {
  .cover__header-row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .cover__header-row-element {
    width: auto;
    padding-top: 0;
    margin-bottom: 1em;
  }
  .cover__header-row-element--mid {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 100%;
    margin-bottom: 0;
  }
}

.cover__image {
  display: block;
}

.slider {
  width: 100%;
  position: relative;
}

.section--font-slider {
  overflow: hidden;
}

.slider--font-family {
  overflow: hidden;
}

.slider--font-family .slick-list {
  overflow: visible;
  padding: 0 6vw;
}

.slider--font-family .slick-track,
.slider--font-family .slider__slides {
  overflow: visible;
}

.slider--font-family .slick-slide {
  padding: 0 0.75rem;
}

.slider--font-family .slider__slide img {
  display: block;
  width: 100%;
  border: 1px solid #000;
}

.slider--font-family .slider__btn,
.slider--font-family .slider__dots {
  display: none;
}

.slider--multi-slide {
  margin: -1rem;
  width: calc(100% + 2rem);
}

.slider--spaced {
  margin-top: 2.5rem;
}

.slider--multi-slide .slider__slide {
  padding: 1rem;
  text-align: center;
}

.slider__slide--cover {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: #fcfcfc;
}

.slider__slide:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}

.slick-initialized .slider__slide {
  position: static;
  opacity: 1;
}

@media (min-width: 1920px) {
  main.services h1 {
    font-size: 1.2em;
    margin: 0.67em 0;
  }
}

main.project .slider__slide-container {
  position: relative;
  overflow: hidden;
  min-height: calc(
    (200px + (650 - 200) * ((70vw - 640px) / (1920 - 640))) * 0.875
  );
  padding-top: calc(
    (0px + (80 - 40) * ((100vw - 640px) / (1920 - 640))) * 0.875
  );
  padding-bottom: calc(
    (0px + (80 - 40) * ((100vw - 640px) / (1920 - 640))) * 0.875
  );
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media (max-width: 1024px) {
  .slider__slide-container {
    padding-bottom: 3rem;
  }
}

@media (max-width: 640px) {
  .slider__slide-container {
    padding-left: env(safe-area-inset-left);
    padding-right: env(safe-area-inset-right);
  }
}

.slider__slide-text {
  width: 100%;
  position: relative;
  z-index: 2;
  max-width: 1035px;
  margin: 0;
  color: #fff;
}

.slider__slide-text--wide {
  max-width: 1372px;
}

.slider__slide-text--dark {
  color: #000;
}

.slide-title,
.slider__slide-link {
  color: inherit;
  text-decoration: none;
  outline: 0;
}

main.project .slider__slide-image {
  margin-bottom: 0;
  width: 100%;
}

.slider__slide-image {
  margin-bottom: 3.4em;
  width: 100%;
}

main.project .slider__slide-link {
  display: block;
  width: 100%;
  cursor: default;
  pointer-events: none;
  text-decoration: none;
  color: grey;
  height: 100%;
}

.slider__btn,
.slider__dots {
  display: -webkit-box;
  display: -ms-flexbox;
  -webkit-box-pack: center;
}

.slider__btn {
  width: calc((40px + (90 - 40) * ((100vw - 640px) / (1920 - 640))) * 0.875);
  height: calc((40px + (90 - 40) * ((100vw - 640px) / (1920 - 640))) * 0.875);
  background: rgba(255, 255, 255, 0.8);
  padding: 0;
  border: 0;
  border-radius: 50%;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: absolute;
  z-index: 3;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition:
    background-color 0.3s ease,
    opacity 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    opacity 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease,
    opacity 0.3s ease;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease,
    opacity 0.3s ease,
    -webkit-transform 0.3s ease;
  outline: 0;
}

.non-touch .slider__btn,
.touch .slider__btn {
  opacity: 0;
}

.non-touch .slider:hover .slider__btn,
.non-touch .slider__btn:hover {
  opacity: 1;
}

@media (min-width: 1920px) {
  .slider__btn {
    width: calc(90px * 0.875);
    height: calc(90px * 0.875);
  }
}

.slider__btn--alt {
  background-color: #f7f7f7;
}

.slider__btn--prev .slider__btn-icon {
  -webkit-transform: scale(-0.6, 0.6);
  transform: scale(-0.6, 0.6);
}

.slider__btn--prev {
  left: 2.9%;
  left: calc(2.9% + constant(safe-area-inset-left));
  left: calc(2.9% + env(safe-area-inset-left));
}

.slider__btn--next {
  right: 2.9%;
  right: calc(2.9% + constant(safe-area-inset-right));
  right: calc(2.9% + env(safe-area-inset-right));
}

.slider__btn--outside.slider__btn--prev {
  right: 102.5%;
  left: auto;
  background: transparent;
}

.slider__btn--outside.slider__btn--next {
  right: auto;
  left: 102.5%;
  background: transparent;
}

.non-touch .slider__btn--outside:hover {
  background: transparent;
}
.non-touch .slider__btn--outside:not(.slider__btn--alt):hover {
  background-color: transparent;
}

.non-touch .slider__btn:not(.slider__btn--alt):hover {
  background-color: #fff;
}

.non-touch .slider__btn:active {
  -webkit-transform: translateY(-50%) scale(0.92);
  transform: translateY(-50%) scale(0.92);
}

.slider__btn-icon {
  fill: #000;
  width: 100%;
  height: 100%;
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
  -webkit-transform: scale(0.6);
  transform: scale(0.6);
}

.non-touch .slider__btn:hover .slider__btn-icon {
  fill: var(--accent-color, #613afb);
}

@media (max-width: 640px) {
  .slider__btn {
    display: none;
  }
}

.slider__dots {
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 1rem 5%;
}

main.project .slider__dots--inside {
  position: absolute;
  bottom: 0;
  left: 0;
  display: none;
  right: 0;
}

.slider__dots .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: -6.5em;
}

@media (max-width: 1026px) {
  .slider__dots {
    display: none;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: -5em;
  }
}

.slider__dots .slick-dots button {
  display: block;
  width: 2rem;
  height: 2rem;
  background: 0 0;
  font-size: 0;
  position: relative;
  outline: 0;
  border: 0;
}

.slider__dots .slick-dots button:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background-color: #cbcbcb;
  -webkit-transition:
    background 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background 0.3s ease,
    transform 0.3s ease;
  transition:
    background 0.3s ease,
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
}

.non-touch .slider__dots .slick-dots button:hover:before {
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-transform: translate(-50%, -50%) scale(1.1);
  transform: translate(-50%, -50%) scale(1.1);
}

.non-touch .slider__dots .slick-dots .slick-active button:hover:before,
.slider__dots .slick-dots .slick-active button:before {
  background-color: #000;
  -webkit-transform: translate(-50%, -50%) scale(1.2);
  transform: translate(-50%, -50%) scale(1.2);
}

.slider__dots--outside ~ .slider__btn {
  margin-top: -2rem;
}

.slide-title {
  display: block;
  font-size: calc(
    (28px + (80 - 28) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  font-weight: 700;
  margin-bottom: 0.75em;
}

.address-list,
.address-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
}

@media (min-width: 1920px) {
  .slide-title {
    font-size: calc(80px * 0.875);
  }
}

.helper-row {
  background: url(../images/helper-row-background.svg) top left no-repeat
    #ffffff;
  background-size: cover;
  padding: 4rem 0;
  margin-top: auto;
}

.helper-row__content {
  font-size: 1rem;
  text-align: left;
  margin: 0 auto;
}

@media (max-width: 768px) {
  .helper-row__content {
    font-size: 0.75rem;
  }
}

.helper-row__title {
  font-size: 1.8em;
  line-height: 1.15;
  font-weight: 300;
  color: #000;
  margin: 0 0 0.5em;
}

.helper-row__text {
  font-size: 1.75em;
  color: var(--accent-color, #613afb);
  text-decoration: none;
  margin: 0;
}

.address-list {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -1px -1px 0;
  font-size: 1rem;
}

.address-list--alt {
  margin: 0 -1rem -1rem -1rem;
  flex-direction: column;
}

.address-list__item {
  background-color: #fff;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-preferred-size: 14.75rem;
  flex-basis: 14.75rem;
  margin-right: 1px;
  margin-bottom: 1px;
  padding: 0.875rem;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
}

.address-list__item--center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: flex-start;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: flex-start;
}

.address-list__item--selectable {
  background-color: #f7f7f7;
  cursor: pointer;
}

.non-touch .address-list__item--selectable:hover {
  border-color: #030303;
}

.address-list--alt .address-list__item {
  border: 0;
  margin: 0 1rem 1rem 1rem;
  -webkit-transition: border-color 0.3s ease;
  transition: border-color 0.3s ease;
}

.address-list--alt .address-list__item--selectable {
  border: 1px solid #eee;
  margin-bottom: 0.5rem;
}

.address-list--alt .address-list__item--center {
  border: 1px solid #eee;
  margin-bottom: 2rem;
  cursor: pointer;
  transition:
    border-color 0.2s ease,
    background-color 0.2s ease;
}

.address-list--alt .address-list__item--center .js-new-billing-address {
  display: inline-block;
  margin-bottom: 0;
  padding-bottom: 0;
}

.non-touch
  .address-list--alt
  .address-list__item--center
  .js-new-billing-address:hover {
  text-decoration: none;
}

.non-touch .address-list--alt .address-list__item--center:hover {
  border-color: #030303;
  background-color: #f7f7f7;
}

.address-list--alt .address-list__item.is-selected {
  border-color: #df3726;
}

.address-list__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: 1em;
}

.address-list__header-title {
  display: block;
  font-size: 1.375em;
  color: #000;
  font-weight: 300;
  margin: 0;
  text-align: center;
}

.address-list__header-title--bigger {
  font-size: 1.375em;
  margin: 0 0 0.5em;
}

.address-list__header-label {
  color: #df3726;
  font-size: 0.833333333333333em;
}

.address-list__header-btn {
  color: #000;
}

.address-list__header-btn .icon {
  fill: currentColor;
  -webkit-transition: fill 0.3s ease;
  transition: fill 0.3s ease;
}

.non-touch .address-list__header-btn:hover .icon {
  fill: #df3726;
}

.address-list__text {
  color: rgba(0, 0, 0, 0.54);
  font-size: 1em;
}

.address-list__text--spaced-bottom {
  margin-bottom: 2.75em;
}

.address-list__text--spaced-bottom-2 {
  margin-bottom: 1.5em;
}

.address-list__text--alt {
  color: #000;
  font-size: 1.125em;
}

.address-list__text-item {
  display: block;
  font-weight: 300;
  margin-bottom: 0.25em;
  word-break: break-word;
}

.address-list__text-item--spaced {
  margin-bottom: 1em;
}

.order-steps {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.5em 0;
  margin-bottom: 3em;
  position: relative;
}

.order-steps:after,
.order-steps:before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 1.25em;
  left: 0;
  width: 100%;
  height: 2px;
  margin-top: -1px;
  background-color: #000;
}

.order-steps:after {
  background-color: var(--accent-color, #613afb);
}

.order-steps--step-1:after {
  width: 0;
}

.order-steps--step-2:after {
  width: 50%;
}

.order-steps--step-3:after {
  width: 100%;
}

.order-steps__item {
  position: relative;
  z-index: 2;
  font-size: 1.25em;
  color: #000;
  font-weight: 300;
  width: 6em;
  text-align: center;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.order-steps__item-link {
  display: inline-block;
  text-decoration: none;
  color: #000;
  padding-top: 2em;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  cursor: default;
}

.highlight-block:after,
.highlight-block__title {
  -webkit-transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
}

.non-touch .order-steps__item-link.is-done:hover {
  color: rgba(0, 0, 0, 0.64);
  cursor: pointer;
}

.non-touch .order-steps__item-link.is-done:active {
  color: rgba(0, 0, 0, 0.4);
}

.order-steps__item-link:before {
  content: "";
  width: 1.2em;
  height: 1.2em;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  background-color: #fff;
  border: 2px solid #000;
  border-radius: 50%;
}

.order-steps__item-link.is-active:before,
.order-steps__item-link.is-done:before {
  background-color: var(--accent-color, #613afb);
  border-color: #f7f7f7;
}

.order-steps__item:first-child {
  text-align: left;
}

.order-steps__item:first-child .order-steps__item-link:before {
  left: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.order-steps__item:last-child {
  text-align: right;
}

.order-steps__item:last-child .order-steps__item-link:before {
  left: auto;
  right: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.flex-table__col--separator:after,
.flex-table__row.is-loading:before,
.highlight-block:after {
  left: 0;
  content: "";
}

.order-list__item {
  margin-bottom: 2em;
}

.order-list__item:last-child {
  margin-bottom: 0;
}

.order-list__item--header {
  font-size: 1em;
}

.order-list__item--header .order-header__title {
  margin: 0;
}

@media (max-width: 1024px) {
  .order-list__item--header {
    display: none;
  }
}

.flex-table__row,
.order-header {
  display: -webkit-box;
  display: -ms-flexbox;
}

.order-header {
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  font-size: 1.25rem;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: -0.5em 0 1em;
  padding-bottom: 10px;
  border-bottom: dashed 1px #7b7b7bdd;
}

@media (max-width: 1200px) {
  .order-header {
    font-size: 1.125rem;
  }
}

@media (max-width: 1024px) {
  .order-header {
    font-size: 1rem;
  }
}

.order-header__title {
  font-size: 1.5em;
  margin: 0 0.25em 0 0;
}

.order-header__status {
  font-size: 1em;
}

.order-header__status--success {
  color: #479f4f;
}

.order-header__status--error {
  color: #b90d0d;
}

.order-header__status--warning {
  color: #ec7a09;
}

.order-message {
  width: 100%;
  background-color: #f7f7f7;
}

.order-message__row {
  text-align: center;
  padding: 3.5rem 0;
}

.order-message__text {
  font-size: 2.625rem;
  line-height: 1.15;
  color: #000;
}

@media (max-width: 1200px) {
  .order-message__row {
    padding: 3rem 0;
  }
  .order-message__text {
    font-size: 2.25rem;
  }
}

@media (max-width: 1024px) {
  .order-message__row {
    padding: 2.25rem 0;
  }
  .order-message__text {
    font-size: 1.75rem;
  }
}

.flex-table {
  color: #000;
  margin-bottom: 2.5em;
  width: 100%;
  height: 100%;
  font-size: 1.2rem;
}

.flex-table--no-spacing {
  margin-bottom: 0;
}

.flex-table__value {
  display: block;
  font-size: clamp(1.3em, 1.8vw, 1.3rem);
  font-weight: 300;
  color: inherit;
}

.flex-table__value--bold,
.flex-table__value--title {
  font-weight: 700;
}

.flex-table__value--big {
  font-size: clamp(1.5rem, 1.8vw, 1.3rem);
  margin-bottom: 0.25em;
}

.flex-table__value--big:only-child {
  margin-bottom: 0;
}

.flex-table__value--small {
  font-size: 1.125em;
}

.flex-table__value--light {
  color: rgba(0, 0, 0, 0.5);
}

.flex-table__value--accent {
  color: var(--accent-color, #613afb);
}

.flex-table__value--alt {
  font-size: 1em;
  width: 100%;
  color: rgba(0, 0, 0, 0.32);
}

.flex-table__row {
  display: flex;
  border-bottom: 1px solid rgba(3, 3, 3, 0.12);
  background-color: #fff;
}

.flex-table__row.is-loading {
  position: relative;
  pointer-events: none;
}

.flex-table__row.is-loading > :not(.loader-local) {
  opacity: 0.2;
}

.flex-table__row.is-loading:before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
}

.flex-table__row--header {
  background-color: transparent;
}

.flex-table__row--footer {
  background-color: #030303;
  color: #fff;
}

.flex-table__row--no-wrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  line-height: 1.5;
}

.flex-table__row--transparent {
  background-color: transparent;
  border-bottom-width: 0;
}

.flex-table__row--transparent-alt {
  background-color: transparent;
  border-bottom-width: 1px;
}

.flex-table__col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1em;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 100%;
}

.flex-table--smaller-padding .flex-table__col {
  padding: 1em 1.5em;
}

.flex-table--medium-padding .flex-table__col {
  padding: 1.5em;
}

.flex-table__row--header .flex-table__col {
  padding-top: 0;
  padding-bottom: 0.25em;
}

.flex-table__row--smaller .flex-table__col {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.flex-table--smaller-padding .flex-table__row--smaller .flex-table__col {
  padding-top: 0.565em;
  padding-bottom: 0.565em;
}

.flex-table__col--remove {
  width: 6em;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.flex-table__col--price {
  min-width: 8em;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-right: 0;
}

.flex-table__col--nested {
  padding: 0;
}

.flex-table__col--nested-padded {
  padding: 0.5em 0;
}

.flex-table--medium-padding .flex-table__col--nested,
.flex-table--smaller-padding .flex-table__col--nested {
  padding: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.flex-table--medium-padding .flex-table__col--nested-padded,
.flex-table--smaller-padding .flex-table__col--nested-padded {
  padding: 0.5em 0;
}

.flex-table__col--50 {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.flex-table__col--grow {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.flex-table__col--column {
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-end;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  background: #fff;
  margin-left: auto;
  flex-grow: 1;
  flex-shrink: 1;
}

.flex-table__col--column .select {
  width: 100%;
  display: block;
}

.flex-table__col--wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.flex-table__col--no-wrap {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.flex-table__col--align-left {
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.flex-table__col--align-right {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.flex-table__col--separator {
  position: relative;
}

.flex-table__col--separator:after {
  position: absolute;
  top: 1em;
  bottom: 1em;
  width: 1px;
  background: rgba(3, 3, 3, 0.12);
}

@media (max-width: 1024px) {
  .flex-table__col--50:empty,
  .flex-table__col--separator:after {
    display: none;
  }
  .flex-table {
    font-size: 0.9375rem;
  }
  .flex-table__row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flex-table__row--header,
  .flex-table__row--no-wrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .flex-table__col {
    padding: 0.8em;
    justify-content: space-between;
  }
  .flex-table__col--nested {
    padding: 0;
  }
  .flex-table__col--nested-padded {
    padding: 0.5em 0;
  }
  .flex-table__col--50 {
    width: 100%;
  }
  .flex-table__col--price {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .flex-table__col--remove {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .flex-table__col--separator {
    margin-right: auto;
  }
}

@media (max-width: 640px) and (max-width: 359px) {
  .flex-table__col--price {
    width: auto;
  }
}

@media (max-width: 640px) {
  .flex-table__col {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .flex-table__col--align-left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .flex-table__col--align-right {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  .flex-table__col:empty {
    display: none;
  }
  .flex-table__col--nested {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .flex-table__col--no-wrap {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .flex-table__col--price {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  .flex-table__col--remove {
    width: auto;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 2;
  }
  .flex-table__col--column {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
  .flex-table__col--hide-mobile {
    display: none;
  }
  .flex-table--medium-padding .flex-table__col {
    padding-top: 1em;
    padding-bottom: 1em;
  }
  .flex-table--medium-padding .flex-table__col--nested-padded {
    padding: 0;
  }
}

.contacts {
  width: 100%;
  padding-right: 6em;
  margin-bottom: 40px;
  font-size: calc((9px + (16 - 9) * ((100vw - 320px) / (1920 - 320))) * 0.875);
}

@media (min-width: 1920px) {
  .contacts {
    font-size: calc(16px * 0.875);
  }
}

@media (max-width: 1024px) {
  .contacts {
    padding-right: 3em;
  }
}

@media (max-width: 768px) {
  .contacts {
    padding-right: 0;
  }
}

.contacts__title {
  color: #000;
  font-size: 2.625em;
  font-weight: 700;
  margin: 0 0 1.1em;
}

.contacts__heading {
  font-size: calc(
    (32px + (72 - 32) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  font-weight: 700;
  color: #000;
  text-transform: uppercase;
  margin: 0;
  position: sticky;
  top: 120px;
}

.column-layout__col--title {
  flex: 0 0 auto;
  width: 30%;
  max-width: 320px;
  padding-right: 3rem;
}

.column-layout__col--content {
  flex: 1;
}

.contacts--inline {
  padding-right: 0;
  margin-bottom: 2.5rem;
}

.contacts--inline .contacts__links {
  margin-bottom: 0.5em;
}

.contacts--inline .contacts__link {
  font-size: 1.5em;
  margin-bottom: 0;
}

.contacts__divider {
  color: #ccc;
  margin: 0 0.5em;
}

.contacts--about {
  margin-bottom: 2.5rem;
}

.contacts--about .contacts__text {
  font-size: 1.5em;
  margin-bottom: 1em;
}

.contacts--about .contacts__link {
  font-size: 1.25em;
  margin-bottom: 0;
}

.contacts--about .contacts__text--alt {
  font-size: 1.1em;
  color: #666;
  margin-top: 0.5em;
}

/* Contacts Layout - Two Column */
.contacts-layout {
  display: flex;
  gap: 3rem;
  align-items: flex-start;
}

.contacts-layout__info {
  flex: 0 0 auto;
  width: 280px;
}

.contacts-layout__form {
  flex: 1;
}

.contacts-layout__info .contacts--about {
  margin-bottom: 0;
}

@media (max-width: 768px) {
  .contacts-layout {
    flex-direction: column;
  }

  .contacts-layout__info {
    width: 100%;
  }
}

#about-section-contacts .form {
  max-width: none;
}

#about-section-contacts .form__item {
  width: 100%;
}

#about-section-contacts .field__input {
  width: 100%;
}

html.theme-dark #about-section-contacts .sectioned-content__title {
  color: #f1f3f8;
}

html.theme-dark #about-section-contacts .contacts__text {
  color: #d7dde8;
}

html.theme-dark #about-section-contacts .contacts__text--alt {
  color: #8d95a6;
}

html.theme-dark #about-section-contacts .contacts__divider {
  color: #636d80;
}

html.theme-dark #about-section-contacts .contacts__link {
  color: #6e86ff;
}

html.theme-dark #about-section-contacts .field__input {
  background: #1f2531;
  border-color: #3c4558;
  color: #f1f3f8;
}

html.theme-dark #about-section-contacts .field__input:focus {
  border-color: #8ea0ff;
}

html.theme-dark #about-section-contacts .field__label {
  color: #a5aec0;
}

html.theme-dark #about-section-contacts .field__input:focus::-webkit-input-placeholder {
  color: #a5aec0;
}

html.theme-dark #about-section-contacts .field__input:focus::-moz-placeholder {
  color: #a5aec0;
}

html.theme-dark #about-section-contacts .field__input:focus:-ms-input-placeholder {
  color: #a5aec0;
}

html.theme-dark #about-section-contacts .field__input:focus:-moz-placeholder {
  color: #a5aec0;
}

@media (max-width: 768px) {
  .column-layout__col--title {
    width: 100%;
    max-width: none;
    padding-right: 0;
    margin-bottom: 1.5rem;
  }

  .contacts__heading {
    position: static;
  }

  .about-contacts {
    margin-top: 2rem;
    padding-top: 2rem;
  }
}

.contacts__text {
  font-size: 2em;
  font-weight: 300;
  color: #000;
  line-height: 1.5;
  margin: 0;
}

.contacts__link,
.contacts__text--alt {
  font-weight: 400;
  line-height: 1.25;
}

.contacts__separator {
  width: 100%;
  max-width: 12em;
  height: 4px;
  background-color: #000;
  margin: 2.5em auto 2.5em 0;
}

.contacts__links {
  padding: 0.5em 0;
  margin-bottom: 1em;
}

.contacts__link {
  display: inline-block;
  text-decoration: none;
  color: var(--accent-color, #613afb);
  font-size: 2em;
  margin-bottom: 0.625em;
}

.non-touch .contacts__link:hover {
  text-decoration: underline;
}

.map-container {
  height: 22.5rem;
  width: 100%;
  background-color: #f7f7f7;
}

.news-list__item {
  padding: 2.875em 0;
  border-bottom: 1px solid rgba(3, 3, 3, 0.24);
}

.news-list__item:first-child {
  padding-top: 1em;
}

@media (max-width: 1024px) {
  .news-list__item {
    padding: 4.25em 0;
  }
}

@media (max-width: 640px) {
  .news-list__item {
    padding: 2.25em 0;
  }
}

.news-tags-hover {
  opacity: 0;
  transition: opacity 0.3s ease;
  text-align: right;
  margin-top: 0.5em;
  display: block;
  width: 100%;
}

.news-list__item:hover .news-tags-hover {
  opacity: 1;
}

.news-tags-hover .tag {
  margin: 0.25em 0 0.25em 0.5em;
}

.news-meta--info {
  font-size: 0.9em;
  color: rgba(0, 0, 0, 0.6);
  margin-top: 0.5em;
  text-align: right;
  display: block;
  width: 100%;
}

.time {
  display: block;
  font-size: clamp(1.5rem, 2.5vw, 1rem);
  color: var(--accent-color, #613afb);
}

.time--inherit {
  color: inherit;
}

.time--small-spacing {
  margin: 0 0 0.375em;
}

@media (max-width: 768px) {
  .time {
    margin-top: 0;
    font-size: 1.8em;
  }
}

@media (max-width: 480px) {
  .time {
    font-size: 1.5em;
  }
}

.highlight-block {
  display: inline-block;
  position: relative;
  overflow: hidden;
  outline: 0;
  text-align: left;
}

.highlight-block:after {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--accent-color, #613afb);
  z-index: 1;
  opacity: 0;
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
}

.highlight-block__text {
  position: absolute;
  z-index: 2;
  top: 2.5rem;
  left: 2rem;
  right: 2rem;
  color: #fff;
}

.highlight-block__title {
  display: block;
  font-weight: 900;
  color: currentColor;
  font-size: 1.875rem;
  margin-bottom: 0.3125rem;
  opacity: 0;
  -webkit-transform: translateX(-10%);
  transform: translateX(-10%);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
}

.filter,
.highlight-block__btn {
  display: -webkit-box;
  display: -ms-flexbox;
}

.highlight-block__btn {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.5rem;
  font-weight: 300;
  -webkit-transform: translateX(-20%);
  transform: translateX(-20%);
  opacity: 0;
  -webkit-transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    opacity 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
}

.highlight-block__btn .icon {
  margin-left: 0.375rem;
}

.filter,
.filter__row {
  -ms-flex-wrap: wrap;
  margin: -1em;
}

.highlight-block__image {
  display: block;
  width: 100%;
  height: auto;
  -webkit-transform: scale(1.05);
  transform: scale(1.01);
  -webkit-transition: -webkit-transform 0.3s
    cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition: -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition: transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
  transition:
    transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85),
    -webkit-transform 0.3s cubic-bezier(0.51, 0.03, 0.42, 0.85);
}

.non-touch .highlight-block:hover:after {
  opacity: 0.7;
}

.non-touch .highlight-block:hover .highlight-block__btn,
.non-touch .highlight-block:hover .highlight-block__title {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  opacity: 1;
}

.non-touch .highlight-block:hover .highlight-block__image {
  -webkit-transform: scale(1);
  transform: scale(1);
}

.non-touch .highlight-block:active .highlight-block__image {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.non-touch .highlight-block:active:after {
  opacity: 0.9;
  -webkit-transform: translateX(0);
  transform: translateX(0);
}

.non-touch .highlight-block:active .highlight-block__btn,
.non-touch .highlight-block:active .highlight-block__title {
  opacity: 0;
}

.sub-header {
  background-color: #e1e0d5;
  padding: 2em 0;
  max-height: 100%;
}

.sub-header--padded {
  padding: 3.625em 0;
}

.filter__item,
.filter__row-item {
  padding: 1em;
  display: grid;
}

.filter {
  display: flex;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.filter__row,
.purchase-options {
  display: -webkit-box;
  display: -ms-flexbox;
}

.filter__row {
  display: flex;
  flex-wrap: wrap;
}

@media (max-width: 1024px) {
  .filter__row {
    margin: -0.5em;
  }
  .filter__row-item {
    padding: 0.5em;
  }
}

.filter__label {
  display: block;
  font-size: 1.125em;
  color: #000;
  margin: 0 0 0.5em;
  padding-right: 15px;
}

.purchase-options {
  border-top: 2px solid #eee;
  padding: 1em 0;
  font-size: calc(
    (10px + (16 - 10) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin: -1em;
  margin-left: 3em;
}

@media (min-width: 1920px) {
  .purchase-options {
    font-size: calc(16px * 0.875);
  }
}

.purchase-options__item {
  padding: 1em;
  width: 25%;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.purchase-options__item--no-grow {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  width: auto;
  margin-top: 2.35em;
}

@media (max-width: 1024px) {
  .purchase-options__item {
    width: 50%;
  }
}

@media (max-width: 640px) {
  .purchase-options__item {
    width: 100%;
  }
}

.purchase-options__text {
  color: #858585;
  font-weight: 700;
  font-size: 1.2em;
  margin: 0.5em 0 0;
}

.purchase-options__text p {
  margin: 0;
}

.purchase-options__text-link {
  color: #000;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.non-touch .purchase-options__text-link:hover {
  color: #000;
}

.purchase-total {
  background-color: #efeee5;
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  border-top: 4px solid #000;
  padding: 1.25em 0;
  font-size: 1em;
}

@media (min-width: 1920px) {
  .purchase-total {
    font-size: calc(16px * 0.875);
  }
}

@media (max-width: 1200px) {
  .purchase-total {
    position: static;
  }
}

.purchase-total__row {
  margin: -1em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.purchase-total__item {
  padding: 1em;
  margin-top: 10px;
  margin-bottom: 10px;
}

.purchase-total__item--grow {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.purchase-total__title {
  display: block;
  font-size: 2.625em;
  color: #000;
  font-weight: 700;
}

@media (max-width: 1024px) {
  .purchase-total__title {
    font-size: 2em;
  }
}

.purchase-total__text {
  margin: 0;
  color: rgba(0, 0, 0, 0.32);
  font-size: 0.9em;
  text-align: right;
}

.purchase-total__price {
  display: block;
  font-size: 2.375em;
  text-align: right;
  font-weight: 400;
}

.ff-list {
  margin-top: 4em;
  width: 100%;
  font-size: calc(
    (10px + (16 - 10) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
  border-top: 0.5em solid #000;
}

@media (min-width: 1920px) {
  .ff-list {
    font-size: calc(16px * 0.875);
  }
}

.ff-list--nested {
  border-top: 0;
  margin: -1.5em -1.875em -1.5em 0;
  width: calc(100% + 1.9em);
}

.ff-list__item {
  /* border-bottom: 2px solid #000; */
  padding: 1.5em 1.875em 1.3em 0.125em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.ff-list__item:first-child {
  border-top-width: 0;
}

.ff-list__item--accordion {
  cursor: pointer;
  position: relative;
  font-weight: 500;
}

.ff-list__item--accordion:before {
  content: "";
  position: absolute;
  top: 2em;
  left: 1.5em;
  width: 0;
  height: 0;
  border: 0.6875em solid transparent;
  border-left: 1.25em solid #333;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition:
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
  border-right: 0;
}

.ff-list__item--accordion.is-open:before {
  -webkit-transform: rotate(90deg);
  transform: rotate(90);
}

.ff-list__item.is-disabled {
  opacity: 0.5;
  pointer-events: none;
}

.ff-list__item.is-loading {
  position: relative;
  pointer-events: none;
}

.ff-list__item.is-loading > :not(.loader-local) {
  opacity: 0.2;
}

.ff-list__item.is-loading:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.ff-list__group-title {
  display: block;
  font-size: 2.5em;
  font-weight: 700;
  color: #000;
  margin-top: 0;
  margin-left: 0;
}

.ff-list__title {
  display: block;
  cursor: pointer;
  font-family: inherit;
  font-size: 2em;
  color: #000;
  margin-right: auto;
  margin-left: 2em;
}

.ff-list__title:hover {
  color: var(--accent-color, #613afb);
}

.ff-list__flex,
.main-footer__row {
  display: -webkit-box;
  display: -ms-flexbox;
}

.ff-list__text {
  margin-top: 10px;
  margin-bottom: 10px;
  font-size: 1.6em;
  font-weight: 300;
  color: #000;
  margin-left: 2.6em;
}

.ff-list__text:hover {
  cursor: pointer;
}

.ff-list__box {
  position: relative;
  width: 60%;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-right: 2em;
}

@media (max-width: 768px) {
  .ff-list__box {
    width: 100%;
    padding-right: 0;
  }
}

.ff-list__flex {
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: auto;
}

.ff-list__label {
  font-size: 2.25em;
  line-height: 1;
  margin-right: 0.5em;
  color: #000;
  font-weight: 700;
  position: relative;
}

.ff-list__label--alt {
  color: var(--accent-color, #613afb);
}

.ff-list__label--cross:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  height: 2px;
  background: #858585;
}

.ff-list__label--back,
.ff-list__tag {
  background-color: var(--accent-color, #613afb);
  color: #fff;
  border-radius: 6px;
}

.ff-list__label--back {
  padding: 0.55em;
}

.ff-list__tag {
  font-size: 1.625em;
  line-height: 1;
  padding: 0.5em;
  position: absolute;
  top: 1.125em;
  left: 2em;
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  -webkit-transform-origin: bottom left;
  transform-origin: bottom left;
}

.ff-list__expand {
  min-width: 100%;
  display: none;
  margin: 2em -0.875em 0 -0.125em;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

/* .non-touch .ff-list__item .add-btn {
    opacity: 0;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
} */

/* .non-touch .ff-list>.ff-list__item:hover .add-btn {
    opacity: 1
}

.non-touch .ff-list .ff-list__item:hover>.ff-list.ff-list--nested .add-btn {
    opacity: 0
} */

/* .non-touch .ff-list .ff-list__item>.ff-list.ff-list--nested .ff-list__item:hover .add-btn {
    opacity: 1
} */

.font-desc {
  position: static;
  width: 100%;
  font-size: calc(
    (10px + (16 - 10) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

@media (min-width: 1920px) {
  .font-desc {
    font-size: calc(16px * 0.875);
  }
}

.font-desc__item {
  border-top: 1px solid rgba(0, 0, 0, 0.3);
  padding: 1.5em 0 1.5em;
}

.font-desc__title {
  display: block;
  font-size: clamp(1.5rem, 2.5vw, 1rem);
  font-weight: 700;
  color: #000;
  margin: 0 0 0.6875em;
}

.font-desc p,
.font-desc__text {
  display: block;
  font-size: 20px;
  color: #000;
  font-weight: 300;
  margin: 0;
}

.font-desc p a,
.font-desc p-link,
.font-desc__text a,
.font-desc__text-link {
  color: inherit;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.non-touch .font-desc p a:hover,
.non-touch .font-desc p-link:hover,
.non-touch .font-desc__text a:hover,
.non-touch .font-desc__text-link:hover {
  color: var(--accent-color, #613afb);
}

.main-footer {
  background-color: #2d2935;
  color: #fff;
  overflow: hidden;
}

.main-footer__top {
  padding-top: 4rem;
  padding-bottom: 0.75rem;
}

.main-footer__row {
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: -0.5rem;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

.cookie-bar,
.main-footer__row-item {
  display: -webkit-box;
  display: -ms-flexbox;
}

.main-footer__row-item {
  padding: 0.5rem;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.main-footer__row-item--grow {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

@media (max-width: 1024px) {
  .main-footer__row-item--grow-mobile {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}

@media (max-width: 768px) {
  .main-footer__row {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.main-footer__bottom {
  background-color: #030303;
  padding: 1.25rem 0;
  padding-bottom: calc(env(safe-area-inset-bottom) + 1.25rem);
}

.copyright {
  color: rgba(255, 255, 255, 0.54);
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
}

.copyright--studiox {
  margin-left: auto;
}

.copyright--studiox .copyright__link {
  color: #f7f7f7;
  text-decoration: none;
}

.social-network {
  margin: 0.25rem 1.5rem 0.25rem 0;
}

.social-network__link {
  display: inline-block;
  text-decoration: none;
  margin-right: 0.25rem;
  padding: 0.25rem;
  color: #fff;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.social-network__link:last-child {
  margin-right: 0;
}

.non-touch .social-network__link:hover {
  color: rgba(255, 255, 255, 0.72);
}

.cookie-bar {
  position: fixed;
  z-index: 10;
  bottom: 0;
  right: 0;
  max-width: 60rem;
  padding: 1.5rem;
  padding-bottom: calc(env(safe-area-inset-bottom) + 1.5rem);
  background-color: #fff;
  -webkit-box-shadow: 0 0 5rem rgba(0, 0, 0, 0.1);
  box-shadow: 0 0 5rem rgba(0, 0, 0, 0.1);
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}

.cookie-bar__text {
  -ms-flex-negative: 1;
  flex-shrink: 1;
  color: black;
  font-size: 1.125em;
}

.cookie-bar__btn {
  margin-top: 1rem;
  text-align: right;
  margin-left: 1rem;
}

.noUi-tooltip,
.noUi-value {
  text-align: center;
  white-space: nowrap;
}

@media (max-width: 480px) {
  .cookie-bar {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .cookie-bar__btn {
    margin-left: auto;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}

.footer-nav {
  font-size: 1rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 51rem;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  margin-bottom: 2rem;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.footer-nav__list {
  padding: 0 4em 1em 0;
}

.footer-nav__list:last-child {
  padding-right: 0;
}

.footer-nav__list-item {
  margin-bottom: 0.75em;
}

.footer-nav__list-item:last-child {
  margin-bottom: 0;
}

.footer-nav__title {
  display: block;
  font-size: 1.75em;
  color: #fff;
}

.footer-nav__link {
  display: inline-block;
  text-decoration: none;
  font-weight: 300;
  font-size: 1.125em;
  color: #fff;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

.slick-list,
.slick-slider,
.slick-track {
  display: block;
  position: relative;
}

.non-touch .footer-nav__link:hover {
  color: rgb(97 58 251);
}

.slick-slider {
  box-sizing: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.slick-list {
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: 0;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-list,
.slick-slider .slick-track {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  left: 0;
  top: 0;
  margin-left: auto;
  margin-right: auto;
}

.slick-track:after,
.slick-track:before {
  content: "";
  display: table;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}

[dir="rtl"] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

@media (max-width: 640px) {
  .topbar__btn {
    padding: 0.1em 1.5em;
    margin-top: 0px;
  }
  .slick-slide img {
    border-radius: 25px;
  }
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*! nouislider - 12.1.0 - 10/25/2018 */

.noUi-target,
.noUi-target * {
  -webkit-user-select: none;
  -ms-touch-action: none;
  touch-action: none;
  -moz-user-select: none;
  user-select: none;
  box-sizing: border-box;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.noUi-connects {
  overflow: hidden;
  z-index: 0;
  border-radius: 3px;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -webkit-transform-origin: 0 0;
  transform-origin: 0 0;
}

html:not([dir="rtl"]) .noUi-horizontal .noUi-origin {
  left: auto;
  right: 0;
}

.noUi-vertical .noUi-origin {
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  position: absolute;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition:
    transform 0.3s,
    -webkit-transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

.noUi-horizontal {
  height: 2em;
}

.noUi-horizontal .noUi-handle {
  width: 2em;
  height: 2.12em;
  left: -1em;
  top: 0;
}

.noUi-vertical {
  width: 2em;
}

.noUi-vertical .noUi-handle {
  width: 2em;
  height: 2em;
  left: 0;
  top: -1em;
}

.noUi-handle:before,
.noUi-target:before {
  content: "";
  top: 50%;
}

html:not([dir="rtl"]) .noUi-horizontal .noUi-handle {
  right: -1em;
  left: auto;
}

.noUi-target {
  direction: ltr;
  position: relative;
  cursor: pointer;
}

.noUi-handle:before,
.noUi-marker,
.noUi-pips,
.noUi-tooltip,
.noUi-value {
  position: absolute;
}

.noUi-target:before {
  position: absolute;
  left: -6px;
  right: -6px;
  height: 2px;
  background-color: #222;
  transition: background-color 0.3s ease;
}

.is-editing--contrast .noUi-target:before {
  background-color: rgba(255, 255, 255, 0.6);
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}

.noUi-connect {
  background: #3fb8af;
}

.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  outline: 0;
  cursor: -webkit-grab;
  cursor: grab;
}

.noUi-handle:before {
  left: 50%;
  width: 16px;
  border: 1px solid #fff;
  height: 16px;
  border-radius: 50%;
  background-color: #000;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition:
    background-color 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    -webkit-transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease;
  transition:
    background-color 0.3s ease,
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
}

.is-editing--contrast .noUi-handle:before {
  background-color: #fff;
}

.noUi-handle:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

.non-touch .noUi-handle:hover {
  -webkit-transform: scale(1.2);
  transform: scale(1.2);
}

[disabled] .noUi-connect {
  background: #b8b8b8;
}

[disabled] .noUi-handle,
[disabled].noUi-handle,
[disabled].noUi-target {
  cursor: not-allowed;
}

.noUi-pips,
.noUi-pips * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.noUi-pips {
  color: #999;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

.noUi-marker {
  background: #ccc;
}

.noUi-marker-large,
.noUi-marker-sub {
  background: #aaa;
}

.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  -webkit-transform: translate(50%, 50%);
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  -webkit-transform: translate(0, -50%, 0);
  transform: translate(0, -50%, 0);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  -webkit-transform: translate(0, 50%);
  transform: translate(0, 50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  color: #000;
  padding: 5px;
}

.noUi-horizontal .noUi-tooltip {
  -webkit-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
  top: 50%;
  right: 120%;
}

.select2-container {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: inline-block;
  margin: 0;
  position: relative;
  vertical-align: middle;
}

.select2-container .select2-selection--single {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  height: 28px;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  display: block;
  padding-left: 8px;
  padding-right: 20px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-container .select2-selection--single .select2-selection__clear {
  position: relative;
}

.select2-container[dir="rtl"]
  .select2-selection--single
  .select2-selection__rendered {
  padding-right: 8px;
  padding-left: 20px;
}

.select2-container .select2-selection--multiple {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  cursor: pointer;
  display: block;
  min-height: 32px;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
}

.select2-container .select2-selection--multiple .select2-selection__rendered {
  display: inline-block;
  overflow: hidden;
  padding-left: 8px;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.select2-container .select2-search--inline {
  float: left;
}

.select2-container .select2-search--inline .select2-search__field {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: none;
  font-size: 100%;
  margin-top: 5px;
  padding: 0;
}

.select2-container
  .select2-search--inline
  .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-dropdown {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: absolute;
  left: -100000px;
  width: 100%;
  z-index: 1051;
}

.select2-results {
  display: block;
  font-size: 1.2em;
  left: 100%;
}

.select2-results__options {
  list-style: none;
  margin-top: 0px;
  padding: 0;
  left: 100%;
}

.select2-results__option {
  padding: 6px;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-user-select: none;
}

.select2-results__option[aria-selected] {
  cursor: pointer;
}

.select2-container--open .select2-dropdown {
  left: 0;
}

.select2-container--open .select2-dropdown--above {
  border-bottom: none;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--open .select2-dropdown--below {
  border-top: none;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-search--dropdown {
  display: block;
  padding: 4px;
}

.select2-search--dropdown .select2-search__field {
  padding: 4px;
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

.select2-search--dropdown.select2-search--hide {
  display: none;
}

.select2-close-mask {
  border: 0;
  margin: 0;
  padding: 0;
  display: block;
  position: fixed;
  left: 0;
  top: 0;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: auto;
  opacity: 0;
  z-index: 99;
  background-color: #fff;
}

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

.select2-container--default .select2-selection--single {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #444;
  line-height: 28px;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: 700;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__placeholder {
  color: #999;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  height: 26px;
  position: absolute;
  top: 1px;
  right: 1px;
  width: 20px;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: #888 transparent transparent;
  border-style: solid;
  border-width: 5px 4px 0;
  height: 0;
  left: 50%;
  margin-left: -4px;
  margin-top: -2px;
  position: absolute;
  top: 50%;
  width: 0;
}

.select2-container--default[dir="rtl"]
  .select2-selection--single
  .select2-selection__clear {
  float: left;
}

.select2-container--default[dir="rtl"]
  .select2-selection--single
  .select2-selection__arrow {
  left: 1px;
  right: auto;
}

.select2-container--default.select2-container--disabled
  .select2-selection--single {
  background-color: #eee;
  cursor: default;
}

.select2-container--default.select2-container--disabled
  .select2-selection--single
  .select2-selection__clear {
  display: none;
}

.select2-container--default.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: transparent transparent #888;
  border-width: 0 4px 5px;
}

.select2-container--default .select2-selection--multiple {
  background-color: #fff;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: text;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__rendered {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0 5px;
  width: 100%;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__rendered
  li {
  list-style: none;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__placeholder {
  color: #999;
  margin-top: 5px;
  float: left;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: 700;
  margin-top: 5px;
  margin-right: 10px;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  border-radius: 4px;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice__remove {
  color: #999;
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  margin-right: 2px;
}

.select2-container--default
  .select2-selection--multiple
  .select2-selection__choice__remove:hover {
  color: #333;
}

.select2-container--default[dir="rtl"]
  .select2-selection--multiple
  .select2-search--inline,
.select2-container--default[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__choice,
.select2-container--default[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__placeholder {
  float: right;
}

.select2-container--default[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}

.select2-container--default[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto;
}

.select2-container--default.select2-container--focus
  .select2-selection--multiple {
  border: 1px solid #000;
  outline: 0;
}

.select2-container--default.select2-container--disabled
  .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}

.select2-container--default.select2-container--disabled
  .select2-selection__choice__remove {
  display: none;
}

.select2-container--default.select2-container--open.select2-container--above
  .select2-selection--multiple,
.select2-container--default.select2-container--open.select2-container--above
  .select2-selection--single {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--default.select2-container--open.select2-container--below
  .select2-selection--multiple,
.select2-container--default.select2-container--open.select2-container--below
  .select2-selection--single {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
}

.select2-container--default .select2-search--inline .select2-search__field {
  background: 0 0;
  border: none;
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: textfield;
}

.select2-container--default .select2-results > .select2-results__options {
  max-height: 200px;
  overflow-y: auto;
}

.select2-container--default .select2-results__option[role="group"] {
  padding: 0;
}

.select2-container--default .select2-results__option[aria-disabled="true"] {
  color: #999;
}

.select2-container--default .select2-results__option[aria-selected="true"] {
  background-color: #ddd;
}

.select2-container--default .select2-results__option .select2-results__option {
  padding-left: 1em;
}

.select2-container--default
  .select2-results__option
  .select2-results__option
  .select2-results__group {
  padding-left: 0;
}

.select2-container--default
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}

.select2-container--default
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}

.select2-container--default
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}

.select2-container--default
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}

.select2-container--default
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}

.select2-container--default
  .select2-results__option--highlighted[aria-selected] {
  background-color: #5897fb;
  color: #fff;
}

.select2-container--default .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--stx .select2-selection--single {
  font-size: 1em;
  height: 2em;
  outline: 0;
  font-weight: 300;
}

.select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  color: rgba(0, 0, 0, 0.64);
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
  line-height: 1.6em;
  padding-left: 1em;
  padding-right: 2em;
  border-radius: 20px;
  overflow-y: auto;
  background: #ebebeb;
}

.select--alt
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  color: black;
}

.select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  font-weight: 700;
  color: #000000;
}

.select--border
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  background-color: #fff;
}

.is-checked
  .select--border
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  color: #000;
}

.select2-container--stx .select2-selection--single .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: 700;
}

.select2-container--stx
  .select2-selection--single
  .select2-selection__placeholder {
  color: #999;
}

.select2-container--stx .select2-selection--single .select2-selection__arrow {
  height: 100%;
  position: absolute;
  top: -4px;
  right: 1px;
  width: 1.9em;
  color: #000;
  display: flex;
  align-items: center;
  justify-content: center;
}

.select2-container--stx .select2-selection--single .select2-selection__arrow b {
  border-color: currentColor transparent transparent;
  border-style: solid;
  border-width: 0.4em 0.3em 0;
  height: 0;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  -webkit-transition:
    border 0.3s ease,
    -webkit-transform 0.15s ease;
  transition:
    border 0.3s ease,
    -webkit-transform 0.15s ease;
  transition:
    transform 0.15s ease,
    border 0.3s ease;
  transition:
    transform 0.15s ease,
    border 0.3s ease,
    -webkit-transform 0.15s ease;
  position: absolute;
  top: 50%;
  width: 0;
}

.select--alt
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow
  b,
.select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-width: 1px;
  width: 0.5em;
  height: 0.5em;
  border-left-color: transparent;
  border-top-color: transparent;
  border-bottom: 1px solid currentColor;
  border-right: 1px solid currentColor;
  -webkit-transform: translate(-50%, -66%) rotate(45deg);
  transform: translate(-50%, -66%) rotate(45deg);
}

.select2-container--stx[dir="rtl"]
  .select2-selection--single
  .select2-selection__clear {
  float: left;
}

.select2-container--stx[dir="rtl"]
  .select2-selection--single
  .select2-selection__arrow {
  left: 1px;
  right: auto;
}

.select2-container--stx.select2-container--disabled .select2-selection--single {
  background-color: #eee;
  cursor: default;
}

.select2-container--stx.select2-container--disabled
  .select2-selection--single
  .select2-selection__clear {
  display: none;
}

.select2-container--stx.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  -webkit-transform: translate(-50%, -50%) rotate(180deg);
  transform: translate(-50%, -50%) rotate(180deg);
}

.select--alt
  .select2-container--stx.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b,
.select--alt2
  .select2-container--stx.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  -webkit-transform: translate(-50%, 0) rotate(-135deg);
  transform: translate(-50%, 0) rotate(-135deg);
}

.select2-container--stx .select2-selection--multiple {
  background-color: #fff;
  border: 1px solid #aaa;
  cursor: text;
}

.select2-container--stx
  .select2-selection--multiple
  .select2-selection__rendered {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  list-style: none;
  margin: 0;
  padding: 0 5px;
  width: 100%;
}

.select2-container--stx
  .select2-selection--multiple
  .select2-selection__rendered
  li {
  list-style: none;
}

.select2-container--stx
  .select2-selection--multiple
  .select2-selection__placeholder {
  color: #999;
  margin-top: 5px;
  float: left;
}

.select2-container--stx .select2-selection--multiple .select2-selection__clear {
  cursor: pointer;
  float: right;
  font-weight: 700;
  margin-top: 5px;
  margin-right: 10px;
}

.select2-container--stx
  .select2-selection--multiple
  .select2-selection__choice {
  background-color: #e4e4e4;
  border: 1px solid #aaa;
  cursor: default;
  float: left;
  margin-right: 5px;
  margin-top: 5px;
  padding: 0 5px;
}

.select2-container--stx
  .select2-selection--multiple
  .select2-selection__choice__remove {
  color: #999;
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  margin-right: 2px;
}

.select2-container--stx
  .select2-selection--multiple
  .select2-selection__choice__remove:hover {
  color: #333;
}

.select2-container--stx[dir="rtl"]
  .select2-selection--multiple
  .select2-search--inline,
.select2-container--stx[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__choice,
.select2-container--stx[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__placeholder {
  float: right;
}

.select2-container--stx[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__choice {
  margin-left: 5px;
  margin-right: auto;
}

.select2-container--stx[dir="rtl"]
  .select2-selection--multiple
  .select2-selection__choice__remove {
  margin-left: 2px;
  margin-right: auto;
}

.select2-container--stx.select2-container--focus .select2-selection--multiple {
  border: 1px solid #000;
  outline: 0;
}

.select2-container--stx.select2-container--disabled
  .select2-selection--multiple {
  background-color: #eee;
  cursor: default;
}

.select2-container--stx.select2-container--disabled
  .select2-selection__choice__remove {
  display: none;
}

.select2-container--stx.select2-container--open.select2-container--above
  .select2-selection--multiple,
.select2-container--stx.select2-container--open.select2-container--above
  .select2-selection--single {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.select2-container--stx.select2-container--open.select2-container--below
  .select2-selection--multiple,
.select2-container--stx.select2-container--open.select2-container--below
  .select2-selection--single {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.select2-container--stx .select2-search--dropdown {
  padding: 0.5em;
}

.select2-container--stx .select2-search--dropdown .select2-search__field {
  border: 1px solid #aaa;
  outline: 0;
  border-radius: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 16px;
}

.select2-container--stx .select2-search--inline .select2-search__field {
  background: 0 0;
  border: none;
  outline: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  -webkit-appearance: textfield;
}

.select2-container--stx .select2-results > .select2-results__options {
  /* max-height: 220px; */
  background: #fff;
  font-size: 0.9em;
  left: 33%;
  right: 33%;
  min-width: 168px;
  -webkit-overflow-scrolling: touch;
}

.select2-container--stx .select2-results__option {
  padding: 0.5em;
  display: block;
  color: #000;
}

.select2-container--stx .select2-results__option[role="group"] {
  padding: 0;
}

.select2-container--stx .select2-results__option[aria-disabled="true"] {
  color: #999;
}

.select2-container--stx .select2-results__option[aria-selected="true"] {
  background-color: var(--accent-color, #613afb);
  color: #fff;
  border-radius: 5px;
}

.select2-container--stx .select2-results__option .select2-results__option {
  padding-left: 1em;
}

.select2-container--stx
  .select2-results__option
  .select2-results__option
  .select2-results__group {
  padding-left: 0;
}

.select2-container--stx
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -1em;
  padding-left: 2em;
}

.select2-container--stx
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -2em;
  padding-left: 3em;
}

.select2-container--stx
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -3em;
  padding-left: 4em;
}

.select2-container--stx
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -4em;
  padding-left: 5em;
}

.select2-container--stx
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option
  .select2-results__option {
  margin-left: -5em;
  padding-left: 6em;
}

.select2-container--stx .select2-results__option--highlighted[aria-selected] {
  background-color: #eee;
  border-radius: 5px;
  color: #000;
}

.select2-container--stx .select2-results__group {
  cursor: default;
  display: block;
  padding: 6px;
}

.select2-container--stx .select2-dropdown {
  border-radius: 0;
}

.select2-container--stx.select2-container--open .select2-dropdown--above,
.select2-container--stx.select2-container--open .select2-dropdown--below {
  border: 1px solid #eee;
}

.select--border
  .select2-container--stx.select2-container--open
  .select2-dropdown {
  margin-left: -2px;
}

.full-width {
  width: 100% !important;
}

.center {
  text-align: center !important;
}

.align-left {
  display: flex;
  justify-content: left;
  flex-direction: column;
  align-content: flex-start;
  align-items: baseline;
  text-align: left;
}

.align-right {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
  align-content: flex-end;
  align-items: flex-end;
  text-align: right !important;
}

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

.no-margin {
  margin: 0 !important;
}

.hidden {
  display: none !important;
}

.visuallyhidden {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
  clip: auto;
  -webkit-clip-path: none;
  clip-path: none;
  height: auto;
  margin: 0;
  overflow: visible;
  position: static;
  width: auto;
  white-space: inherit;
}

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

.upgrade-browser {
  position: relative;
  z-index: 10000;
  padding: 10px 60px;
  text-align: center;
  background-color: #ffe490;
}

.upgrade-browser a {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px 0 0;
  width: 50px;
  height: 50px;
  font-size: 0;
  background: url(../images/browser-sprite.jpg) -1000px 0 no-repeat;
}

.upgrade-browser a.chrome {
  background-position: 0 0;
}

.upgrade-browser a.ie {
  background-position: -50px 0;
}

.upgrade-browser a.firefox {
  background-position: -100px 0;
}

.upgrade-browser a.opera {
  background-position: -150px 0;
}

.upgrade-browser a.safari {
  background-position: -200px 0;
}

.upgrade-browser span {
  display: inline-block;
  margin: 10px;
  font-size: 16px;
  line-height: 18px;
}

.upgrade-browser__warning {
  position: absolute;
  top: 10px;
  right: 10px;
  height: 50px;
  width: 50px;
  cursor: pointer;
  background: url(../images/browser-sprite.jpg) -250px 0 no-repeat;
}

@media print {
  thead {
    display: table-header-group;
  }
  img,
  tr {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  h2,
  h3,
  p {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  a[href]:empty::before {
    content: attr(href);
  }
}

.tippy-box[data-theme="custom"] {
  background-color: #000;
  color: #fff;
  border-radius: 0;
  font-size: 12px;
}

.tippy-box[data-theme="custom"][data-placement^="bottom"]
  > .tippy-arrow::before {
  border-bottom-color: #f7f7f7;
  transform: scale(1.5);
}

.tippy-box[data-theme~="custom"][data-placement^="top"] > .tippy-arrow::before {
  border-top-color: #000;
}

.slider__slide {
  cursor: move; /* fallback: no `url()` support or images disabled */
  cursor: url(images/grab.cur); /* fallback: Chrome 1-21, Firefox 1.5-26, Safari 4+, IE, Edge 12-14, Android 2.1-4.4.4 */
  cursor: grab; /* W3C standards syntax, all modern browser */
}

.slider__slide:active {
  cursor: url(images/grabbing.cur);
  cursor: grabbing;
}

main.project p.two_column {
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  margin-top: 1em;
}

main.services p.service_block {
  font-size: clamp(1.5rem, 2.5vw, 1rem);
  line-height: 1.4;
  width: 100%;
  padding-right: 1em;
}

main.services header.header-block.header-block--big.align-left {
  font-size: calc((9px + (40 - 14) * ((100vw - 320px) / (1920 - 320))) * 0.875);
  text-align: left;
  margin-bottom: 1em;
}

main.services p.two_column {
  padding-right: 0;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 2em;
}

/* Font details: keep tester text on one line even while editing */
#tester .js-edit:not(.is-editing) .fit-block.is-fit-mode .fit-block__text {
  white-space: nowrap;
  display: inline-block;
  width: auto;
  min-width: 0;
  padding: 0;
}

/* Font details: allow fit-mode text to measure actual width */
#tester .fit-block.is-fit-mode .fit-block__text {
  min-width: 0;
  width: auto;
}

/* Font details: default left alignment to avoid jump on edit */
#tester .fit-block {
  justify-content: flex-start;
  text-align: left;
}

#tester .fit-block__text {
  text-align: left;
  margin-bottom: 40px;
}

#tester .editor__controls .select2-results {
  margin-top: 0;
}
#tester .font-info {
  margin-left: 0;
  margin-bottom: 10px;
}

#tester .js-font-weight-label {
  margin-left: 0;
  padding-left: 0;
}

/* Font details: allow multiline editing without clipping */
#tester .js-edit.is-editing,
#tester .js-edit.is-editing .font-block,
#tester .js-edit.is-editing .fit-block {
  overflow: visible;
}
/* Lightweight animation enhancements */
:root {
  /* --accent-color-base is set via JS from admin settings; --accent-color derived in CSS per theme */
}

/* Text selection color - uses accent color */
::-moz-selection {
  background: var(--accent-color, #613afb);
  color: #fff;
  text-shadow: none;
}

::selection {
  background: var(--accent-color, #613afb);
  color: #fff;
  text-shadow: none;
}

body {
  background-color: #efeee5;
}

.main-nav__link {
  position: relative;
  overflow: hidden;
}

.main-nav__link::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 2px;
  background: var(--text-accent);
  transform: translateX(-100%);
  transition: transform 200ms ease;
}

.main-nav__list-item:hover .main-nav__link::after,
.main-nav__link.is-active::after {
  transform: translateX(0);
}

.btn,
input[type="submit"],
.init-recaptcha {
  transition:
    transform 180ms ease,
    box-shadow 180ms ease;
  font-size: 1.2em;
}

.btn:hover,
input[type="submit"]:hover,
.init-recaptcha:hover {
  box-shadow: none;
}

.font-list__item {
  opacity: 0;
  animation: cardFade 650ms ease forwards;
  position: relative;
}

.font-list__item:nth-child(2) {
  animation-delay: 70ms;
}
.font-list__item:nth-child(3) {
  animation-delay: 140ms;
}
.font-list__item:nth-child(4) {
  animation-delay: 210ms;
}
.font-list__item:nth-child(5) {
  animation-delay: 280ms;
}
.font-list__item:nth-child(6) {
  animation-delay: 350ms;
}
.font-list__item:nth-child(7) {
  animation-delay: 420ms;
}
.font-list__item:nth-child(8) {
  animation-delay: 490ms;
}

.font-list__item--edit.is-editing {
  position: relative;
  z-index: 50;
  overflow: visible;
}

/* Don't dim active editor item background */
.font-list__item.is-editing {
  background: transparent;
}

.font-list__item:hover {
  background: transparent;
}

/* Font testers: left aligned by default (inline styles from editor still override) */
.fit-block__text {
  text-align: left;
}

/* Remove default min-height from `.fit-block` (defined in `web/css/all.min.css`) */
body.font-page .fit-block {
  min-height: auto;
}

body.font-page .fit-block:after {
  min-height: 0;
}

/* Remove default min-height from `.font-list__item` (defined in `web/css/all.min.css`) */
body.font-page .font-list__item {
  min-height: auto;
}

@media (max-width: 1024px) {
  .categories_content {
    padding-left: 5em;
    padding-right: 5em;
    box-sizing: border-box;
  }

  .categories_content .font-block {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .categories_content .fit-block {
    min-height: 92px;
  }

  .categories_content .fit-block:after {
    min-height: 92px;
  }

  .categories_content .font-list__item {
    min-height: auto;
  }

  .categories_content .font-list__item:after {
    width: auto;
    left: 5em;
    right: 5em;
    transform: none;
  }
}

@media (max-width: 640px) {
  .categories_content {
    padding-left: 2em;
    padding-right: 2em;
    box-sizing: border-box;
  }

  .categories_content .font-block {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .categories_content .font-list__item:after {
    left: 2em;
    right: 2em;
  }
}

/* Font family page - matrix list items */
.ff-list__item--matrix {
  display: block;
  width: 100%;
  padding: 0rem;
  margin-bottom: 3em;
}

.ff-list__item--license {
  padding: 1.5rem 0;
}

.ff-list__group-title {
  font-size: 1.5rem;
  margin: 0;
}

.font-matrix {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  box-sizing: border-box;
}

.font-matrix__header {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-bottom: 1rem;
  margin-bottom: 0;
  border-bottom: 2px solid #000;
}

.font-matrix__title {
  font-size: 1.25rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.02em;
  margin: 0;
}

.font-matrix__license-controls {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}

.license-toggle {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-size: 1rem;
  text-transform: none;
  letter-spacing: 0.02em;
  border: 1px solid rgba(0, 0, 0, 0.12);
  padding: 0.4rem 0.75rem;
  flex: 1 1 220px;
  justify-content: space-between;
}

.license-toggle span {
  font-size: 1rem;
}

.license-toggle__select {
  display: inline-flex;
  align-items: center;
  margin-left: auto;
}

.license-toggle__dropdown {
  border: none;
  background: transparent;
  font-size: 1rem;
  text-transform: none;
  letter-spacing: 0;
  padding: 0;
  margin-left: 0.5rem;
  min-width: 90px;
}

.license-toggle__dropdown:focus {
  outline: 1px solid #000;
}

.main-header {
  z-index: 1000;
}

.select2-container {
  z-index: 20;
}

.font-matrix__row {
  transition: background-color 0.15s ease;
}

.font-matrix__row:hover {
  background-color: rgba(0, 0, 0, 0.02);
}

.font-matrix__row.is-added,
.ff-list__item--collection.is-added .collection-card {
  opacity: 0.45;
}

.font-matrix__row.is-added:hover {
  background-color: transparent;
}

.btn.is-disabled {
  pointer-events: none;
  opacity: 0.65;
}

.font-matrix__table-wrapper {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.font-matrix__table {
  width: 100%;
  max-width: 100%;
  border-collapse: collapse;
  font-size: 1.125rem;
  table-layout: auto;
}

.font-matrix__table th,
.font-matrix__table td {
  border: 1px solid rgba(0, 0, 0, 0.08);
  padding: 1rem 1.25rem;
  text-align: left;
  vertical-align: middle;
  height: 4rem;
}

.font-matrix__table thead {
  visibility: collapse;
}

.font-matrix__weight-col {
  width: auto;
}

.font-matrix__weight {
  font-weight: 500;
  word-break: break-word;
  padding-left: 0;
}

.font-matrix__weight .font-matrix__name,
.font-matrix__weight .font-matrix__price {
  display: inline-block;
  vertical-align: middle;
}

.font-matrix__weight .font-matrix__price {
  float: right;
}

.font-matrix__name {
  font-size: 1.25rem;
  font-weight: 500;
}

.font-matrix__price {
  font-size: 1.375rem;
  font-weight: 700;
  color: #000;
  white-space: nowrap;
}

.font-matrix__actions-col {
  width: 160px;
  text-align: right;
}

.font-matrix__action {
  text-align: right;
  white-space: nowrap;
}

.font-matrix__action .btn {
  min-width: 130px;
  font-size: 1rem;
}

.weight-checkbox {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
}

.weight-checkbox__input {
  width: 18px;
  height: 18px;
}

.matrix-checkbox {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.45rem;
  font-size: 0.85rem;
}

.matrix-checkbox__input {
  display: none;
}

.matrix-checkbox__price {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.matrix-price--cross {
  text-decoration: line-through;
  color: rgba(0, 0, 0, 0.4);
  font-size: 0.8rem;
}

.matrix-price--sale {
  color: var(--text-accent);
  font-weight: 600;
}

.font-matrix__license-col.is-disabled {
  opacity: 0.5;
}

.collection-card {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
  width: 100%;
}

.collection-card__info {
  flex: 1 1 auto;
  max-width: 55%;
}

.collection-card__title {
  display: block;
  font-size: 1.25rem;
  font-weight: 500;
}

.collection-card__text {
  margin: 0.5rem 0 0;
  max-width: 36rem;
  font-size: 1.125rem;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.7);
}

.collection-card__actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 1.5rem;
  flex: 0 0 auto;
}

.collection-card__price {
  font-size: 1.375rem;
  font-weight: 700;
  color: #000;
  white-space: nowrap;
}

.collection-card__actions .btn {
  min-width: 130px;
  font-size: 1rem;
}

.license-panel {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  width: 100%;
}

.license-panel__title {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 0;
}

.license-panel .purchase-total__text {
  font-size: 1rem;
  text-align: left;
}

/* License Cards - vertical layout */
.license-cards {
  display: flex;
  gap: 1.5rem;
  flex-wrap: wrap;
}

.license-card {
  display: flex;
  flex-direction: column;
  padding: 1.5rem 1.75rem;
  border: 1px solid rgba(0, 0, 0, 0.12);
  cursor: pointer;
  min-width: 280px;
  flex: 1 1 280px;
  transition:
    border-color 0.2s ease,
    background-color 0.2s ease;
}

.license-card:hover {
  border-color: rgba(0, 0, 0, 0.3);
  background-color: rgba(0, 0, 0, 0.015);
}

.license-card__header {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin-bottom: 0.75rem;
}

.license-card__input {
  width: 1.125rem;
  height: 1.125rem;
  margin: 0;
  cursor: pointer;
  accent-color: #000;
  flex-shrink: 0;
  border: 1px solid #000;
  border-radius: 0;
  -webkit-appearance: none;
  appearance: none;
  background: #fff;
  position: relative;
}

.license-card__input:checked {
  background: #000;
}

.license-card__input:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.75rem;
  height: 0.55rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 7.5 L8.2 13 L18 1'/%3E%3C/svg%3E")
    center/contain no-repeat;
  transform: translate(-50%, -50%);
}

.license-card__checkmark {
  display: none;
}

.license-card__title {
  font-size: 1.375rem;
  font-weight: 700;
}

.license-card__desc {
  font-size: 1.0625rem;
  color: #000;
  line-height: 1.5;
  margin-bottom: 1.25rem;
}

.license-card__select {
  width: 100%;
  margin-top: auto;
}

.license-card__dropdown {
  width: 100%;
  padding: 0.625rem 0.875rem;
  font-size: 1rem;
  border: 1px solid rgba(0, 0, 0, 0.12);
  background: #fff;
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23000' d='M6 8L1 3h10z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 0.875rem center;
  padding-right: 2.5rem;
}

.license-card__dropdown:focus {
  outline: none;
  border-color: #000;
}

/* Font Picker - checkbox grid layout */
.font-picker {
  width: 100%;
}

.font-picker__collections {
  margin-bottom: 0;
}

.font-picker__divider {
  height: 1px;
  background: rgba(0, 0, 0, 0.2);
  margin: 1rem 0;
}

.font-picker__grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 3rem;
}

.font-picker__grid--single {
  grid-template-columns: 1fr;
}

.font-picker__item {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.375rem 0;
  cursor: pointer;
  transition: color 0.15s ease;
  border-bottom: 1px dashed transparent;
}

.font-picker__item:hover {
  color: rgba(0, 0, 0, 0.6);
  background: white;
  padding-left: 0.5em;
  margin-left: -0.5em;
}

.font-picker__item.is-added {
  background-color: rgba(0, 0, 0, 0.06);
  border-radius: 2px;
  padding-left: 0.5rem;
  margin-left: -0.5rem;
}

.font-picker__item.is-added .font-picker__label {
  font-weight: 500;
}

.font-picker__item.is-added .font-picker__price {
  color: var(--accent-color, #613afb);
}

.font-picker__item.is-loading {
  opacity: 0.6;
  pointer-events: none;
}

.font-picker__item.is-collection-member {
  background-color: rgba(0, 0, 0, 0.06);
  border-radius: 2px;
  padding-left: 0.5rem;
  margin-left: -0.5rem;
}

.font-picker__item.is-collection-member .font-picker__label {
  font-weight: 500;
}

.font-picker__item.is-collection-member .font-picker__price {
  color: var(--accent-color, #613afb);
}

.font-picker__checkbox {
  width: 1.125rem;
  height: 1.125rem;
  margin: 0;
  cursor: pointer;
  accent-color: #000;
  flex-shrink: 0;
  border: 1px solid #000;
  border-radius: 0;
  -webkit-appearance: none;
  appearance: none;
  background: #fff;
  position: relative;
}

.font-picker__checkbox:checked {
  background: #000;
}

.font-picker__checkbox:checked::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.75rem;
  height: 0.55rem;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 7.5 L8.2 13 L18 1'/%3E%3C/svg%3E")
    center/contain no-repeat;
  transform: translate(-50%, -50%);
}

.font-picker__label {
  flex: 1;
  font-size: 1.4rem;
  font-weight: 400;
}

.font-picker__item--collection .font-picker__label {
  font-weight: 500;
}

.font-picker__price {
  font-size: 1.3rem;
  font-weight: 600;
  white-space: nowrap;
  margin-left: auto;
  padding-right: 1rem;
}

.font-picker__footer {
  margin-top: 2rem;
  display: flex;
  justify-content: flex-end;
}

.font-picker__footer .btn {
  min-width: 140px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  background: #6b6b6b;
  color: #fff;
  border: none;
  padding: 0.75rem 1.25rem;
  font-size: 0.9375rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0.02em;
  transition: background-color 0.15s ease;
}

.font-picker__footer .btn:hover {
  background: #4a4a4a;
}

.font-picker__footer .btn:disabled {
  opacity: 0.4;
  cursor: not-allowed;
  background: #6b6b6b;
}

.font-picker__arrow {
  font-size: 1.125rem;
  line-height: 1;
}

@media (max-width: 979px) {
  .font-picker__grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
}

@media (max-width: 640px) {
  .font-picker__label {
    font-size: 1rem;
  }

  .font-picker__price {
    font-size: 0.9375rem;
  }

  .font-picker__footer .btn {
    width: 100%;
  }
}

@media (max-width: 900px) {
  .font-matrix__license-controls {
    justify-content: flex-start;
  }

  .license-toggle {
    flex: 1 1 260px;
  }
}

@media (max-width: 640px) {
  .license-toggle {
    flex: 1 1 100%;
  }
}

@media (max-width: 1024px) {
  .font-matrix {
    padding: 0;
    max-width: 100%;
  }

  .font-matrix__table th,
  .font-matrix__table td {
    padding: 0.875rem 1rem;
    height: 3.5rem;
  }

  .font-matrix__name {
    font-size: 1.125rem;
  }

  .font-matrix__price {
    font-size: 1.25rem;
  }

  .collection-card__actions {
    gap: 1rem;
  }
}

@media (max-width: 768px) {
  .font-matrix__table th,
  .font-matrix__table td {
    height: auto;
    padding: 0.75rem;
  }

  .font-matrix__name {
    font-size: 1rem;
  }

  .font-matrix__price {
    font-size: 1.125rem;
  }

  .font-matrix__action .btn {
    min-width: 110px;
    font-size: 0.9375rem;
  }

  .collection-card__title {
    font-size: 1.125rem;
  }

  .collection-card__price {
    font-size: 1.25rem;
  }

  .collection-card__actions .btn {
    min-width: 110px;
    font-size: 0.9375rem;
  }
}

@media (max-width: 640px) {
  .ff-list__item--matrix {
    padding: 0rem;
  }

  .font-matrix {
    box-shadow: none;
  }

  .font-matrix__table {
    font-size: 1rem;
  }

  .font-matrix__table th,
  .font-matrix__table td {
    padding: 0.625rem 0.5rem;
  }

  .font-matrix__name {
    font-size: 0.9375rem;
  }

  .font-matrix__price {
    font-size: 1rem;
  }

  .font-matrix__action .btn {
    min-width: 85px;
    font-size: 0.875rem;
  }

  .collection-card {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }

  .collection-card__info {
    max-width: 100%;
  }

  .collection-card__actions {
    flex-direction: row;
    align-items: center;
    width: 100%;
    justify-content: space-between;
  }

  .collection-card__actions .btn {
    min-width: 85px;
    font-size: 0.875rem;
  }
}

@keyframes cardFade {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@media (prefers-reduced-motion: reduce) {
  .font-list__item,
  .btn,
  button,
  input[type="submit"],
  .init-recaptcha {
    animation: none;
    transition: none;
    transform: none;
  }
}

.select2-container {
  position: relative;
  z-index: 20;
  width: 100% !important;
}

.select2-container .select2-dropdown {
  position: absolute;
  z-index: 30;
  max-height: 340px;
  overflow-y: auto;
  min-width: 220px;
  margin-top: 10px;
  width: auto;
}
.select2-dropdown--below {
  border: 1px solid #000000;
}
.select2-results__options {
  list-style: none;
  margin-top: 0px;
  padding: 10px;
}

.font-list__item--edit .select2-container,
.font-matrix .select2-container {
  z-index: 5000;
}

.font-list__item--edit .select2-container .select2-dropdown,
.font-matrix .select2-container .select2-dropdown {
  z-index: 5001;
}
.flex-table .select2-container--open {
  z-index: 9000;
}
.flex-table .select2-container--open .select2-dropdown {
  z-index: 9010;
}

/* Cart item rows - fixed width dropdown container for alignment */
.js-ff-item .js-purchase-option-group {
  display: flex;
  flex-wrap: nowrap;
  flex-direction: row; /* Override flex-table__col--column */
  gap: 0.5rem;
  align-items: center;
  justify-content: flex-end;
  /* Fixed width so X buttons align regardless of dropdown count */
  width: 420px;
  min-width: 420px;
  flex: 0 0 420px;
}

/* Each dropdown - fixed width for alignment */
.js-ff-item .js-purchase-option {
  flex: 0 0 145px;
  width: 245px;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
}
.js-ff-item .js-purchase-option.js-purchase-option--app {
  flex: 0 0 110px;
  width: 170px;
}
.js-ff-item .js-purchase-option .select {
  width: 100%;
}

.js-ff-item .select2-container {
  width: 100% !important;
}

/* Cart dropdowns - match font tester sizing + border */
.js-ff-item .select2-container--stx .select2-selection--single {
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  height: 32px;
  min-height: 32px;
  box-shadow: none;
  font-size: 1em;
  font-weight: 300;
}
.js-ff-item
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  color: rgba(0, 0, 0, 0.64);
  line-height: 24px;
  padding: 4px 32px 4px 12px;
  background: transparent;
}
.js-ff-item
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow {
  height: 100%;
  top: 2px;
  right: 6px;
  width: 24px;
}

/* Editor controls hover: keep static, only color change */
.editor__controls,
.editor__controls-group,
.editor__controls-group--features,
.editor__controls-item {
  transform: none;
  transition: color 0.25s ease;
  justify-content: flex-start;
  text-align: left;
}
.non-touch .editor__controls:hover,
.non-touch .editor__controls-group:hover,
.non-touch .editor__controls-item:hover {
  transform: none;
}
.editor__controls {
  justify-content: flex-start;
  align-items: center;
}
.editor__controls-group {
  justify-content: flex-start;
}

/* Font tester: show current size next to slider */
.editor__range {
  gap: 0.5rem;
}
.editor__range-slider {
  flex: 1 1 auto;
  width: auto;
}
.editor__range-value {
  display: inline-block;
  flex: 0 0 auto;
  min-width: 4ch;
  text-align: right;
  font-size: 1em;
  font-weight: 600;
}

/* Variable font axes */
.editor__controls-group--axes {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin-top: 0.25rem;
}
.editor__controls-item--axis {
  min-width: 14em;
}
.editor__range--axis .editor__range-label {
  min-width: 4ch;
  font-weight: 600;
  font-size: 1em;
  opacity: 1;
  letter-spacing: 0.02em;
}
#tester .editor__controls-item--vf-axes {
  padding: 0.2em 0.3em;
}
#tester .editor__controls-group--axes.js-editor__axes-primary {
  margin-top: 0;
}
#tester .editor__controls-item--axis-anim .editor__btn {
  padding: 0;
  background: transparent;
  border: 0;
}

/* Popup container: translucent + backdrop blur */
.popup__container {
  background-color: rgba(255, 255, 255, 0.7);
  -webkit-backdrop-filter: blur(14px) saturate(120%);
  backdrop-filter: blur(6px) saturate(100%);
}

/* Header cart icon alignment */
.main-nav__link {
  position: relative;
}

.main-nav__link[title="Cart"] .icon {
  position: relative;
  top: 1px;
}
#tester .editor__controls {
  flex-wrap: nowrap;
  overflow: visible;
  gap: 0.15rem;
}
#tester .editor__controls-group {
  flex-wrap: nowrap;
}
#tester .editor__controls-group--range {
  flex: 1 1 auto;
  min-width: 0;
}

/* When there are no VF axis controls, make the size slider breathe a bit */
#tester .js-edit.is-non-variable-font .editor__range {
  width: 18em;
}

#tester .js-edit.is-non-variable-font .editor__range-slider {
  padding: 0 1.6em;
}
#tester .editor__controls-group--range .editor__controls-item {
  min-width: 0;
}
#tester .editor__controls-group--axes {
  flex-wrap: nowrap;
  margin-top: 0;
}
#tester .editor__controls-item--axis {
  min-width: 14em;
}
#tester .editor__controls-item--axis-anim {
  min-width: auto;
}
#tester .editor__controls-item--axis-anim-slot:empty {
  display: none;
}
#tester .editor__range-label {
  display: inline-flex;
}
#tester .editor__range-label--axis {
  display: inline-flex;
  align-items: baseline;
  gap: 0.4rem;
  text-transform: none;
}
#tester .editor__range-label--axis .editor__range-unit {
  opacity: 0.85;
  font-weight: 600;
}
#tester .editor__range-label--axis .editor__range-number {
  min-width: 4ch;
  text-align: left;
  font-weight: 700;
  transition:
    transform 0.2s ease,
    opacity 0.2s ease;
}
#tester .editor__range-label--axis.is-updating .editor__range-number {
  transform: none;
  opacity: 1;
}
#tester .editor__controls-item--axis-anim .js-vf-animate-stop {
  display: none;
}
#tester
  .editor__controls-item--axis-anim
  .js-vf-animate.is-playing
  .js-vf-animate-play {
  display: none;
}
#tester
  .editor__controls-item--axis-anim
  .js-vf-animate.is-playing
  .js-vf-animate-stop {
  display: inline-block;
}
#tester .editor__controls-item--axis-anim .icon {
  width: 23.2px;
  height: 23.2px;
}
@media (max-width: 480px) {
  .editor__controls-group--axes {
    width: 100%;
  }
  .editor__controls-item--axis {
    width: 100%;
    min-width: 0;
  }
  .editor__range--axis {
    width: 100%;
  }
}

/* Editor controls buttons: no hover transition or shadow */
.editor__controls .btn,
.editor__controls button,
.editor__controls input[type="submit"],
.editor__controls .init-recaptcha {
  transition: none;
  box-shadow: none;
  transform: none;
}
.editor__controls .btn:hover,
.editor__controls button:hover,
.editor__controls input[type="submit"]:hover,
.editor__controls .init-recaptcha:hover {
  transition: none;
  box-shadow: none;
  transform: none;
}
.editor__controls .btn:focus,
.editor__controls button:focus,
.editor__controls input[type="submit"]:focus,
.editor__controls .init-recaptcha:focus,
.editor__controls .btn:active,
.editor__controls button:active,
.editor__controls input[type="submit"]:active,
.editor__controls .init-recaptcha:active {
  transition: none;
  box-shadow: none;
  transform: none;
}
/* ============================================
   FONT TESTER - Minimal overrides
   ============================================ */

/* Non-fit mode: allow text wrapping for paragraphs */
#tester .fit-block[data-fit="0"] .fit-block__text {
  white-space: pre-wrap;
  word-break: break-word;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  display: block;
  width: 100%;
  min-width: 0;
}

/* Optional: split tester text into 2 columns (admin setting) */
#tester
  .fit-block.is-two-columns.is-two-columns-active[data-fit="0"]
  .fit-block__text {
  column-count: 2;
  column-gap: 48px;
  column-fill: balance;
}

/* Font tester header alignment */
#tester .font-info {
  justify-content: flex-start;
  margin-left: 0;
  opacity: 1;
  transition: opacity 0.18s ease 0.18s;
}
#tester .font-info__item--edit {
  left: 0;
  transform: none;
}

/* Hover CTA color on full tester item */
#tester .font-list__item--edit:hover .fit-block__text,
#tester .font-list__item--edit:hover .font-info__title,
#tester .font-list__item--edit:hover .font-info__title--alt {
  color: var(--accent-color, #613afb);
}

#tester .font-list__item--edit:not(:hover) .fit-block__text,
#tester .font-list__item--edit:not(:hover) .font-info__title,
#tester .font-list__item--edit:not(:hover) .font-info__title--alt {
  color: inherit;
}

#tester .font-list__item--edit.is-editing .fit-block__text,
#tester .font-list__item--edit.is-editing .font-info__title,
#tester .font-list__item--edit.is-editing .font-info__title--alt {
  color: #000;
}

/* When editing: keep font title visible under controls, but hide "click to edit" */
#tester .is-editing .font-info {
  visibility: visible;
}
#tester .is-editing .font-info__item--edit {
  display: none;
}

/* Avoid overlap: when controls are visible (hover), hide font-info */
#tester .js-edit.is-editing:hover .font-info {
  opacity: 0;
  pointer-events: none;
  transition-delay: 0s;
}

/* Fix editor controls - left aligned, no extra margin */
#tester .editor__controls {
  justify-content: flex-start;
}

/* Hide edit controls when mouse is not over tester */
#tester .js-edit.is-editing .editor.js-editor-bar {
  pointer-events: none;
}
#tester .js-edit.is-editing .editor__controls {
  opacity: 0;
  pointer-events: none;
  transform: none;
  transition: opacity 0.18s ease;
}

#tester .js-edit.is-editing:hover .editor.js-editor-bar {
  pointer-events: auto;
}
#tester .js-edit.is-editing:hover .editor__controls {
  opacity: 1;
  pointer-events: auto;
  transition-delay: 0.18s;
  transition-duration: 0.32s;
}

/* Touch devices: no hover, keep controls available while editing */
@media (hover: none) {
  #tester .js-edit.is-editing .editor.js-editor-bar {
    pointer-events: auto;
  }
  #tester .js-edit.is-editing .editor__controls {
    opacity: 1;
    pointer-events: auto;
  }
  #tester .js-edit.is-editing .font-info {
    opacity: 0;
    pointer-events: none;
  }
}

/* Keep original font-block/fit-block sizing */

/* Prevent vertical "jump" when wrapping/editing: grow only downward */
#tester .fit-block {
  align-items: flex-start;
}

/* Remove padding on fit-block__text when editing */
#tester .is-editing .fit-block__text,
#tester .is-edited .fit-block__text {
  padding-top: 0;
  padding-bottom: 0;
  transition: none;
}

/* Constrain text width during editing to prevent overflow */
#tester .is-editing .fit-block.is-fit-mode .fit-block__text {
  max-width: 100%;
  width: 100%;
  box-sizing: border-box;
  overflow-wrap: break-word;
  word-wrap: break-word;
  white-space: pre-wrap;
}

/* Remove default (all.min.css) spacing under tester text */
#tester .fit-block__text {
  margin-bottom: 0;
}

/* Keep original editor positioning (absolute overlay) */

/* Keep pasted content from introducing tiny font sizes */
#tester .fit-block__text *,
#tester .fit-block__text *::before,
#tester .fit-block__text *::after {
  font-size: inherit !important;
  line-height: inherit !important;
  font-family: inherit !important;
}

/* Editor alignment: show active state */
.editor__btn.align_icon.is-active {
  color: var(--accent-color, #613afb);
}
.editor__btn.align_icon.is-active .icon {
  fill: var(--accent-color, #613afb);
}

/* Contrast button - change text to accent color (override defaults from all.min.css) */
.js-edit.is-editing--contrast,
.font-list__item.is-editing--contrast {
  background-color: transparent;
  color: inherit;
}
.is-editing--contrast .editor__btn {
  color: inherit;
}
.is-editing--contrast .editor__btn .icon {
  fill: currentColor;
}
/* Override the .is-editing--contrast .editor { color: #fff } from all.min.css */
.is-editing--contrast .editor {
  color: inherit;
}
.is-editing--contrast .editor .icon {
  fill: #000;
}
/* Keep slider unchanged in contrast mode - override all.min.css rules */
.is-editing--contrast .noUi-target:before {
  background-color: #222;
}
.is-editing--contrast .noUi-handle:before {
  background-color: #000;
}

/* Alternating tester colors - every other one uses accent (disabled by .no-alternate-colors class) */
#tester:not(.no-alternate-colors)
  .font-list__item--edit:nth-child(even)
  .fit-block__text {
  color: var(--accent-color, #613afb);
}
/* When contrast is toggled on alternating testers, toggle the color */
#tester:not(.no-alternate-colors)
  .font-list__item--edit:nth-child(even).is-editing--contrast
  .fit-block__text {
  color: #000;
}
/* When contrast is toggled on normal testers, show accent */
#tester:not(.no-alternate-colors)
  .font-list__item--edit:nth-child(odd).is-editing--contrast
  .fit-block__text {
  color: var(--accent-color, #613afb);
}
/* When alternate colors are disabled, contrast toggle shows accent on any row */
#tester.no-alternate-colors
  .font-list__item--edit.is-editing--contrast
  .fit-block__text {
  color: var(--accent-color, #613afb);
}

/* ============================================
   FONT EDITOR IMPROVEMENTS (Ohno Type style)
   ============================================ */

/* Editor controls form */
.editor__controls {
  padding-bottom: 8px;
  border-bottom: 0;
}

/* Hide editor controls until hover (desktop) */
.non-touch .js-edit.is-editing .editor.js-editor-bar {
  pointer-events: none;
}
.non-touch .js-edit.is-editing:hover .editor.js-editor-bar {
  pointer-events: auto;
}
.non-touch .js-edit.is-editing .editor__controls {
  opacity: 0;
  transform: none;
  transition: opacity 0.18s ease;
}
.non-touch .js-edit.is-editing:hover .editor__controls {
  opacity: 1;
  transform: none;
  transition: opacity 0.18s ease;
  transition-delay: 0.18s;
  transition-duration: 0.32s;
}

/* Features button wrapper - needs relative positioning for dropdown */
.editor__controls-item--features-wrap {
  position: relative;
}

/* Features button - match cart dropdown styling */
#tester .editor__controls .js-font-features-open,
#tester .editor__controls .btn--smaller.btn--light {
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  color: rgba(0, 0, 0, 0.64);
  height: 32px;
  min-height: 32px;
  padding: 4px 12px;
  font-size: 16px;
  font-weight: 300;
  text-transform: none;
  letter-spacing: normal;
  line-height: 24px;
  box-shadow: none;
}

#tester .editor__controls .js-font-features-open:hover,
#tester .editor__controls .btn--smaller.btn--light:hover {
  background: #fff;
  color: rgba(0, 0, 0, 0.64);
}

/* Features panel - simple dropdown with no rounded corners */
.editor__controls-group--features {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: block;
  columns: 2;
  column-gap: 24px;
  background: #fff;
  border: 1px solid #000;
  border-radius: 0;
  padding: 12px 16px;
  margin-top: 8px;
  width: fit-content;
  min-width: 0;
  max-width: calc(100vw - 32px);
  max-height: 400px;
  overflow-y: auto;
  overflow-x: hidden;
}
.editor__controls-group--features[style*="display: none"] {
  display: none !important;
}
.is-editing--contrast .editor__controls-group--features {
  background: #222;
  border-color: #fff;
  color: #fff;
}
/* Features lists: all lists flow together in parent's 2 columns */
.editor__controls-group--features .fe-list {
  display: block;
  list-style: none;
  margin: 0;
  padding: 0;
  position: relative;
  float: none;
  clear: none;
  width: 100%;
  break-inside: avoid-column;
}
.editor__controls-group--features .fe-list:empty {
  display: none;
}
.editor__controls-group--features .fe-list--wide {
  display: block;
  width: 100%;
  float: none;
  break-inside: avoid-column;
}
.editor__controls-group--features .fe-list__item {
  display: block;
  padding: 4px 0;
  margin-right: 0;
  float: none;
  clear: none;
  width: auto;
  box-sizing: border-box;
  break-inside: avoid-column;
}
.editor__controls-group--features .fe-list__item label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  font-size: 14px;
  width: 100%;
  min-width: 0;
}
/* Custom checkbox styling */
.editor__controls-group--features .check-radio__input {
  display: inline-block;
  position: relative;
  width: 16px;
  height: 16px;
  opacity: 1;
  visibility: visible;
  margin: 0;
  flex-shrink: 0;
  -webkit-appearance: none;
  appearance: none;
  border: 1px solid #000;
  border-radius: 0;
  background: #fff;
  cursor: pointer;
}
.editor__controls-group--features .check-radio__input:checked {
  background: #000;
  position: relative;
}
.editor__controls-group--features .check-radio__input:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 14' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 7.5 L8.2 13 L18 1'/%3E%3C/svg%3E")
    center/12px 9px no-repeat;
}
/* Contrast mode checkbox */
.is-editing--contrast .editor__controls-group--features .check-radio__input {
  border-color: #fff;
  background: transparent;
}
.is-editing--contrast
  .editor__controls-group--features
  .check-radio__input:checked {
  background: #fff;
}
.is-editing--contrast
  .editor__controls-group--features
  .check-radio__input:checked::after {
  color: #000;
}
.editor__controls-group--features .check-radio__element {
  padding: 0;
  min-width: 0;
  white-space: nowrap;
}
.editor__controls-group--features .check-radio__element::before,
.editor__controls-group--features .check-radio__element::after {
  display: none;
}

/* ========================================
   OpenType Features Panel
======================================== */

.opentype-features-panel {
  display: block;
  background: transparent;
  padding: 0 0 3rem;
  margin-left: 5em;
  margin-right: 5em;
}

.opentype-features-title {
  font-size: 1.5rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  margin: 0 0 1rem;
}

.opentype-features-panel .wrapper {
  border-top: 0;
  border-bottom: 0;
  padding-top: 0;
  padding-bottom: 0;
}

.opentype-features-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 1.5rem;
}

.opentype-feature-item {
  display: flex;
  flex-direction: column;
  background: #ffffff55;
  border: 0px solid #000;
  transition:
    box-shadow 0.2s ease,
    background-color 0.2s ease;
}

.opentype-feature-item:hover {
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.3);
  background-color: rgba(0, 0, 0, 0.015);
}

.opentype-feature-sample {
  font-size: 3.4rem;
  line-height: 1.3;
  user-select: none;
  min-height: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  text-align: center;
  transition: font-feature-settings 0.2s ease;
}

.opentype-feature-sample .sample-text {
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;
}

/* Toggle control area below sample */
.opentype-feature-control {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  padding: 0.75rem 1rem;
  background: transparent;
  border-top: 2px dashed #d4d4d4;
}

.opentype-feature-name {
  font-size: 0.875rem;
  font-weight: 500;
  color: #1a1a2e;
}

.opentype-feature-code {
  font-size: 0.75rem;
  color: #888;
  margin-left: auto;
  font-weight: 400;
}

/* Toggle Switch */
.opentype-toggle {
  position: relative;
  display: inline-block;
  width: 32px;
  height: 18px;
  flex-shrink: 0;
}

.opentype-toggle__input {
  opacity: 0;
  width: 0;
  height: 0;
}

.opentype-toggle__slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #ccc;
  transition: 0.25s;
  border-radius: 18px;
}

.opentype-toggle__slider:before {
  position: absolute;
  content: "";
  height: 12px;
  width: 12px;
  left: 3px;
  bottom: 3px;
  background-color: white;
  transition: 0.25s;
  border-radius: 50%;
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.opentype-toggle__input:checked + .opentype-toggle__slider {
  background-color: var(--accent-color, #613afb);
}

.opentype-toggle__input:checked + .opentype-toggle__slider:before {
  transform: translateX(14px);
}

/* Feature highlight/muted color system */
.opentype-feature-item .feature-highlight {
  color: var(--accent-color, #613afb);
  transition: color 0.2s ease;
}
.opentype-feature-item.feature-on .feature-highlight {
  color: var(--accent-color, #613afb);
}

.opentype-feature-item .feature-muted {
  color: #1a1a2e;
  transition: color 0.2s ease;
}

/* When feature is OFF - keep colors visible */
.opentype-feature-item:not(.feature-on) .feature-highlight {
  color: var(--accent-color, #613afb);
}

.opentype-feature-item:not(.feature-on) .feature-muted {
  color: #a0a0a8;
}

/* Responsive: 2 columns on tablet */
@media (max-width: 900px) {
  .opentype-features-list {
    grid-template-columns: repeat(2, 1fr);
  }

  .opentype-feature-sample {
    font-size: 2.25rem;
    min-height: 140px;
  }
}

/* Responsive: 1 column on mobile */
@media (max-width: 600px) {
  .opentype-features-list {
    grid-template-columns: 1fr;
  }

  .opentype-feature-sample {
    font-size: 2rem;
    min-height: 120px;
    padding: 1.25rem;
  }

  .opentype-feature-control {
    padding: 0.75rem 1rem;
  }
}

/* Font tester Select2 - match cart dropdown styling */
#tester .editor__controls .select2-container--stx .select2-selection--single {
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  box-shadow: none;
  font-size: 16px;
  height: 32px;
  min-height: 32px;
  outline: 0;
  font-weight: 300;
}
#tester
  .editor__controls
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  color: rgba(0, 0, 0, 0.64);
  line-height: 24px;
  padding: 4px 32px 4px 12px;
  border-radius: 0;
  background: transparent;
}
#tester
  .editor__controls
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow {
  height: 100%;
  position: absolute;
  top: 2px;
  right: 6px;
  width: 24px;
  color: #000;
}
#tester
  .editor__controls
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: currentColor transparent transparent;
  border-style: solid;
  border-width: 0.4em 0.3em 0;
  height: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  width: 0;
}
#tester
  .editor__controls
  .select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  font-weight: 300;
  color: rgba(0, 0, 0, 0.64);
}
#tester
  .editor__controls
  .select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-width: 0.4em 0.3em 0;
  border-left-color: transparent;
  border-top-color: currentColor;
  border-bottom: 0;
  border-right-color: transparent;
  width: 0;
  height: 0;
  transform: translate(-50%, -50%);
}

/* Contrast mode - weight dropdown */
.is-editing--contrast
  .editor__controls
  .select2-container--default
  .select2-selection--single {
  border-color: #fff;
  background: transparent;
}
.is-editing--contrast
  .editor__controls
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #fff;
}
.is-editing--contrast
  .editor__controls
  .select2-container--default
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-color: #fff transparent transparent transparent;
}

/* Font title with weight span */
.font-info__item .js-font-weight-label {
  font-weight: inherit;
  display: inline-block;
  margin-left: 10px;
}

/* Align header with product rows */
.flex-table__row--header .flex-table__col--nested {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1rem;
  padding: 0;
}

/* Header grow column matches dropdown group width */
.flex-table__row--header .flex-table__col--grow {
  flex: 0 0 420px;
  width: 420px;
}

.flex-table__row--header .flex-table__col--price,
.flex-table__row--header .flex-table__col--remove {
  padding: 0 0 8px 0;
}

.flex-table__row--header .flex-table__col--remove {
  width: 6em;
  flex: 0 0 6em;
  display: flex;
  justify-content: center;
  align-items: center;
}

/* Align subtotal/VAT/discount/total rows with product rows */
.flex-table__row--smaller .flex-table__col--nested {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  padding: 0;
}

/* Let grow column expand, just ensure price and remove match item rows */
.flex-table__row--smaller .flex-table__col--grow {
  flex: 1 1 auto;
  text-align: right;
}

.flex-table__row--smaller .flex-table__col--remove {
  width: 6em;
  flex: 0 0 6em;
}

.flex-table__row--smaller .flex-table__value--small {
  font-size: clamp(1.3em, 1.8vw, 1.3rem);
  font-weight: 300;
}

/* Cart: responsive layout under 1100px */
@media (max-width: 1100px) {
  /* Item rows: stack vertically */
  .flex-table__row.js-ff-item {
    flex-wrap: wrap;
  }
  /* Font name takes full width */
  .js-ff-item > .flex-table__col--50:first-child {
    flex: 1 1 100%;
    max-width: 100%;
    padding-bottom: 0.5rem;
  }
  /* Nested container takes full width, right-align contents */
  .js-ff-item > .flex-table__col--50.flex-table__col--nested {
    flex: 1 1 100%;
    max-width: 100%;
    justify-content: flex-end;
  }

  /* Dropdown group: let it shrink but stay right-aligned */
  .js-ff-item .js-purchase-option-group {
    width: auto;
    min-width: auto;
    flex: 0 1 auto;
    justify-content: flex-end;
  }

  /* Dropdowns: slightly smaller */
  .js-ff-item .js-purchase-option {
    flex: 0 0 105px;
    width: 105px;
  }
  .js-ff-item .js-purchase-option.js-purchase-option--app {
    flex: 0 0 75px;
    width: 75px;
  }

  /* Price column - fixed width, right-aligned text */
  .flex-table__col--price {
    flex: 0 0 100px;
    width: 100px;
    min-width: 100px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  /* Remove column - must be wide enough for circular button */
  .flex-table__col--remove {
    flex: 0 0 55px;
    width: 55px;
    min-width: 55px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  /* Ensure remove button stays circular */
  .flex-table__col--remove .remove-btn {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    flex-shrink: 0;
    font-size: 14px;
  }

  /* Header row adjustments */
  .flex-table__row--header .flex-table__col--grow {
    flex: 1 1 auto;
    width: auto;
  }
  .flex-table__row--header .flex-table__col--nested {
    gap: 0.5rem;
  }

  /* Subtotal rows: price aligned with items */
  .flex-table__row--smaller .flex-table__col--grow {
    flex: 1 1 auto;
    width: auto;
    text-align: right;
  }
  .flex-table__row--smaller .flex-table__col--nested {
    gap: 0;
  }
}

/* Cart: responsive layout under 812px - dropdowns stack */
@media (max-width: 812px) {
  /* Item rows: stack font name and controls */
  .flex-table__row.js-ff-item {
    flex-wrap: wrap;
  }
  .js-ff-item > .flex-table__col--50:first-child {
    flex: 1 1 100%;
    max-width: 100%;
    padding-bottom: 0.5rem;
  }
  .js-ff-item > .flex-table__col--50.flex-table__col--nested {
    flex: 1 1 100%;
    max-width: 100%;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  /* Dropdown group: wrap to multiple lines */
  .js-ff-item .js-purchase-option-group {
    width: 100%;
    min-width: auto;
    flex: 1 1 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
  }

  /* Dropdowns: smaller for narrow screens */
  .js-ff-item .js-purchase-option {
    flex: 0 0 calc(50% - 0.25rem);
    width: calc(50% - 0.25rem);
    max-width: 150px;
  }
  .js-ff-item .js-purchase-option.js-purchase-option--app {
    flex: 0 0 calc(50% - 0.25rem);
    width: calc(50% - 0.25rem);
    max-width: 100px;
  }

  /* Price column - right-aligned */
  .js-ff-item .flex-table__col--price,
  .flex-table__row--header .flex-table__col--price,
  .flex-table__row--smaller .flex-table__col--price {
    flex: 0 0 100px;
    width: 100px;
    min-width: 100px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }

  /* Remove column - wide enough for circular button */
  .js-ff-item .flex-table__col--remove,
  .flex-table__row--header .flex-table__col--remove,
  .flex-table__row--smaller .flex-table__col--remove {
    flex: 0 0 50px;
    width: 50px;
    min-width: 50px;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  /* Ensure remove button stays circular */
  .flex-table__col--remove .remove-btn {
    width: 32px;
    height: 32px;
    min-width: 32px;
    min-height: 32px;
    flex-shrink: 0;
    font-size: 14px;
  }

  /* Header row */
  .flex-table__row--header .flex-table__col--grow {
    display: none;
  }
  .flex-table__row--header .flex-table__col--nested {
    flex: 1 1 auto;
    justify-content: flex-end;
    gap: 0;
  }

  /* Subtotal rows: hide empty col, align price/remove with items */
  .flex-table__row--smaller .flex-table__col--50:first-child:empty {
    display: none;
  }
  .flex-table__row--smaller .flex-table__col--nested {
    flex: 1 1 100%;
    justify-content: flex-end;
    gap: 0;
  }
  .flex-table__row--smaller .flex-table__col--grow {
    flex: 1 1 auto;
    text-align: right;
    padding-right: 1rem;
  }
}

@media (max-width: 540px) {
  /* Dropdown group: back to column layout */
  .js-ff-item .js-purchase-option-group {
    flex-direction: column;
    gap: 0.3em;
  }

  /* Smaller mobile: dropdowns full width */
  .js-ff-item .js-purchase-option,
  .js-ff-item .js-purchase-option.js-purchase-option--app {
    flex: 1 1 100%;
    width: 100%;
    max-width: none;
    min-width: auto;
  }

  /* Price and remove columns - narrower */
  .js-ff-item .flex-table__col--price,
  .flex-table__row--header .flex-table__col--price,
  .flex-table__row--smaller .flex-table__col--price {
    flex: 0 0 70px;
    width: 70px;
    min-width: 70px;
  }
  .js-ff-item .flex-table__col--remove,
  .flex-table__row--header .flex-table__col--remove {
    flex: 0 0 40px;
    width: 40px;
    min-width: 40px;
  }

  /* Hide remove column in subtotal rows on small mobile */
  .flex-table__row--smaller .flex-table__col--remove {
    display: none;
  }
}

/* ============================================
   Notification Icon & Stacking Fix
   ============================================ */

/* Main notification icon (success/error/info checkmark or X) */
.notification > svg.notification__icon {
  width: 1.5em;
  height: 1.5em;
  flex-shrink: 0;
  fill: currentColor;
}

.notification > svg.notification__icon use {
  fill: inherit;
}

/* Ensure notification type colors apply to main icons */
.notification--success > svg.notification__icon {
  color: #26c676;
  fill: #26c676;
}

.notification--error > svg.notification__icon {
  color: #b90d0d;
  fill: #b90d0d;
}

.notification--info > svg.notification__icon {
  color: #6b81ef;
  fill: #6b81ef;
}

.notification--warning > svg.notification__icon {
  color: #ec7a09;
  fill: #ec7a09;
}

/* Close button styling */
.notification__close {
  width: 1.5em;
  height: 1.5em;
  min-width: 24px;
  min-height: 24px;
  background-color: transparent;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}

.notification__close .notification__icon {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}

.notification__close .icon,
.notification__close svg.icon {
  width: 24px;
  height: 24px;
  fill: #000;
}

.notification__close .icon use,
.notification__close svg.icon use {
  fill: inherit;
}

.non-touch .notification__close:hover {
  background-color: transparent;
}

.non-touch .notification__close:hover .icon,
.non-touch .notification__close:hover svg.icon {
  fill: var(--accent-color, #613afb);
}

.notification__close .icon--24x24 {
  width: 1.3rem;
  height: 1.3rem;
  padding-left: 0px;
}

/* Notification stacking limit - hide excess notifications beyond 3 */
.notification-box .notification:nth-child(n + 4):not(.is-closed) {
  display: none;
}

/* Purchase total and button styling */
.btn--big {
  font-size: 1.5rem;
}

.purchase-total {
  padding: 0.25rem;
}

/* Character map split view (popup) */
.character-map-panel__grid {
  display: grid;
  gap: 0.75rem;
}

@media (min-width: 768px) {
  .character-map-panel__grid {
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    min-height: 0;
  }
}

.character-map-panel__list,
.character-map-panel__preview {
}

.character-map-panel__list {
  padding: 0rem 1rem 0rem 0rem;
  max-height: 67vh;
  overflow: auto;
  margin-right: -14px;
}

.character-map-panel__sections {
  display: grid;
  gap: 1.5rem;
}

.character-map-section__title {
  padding: 0.6rem 0.75rem;
  font-size: 1.1rem;
  font-family: Typedepot, monospace;
  text-transform: lowercase;
  letter-spacing: 0.12em;
  font-weight: 700;
}

.character-map-section .character-map {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(5.25rem, 1fr));
  gap: 0;
  font-size: 2.8rem;
  justify-content: start;
}

.character-map-panel__preview {
  min-height: 45vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}

.character-map-panel .character-map li {
  cursor: pointer;
  transition:
    background-color 1040ms ease,
    color 1040ms ease,
    box-shadow 140ms ease;
  width: auto;
  height: 5.25rem;
  margin: 0;
  padding: 0;
  background: #efeee5;
  color: #000;
  border: 1px solid #d9d9d9;
  align-items: center;
  justify-content: center;
}

.character-map-panel .character-map li.is-active,
.non-touch .character-map-panel .character-map li:hover {
  background: #fff;
  color: #000;
}

html:not(.theme-dark) .character-map-panel .character-map li:hover,
html:not(.theme-dark) .character-map-panel .character-map li.is-active:hover {
  background: #e4e4e4;
  color: #000;
  border-color: #cfcfcf;
}

.character-map-panel .character-map li:focus-visible,
.character-map-panel .character-map li.is-active {
  outline: none;
  box-shadow: none;
}

.character-map-preview {
  width: 100%;
  text-align: center;
  display: block;
}

.character-map-preview__stage {
  width: 100%;
  max-width: min(122vh, 100%);
  aspect-ratio: 1 / 1;
  margin: 0 auto;
  position: relative;
  container-type: inline-size;
  /* Defaults (overridden from font metrics) */
  --cm-capheight: 28%;
  --cm-xheight: 48%;
  --cm-baseline: 72%;
}

/* Popup sizing tweaks to avoid container scrolling */
.popup[data-popup="popup-1"] .popup__content {
  padding: 0.75em;
}

.popup[data-popup="popup-1"] .popup__container {
  overflow-y: hidden;
}

.character-map-preview__guides {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.character-map-preview__guide {
  position: absolute;
  left: 0;
  right: 0;
  border-top: 1px dashed rgba(0, 0, 0, 0.35);
}

.character-map-preview__guide::after {
  content: attr(data-label);
  position: absolute;
  left: 0.75rem;
  top: 0;
  transform: translateY(-55%);
  font-family: Typedepot, monospace;
  font-size: 0.8rem;
  letter-spacing: 0.08em;
  background: rgba(255, 255, 255, 0.85);
  padding: 0.1rem 0.35rem;
}

.character-map-preview__guide--cap {
  top: var(--cm-capheight);
}

.character-map-preview__guide--x {
  top: var(--cm-xheight);
}

.character-map-preview__guide--base {
  top: var(--cm-baseline);
}

.character-map-preview__glyph {
  color: rgba(0, 0, 0, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  line-height: 1;
}

.character-map-preview__svg {
  width: 100%;
  height: 100%;
}

.character-map-preview__meta {
  font-family:
    ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
    "Courier New", monospace;
  font-size: 0.95rem;
  opacity: 0.7;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.75rem;
  text-align: center;
  pointer-events: none;
}

/* Inline character-set section: sticky preview + scrollable glyph list */
#character-set {
  --character-set-sticky-top: 6rem;
  --character-set-sticky-bottom: 6rem;
}

#character-set .character-map-panel {
  opacity: 1;
  transition: opacity 0.22s ease;
}

#character-set.character-set--loading .character-map-panel {
  opacity: 0;
}

#character-set.character-set--loading .character-map-panel__list,
#character-set.character-set--loading .character-map-panel__preview {
  pointer-events: none;
}

#character-set .character-map-panel__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1.25rem;
  align-items: start;
  margin: 5em 0 2em 0;
}

#character-set .character-map-panel__list {
  height: auto;
  max-height: none;
  overflow: visible;
  margin-right: 0;
  padding-right: 0.5rem;
}

#character-set .character-map-panel__preview {
  position: sticky;
  top: var(--character-set-sticky-top);
  align-self: start;
  height: calc(100vh - var(--character-set-sticky-top) - var(--character-set-sticky-bottom));
  min-height: calc(100vh - var(--character-set-sticky-top) - var(--character-set-sticky-bottom));
  max-height: calc(100vh - var(--character-set-sticky-top) - var(--character-set-sticky-bottom));
  overflow: hidden;
}

#character-set .character-map-preview {
  box-sizing: border-box;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #efeee5;
}

#character-set .character-map-preview__stage {
  max-width: min(
    calc(100% - 1.5rem),
    calc(100vh - var(--character-set-sticky-top) - var(--character-set-sticky-bottom) - 1.5rem)
  );
}

@media (max-width: 767px) {
  #character-set .character-map-panel__grid {
    grid-template-columns: 1fr;
  }

  #character-set .character-map-panel__list {
    height: auto;
    max-height: none;
  }

  #character-set .character-map-panel__preview {
    position: static;
    height: auto;
    min-height: auto;
    max-height: none;
  }
}

/* ============================================
   LICENSE TABS PAGE
   ============================================ */

.license-page {
  padding: 4rem 0;
}

.license-page__header {
  margin-bottom: 3rem;
  text-align: left;
}

.license-page__title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 700;
  margin: 0 0 1rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.license-page__intro {
  max-width: none;
  margin: 0;
  font-size: 21px;
  font-weight: 300;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.8);
  column-count: 2;
  column-gap: 3rem;
}

@media (max-width: 768px) {
  .license-page__intro {
    column-count: 1;
  }
}

/* License Tabs - Vertical Layout */
.license-tabs {
  margin-bottom: 5rem;
}

.license-tabs--vertical {
  display: grid;
  grid-template-columns: 290px 1fr;
  gap: 3rem;
}

.license-tabs--vertical .license-tabs__nav {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-bottom: none;
  border-right: 2px solid #000;
  padding-right: 0;
  position: sticky;
  top: 120px;
  align-self: start;
  align-items: flex-end;
  text-align: right;
}

.license-tabs--vertical .license-tabs__tab {
  padding: 0.75rem 1.5rem 0.75rem 0;
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: transparent;
  border: none;
  border-right: 3px solid transparent;
  margin-right: -2px;
  margin-bottom: 0;
  cursor: pointer;
  transition:
    color 0.2s ease,
    border-color 0.2s ease;
  color: rgba(0, 0, 0, 0.5);
  text-align: right;
  width: 100%;
}

.license-tabs--vertical .license-tabs__tab:hover {
  color: #000;
}

.license-tabs--vertical .license-tabs__tab.is-active {
  color: #000;
  border-right-color: #000;
}

.license-tabs__subnav {
  display: none;
  flex-direction: column;
  gap: 0;
  margin: 0 0 1.5rem;
  padding: 0;
}

.license-tabs__subnav.is-active {
  display: flex;
}

.license-tabs__sublink {
  display: block;
  font-size: 1.3rem;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0.02em;
  color: rgba(0, 0, 0, 0.6);
  text-decoration: none;
  padding: 0.75rem 1.5rem 0.75rem 0;
  text-align: right;
  width: 100%;
}

.license-tabs__sublink:hover {
  color: #000;
}

.license-tabs--vertical .license-tabs__panels {
  padding-top: 0;
}

.license-tabs__panel {
  display: none;
}

.license-tabs__panel.is-active {
  display: block;
  animation: fadeIn 0.3s ease;
}

/* Responsive - stack on mobile */
@media (max-width: 768px) {
  .license-tabs--vertical {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .license-tabs--vertical .license-tabs__nav {
    flex-direction: row;
    flex-wrap: wrap;
    border-right: none;
    border-bottom: 2px solid #000;
    padding-right: 0;
    padding-bottom: 0;
    position: static;
  }

  .license-tabs--vertical .license-tabs__tab {
    border-right: none;
    border-bottom: 3px solid transparent;
    margin-right: 0;
    margin-bottom: -2px;
    padding: 0.75rem 1rem;
  }

  .license-tabs--vertical .license-tabs__tab.is-active {
    border-right-color: transparent;
    border-bottom-color: #000;
  }

  .license-tabs__subnav {
    flex-basis: 100%;
    margin: 0.5rem 0 1rem;
  }
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* License Content */
.license-content__title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 1.5rem;
}

.license-content__body {
  font-size: 1.125rem;
  line-height: 1.7;
}

.license-content__body h3,
.license-content__body h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.license-content__body ul,
.license-content__body ol {
  margin: 1rem 0;
  padding-left: 1.5rem;
}

.license-content__body li {
  margin-bottom: 0.5rem;
}

.license-content__empty {
  color: rgba(0, 0, 0, 0.5);
  font-style: italic;
}

.license-content__download {
  margin-top: 2rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

/* FAQ Section */
.license-faq {
  padding-top: 0;
}

.license-faq__layout {
  display: grid;
  grid-template-columns: 290px 1fr;
  gap: 4rem;
  align-items: start;
}

.license-faq__sidebar {
  position: sticky;
  top: 100px;
  text-align: right;
  border-right: 2px solid #000;
  padding-right: 1rem;
}

.license-faq__sidebar-title {
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin: 0 0 1.5rem;
  color: rgba(0, 0, 0, 0.5);
  text-align: right;
}

.license-faq__nav {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: flex-end;
}

.license-faq__nav-link {
  font-size: 1rem;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.7);
  text-decoration: none;
  padding: 0.5rem 1rem 0.5rem 0;
  border-right: 2px solid transparent;
  transition:
    color 0.2s ease,
    border-color 0.2s ease;
  text-align: right;
}

.license-faq__nav-link:hover {
  color: #000;
}

.license-faq__nav-link.is-active {
  color: #000;
  border-right-color: #000;
  font-weight: 500;
}

.license-faq__content {
  min-width: 0;
}

.license-faq__title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 2rem;
}

.license-faq__list {
  display: flex;
  flex-direction: column;
  gap: 3rem;
}

.license-faq__item {
  scroll-margin-top: 100px;
}

.license-faq__question {
  font-size: 21px;
  font-weight: 600;
  margin: 0 0 1rem;
  line-height: 1.3;
}

.license-faq__answer {
  font-size: 21px;
  line-height: 1.5;
  color: rgba(0, 0, 0, 0.8);
}

.license-faq__answer p {
  margin: 0 0 1rem;
}

.license-faq__answer p:last-child {
  margin-bottom: 0;
}

/* Responsive */
@media (max-width: 1024px) {
  .main-content .license-page > .wrapper,
  .main-content .license-page .wrapper {
    padding-left: clamp(2rem, 4vw, 3rem);
    padding-right: clamp(2rem, 4vw, 3rem);
  }

  .license-faq__layout {
    grid-template-columns: 290px 1fr;
    gap: 2rem;
  }

  .license-content__title,
  .license-faq__title {
    font-size: clamp(1.85rem, 4.5vw, 2.4rem);
  }
}

@media (max-width: 768px) {
  .license-page {
    padding: 2rem 0;
  }

  .license-tabs__nav {
    flex-direction: column;
    border-bottom: none;
    gap: 0;
  }

  .license-tabs__tab {
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    border-left: 3px solid transparent;
    margin-bottom: 0;
    text-align: left;
    padding: 1rem;
  }

  .license-tabs__tab.is-active {
    border-bottom-color: rgba(0, 0, 0, 0.1);
    border-left-color: #000;
    background: rgba(0, 0, 0, 0.02);
  }

  .license-faq__layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .license-faq__sidebar {
    position: static;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
    padding-bottom: 1.5rem;
  }

  .license-faq__nav {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .license-faq__nav-link {
    border-left: none;
    padding-left: 0;
    padding: 0.5rem 1rem;
    background: rgba(0, 0, 0, 0.05);
    border-radius: 4px;
    font-size: 0.875rem;
  }

  .license-faq__nav-link.is-active {
    background: #000;
    color: #fff;
  }

  .license-faq__question {
    font-size: 1.25rem;
  }

  .license-faq__answer {
    font-size: 1rem;
  }

  .main-content .license-page > .wrapper,
  .main-content .license-page .wrapper {
    padding-left: 2em;
    padding-right: 2em;
  }
}

/* News Article Page - Vertical Layout */
.news-article {
  padding: 4rem 0;
}

.news-article__layout {
  display: grid;
  grid-template-columns: minmax(14rem, 290px) minmax(0, 1fr);
  gap: clamp(2rem, 3vw, 3rem);
  margin-left: clamp(2rem, 6vw, 8em);
  margin-right: clamp(2rem, 6vw, 8em);
}

.news-article__sidebar {
  border-right: 2px solid #000;
  padding-right: 2rem;
  text-align: right;
  position: sticky;
  top: 120px;
  align-self: start;
}

.news-article__sidebar .header-block__title {
  font-size: clamp(1.75rem, 3.5vw, 3.5rem);
  text-transform: none;
}

.news-article__sidebar .header-block__title a {
  text-transform: none;
}

.news-article__title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 1.5rem 0;
  text-align: right;
}

.news-article__meta {
  margin-bottom: 2rem;
  text-align: right;
}

.news-article__meta-label {
  display: block;
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(0, 0, 0, 0.5);
  margin-bottom: 0.75rem;
}

.news-article__meta-value {
  display: block;
  font-size: 1rem;
  font-weight: 500;
  color: #000;
}

.news-article__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  justify-content: flex-end;
}

.news-article__tag {
  display: inline-block;
  font-size: 1.2em;
  font-weight: 300;
  color: #000;
  text-decoration: none;
  line-height: 1;
  border-radius: 20px;
  border: 2px solid black;
  padding: 0.4em 0.923em;
  background: #f5f5f5;
  transition:
    border-color 0.3s ease,
    color 0.3s ease,
    background-color 0.3s ease;
}

.news-article__tag:hover {
  border-color: var(--accent-color, #613afb);
  color: #fff;
  background: var(--accent-color, #613afb);
}

.news-article__content {
  font-size: clamp(1.25rem, 1.6vw, 1.6rem);
  line-height: 1.55;
}

.news-article__content h2,
.news-article__content h3,
.news-article__content h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.news-article__content p {
  margin-bottom: 1.5rem;
}

.news-article__content img {
  max-width: 100%;
  height: auto;
  margin: 2rem 0;
}

@media (max-width: 1200px) {
  .section--news-slider .wrapper,
  .news-article > .wrapper {
    padding-left: clamp(2rem, 3.5vw, 3rem);
    padding-right: clamp(2rem, 3.5vw, 3rem);
  }

  .news-article__layout {
    margin-left: 0;
    margin-right: 0;
  }
}

@media (max-width: 1024px) {
  .news-article {
    padding: 3rem 0;
  }

  .news-article__layout {
    grid-template-columns: minmax(13rem, 15.5rem) minmax(0, 1fr);
    gap: 1.75rem;
    margin-left: 0;
    margin-right: 0;
  }

  .news-article__sidebar {
    padding-right: 1.5rem;
  }

  .news-article__content {
    font-size: clamp(1.15rem, 2vw, 1.4rem);
  }
}

/* Responsive */
@media (max-width: 768px) {
  .news-article {
    padding: 3rem 0;
  }

  .news-article__layout {
    grid-template-columns: 1fr;
    gap: 2rem;
    margin-left: 0;
    margin-right: 0;
  }

  .news-article__sidebar {
    border-right: none;
    border-bottom: 2px solid #000;
    padding-right: 0;
    padding-bottom: 2rem;
    position: static;
    display: block;
    text-align: left;
  }

  .news-article__sidebar .align-right,
  .news-article__sidebar .header-block,
  .news-article__sidebar .news-meta--info,
  .news-article__sidebar .news-article__tags {
    display: block;
    text-align: left;
    align-items: flex-start;
    align-content: flex-start;
    justify-content: flex-start;
  }

  .news-article__sidebar > * + * {
    margin-top: 1rem;
  }

  .news-article__meta {
    margin-bottom: 0;
  }

  .news-article__tags {
    justify-content: flex-start;
  }

  .news-article__content {
    font-size: 18px;
  }
}

@media (max-width: 640px) {
  .news-article {
    padding: 2.5rem 0;
  }

  .news-article__sidebar {
    padding-bottom: 1.5rem;
  }

  .news-article__sidebar .header-block__title {
    font-size: clamp(2.25rem, 9vw, 3.5rem);
    line-height: 0.95;
  }

  .news-meta--info {
    font-size: 1rem;
    line-height: 1.4;
  }

  .news-article__content {
    font-size: 17px;
  }
}

/* ========================================
   Simple Content (Terms, Privacy, etc.)
======================================== */

.simple-content {
  padding: 4rem 0;
}

.simple-content__header {
  margin-bottom: 3rem;
  text-align: left;
}

.simple-content__title {
  font-size: clamp(2.2rem, 4.5vw, 4rem);
  font-weight: 700;
  margin: 0;
  line-height: 0.98;
  letter-spacing: 0.01em;
  text-transform: none;
}

.simple-content__layout {
  display: grid;
  grid-template-columns: 290px 1fr;
  gap: 3rem;
  align-items: start;
}

.simple-content__sidebar {
  border-right: 2px solid #000;
  padding-right: 1rem;
  position: sticky;
  top: 120px;
  align-self: start;
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  text-align: right;
}

.simple-content__main {
  min-width: 0;
}

.simple-content__nav {
  margin-bottom: 2rem;
  text-align: right;
}

.simple-content__nav-title {
  display: block;
  font-size: 1rem;
  font-weight: 600;
  color: #000;
  padding: 0.5rem 1rem 0.5rem 0;
  border-right: 3px solid #000;
  margin-right: -1rem;
  text-align: right;
}

.simple-content__toc {
  margin-bottom: 2rem;
}

.simple-content__toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.simple-content__toc-item {
  margin-bottom: 0;
}

.simple-content__toc-link {
  display: block;
  font-size: 1.5rem;
  font-weight: 600;
  color: rgba(0, 0, 0, 0.4);
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.75rem 1.5rem 0.75rem 0;
  border-right: 3px solid transparent;
  transition:
    border-color 0.2s ease,
    color 0.2s ease;
  text-align: right;
}

.simple-content__toc-link:hover {
  color: #000;
}

.simple-content__toc-link.is-active {
  color: #000;
  border-right-color: #000;
}

.simple-content__meta {
  margin-bottom: 1.5rem;
}

.simple-content__meta-label {
  display: block;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: rgba(0, 0, 0, 0.5);
  margin-bottom: 0.5rem;
}

.simple-content__meta-value {
  display: block;
  font-size: 1rem;
  font-weight: 500;
  color: #000;
}

.simple-content__body {
  font-size: 21px;
  line-height: 1.5;
}

.simple-content__body h2,
.simple-content__body h3,
.simple-content__body h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.simple-content__body p {
  margin-bottom: 1.5rem;
}

@media (max-width: 767px) {
  .simple-content {
    padding: 2rem 0;
  }

  .simple-content__title {
    font-size: 2rem;
  }

  .simple-content__layout {
    grid-template-columns: 1fr;
    gap: 2rem;
  }

  .simple-content__sidebar {
    border-right: none;
    border-bottom: 2px solid #000;
    padding-right: 0;
    padding-bottom: 0;
    position: static;
    max-height: none;
    overflow-y: visible;
  }

  .simple-content__toc-list {
    display: flex;
    flex-wrap: wrap;
  }

  .simple-content__toc-link {
    border-right: none;
    border-bottom: 3px solid transparent;
    margin-right: 0;
    margin-bottom: -2px;
    padding: 0.75rem 1rem;
    font-size: 1rem;
  }

  .simple-content__toc-link.is-active {
    border-right-color: transparent;
    border-bottom-color: #000;
  }

  .simple-content__nav-title {
    border-right: none;
    padding-right: 0;
    margin-right: 0;
  }

  .simple-content__body {
    font-size: 18px;
  }
}

/* ========================================
   About Page Layout
======================================== */

.about-photo-popup__caption {
  font-size: 1.125rem;
  font-weight: 600;
  margin-top: 1rem;
  text-align: center;
}

.about-photo-popup__description {
  font-size: 1rem;
  color: rgba(0, 0, 0, 0.7);
  text-align: center;
  margin-top: 0.5rem;
}

.helper-row__title {
  display: none;
}

/* ========================================
   Services Page Tabs (vertical layout like about/license-tabs)
======================================== */

.services-page {
  padding: 4rem 0;
}

.services-page__header {
  margin-bottom: 3rem;
}

.services-page__title {
  margin: 0;
  font-size: clamp(2.2rem, 4.5vw, 4rem);
  line-height: 0.98;
  letter-spacing: 0.01em;
  font-weight: 700;
  text-transform: none;
}

.services-page__intro {
  font-size: 1.25rem;
  line-height: 1.6;
  max-width: 800px;
}

.services-tabs {
  margin-bottom: 5rem;
}

.services-tabs--vertical {
  display: grid;
  grid-template-columns: 290px 1fr;
  gap: 3rem;
}

.services-tabs--vertical .services-tabs__nav {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-bottom: none;
  border-right: 2px solid #000;
  padding-right: 0;
  position: sticky;
  top: 120px;
  align-self: start;
  align-items: flex-end;
  text-align: right;
}

.services-tabs--vertical .services-tabs__tab {
  padding: 0.75rem 1.5rem 0.75rem 0;
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: transparent;
  border: none;
  border-right: 3px solid transparent;
  margin-right: -2px;
  margin-bottom: 0;
  cursor: pointer;
  transition:
    color 0.2s ease,
    border-color 0.2s ease;
  color: rgba(0, 0, 0, 0.5);
  text-align: right;
  text-decoration: none;
  width: 100%;
}

.services-tabs--vertical .services-tabs__tab:hover {
  color: #000;
}

.services-tabs--vertical .services-tabs__tab.is-active {
  color: #000;
  border-right-color: #000;
}

.services-tabs--vertical .services-tabs__panels {
  padding-top: 0;
}

.services-tabs__panel {
  display: none;
}

.services-tabs__panel.is-active {
  display: block;
  animation: fadeIn 0.3s ease;
}

.services-tabs--scroll .services-tabs__panel {
  display: block;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
  border-bottom: 2px solid #000;
}

.services-tabs--scroll .services-tabs__panel:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

/* Services Content */
.services-content__title {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 1.5rem;
}

.services-content__title--nav {
  display: none;
}

.services-content__image {
  margin-bottom: 1.5rem;
}

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

.services-content__image--right {
  float: right;
  margin-left: 2rem;
  margin-bottom: 1rem;
  max-width: 50%;
}

.services-content__image--left {
  float: left;
  margin-right: 2rem;
  margin-bottom: 1rem;
  max-width: 50%;
}

.services-content__body {
  font-size: 21px;
  line-height: 1.5;
}

.services-content__body::after {
  content: "";
  display: table;
  clear: both;
}

.services-content__body h2,
.services-content__body h3,
.services-content__body h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.services-content__body p {
  margin-bottom: 1.5rem;
}

/* Responsive - stack on mobile */
@media (max-width: 768px) {
  .services-page__title {
    font-size: 2rem;
  }

  .services-tabs--vertical {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .services-tabs--vertical .services-tabs__nav {
    flex-direction: row;
    flex-wrap: wrap;
    border-right: none;
    border-bottom: 2px solid #000;
    padding-right: 0;
    padding-bottom: 0;
    position: static;
  }

  .services-tabs--vertical .services-tabs__tab {
    border-right: none;
    border-bottom: 3px solid transparent;
    margin-right: 0;
    margin-bottom: -2px;
    padding: 0.75rem 1rem;
  }

  .services-tabs--vertical .services-tabs__tab.is-active {
    border-right-color: transparent;
    border-bottom-color: #000;
  }

  .services-content__body {
    font-size: 18px;
  }

  .services-content__image--right,
  .services-content__image--left {
    float: none;
    margin: 0 0 1.5rem 0;
    max-width: 100%;
  }
}

/* ========================================
   Projects Showcase (vertical layout)
======================================== */

.projects-page {
  padding: 4rem 0;
}

.projects-page__header {
  margin-bottom: 3rem;
}

.projects-page__title {
  font-size: 3rem;
  font-weight: 700;
  margin: 0 0 1.5rem;
}

.projects-page__intro {
  font-size: 1.25rem;
  line-height: 1.6;
  max-width: 800px;
}

.projects-page__empty {
  margin-top: 3rem;
  font-style: italic;
  color: rgba(0, 0, 0, 0.65);
  text-align: center;
}

.projects-tabs {
  margin-bottom: 5rem;
}

.projects-tabs--vertical {
  display: grid;
  grid-template-columns: 220px 1fr;
  gap: 3rem;
}

.projects-tabs--vertical .projects-tabs__nav {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-bottom: none;
  border-right: 2px solid #000;
  padding-right: 0;
  position: sticky;
  top: 120px;
  align-self: start;
}

.projects-tabs--vertical .projects-tabs__tab {
  padding: 0.75rem 1.5rem 0.75rem 0;
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  background: transparent;
  border: none;
  border-right: 3px solid transparent;
  margin-right: -2px;
  margin-bottom: 0;
  cursor: pointer;
  transition:
    color 0.2s ease,
    border-color 0.2s ease;
  color: rgba(0, 0, 0, 0.5);
  text-align: left;
  text-decoration: none;
}

.projects-tabs--vertical .projects-tabs__tab:hover {
  color: #000;
}

.projects-tabs--vertical .projects-tabs__tab.is-active {
  color: #000;
  border-right-color: #000;
}

.projects-tabs--vertical .projects-tabs__panels {
  padding-top: 0;
}

.projects-tabs--vertical .projects-tabs__tab-title {
  display: block;
}

.projects-tabs--vertical .projects-tabs__tab-meta {
  display: block;
  font-size: 0.9rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.35);
  font-weight: 600;
}

.projects-tabs__panel {
  display: none;
}

.projects-tabs__panel.is-active {
  display: block;
  animation: fadeIn 0.3s ease;
}

.projects-tabs--scroll .projects-tabs__panel {
  display: block;
  padding-bottom: 3rem;
  margin-bottom: 3rem;
  border-bottom: 2px solid #000;
}

.projects-tabs--scroll .projects-tabs__panel:last-child {
  border-bottom: 0;
  margin-bottom: 0;
  padding-bottom: 0;
}

.projects-content__image {
  margin-bottom: 1.5rem;
}

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

.projects-content__image--right {
  float: right;
  margin-left: 2rem;
  margin-bottom: 1rem;
  max-width: 50%;
}

.projects-content__image--left {
  float: left;
  margin-right: 2rem;
  margin-bottom: 1rem;
  max-width: 50%;
}

.projects-content__body {
  font-size: 21px;
  line-height: 1.5;
}

.projects-content__body::after {
  content: "";
  display: table;
  clear: both;
}

.projects-content__meta {
  margin-bottom: 1rem;
}

.projects-content__tag {
  display: inline-block;
  margin-right: 0.5rem;
  padding-bottom: 0.25rem;
  font-size: 0.9rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(0, 0, 0, 0.65);
}

.projects-content__subtitle {
  font-size: 2rem;
  font-weight: 700;
  margin: 0 0 0.75rem;
}

.projects-content__summary {
  margin-bottom: 1rem;
}

.projects-content__description {
  margin-top: 1rem;
}

.projects-content__body h2,
.projects-content__body h3,
.projects-content__body h4 {
  margin-top: 2rem;
  margin-bottom: 1rem;
}

.projects-content__body p {
  margin-bottom: 1.5rem;
}

@media (max-width: 768px) {
  .projects-page__title {
    font-size: 2rem;
  }

  .projects-tabs--vertical {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .projects-tabs--vertical .projects-tabs__nav {
    flex-direction: row;
    flex-wrap: wrap;
    border-right: none;
    border-bottom: 2px solid #000;
    padding-right: 0;
    padding-bottom: 0;
    position: static;
  }

  .projects-tabs--vertical .projects-tabs__tab {
    border-right: none;
    border-bottom: 3px solid transparent;
    margin-right: 0;
    margin-bottom: -2px;
    padding: 0.75rem 1rem;
  }

  .projects-tabs--vertical .projects-tabs__tab.is-active {
    border-right-color: transparent;
    border-bottom-color: #000;
  }

  .projects-content__body {
    font-size: 18px;
  }

  .projects-content__image--right,
  .projects-content__image--left {
    float: none;
    margin: 0 0 1.5rem 0;
    max-width: 100%;
  }
}

/* ========================================
   Carousel Variable Font Controls
======================================== */

.carousel-vf__controls {
  display: flex;
  gap: 2rem;
}

.carousel-vf__control {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.carousel-vf__control-label {
  color: #fff;
  font-size: 0.875rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.carousel-vf__control-value {
  color: #fff;
  font-size: 0.875rem;
  min-width: 3em;
}

/* Range slider - white line with white circle */
.carousel-vf__control input[type="range"] {
  -webkit-appearance: none;
  appearance: none;
  width: 120px;
  height: 2px;
  background: #fff;
  border-radius: 0;
  outline: none;
  cursor: default;
}

.carousel-vf__control input[type="range"]::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 14px;
  height: 14px;
  background: #fff;
  border-radius: 50%;
  border: none;
  cursor: default;
}

.carousel-vf__control input[type="range"]::-moz-range-thumb {
  width: 14px;
  height: 14px;
  background: #fff;
  border-radius: 50%;
  border: none;
  cursor: default;
}

.carousel-vf__control input[type="range"]::-ms-thumb {
  width: 14px;
  height: 14px;
  background: #fff;
  border-radius: 50%;
  border: none;
  cursor: default;
}
.font-list__item--edit {
  padding-top: 0;
  margin-top: calc(
    (20px + (50 - 20) * ((100vw - 320px) / (1920 - 320))) * 0.875
  );
}

/* ============================================
   EDITOR BAR REDESIGN - Clean horizontal style
   ============================================ */

/* Consistent spacing between editor and text */
#tester .fit-block__text {
  margin-top: 15px;
}

/* Editor position - same vertical position as font-info */
#tester .editor.js-editor-bar {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
}

/* Editor wrapper - inherit font-block padding */
#tester .editor .wrapper {
  padding-left: 10em;
  padding-right: 10em;
  margin: 0;
}

@media (max-width: 1600px) {
  body.font-page {
    --font-page-gutter: clamp(1rem, 4vw, 5em);
    --font-page-inner-gutter: clamp(1rem, 6vw, 10em);
  }

  body.font-page .column-layout {
    margin-left: var(--font-page-gutter);
    margin-right: var(--font-page-gutter);
  }

  body.font-page .opentype-features-panel {
    margin-left: var(--font-page-gutter);
    margin-right: var(--font-page-gutter);
  }

  body.font-page .font-block,
  body.font-page #tester .editor .wrapper {
    padding-left: var(--font-page-inner-gutter);
    padding-right: var(--font-page-inner-gutter);
  }
}

/* Main controls container - align with font-info */
#tester .editor__controls {
  display: flex;
  align-items: center;
  padding: 0;
  gap: 4px;
  border: none;
  background: transparent;
  margin: 0;
}

/* Controls groups - reset all backgrounds (except features panel) */
#tester .editor__controls-group:not(.editor__controls-group--features) {
  display: flex;
  align-items: center;
  gap: 4px;
  border: none;
  background: transparent;
  margin: 0;
  padding: 0;
  border-radius: 0;
}

/* Features dropdown panel - keep original styling with 2 columns */
#tester .editor__controls-group--features.js-font-features-panel {
  display: block;
  columns: 2;
  column-gap: 24px;
  background: #fff;
  border: 1px solid #000;
  padding: 12px 16px;
  margin-top: 10px;
}
#tester
  .editor__controls-group--features.js-font-features-panel[style*="display: none"] {
  display: none !important;
}

/* Individual items - no borders */
#tester .editor__controls-item {
  display: flex;
  align-items: center;
  padding: 0;
  border: none;
  height: auto;
  box-sizing: border-box;
  background: transparent;
}

/* Weight dropdown - match tester control boxes */
#tester .editor__controls .select--alt2 .select2-container--stx {
  display: block;
}

#tester .editor__controls .select--alt2 .select2-container--stx .select2-selection--single,
#tester .editor__controls .select--alt2 .editor__fw-static {
  display: flex;
  align-items: center;
  min-height: 32px;
  height: 32px;
  padding: 0 12px 0 12px;
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  box-shadow: none;
  color: rgba(0, 0, 0, 0.64);
  font-size: 16px;
  font-weight: 300;
  line-height: 1.3;
  box-sizing: border-box;
}

#tester
  .editor__controls
  .select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  display: block;
  width: 100%;
  padding: 4px 32px 4px 12px;
  color: rgba(0, 0, 0, 0.64);
  font-size: 16px;
  font-weight: 300;
  line-height: 24px;
  background: transparent;
}

#tester
  .editor__controls
  .select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow {
  top: 2px;
  right: 6px;
  width: 24px;
  height: 100%;
  color: #000;
}

#tester
  .editor__controls
  .select--alt2
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-width: 0.4em 0.3em 0;
}

#tester .editor__controls .select--alt2.is-static {
  position: relative;
}

#tester .editor__controls .select--alt2.is-static::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 14px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.4em 0.3em 0;
  border-color: #000 transparent transparent;
  transform: translateY(-50%);
  pointer-events: none;
}

/* Size slider - in its own box, no rounding */
#tester .editor__controls .editor__range {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 0 12px;
  height: 36px;
  min-width: 275px;
  box-sizing: border-box;
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 0;
}

/* Range group container - no border */
#tester .editor__controls-group--range {
  border: none;
  background: transparent;
}

/* The label contains both Size text and the value - use contents to allow reordering */
#tester .editor__controls .editor__range-label {
  display: contents;
  font-size: 13px;
  color: #333;
  white-space: nowrap;
}

/* Label text (Size) first */
#tester .editor__controls .editor__range-label .editor__range-unit {
  order: 1;
}

/* Slider in middle */
#tester .editor__controls .editor__range-slider {
  min-width: 160px;
  order: 2;
}

/* Value (px) LAST - after slider */
#tester .editor__controls .editor__range-label .editor__range-number {
  order: 3;
}

/* VF axis items - same box style, no rounding */
#tester .editor__controls-item--axis {
  padding: 0;
  height: auto;
  border: none;
}

#tester .editor__range--axis {
  display: flex;
  align-items: center;
  gap: 8px;
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  padding: 0 12px;
  height: 36px;
}

#tester .editor__range--axis .editor__range-label {
  font-size: 13px;
  color: #333;
}

/* Action buttons - square boxes, same height */
#tester .editor__controls .editor__btn {
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  padding: 0;
  width: 32px;
  height: 32px;
  min-width: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

#tester .editor__controls .editor__btn:hover {
  background: #eaeaea;
}

/* Bigger icons */
#tester .editor__controls .editor__btn .icon,
#tester .editor__controls .editor__btn svg.icon {
  width: 22px;
  height: 22px;
}

/* Features button - same height as other boxes */
#tester .editor__controls .btn--smaller.btn--light {
  background: #f5f5f5;
  border: 1px solid #e0e0e0;
  border-radius: 0;
  padding: 0 14px;
  height: 32px;
  font-size: 13px;
  margin: 0;
  line-height: 32px;
}

#tester .editor__controls .btn--smaller.btn--light:hover {
  background: #eaeaea;
}

/* Items containing buttons - no special treatment */
#tester .editor__controls-item--hideable {
  border: none;
  padding: 0;
}

/* Features wrap item */
#tester .editor__controls-item--features-wrap {
  border: none;
  padding: 0;
}

/* Last items no border */
#tester .editor__controls-item:last-child {
  border-right: none;
}

/* ============================================
   NEWS META - Clean text-based metadata
   ============================================ */

.news-meta {
  font-family: "Typedepot", sans-serif;
  font-size: 1rem;
  color: #000;
  line-height: 1.7;
}

.news-meta--date {
  font-size: 1.25rem;
  color: var(--accent-color, #613afb);
  text-align: right;
  display: block;
  width: 100%;
  margin-bottom: 0.25em;
}

.news-meta__sep {
  margin: 0 0.5em;
  color: #888;
}

.news-meta__tag {
  color: #0066cc;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.news-meta__tag:hover {
  color: #004499;
}

.news-meta--read {
  color: #666;
}

.news-meta--author {
  margin-top: 0.5em;
  font-size: 1rem;
  color: #666;
}

.cta-button {
  margin: 2.5rem auto 0;
}

.cta-button__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 1rem 1rem;
  border-radius: 15px;
  background: #000;
  color: #fff;
  text-decoration: none;
  text-align: center;
  font-size: clamp(1.2rem, 1vw + 1rem, 1.75rem);
  font-weight: 700;
  letter-spacing: 0.02em;
  text-transform: none;
  line-height: 1.1;
  transition: none;
}

.cta-button__link:hover,
.cta-button__link:focus {
  background: var(--accent-color, #df3726);
  color: #fff;
}

@media (max-width: 768px) {
  .cta-button__link {
    padding: 1.25rem 1.5rem;
  }
}

ol.order-list {
  margin-top: 3em;
}

/* ===== FONT PAGE HEADER OVERRIDE (FINAL, KEEP LAST) ===== */
/* ===== HEADER REWORK UNIFIER (ABSOLUTE LAST) ===== */
@media (min-width: 991px) {
  .header-rework .topbar {
    display: none;
  }

  .header-rework.font-page .site-logo__font-name {
    display: none;
  }
}

/* Consolidated: interface-refinement.css (2026-04-26) */
:root {
  --ui-bg: #ffffff;
  --ui-surface: #f7f6ef;
  --ui-surface-2: #ffffff;
  --ui-border: #cfcbbd;
  --ui-border-strong: #b9b4a3;
  --ui-text: #171512;
  --ui-muted: #666055;
  --ui-overlay: #1f1d1a;
  --text-accent: #1f3fd4;
  --ui-header-text: #171512;
  --ui-header-size: 1.08rem;
  --accent-color: var(--accent-color-base, #613afb);
}

html.theme-dark {
  --ui-bg: #1a1d20;
  --ui-surface: #1a1d20;
  --ui-surface-2: #202429;
  --ui-surface-hover: #2a3038;
  --ui-border: #343941;
  --ui-border-strong: #4a515c;
  --ui-text: #f2f0e8;
  --ui-muted: #aaa597;
  --ui-overlay: #080909;
  --text-accent: #86a2ff;
  --ui-header-text: #f7f3eb;
  --accent-color: color-mix(in oklch, var(--accent-color-base, #613afb) 82%, white);
}

body.header-rework {
  --header-rework-pill-bg: #e8e8e8;
  --header-rework-pill-hover-bg: #171512;
  --header-rework-pill-text: var(--ui-text);
  --header-rework-pill-hover-text: #ffffff;
  --header-rework-dropdown-bg: var(--ui-surface-2);
  --header-rework-dropdown-border: rgba(23, 21, 18, 0.12);
  --header-rework-dropdown-shadow: 0 16px 32px rgba(0, 0, 0, 0.14);
  --header-rework-dropdown-item-hover-bg: #171512;
}

html.theme-dark body.header-rework {
  --header-rework-pill-bg: #2b3038;
  --header-rework-pill-hover-bg: #2d333d;
  --header-rework-pill-text: var(--ui-text);
  --header-rework-pill-hover-text: #86a2ff;
  --header-rework-dropdown-bg: #1d222a;
  --header-rework-dropdown-border: rgba(242, 240, 232, 0.2);
  --header-rework-dropdown-shadow: 0 16px 32px rgba(0, 0, 0, 0.3);
  --header-rework-dropdown-item-hover-bg: rgba(242, 240, 232, 0.08);
}

body.header-rework,
body.header-rework .site,
body.header-rework .main-footer {
  background: var(--ui-bg);
  color: var(--ui-text);
}

html.theme-dark body,
html.theme-dark body .site,
html.theme-dark body .main-footer,
html.theme-dark body .sub-header {
  background: var(--ui-bg);
  color: var(--ui-text);
}

body.header-rework .sub-header,
body.header-rework .section--padded-80-bottom,
body.header-rework .font-list,
body.header-rework .font-block,
body.header-rework .font-info,
body.header-rework .fit-block__text,
body.header-rework .font-info__title,
body.header-rework .font-info__title--alt,
body.header-rework .font-info__item {
  color: var(--ui-text);
}

body.header-rework .helper-row {
  background: none;
}

body.header-rework .helper-row__content {
  background: transparent;
}

body.header-rework .helper-row__title {
  color: var(--ui-text);
}

body.header-rework .helper-row__text {
  background: transparent;
  color: var(--text-accent);
}

html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption,
html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption p,
html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption-title,
html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption a {
  color: var(--ui-text);
}

body.header-rework .font-list__item {
  background: var(--ui-bg);
  color: var(--ui-text);
}

body.font-page.header-rework #tester {
  position: relative;
  isolation: isolate;
}


body.font-page.header-rework #tester .font-list__item,
body.font-page.header-rework #tester .font-list__item::before,
body.font-page.header-rework #tester .font-list__item::after {
  transition: none;
}

body.header-rework .font-list__item:hover,
body.header-rework .font-list__item.is-editing {
  background: var(--ui-surface);
}


body.header-rework:not(.font-page) .font-list__item:hover,
body.header-rework:not(.font-page) .font-list__item.is-editing {
  background: var(--ui-bg);
}

body.header-rework .font-list__item:after {
  border-bottom-color: var(--ui-border);
}

body.header-rework .fit-block__text:hover,
body.header-rework .font-block:hover .font-info__title {
  color: var(--text-accent);
}


body.font-page.header-rework .helper-row {
  display: none;
}


body.font-page.header-rework #character-set .character-map-panel .character-map li {
  background: var(--ui-bg);
}

#character-set .character-map-panel .character-map li.is-proto-masked {
  position: relative;
  color: transparent;
  font-size: 0;
}

#character-set .character-map-panel .character-map li.is-proto-masked::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 0.35rem;
  height: 0.35rem;
  border-radius: 999px;
  transform: translate(-0.6rem, -0.6rem);
  background: rgba(23, 21, 18, 0.42);
  box-shadow:
    0.85rem 0 0 rgba(23, 21, 18, 0.42),
    0 0.85rem 0 rgba(23, 21, 18, 0.42),
    0.85rem 0.85rem 0 rgba(23, 21, 18, 0.42);
}

html.theme-dark #character-set .character-map-panel .character-map li.is-proto-masked::before {
  background: rgba(242, 240, 232, 0.42);
  box-shadow:
    0.85rem 0 0 rgba(242, 240, 232, 0.42),
    0 0.85rem 0 rgba(242, 240, 232, 0.42),
    0.85rem 0.85rem 0 rgba(242, 240, 232, 0.42);
}

body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked:hover::before,
body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked.is-active::before {
  background: rgba(23, 21, 18, 0.74);
  box-shadow:
    0.85rem 0 0 rgba(23, 21, 18, 0.74),
    0 0.85rem 0 rgba(23, 21, 18, 0.74),
    0.85rem 0.85rem 0 rgba(23, 21, 18, 0.74);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked:hover::before,
html.theme-dark body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked.is-active::before {
  background: rgba(242, 240, 232, 0.78);
  box-shadow:
    0.85rem 0 0 rgba(242, 240, 232, 0.78),
    0 0.85rem 0 rgba(242, 240, 232, 0.78),
    0.85rem 0.85rem 0 rgba(242, 240, 232, 0.78);
}

body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked,
body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked:hover,
body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked.is-active,
body.font-page.header-rework #character-set .character-map-panel .character-map li.is-proto-masked.is-active:hover {
  color: transparent;
}

html:not(.theme-dark) body.font-page.header-rework #character-set .character-map-panel .character-map li:hover,
html:not(.theme-dark) body.font-page.header-rework #character-set .character-map-panel .character-map li.is-active:hover {
  background: #e4e4e4;
  color: #000;
  border-color: #cfcfcf;
}

#character-set .character-map-preview {
  background: var(--ui-bg);
}

#character-set .character-map-preview__stage {
  position: relative;
}

#character-set .character-map-preview__glyph--hover {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.16;
  z-index: 1;
  pointer-events: none;
  line-height: 1;
}

#character-set .character-map-preview__glyph--hover.is-proto-badge-preview {
  opacity: 1;
  z-index: 3;
}

#character-set .js-character-map-preview__glyph {
  position: relative;
  z-index: 2;
}

#character-set .character-map-preview__proto-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0.85rem 1.75rem;
  border: 1.5px solid rgba(23, 21, 18, 0.72);
  border-radius: 999px;
  background: #f3f3f3;
  color: #171512;
  font-size: 0.82rem;
  font-weight: 700;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  pointer-events: none;
}

html.theme-dark #character-set .character-map-preview__proto-badge {
  border-color: rgba(242, 240, 232, 0.65);
  background: #1a1d20;
  color: rgba(242, 240, 232, 0.88);
}

@media (max-width: 640px) {
  #character-set .character-map-preview__proto-badge {
    padding: 0.75rem 1.4rem;
    font-size: 0.75rem;
  }
}


main.services .main-content--light,
.section--light,
.purchase-total {
  background-color: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework #tester .font-list__item:hover {
  background: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework #tester .font-list__item.is-editing {
  background: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework #tester .fit-block__text:hover,
html.theme-dark body.font-page.header-rework #tester .font-block:hover .font-info__title,
html.theme-dark body.font-page.header-rework #tester .font-block:hover .font-info__title--alt {
  color: var(--text-accent);
}

html.theme-dark body.header-rework #tester .font-list__item--edit.is-editing .fit-block__text,
html.theme-dark body.header-rework #tester .font-list__item--edit.is-editing .font-info__title,
html.theme-dark body.header-rework #tester .font-list__item--edit.is-editing .font-info__title--alt {
  color: var(--ui-text);
  -webkit-text-fill-color: var(--ui-text);
}

html.theme-dark body.header-rework #tester:not(.no-alternate-colors) .font-list__item--edit:nth-child(even).is-editing .fit-block__text {
  color: var(--text-accent);
  -webkit-text-fill-color: var(--text-accent);
}

html.theme-dark body.font-page.header-rework #tester .editor,
html.theme-dark body.font-page.header-rework #tester .editor__controls,
html.theme-dark body.font-page.header-rework #tester .editor__controls-group:not(.editor__controls-group--features),
html.theme-dark body.font-page.header-rework #tester .editor__controls-item,
html.theme-dark body.font-page.header-rework #tester .editor__range-label,
html.theme-dark body.font-page.header-rework #tester .editor__range-label--axis,
html.theme-dark body.font-page.header-rework #tester .editor__range-label--axis .editor__range-unit,
html.theme-dark body.font-page.header-rework #tester .editor__range-label--axis .editor__range-number {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .editor__btn,
html.theme-dark body.font-page.header-rework #tester .editor__controls .btn--smaller.btn--light,
html.theme-dark body.font-page.header-rework #tester .editor__controls .js-font-features-open,
html.theme-dark body.font-page.header-rework #tester .editor__controls .editor__range,
html.theme-dark body.font-page.header-rework #tester .editor__range--axis,
html.theme-dark body.font-page.header-rework #tester .editor__controls .select2-container--stx .select2-selection--single {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  color: var(--ui-text);
  box-shadow: none;
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .editor__btn:hover,
html.theme-dark body.font-page.header-rework #tester .editor__controls .btn--smaller.btn--light:hover,
html.theme-dark body.font-page.header-rework #tester .editor__controls .js-font-features-open:hover,
html.theme-dark body.font-page.header-rework #tester .editor__controls .editor__btn:focus,
html.theme-dark body.font-page.header-rework #tester .editor__controls .btn--smaller.btn--light:focus,
html.theme-dark body.font-page.header-rework #tester .editor__controls .js-font-features-open:focus {
  background: var(--ui-surface);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .editor__btn .icon,
html.theme-dark body.font-page.header-rework #tester .editor__controls .editor__btn svg.icon {
  fill: currentColor;
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .select2-container--stx .select2-selection--single .select2-selection__rendered,
html.theme-dark body.font-page.header-rework #tester .editor__controls .select--alt2 .select2-container--stx .select2-selection--single .select2-selection__rendered {
  color: var(--ui-text);
  background: transparent;
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .select2-container--stx .select2-selection--single .select2-selection__arrow {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .select--alt2 .editor__fw-static {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls .select--alt2.is-static::after {
  border-top-color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls-group--features,
html.theme-dark body.font-page.header-rework #tester .editor__controls-group--features.js-font-features-panel {
  background: var(--ui-surface-2);
  border: 1px solid var(--ui-border-strong);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls-group--features .check-radio__input {
  border-color: var(--ui-border-strong);
  background: var(--ui-surface);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls-group--features .check-radio__input:checked {
  background: var(--text-accent);
  border-color: var(--text-accent);
}

html.theme-dark body.font-page.header-rework #tester .editor__controls-group--features .check-radio__element {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .noUi-target::before,
html.theme-dark body.font-page.header-rework #tester .is-editing--contrast .noUi-target::before {
  background-color: var(--ui-border-strong);
}

html.theme-dark body.font-page.header-rework #tester .noUi-handle::before,
html.theme-dark body.font-page.header-rework #tester .is-editing--contrast .noUi-handle::before {
  background-color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #tester .is-editing--contrast,
html.theme-dark body.font-page.header-rework #tester .font-list__item.is-editing--contrast,
html.theme-dark body.font-page.header-rework #tester .is-editing--contrast .editor {
  color: var(--ui-text);
  background: transparent;
}

html.theme-dark body.font-page.header-rework #tester .is-editing--contrast .editor__btn,
html.theme-dark body.font-page.header-rework #tester .is-editing--contrast .editor__btn .icon {
  color: var(--ui-text);
  fill: currentColor;
}

body.font-page.header-rework #tester .font-list__item:hover,
body.font-page.header-rework #tester .font-list__item.is-editing {
  background: transparent;
}

html.theme-dark body.font-page.header-rework #character-set,
html.theme-dark body.font-page.header-rework #character-set > .wrapper,
html.theme-dark body.font-page.header-rework #character-set .character-map-panel,
html.theme-dark body.font-page.header-rework #character-set .character-map-panel__grid,
html.theme-dark body.font-page.header-rework #character-set .character-map-panel__list,
html.theme-dark body.font-page.header-rework #character-set .character-map-panel__preview {
  background: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-preview {
  background: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-section__title,
html.theme-dark body.font-page.header-rework #character-set .character-map-preview__meta,
html.theme-dark body.font-page.header-rework #character-set .character-map-preview__guide::after {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-section__title {
  background: transparent;
}

html.theme-dark body.font-page.header-rework #character-set .character-map-panel .character-map li {
  background: var(--ui-surface);
  color: var(--ui-text);
  border-color: var(--ui-border);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-panel .character-map li.is-active,
html.theme-dark body.font-page.header-rework #character-set .non-touch .character-map-panel .character-map li:hover {
  background: var(--ui-surface-hover);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-panel .character-map li:hover,
html.theme-dark body.font-page.header-rework #character-set .character-map-panel .character-map li.is-active:hover {
  background: var(--ui-surface-hover);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-preview,
html.theme-dark body.font-page.header-rework #character-set .character-map-preview__stage {
  background: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-preview__guide {
  border-top-color: rgba(242, 240, 232, 0.3);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-preview__guide::after {
  background: rgba(26, 29, 32, 0.9);
}

html.theme-dark body.font-page.header-rework #character-set .character-map-preview__glyph,
html.theme-dark body.font-page.header-rework #character-set .character-map-preview__svg {
  color: var(--ui-text);
  fill: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__item {
  border-top-color: rgba(242, 240, 232, 0.16);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__title,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__text,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc p,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__text a,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__text-link,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__item .styles-and-character,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .font-desc__item .styles_and_character {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .column-layout--font-desc .tag {
  background: var(--ui-surface);
  border-color: var(--ui-border-strong);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .column-layout--font-desc .tag:hover,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .tag--selected,
html.theme-dark body.font-page.header-rework .column-layout--font-desc .tag--selected-alt {
  background: var(--text-accent);
  border-color: var(--text-accent);
  color: #fff;
}

html.theme-dark body.font-page.header-rework .js-purchase .section--light,
html.theme-dark body.font-page.header-rework .js-purchase .wrapper,
html.theme-dark body.font-page.header-rework .js-purchase .ff-list,
html.theme-dark body.font-page.header-rework .js-purchase .ff-list__item,
html.theme-dark body.font-page.header-rework .js-purchase .license-panel,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker {
  background: var(--ui-bg);
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .js-purchase .section--light {
  background: var(--ui-bg);
}

html.theme-dark body.font-page.header-rework .js-purchase .ff-list {
  border-top-color: var(--ui-border-strong);
}

html.theme-dark body.font-page.header-rework .js-purchase .ff-list__group-title,
html.theme-dark body.font-page.header-rework .js-purchase .ff-list__title,
html.theme-dark body.font-page.header-rework .js-purchase .ff-list__text,
html.theme-dark body.font-page.header-rework .js-purchase .ff-list__label,
html.theme-dark body.font-page.header-rework .js-purchase .license-panel__title,
html.theme-dark body.font-page.header-rework .js-purchase .license-card__title,
html.theme-dark body.font-page.header-rework .js-purchase .license-card__desc,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__label,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__price,
html.theme-dark body.font-page.header-rework .js-purchase .purchase-total__title,
html.theme-dark body.font-page.header-rework .js-purchase .purchase-total__price {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .js-purchase .purchase-total__text {
  color: var(--ui-muted);
}

html.theme-dark body.font-page.header-rework .js-purchase .license-card,
html.theme-dark body.font-page.header-rework .js-purchase .purchase-total,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__item.is-added,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__item.is-collection-member {
  background: var(--ui-surface);
  border-color: var(--ui-border);
}

html.theme-dark body.font-page.header-rework .js-purchase .license-card:hover {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.font-page.header-rework .js-purchase .license-card__input,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__checkbox {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.font-page.header-rework .js-purchase .license-card__input:checked,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__checkbox:checked {
  background: var(--text-accent);
  border-color: var(--text-accent);
}

html.theme-dark body.font-page.header-rework .js-purchase .font-picker__divider {
  background: rgba(242, 240, 232, 0.28);
  opacity: 1;
}

html.theme-dark body.font-page.header-rework .js-purchase .font-picker__item:hover {
  background: var(--ui-surface-2);
  color: var(--ui-text);
  border-bottom-color: transparent;
  padding-left: 0.5rem;
  margin-left: -0.5rem;
  border-radius: 0.2rem;
}

html.theme-dark body.font-page.header-rework .js-purchase .font-picker__item:hover .font-picker__label,
html.theme-dark body.font-page.header-rework .js-purchase .font-picker__item:hover .font-picker__price {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .js-purchase .purchase-total {
  background: var(--ui-bg);
  position: sticky;
  border-top: 4px solid rgba(242, 240, 232, 0.92);
  border-bottom: 1px solid rgba(242, 240, 232, 0.2);
  border-left: 0;
  border-right: 0;
  outline: 0;
  box-shadow: none;
  overflow: hidden;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

html.theme-dark body.font-page.header-rework .js-purchase .purchase-total::before {
  content: none;
  display: none;
}

html.theme-dark body.font-page.header-rework .js-purchase .purchase-total::after {
  content: none;
  display: none;
}

body.font-page.header-rework .js-purchase .purchase-total {
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
}

body.font-page.header-rework .js-purchase .purchase-total__row {
  margin: 0;
  min-height: 4.75rem;
  align-items: center;
}

body.font-page.header-rework .js-purchase .purchase-total__item {
  margin-top: 0;
  margin-bottom: 0;
  padding-top: 0.55rem;
  padding-bottom: 0.55rem;
  display: flex;
  align-items: center;
}

body.font-page.header-rework .js-purchase .purchase-total__item--grow {
  justify-content: flex-end;
}

body.font-page.header-rework .js-purchase .purchase-total__title,
body.font-page.header-rework .js-purchase .purchase-total__price,
body.font-page.header-rework .js-purchase .js-add-to-cart-btn {
  line-height: 1;
}

html.theme-dark body.font-page.header-rework .js-purchase .ff-list__item {
  border-color: rgba(242, 240, 232, 0.14);
}

html.theme-dark body.font-page.header-rework .js-purchase .btn--secondary,
html.theme-dark body.font-page.header-rework .js-purchase .js-add-to-cart-btn {
  background: var(--text-accent);
  border-color: var(--text-accent);
  color: #fff;
}

html.theme-dark body.font-page.header-rework .js-purchase .btn--secondary:hover,
html.theme-dark body.font-page.header-rework .js-purchase .js-add-to-cart-btn:hover {
  background: #4c70ff;
  border-color: #4c70ff;
  color: #fff;
}

html.theme-dark body.font-page.header-rework .helper-row {
  background:
    linear-gradient(135deg, rgba(32, 36, 41, 0.98), rgba(26, 29, 32, 0.98)),
    url(../images/helper-row-background.svg) top left no-repeat;
  background-size: cover;
}

html.theme-dark body.font-page.header-rework .helper-row__content {
  background: transparent;
}

html.theme-dark body.font-page.header-rework .helper-row__title {
  color: var(--ui-text);
}

html.theme-dark body.font-page.header-rework .helper-row__text {
  background: transparent;
  color: rgba(242, 240, 232, 0.92);
}

html.theme-dark body.font-page.header-rework .fit-block__text,
html.theme-dark body.font-page.header-rework .font-info,
html.theme-dark body.font-page.header-rework .font-info__title,
html.theme-dark body.font-page.header-rework .font-info__title--alt,
html.theme-dark body.font-page.header-rework .font-info__item {
  color: var(--ui-text);
}

body.header-rework .sub-header,
body.header-rework .filter,
body.header-rework .filter__label,
body.header-rework .check-radio__element,
body.header-rework .select2-container--stx .select2-selection__rendered {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .sub-header {
  background: var(--ui-surface);
  border-top: 0;
  border-bottom: 0;
}

html.theme-dark body.header-rework .filter,
html.theme-dark body.header-rework .filter__item,
html.theme-dark body.header-rework .filter__row-item,
html.theme-dark body.header-rework .filter__label,
html.theme-dark body.header-rework .check-radio__element,
html.theme-dark body.header-rework .check-radio__element--alt,
html.theme-dark body.header-rework .select__element,
html.theme-dark body.header-rework .select2-container--stx .select2-selection--single,
html.theme-dark body.header-rework .select2-container--stx .select2-selection__rendered,
html.theme-dark body.header-rework .select2-container--stx .select2-selection--single .select2-selection__arrow {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .check-radio__element:before,
html.theme-dark body.header-rework .check-radio__element:after {
  background-color: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .check-radio__input:checked ~ .check-radio__element:after {
  background: var(--text-accent);
  border-color: var(--text-accent);
}

html.theme-dark body.header-rework .check-radio__input[type="checkbox"]:checked ~ .check-radio__element:after {
  background: url(../images/checkbox.svg) center center no-repeat var(--text-accent);
}

body.header-rework .select2-container--stx .select2-selection--single,
body.header-rework .select--border .select2-selection--single,
body.header-rework .license-card__dropdown,
body.header-rework .license-toggle__dropdown {
  background: var(--ui-surface-2);
  border-color: var(--ui-border);
  color: var(--ui-text);
  box-shadow: none;
}

html.theme-dark body.header-rework .services-page,
html.theme-dark body.header-rework .news-article,
html.theme-dark body.header-rework .simple-content,
html.theme-dark body.header-rework .license-page,
html.theme-dark body.header-rework .sectioned-page {
  background: var(--ui-bg);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .projects-page,
html.theme-dark body.header-rework .projects-page__intro,
html.theme-dark body.header-rework .projects-page__title,
html.theme-dark body.header-rework .projects-page__empty {
  background: var(--ui-bg);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .services-page__title,
html.theme-dark body.header-rework .sectioned-page__title,
html.theme-dark body.header-rework .simple-content__title,
html.theme-dark body.header-rework .services-content__title,
html.theme-dark body.header-rework .license-content__title,
html.theme-dark body.header-rework .license-faq__title,
html.theme-dark body.header-rework .license-faq__question,
html.theme-dark body.header-rework .news-article__title,
html.theme-dark body.header-rework .header-block__title,
html.theme-dark body.header-rework .header-block__title a,
html.theme-dark body.header-rework .header-block__link,
html.theme-dark body.header-rework .news-article__content,
html.theme-dark body.header-rework .news-article__content h2,
html.theme-dark body.header-rework .news-article__content h3,
html.theme-dark body.header-rework .news-article__content h4,
html.theme-dark body.header-rework .news-article__content p,
html.theme-dark body.header-rework .news-meta,
html.theme-dark body.header-rework .simple-content__body,
html.theme-dark body.header-rework .simple-content__body :where(h2, h3, h4, h5, h6, p, li, ul, ol, strong, em, span, div, blockquote),
html.theme-dark body.header-rework .services-content__body,
html.theme-dark body.header-rework .services-content__body :where(h2, h3, h4, h5, h6, p, li, ul, ol, strong, em, span, div, blockquote),
html.theme-dark body.header-rework .license-content__body,
html.theme-dark body.header-rework .license-content__body :where(h2, h3, h4, h5, h6, p, li, ul, ol, strong, em, span, div, blockquote),
html.theme-dark body.header-rework .license-faq__answer,
html.theme-dark body.header-rework .license-faq__answer :where(h2, h3, h4, h5, h6, p, li, ul, ol, strong, em, span, div, blockquote),
html.theme-dark body.header-rework .sectioned-content__title,
html.theme-dark body.header-rework .sectioned-content__body,
html.theme-dark body.header-rework .sectioned-content__body :where(h2, h3, h4, h5, h6, p, li, ul, ol, strong, em, span, div, blockquote) {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .news-list__item {
  border-bottom-color: var(--ui-border);
}

html.theme-dark body.header-rework .news-list__header-divider {
  border-color: var(--ui-border);
  opacity: 1;
}

html.theme-dark body.header-rework .services-page .news-list__item + .news-list__item {
  border-top-color: var(--ui-border);
}

html.theme-dark body.header-rework .services-page .news-card__media {
  background: var(--ui-surface);
}

html.theme-dark body.header-rework .news-meta--info,
html.theme-dark body.header-rework .news-article__meta-label,
html.theme-dark body.header-rework .news-article__meta-value,
html.theme-dark body.header-rework .news-meta--read,
html.theme-dark body.header-rework .news-meta--author,
html.theme-dark body.header-rework .column-layout--news .header-block p,
html.theme-dark body.header-rework .simple-content__meta-label,
html.theme-dark body.header-rework .license-faq__sidebar-title,
html.theme-dark body.header-rework .license-content__empty {
  color: var(--ui-muted);
}

html.theme-dark body.header-rework .news-meta--date,
html.theme-dark body.header-rework .news-meta__tag,
html.theme-dark body.header-rework .time {
  color: var(--text-accent);
}

html.theme-dark body.header-rework .news-meta__sep {
  color: var(--ui-muted);
}

@media (min-width: 769px) {
  .column-layout--news .column-layout__col--sidebar {
    border-right: 1px solid rgba(3, 3, 3, 0.24);
  }
}

html.theme-dark body.header-rework .news-article__sidebar,
html.theme-dark body.header-rework .simple-content__sidebar,
html.theme-dark body.header-rework .services-tabs--vertical .services-tabs__nav,
html.theme-dark body.header-rework .license-faq__sidebar,
html.theme-dark body.header-rework .license-tabs--vertical .license-tabs__nav,
html.theme-dark body.header-rework .sectioned-page .sectioned-tabs__nav {
  border-right-color: var(--ui-border);
}

html.theme-dark body.header-rework .news-article__tag,
html.theme-dark body.header-rework .news-article__tags .tag {
  color: var(--ui-text);
  background: var(--ui-surface);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .news-article__tag:hover,
html.theme-dark body.header-rework .news-article__tags .tag:hover,
html.theme-dark body.header-rework .news-meta__tag:hover {
  color: var(--text-accent);
  border-color: var(--text-accent);
  background: var(--ui-surface-2);
}

html.theme-dark body.header-rework .simple-content__meta-value,
html.theme-dark body.header-rework .license-content__download,
html.theme-dark body.header-rework .license-content__download a {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .simple-content__nav-title,
html.theme-dark body.header-rework .simple-content__toc-link,
html.theme-dark body.header-rework .services-tabs--vertical .services-tabs__tab,
html.theme-dark body.header-rework .license-tabs--vertical .license-tabs__tab,
html.theme-dark body.header-rework .license-tabs__sublink,
html.theme-dark body.header-rework .license-faq__nav-link,
html.theme-dark body.header-rework .sectioned-page .sectioned-tabs__tab {
  color: var(--ui-muted);
}

html.theme-dark body.header-rework .simple-content__nav-title,
html.theme-dark body.header-rework .simple-content__toc-link.is-active,
html.theme-dark body.header-rework .services-tabs--vertical .services-tabs__tab.is-active,
html.theme-dark body.header-rework .license-tabs--vertical .license-tabs__tab.is-active,
html.theme-dark body.header-rework .license-tabs__sublink.is-active,
html.theme-dark body.header-rework .license-faq__nav-link.is-active,
html.theme-dark body.header-rework .sectioned-page .sectioned-tabs__tab.is-active {
  color: var(--ui-text);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .simple-content__toc-link:hover,
html.theme-dark body.header-rework .services-tabs--vertical .services-tabs__tab:hover,
html.theme-dark body.header-rework .license-tabs--vertical .license-tabs__tab:hover,
html.theme-dark body.header-rework .license-tabs__sublink:hover,
html.theme-dark body.header-rework .license-faq__nav-link:hover,
html.theme-dark body.header-rework .sectioned-page .sectioned-tabs__tab:hover,
html.theme-dark body.header-rework .simple-content__body a,
html.theme-dark body.header-rework .services-content__body a,
html.theme-dark body.header-rework .license-content__body a,
html.theme-dark body.header-rework .license-faq__answer a,
html.theme-dark body.header-rework .sectioned-content__body a {
  color: var(--text-accent);
}

html.theme-dark body.header-rework .services-tabs--scroll .services-tabs__panel,
html.theme-dark body.header-rework .sectioned-page .sectioned-tabs__panel + .sectioned-tabs__panel,
html.theme-dark body.header-rework .license-content__download {
  border-color: var(--ui-border);
}

@media (max-width: 768px) {
  html.theme-dark body.header-rework .news-article__sidebar,
  html.theme-dark body.header-rework .simple-content__sidebar,
  html.theme-dark body.header-rework .services-tabs--vertical .services-tabs__nav,
  html.theme-dark body.header-rework .license-faq__sidebar,
  html.theme-dark body.header-rework .license-tabs--vertical .license-tabs__nav {
    border-bottom-color: var(--ui-border);
  }
}

html.theme-dark body.header-rework .select--border,
html.theme-dark body.header-rework .select2-container--stx .select2-selection--single,
html.theme-dark body.header-rework .select--border .select2-selection--single,
html.theme-dark body.header-rework .select--border .select2-container--stx .select2-selection__rendered {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .select2-container--stx .select2-selection--single,
html.theme-dark body.header-rework .select--border .select2-selection--single,
html.theme-dark body.header-rework .select--alt .select2-selection--single,
html.theme-dark body.header-rework .sub-header .select .select2-selection--single {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .select2-container--stx .select2-selection--single .select2-selection__rendered,
html.theme-dark body.header-rework .select--alt .select2-container--stx .select2-selection--single .select2-selection__rendered,
html.theme-dark body.header-rework .sub-header .select .select2-selection--single .select2-selection__rendered,
html.theme-dark body.header-rework .select2-container--stx .select2-selection--single .select2-selection__placeholder,
html.theme-dark body.header-rework .select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: rgba(242, 240, 232, 0.72);
  background: var(--ui-surface-2);
}

html.theme-dark body.header-rework .select--alt .select2-container--stx .select2-selection--single .select2-selection__rendered,
html.theme-dark body.header-rework .sub-header .select.select--alt .select2-selection--single .select2-selection__rendered {
  border-radius: 20px;
}

html.theme-dark body.header-rework .select2-container--stx .select2-selection--single .select2-selection__arrow,
html.theme-dark body.header-rework .select2-container--default .select2-selection--single .select2-selection__arrow {
  color: var(--ui-text);
  background: transparent;
}

html.theme-dark body.header-rework .select2-container--stx .select2-selection--single .select2-selection__arrow b,
html.theme-dark body.header-rework .select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: rgba(242, 240, 232, 0.72) transparent transparent;
}

html.theme-dark body.header-rework .select2-container--stx.select2-container--open .select2-selection--single .select2-selection__arrow b,
html.theme-dark body.header-rework .select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
  border-color: transparent transparent rgba(242, 240, 232, 0.72);
}

html.theme-dark
  body.header-rework
  .sub-header
  .select.select--alt
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow
  b {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.36em 0.3em 0;
  border-color: rgba(242, 240, 232, 0.78) transparent transparent transparent;
  transform: translate(-50%, -40%);
}

html.theme-dark
  body.header-rework
  .sub-header
  .select.select--alt
  .select2-container--stx.select2-container--open
  .select2-selection--single
  .select2-selection__arrow
  b {
  border-width: 0 0.3em 0.36em;
  border-color: transparent transparent rgba(242, 240, 232, 0.78) transparent;
  transform: translate(-50%, -60%);
}


html.theme-dark body.header-rework .select2-dropdown,
html.theme-dark body.header-rework .select2-container--stx .select2-dropdown,
html.theme-dark body.header-rework .select2-container--default .select2-dropdown {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .select2-results__options,
html.theme-dark body.header-rework .select2-results {
  background: transparent;
}

html.theme-dark body.header-rework .select2-results__option {
  color: var(--ui-text);
  background: transparent;
}

html.theme-dark body.header-rework .select2-results__option[aria-selected="true"] {
  background: var(--ui-surface);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .select2-results__option--highlighted[aria-selected],
html.theme-dark body.header-rework .select2-results__option[aria-selected="true"].select2-results__option--highlighted {
  background: var(--text-accent);
  color: #ffffff;
}

html.theme-dark body.header-rework .select2-search--dropdown,
html.theme-dark body.header-rework .select2-search--dropdown .select2-search__field {
  background: var(--ui-surface);
  border-color: var(--ui-border);
  color: var(--ui-text);
}

.account-cart-drawer-fragment--cart {
  --cart-bg: var(--ui-bg);
  --cart-surface: var(--ui-surface-2);
  --cart-surface-alt: var(--ui-surface);
  --cart-border: var(--ui-border);
  --cart-text: var(--ui-text);
  --cart-muted: var(--ui-muted);
  --cart-accent: var(--text-accent);
  --cart-step-active: var(--ui-surface-2);
  color: var(--ui-text);
}

.account-cart-panel__content > .account-cart-drawer-fragment--cart {
  flex: 1 1 auto;
}

.account-cart-drawer-fragment--cart .wrapper.account-cart-drawer-cart {
  min-height: 100%;
  display: grid;
  grid-template-rows: auto 1fr auto;
  gap: 1rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-hero,
.account-cart-drawer-fragment--cart .cart-drawer-stepper,
.account-cart-drawer-fragment--cart .cart-drawer-actions,
.account-cart-drawer-fragment--cart .cart-drawer-actions__discount,
.account-cart-drawer-fragment--cart .cart-drawer-checkout-standalone,
.account-cart-drawer-fragment--cart .cart-drawer-top-cta,
.account-cart-panel__tabs {
  background: var(--cart-bg);
  box-shadow: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-overview,
.account-cart-drawer-fragment--cart .cart-drawer-list,
.account-cart-drawer-fragment--cart .cart-drawer-item,
.account-cart-drawer-fragment--cart .cart-drawer-summary {
  background: var(--cart-surface);
  border-color: var(--cart-border);
  color: var(--cart-text);
  box-shadow: none;
}

.account-cart-panel__tab,
.account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item-link,
.account-cart-drawer-fragment--cart .select--2 .select2-selection--single,
.account-cart-drawer-fragment--cart #discount_code .form-group__field-input {
  background: var(--cart-surface);
  border-color: var(--cart-border);
  color: var(--cart-text);
  box-shadow: none;
}

.account-cart-panel__tab.is-active,
.account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item-link.is-active,
.account-cart-drawer-fragment--cart .cart-drawer-stepper .is-done .order-steps__item-link {
  background: var(--cart-surface-alt);
  color: var(--cart-text);
}

.account-cart-drawer-fragment--cart .cart-drawer-hero .header-block__title {
  font-size: 1.55rem;
}

.account-cart-drawer-fragment--cart .cart-counter--alt,
.account-cart-drawer-fragment--cart .cart-drawer-top-cta .btn {
  background: var(--cart-accent);
  border-color: var(--cart-accent);
}

.account-cart-drawer-fragment--cart .cart-counter--alt {
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-top-cta {
  margin-top: auto;
}

.account-cart-drawer-fragment--cart .cart-drawer-item__title,
.account-cart-drawer-fragment--cart .cart-drawer-item__name,
.account-cart-drawer-fragment--cart .flex-table__value,
.account-cart-drawer-fragment--cart .cart-drawer-license-name,
.account-cart-drawer-fragment--cart .cart-drawer-license-badge {
  color: var(--cart-text);
}

.account-cart-drawer-fragment--cart .remove-btn,
.account-cart-drawer-fragment--cart .remove-btn::before,
.account-cart-drawer-fragment--cart .remove-btn::after,
.account-cart-drawer-fragment--cart .remove-btn__icon::before,
.account-cart-drawer-fragment--cart .remove-btn__icon::after {
  color: var(--cart-text);
  border-color: var(--cart-border);
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer > .btn,
.account-cart-drawer-fragment--cart #proceed_btn,
.account-cart-drawer-fragment--cart #download_btn,
.account-cart-drawer-fragment--cart #discount_code .form-group__field-btn {
  box-shadow: none;
}


html.theme-dark body.header-rework .cart-drawer-overview,
html.theme-dark body.header-rework .cart-drawer-hero,
html.theme-dark body.header-rework .cart-drawer-stepper,
html.theme-dark body.header-rework .cart-drawer-actions,
html.theme-dark body.header-rework .cart-drawer-actions__discount,
html.theme-dark body.header-rework .cart-drawer-checkout-standalone,
html.theme-dark body.header-rework .cart-drawer-delivery-note {
  background: var(--ui-bg);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .cart-drawer-overview .header-block__title,
html.theme-dark body.header-rework .cart-drawer-overview .cart-counter--alt {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .cart-drawer-stepper.order-steps::before {
  background: rgba(242, 240, 232, 0.28);
}

html.theme-dark body.header-rework .cart-drawer-stepper.order-steps::after {
  background: var(--text-accent);
}

html.theme-dark body.header-rework .cart-drawer-stepper .order-steps__item,
html.theme-dark body.header-rework .cart-drawer-stepper .order-steps__item-link {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .cart-drawer-stepper .order-steps__item-link::before {
  background: var(--ui-bg);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .cart-drawer-stepper .order-steps__item-link.is-active::before,
html.theme-dark body.header-rework .cart-drawer-stepper .order-steps__item-link.is-done::before {
  background: var(--text-accent);
  border-color: var(--ui-bg);
}

html.theme-dark body.header-rework .cart-drawer-list,
html.theme-dark body.header-rework .cart-drawer-list .flex-table,
html.theme-dark body.header-rework .cart-drawer-list .flex-table__row {
  background: var(--ui-surface);
  color: var(--ui-text);
  border-color: var(--ui-border);
}

html.theme-dark body.header-rework .cart-drawer-list .flex-table__row--header {
  background: transparent;
}

html.theme-dark body.header-rework .cart-drawer-list .flex-table__col--column,
html.theme-dark body.header-rework .cart-drawer-list .js-purchase-option-group,
html.theme-dark body.header-rework .cart-drawer-list .js-purchase-option,
html.theme-dark body.header-rework .cart-drawer-list .js-purchase-option .select {
  background: transparent;
  border: 0;
}

html.theme-dark body.header-rework .cart-drawer-list .flex-table__row--footer {
  background: var(--ui-overlay);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .cart-drawer-list .flex-table__value,
html.theme-dark body.header-rework .cart-drawer-list .cart-drawer-item__title,
html.theme-dark body.header-rework .cart-drawer-list .cart-drawer-item__name,
html.theme-dark body.header-rework .cart-drawer-list .cart-drawer-license-name,
html.theme-dark body.header-rework .cart-drawer-list .cart-drawer-license-badge {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .cart-drawer-list .flex-table__value--light,
html.theme-dark body.header-rework .under-the-line__text {
  color: var(--ui-muted);
}

html.theme-dark body.header-rework .cart-drawer-list .select--2 .select2-selection--single,
html.theme-dark body.header-rework #discount_code .form-group__field-input {
  background: var(--ui-surface-2);
  border-color: var(--ui-border);
  color: var(--ui-text);
}

html.theme-dark body.header-rework .cart-drawer-list .js-ff-item .select2-container--stx .select2-selection--single {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
  color: var(--ui-text);
}

html.theme-dark body.header-rework
  .cart-drawer-list
  .js-ff-item
  .select2-container--stx
  .select2-selection--single
  .select2-selection__rendered {
  color: var(--ui-text);
  background: transparent;
}

html.theme-dark body.header-rework
  .cart-drawer-list
  .js-ff-item
  .select2-container--stx
  .select2-selection--single
  .select2-selection__arrow {
  color: var(--ui-text);
}

html.theme-dark body.header-rework #discount_code .form-group__field-input::placeholder {
  color: var(--ui-muted);
  opacity: 1;
}

html.theme-dark body.header-rework #discount_code .form-group__field-btn {
  background: var(--ui-surface);
  border: 1px solid var(--ui-border-strong);
  color: var(--ui-text);
}

html.theme-dark body.header-rework #discount_code .form-group__field-btn:hover {
  background: var(--text-accent);
  border-color: var(--text-accent);
  color: #fff;
}

html.theme-dark body.header-rework #proceed_btn,
html.theme-dark body.header-rework #download_btn,
html.theme-dark body.header-rework .cart-drawer-checkout-btn,
html.theme-dark body.header-rework .cart-drawer-top-cta .btn {
  background: var(--text-accent);
  border-color: var(--text-accent);
  color: #fff;
}

html.theme-dark body.header-rework .remove-btn {
  background: var(--ui-surface-2);
  border-color: var(--ui-border-strong);
}

html.theme-dark body.header-rework .remove-btn::before,
html.theme-dark body.header-rework .remove-btn::after,
html.theme-dark body.header-rework .remove-btn__icon::before,
html.theme-dark body.header-rework .remove-btn__icon::after {
  background: var(--ui-text);
}

html.theme-dark body.header-rework .non-touch .remove-btn:hover,
html.theme-dark body.header-rework .remove-btn:hover {
  background: var(--text-accent);
  border-color: var(--text-accent);
}

html.theme-dark body.header-rework .non-touch .remove-btn:hover::before,
html.theme-dark body.header-rework .non-touch .remove-btn:hover::after,
html.theme-dark body.header-rework .remove-btn:hover::before,
html.theme-dark body.header-rework .remove-btn:hover::after {
  background: #fff;
}

html.theme-dark body.header-rework .under-the-line {
  border-top-color: var(--ui-border);
}

.main-footer {
  color: var(--ui-text);
}

.main-footer__top {
  background: #232629;
  color: #f2f0e8;
}

.main-footer__bottom {
  background: var(--ui-overlay);
  color: #f2f0e8;
}

.main-footer .footer-nav__title,
.main-footer .footer-nav__link,
.main-footer .form-group__field-input,
.main-footer .subscribe-form__text,
.main-footer .subscribe-form__text a {
  color: #f2f0e8;
}

.main-footer .subscribe-form__text {
  color: rgba(242, 240, 232, 0.68);
}

.main-footer .form-group__field-input {
  background: var(--ui-surface-2);
  border-color: var(--ui-border);
}

.main-footer .form-group__field-input::placeholder,
.main-footer .form-group__field-input::-webkit-input-placeholder,
.main-footer .form-group__field-input::-moz-placeholder,
.main-footer .form-group__field-input:-ms-input-placeholder,
.main-footer .form-group__field-input::-ms-input-placeholder,
.main-footer .form-group__field-input:-moz-placeholder {
  color: rgba(102, 96, 85, 0.9);
  opacity: 1;
}

.main-footer .form__error-container--alt .form__error {
  color: #b4362a;
}

.main-footer .copyright,
.main-footer .social-network__link,
.main-footer .copyright--studiox .copyright__link {
  color: rgba(242, 240, 232, 0.78);
}

.non-touch .main-footer .social-network__link:hover,
.non-touch .main-footer .copyright--studiox .copyright__link:hover {
  color: #ffffff;
}

html.theme-dark .main-footer__top {
  background: #232629;
  color: var(--ui-text);
}

html.theme-dark .main-footer,
html.theme-dark .main-footer__bottom {
  background: var(--ui-bg);
  color: var(--ui-text);
  border-color: var(--ui-border);
}

html.theme-dark .main-footer .form-group__field-input,
html.theme-dark .main-footer .subscribe-form__text,
html.theme-dark .main-footer a,
html.theme-dark .main-footer .copyright,
html.theme-dark .social-network__link {
  color: var(--ui-text);
}

html.theme-dark .main-footer .form-group__field-input {
  background: var(--ui-surface-2);
  border-color: var(--ui-border);
  color: var(--ui-text);
  caret-color: var(--ui-text);
  box-shadow: none;
}

html.theme-dark .main-footer .form-group__field-input:focus,
html.theme-dark .main-footer .form-group__field-input:active {
  background: var(--ui-surface);
  border-color: var(--ui-border-strong);
  color: var(--ui-text);
}

html.theme-dark .main-footer .form-group__field-input:-webkit-autofill,
html.theme-dark .main-footer .form-group__field-input:-webkit-autofill:hover,
html.theme-dark .main-footer .form-group__field-input:-webkit-autofill:focus {
  -webkit-text-fill-color: var(--ui-text);
  -webkit-box-shadow: 0 0 0 1000px var(--ui-surface-2) inset;
  box-shadow: 0 0 0 1000px var(--ui-surface-2) inset;
  caret-color: var(--ui-text);
}

html.theme-dark .main-footer .form-group__field-input::placeholder,
html.theme-dark .main-footer .form-group__field-input::-webkit-input-placeholder,
html.theme-dark .main-footer .form-group__field-input::-moz-placeholder,
html.theme-dark .main-footer .form-group__field-input:-ms-input-placeholder,
html.theme-dark .main-footer .form-group__field-input::-ms-input-placeholder,
html.theme-dark .main-footer .form-group__field-input:-moz-placeholder {
  color: rgba(242, 240, 232, 0.34);
  opacity: 1;
}

html.theme-dark .main-footer #subscribe-email,
html.theme-dark .main-footer #subscribe-email:focus,
html.theme-dark .main-footer #subscribe-email:active {
  color: var(--ui-text);
  -webkit-text-fill-color: var(--ui-text);
}

html.theme-dark .main-footer #subscribe-email::placeholder,
html.theme-dark .main-footer #subscribe-email::-webkit-input-placeholder,
html.theme-dark .main-footer #subscribe-email::-moz-placeholder,
html.theme-dark .main-footer #subscribe-email:-ms-input-placeholder,
html.theme-dark .main-footer #subscribe-email::-ms-input-placeholder,
html.theme-dark .main-footer #subscribe-email:-moz-placeholder {
  color: rgba(242, 240, 232, 0.56);
  -webkit-text-fill-color: rgba(242, 240, 232, 0.56);
  opacity: 1;
}

html.theme-dark .main-footer__bottom {
  background: var(--ui-overlay);
  border-top: 1px solid var(--ui-border);
}

html.theme-dark .main-footer .copyright,
html.theme-dark .main-footer .social-network__link,
html.theme-dark .main-footer .copyright--studiox .copyright__link {
  color: rgba(242, 240, 232, 0.78);
}

@media (max-width: 768px) {
  .auth-drawer-global {
    width: 100vw;
  }
}

html.theme-dark body.header-rework.has-front-carousel .section--light,
html.theme-dark body.header-rework.has-front-carousel .section--padded-80-bottom,
html.theme-dark body.header-rework.has-front-carousel .section--padded-40,
html.theme-dark body.header-rework.has-front-carousel .section--padded-40-bottom {
  background: var(--ui-bg);
  color: var(--ui-text);
}

html.theme-dark body.header-rework.has-front-carousel .section--light .wrapper,
html.theme-dark body.header-rework.has-front-carousel .section--padded-80-bottom .wrapper,
html.theme-dark body.header-rework.has-front-carousel .section--padded-40 .wrapper,
html.theme-dark body.header-rework.has-front-carousel .section--padded-40-bottom .wrapper {
  background: transparent;
}

.main-footer .social-network__link .icon,
.main-footer .social-network__link .icon use {
  color: inherit;
  fill: currentColor;
  stroke: currentColor;
}

html.theme-dark .main-footer .social-network__link {
  color: rgba(242, 240, 232, 0.86);
}

html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .wrapper,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-list,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-list__item {
  background: var(--ui-bg);
}

html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-block,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .fit-block__text,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-info,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-info__item,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-info__title,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-info__title--alt {
  color: var(--ui-text);
  -webkit-text-fill-color: var(--ui-text);
  opacity: 1;
}

html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .fit-block__text:hover,
html.theme-dark body.header-rework.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-block:hover .font-info__title {
  color: var(--text-accent);
  -webkit-text-fill-color: var(--text-accent);
}

body.header-rework .helper-row {
  background: none;
}

html.theme-dark body.header-rework .helper-row__content {
  background: transparent;
}

html.theme-dark body.header-rework .helper-row__title {
  color: var(--ui-text);
}

html.theme-dark body.header-rework .helper-row__text,
html.theme-dark body.header-rework .helper-row__text a {
  background: transparent;
  color: rgba(242, 240, 232, 0.92);
}


#tester .editor__controls .editor__range {
  height: 32px;
  min-height: 32px;
}


body.header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link:is(:hover, :focus-visible, :active, .is-active),
body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link:is(:hover, .is-active),
body.header-rework .main-nav__theme-toggle:is(:hover, :focus-visible),
body.header-rework .main-nav__proto-watch:is(:hover, :focus-visible),
body.header-rework .main-nav__link.main-nav__link--boxed:hover {
  background: var(--header-rework-pill-hover-bg);
  color: var(--header-rework-pill-hover-text);
  -webkit-text-fill-color: currentColor;
  border-color: transparent;
}

body.header-rework .main-nav__submenu-link:is(:hover, .is-active, [aria-current="page"]),
body.header-rework .main-nav__menu-link:is(:hover, .is-active, [aria-current="page"]) {
  background: var(--header-rework-dropdown-item-hover-bg);
  color: var(--header-rework-pill-hover-text);
  -webkit-text-fill-color: currentColor;
}


@media (min-width: 991px) {
  body.header-rework .site-logo__link,
  body.header-rework .site-logo__link:hover,
  body.header-rework .site-logo__link:focus,
  body.header-rework .site-logo__link:visited {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    color: var(--ui-text);
    -webkit-text-fill-color: var(--ui-text);
  }

  body.header-rework .main-nav {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    position: relative;
  }

  body.header-rework .main-nav > .main-nav__mobile-menu-btn {
    display: none;
  }

  body.header-rework .main-nav > .site-logo {
    flex: 0 0 auto;
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    margin-right: 0.45rem;
  }

  body.header-rework .main-nav > .main-nav__list--primary {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0;
    padding: 0;
    pointer-events: auto;
  }

  body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 0.45rem;
    margin: 0 0 0 auto;
    padding: 0;
  }

  body.header-rework .main-nav__list--primary > .main-nav__list-item,
  body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item {
    position: relative;
    margin: 0;
  }

  body.header-rework .main-nav__list--primary > .main-nav__list-item::after,
  body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item::after {
    content: "";
    position: absolute;
    top: 100%;
    left: -0.75rem;
    right: -0.75rem;
    height: 8px;
  }

  body.header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link,
  body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link,
  body.header-rework .main-nav__theme-toggle,
  body.header-rework .main-nav__proto-watch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    height: 34px;
    padding: 0 12px;
    border: 0;
    border-radius: 12px;
    background: var(--header-rework-pill-bg);
    box-shadow: none;
    text-decoration: none;
    transition: background-color 0.18s ease, color 0.18s ease;
    color: var(--header-rework-pill-text);
    -webkit-text-fill-color: var(--header-rework-pill-text);
  }

  body.header-rework .site-logo__wordmark,
  body.header-rework.font-page .site-logo__font-name:not(.site-logo__font-name--status) {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    height: 34px;
    padding: 0 12px;
    border: 0;
    border-radius: 25px;
    background: var(--header-rework-pill-bg);
    box-shadow: none;
    color: var(--header-rework-pill-text);
    -webkit-text-fill-color: var(--header-rework-pill-text);
    text-decoration: none;
  }

  body.header-rework .main-nav__link .main-nav__text-btn,
  body.header-rework .main-nav__link .main-nav__count,
  body.header-rework .main-nav__link #cart_id {
    color: inherit;
    -webkit-text-fill-color: currentColor;
  }

  body.header-rework .main-nav__submenu,
  body.header-rework .main-nav__submenu--mega,
  body.header-rework .main-nav__menu-panel {
    background: var(--header-rework-dropdown-bg);
    border: 1px solid var(--header-rework-dropdown-border);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    box-shadow: var(--header-rework-dropdown-shadow);
  }

  body.header-rework .main-nav__menu-btn.main-nav__link--boxed {
    border: 0;
    min-width: 34px;
    width: 34px;
    padding: 0;
  }

  body.header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link::before,
  body.header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link::after,
  body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link::before,
  body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link::after {
    content: none;
    display: none;
    border: 0;
    box-shadow: none;
  }

  body.header-rework .main-nav__submenu-link,
  body.header-rework .main-nav__menu-link {
    border-radius: 10px;
    background: transparent;
    color: var(--header-rework-pill-text);
    -webkit-text-fill-color: var(--header-rework-pill-text);
    transition: background-color 0.18s ease, color 0.18s ease;
  }

  body.header-rework .main-nav__theme-toggle {
    width: 34px;
    min-width: 34px;
    padding: 0;
  }

  body.header-rework .main-nav__proto-watch {
    width: 34px;
    min-width: 34px;
    padding: 0;
  }

  body.header-rework .main-nav__theme-toggle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    transform: none;
    transition: none;
  }

  body.header-rework .main-nav__theme-toggle-icon .icon {
    width: 18px;
    height: 18px;
    fill: currentColor;
  }

  @keyframes proto-pill-jiggle {
    0% {
      transform: translate3d(0, 0, 0) rotate(0deg);
    }
    25% {
      transform: translate3d(1px, -1px, 0) rotate(-1.2deg);
    }
    50% {
      transform: translate3d(-1px, 0, 0) rotate(1deg);
    }
    75% {
      transform: translate3d(1px, 1px, 0) rotate(-0.8deg);
    }
    100% {
      transform: translate3d(0, 0, 0) rotate(0deg);
    }
  }

  body.header-rework.font-page .site-logo__font-name--status {
    min-height: 33px;
    height: 33px;
    border: 0;
    background: rgb(224 218 247);
    box-shadow: inset 0 0 0 1.5px rgb(191 179 240);
    color: var(--accent-color, #613afb);
    -webkit-text-fill-color: var(--accent-color, #613afb);
    transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease, box-shadow 0.18s ease;
  }

  body.header-rework.font-page .site-logo__font-name--status:hover {
    background: rgb(214 206 245);
    box-shadow: inset 0 0 0 1.5px rgb(175 159 238);
    animation: proto-pill-jiggle 0.36s ease-in-out 1;
  }

  html.theme-dark body.header-rework .site-logo__wordmark,
  html.theme-dark body.header-rework.font-page .site-logo__font-name:not(.site-logo__font-name--status) {
    color: var(--header-rework-pill-text);
    -webkit-text-fill-color: var(--header-rework-pill-text);
  }

  html.theme-dark body.header-rework.font-page .site-logo__font-name--status {
    border: 0;
    background: rgb(46 53 83);
    box-shadow: inset 0 0 0 1.5px rgb(88 109 176);
    color: #86a2ff;
    -webkit-text-fill-color: #86a2ff;
  }

  html.theme-dark body.header-rework.font-page .site-logo__font-name--status:hover {
    background: rgb(56 64 98);
    box-shadow: inset 0 0 0 1.5px rgb(108 129 196);
  }

}


body.header-rework .main-nav__theme-toggle::before,
body.header-rework .main-nav__theme-toggle::after,
body.header-rework .main-nav__proto-watch::before,
body.header-rework .main-nav__proto-watch::after {
  content: none;
  display: none;
  border: 0;
  box-shadow: none;
}

body.header-rework .main-nav__theme-toggle,
body.header-rework .main-nav__proto-watch {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  min-width: 34px;
  min-height: 34px;
  height: 34px;
  padding: 0;
  overflow: hidden;
}

body.header-rework .main-nav__theme-toggle-icon,
body.header-rework .main-nav__proto-watch-icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border-radius: 0;
  color: #f2f0e8;
  transform: rotate(0deg);
  transition: transform 0.22s ease;
}

body.header-rework .main-nav__theme-toggle-icon .icon,
body.header-rework .main-nav__proto-watch-icon .icon {
  width: 18px;
  height: 18px;
  display: block;
  overflow: visible;
  shape-rendering: geometricPrecision;
  fill: currentColor;
}

body.header-rework .main-nav__theme-toggle-icon .icon path,
body.header-rework .main-nav__proto-watch-icon .icon path {
  fill: currentColor;
}


body.header-rework .opentype-feature-item {
  /* The border/background now live on .opentype-feature-sample only, so the
     toggle+label row below renders outside the boxed sample, not inside it. */
  background: transparent;
  border: 0;
  border-radius: 0;
  overflow: visible;
  box-shadow: none;
}

body.header-rework .opentype-feature-sample {
  background-color: #fbfbfb;
  background-image: none;
  color: #181c22;
  border: 1px solid #e2e2e2;
  border-radius: 5px;
  transition: background-color 0.2s ease, background-image 0.2s ease, border-color 0.2s ease;
}

body.header-rework .opentype-feature-item:hover .opentype-feature-sample {
  /* Thin 45deg hatching, neutral (no accent/blue tint) — the accent color
     lives on the toggle switch instead, so this stays purely textural. */
  border-color: #333333;
  background-color: #f7f7f7;
  background-image: repeating-linear-gradient(
    45deg,
    rgba(0, 0, 0, 0.045) 0,
    rgba(0, 0, 0, 0.045) 1px,
    transparent 1px,
    transparent 8px
  );
}

body.header-rework .opentype-feature-control {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin-top: 0.5rem;
  padding: 0.75rem 0.25rem 0;
}

body.header-rework .opentype-feature-name {
  color: #1e232b;
}

body.header-rework .opentype-feature-code {
  color: #616979;
}

body.header-rework .opentype-toggle__slider {
  background-color: #8d939f;
}

body.header-rework .opentype-toggle__slider:before {
  background-color: #f5f7fa;
}

body.header-rework .opentype-feature-item .feature-highlight {
  color: #0a0c10;
}

body.header-rework .opentype-feature-item .feature-muted,
body.header-rework .opentype-feature-item:not(.feature-on) .feature-muted {
  color: #b7bbc4;
}

body.header-rework .opentype-feature-item:not(.feature-on) .feature-highlight {
  color: #232a34;
}

body.header-rework .opentype-toggle__input:checked + .opentype-toggle__slider {
  background-color: var(--accent-color-base, #613afb);
}

body.header-rework .opentype-feature-item.feature-on .opentype-feature-sample .feature-highlight {
  color: #0a0c10;
}

body.header-rework .opentype-feature-item.feature-on .opentype-feature-sample .feature-muted {
  color: #b7bbc4;
}

html.theme-dark body.header-rework .opentype-feature-item {
  background: transparent;
  border: 0;
}

html.theme-dark body.header-rework .opentype-feature-sample {
  background-color: #202020;
  background-image: none;
  color: #f2f0e8;
  border: 1px solid #333333;
  border-radius: 5px;
  transition: background-color 0.2s ease, background-image 0.2s ease, border-color 0.2s ease;
}

html.theme-dark body.header-rework .opentype-feature-item:hover .opentype-feature-sample {
  border-color: #999999;
  background-color: #262626;
  background-image: repeating-linear-gradient(
    45deg,
    rgba(255, 255, 255, 0.05) 0,
    rgba(255, 255, 255, 0.05) 1px,
    transparent 1px,
    transparent 8px
  );
}

html.theme-dark body.header-rework .opentype-feature-control {
  background: transparent;
  border: 0;
  border-radius: 0;
  margin-top: 0.5rem;
  padding: 0.75rem 0.25rem 0;
}

html.theme-dark body.header-rework .opentype-feature-name {
  color: #f2f0e8;
}

html.theme-dark body.header-rework .opentype-feature-code {
  color: #96a0b2;
}

html.theme-dark body.header-rework .opentype-toggle__slider {
  background-color: #4d5666;
}

html.theme-dark body.header-rework .opentype-toggle__slider:before {
  background-color: #f2f0e8;
}

html.theme-dark body.header-rework .opentype-feature-item .feature-highlight,
html.theme-dark body.header-rework .opentype-feature-item.feature-on .feature-highlight {
  color: #f5f6fa;
}

html.theme-dark body.header-rework .opentype-feature-item .feature-muted,
html.theme-dark body.header-rework .opentype-feature-item:not(.feature-on) .feature-muted {
  color: #5a6070;
}

html.theme-dark body.header-rework .opentype-feature-item:not(.feature-on) .feature-highlight {
  color: #cfd3dc;
}


.font-page.header-rework .main-nav__list .main-nav__link.js-theme-toggle .icon,
.font-page.header-rework .main-nav__list .main-nav__link.main-nav__theme-toggle .icon,
.font-page.header-rework .main-nav__theme-toggle .icon {
  display: block;
}

.font-page.header-rework .main-nav__theme-toggle-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

body.header-rework .main-nav__theme-toggle[aria-pressed="true"] .main-nav__theme-toggle-icon {
  transform: rotate(180deg);
}

body.header-rework .main-nav__theme-toggle {
  color: #171512;
}

body.header-rework .main-nav__proto-watch {
  color: #171512;
}

html.theme-dark body.header-rework .main-nav__theme-toggle {
  color: #f2f0e8;
}

html.theme-dark body.header-rework .main-nav__proto-watch {
  color: #f2f0e8;
}

html.theme-dark .header-rework .main-nav__theme-toggle-icon,
html.theme-dark body.header-rework .main-nav__theme-toggle-icon,
html.theme-dark .header-rework .main-nav__proto-watch-icon,
html.theme-dark body.header-rework .main-nav__proto-watch-icon {
  background: transparent;
}

html.theme-dark body.header-rework .main-nav__theme-toggle-icon .icon path,
html.theme-dark body.header-rework .main-nav__proto-watch-icon .icon path {
  fill: #f2f0e8;
}


html.theme-dark body.header-rework .main-nav__theme-toggle,
html.theme-dark .header-rework .main-nav__theme-toggle,
html.theme-dark body.header-rework .main-nav__proto-watch,
html.theme-dark .header-rework .main-nav__proto-watch {
  background: #2b3038;
}


html.theme-dark body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link:hover .main-nav__text-btn,
html.theme-dark body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link:hover .main-nav__count,
html.theme-dark body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link:hover #cart_id,
html.theme-dark body.header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) > .main-nav__list-item > .main-nav__link:hover .icon {
  color: #86a2ff;
  -webkit-text-fill-color: #86a2ff;
  fill: currentColor;
}


body.header-rework .main-nav__theme-toggle-icon,
body.header-rework .main-nav__proto-watch-icon {
  background: transparent;
  color: #f2f0e8;
}

body.header-rework .main-nav__theme-toggle-icon .icon.icon--24x24,
body.header-rework .main-nav__proto-watch-icon .icon.icon--24x24 {
  padding: 0;
  margin: 0;
}

body.header-rework .main-nav__theme-toggle-icon .icon path,
body.header-rework .main-nav__proto-watch-icon .icon path {
  fill: currentColor;
}


/* Consolidated: account-cart-drawer.css (2026-04-26) */
.auth-drawer-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.2);
  opacity: 0;
  pointer-events: none;
  transition:
    opacity 0.5s cubic-bezier(0.16, 1, 0.3, 1),
    background-color 0.54s ease,
    -webkit-backdrop-filter 0.54s ease,
    backdrop-filter 0.54s ease;
  z-index: 1400;
  -webkit-backdrop-filter: blur(0);
  backdrop-filter: blur(0);
}

.auth-drawer-global {
  position: fixed;
  top: 0;
  right: 0;
  width: min(750px, 100vw);
  height: 100dvh;
  max-height: none;
  overflow: hidden;
  border: 0;
  border-left: 1px solid rgba(0, 0, 0, 0.22);
  border-radius: 0;
  background: var(--ui-bg, #efeee5);
  opacity: 0;
  transform: translateX(100%);
  transform-origin: 100% 50%;
  filter: none;
  pointer-events: none;
  transition:
    transform 0.34s cubic-bezier(0.22, 1, 0.36, 1),
    opacity 0.26s ease-out,
    border-color 0.24s ease,
    background-color 0.24s ease;
  z-index: 1401;
  display: flex;
  flex-direction: column;
  box-shadow: none;
  will-change: transform, opacity;
}

.auth-drawer-open {
  overflow: hidden;
}

.auth-drawer-open .auth-drawer-overlay {
  opacity: 1;
  background: rgba(0, 0, 0, 0.38);
  pointer-events: auto;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
}

.auth-drawer-open .auth-drawer-global {
  opacity: 1;
  transform: translateX(0);
  pointer-events: auto;
}


@media (min-width: 991px) {
  .site {
    --auth-drawer-shift: min(750px, 100vw);
  }

  .site > *:not(.auth-drawer-overlay):not(.auth-drawer-global) {
    transition: transform 0.34s cubic-bezier(0.22, 1, 0.36, 1);
    will-change: transform;
  }

  .auth-drawer-open .site > *:not(.auth-drawer-overlay):not(.auth-drawer-global):not(.fonts-panel):not(.fonts-panel__overlay) {
    transform: translateX(calc(-1 * var(--auth-drawer-shift)));
    pointer-events: none;
    user-select: none;
  }

  .auth-drawer-open .auth-drawer-overlay {
    opacity: 1;
    pointer-events: auto;
    background: rgba(0, 0, 0, 0.26);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
  }
}

.auth-drawer-global__head {
  position: relative;
  top: auto;
  left: 0;
  right: 0;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 1.05rem 1.35rem;
  border-bottom: 1px solid #d0cfc6;
  background: inherit;
}

.auth-drawer-global__title,
.auth-drawer-global__close {
  pointer-events: auto;
}

.auth-drawer-global__title {
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.82rem;
}

.auth-drawer-global__close {
  border: 1px solid rgba(0, 0, 0, 0.35);
  border-radius: 999px;
  background: transparent;
  color: #000;
  cursor: pointer;
  padding: 0.4rem 0.85rem;
  font-family: inherit;
}

.auth-drawer-global__body {
  padding: 1.2rem 1.35rem 1.4rem;
  overflow: auto;
  overflow-x: hidden;
  flex: 1 1 auto;
  min-height: 0;
  max-height: none;
  overscroll-behavior: contain;
  opacity: 1;
  transform: none;
  filter: none;
  transition: none;
}

.auth-drawer-open .auth-drawer-global__body {
  opacity: 1;
  transform: none;
  filter: none;
  transition-delay: 0s;
}

html.theme-dark .auth-drawer-global {
  background: #1a1d20;
  border-left-color: rgba(242, 240, 232, 0.2);
}

html.theme-dark .auth-drawer-global__head {
  border-bottom-color: rgba(242, 240, 232, 0.2);
}

html.theme-dark .auth-drawer-global__title,
html.theme-dark .auth-drawer-global__close {
  color: #f2f0e8;
}

html.theme-dark .auth-drawer-global__close {
  border-color: rgba(242, 240, 232, 0.3);
}

@keyframes drawerSectionReveal {
  0% {
    opacity: 0;
    transform: translateY(10px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.auth-drawer-global__track {
  width: 100%;
}

.auth-drawer-global__auth {
  display: block;
}

.auth-drawer-global__auth.is-hidden {
  display: none;
}

.auth-drawer-global__section {
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  min-height: 0;
  display: none;
}

.auth-drawer-global__section--register {
  padding-top: 0;
  border-top: 0;
}

.auth-drawer-global__section.is-active {
  display: block;
  animation: drawerSectionReveal 0.46s cubic-bezier(0.16, 1, 0.3, 1) both;
}

.auth-drawer-global__section:last-child {
  margin-bottom: 0;
}

.auth-drawer-global .form.form--narrow {
  max-width: none;
  width: 100%;
  margin: 0;
}

.auth-drawer-global .header-block {
  margin: 0 0 1.4rem;
  text-align: left;
}

.auth-drawer-global .header-block__title {
  font-size: clamp(2rem, 3vw, 2.45rem);
  line-height: 0.95;
}

.auth-drawer-global .header-block__subtitle {
  margin-top: 0.85rem;
  color: #6f6e68;
  font-size: 1rem;
}

.auth-drawer-global .fieldset {
  margin: 0 -0.75em;
}

.auth-drawer-global .form__item {
  margin-bottom: 0.8rem;
  position: relative;
}

.auth-drawer-global .field__input {
  min-height: 3rem;
  padding: 0.8rem 1rem;
  padding-right: 12.2rem;
  border-radius: 999px;
  border: 1px solid #d5d4cc;
  background: #e9e9e9;
  color: #6f6e68;
  -webkit-text-fill-color: #6f6e68;
}

.auth-drawer-global .field__input::placeholder,
.auth-drawer-global .field__input::-webkit-input-placeholder,
.auth-drawer-global .field__input::-moz-placeholder,
.auth-drawer-global .field__input:-ms-input-placeholder,
.auth-drawer-global .field__input::-ms-input-placeholder,
.auth-drawer-global .field__input:-moz-placeholder {
  color: #8d8c86;
  opacity: 1 !important;
}

.auth-drawer-global .field__input:-webkit-autofill,
.auth-drawer-global .field__input:-webkit-autofill:hover,
.auth-drawer-global .field__input:-webkit-autofill:focus {
  -webkit-text-fill-color: #6f6e68 !important;
}

.auth-drawer-global .field {
  position: relative;
}

.auth-drawer-global .field .form__error,
.auth-drawer-global .form__item > .form__error,
.auth-drawer-global .field .form-error,
.auth-drawer-global .form__item > .form-error {
  position: absolute;
  right: 0.7rem;
  top: 50%;
  transform: translateY(-50%);
  margin: 0;
  padding: 0.15rem 0.4rem;
  max-width: 62%;
  border-radius: 8px;
  background: rgba(239, 238, 229, 0.94);
  color: #b4362a;
  font-size: 0.72rem;
  line-height: 1.1;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  pointer-events: none;
}

.auth-drawer-global .field__label {
  display: none;
}

.auth-drawer-global .form__row--remember {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.8rem;
}

.auth-drawer-global__forgot-wrap {
  margin-left: auto;
}

.auth-drawer-global__forgot-link {
  color: #77756f;
  text-decoration: none;
}

.auth-drawer-global__forgot-link:hover {
  text-decoration: underline;
}

.auth-drawer-global__submit-row {
  margin-top: 0.55rem;
}

.auth-drawer-global__submit-row .btn,
.auth-drawer-global__switch-row .btn {
  width: 100%;
  min-height: 3rem;
  border-radius: 999px;
  justify-content: center;
  text-transform: none;
  letter-spacing: 0;
}

.auth-drawer-global__submit-row,
.auth-drawer-global__switch-row {
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
}

.auth-drawer-global__switch-row .form__item {
  width: 100%;
  margin: 0;
  padding-left: 0;
  padding-right: 0;
}

.auth-drawer-global__submit-row .btn {
  background: #111;
  border-color: #111;
  color: #fff;
}

.auth-drawer-global__switch-row .btn {
  background: #e2e2e2;
  border-color: #d2d1cb;
  color: #111;
}

.non-touch .auth-drawer-global__switch-row .btn:not([disabled]):not(.btn--disabled):hover {
  color: #fff;
}

.auth-drawer-global .btn__icon {
  display: none;
}

.auth-drawer-global__switch {
  margin: 0.55rem 0;
  display: flex;
  align-items: center;
  gap: 0.55rem;
}

.auth-drawer-global__switch-line {
  flex: 1 1 auto;
  border-top: 1px solid #bbb9b2;
}

.auth-drawer-global__switch-label {
  color: #7a7972;
  font-size: 0.95rem;
}

.account-cart-panel {
  display: none;
}

.account-cart-panel.is-visible {
  display: block;
}

.account-cart-panel__tabs {
  display: flex;
  gap: 0.5rem;
  margin-bottom: 1rem;
  flex-wrap: wrap;
}

.account-cart-panel__tab {
  border: 1px solid rgba(0, 0, 0, 0.24);
  background: #fff;
  color: #111;
  border-radius: 999px;
  padding: 0.35rem 0.8rem;
  font-size: 0.85rem;
  cursor: pointer;
}

.account-cart-panel__tab.is-active {
  background: #111;
  color: #fff;
  border-color: #111;
}

.account-cart-panel__content {
  min-height: 120px;
}

.account-cart-panel__loading,
.account-cart-panel__error {
  font-size: 0.95rem;
  color: rgba(0, 0, 0, 0.7);
  padding: 0.5rem 0;
}

.account-cart-drawer-link {
  cursor: pointer;
}

.sub-header {
  background-color: var(--ui-bg, #efeee5);
}

.cart-counter {
  padding: 0 1.5em;
}

.main-nav__submenu-link[href*="/fonts/centrale-sans"] span {
  color: inherit;
}

.account-settings-offset {
  margin-top: 3em;
}

@media (max-width: 1024px) {
  .account-settings-offset {
    margin-top: 1.5em;
  }
}

#content .address-list--alt .address-list__item--center {
  flex-grow: 0;
  min-height: 0;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}

#content
  .js-form-validate-billing
  .address-list--alt
  .address-list__item--center {
  flex: 0 0 auto;
  flex-basis: auto;
  height: auto;
  min-height: 0;
  padding: 1rem 1.25rem;
}


#content .column-layout--cart .column-layout__col--sidebar > .flex-table {
  height: auto;
}


.theme-dark #content .js-form-validate-billing,
.theme-dark #content .js-form-validate-billing * {
  color: #f2f0e8;
}

.theme-dark #content .js-form-validate-billing .header-block,
.theme-dark #content .js-form-validate-billing .header-block--border {
  border-color: #343941;
}

.theme-dark #content .js-form-validate-billing .panel {
  background: #20242a;
  border: 1px solid #343941;
}

.theme-dark #content .js-form-validate-billing .fieldset {
  border-color: #343941;
}

.theme-dark #content .js-form-validate-billing .fieldset__title,
.theme-dark #content .js-form-validate-billing .header-block__title,
.theme-dark #content .js-form-validate-billing .field__label,
.theme-dark #content .js-form-validate-billing .address-list__header-title,
.theme-dark #content .js-form-validate-billing .address-list__text-item,
.theme-dark #content .js-form-validate-billing .flex-table__value {
  color: #f2f0e8;
}

.theme-dark #content .js-form-validate-billing .flex-table,
.theme-dark #content .js-form-validate-billing .flex-table__row {
  background: #20242a;
  border-color: #343941;
}

.theme-dark #content .js-form-validate-billing .flex-table__row--smaller {
  background: #1b1f25;
}

.theme-dark #content .js-form-validate-billing .flex-table__row--footer {
  background: #0f1216;
}

.theme-dark #content .js-form-validate-billing .flex-table__value--light,
.theme-dark #content .js-form-validate-billing .address-list__header-label {
  color: rgba(242, 240, 232, 0.72);
}

.theme-dark #content .js-form-validate-billing .address-list--alt .address-list__item {
  background: #21262e;
  border-color: #343941;
}

.theme-dark #content .js-form-validate-billing .address-list--alt .address-list__item.is-selected {
  background: #2a313b;
  border-color: #576174;
}

.theme-dark #content .js-form-validate-billing .address-list--alt .address-list__item--center {
  background: #1c2128;
  border-color: #343941;
}

.theme-dark #content .js-form-validate-billing .field__input {
  background: #1a1f26;
  border-color: #3c4452;
  color: #f2f0e8;
}

.theme-dark #content .js-form-validate-billing .field__input::placeholder {
  color: rgba(242, 240, 232, 0.58);
}

.theme-dark #content .js-form-validate-billing .check-radio__element,
.theme-dark #content .js-form-validate-billing .check-radio__element--alt {
  color: #f2f0e8;
}

.theme-dark #content .js-form-validate-billing .check-radio__element--alt a {
  color: #f2f0e8;
  border-bottom-color: rgba(242, 240, 232, 0.65);
}

.theme-dark #content .js-form-validate-billing .check-radio__input ~ .check-radio__element:before,
.theme-dark #content .js-form-validate-billing .check-radio__input ~ .check-radio__element:after {
  background: #1a1f26;
  border-color: #4f5968;
}

.theme-dark #content .js-form-validate-billing .check-radio__input:checked ~ .check-radio__element:after {
  background-color: #86a2ff;
  border-color: #86a2ff;
}

.theme-dark #content .js-form-validate-billing .btn,
.theme-dark #content .js-form-validate-billing .js-pay-button {
  background: #86a2ff;
  border-color: #86a2ff;
  color: #0f1115;
}

.theme-dark #content .js-form-validate-billing .js-pay-button[disabled],
.theme-dark #content .js-form-validate-billing .btn[disabled] {
  background: #5b6270;
  border-color: #5b6270;
  color: #d9dce4;
}

.theme-dark #content .order-steps::before {
  background: rgba(242, 240, 232, 0.24);
}

.theme-dark #content .order-steps::after {
  background: #86a2ff;
}

.theme-dark #content .order-steps .order-steps__item-link {
  color: #f2f0e8;
}

.theme-dark #content .order-steps .order-steps__item-link:before {
  background: #1a1d20;
  border-color: #f2f0e8;
}

.theme-dark #content .order-steps .order-steps__item-link.is-active:before,
.theme-dark #content .order-steps .order-steps__item-link.is-done:before {
  background: #86a2ff;
  border-color: #f2f0e8;
}


.theme-dark #content.account-cart-payment-page .header-block,
.theme-dark #content.account-cart-payment-page .header-block--border {
  border-color: #343941;
}

.theme-dark #content.account-cart-payment-page .header-block__title,
.theme-dark #content.account-cart-payment-page .hosted-fields--label,
.theme-dark #content.account-cart-payment-page .form__text--with-icon,
.theme-dark #content.account-cart-payment-page .form__text-icon,
.theme-dark #content.account-cart-payment-page .cart-counter--alt,
.theme-dark #content.account-cart-payment-page .flex-table__value {
  color: #f2f0e8;
}

.theme-dark #content.account-cart-payment-page .flex-table,
.theme-dark #content.account-cart-payment-page .flex-table__row {
  background: #20242a;
  border-color: #343941;
}

.theme-dark #content.account-cart-payment-page .flex-table__row--smaller {
  background: #1b1f25;
}

.theme-dark #content.account-cart-payment-page .flex-table__row--footer {
  background: #0f1216;
}

.theme-dark #content.account-cart-payment-page .flex-table__value--light {
  color: rgba(242, 240, 232, 0.72);
}

.theme-dark #content.account-cart-payment-page .panel {
  background: #20242a;
  border: 1px solid #343941;
}

.theme-dark #content.account-cart-payment-page .fieldset {
  border-color: #343941;
}

.theme-dark #content.account-cart-payment-page .hosted-field {
  background: #1a1f26;
  border-color: #3c4452;
}

.theme-dark #content.account-cart-payment-page .braintree-hosted-fields-focused {
  border-color: #86a2ff;
}

.theme-dark #content.account-cart-payment-page .btn,
.theme-dark #content.account-cart-payment-page input[type="submit"] {
  background: #86a2ff;
  border-color: #86a2ff;
  color: #0f1115;
}

.theme-dark #content.account-cart-payment-page .btn:hover,
.theme-dark #content.account-cart-payment-page input[type="submit"]:hover {
  background: #9db5ff;
  border-color: #9db5ff;
}


html.theme-dark .account-settings-offset .panel,
html.theme-dark .account-settings-offset .panel--light {
  background: #20242a;
  border: 1px solid #343941;
}

html.theme-dark .account-settings-offset .header-block,
html.theme-dark .account-settings-offset .header-block--border,
html.theme-dark .account-settings-offset .fieldset {
  border-color: #343941;
}

html.theme-dark .account-settings-offset .header-block__title,
html.theme-dark .account-settings-offset .header-block__subtitle,
html.theme-dark .account-settings-offset .fieldset__title,
html.theme-dark .account-settings-offset .field__label,
html.theme-dark .account-settings-offset .address-list__header-title,
html.theme-dark .account-settings-offset .address-list__text-item,
html.theme-dark .account-settings-offset .action-list__item .action-link {
  color: #f2f0e8;
}

html.theme-dark .account-settings-offset .address-list__header-label,
html.theme-dark .account-settings-offset .field__label-optional {
  color: rgba(242, 240, 232, 0.7);
}

html.theme-dark .account-settings-offset .field__input {
  background: #1a1f26;
  border-color: #3c4452;
  color: #f2f0e8;
}

html.theme-dark .account-settings-offset .field__input::placeholder {
  color: rgba(242, 240, 232, 0.58);
}

html.theme-dark .account-settings-offset .address-list__item {
  background: #21262e;
  border-color: #343941;
}

html.theme-dark .account-settings-offset .address-list__item--center {
  background: #1c2128;
}

html.theme-dark .account-settings-offset .address-list__header-btn {
  color: #f2f0e8;
}

html.theme-dark .account-settings-offset .address-list__header-btn .icon {
  fill: #f2f0e8;
}

html.theme-dark .account-settings-offset .action-link,
html.theme-dark .account-settings-offset .action-link--accent {
  color: #86a2ff;
}

html.theme-dark .account-settings-offset .btn,
html.theme-dark .account-settings-offset input[type="submit"] {
  background: #86a2ff;
  border-color: #86a2ff;
  color: #0f1115;
}

html.theme-dark .account-settings-offset .btn:hover,
html.theme-dark .account-settings-offset input[type="submit"]:hover {
  background: #9db5ff;
  border-color: #9db5ff;
}


html.theme-dark .order-list__item--header {
  border-color: transparent;
}

html.theme-dark .column-layout--orders .order-header__title,
html.theme-dark .column-layout--orders .order-header__status,
html.theme-dark .column-layout--orders .address-list__text-item,
html.theme-dark .column-layout--orders .flex-table__value {
  color: #f2f0e8;
}

html.theme-dark .column-layout--orders .address-list__text-item--spaced,
html.theme-dark .column-layout--orders .flex-table__value--light,
html.theme-dark .column-layout--orders .flex-table__value--alt {
  color: rgba(242, 240, 232, 0.72);
}

html.theme-dark .column-layout--orders .panel,
html.theme-dark .column-layout--orders .panel--light {
  background: #20242a;
  border: 1px solid #343941;
}

html.theme-dark .column-layout--orders .order-header {
  border-bottom-color: #343941;
}

html.theme-dark .column-layout--orders .flex-table,
html.theme-dark .column-layout--orders .flex-table__row {
  background: #20242a;
  border-color: #343941;
}

html.theme-dark .column-layout--orders .flex-table__row--smaller,
html.theme-dark .column-layout--orders .flex-table__row--transparent,
html.theme-dark .column-layout--orders .flex-table__row--transparent-alt {
  background: #1b1f25;
}

html.theme-dark .column-layout--orders .flex-table__value--accent {
  color: #a9beff;
}

html.theme-dark .column-layout--orders .btn,
html.theme-dark .column-layout--orders .btn--orders,
html.theme-dark .column-layout--orders .btn--download-order {
  background: #86a2ff;
  border-color: #86a2ff;
  color: #0f1115;
}

html.theme-dark .column-layout--orders .btn:hover,
html.theme-dark .column-layout--orders .btn--orders:hover,
html.theme-dark .column-layout--orders .btn--download-order:hover {
  background: #9db5ff;
  border-color: #9db5ff;
}

html.theme-dark .order-message__text {
  color: #f2f0e8;
}

.header-rework .main-nav__link .main-nav__count {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
  letter-spacing: inherit;
}

.header-rework .main-nav__link .main-nav__text-btn .main-nav__count {
  font-size: 1em;
  font-weight: 400;
  font-variant-numeric: lining-nums tabular-nums;
  font-feature-settings: "lnum" 1, "tnum" 1;
  vertical-align: baseline;
}

.header-rework .main-nav__link[title="Cart"] #cart_id,
.header-rework .main-nav__link[title="Cart"] .main-nav__count {
  font-family: Typedepot, monospace;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
}


.header-rework .main-nav__link[title="Cart"]::after {
  content: none;
  display: none;
}

.header-rework .main-nav__link[title="Cart"] {
  white-space: nowrap;
}

.header-rework .main-nav__link[title="Cart"] .main-nav__text-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  white-space: nowrap;
  line-height: 1;
}

.header-rework .main-nav__link[title="Cart"] .main-nav__count,
.header-rework .main-nav__link[title="Cart"] #cart_id,
.header-rework .main-nav__link[title="Cart"] .cart-counter {
  display: inline;
  position: static;
  top: auto;
  right: auto;
  margin: 0;
  vertical-align: baseline;
  white-space: nowrap;
}


#character-set .character-map-panel {
  font-weight: 400;
  font-style: normal;
}

body.header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item:first-child > .main-nav__link .main-nav__text-btn,
body.header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item:first-child > .main-nav__link .main-nav__text-btn #cart_id,
body.header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item:first-child > .main-nav__link .main-nav__text-btn .main-nav__count {
  font-family: Typedepot, monospace;
  font-size: 1.25rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  vertical-align: baseline;
  font-feature-settings: normal;
  font-variant-numeric: normal;
}

.header-rework .main-header,
.header-rework .main-header .wrapper,
.header-rework .main-header .main-nav,
.header-rework .js-main-header {
  background: transparent;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-bottom: 0;
  box-shadow: none;
}

.header-rework .site-logo__wordmark,
.header-rework.font-page .site-logo__font-name {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 1.25rem;
  font-weight: 400;
  min-height: 2.55rem;
  height: 2.55rem;
  padding: 0 0.95rem;
  border-radius: 25px;
  line-height: 1;
  white-space: nowrap;
}

.header-rework .main-nav__text-btn,
.header-rework .main-nav__count {
  background: transparent;
}

.header-rework .main-nav__menu-btn.main-nav__link--boxed,
.header-rework .main-nav__link.main-nav__menu-btn.main-nav__link--boxed {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  min-width: 3rem;
  height: 2.65rem;
  padding: 0;
  border-radius: 12px;
  border: 1px solid rgba(0, 0, 0, 0.22);
  background: rgb(215 214 214 / 72%);
  box-shadow: none;
}

.header-rework .main-nav__menu-btn .main-nav__burger {
  position: relative;
  top: auto;
  left: auto;
  margin: 0;
  width: 18px;
  height: 2px;
  background: #111;
  border-radius: 2px;
  transform: none;
  display: inline-block;
}

.header-rework .main-nav__menu-btn .main-nav__burger:before,
.header-rework .main-nav__menu-btn .main-nav__burger:after {
  content: "";
  position: absolute;
  left: 0;
  width: 18px;
  height: 2px;
  background: #111;
  border-radius: 2px;
}

.header-rework .main-nav__menu-btn .main-nav__burger:before {
  top: -6px;
}

.header-rework .main-nav__menu-btn .main-nav__burger:after {
  top: 6px;
}

html.theme-dark .header-rework .main-nav__menu-btn.main-nav__link--boxed,
html.theme-dark .header-rework .main-nav__link.main-nav__menu-btn.main-nav__link--boxed {
  border-color: rgba(242, 240, 232, 0.24);
  background: rgba(242, 240, 232, 0.08);
}

html.theme-dark .header-rework .main-nav__menu-btn .main-nav__burger,
html.theme-dark .header-rework .main-nav__menu-btn .main-nav__burger:before,
html.theme-dark .header-rework .main-nav__menu-btn .main-nav__burger:after {
  background: #f2f0e8;
}

.header-rework .main-nav__menu-btn[aria-expanded="true"] .main-nav__burger {
  background: transparent;
}

html.theme-dark .header-rework .main-nav__menu-btn[aria-expanded="true"] .main-nav__burger {
  background: transparent;
}

.header-rework .main-nav__menu-btn[aria-expanded="true"] .main-nav__burger:before {
  top: 0;
  transform: rotate(45deg);
}

.header-rework .main-nav__menu-btn[aria-expanded="true"] .main-nav__burger:after {
  top: 0;
  transform: rotate(-45deg);
}


.header-rework.font-page .main-nav .main-nav__list:last-child {
  display: flex;
  align-items: center;
  gap: 10px;
}

.header-rework.font-page .main-nav .main-nav__list:last-child > .main-nav__list-item {
  margin: 0;
}

.header-rework.font-page .main-nav .main-nav__list:last-child > .main-nav__list-item--profile {
  margin-left: 0;
}


@media (max-width: 990px) {
  .header-rework.font-page .main-nav__list--primary {
    display: none;
    width: 100%;
    order: 1;
    max-height: calc(100vh - 5em);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    z-index: 111;
    top: 100%;
    left: 0;
    right: 0;
    transform: none;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    background: var(--ui-bg, #efeee5);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    overflow: hidden;
    border-top: 0;
    padding: 0.3rem 0 0.35rem;
    margin-left: 0;
    gap: 0.2rem;
  }

  .header-rework.font-page .main-nav__list--primary:before {
    content: none;
    display: none;
  }

  .mobile-menu-is-open .header-rework.font-page .main-nav__list--primary,
  .mobile-menu-is-open.header-rework.font-page .main-nav__list--primary {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    align-content: flex-start;
    pointer-events: auto;
  }

  .header-rework.font-page .main-nav__list--primary .main-nav__list-item {
    position: relative;
    z-index: 1;
    width: 100%;
    margin: 0;
    border: 0;
  }

  .header-rework.font-page .main-nav__list--primary .main-nav__link {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    min-height: 3rem;
    height: 3rem;
    padding: 0 1rem;
    border-radius: 12px;
    background: #d7d6d6;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    color: #000;
    box-shadow: none;
    text-shadow: none;
  }

  .header-rework.font-page .main-nav__list--primary .main-nav__link span,
  .header-rework.font-page .main-nav__list--primary .main-nav__link .main-nav__link-hidden-text,
  .header-rework.font-page .main-nav__list--primary .main-nav__link .main-nav__count {
    color: #000;
    background: transparent;
  }

  .header-rework.font-page .main-nav__list--primary .main-nav__link:hover,
  .header-rework.font-page .main-nav__list--primary .main-nav__link:focus-visible {
    background: #e1e6ee;
    box-shadow: none;
    transform: none;
  }

  .header-rework.font-page .main-nav__list--primary .main-nav__link:active {
    background: #d6dde8;
    box-shadow: none;
    transform: none;
  }

  .header-rework.font-page .main-nav__list--primary .main-nav__link:before,
  .header-rework.font-page .main-nav__submenu {
    display: none;
  }

  .header-rework.font-page .main-nav > .main-nav__list:not(.main-nav__list--primary) {
    display: none;
  }

  .header-rework.font-page .main-nav__menu-wrap {
    display: none;
  }
}

@media (max-width: 990px) {
  .header-rework .main-header > .wrapper,
  .header-rework .main-header .wrapper {
    padding-left: 2.5em;
    padding-right: 2.5em;
  }
}

@media (max-width: 768px) {
  .wrapper {
    padding-left: 2.5em;
    padding-right: 2.5em;
    box-sizing: border-box;
  }
}

@media (max-width: 990px) {
  .header-rework .main-header,
  .header-rework .main-header .wrapper,
  .header-rework .main-header .main-nav,
  .header-rework .js-main-header {
    border-bottom: 0;
    box-shadow: none;
  }

  .header-rework .main-nav {
    position: relative;
    flex-wrap: wrap;
    align-items: center;
  }

  .header-rework .site-logo__link,
  .header-rework .site-logo__link:hover,
  .header-rework .site-logo__link:focus {
    display: inline-flex;
    align-items: center;
    flex-wrap: nowrap;
    min-width: 0;
    white-space: nowrap;
    overflow: visible;
    color: #000;
    border: 0;
    background: transparent;
    box-shadow: none;
    text-decoration: none;
  }

  .header-rework .site-logo {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    max-width: none;
    min-width: 0;
    overflow: visible;
    margin: 0.5rem 0.5rem 0.5rem 0;
    order: 1;
  }

  .header-rework .main-nav__mobile-menu-btn {
    display: block;
    order: 3;
    margin-left: auto;
    margin-right: 0;
  }

  .header-rework .main-nav__mobile-menu-btn:before {
    border-top-color: #000;
    border-bottom-color: #000;
    background: transparent;
  }

  .header-rework .main-nav__mobile-menu-btn:after {
    background: #000;
  }

  .mobile-menu-is-open .header-rework .main-nav__mobile-menu-btn:before,
  .mobile-menu-is-open.header-rework .main-nav__mobile-menu-btn:before {
    border-color: #000;
    background: #000;
  }

  .mobile-menu-is-open .header-rework .main-nav__mobile-menu-btn:after,
  .mobile-menu-is-open.header-rework .main-nav__mobile-menu-btn:after {
    background: #000;
  }

  html.theme-dark .header-rework .main-nav__mobile-menu-btn:before {
    border-top-color: #f2f0e8;
    border-bottom-color: #f2f0e8;
  }

  html.theme-dark .header-rework .main-nav__mobile-menu-btn:after {
    background: #f2f0e8;
  }

  html.theme-dark .mobile-menu-is-open .header-rework .main-nav__mobile-menu-btn:before,
  html.theme-dark .mobile-menu-is-open.header-rework .main-nav__mobile-menu-btn:before {
    border-color: #f2f0e8;
    background: #f2f0e8;
  }

  html.theme-dark .mobile-menu-is-open .header-rework .main-nav__mobile-menu-btn:after,
  html.theme-dark .mobile-menu-is-open.header-rework .main-nav__mobile-menu-btn:after {
    background: #f2f0e8;
  }

  .header-rework .main-nav__list--primary {
    display: none;
    width: 100%;
    order: 4;
    max-height: calc(100vh - 5em);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    position: absolute;
    isolation: isolate;
    z-index: 111;
    top: 100%;
    left: 0;
    right: 0;
    transform: none;
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    background: #efeee5;
    border-top: 0;
    padding-left: 0;
    padding-right: 0;
    padding-top: 0.3rem;
    padding-bottom: 0.35rem;
    margin-left: 0;
    gap: 0.2rem;
  }

  .header-rework .main-nav__list--primary:before {
    content: none;
    display: none;
    background: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    pointer-events: none;
  }

  .header-rework .site > *:not(.main-header) {
    -webkit-transition: -webkit-filter 0.24s ease;
    transition: filter 0.24s ease;
  }

  .mobile-menu-is-open.header-rework .site > *:not(.main-header),
  .mobile-menu-is-open .header-rework .site > *:not(.main-header) {
    -webkit-filter: none;
    filter: none;
    pointer-events: none;
    -webkit-user-select: none;
    user-select: none;
  }

  .mobile-menu-is-open .header-rework .main-nav__list--primary,
  .mobile-menu-is-open.header-rework .main-nav__list--primary {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    align-content: flex-start;
    pointer-events: auto;
  }

  .header-rework .main-nav__list--primary .main-nav__list-item {
    position: relative;
    z-index: 1;
    width: 100%;
    margin: 0;
    border: 0;
  }

  .header-rework .site-logo__wordmark,
  .header-rework.font-page .site-logo__font-name,
  .header-rework .main-nav__list--primary .main-nav__link,
  .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item > .main-nav__link,
  .header-rework .main-nav__link.main-nav__link--boxed,
  .header-rework .main-nav__text-btn,
  .header-rework .main-nav__count {
    color: #000;
    background: #fff;
    border: 0;
    box-shadow: none;
    text-shadow: none;
  }

  .header-rework .site-logo__wordmark,
  .header-rework.font-page .site-logo__font-name {
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    font-size: clamp(0.98rem, 2.2vw, 1.15rem);
    background: #fff;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    border: 0;
    border-radius: 25px;
    padding: 0 0.95rem;
    min-height: 2.55rem;
    height: 2.55rem;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .header-rework.font-page .site-logo__font-name {
    display: none;
    max-width: none;
  }

  .header-rework .main-nav > .main-nav__theme-toggle {
    display: none;
  }

  .header-rework .main-nav .main-nav__list--primary .js-theme-toggle,
  .header-rework .main-nav .main-nav__list--primary .main-nav__theme-toggle {
    display: none;
  }

  .header-rework .main-nav__list--primary .main-nav__link {
    width: 100%;
    justify-content: flex-start;
    align-items: center;
    min-height: 3rem;
    height: 3rem;
    padding: 0 1rem;
    border-radius: 12px;
    background: #fff;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    -webkit-transition: background-color 0.2s ease, color 0.2s ease;
    transition: background-color 0.2s ease, color 0.2s ease;
  }

  .header-rework .main-nav__list--primary .main-nav__link span,
  .header-rework .main-nav__list--primary .main-nav__link .main-nav__link-hidden-text {
    color: #000;
    background: transparent;
  }

  .header-rework .main-nav__list--primary .main-nav__link:hover,
  .header-rework .main-nav__list--primary .main-nav__link:focus-visible {
    background: #e1e6ee;
    box-shadow: none;
    transform: none;
  }

  .header-rework .main-nav__list--primary .main-nav__link:active {
    background: #d6dde8;
    box-shadow: none;
    transform: none;
  }

  .header-rework .main-nav__list--primary .main-nav__link .icon {
    fill: #000;
  }

  .header-rework .main-nav > .main-nav__list:not(.main-nav__list--primary) {
    display: none;
  }

  .header-rework .main-nav__list--primary .main-nav__link:before,
  .header-rework .main-nav__submenu {
    display: none;
  }

  .header-rework .main-nav__menu-wrap {
    display: none;
  }

  
  .news-list .news-tags-hover {
    display: none;
  }
}


@media (max-width: 768px) {
  #tester .editor__controls-item--hideable,
  #tester .editor__controls .js-editor__contrast,
  #tester .editor__controls-item--features-wrap,
  #tester .editor__controls-group--features,
  #tester .editor__controls-item--axis-anim-slot,
  #tester .editor__controls-item--axis-anim,
  #tester .editor__controls-item--vf-axes,
  #tester .editor__controls-group--axes {
    display: none;
  }

  #tester .editor__controls {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  #tester .editor__controls > .editor__controls-group:first-child {
    display: flex;
    align-items: center;
    min-width: 0;
  }

  #tester .editor__controls > .editor__controls-group:first-child > .editor__controls-group {
    display: flex;
    align-items: center;
    min-width: 0;
  }

  #tester .editor__controls-group--range {
    display: flex;
    flex: 1 1 18rem;
    min-width: 14rem;
  }
}


@media (max-width: 768px) {
  #tester .fit-block.is-two-columns .fit-block__text,
  #tester
    .fit-block.is-two-columns.is-two-columns-active[data-fit="0"]
    .fit-block__text {
    column-count: 1;
    column-gap: 0;
  }
}


.sectioned-page {
  padding: 4rem 0;
}

.sectioned-page .sectioned-tabs--vertical {
  display: grid;
  grid-template-columns: clamp(12.5rem, 18vw, 18rem) 1fr;
  gap: 3rem;
  margin-left: 5em;
  margin-right: 5em;
}

.sectioned-page .sectioned-tabs--no-nav {
  grid-template-columns: 1fr;
}

.sectioned-page .sectioned-page__header {
  margin-bottom: clamp(1.8rem, 3vw, 3rem);
}

.sectioned-page .sectioned-page__title {
  margin: 0;
  font-size: clamp(2.2rem, 4.5vw, 4rem);
  line-height: 0.98;
  letter-spacing: 0.01em;
  font-weight: 700;
  text-transform: none;
}

.sectioned-page .sectioned-tabs__nav {
  position: sticky;
  top: 7.25rem;
  align-self: start;
  display: flex;
  flex-direction: column;
  gap: 0;
  border-right: 2px solid #000;
  padding-right: 0;
  align-items: flex-end;
  text-align: right;
}

.sectioned-page .sectioned-tabs__tab {
  display: block;
  width: 100%;
  padding: 0.75rem 1.5rem 0.75rem 0;
  text-decoration: none;
  text-align: right;
  color: rgba(3, 3, 3, 0.52);
  font-size: 1.5rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1.05;
  border-right: 3px solid transparent;
  margin-right: -2px;
  transition: color 140ms ease;
}

.sectioned-page .sectioned-tabs__tab:hover,
.sectioned-page .sectioned-tabs__tab.is-active {
  color: #111;
}

.sectioned-page .sectioned-tabs__tab.is-active {
  border-right-color: #111;
}

.sectioned-page .sectioned-tabs__panel + .sectioned-tabs__panel {
  border-top: 1px solid rgba(3, 3, 3, 0.2);
  padding-top: 2.5rem;
  margin-top: 2.5rem;
}

.sectioned-page--tab-switch .sectioned-tabs__panel {
  display: none;
}
.sectioned-page--tab-switch .sectioned-tabs__panel.is-active {
  display: block;
}
.sectioned-page--tab-switch .sectioned-tabs__panel + .sectioned-tabs__panel {
  border-top: none;
  padding-top: 0;
  margin-top: 0;
}

.sectioned-page .sectioned-content__title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: 0;
  margin: 0 0 1.5rem;
}

.sectioned-page .sectioned-content__body > *:first-child {
  margin-top: 0;
}

.sectioned-page .sectioned-content__image {
  width: min(44%, 34rem);
  margin: 0 0 1.2rem 1.5rem;
}

.sectioned-page .sectioned-content__image--left {
  float: left;
  margin: 0 1.5rem 1.2rem 0;
}

.sectioned-page .sectioned-content__image--right {
  float: right;
}

.sectioned-page .sectioned-content__image img {
  display: block;
  width: 100%;
  height: auto;
}

.sectioned-page .sectioned-content::after {
  content: "";
  display: table;
  clear: both;
}

.sectioned-page .license-faq__item + .license-faq__item {
  margin-top: 1.6rem;
}

.sectioned-page .license-faq__question {
  margin: 0 0 0.65rem;
  font-weight: 800;
}

@media (max-width: 1024px) {
  .main-content .sectioned-page > .wrapper,
  .main-content .sectioned-page .wrapper,
  .main-content .services-page > .wrapper,
  .main-content .services-page .wrapper {
    padding-left: clamp(2rem, 4vw, 3.5rem);
    padding-right: clamp(2rem, 4vw, 3.5rem);
  }

  .sectioned-page .sectioned-tabs--vertical {
    display: block;
    grid-template-columns: 1fr;
    gap: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .sectioned-page .sectioned-tabs__nav {
    display: none;
  }

  .sectioned-page .sectioned-tabs__panel {
    display: block;
    animation: none;
  }
}

@media (max-width: 768px) {
  .main-content .sectioned-page > .wrapper,
  .main-content .sectioned-page .wrapper {
    padding-left: 2em;
    padding-right: 2em;
  }

  .sectioned-page .sectioned-content__title {
    font-size: clamp(1.95rem, 8.2vw, 2.8rem);
    line-height: 1.02;
  }

  .sectioned-page .sectioned-content__image,
  .sectioned-page .sectioned-content__image--left,
  .sectioned-page .sectioned-content__image--right {
    float: none;
    width: 100%;
    margin: 0 0 1.1rem;
  }
}

@media (max-width: 1024px) {
  .license-page .license-tabs__nav,
  .services-page .services-tabs__nav {
    display: none;
  }

  .license-page .license-tabs--vertical,
  .services-page .services-tabs--vertical {
    display: block;
    grid-template-columns: 1fr;
    gap: 0;
  }

  .license-page .license-tabs__panel,
  .services-page .services-tabs__panel {
    display: block;
    animation: none;
  }

  .services-page .services-content__title--nav {
    display: block;
    font-size: clamp(1.75rem, 4.5vw, 2.4rem);
    line-height: 1;
    margin-bottom: 1.1rem;
  }
}

@media (max-width: 768px) {
  #about-section-contacts .contacts-layout {
    align-items: stretch;
  }

  #about-section-contacts .contacts-layout__form,
  #about-section-contacts .contacts-layout__form .form {
    width: 100%;
    max-width: none;
  }
}


.services-page .news-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.services-page .news-list__item {
  border-bottom: 0;
  padding: 2.75em 0;
}

.services-page .news-list__item + .news-list__item {
  border-top: 1px solid rgba(3, 3, 3, 0.24);
}

.services-page .column-layout--news .column-layout__col--sidebar,
.services-page .column-layout--news .header-block,
.services-page .column-layout--news .news-meta--date,
.services-page .column-layout--news .news-tags-hover {
  text-align: right;
}

.services-page .column-layout--news .column-layout__col--sidebar {
  width: clamp(19rem, 24vw, 22rem);
  max-width: clamp(19rem, 24vw, 22rem);
  margin-right: 2rem;
}

.services-page .column-layout--news .news-meta--date {
  margin-bottom: 0.65em;
}

.services-page .column-layout--news .header-block p {
  max-width: 34ch;
  margin-left: auto;
}

.services-page .column-layout--news .header-block .header-block__title {
  font-size: clamp(2.2rem, 3.2vw, 2.85rem);
  line-height: 0.98;
  overflow-wrap: anywhere;
  text-transform: none;
}

.services-page .column-layout--news .header-block .header-block__title a {
  text-transform: none;
}

.services-page .column-layout--news .header-block p {
  font-size: 1.35rem;
  line-height: 1.45;
}

.services-page .column-layout--news .news-tags-hover {
  opacity: 1;
  margin-top: 1rem;
  display: none;
}

.services-page .news-card__media {
  width: 100%;
  aspect-ratio: auto;
  overflow: visible;
  background: transparent;
}

.services-page .news-card__media-link,
.services-page .news-card__media picture,
.services-page .news-card__media img {
  display: block;
  width: 100%;
  height: auto;
}

.services-page .news-card__media img {
  object-fit: contain;
  object-position: center center;
}


@media (min-width: 1025px) and (max-width: 1300px) {
  .services-page .column-layout--news > .column-layout__col:not(.column-layout__col--sidebar) {
    display: flex;
    align-items: stretch;
  }

  .services-page .news-card__media {
    height: 100%;
    overflow: hidden;
    background: #e7e6de;
  }

  .services-page .news-card__media-link,
  .services-page .news-card__media picture,
  .services-page .news-card__media img {
    height: 100%;
  }

  .services-page .news-card__media img {
    object-fit: cover;
    object-position: right center;
  }
}

@media (max-width: 1024px) {
  .services-page .column-layout--news {
    display: flex;
    flex-direction: column;
    gap: 1.2rem;
  }

  .services-page .column-layout--news .column-layout__col,
  .services-page .column-layout--news .column-layout__col--sidebar {
    width: 100%;
    max-width: none;
    flex: 0 0 auto;
  }

  .services-page .column-layout--news .column-layout__col--sidebar {
    border-right: 0;
    padding-right: 0;
    margin-right: 0;
  }

  .services-page .column-layout--news .header-block {
    margin-bottom: 0.5rem;
  }

  .services-page .column-layout--news .column-layout__col--sidebar,
  .services-page .column-layout--news .header-block,
  .services-page .column-layout--news .news-meta--date {
    text-align: left;
  }

  .services-page .column-layout--news .header-block .header-block__title {
    font-size: clamp(1.9rem, 5.2vw, 2.8rem);
  }

  .services-page .column-layout--news .header-block p {
    max-width: 100%;
    margin-left: 0;
    margin-top: 0.55rem;
  }

}

@media (max-width: 768px) {
  .main-content .services-page > .wrapper,
  .main-content .services-page .wrapper {
    padding-left: 2em;
    padding-right: 2em;
  }

  .services-page .services-page__title {
    font-size: clamp(2.2rem, 7.8vw, 2.8rem);
    line-height: 1.02;
  }

  .services-page .news-list__item {
    padding: 2em 0;
  }

  .services-page .column-layout--news .header-block .header-block__title {
    font-size: clamp(1.55rem, 5.5vw, 2.15rem);
    line-height: 1.06;
  }
}

@media (max-width: 640px) {
  .main-content .services-page > .wrapper,
  .main-content .services-page .wrapper {
    padding-left: 2em;
    padding-right: 2em;
  }
}

@media (max-width: 560px) {
  .services-page .news-card__media {
    aspect-ratio: 4 / 3;
    overflow: hidden;
    background: #e7e6de;
  }

  .services-page .news-card__media img {
    height: 100%;
    object-fit: cover;
    object-position: right center;
  }
}


.account-cart-drawer-fragment--cart {
  --cart-bg: var(--ui-bg, #edece5);
  --cart-surface: var(--ui-bg, #edece5);
  --cart-surface-alt: var(--ui-bg, #edece5);
  --cart-border: #ddd;
  --cart-text: #121212;
  --cart-muted: #64645d;
  --cart-accent: #1f3fd4;
  --cart-danger: #a63324;
  --cart-step-active: var(--ui-bg, #edece5);
  --cart-price-col: 92px;
  --cart-remove-col: 42px;
  --cart-cta-height: 3rem;
  font-family: "Typedepot", sans-serif;
}

.account-cart-drawer-fragment--cart .wrapper.account-cart-drawer-cart {
  width: 100%;
  max-width: none;
  padding: 0;
  display: grid;
  gap: 1.25rem;
  color: var(--cart-text);
}

.account-cart-drawer-fragment--cart .cart-drawer-top-cta {
  margin: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-top-cta .btn {
  width: 100%;
  min-height: 2.9rem;
  border-radius: 0;
  justify-content: center;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: var(--cart-accent);
  border: 1px solid var(--cart-accent);
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-top-cta .btn:hover {
  background: #1736bf;
  border-color: #1736bf;
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-overview {
  background: var(--ui-bg, #edece5);
  border: 1px solid var(--cart-border);
  padding: 1.1rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-hero {
  margin: 0 0 0.9rem;
  padding: 0;
  border: 0;
  background: transparent;
}

.account-cart-drawer-fragment--cart .cart-drawer-hero .header-block__title {
  margin: 0;
  font-family: "Typedepot", sans-serif;
  font-size: clamp(1.7rem, 3vw, 2.25rem);
  line-height: 0.94;
  letter-spacing: -0.02em;
}

.account-cart-drawer-fragment--cart .cart-counter--alt {
  margin-left: auto;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  background: var(--cart-accent);
  color: #fff;
  padding: 0.42rem 0.95rem;
  font-size: 0.95rem;
  line-height: 1;
}

.account-cart-drawer-fragment--cart .cart-drawer-stepper {
  margin: 0;
  padding: 0;
  display: flex;
  gap: 0.5rem;
  list-style: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-stepper:before,
.account-cart-drawer-fragment--cart .cart-drawer-stepper:after {
  display: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item {
  flex: 1 1 0;
  margin: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item-link {
  min-height: 2.6rem;
  border: 1px solid var(--cart-border);
  background: var(--cart-surface);
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.3rem 0.8rem;
  font-size: 0.92rem;
  font-family: "Typedepot Mono", monospace;
  line-height: 1;
}

.account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item-link:before {
  display: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-stepper .is-done .order-steps__item-link,
.account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item-link.is-active {
  background: var(--cart-step-active);
  border-color: var(--cart-step-active);
  color: #111;
}

.account-cart-drawer-fragment--cart .cart-drawer-list {
  margin: 0;
  border: 1px solid #ddd;
  background: var(--cart-surface-alt);
  overflow: hidden;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head {
  padding: 0.72rem 1rem 0.72rem 1rem;
  background: var(--ui-bg, #f3f2ec);
  color: #111;
  border-bottom: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__value {
  color: #111;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__value--big {
  font-size: clamp(1rem, 1.6vw, 1.2rem);
  line-height: 1.05;
  white-space: nowrap;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__col--50:first-child {
  padding-left: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__col--50.flex-table__col--nested {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 0;
  width: 100%;
  padding-right: 0rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__col--grow {
  flex: 1 1 auto;
  min-width: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__price-label {
  flex: 0 0 var(--cart-price-col);
  width: var(--cart-price-col);
  min-width: var(--cart-price-col);
  max-width: var(--cart-price-col);
  text-align: right;
  display: flex;
  justify-content: flex-end;
  padding-right: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__price-label .flex-table__value {
  width: 100%;
  text-align: right;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__col--remove {
  flex: 0 0 var(--cart-remove-col);
  display: flex;
  width: var(--cart-remove-col);
  min-width: var(--cart-remove-col);
  max-width: var(--cart-remove-col);
  justify-content: flex-end;
  visibility: hidden;
  pointer-events: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-list__head .flex-table__col--remove .remove-btn {
  display: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-item {
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  border-top: 0;
  border-bottom: 0;
  background: var(--cart-surface);
}

.account-cart-drawer-fragment--cart .cart-drawer-item:nth-of-type(even) {
  background: var(--ui-bg, #edece5);
}

.account-cart-drawer-fragment--cart .cart-drawer-item__title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.9rem;
  min-width: 0;
  width: 100%;
  margin-bottom: 0;
  font-family: "Typedepot", sans-serif;
  font-size: clamp(1.08rem, 1.7vw, 1.3rem);
  line-height: 1.16;
  letter-spacing: -0.014em;
  color: #111;
  opacity: 1;
  visibility: visible;
}

.account-cart-drawer-fragment--cart .cart-drawer-item__name {
  min-width: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1 1 auto;
}

.account-cart-drawer-fragment--cart .cart-drawer-item__licenses {
  color: #5f5f57;
  font-size: 0.84em;
  letter-spacing: 0.01em;
  white-space: nowrap;
  min-width: 0;
  max-width: min(48%, 420px);
  margin-left: 0.75rem;
  flex: 0 1 auto;
  text-align: right;
  display: block;
  overflow: hidden;
}

.account-cart-drawer-fragment--cart .cart-drawer-item__licenses-track {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.45rem;
  min-width: 100%;
  transform: translateX(0);
  will-change: transform;
}

.account-cart-drawer-fragment--cart .cart-drawer-item__licenses.is-marquee .cart-drawer-item__licenses-track {
  animation: cartDrawerLicensesMarquee var(--cart-licenses-marquee-duration, 8s) linear infinite alternate;
}

@keyframes cartDrawerLicensesMarquee {
  0%,
  12% {
    transform: translateX(0);
  }
  88%,
  100% {
    transform: translateX(var(--cart-licenses-marquee-shift, 0));
  }
}

@media (prefers-reduced-motion: reduce) {
  .account-cart-drawer-fragment--cart .cart-drawer-item__licenses.is-marquee .cart-drawer-item__licenses-track {
    animation: none;
    transform: translateX(0);
  }
}

.account-cart-drawer-fragment--cart .cart-drawer-license-token {
  display: inline-flex;
  align-items: center;
  gap: 0.28rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-license-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 2px;
  padding: 0.12rem 0.44rem 0.18rem 0.44rem;
  border-radius: 999px;
  background: #ecebe5;
  border: 1px solid #c9c8bf;
  color: #363636;
  font-size: 0.82em;
  line-height: 1;
  letter-spacing: 0.01em;
  margin-right: 0.32rem;
  vertical-align: middle;
}

html.theme-dark body.header-rework .account-cart-drawer-fragment--cart .cart-drawer-license-badge,
html.theme-dark body.header-rework .cart-drawer-list .cart-drawer-license-badge {
  color: #171512;
}

.account-cart-drawer-fragment--cart .cart-drawer-license-name {
  color: #5f5f57;
  font-size: 1em;
  line-height: 1;
  text-transform: lowercase;
}

.account-cart-drawer-fragment--cart .cart-drawer-item .flex-table__col--nested {
  gap: 0;
  align-items: center;
  flex-wrap: nowrap;
}

.account-cart-drawer-fragment--cart .cart-drawer-item > .flex-table__col--50:first-child {
  flex: 1 1 auto;
  max-width: none;
  min-width: 0;
  width: auto;
  display: flex;
  align-items: center;
  padding-left: 1.1rem;
  padding-right: 0.6rem;
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-item > .flex-table__col--50.flex-table__col--nested {
  flex: 0 0 auto;
  max-width: none;
  min-width: calc(var(--cart-price-col) + var(--cart-remove-col));
  margin-left: auto;
  display: grid;
  grid-template-columns: var(--cart-price-col) var(--cart-remove-col);
  justify-content: end;
  align-items: center;
  padding-left: 0;
  padding-right: 1rem;
  padding-top: 0.65rem;
  padding-bottom: 0.65rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-item > .flex-table__col--50.flex-table__col--nested .flex-table__col--grow {
  display: none;
}

.account-cart-drawer-fragment--cart .js-purchase-option-group {
  display: none;
}

.account-cart-drawer-fragment--cart .js-purchase-option {
  background: #f7f7f2;
  border: 1px solid #ddddd4;
  padding: 0.25rem;
  max-width: 190px;
}

.account-cart-drawer-fragment--cart .select--2 .select__element {
  min-height: 2.15rem;
  border: 1px solid #cfcfc6;
  background: #fff;
  font-size: 0.9rem;
}

.account-cart-drawer-fragment--cart .select--2,
.account-cart-drawer-fragment--cart .select--2 .select2-container {
  max-width: 190px;
}

.account-cart-drawer-fragment--cart .select--2 .select2-selection--single {
  min-height: 2.15rem;
  height: 2.15rem;
}

.account-cart-drawer-fragment--cart .select--2 .select2-selection__rendered {
  line-height: 2.15rem;
  font-size: 0.9rem;
}

.account-cart-drawer-fragment--cart .flex-table__col--price {
  min-width: var(--cart-price-col);
  max-width: var(--cart-price-col);
  width: var(--cart-price-col);
  flex: 0 0 var(--cart-price-col);
  padding: 0 0.25rem 0 0;
  text-align: right;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.account-cart-drawer-fragment--cart .flex-table__col--remove {
  flex: 0 0 var(--cart-remove-col);
  min-width: var(--cart-remove-col);
  width: var(--cart-remove-col);
  max-width: var(--cart-remove-col);
  padding: 0;
  text-align: right;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  overflow: visible;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__col--nested {
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--cart-price-col) var(--cart-remove-col);
  align-items: center;
  width: 100%;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__col--remove {
  visibility: hidden;
  display: block;
  min-width: var(--cart-remove-col);
  width: var(--cart-remove-col);
  max-width: var(--cart-remove-col);
  padding: 0;
}

.account-cart-drawer-fragment--cart .js-item-price {
  font-size: clamp(0.95rem, 1.35vw, 1.1rem);
  line-height: 1;
  font-family: "Typedepot", sans-serif;
  font-weight: 600;
  white-space: nowrap;
  display: inline-block;
}

.account-cart-drawer-fragment--cart .flex-table__col--price .flex-table__value,
.account-cart-drawer-fragment--cart .flex-table__col--price .flex-table__value * {
  font-family: "Typedepot", sans-serif;
  font-size: clamp(0.95rem, 1.35vw, 1.1rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: normal;
}

.account-cart-drawer-fragment--cart .remove-btn {
  all: unset;
  box-sizing: border-box;
  cursor: pointer;
  width: 2rem;
  height: 2rem;
  min-width: 2rem;
  min-height: 2rem;
  border-radius: 50%;
  border: 1px solid #1a1a1a;
  background: #fff;
  color: transparent;
  font-size: 0;
  line-height: 0;
  position: relative;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
}

.account-cart-drawer-fragment--cart .remove-btn:hover {
  background: #f0efe9;
  border-color: #bdbcb3;
}

.account-cart-drawer-fragment--cart .remove-btn::before,
.account-cart-drawer-fragment--cart .remove-btn::after {
  display: none;
  content: none;
}

.account-cart-drawer-fragment--cart .remove-btn__icon {
  position: relative;
  display: inline-flex;
  width: 0.85rem;
  height: 0.85rem;
  margin: 0 auto;
  pointer-events: none;
}

.account-cart-drawer-fragment--cart .remove-btn__icon::before,
.account-cart-drawer-fragment--cart .remove-btn__icon::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0.85rem;
  height: 2px;
  background: #111;
  transform-origin: center;
}

.account-cart-drawer-fragment--cart .remove-btn__icon::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.account-cart-drawer-fragment--cart .remove-btn__icon::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.account-cart-drawer-fragment--cart .remove-btn:hover .remove-btn__icon::before,
.account-cart-drawer-fragment--cart .remove-btn:hover .remove-btn__icon::after {
  background: #111;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary {
  padding: 0.48rem 1rem 0.48rem 1.1rem;
  border-top: 0;
  background: var(--ui-bg, #edece5);
}

.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__col--grow {
  justify-content: flex-end;
  min-width: 0;
  padding-right: 0.6rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__value--small {
  font-family: "Typedepot", sans-serif;
  letter-spacing: normal;
  font-size: 0.95rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary--subtotal .flex-table__value--light {
  font-size: clamp(0.95rem, 1.35vw, 1.1rem);
  line-height: 1;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary--vat .flex-table__value--light,
.account-cart-drawer-fragment--cart .cart-drawer-summary--discount .flex-table__value--light {
  font-size: clamp(0.95rem, 1.35vw, 1.1rem);
  line-height: 1;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__value {
  font-family: "Typedepot", sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__value,
.account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__value * {
  font-family: "Typedepot", sans-serif;
  font-weight: 600;
  letter-spacing: normal;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary > .flex-table__col:first-child {
  display: none;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary > .flex-table__col:last-child {
  flex: 1 1 100%;
  max-width: 100%;
  padding: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary--discount .flex-table__value--accent {
  color: var(--cart-danger);
}

.account-cart-drawer-fragment--cart .cart-drawer-summary--total {
  background: var(--ui-bg, #edece5);
  border-top: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-list .flex-table__row {
  border-top: 0;
  border-bottom: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-list > .cart-drawer-list__head + .cart-drawer-item,
.account-cart-drawer-fragment--cart .cart-drawer-list > .cart-drawer-list__head + .cart-drawer-summary,
.account-cart-drawer-fragment--cart .cart-drawer-list > .cart-drawer-item + .cart-drawer-item,
.account-cart-drawer-fragment--cart .cart-drawer-list > .cart-drawer-item + .cart-drawer-summary,
.account-cart-drawer-fragment--cart .cart-drawer-list > .cart-drawer-summary + .cart-drawer-summary {
  border-top: 1px solid #ddd;
}

.account-cart-drawer-fragment--cart .cart-drawer-summary--total .flex-table__value {
  color: #111;
  font-family: "Typedepot", sans-serif;
  font-size: 0.95rem;
  font-weight: 600;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.9rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.65rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta > .btn {
  width: 100%;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer {
  order: 1;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  width: 100%;
  margin: 0;
  gap: 0.9rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer .btn {
  height: var(--cart-cta-height);
  min-height: var(--cart-cta-height);
  border-radius: 999px;
  background: #111;
  border: 1px solid #111;
  color: #fff;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease;
  line-height: 1;
  padding: 0 1rem;
  text-transform: none;
  letter-spacing: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer > .btn,
.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer > a,
.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer > button {
  width: 100%;
  min-width: 0;
  height: var(--cart-cta-height);
  min-height: var(--cart-cta-height);
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta--drawer .btn:hover {
  background: var(--cart-accent);
  border-color: var(--cart-accent);
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-checkout-standalone {
  margin: 0;
  width: 100%;
}

.account-cart-drawer-fragment--cart .cart-drawer-checkout-standalone .cart-drawer-checkout-btn {
  width: 100%;
  height: var(--cart-cta-height);
  min-height: var(--cart-cta-height);
  display: flex;
  align-items: center;
  border-radius: 999px;
  background: #111;
  border: 1px solid #111;
  color: #fff;
  transition:
    background-color 0.18s ease,
    border-color 0.18s ease,
    color 0.18s ease;
  justify-content: center;
  text-align: center;
  line-height: 1;
  padding: 0 1rem;
  text-transform: none;
  letter-spacing: 0;
}

.account-cart-drawer-fragment--cart .cart-drawer-checkout-standalone .cart-drawer-checkout-btn:hover {
  background: var(--cart-accent);
  border-color: var(--cart-accent);
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-checkout-standalone #proceed_btn,
.account-cart-drawer-fragment--cart .cart-drawer-checkout-standalone #download_btn {
  background: #111;
  border-color: #111;
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__discount {
  order: 2;
  width: min(560px, 100%);
  margin: 0 auto;
}

.account-cart-drawer-fragment--cart #discount_code .form-group {
  margin: 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: stretch;
  gap: 0;
}

.account-cart-drawer-fragment--cart #discount_code .form-group__field-input {
  min-height: 2.4rem;
  border: 1px solid #cfcfc6;
  border-radius: 0;
  background: #fafaf7;
}

.account-cart-drawer-fragment--cart #discount_code .form-group__field-btn {
  min-height: 2.4rem;
  border-radius: 0;
  background: #f2f1eb;
  border: 1px solid #c8c7be;
  color: #111;
  min-width: 120px;
}

.account-cart-drawer-fragment--cart #proceed_btn,
.account-cart-drawer-fragment--cart #download_btn {
  min-width: 0;
  width: 100%;
  height: var(--cart-cta-height);
  min-height: var(--cart-cta-height);
  border-radius: 999px;
  background: #111;
  border: 1px solid #111;
  color: #fff;
  text-transform: none;
  letter-spacing: 0;
  line-height: 1;
  padding: 0 1rem;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions .btn {
  min-height: var(--cart-cta-height);
  height: var(--cart-cta-height);
  justify-content: center;
  line-height: 1;
}

.account-cart-drawer-fragment--cart #proceed_btn:hover {
  background: var(--cart-accent);
  border-color: var(--cart-accent);
  color: #fff;
}

.account-cart-drawer-fragment--cart #download_btn:hover {
  background: var(--cart-accent);
  border-color: var(--cart-accent);
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta .btn {
  background: #f7f6f1;
  border: 1px solid #c8c7be;
  color: #111;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta .btn:hover {
  background: var(--cart-accent);
  border-color: var(--cart-accent);
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-actions__cta .btn:hover * {
  color: #fff;
}

.account-cart-drawer-fragment--cart .cart-drawer-delivery-note {
  margin: 0.2rem 0 0;
  padding: 0;
  border: 0;
  background: transparent;
}

.account-cart-drawer-fragment--cart .cart-drawer-delivery-note.under-the-line {
  border-top: 0;
  padding-top: 0;
  text-align: left;
}

.account-cart-drawer-fragment--cart .cart-drawer-delivery-note .under-the-line__text {
  margin: 0;
  color: var(--cart-muted);
  text-align: left;
}

@media (prefers-reduced-motion: reduce) {
  .auth-drawer-overlay,
  .auth-drawer-global,
  .auth-drawer-global__body {
    transition-duration: 0.01ms;
    transition-delay: 0ms;
  }
}

@media (max-width: 900px) {
  .account-cart-drawer-fragment--cart {
    --cart-price-col: 112px;
    --cart-remove-col: 48px;
  }

  .auth-drawer-global {
    width: 100vw;
    max-width: 100vw;
    border-left: 0;
  }

  .auth-drawer-global__head,
  .auth-drawer-global__body {
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .auth-drawer-global__head {
    padding-top: 0.95rem;
    padding-bottom: 0.95rem;
  }

  .auth-drawer-global__body {
    padding-top: 1rem;
    padding-bottom: 1.2rem;
    max-height: none;
  }

  .auth-drawer-global .field__input {
    padding-right: 9.7rem;
  }

  .auth-drawer-global .field .form__error,
  .auth-drawer-global .form__item > .form__error,
  .auth-drawer-global .field .form-error,
  .auth-drawer-global .form__item > .form-error {
    max-width: 57%;
    font-size: 0.68rem;
  }

  .account-cart-drawer-fragment--cart .cart-drawer-hero .header-block__title {
    font-size: 1.55rem;
  }

  .account-cart-drawer-fragment--cart .cart-drawer-stepper .order-steps__item-link {
    min-height: 2.35rem;
    font-size: 0.88rem;
  }

  .account-cart-drawer-fragment--cart .cart-drawer-item__title {
    font-size: 1rem;
  }

  .account-cart-drawer-fragment--cart .flex-table__col--price {
    min-width: var(--cart-price-col);
    max-width: var(--cart-price-col);
    width: var(--cart-price-col);
    flex-basis: var(--cart-price-col);
  }

  .account-cart-drawer-fragment--cart .flex-table__col--remove {
    min-width: var(--cart-remove-col);
    max-width: var(--cart-remove-col);
    width: var(--cart-remove-col);
    flex-basis: var(--cart-remove-col);
  }

  .account-cart-drawer-fragment--cart .cart-drawer-item > .flex-table__col--50.flex-table__col--nested {
    grid-template-columns: var(--cart-price-col) var(--cart-remove-col);
    min-width: calc(var(--cart-price-col) + var(--cart-remove-col));
  }

  .account-cart-drawer-fragment--cart .cart-drawer-summary .flex-table__col--nested {
    grid-template-columns: minmax(0, 1fr) var(--cart-price-col) var(--cart-remove-col);
  }

  .account-cart-drawer-fragment--cart .remove-btn {
    width: 1.85rem;
    height: 1.85rem;
    min-width: 1.85rem;
    min-height: 1.85rem;
  }

  .account-cart-drawer-fragment--cart .js-item-price {
    font-size: 0.9rem;
  }

  .account-cart-drawer-fragment--cart .js-purchase-option-group,
  .account-cart-drawer-fragment--cart .js-purchase-option,
  .account-cart-drawer-fragment--cart .select--2,
  .account-cart-drawer-fragment--cart .select--2 .select2-container {
    max-width: 120px;
    flex-basis: 120px;
  }

  .account-cart-drawer-fragment--cart .select--2 .select__element,
  .account-cart-drawer-fragment--cart .select--2 .select2-selection--single {
    min-height: 1.95rem;
    height: 1.95rem;
  }

  .account-cart-drawer-fragment--cart .select--2 .select2-selection__rendered {
    line-height: 1.95rem;
    font-size: 0.85rem;
  }

  .account-cart-drawer-fragment--cart .cart-drawer-actions {
    grid-template-columns: 1fr;
  }

  .account-cart-drawer-fragment--cart .cart-drawer-actions__cta {
    width: 100%;
    grid-template-columns: 1fr;
  }

  .account-cart-drawer-fragment--cart #proceed_btn,
  .account-cart-drawer-fragment--cart #download_btn {
    width: 100%;
    min-width: 0;
    text-align: center;
  }
}

body.has-front-carousel {
  --front-font-block-gutter: 10em;
}

@media (max-width: 1600px) {
  body.has-front-carousel {
    --front-font-block-gutter: clamp(1rem, 6vw, 10em);
  }
}

body.has-front-carousel .carousel-wrapper + .section--padded-80-bottom .font-block {
  padding-left: var(--front-font-block-gutter);
  padding-right: var(--front-font-block-gutter);
}

body.has-front-carousel
  .carousel-wrapper
  + .section--padded-80-bottom
  .fit-block
  .fit-block__text {
  min-width: 0;
  width: auto;
}

/* Font-page burger dropdown shares the header-rework menu treatment. */
body.font-page.header-rework #font-header-menu.main-nav__menu-panel {
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  z-index: 1200;
  min-width: max-content;
  padding: 1em 0;
  border-radius: 14px;
  overflow: hidden;
}

body.font-page.header-rework #font-header-menu .main-nav__menu-link {
  display: block;
  margin: 0 1em;
  padding: 0.8em;
  font-size: 1.2em;
  line-height: 1.2;
  text-decoration: none;
  border-radius: 10px;
  background: transparent;
  color: var(--header-rework-pill-text);
  -webkit-text-fill-color: currentColor;
  transition: background-color 0.18s ease, color 0.18s ease;
}

body.font-page.header-rework .main-nav__menu-wrap {
  position: relative;
}

.font-block__status {
  position: absolute;
  top: 1.25rem;
  left: 1.25rem;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2rem;
  padding: 0.4rem 0.75rem;
  border-radius: 999px;
  background: rgba(23, 21, 18, 0.08);
  color: #171512;
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.05em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}

.proto-status-chip,
.proto-status-pill {
  display: inline-flex;
  align-items: center;
  min-height: 3rem;
  padding: 0.75rem 1.15rem;
  border: 1px solid rgba(23, 21, 18, 0.08);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.88);
  color: #171512;
  font-size: 0.84rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  line-height: 1;
  text-transform: uppercase;
}

.proto-updates__title,
.proto-update__title {
  margin: 0;
}

.proto-sidebar__watchers,
.proto-update__meta,
.proto-updates__empty {
  color: rgba(23, 21, 18, 0.66);
}

.proto-sidebar {
  display: grid;
  gap: 1rem;
  margin-top: 1rem;
  padding-top: 1.25rem;
  border-top: 1px solid rgba(23, 21, 18, 0.12);
}

.proto-sidebar__intro {
  display: grid;
  gap: 0.85rem;
}

.proto-sidebar__summary {
  color: rgba(23, 21, 18, 0.82);
}

.proto-sidebar__meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
}

.proto-sidebar__summary,
.proto-sidebar__summary p,
.proto-sidebar__watchers,
.proto-sidebar__watch-link,
.proto-sidebar__section-title,
.proto-progress__label-row,
.proto-updates__title,
.proto-update__meta,
.proto-update__title,
.proto-update__body,
.proto-update__body p,
.proto-updates__empty {
  font-size: 20px;
  line-height: 1.35;
}

.proto-sidebar__summary > *:first-child,
.proto-update__body > *:first-child {
  margin-top: 0;
}

.proto-sidebar__summary > *:last-child,
.proto-update__body > *:last-child {
  margin-bottom: 0;
}

.proto-sidebar__watch-link {
  display: inline;
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--accent-color, #613afb);
  font-weight: 400;
  text-decoration: none;
  cursor: pointer;
}

.proto-sidebar__watch-link:hover {
  color: #171512;
}

.proto-sidebar__watch-link[disabled] {
  opacity: 0.6;
  cursor: wait;
}

.proto-sidebar__section {
  display: grid;
  gap: 0.75rem;
  padding-top: 1rem;
  border-top: 1px solid rgba(23, 21, 18, 0.12);
}

.proto-sidebar__section-title {
  margin: 0;
  font-weight: 700;
}

.proto-progress--sidebar {
  gap: 0.85rem;
}

.proto-progress {
  display: grid;
  gap: 1rem;
}

.proto-progress__item {
  display: grid;
  gap: 0.55rem;
}

.proto-progress__label-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 1rem;
}

.proto-progress__label {
  font-weight: 400;
}

.proto-progress__track {
  height: 0.75rem;
  border-radius: 999px;
  background: rgba(23, 21, 18, 0.08);
  overflow: hidden;
}

.proto-progress__fill {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: #3f3a33;
}

.proto-updates {
  display: grid;
  gap: 1rem;
}

.proto-updates--sidebar {
  gap: 0.9rem;
}

.proto-updates__list {
  display: grid;
  gap: 1rem;
}

.proto-update {
  padding: 1rem 0 0;
  border-top: 1px solid rgba(23, 21, 18, 0.12);
}

.proto-update--sidebar:first-child {
  padding-top: 0;
  border-top: 0;
}

.proto-update--sidebar {
  border-radius: 0;
  background: transparent;
}

.proto-update__meta {
  margin-bottom: 0.35rem;
  letter-spacing: 0.02em;
}

.proto-update__title {
  margin-bottom: 0.6rem;
  font-weight: 400;
}

html.theme-dark .proto-sidebar__summary {
  color: rgba(242, 240, 232, 0.88);
}

html.theme-dark .proto-sidebar,
html.theme-dark .proto-sidebar__section {
  border-top-color: rgba(242, 240, 232, 0.16);
}

html.theme-dark .proto-sidebar__watch-link {
  color: #86a2ff;
}

html.theme-dark .proto-sidebar__watch-link:hover {
  color: #f2f0e8;
}

html.theme-dark .proto-sidebar__watchers,
html.theme-dark .proto-update__meta,
html.theme-dark .proto-updates__empty {
  color: rgba(242, 240, 232, 0.66);
}

html.theme-dark .proto-progress__track {
  background: rgba(242, 240, 232, 0.12);
}

html.theme-dark .proto-progress__fill {
  background: #f2f0e8;
}

html.theme-dark .proto-update {
  border-top-color: rgba(242, 240, 232, 0.16);
}

@media (max-width: 1024px) {
  .font-block__status {
    top: 1rem;
    left: 1rem;
    font-size: 0.66rem;
    padding: 0.36rem 0.65rem;
  }

  .proto-status-chip,
  .proto-status-pill {
    min-height: 2.6rem;
    padding: 0.65rem 1rem;
  }
}

@media (max-width: 640px) {
  .font-block__status {
    top: 0.75rem;
    left: 0.75rem;
  }

  .proto-progress__label-row {
    font-size: 0.95rem;
  }

  .proto-sidebar__meta {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.35rem;
  }
}

/* ============================================================
   Carousel block — static styles
   (extracted from modules/carousel/blocks/views/carousel/_index.htm)
   ============================================================ */

body.has-front-carousel {
    padding-top: 0 !important;
}

body.has-front-carousel .main-header {
    z-index: 1100;
}

html:not(.theme-dark) .header-rework .site-logo__wordmark,
html:not(.theme-dark) .header-rework.font-page .site-logo__font-name,
html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item > .main-nav__link,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item--profile > .main-nav__link,
html:not(.theme-dark) .header-rework .main-nav__link[title="Cart"],
html:not(.theme-dark) .header-rework .main-nav__link.main-nav__link--boxed,
html:not(.theme-dark) .header-rework .main-nav__menu-btn,
html:not(.theme-dark) .header-rework .main-nav__menu-btn.main-nav__link--boxed,
html:not(.theme-dark) .header-rework .main-nav__theme-toggle {
    background: #e8e8e8;
    background-color: #e8e8e8;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    opacity: 1;
    box-shadow: none;
}

html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link::before,
html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link::after,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item > .main-nav__link::before,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item > .main-nav__link::after {
    content: none;
    display: none;
    opacity: 0;
}

html:not(.theme-dark) .header-rework .main-nav__text-btn,
html:not(.theme-dark) .header-rework .main-nav__count,
html:not(.theme-dark) .header-rework .main-nav__link .main-nav__text-btn,
html:not(.theme-dark) .header-rework .main-nav__link .main-nav__count {
    background: transparent;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item:hover > .main-nav__link,
html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item:focus-within > .main-nav__link,
html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link:hover,
html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link:active,
html:not(.theme-dark) .header-rework .main-nav__list--primary > .main-nav__list-item > .main-nav__link.is-active,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item > .main-nav__link:hover,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item > .main-nav__link.is-active,
html:not(.theme-dark) .header-rework .main-nav__link[title="Cart"]:hover,
html:not(.theme-dark) .header-rework .main-nav__link[title="Cart"].is-active,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item--profile > .main-nav__link:hover,
html:not(.theme-dark) .header-rework .main-nav .main-nav__list:last-child > .main-nav__list-item--profile > .main-nav__link.is-active,
html:not(.theme-dark) .header-rework .main-nav__theme-toggle:hover,
html:not(.theme-dark) .header-rework .main-nav__theme-toggle:focus-visible {
    background: #171512;
    background-color: #171512;
    color: #ffffff;
    -webkit-text-fill-color: #ffffff;
}

html:not(.theme-dark) .header-rework .main-nav__theme-toggle:hover .icon,
html:not(.theme-dark) .header-rework .main-nav__theme-toggle:focus-visible .icon {
    color: #ffffff;
    fill: #ffffff;
}

html:not(.theme-dark) .header-rework .main-nav__theme-toggle:hover .icon path,
html:not(.theme-dark) .header-rework .main-nav__theme-toggle:focus-visible .icon path {
    fill: #ffffff;
}

html:not(.theme-dark) .header-rework .main-nav__menu-btn:hover .main-nav__burger,
html:not(.theme-dark) .header-rework .main-nav__menu-btn:hover .main-nav__burger:before,
html:not(.theme-dark) .header-rework .main-nav__menu-btn:hover .main-nav__burger:after,
html:not(.theme-dark) .header-rework .main-nav__menu-btn:focus-visible .main-nav__burger,
html:not(.theme-dark) .header-rework .main-nav__menu-btn:focus-visible .main-nav__burger:before,
html:not(.theme-dark) .header-rework .main-nav__menu-btn:focus-visible .main-nav__burger:after {
    background: #ffffff;
}

.carousel-wrapper {
    width: 100%;
    max-width: 100vw;
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    margin-bottom: 0;
    position: relative;
    z-index: 1;
    background-color: var(--ui-bg, #efeee5);
    background-image: none;
    --carousel-bg-1: 8, 10, 15;
    --carousel-bg-2: 0, 17, 32;
    --carousel-orb-1: 18, 113, 255;
    --carousel-orb-2: 107, 74, 255;
    --carousel-orb-3: 100, 100, 255;
    --carousel-orb-4: 50, 160, 220;
    --carousel-orb-5: 80, 47, 122;
    --carousel-orb-6: 34, 211, 238;
    --carousel-orb-7: 170, 120, 255;
    --carousel-orb-8: 45, 74, 227;
    --carousel-orb-interactive: 140, 100, 255;
    --carousel-orb-alpha: 0.8;
    --carousel-blend-mode: hard-light;
    --carousel-circle-size: 80%;
    --carousel-vf-text-color: var(--ui-text, #171512);
}

.carousel-wrapper.carousel-theme--sunset-violet {
    --carousel-bg-1: 20, 10, 28;
    --carousel-bg-2: 8, 17, 42;
    --carousel-orb-1: 255, 122, 89;
    --carousel-orb-2: 186, 108, 255;
    --carousel-orb-3: 106, 123, 255;
    --carousel-orb-4: 255, 92, 150;
    --carousel-orb-5: 130, 77, 255;
    --carousel-orb-6: 255, 160, 90;
    --carousel-orb-7: 120, 220, 255;
    --carousel-orb-8: 255, 115, 210;
    --carousel-orb-interactive: 235, 132, 255;
}

.carousel-wrapper.carousel-theme--neon-ocean {
    --carousel-bg-1: 6, 18, 34;
    --carousel-bg-2: 5, 31, 51;
    --carousel-orb-1: 0, 214, 255;
    --carousel-orb-2: 83, 132, 255;
    --carousel-orb-3: 0, 167, 255;
    --carousel-orb-4: 44, 236, 201;
    --carousel-orb-5: 96, 110, 255;
    --carousel-orb-6: 0, 255, 204;
    --carousel-orb-7: 102, 187, 255;
    --carousel-orb-8: 0, 140, 255;
    --carousel-orb-interactive: 88, 224, 255;
}

.carousel-wrapper.carousel-theme--forest-ink {
    --carousel-bg-1: 8, 18, 16;
    --carousel-bg-2: 7, 26, 34;
    --carousel-orb-1: 56, 211, 148;
    --carousel-orb-2: 37, 133, 255;
    --carousel-orb-3: 0, 189, 165;
    --carousel-orb-4: 102, 255, 179;
    --carousel-orb-5: 80, 123, 255;
    --carousel-orb-6: 0, 237, 180;
    --carousel-orb-7: 128, 249, 219;
    --carousel-orb-8: 0, 162, 255;
    --carousel-orb-interactive: 116, 255, 214;
}

.carousel-wrapper.carousel-theme--obsidian-plum {
    --carousel-bg-1: 5, 7, 16;
    --carousel-bg-2: 9, 10, 24;
    --carousel-orb-1: 84, 92, 182;
    --carousel-orb-2: 120, 78, 176;
    --carousel-orb-3: 66, 108, 178;
    --carousel-orb-4: 88, 78, 150;
    --carousel-orb-5: 62, 52, 118;
    --carousel-orb-6: 54, 106, 142;
    --carousel-orb-7: 98, 78, 146;
    --carousel-orb-8: 72, 88, 164;
    --carousel-orb-interactive: 112, 86, 170;
    --carousel-orb-alpha: 0.62;
    --carousel-blend-mode: soft-light;
}

.carousel-wrapper .cover {
    position: relative;
    overflow: hidden;
}

.carousel-wrapper .carousel-loader {
    display: none;
}

.carousel-wrapper .carousel-unicorn-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 25%;
    pointer-events: none;
    overflow: hidden;
    background: var(--ui-bg, #efeee5);
}

.carousel-wrapper .carousel-unicorn-scene {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.25s ease;
}

.carousel-wrapper .carousel-unicorn-scene--light {
    opacity: 1;
}

html.theme-dark .carousel-wrapper .carousel-unicorn-scene--light {
    opacity: 0;
}

html.theme-dark .carousel-wrapper .carousel-unicorn-scene--dark {
    opacity: 1;
}

.carousel-wrapper .carousel-unicorn-scene canvas,
.carousel-wrapper .carousel-unicorn-scene iframe {
    pointer-events: none !important;
}

.carousel-wrapper .carousel-gradient-bg {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    overflow: hidden;
    background: linear-gradient(40deg, rgb(var(--carousel-bg-1)), rgb(var(--carousel-bg-2)));
}

.carousel-wrapper .carousel-gradient-bg::after {
    content: '';
    position: absolute;
    inset: -120px;
    pointer-events: none;
    z-index: 2;
    opacity: 0.44;
    mix-blend-mode: soft-light;
    background-image:
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180' viewBox='0 0 180 180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.9' numOctaves='5' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='1'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cfilter id='n2'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.95' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='220' height='220' filter='url(%23n2)' opacity='1'/%3E%3C/svg%3E"),
        url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260' viewBox='0 0 260 260'%3E%3Cfilter id='n3'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='2.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23n3)' opacity='1'/%3E%3C/svg%3E");
    background-size: 95px 95px, 170px 170px, 320px 320px;
    background-position: 0 0, 35% 60%, 70% 20%;
    background-repeat: repeat, repeat, repeat;
    filter: contrast(200%) brightness(106%) saturate(112%);
    animation: carouselNoiseShift 4s steps(14) infinite;
}

.carousel-wrapper .carousel-gradient-bg svg {
    position: absolute;
    width: 0;
    height: 0;
}

.carousel-wrapper .carousel-gradients-container {
    width: 100%;
    height: 100%;
    filter: url(#carousel-goo-blur) blur(52px);
    transform: translateZ(0);
}

.carousel-wrapper .carousel-gradient-orb,
.carousel-wrapper .carousel-gradient-interactive {
    position: absolute;
    mix-blend-mode: var(--carousel-blend-mode);
    will-change: transform;
}

.carousel-wrapper .carousel-gradient-orb {
    width: var(--carousel-circle-size);
    height: var(--carousel-circle-size);
    top: calc(50% - (var(--carousel-circle-size) / 2));
    transform-origin: center center;
    background-repeat: no-repeat;
    opacity: 0.8;
}

.carousel-wrapper .carousel-gradient-orb--1 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-1), var(--carousel-orb-alpha)) 0%, rgba(var(--carousel-orb-1), 0) 58%);
    top: calc(50% - (var(--carousel-circle-size) / 2) - 14%);
    left: -30%;
    animation: carouselMoveVertical 28s ease infinite;
}

.carousel-wrapper .carousel-gradient-orb--2 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-2), var(--carousel-orb-alpha)) 0%, rgba(var(--carousel-orb-2), 0) 58%);
    top: calc(50% - (var(--carousel-circle-size) / 2) - 8%);
    left: 2%;
    transform-origin: calc(50% - 420px);
    animation: carouselMoveCircle 22s reverse infinite;
}

.carousel-wrapper .carousel-gradient-orb--3 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-3), var(--carousel-orb-alpha)) 0%, rgba(var(--carousel-orb-3), 0) 58%);
    top: calc(50% - (var(--carousel-circle-size) / 2) + 6%);
    left: 36%;
    transform-origin: calc(50% + 420px);
    animation: carouselMoveCircle 36s linear infinite;
}

.carousel-wrapper .carousel-gradient-orb--4 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-4), calc(var(--carousel-orb-alpha) - 0.08)) 0%, rgba(var(--carousel-orb-4), 0) 58%);
    width: calc(var(--carousel-circle-size) * 0.88);
    height: calc(var(--carousel-circle-size) * 0.88);
    top: calc(50% - (var(--carousel-circle-size) / 2) - 4%);
    left: 70%;
    transform-origin: calc(50% - 180px);
    animation: carouselMoveHorizontal 34s ease infinite;
}

.carousel-wrapper .carousel-gradient-orb--5 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-5), calc(var(--carousel-orb-alpha) - 0.12)) 0%, rgba(var(--carousel-orb-5), 0) 58%);
    width: calc(var(--carousel-circle-size) * 1.26);
    height: calc(var(--carousel-circle-size) * 1.26);
    top: calc(50% - (var(--carousel-circle-size) * 0.46));
    left: -48%;
    transform-origin: calc(50% - 780px) calc(50% + 120px);
    animation: carouselMoveCircle 20s ease infinite;
}

.carousel-wrapper .carousel-gradient-orb--6 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-6), calc(var(--carousel-orb-alpha) - 0.18)) 0%, rgba(var(--carousel-orb-6), 0) 58%);
    width: calc(var(--carousel-circle-size) * 0.72);
    height: calc(var(--carousel-circle-size) * 0.72);
    top: calc(50% - (var(--carousel-circle-size) / 2) + 28%);
    left: 18%;
    transform-origin: calc(50% + 120px);
    animation: carouselMoveHorizontal 30s ease-in-out infinite;
}

.carousel-wrapper .carousel-gradient-orb--7 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-7), calc(var(--carousel-orb-alpha) - 0.22)) 0%, rgba(var(--carousel-orb-7), 0) 58%);
    width: calc(var(--carousel-circle-size) * 0.9);
    height: calc(var(--carousel-circle-size) * 0.9);
    top: calc(50% - (var(--carousel-circle-size) / 2) + 14%);
    left: 82%;
    transform-origin: calc(50% - 340px) calc(50% - 60px);
    animation: carouselMoveCircle 26s reverse infinite;
}

.carousel-wrapper .carousel-gradient-orb--8 {
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-8), calc(var(--carousel-orb-alpha) - 0.2)) 0%, rgba(var(--carousel-orb-8), 0) 58%);
    width: calc(var(--carousel-circle-size) * 0.68);
    height: calc(var(--carousel-circle-size) * 0.68);
    top: calc(50% - (var(--carousel-circle-size) / 2) - 24%);
    left: 54%;
    transform-origin: calc(50% + 260px);
    animation: carouselMoveVertical 24s ease-in-out infinite;
}

.carousel-wrapper .carousel-gradient-interactive {
    width: 100%;
    height: 100%;
    left: -50%;
    top: -50%;
    transform: translate3d(var(--tx, 0px), var(--ty, 0px), 0);
    background-image: radial-gradient(circle at center, rgba(var(--carousel-orb-interactive), 0.8) 0%, rgba(var(--carousel-orb-interactive), 0) 58%);
    opacity: 0.7;
}

@media (max-width: 1279px) {
    .carousel-wrapper {
        --carousel-circle-size: 110%;
    }

    .carousel-wrapper .carousel-gradient-orb--1 { left: -52%; }
    .carousel-wrapper .carousel-gradient-orb--2 { left: -16%; }
    .carousel-wrapper .carousel-gradient-orb--3 { top: calc(50% - (var(--carousel-circle-size) / 2) + 2%); left: 28%; }
    .carousel-wrapper .carousel-gradient-orb--4 { left: 64%; }
    .carousel-wrapper .carousel-gradient-orb--5 { width: calc(var(--carousel-circle-size) * 1.16); height: calc(var(--carousel-circle-size) * 1.16); top: calc(50% - (var(--carousel-circle-size) * 0.4)); left: -62%; }
    .carousel-wrapper .carousel-gradient-orb--6 { left: 10%; top: calc(50% - (var(--carousel-circle-size) / 2) + 24%); }
    .carousel-wrapper .carousel-gradient-orb--7 { left: 76%; }
    .carousel-wrapper .carousel-gradient-orb--8 { left: 46%; top: calc(50% - (var(--carousel-circle-size) / 2) - 20%); }

    .carousel-wrapper .carousel-gradient-bg::after {
        opacity: 0.32;
    }
}

.carousel-wrapper.has-animated-bg .slider__slide--cover,
.carousel-wrapper.has-animated-bg .slider__slide--vf {
    background-image: none;
    background-color: transparent;
}

.carousel-wrapper.has-animated-bg .slider__slide--cover::before,
.carousel-wrapper.has-animated-bg .slider__slide--vf::before {
    opacity: 0;
}

@media (hover: none), (pointer: coarse) {
    .carousel-wrapper .carousel-gradients-container {
        filter: blur(48px);
    }

    .carousel-wrapper .carousel-gradient-interactive {
        display: none;
    }
}

@keyframes carouselMoveVertical {
    0%   { transform: translateY(-44%); }
    50%  { transform: translateY(44%); }
    100% { transform: translateY(-44%); }
}

@keyframes carouselMoveHorizontal {
    0%   { transform: translateX(-44%) translateY(-8%); }
    50%  { transform: translateX(44%) translateY(8%); }
    100% { transform: translateX(-44%) translateY(-8%); }
}

@keyframes carouselMoveCircle {
    0%   { transform: rotate(0deg); }
    50%  { transform: rotate(180deg); }
    100% { transform: rotate(360deg); }
}

@keyframes carouselNoiseShift {
    0%   { transform: translate3d(0, 0, 0); }
    25%  { transform: translate3d(-3%, 2%, 0); }
    50%  { transform: translate3d(2%, -2%, 0); }
    75%  { transform: translate3d(-2%, -3%, 0); }
    100% { transform: translate3d(0, 0, 0); }
}

.carousel-wrapper .slider {
    width: 100%;
    position: relative;
    z-index: 3;
    margin-bottom: 0;
}

.carousel-wrapper .js-carousel__dots-internal {
    display: none;
}

.carousel-wrapper .slider__slide {
    min-height: 650px;
    background-color: #000;
}

@media (max-width: 1279px) {
    .carousel-wrapper .slider__slide {
        min-height: 433px;
    }
}

.carousel-wrapper .slider__slide--cover {
    position: relative;
    overflow: hidden;
    background-color: transparent;
}

.carousel-wrapper .slider__slide--cover::before {
    content: '';
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    z-index: 0;
    opacity: 0;
    transition: opacity 0.35s ease;
}

.carousel-wrapper .slider__slide-container--cover-link {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    padding: 0;
    min-height: 0;
}

.carousel-wrapper .slider__hit {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 25%;
    z-index: 6;
}

.carousel-wrapper .slider__hit--prev {
    left: 0;
    cursor: url('web/images/left_arrow_cursor.png?v=3') 24 24, w-resize !important;
}

.carousel-wrapper .slider__hit--next {
    right: 0;
    cursor: url('web/images/right_arrow_cursor.png?v=3') 24 24, e-resize !important;
}

.carousel-wrapper .slider__hit--prev:hover {
    cursor: url('web/images/left_arrow_cursor.png?v=3') 24 24, w-resize !important;
}

.carousel-wrapper .slider__hit--next:hover {
    cursor: url('web/images/right_arrow_cursor.png?v=3') 24 24, e-resize !important;
}

.carousel-wrapper::after {
    content: "";
    display: block;
    clear: both;
}

.carousel-vf {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    cursor: default;
    user-select: none;
    position: relative;
}

.carousel-vf__text {
    font-size: calc((100px + (280 - 100) * ((100vw - 320px) / (1920 - 320))) * 0.95);
    line-height: 1;
    letter-spacing: 0;
    white-space: nowrap;
    display: inline-block;
    color: var(--carousel-vf-text-color) !important;
    opacity: 0;
    filter: blur(8px);
    transform: translateY(4px);
    transition: opacity 0.4s ease, filter 0.4s ease, transform 0.4s ease;
}

.carousel-vf__text.js-carousel-vf__text.is-ready {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
}

@media (min-width: 1920px) {
    .carousel-vf__text {
        font-size: calc(280px * 0.95);
    }
}

.slider__slide--vf .slider__slide-container,
.slider__slide--vf .slider__slide-text--wide,
.slider__slide--vf .carousel-vf {
    height: 100%;
}

.slider__slide--vf .wrapper,
.slider__slide--vf .slider__slide-container,
.slider__slide--vf .slider__slide-text--wide {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
}

.slider__slide--vf {
    position: relative;
}

.slider__slide--vf::before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: transparent;
    background-image: none;
    background-size: cover;
    background-position: center;
    pointer-events: none;
    z-index: 0;
    opacity: 0;
    transition: opacity 0.35s ease;
}

.slider__slide--vf .carousel-vf {
    z-index: 1;
}

.slider__slide--vf .slider__slide-text--wide {
    position: static;
    width: 100%;
}

.slider__slide--vf .carousel-vf {
    position: absolute;
    inset: 0;
    pointer-events: none;
    padding-left: 0;
    padding-right: 0;
}

.slider__slide--vf .slider__slide-container--cover-link {
    z-index: 2;
}

.carousel-vf__controls {
    position: absolute;
    left: 50%;
    bottom: 60px;
    transform: translateX(-50%);
    display: flex;
    gap: 24px;
    align-items: center;
    justify-content: center;
    pointer-events: auto;
    z-index: 7;
    color: var(--carousel-vf-text-color);
    font-size: 12px;
    letter-spacing: 0.04em;
}

.carousel-vf__control {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    min-width: 120px;
}

.carousel-vf__control-label,
.carousel-vf__control-value {
    color: var(--carousel-vf-text-color) !important;
}

.carousel-vf__control input[type="range"] {
    -webkit-appearance: none;
    appearance: none;
    width: 140px;
    height: 2px;
    border: 0;
    border-radius: 999px;
    background: var(--carousel-vf-text-color);
    outline: none;
}

.carousel-vf__control input[type="range"]::-webkit-slider-runnable-track {
    height: 2px;
    background: var(--carousel-vf-text-color);
    border-radius: 999px;
}

.carousel-vf__control input[type="range"]::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    margin-top: -7px;
    border-radius: 50%;
    border: 0;
    background: var(--carousel-vf-text-color);
    box-shadow: none;
}

.carousel-vf__control input[type="range"]::-moz-range-track {
    height: 2px;
    background: var(--carousel-vf-text-color);
    border: 0;
    border-radius: 999px;
}

.carousel-vf__control input[type="range"]::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    border: 0;
    background: var(--carousel-vf-text-color);
    box-shadow: none;
}

.carousel-vf__control input[type="range"]::-moz-range-progress {
    height: 2px;
    background: var(--carousel-vf-text-color);
    border-radius: 999px;
}

.slider__slide--vf .wrapper {
    height: 100%;
    min-height: 100%;
}

.slider__slide--vf .slider__slide-container {
    padding-top: 0;
    padding-bottom: 0;
    min-height: 100%;
}

.carousel-info-bar {
    background-color: #000 !important;
    color: #fff;
    height: 40px;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 40px;
    box-sizing: border-box;
    margin: 0 0 40px 0;
    position: relative;
    z-index: 5;
    border-top: 0;
}

.carousel-info-bar .font-info {
    margin: 0;
    padding-left: 0;
    padding-right: 0;
    font-size: 10px;
    line-height: 15px;
}

.carousel-info-bar .slider__dots {
    position: static;
    padding: 0;
    margin: 0;
    display: flex;
    pointer-events: auto;
}

.carousel-info-bar .slider__dots * {
    pointer-events: auto;
}

.carousel-info-bar .slider__dots .slick-dots {
    margin: 0;
}

.carousel-info-bar .slider__dots .slick-dots button {
    width: 1rem;
    height: 1rem;
    cursor: pointer;
}

.carousel-info-bar .slider__dots .slick-dots button:before {
    width: 6px;
    height: 6px;
    background-color: #8a8a8a;
}

.carousel-info-bar .slider__dots .slick-dots .slick-active button:before {
    background-color: #ffffff;
}

.carousel-font-info {
    color: #fff;
    font-size: 1.25em;
    line-height: 40px;
    white-space: nowrap;
    text-transform: uppercase;
    text-align: center;
    flex: 1;
}

.carousel-font-info strong {
    font-weight: 700;
}

.slider__slides .font-info {
    display: none;
}

.carousel-wrapper + * {
    clear: both;
    position: relative;
}

@media (max-width: 800px) {
    .carousel-wrapper .slider__slide {
        min-height: clamp(360px, 62vh, 560px);
    }

    .carousel-vf__text {
        font-size: clamp(42px, 12vw, 88px);
        line-height: 0.96;
    }

    .carousel-vf__controls {
        bottom: 36px;
        gap: 16px;
        width: min(88vw, 430px);
        font-size: 11px;
    }

    .carousel-vf__control {
        min-width: 0;
        flex: 1 1 0;
    }

    .carousel-vf__control input[type="range"] {
        width: 100%;
    }

    .carousel-info-bar {
        height: 36px;
        padding: 0 16px;
    }

    .carousel-font-info {
        font-size: clamp(0.72rem, 1.75vw, 0.92rem);
        line-height: 36px;
    }

    .carousel-wrapper + .section--padded-80-bottom {
        padding-bottom: 1.5rem;
    }

    .carousel-wrapper + .section--padded-80-bottom .font-list--spaced-bottom {
        margin-bottom: 0.85rem;
    }

    .carousel-wrapper + .section--padded-80-bottom .cta-button {
        margin-top: 0.45rem;
    }

    .carousel-wrapper + .section--padded-80-bottom .cta-button__link {
        padding: 0.7rem 1.1rem;
        font-size: clamp(1.12rem, 3.4vw, 1.6rem);
        border-radius: 12px;
    }
}

@media (max-width: 420px) {
    .carousel-wrapper .slider__slide {
        min-height: 55vh;
    }

    .carousel-vf__text {
        font-size: clamp(54px, 16vw, 76px);
        line-height: 0.96;
    }

    .carousel-vf__controls {
        bottom: 26px;
        gap: 14px;
        width: min(92vw, 340px);
        font-size: 10px;
    }

    .carousel-vf__control {
        min-width: 0;
        flex: 1 1 0;
        gap: 6px;
    }

    .carousel-vf__control input[type="range"] {
        width: 100%;
    }

    .carousel-info-bar {
        height: 34px;
        padding: 0 14px;
    }

    .carousel-font-info {
        font-size: 0.76rem;
        line-height: 34px;
    }

    .carousel-info-bar .font-info {
        font-size: 9px;
        line-height: 1;
    }

    .font-list__item--edit {
        padding-top: 0.55rem;
    }

    .font-list__item {
        padding-bottom: 0.15rem;
    }

    .font-info {
        font-size: clamp(0.8rem, 2.45vw, 0.92rem);
        margin: -0.18rem;
    }

    .font-info__item {
        font-size: 1.1em;
        padding: 0.14em 0;
    }

    .font-list--spaced-bottom {
        margin-bottom: 0.5rem;
    }

    .cta-button {
        margin-top: 0.2rem;
    }

    .cta-button__link {
        padding: 0.78rem 0.95rem;
        font-size: clamp(1.05rem, 4.4vw, 1.4rem);
        border-radius: 13px;
    }
}

@media (max-width: 360px) {
    .carousel-vf__text {
        font-size: clamp(46px, 15vw, 62px);
    }

    .carousel-info-bar {
        padding: 0 10px;
    }

    .cta-button__link {
        font-size: clamp(0.98rem, 4.2vw, 1.18rem);
    }
}

/* ============================================================
   Highlight slider — static styles
   (extracted from modules/carousel/blocks/views/slider/_highlight_slider.htm)
   ============================================================ */

.slider--highlight-hover .slick-slide {
    transition: filter 0.4s ease, transform 0.4s ease;
}

.slider--highlight-hover .slick-slide .highlight-block {
    transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.slider--highlight-hover:hover .slick-slide {
    opacity: 0.92;
}

.slider--highlight-hover:hover .slick-slide:hover {
    opacity: 1;
}

.slider--highlight-hover .slick-slide:hover {
    z-index: 10;
    transform: none;
}

.slider--highlight-hover .highlight-block:after {
    display: none;
}

.slider--highlight-hover .highlight-block__text {
    display: none;
}

.slider--highlight-hover .highlight-block__image {
    transform: scale(1);
    width: 100%;
    margin: 0 auto;
    border-radius: 20px;
}

.slider--highlight-hover .slick-slide:hover .highlight-block__image {
    transform: scale(1);
}

.slider--highlight-hover .highlight-block {
    display: block;
    width: 100%;
    text-decoration: none;
}

.slider--highlight-hover .highlight-block__caption {
    width: 98%;
    margin: 0.5rem auto 20px;
    font-size: 1.25rem;
    line-height: 1.4;
    color: var(--ui-text, #2a2a2a);
}

.slider--highlight-hover .highlight-block__caption-title {
    font-weight: 700;
}

.slider--highlight-hover .highlight-block__caption a {
    text-decoration: none;
    color: inherit;
}

.slider--highlight-hover .highlight-block__caption p {
    margin: 0;
}

html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption,
html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption-title,
html.theme-dark body.header-rework .slider--highlight-hover .highlight-block__caption a {
    color: var(--ui-text, #f2f0e8);
}

/* ============================================================
   Font family page
   (extracted from modules/fonts/views/frontend/families/view.htm)
   ============================================================ */

#buy .purchase-total {
    font-size: 0.82em;
}

/* ============================================================
   404 error page
   (extracted from apps/views/layouts/frontend/error_layout.htm)
   ============================================================ */

:root {
  --error404-effect-height: clamp(580px, 52vh, 620px);
}

body:has(.error404-hero).header-rework {
  padding-top: 0 !important;
}

body:has(.error404-hero) .main-header.js-main-header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 20;
  background: transparent;
  border-bottom: 0;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

body:has(.error404-hero) .main-header.js-main-header .wrapper,
body:has(.error404-hero) .main-header.js-main-header .main-nav {
  background: transparent;
  border-bottom: 0;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

.error404-hero {
  position: relative;
  overflow: hidden;
  background: #efeeee;
  padding-top: 0;
  padding-bottom: 0;
  min-height: var(--error404-effect-height);
}

.error404-unicorn-bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  opacity: 1;
}

.error404-unicorn-scene {
  width: 100%;
  height: 100%;
}

.error404-unicorn-scene canvas,
.error404-unicorn-scene iframe {
  width: 100% !important;
  height: 100% !important;
  display: block;
}

.error404-hero .wrapper {
  position: static;
}

.error404-cta {
  position: absolute;
  left: 50%;
  bottom: clamp(28px, 7vh, 90px);
  transform: translateX(-50%);
  margin-top: 0;
  margin-bottom: 0;
  z-index: 3;
}

@media (max-width: 991px) {
  .error404-cta {
    bottom: clamp(20px, 6vh, 56px);
  }
}


h1.sectioned-page__title {
  margin: 0;
  font-size: clamp(2.2rem, 4.5vw, 4rem);
  line-height: 0.98;
  letter-spacing: 0.01em;
}

.slider__slide--image-only {
    min-height: 0;
    line-height: 0;
}
.slider__slide-image--full {
    display: block;
    width: 100%;
    height: auto;
}

html.theme-dark main.project .text,
html.theme-dark main.project .text p,
html.theme-dark main.project p.two_column {
  color: var(--ui-text);
}

html.theme-dark main.project .text a:not(.btn) {
  color: var(--ui-text);
}

.simple-content__subtitle {
  margin: 0.5rem 0 0;
  font-size: clamp(1rem, 2vw, 1.25rem);
  font-weight: 400;
  opacity: 0.7;
}

/* ═══════════ REDESIGN 2026: Sectioned pages (about / services / help) ═══════════ */

.sectioned-page .sectioned-tabs--vertical {
  grid-template-columns: 260px 1fr;
  gap: 48px;
}

.sectioned-page .sectioned-tabs__nav {
  border-right: 1px solid var(--ui-border);
  padding-right: 24px;
  top: 7rem;
}

.sectioned-page .sectioned-tabs__tab {
  font-size: 1.5rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  padding: 0.75rem 0;
  color: var(--ui-muted);
  border-right: none;
  margin-right: 0;
  white-space: normal;
  line-height: 1.05;
}

.sectioned-page .sectioned-tabs__tab:hover,
.sectioned-page .sectioned-tabs__tab.is-active {
  color: var(--ui-text);
}

.sectioned-page .sectioned-tabs__tab.is-active {
  border-right-color: transparent;
}


.sectioned-page .sectioned-content__title {
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -0.01em;
  margin: 0 0 24px;
}

/* ═══════════ REDESIGN 2026: News index — col2 + news-row ═══════════ */

.news-page-col2 {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 48px;
  padding-bottom: 96px;
  margin-left: 5em;
  margin-right: 5em;
}

.news-page-col2__sidebar {
  border-right: 1px solid var(--ui-border);
  padding-right: 24px;
  position: sticky;
  top: 96px;
  align-self: start;
  display: flex;
  flex-direction: column;
}

.news-page-col2__sidebar a {
  display: block;
  padding: 0.75rem 0;
  text-align: right;
  font-weight: 600;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--ui-muted);
  transition: color 120ms ease;
}

.news-page-col2__sidebar a:hover,
.news-page-col2__sidebar a.is-active {
  color: var(--ui-text);
}

.news-page-col2__sidebar .sidebar-meta {
  display: block;
  text-align: right;
  margin-top: 24px;
  padding-top: 16px;
  font-size: 0.75rem;
  color: var(--ui-muted);
  letter-spacing: 0.04em;
}

.news-page-col2__body {
  min-width: 0;
}

.news-row {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 56px;
  padding: 48px 0;
  border-bottom: 1px solid var(--ui-border);
  align-items: start;
  color: inherit;
  text-decoration: none;
}

.news-row:first-child {
  padding-top: 0;
}

.news-row .meta-col {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.news-row .date {
  font-size: 1rem;
  color: var(--ui-text);
  letter-spacing: 0.02em;
}

.news-row .title {
  margin: 0;
  font-weight: 700;
  font-size: 2.75rem;
  line-height: 1.05;
  letter-spacing: -0.03em;
}

.news-row .blurb {
  margin: 0;
  font-size: 1.5rem;
  line-height: 1.6;
  color: var(--ui-muted);
}

.news-row .foot {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 1rem;
  color: var(--ui-muted);
  padding-top: 16px;
}

.news-row .read-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  opacity: 0.55;
  transition: opacity 220ms ease;
}

.news-row .read-more .arrow {
  display: inline-block;
  transition: transform 360ms cubic-bezier(0.2, 0.7, 0.2, 1);
}

.news-row:hover .read-more { opacity: 1; }
.news-row:hover .read-more .arrow { transform: translateX(6px); }

.news-row .img-col {
  height: 320px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  background: #1a1a1a;
  transition: opacity 220ms ease;
}

.news-row:hover .img-col {
  opacity: 0.82;
}

.news-row .img-col img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* ═══════════ REDESIGN 2026: sectioned service block (image + content grid) ═══════════ */

.sectioned-svc-block {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start;
}

.sectioned-svc-block__img {
  background: #1a1a1a;
  aspect-ratio: 16 / 9;
  overflow: hidden;
}

.sectioned-svc-block__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sectioned-projects {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
}

.sectioned-cta__desc {
  font-size: 1.5rem;
  margin-bottom: 2rem;
  max-width: 60ch;
}

.sectioned-cta__email-btn {
  display: inline-block;
  font-size: 1.25rem;
  font-weight: 500;
  text-decoration: none;
  background: var(--text-primary, #1a1a1a);
  color: var(--bg-primary, #f5f3ef);
  padding: 0.75em 1.5em;
  border-radius: 999px;
  transition: opacity 180ms ease;
}

.sectioned-cta__email-btn:hover {
  opacity: 0.8;
}

/* Projects grid */
.projects-grid {
  padding-bottom: 96px;
  border-top: 1px solid var(--ui-border, #ddd);
  padding-top: 48px;
}

.projects-grid .wrapper {
  margin-left: 5em;
  margin-right: 5em;
  padding-left: calc(5em + 260px + 48px);
}

.projects-grid__header {
  margin-bottom: 2.5rem;
}

.projects-grid__title {
  font-size: 2rem;
  font-weight: 700;
  margin-bottom: 0.75rem;
}

.projects-grid__intro {
  font-size: 1rem;
  color: var(--text-secondary, #555);
}

.projects-grid__items {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
}

.project-card {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
}

.project-card__image {
  aspect-ratio: 16/9;
  overflow: hidden;
  margin-bottom: 1.25rem;
  background: #111;
}

.project-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: opacity 220ms ease;
}

.project-card:hover .project-card__image img {
  opacity: 0.82;
}

.project-card__title {
  font-size: 1.75rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}

.project-card__summary {
  font-size: 1.5rem;
  margin-bottom: 0.75rem;
  color: var(--text-secondary, #555);
}

.project-card__link {
  font-size: 1.125rem;
  color: var(--text-secondary, #555);
}
body.header-rework .site-logo__link{position:relative}body.header-rework .site-logo__link:focus{outline:none}body.header-rework .site-logo__wordmark{position:relative;z-index:1}body.header-rework .site-logo__link.is-shuffling .site-logo__wordmark{position:relative}

/* === NAV DRAWER REDESIGN === */
.main-header__bar{display:flex;align-items:center;gap:.4rem;padding:0 clamp(.75rem,2vw,1.5rem);height:56px;position:relative}
.main-header__bar-spacer{flex:1}.main-header__by{font-size:1.25rem;font-weight:400;opacity:.35}
.main-header__hamburger,.main-header__bar-btn{display:inline-flex;align-items:center;justify-content:center;gap:.25rem;height:2.55rem;min-height:2.55rem;border-radius:25px;background:var(--header-rework-pill-bg,#e8e8e8);color:inherit;border:none;cursor:pointer;white-space:nowrap;text-decoration:none;flex-shrink:0;line-height:1}
.main-header__hamburger{width:2.55rem;padding:0}
.main-header__bar-btn{padding:0 .85rem;font-size:1.25rem;font-weight:400}
.main-header__hamburger:hover,.main-header__bar-btn:hover{background:var(--header-rework-pill-hover-bg,#171512);color:var(--header-rework-pill-hover-text,#fff);text-decoration:none}
html.theme-dark .main-header__hamburger,html.theme-dark .main-header__bar-btn{background:var(--header-rework-pill-bg,#2b3038)}
html.theme-dark .main-header__hamburger:hover,html.theme-dark .main-header__bar-btn:hover{background:var(--header-rework-pill-hover-bg,#2d333d);color:var(--header-rework-pill-hover-text,#86a2ff)}
.main-header__hamburger-icon{position:relative;display:block;width:18px;height:2px;background:currentColor}
.main-header__hamburger-icon::before,.main-header__hamburger-icon::after{content:'';position:absolute;left:0;width:18px;height:2px;background:currentColor;transition:transform .2s}
.main-header__hamburger-icon::before{top:-6px}
.main-header__hamburger-icon::after{top:6px}
.main-header__bar .site-logo{font-size:inherit;margin:0;line-height:1}
.main-header__bar-actions{display:flex;align-items:center;gap:.5rem}
.font-header-action{display:inline-flex;align-items:center;padding:.4rem .85rem;border:1px solid var(--ui-border);border-radius:4px;font-size:.8125rem;font-weight:600;letter-spacing:.03em;text-decoration:none;color:inherit;cursor:pointer;background:none;line-height:1.4;white-space:nowrap}
.font-header-action:hover{background:var(--ui-border);color:inherit;text-decoration:none}
.font-header-action--buy{background:var(--accent-color-base,#613afb);color:#fff;border-color:var(--accent-color-base,#613afb)}
.font-header-action--buy:hover{opacity:.9;color:#fff}
.font-header-action--menu-wrap{position:relative;padding:0;border:none}
.font-header-action__menu-btn{display:inline-flex;align-items:center;padding:.4rem .6rem;border:1px solid var(--ui-border);border-radius:4px;background:none;cursor:pointer;color:inherit}
.nav-drawer{position:fixed;top:0;left:0;bottom:0;width:clamp(260px,28vw,360px);background:var(--page-bg,#fff);transform:translateX(-100%);transition:transform .4s cubic-bezier(.16,1,.3,1);z-index:9200;border-right:1px solid var(--ui-border);display:flex;flex-direction:column;overflow:hidden}
.nav-drawer.is-open{transform:translateX(0)}
html.theme-dark .nav-drawer{background:#1a1d20}
.nav-drawer__overlay{position:fixed;inset:0;background:rgba(0,0,0,.38);opacity:0;pointer-events:none;transition:opacity .4s cubic-bezier(.16,1,.3,1);z-index:9190}
.nav-drawer__overlay.is-visible{opacity:1;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
@media(min-width:991px){
  .site>*:not(.nav-drawer):not(.nav-drawer__overlay):not(.auth-drawer-overlay):not(.auth-drawer-global){transition:transform .4s cubic-bezier(.16,1,.3,1);will-change:transform}
  body.nav-drawer-open .site>*:not(.nav-drawer):not(.nav-drawer__overlay):not(.auth-drawer-overlay):not(.auth-drawer-global):not(.fonts-panel):not(.fonts-panel__overlay){transform:translateX(clamp(260px,28vw,360px))}body.fonts-panel-open .site>*:not(.fonts-panel):not(.fonts-panel__overlay):not(.nav-drawer):not(.nav-drawer__overlay):not(.auth-drawer-overlay):not(.auth-drawer-global){transform:translateX(clamp(260px,28vw,360px))}
}
.nav-drawer__panel{display:flex;flex-direction:column;height:100%;overflow:hidden}
.nav-drawer__head{display:flex;align-items:center;padding:.875rem 1.25rem;border-bottom:1px solid var(--ui-border);flex-shrink:0}
.nav-drawer__logo{font-size:.9375rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;text-decoration:none;color:inherit}
.nav-drawer__close{margin-left:auto;background:none;border:none;cursor:pointer;font-size:1.5rem;line-height:1;color:inherit;padding:0 0 0 1rem;opacity:.6}
.nav-drawer__close:hover{opacity:1}
.nav-drawer__nav{flex:1;overflow-y:auto;padding:4rem 0 1rem}
.nav-drawer__foot{border-top:1px solid var(--ui-border);padding:.75rem 1.25rem;display:flex;flex-direction:column;gap:.25rem;flex-shrink:0}
.nav-drawer__util{display:flex;align-items:center;gap:.65rem;padding:.5rem 0;font-size:.875rem;font-weight:500;color:inherit;text-decoration:none;background:none;border:none;cursor:pointer;width:100%;text-align:left;opacity:.75}
.nav-drawer__util:hover{opacity:1;color:inherit;text-decoration:none}
.drawer-nav__list{list-style:none;margin:0;padding:0}
.drawer-nav__item{border-bottom:none;margin-bottom:.5rem}
.drawer-nav__item-row{display:flex;align-items:center}
.drawer-nav__link{display:block;flex:1;padding:.3rem 1.25rem;font-size:1.75rem;font-weight:700;letter-spacing:.01em;color:inherit;text-decoration:none}
.drawer-nav__link:hover{color:var(--accent-color-base,#613afb);text-decoration:none}
.drawer-nav__link.is-active{color:var(--accent-color-base,#613afb)}
.drawer-nav__link--contact{display:block}
.drawer-nav__expand{display:none}
.drawer-nav__sub{list-style:none;margin:.25rem 0 1.25rem 1.25rem;padding:0 0 0 1rem;display:block;background:none;border-left:1px solid var(--ui-border)}
html.theme-dark .drawer-nav__sub{background:none}
.drawer-nav__sub.is-open{display:block}
.drawer-nav__sub-header{padding:.5rem 0 .15rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.35}
.drawer-nav__sub-link{display:block;padding:.3rem 0;font-size:1.3rem;color:inherit;text-decoration:none;opacity:.65}
.drawer-nav__sub-link:hover{opacity:1;color:var(--accent-color-base,#613afb);text-decoration:none}
.drawer-nav__badge{display:inline-block;font-size:.65rem;font-weight:700;padding:1px 4px;border-radius:3px;line-height:1.4;vertical-align:middle;margin-left:2px}
.drawer-nav__badge--new{background:#613afb;color:#fff}
.drawer-nav__badge--sale{background:#f7ce76;color:#111}
.editorial-page{padding:0 clamp(1.5rem,5vw,6rem) 6rem}
.editorial-page__header{display:flex;align-items:baseline;flex-wrap:wrap;gap:.75rem 2rem;padding:2rem 0 1.25rem;border-bottom:2px solid currentColor}
.editorial-page__title{margin:0;font-size:clamp(2rem,4vw,3.5rem);font-weight:700;line-height:.98;letter-spacing:-.01em}
.editorial-page__filters{display:flex;gap:.5rem 1rem;flex-wrap:wrap;align-items:baseline;font-size:.8125rem}
.editorial-page__filters a{color:inherit;text-decoration:none;opacity:.55;padding-bottom:2px;border-bottom:1px solid transparent;transition:opacity .15s,border-color .15s}
.editorial-page__filters a:hover,.editorial-page__filters a.is-active{opacity:1;border-bottom-color:currentColor}
.editorial-page__count{opacity:.45;font-size:.9rem;margin-left:auto}
.editorial-row{display:grid;grid-template-columns:1fr clamp(140px,22%,300px);gap:1.5rem 3rem;padding:2rem 0;border-bottom:1px solid var(--ui-border);color:inherit;text-decoration:none;align-items:start}
.editorial-row:hover{text-decoration:none;color:inherit}
.editorial-row:hover .editorial-row__title{color:var(--accent-color-base,#613afb)}
.editorial-row__meta{display:flex;flex-direction:column;gap:.4rem}
.editorial-row__date{font-size:.75rem;letter-spacing:.06em;opacity:.45;font-weight:500}
.editorial-row__title{margin:0;font-size:clamp(1.1rem,2vw,1.4rem);font-weight:700;line-height:1.15;transition:color .15s}
.editorial-row__blurb{margin:0;font-size:.875rem;opacity:.6;line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.editorial-row__read-more{font-size:.75rem;font-weight:600;letter-spacing:.04em;opacity:.5;margin-top:.25rem}
.editorial-row__img img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
@media(max-width:600px){.editorial-row{grid-template-columns:1fr}.editorial-row__img{order:-1}.editorial-row__img img{aspect-ratio:16/9}}

/* === STACKED SECTIONED PAGE (services/about/help) === */
.sectioned-page .sectioned-page__top{display:flex;align-items:baseline;flex-wrap:wrap;gap:.75rem 2.5rem;padding:2rem 0 1.25rem;border-bottom:2px solid currentColor;margin-left:0;margin-right:0}
.sectioned-page .sectioned-tabs--stacked{display:block;margin-left:0;margin-right:0}
.sectioned-page .sectioned-tabs__nav--inline{position:static;display:flex;flex-direction:row;flex-wrap:wrap;gap:0 .25rem;border-right:none;align-items:baseline;text-align:left;padding-right:0}
.sectioned-page .sectioned-tabs__nav--inline .sectioned-tabs__tab{display:inline-block;width:auto;padding:.25rem .6rem;font-size:.8125rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;text-align:left;color:inherit;border-right:none;border-bottom:2px solid transparent;margin-right:0;opacity:.45;transition:opacity .15s,border-color .15s}
.sectioned-page .sectioned-tabs__nav--inline .sectioned-tabs__tab:hover,.sectioned-page .sectioned-tabs__nav--inline .sectioned-tabs__tab.is-active{color:inherit;opacity:1;border-bottom-color:currentColor}
.sectioned-page .sectioned-tabs--stacked .sectioned-tabs__panel+.sectioned-tabs__panel{border-top:1px solid var(--ui-border);padding-top:3rem;margin-top:3rem}
.sectioned-page .sectioned-tabs--stacked .sectioned-tabs__panel:first-child{padding-top:2.5rem}

/* === AUTH DRAWER → LEFT SIDE === */
.auth-drawer-global {
  right: auto !important;
  left: 0 !important;
  border-left: none !important;
  border-right: 1px solid rgba(0,0,0,0.15) !important;
  transform: translateX(-100%) !important;
}
.auth-drawer-open .auth-drawer-global {
  transform: translateX(0) !important;
}
html.theme-dark .auth-drawer-global {
  border-right: 1px solid rgba(255,255,255,0.12) !important;
  border-left: none !important;
}
@media (min-width: 991px) {
  .auth-drawer-open .site > *:not(.auth-drawer-overlay):not(.auth-drawer-global):not(.nav-drawer):not(.nav-drawer__overlay):not(.fonts-panel):not(.fonts-panel__overlay) {
    transform: translateX(var(--auth-drawer-shift)) !important;
  }
}

/* === FONT PAGE HEADER BAR FIXES === */
/* Ensure font section menu panel is always hidden by default */
.font-header-action--menu-wrap { position: relative; }
#font-header-menu { display: none; }

/* Header bar inherits page background */
.font-desc__specimen-link{display:inline-block;font-size:20px;font-weight:300;color:inherit;text-decoration:none;opacity:.75}
.font-desc__specimen-link:hover{opacity:1;text-decoration:underline}
body.header-rework .sectioned-page .sectioned-tabs__nav{top:4rem}
#nav-drawer-back-btn{display:flex;align-items:center;gap:.4rem;width:100%;padding:.75rem 1.25rem;background:none;border:none;border-bottom:1px solid var(--ui-border);font-size:.8125rem;font-weight:600;letter-spacing:.04em;cursor:pointer;color:inherit;opacity:.65;text-align:left}
#nav-drawer-back-btn:hover{opacity:1}
.font-header-action--buy{background:var(--header-rework-pill-bg,#e8e8e8)!important;color:inherit!important;border-color:transparent!important;border-radius:25px!important;padding:0 .95rem!important;height:2.55rem!important;min-height:2.55rem!important;font-size:1.25rem!important;font-weight:400!important;letter-spacing:0!important}
.font-header-action--buy:hover{background:var(--header-rework-pill-hover-bg,#171512)!important;color:var(--header-rework-pill-hover-text,#fff)!important}
html.theme-dark .font-header-action--buy{background:var(--header-rework-pill-bg,#2b3038)!important}
.editorial-row{position:relative;display:grid;grid-template-columns:9rem 10rem 1.4fr 1fr;align-items:start;gap:.4rem 2.5rem;padding:1.7rem 1rem;border-radius:8px;border-bottom:1px solid var(--ui-border);color:inherit;text-decoration:none;transition:background .18s ease}
/* editorial timeline: 1px line + node in the left column, continuous across rows */
.editorial-row::before{content:"";position:absolute;left:32px;top:0;bottom:-1px;width:1px;background:var(--editorial-timeline-line,#D8D8D8);pointer-events:none}
.editorial-row::after{content:"";position:absolute;left:32px;top:calc(1.7rem + .9rem);width:8px;height:8px;border-radius:50%;background:var(--ui-text,#111);transform:translate(-50%,-50%);pointer-events:none}
.editorial-row:hover{text-decoration:none;color:inherit;background:rgba(0,0,0,.04)}
html.theme-dark .editorial-row:hover{background:rgba(255,255,255,.055)}
html.theme-dark .editorial-row{--editorial-timeline-line:rgba(255,255,255,.14)}
.editorial-row:hover .editorial-row__title{color:var(--accent-color-base,#613afb)}
.editorial-row__date{padding-left:36px;padding-top:.25rem;font-family:inherit;font-size:.95rem;font-weight:400;opacity:.5;letter-spacing:.01em;white-space:nowrap;line-height:1.4}
.editorial-row__tag-col{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.09em;color:var(--accent-color-base,#613afb);opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.4;padding-top:.5rem}
.editorial-row__title{margin:0;font-size:clamp(1.2rem,1.9vw,1.55rem);font-weight:700;line-height:1.2;transition:color .15s}
.editorial-row__summary{font-size:1rem;opacity:.62;font-weight:400;font-family:inherit;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.editorial-row__summary p,.editorial-row__summary ul,.editorial-row__summary ol,.editorial-row__summary h1,.editorial-row__summary h2,.editorial-row__summary h3{margin:0;font-size:inherit;line-height:inherit;font-family:inherit;font-weight:inherit}
@media(max-width:1024px){.editorial-row{grid-template-columns:8rem 9rem 1fr}.editorial-row__date,.editorial-row__tag-col{padding-top:.35rem}.editorial-row__summary{display:none}}
@media(max-width:640px){.editorial-row{grid-template-columns:1fr;gap:.4rem;padding:1.6rem 1rem}.editorial-row::before,.editorial-row::after{display:none}.editorial-row__date{padding-left:0}.editorial-row__date,.editorial-row__tag-col{padding-top:0}.editorial-row__tag-col{white-space:normal}}
.editorial-page__tag-bar{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;padding:1rem 0 1.5rem;border-bottom:1px solid var(--ui-border)}
.editorial-tag{display:inline-flex;align-items:center;padding:.35rem 1rem;border-radius:20px;border:1px solid var(--ui-border);font-size:1rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:inherit;text-decoration:none;opacity:.55;transition:opacity .15s,background .15s,color .15s}
.editorial-tag:hover{opacity:1;text-decoration:none;color:inherit}
.editorial-tag.is-active{background:var(--ui-text,#111);color:var(--ui-bg,#fff);border-color:var(--ui-text,#111);opacity:1}
html.theme-dark .editorial-tag.is-active{background:var(--ui-text,#f2f0e8);color:var(--ui-bg,#1a1d20);border-color:var(--ui-text,#f2f0e8)}
/* Font section menu panel - class-based toggle */
#font-header-menu.is-open { display: block !important; }

.fonts-panel{position:fixed;inset:0 auto 0 0;width:clamp(260px,28vw,360px);background:var(--page-bg,#fff);transform:translateX(-100%);transition:transform 0.4s cubic-bezier(0.16,1,0.3,1);z-index:9200;border-right:1px solid var(--ui-border);display:flex;flex-direction:column;will-change:transform}.fonts-panel.is-open{transform:translateX(0)}.fonts-panel__overlay{position:fixed;inset:0;opacity:0;pointer-events:none;transition:opacity 0.4s cubic-bezier(0.16,1,0.3,1),backdrop-filter 0.4s;z-index:9190}.fonts-panel__overlay.is-visible{opacity:1;pointer-events:auto;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.fonts-panel__inner{display:flex;flex-direction:column;height:100%;overflow:hidden}.fonts-panel__head{display:flex;align-items:baseline;justify-content:space-between;padding:4rem 1.25rem 1rem;flex-shrink:0}.fonts-panel__title{font-size:1.75rem;font-weight:700}.fonts-panel__all{font-size:0.9rem;opacity:0.45;text-decoration:none;color:inherit;transition:opacity 0.15s}.fonts-panel__all:hover{opacity:1}.fonts-panel__nav{flex:1;overflow-y:auto;padding:0.5rem 0 2rem}.fonts-panel__list{list-style:none;margin:0;padding:0}.fonts-panel__link{display:block;padding:0.35rem 1.25rem;font-size:1.3rem;color:inherit;text-decoration:none;opacity:0.65;transition:opacity 0.15s}.fonts-panel__link:hover{opacity:1}.fonts-panel__section-label{font-size:0.7rem;letter-spacing:0.08em;text-transform:uppercase;opacity:0.4;padding:1.5rem 1.25rem 0.4rem}.fonts-panel__badge{font-size:0.65rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:0.15em 0.45em;border-radius:3px;vertical-align:middle;margin-left:0.35em}.fonts-panel__badge--new{background:var(--accent-color-base,#613afb);color:#fff}.fonts-panel__badge--sale{background:#e8342a;color:#fff}html.theme-dark .fonts-panel{background:#1a1d20}
.main-header__fonts-wrap{position:relative;display:flex;align-items:center}.fonts-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:220px;background:#fff;border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,0.13);padding:0.5rem 0.5rem;opacity:0;transform:translateY(-6px);visibility:hidden;transition:opacity 0.2s ease,transform 0.2s ease,visibility 0.2s;z-index:9000}.main-header__fonts-wrap:hover .fonts-dropdown,.main-header__fonts-wrap:focus-within .fonts-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.fonts-dropdown__list{list-style:none;margin:0;padding:0}.fonts-dropdown__link{display:block;font-size:1.1rem;color:#111;text-decoration:none;padding:0.55rem 1rem;border-radius:8px;white-space:nowrap;transition:background 0.15s,color 0.15s}.fonts-dropdown__link:hover{background:#111;color:#fff}.fonts-dropdown__divider{padding:0.6rem 1rem 0.2rem;font-size:0.875rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;color:rgba(0,0,0,0.35);border-top:1px solid rgba(0,0,0,0.08);margin-top:0.25rem}.fonts-dropdown__badge{display:inline-block;font-size:0.625rem;font-weight:700;letter-spacing:0.04em;text-transform:uppercase;padding:0.1em 0.4em;border-radius:3px;line-height:1.4}.fonts-dropdown__badge--new{background:var(--accent-color-base,#613afb);color:#fff}.fonts-dropdown__badge--sale{background:#e8342a;color:#fff}
.fonts-dropdown__badge--free{background:#2fa84f;color:#fff}.fonts-dropdown__footer{border-top:1px solid rgba(0,0,0,0.08);padding:0.4rem 1rem 0.2rem;margin-top:0.25rem}.fonts-dropdown__all{font-size:0.8125rem;font-weight:600;color:rgba(0,0,0,0.4);text-decoration:none;transition:color 0.1s}.fonts-dropdown__all:hover{color:#111}html.theme-dark .fonts-dropdown{background:#1a1d20;box-shadow:0 4px 24px rgba(0,0,0,0.4)}html.theme-dark .fonts-dropdown__link{color:rgba(255,255,255,0.85)}html.theme-dark .fonts-dropdown__link:hover{background:#fff;color:#111}html.theme-dark .fonts-dropdown__divider{color:rgba(255,255,255,0.3);border-top-color:rgba(255,255,255,0.1)}html.theme-dark .fonts-dropdown__footer{border-top-color:rgba(255,255,255,0.1)}html.theme-dark .fonts-dropdown__all{color:rgba(255,255,255,0.35)}html.theme-dark .fonts-dropdown__all:hover{color:#fff}
.main-header__more-wrap{position:relative;display:flex;align-items:center}.more-dropdown{position:absolute;top:calc(100% + 6px);left:0;min-width:180px;background:#fff;border-radius:12px;box-shadow:0 4px 24px rgba(0,0,0,0.13);padding:0.5rem 0.5rem;opacity:0;transform:translateY(-6px);visibility:hidden;transition:opacity 0.2s ease,transform 0.2s ease,visibility 0.2s;z-index:9000}.main-header__more-wrap:hover .more-dropdown,.main-header__more-wrap:focus-within .more-dropdown{opacity:1;visibility:visible;transform:translateY(0)}.more-dropdown__list{list-style:none;margin:0;padding:0}.more-dropdown__link{display:block;font-size:1.1rem;color:#111;text-decoration:none;padding:0.55rem 1rem;border-radius:8px;white-space:nowrap;transition:background 0.15s,color 0.15s}.more-dropdown__link:hover,.more-dropdown__link.is-active{background:#111;color:#fff}html.theme-dark .more-dropdown{background:#1a1d20;box-shadow:0 4px 24px rgba(0,0,0,0.4)}html.theme-dark .more-dropdown__link{color:rgba(255,255,255,0.85)}html.theme-dark .more-dropdown__link:hover,html.theme-dark .more-dropdown__link.is-active{background:#fff;color:#111}
.font-header-action--buy.is-jiggling{animation:proto-pill-jiggle 0.36s ease-in-out 1}.font-header-action--buy.is-jiggling:after{animation:none}
.cart-drawer-license-token{cursor:pointer;transition:opacity 0.15s}.cart-drawer-license-token:hover{opacity:0.7}.cart-drawer-license-token.is-loading{opacity:0.4;pointer-events:none}
.cart-license-picker{position:fixed;z-index:14010;background:#fff;border:1px solid #d8d7d0;border-radius:6px;box-shadow:0 6px 24px rgba(0,0,0,0.18);min-width:180px;padding:4px 0;font-family:inherit}.cart-license-picker__list{list-style:none;margin:0;padding:0}.cart-license-picker__option{padding:9px 16px;cursor:pointer;font-size:13px;white-space:nowrap;color:#111;display:flex;align-items:center;gap:6px}.cart-license-picker__option:hover{background:#f5f4ef}.cart-license-picker__option.is-selected{font-weight:600}.cart-license-picker__option.is-selected::before{content:'✓';color:var(--accent-color-base,#613afb);flex-shrink:0}.cart-license-picker__option:not(.is-selected)::before{content:'';display:inline-block;width:1em;flex-shrink:0}
html.theme-dark .cart-license-picker{background:#1a1d20;border-color:#333;box-shadow:0 6px 24px rgba(0,0,0,0.5)}html.theme-dark .cart-license-picker__option{color:rgba(255,255,255,0.85)}html.theme-dark .cart-license-picker__option:hover{background:#2a2d30}
