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

html {
  line-height: 1;
  overflow-y: scroll;
}

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

a img {
  border: none;
}

/* img, object, embed { */
object, embed {
  max-width: 100%;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

del {
  text-decoration: line-through;
}

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

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

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

input, select {
  vertical-align: middle;
}

pre {
  white-space: pre; /* CSS2 */
  white-space: pre-wrap; /* CSS 2.1 */
  white-space: pre-line; /* CSS 3 (and 2.1 as well, actually) */
  word-wrap: break-word; /* IE */
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

/*
select, input, textarea {
  font: 99% sans-serif;
}
*/
small {
  font-size: 85%;
}

strong {
  font-weight: bold;
}

td, td img {
  vertical-align: top;
}

/* Make sure sup and sub don't screw with your line-heights
gist.github.com/413930 */
sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

/* standardize any monospaced elements */
pre, code, kbd, samp {
  font-family: monospace, sans-serif;
}

/* hand cursor on clickable elements */
label,
input[type=button],
input[type=submit],
input[type=file],
button {
  cursor: pointer;
}

/* Webkit browsers add a 2px margin outside the chrome of form elements */
button, input, select, textarea {
  margin: 0;
}

/* make buttons play nice in IE */
button {
  width: auto;
  overflow: visible;
}

* {
  /* Remove default webkit and possible mozilla styles. Keeping this as :active to remove browser styles */
  /*-moz-appearance: none;
  -webkit-appearance: none;*/
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-decoration: inherit;
}

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

.clearfix:after {
  content: "";
  clear: both;
  display: block;
  width: 100%;
  height: 0;
  font-size: 0;
  visibility: hidden;
}

a:focus, a:active,
button::-moz-focus-inner,
input[type=reset]::-moz-focus-inner,
input[type=button]::-moz-focus-inner,
input[type=submit]::-moz-focus-inner,
select::-moz-focus-inner,
input[type=file] > input[type=button]::-moz-focus-inner {
  border: 0;
  outline: 0;
}

input:invalid {
  box-shadow: none;
}

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

a, button, input {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  font-weight: inherit;
}

img {
  max-width: 100%;
}

@font-face {
  font-family: "Kelson Sans";
  src: url("/assets/KelsonSans-Bold-e2b5f887.eot");
  src: local("Kelson Sans Bold RU"), local("KelsonSans-BoldRU"), url("/assets/KelsonSans-Bold-e2b5f887.eot?#iefix") format("embedded-opentype"), url("/assets/KelsonSans-Bold-258f0ed7.woff2") format("woff2"), url("/assets/KelsonSans-Bold-8275429c.woff") format("woff"), url("/assets/KelsonSans-Bold-37f1cd11.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
}
@font-face {
  font-family: "Kelson Sans";
  src: url("/assets/KelsonSans-Regular-87c7211b.eot");
  src: local("Kelson Sans Regular RU"), local("KelsonSans-RegularRU"), url("/assets/KelsonSans-Regular-87c7211b.eot?#iefix") format("embedded-opentype"), url("/assets/KelsonSans-Regular-77296a6d.woff2") format("woff2"), url("/assets/KelsonSans-Regular-44a0031e.woff") format("woff"), url("/assets/KelsonSans-Regular-f0689421.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Kelson Sans";
  src: url("/assets/KelsonSans-Light-1424772f.eot");
  src: local("Kelson Sans Light RU"), local("KelsonSans-LightRU"), url("/assets/KelsonSans-Light-1424772f.eot?#iefix") format("embedded-opentype"), url("/assets/KelsonSans-Light-c05c29c0.woff2") format("woff2"), url("/assets/KelsonSans-Light-2e8cac46.woff") format("woff"), url("/assets/KelsonSans-Light-f6e1d417.ttf") format("truetype");
  font-weight: 300;
  font-style: normal;
}
@media (max-width: 1365px) {
  :root {
    --x-pad: 16px;
    --y-pad: 48px;
  }
}
@media (min-width: 1366px) and (max-width: 1714px) {
  :root {
    --x-pad: 32px;
    --y-pad: 80px;
  }
}
@media (min-width: 1715px) {
  :root {
    --x-pad: 48px;
    --y-pad: 80px;
  }
}
html {
  height: 100%;
  font-size: 16px;
}

body {
  width: 100%;
  min-height: 100%;
  font-family: "Roboto Flex", sans-serif;
  font-optical-sizing: auto;
  font-weight: 300;
  font-style: normal;
  font-variation-settings: "slnt" 0, "wdth" 300, "GRAD" 0, "XOPQ" 96, "XTRA" 468, "YOPQ" 79, "YTAS" 750, "YTDE" -203, "YTFI" 738, "YTLC" 514, "YTUC" 712;
  font-size: 16px;
  color: #000000;
  background-color: #ffffff;
  display: flex;
  flex-direction: column;
}

.page {
  flex-grow: 2;
}

.box {
  padding-left: var(--x-pad);
  padding-right: var(--x-pad);
}

.container {
  padding-top: var(--y-pad);
}

.container:has(+ .box .join-box),
.container:has(+ .box .desc) {
  padding-bottom: var(--y-pad);
}

.o-hidden {
  overflow: hidden;
}

.h1 {
  font-family: "Kelson Sans";
  font-weight: 700;
  font-style: normal;
  text-transform: uppercase;
  line-height: 1.23;
}

.box-header {
  font-family: "Kelson Sans";
  font-weight: 700;
  font-style: normal;
  line-height: 1.23;
}

.box-body {
  margin-top: 24px;
}

.box-lead {
  line-height: 1.2;
}

.box-lead a {
  color: #35BDB2;
  text-decoration: underline;
}

.box-lead a:hover {
  color: #592989;
  text-decoration: none;
}

@media (max-width: 1279px) {
  .h1 {
    font-size: 21px;
  }
  .box-header {
    font-size: 16px;
  }
  .box-lead {
    margin-top: 0.25em;
  }
}
@media (min-width: 1280px) and (max-width: 1714px) {
  .h1 {
    font-size: 36px;
  }
  .box-header {
    font-size: 32px;
  }
  .box-lead {
    font-size: 24px;
  }
  .box-body {
    margin-top: 42px;
  }
}
@media (min-width: 1715px) {
  .h1 {
    font-size: 40px;
  }
  .box-header {
    font-size: 32px;
  }
  .box-lead {
    font-size: 24px;
  }
  .box-body {
    margin-top: 42px;
  }
}
@media (max-width: 699px) {
  .box-col-body {
    margin-top: 32px;
  }
}
@media (min-width: 700px) {
  .box-col {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 66.666%;
    gap: calc(var(--x-pad) * 2);
  }
}
/* ===============================
=            Choices            =
=============================== */
.choices {
  position: relative;
  overflow: hidden;
  margin-bottom: 24px;
  font-size: 16px;
}
.choices:focus {
  outline: none;
}
.choices:last-child {
  margin-bottom: 0;
}
.choices.is-open {
  overflow: visible;
}
.choices.is-disabled .choices__inner,
.choices.is-disabled .choices__input {
  background-color: #eaeaea;
  cursor: not-allowed;
  user-select: none;
}
.choices.is-disabled .choices__item {
  cursor: not-allowed;
}
.choices [hidden] {
  display: none !important;
}

.choices[data-type*=select-one] {
  cursor: pointer;
}
.choices[data-type*=select-one] .choices__inner {
  padding-bottom: 7.5px;
}
.choices[data-type*=select-one] .choices__input {
  display: block;
  width: 100%;
  padding: 10px;
  border-bottom: 1px solid #ddd;
  background-color: #fff;
  margin: 0;
}
.choices[data-type*=select-one] .choices__button {
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjMDAwIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==");
  padding: 0;
  background-size: 8px;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  margin-right: 25px;
  height: 20px;
  width: 20px;
  border-radius: 10em;
  opacity: 0.25;
}
.choices[data-type*=select-one] .choices__button:hover, .choices[data-type*=select-one] .choices__button:focus {
  opacity: 1;
}
.choices[data-type*=select-one] .choices__button:focus {
  box-shadow: 0 0 0 2px #005F75;
}
.choices[data-type*=select-one] .choices__item[data-placeholder] .choices__button {
  display: none;
}
.choices[data-type*=select-one]::after {
  content: "";
  height: 0;
  width: 0;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
  border-width: 5px;
  position: absolute;
  right: 11.5px;
  top: 50%;
  margin-top: -2.5px;
  pointer-events: none;
}
.choices[data-type*=select-one].is-open::after {
  border-color: transparent transparent #333;
  margin-top: -7.5px;
}
.choices[data-type*=select-one][dir=rtl]::after {
  left: 11.5px;
  right: auto;
}
.choices[data-type*=select-one][dir=rtl] .choices__button {
  right: auto;
  left: 0;
  margin-left: 25px;
  margin-right: 0;
}

.choices[data-type*=select-multiple] .choices__inner,
.choices[data-type*=text] .choices__inner {
  cursor: text;
}
.choices[data-type*=select-multiple] .choices__button,
.choices[data-type*=text] .choices__button {
  position: relative;
  display: inline-block;
  margin-top: 0;
  margin-right: -4px;
  margin-bottom: 0;
  margin-left: 8px;
  padding-left: 16px;
  border-left: 1px solid rgb(0, 53.5897435897, 66);
  background-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjEiIGhlaWdodD0iMjEiIHZpZXdCb3g9IjAgMCAyMSAyMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSIjRkZGIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxwYXRoIGQ9Ik0yLjU5Mi4wNDRsMTguMzY0IDE4LjM2NC0yLjU0OCAyLjU0OEwuMDQ0IDIuNTkyeiIvPjxwYXRoIGQ9Ik0wIDE4LjM2NEwxOC4zNjQgMGwyLjU0OCAyLjU0OEwyLjU0OCAyMC45MTJ6Ii8+PC9nPjwvc3ZnPg==");
  background-size: 8px;
  width: 8px;
  line-height: 1;
  opacity: 0.75;
  border-radius: 0;
}
.choices[data-type*=select-multiple] .choices__button:hover, .choices[data-type*=select-multiple] .choices__button:focus,
.choices[data-type*=text] .choices__button:hover,
.choices[data-type*=text] .choices__button:focus {
  opacity: 1;
}

.choices__inner {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  background-color: #f9f9f9;
  padding: 7.5px 7.5px 3.75px;
  border: 1px solid #ddd;
  border-radius: 2.5px;
  font-size: 14px;
  min-height: 44px;
  overflow: hidden;
}
.is-focused .choices__inner, .is-open .choices__inner {
  border-color: rgb(182.75, 182.75, 182.75);
}
.is-open .choices__inner {
  border-radius: 2.5px 2.5px 0 0;
}
.is-flipped.is-open .choices__inner {
  border-radius: 0 0 2.5px 2.5px;
}

.choices__list {
  margin: 0;
  padding-left: 0;
  list-style: none;
}
.choices__list--single {
  display: inline-block;
  padding: 4px 16px 4px 4px;
  width: 100%;
}
[dir=rtl] .choices__list--single {
  padding-right: 4px;
  padding-left: 16px;
}
.choices__list--single .choices__item {
  width: 100%;
}

.choices__list--multiple {
  display: inline;
}
.choices__list--multiple .choices__item {
  display: inline-block;
  vertical-align: middle;
  border-radius: 20px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 500;
  margin-right: 3.75px;
  margin-bottom: 3.75px;
  background-color: #005F75;
  border: 1px solid rgb(0, 74.2948717949, 91.5);
  color: #fff;
  word-break: break-all;
  box-sizing: border-box;
}
.choices__list--multiple .choices__item[data-deletable] {
  padding-right: 5px;
}
[dir=rtl] .choices__list--multiple .choices__item {
  margin-right: 0;
  margin-left: 3.75px;
}
.choices__list--multiple .choices__item.is-highlighted {
  background-color: rgb(0, 74.2948717949, 91.5);
  border: 1px solid rgb(0, 53.5897435897, 66);
}
.is-disabled .choices__list--multiple .choices__item {
  background-color: rgb(170.25, 170.25, 170.25);
  border: 1px solid rgb(144.75, 144.75, 144.75);
}

.choices__list--dropdown, .choices__list[aria-expanded] {
  display: none;
  z-index: 1;
  position: absolute;
  width: 100%;
  background-color: #fff;
  border: 1px solid #ddd;
  top: 100%;
  margin-top: -1px;
  border-bottom-left-radius: 2.5px;
  border-bottom-right-radius: 2.5px;
  overflow: hidden;
  word-break: break-all;
}
.is-active.choices__list--dropdown, .is-active.choices__list[aria-expanded] {
  display: block;
}
.is-open .choices__list--dropdown, .is-open .choices__list[aria-expanded] {
  border-color: rgb(182.75, 182.75, 182.75);
}
.is-flipped .choices__list--dropdown, .is-flipped .choices__list[aria-expanded] {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: -1px;
  border-radius: 0.25rem 0.25rem 0 0;
}
.choices__list--dropdown .choices__list, .choices__list[aria-expanded] .choices__list {
  position: relative;
  max-height: 300px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  will-change: scroll-position;
}
.choices__list--dropdown .choices__item, .choices__list[aria-expanded] .choices__item {
  position: relative;
  padding: 10px;
  font-size: 14px;
}
[dir=rtl] .choices__list--dropdown .choices__item, [dir=rtl] .choices__list[aria-expanded] .choices__item {
  text-align: right;
}
@media (min-width: 640px) {
  .choices__list--dropdown .choices__item--selectable[data-select-text], .choices__list[aria-expanded] .choices__item--selectable[data-select-text] {
    padding-right: 100px;
  }
  .choices__list--dropdown .choices__item--selectable[data-select-text]::after, .choices__list[aria-expanded] .choices__item--selectable[data-select-text]::after {
    content: attr(data-select-text);
    font-size: 12px;
    opacity: 0;
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
  }
  [dir=rtl] .choices__list--dropdown .choices__item--selectable[data-select-text], [dir=rtl] .choices__list[aria-expanded] .choices__item--selectable[data-select-text] {
    text-align: right;
    padding-left: 100px;
    padding-right: 10px;
  }
  [dir=rtl] .choices__list--dropdown .choices__item--selectable[data-select-text]::after, [dir=rtl] .choices__list[aria-expanded] .choices__item--selectable[data-select-text]::after {
    right: auto;
    left: 10px;
  }
}
.choices__list--dropdown .choices__item--selectable.is-highlighted, .choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background-color: rgb(242.25, 242.25, 242.25);
}
.choices__list--dropdown .choices__item--selectable.is-highlighted::after, .choices__list[aria-expanded] .choices__item--selectable.is-highlighted::after {
  opacity: 0.5;
}

.choices__item {
  cursor: default;
}

.choices__item--selectable {
  cursor: pointer;
}

.choices__item--disabled {
  cursor: not-allowed;
  user-select: none;
  opacity: 0.5;
}

.choices__heading {
  font-weight: 600;
  font-size: 12px;
  padding: 10px;
  border-bottom: 1px solid rgb(246.5, 246.5, 246.5);
  color: rgb(127.5, 127.5, 127.5);
}

.choices__button {
  text-indent: -9999px;
  appearance: none;
  border: 0;
  background-color: transparent;
  background-repeat: no-repeat;
  background-position: center;
  cursor: pointer;
}
.choices__button:focus {
  outline: none;
}

.choices__input {
  display: inline-block;
  vertical-align: baseline;
  background-color: #f9f9f9;
  font-size: 14px;
  margin-bottom: 5px;
  border: 0;
  border-radius: 0;
  max-width: 100%;
  padding: 4px 0 4px 2px;
}
.choices__input:focus {
  outline: 0;
}
.choices__input::-webkit-search-decoration, .choices__input::-webkit-search-cancel-button, .choices__input::-webkit-search-results-button, .choices__input::-webkit-search-results-decoration {
  display: none;
}
.choices__input::-ms-clear, .choices__input::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}
[dir=rtl] .choices__input {
  padding-right: 2px;
  padding-left: 0;
}

.choices__placeholder {
  opacity: 0.5;
}

/* =====  End of Choices  ====== */
.btn {
  display: inline-block;
  border-radius: 10px;
  border: 0 none;
  outline: 0 none;
  margin: 8px 0 0;
  padding: 14px 24px;
  background-color: #000000;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 700;
  line-height: 1;
  font-family: "Kelson Sans";
  text-align: center;
  transition: background-color 0.25s;
}

.btn:hover {
  background-color: #35BDB2;
}

.btn span {
  display: block;
  text-box: cap alphabetic;
}

@supports not (text-box: cap alphabetic) {
  .btn span {
    height: 0.76em;
  }
}
@media (min-width: 1500px) {
  .btn {
    padding-top: 20px;
    padding-bottom: 20px;
    font-size: 24px;
  }
}
.page-header {
  padding: var(--x-pad) 0;
}

.page-header .box {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: flex-start;
}

.header-logo img {
  display: block;
  height: auto;
}

.page-header .btn {
  margin-top: 0;
}

@media (max-width: 559px) {
  .page-header .btn {
    font-size: 14px;
    padding-left: 18px;
    padding-right: 18px;
  }
}
@media (max-width: 699px) {
  .header-logo img {
    width: 144px;
  }
  .page-header {
    padding: 10px 0;
  }
}
@media (min-width: 700px) {
  .header-logo img {
    width: 30vw;
    max-width: 434px;
  }
}
.footer {
  background-color: #592989;
  color: #ffffff;
  padding-left: var(--x-pad);
  padding-right: var(--x-pad);
  padding-top: 24px;
  padding-bottom: 24px;
}

.footer-top-logos {
  display: flex;
  align-items: center;
  justify-content: space-between;
  column-gap: calc(var(--x-pad) * 1.5);
  max-width: 450px;
}

.footer-top-logos > div {
  flex: 0 1 auto;
}

.footer-logo {
  display: block;
  max-width: 100%;
  height: auto;
}

.footer-rec-contacts {
  max-width: 224px;
  margin-left: auto;
  margin-right: auto;
}

.footer-rec-list {
  margin-top: 16px;
  border-top: 1px solid #ffffff;
  padding-top: 12px;
  line-height: 1.3;
}

.footer-rec-list li:not(:first-child) {
  margin-top: 0.3em;
}

.footer-rec-contacts a:hover {
  text-decoration: underline;
}

.footer-support {
  font-size: 12px;
  line-height: 1.2;
}

.footer-support p {
  padding-bottom: 8px;
}

.footer-dev {
  font-size: 14px;
}

.footer-dev a:hover {
  text-decoration: underline;
}

@media (max-width: 699px) {
  .footer-top-logos {
    margin-left: auto;
    margin-right: auto;
  }
  .footer-rec {
    padding-top: 32px;
    padding-bottom: 62px;
  }
  .footer-rec,
  .footer-part {
    border-top: 1px solid #735394;
  }
  .footer-top {
    padding-bottom: 24px;
  }
  .footer-support {
    width: 170px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .footer-support-logo {
    display: inline-block;
  }
  .footer-rec-list {
    text-align: center;
  }
  .footer-support {
    padding-top: 12px;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .footer-dev {
    padding-top: 32px;
    text-align: center;
  }
}
@media (min-width: 700px) {
  .footer {
    display: grid;
    grid-template-columns: 1fr 27%;
    grid-template-rows: repeat(2, auto);
    column-gap: calc(1.5 * var(--x-pad));
    row-gap: calc(2 * var(--x-pad));
  }
  .footer-top {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .footer-rec {
    grid-column: 2/3;
    grid-row: 1/2;
    padding-top: clamp(10px, 1.6vmin, 14px);
  }
  .footer-part {
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .footer-support {
    text-align: left;
  }
  .footer-top-logos {
    max-width: 50vw;
  }
  .footer-dev {
    grid-column: 1/2;
    grid-row: 2/3;
    align-self: end;
  }
  .footer-rec-contacts img {
    width: 20vw;
  }
}
@media (min-width: 1024px) {
  .footer {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-top-logos {
    width: 32vw;
    max-width: unset;
  }
  .footer-rec {
    padding-top: 0;
  }
  .footer-rec-contacts {
    padding-top: 0;
    margin-left: 0;
    margin-right: auto;
  }
  .footer-part {
    justify-self: end;
  }
  .footer-support {
    max-width: 214px;
    position: relative;
  }
  .footer-dev {
    grid-column: 1/3;
    text-align: center;
  }
  .footer-rec-contacts img {
    width: 16vw;
  }
}
@media (min-width: 1280px) and (max-width: 1714px) {
  .footer-dev {
    font-size: 16px;
  }
  .footer-rec-list {
    font-size: 18px;
  }
}
@media (min-width: 1715px) {
  .footer-support {
    font-size: 16px;
    max-width: 250px;
  }
  .footer-rec-list {
    font-size: 28px;
  }
  .footer-rec-contacts {
    max-width: 315px;
  }
  .footer-top-logos {
    column-gap: var(--x-pad);
  }
  .footer-dev {
    font-size: 16px;
  }
}
.message {
  display: contents;
}

.shadow,
.popup-message {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.25s, visibility 0s 0.25s;
}

.show-popup-message {
  overflow: hidden;
}

.show-popup-message .shadow,
.show-popup-message .popup-message {
  opacity: 1;
  visibility: visible;
  transition: opacity 0.25s;
}

.shadow {
  display: block;
  width: 100%;
  height: 100%;
  position: fixed;
  left: 0;
  right: 0;
  z-index: 100;
  background: rgba(22, 22, 22, 0.5);
  backdrop-filter: blur(40px);
}

.popup-message {
  display: block;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 101;
  width: 90vw;
  max-width: 960px;
  padding: calc(var(--x-pad) * 4) var(--x-pad);
  text-align: center;
  background: #ffffff;
  color: #000000;
  border-radius: 10px;
}

.popup-message-text h4 {
  font-size: 2em;
}

.popup-message-text p:not(:first-child) {
  margin-top: 1em;
}

.popup-message-close {
  position: absolute;
  top: calc(var(--x-pad) / 2);
  right: calc(var(--x-pad) / 2);
  display: block;
  width: 2.625rem;
  height: 2.625rem;
  border: 0 none;
  outline: 0 none;
  margin: 0;
  padding: 0;
  border-radius: 50%;
  background-color: #35BDB2;
  background-image: url("/assets/icon-close-713a5646.svg");
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-size: 1.2rem 1.2rem;
}

@media (min-width: 1024px) {
  .popup-message {
    width: 60vw;
    padding: calc(var(--x-pad) * 4);
  }
}
@media (min-width: 1366px) {
  .popup-message {
    padding: calc(var(--x-pad) * 2);
  }
}
@media (min-width: 1500px) {
  .popup-message-close {
    width: 56px;
    height: 56px;
  }
}
.visual {
  position: relative;
  display: grid;
  width: 100%;
  min-height: 100vh;
}

.visual-logo img {
  display: block;
  height: auto;
}

.visual-content {
  text-align: center;
  justify-self: center;
  align-self: end;
}

.visual-content-title {
  font-family: "Kelson Sans";
  font-style: normal;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
  font-size: calc(40px + 56 * (100vw - 320px) / 1600);
}

.visual-content-text {
  font-size: calc(16px + 12 * (100vw - 320px) / 1600);
  line-height: 1.2;
  margin-top: 1em;
}

.visual-content-text a {
  text-decoration: underline;
  font-weight: 600;
}

.visual-content-text a:hover {
  text-decoration: none;
}

@supports (min-height: 100dvh) {
  .visual {
    min-height: 100dvh;
  }
}
@media (max-width: 699px) {
  .visual {
    grid-template-columns: 100%;
    grid-template-rows: auto 1fr auto;
    gap: 20px;
    padding-top: 10px;
    padding-bottom: 24px;
  }
  .visual-logo {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .visual-content {
    grid-column: 1/2;
    grid-row: 2/3;
  }
  .visual-action {
    grid-column: 1/2;
    grid-row: 3/4;
    justify-self: center;
  }
  .visual-logo img {
    width: 144px;
  }
}
@media (min-width: 700px) {
  .visual {
    grid-template-columns: 1fr auto;
    grid-template-rows: auto 1fr;
    gap: 24px;
    padding-top: var(--x-pad);
    padding-bottom: 5.3vmin;
  }
  .visual-logo {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .visual-action {
    grid-column: 2/3;
    grid-row: 1/2;
  }
  .visual-content {
    grid-column: 1/3;
    grid-row: 2/3;
  }
  .visual-logo img {
    width: 30vw;
    max-width: 434px;
  }
  .visual-content-text {
    max-width: 40%;
    margin-left: auto;
    margin-right: auto;
  }
}
.visual picture,
.visual-img {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  object-fit: cover;
}

.partners-list {
  display: grid;
  width: 100%;
  grid-auto-rows: 1fr;
  gap: var(--x-pad);
}

.partner-card {
  display: block;
  padding: 12px 30px;
  border-radius: 5px;
  background-color: #e9f6f5;
}

.partner-pic {
  position: relative;
  display: block;
  width: 100%;
}

@supports (aspect-ratio: 316/74) {
  .partner-pic {
    aspect-ratio: 316/74;
  }
}
@supports not (aspect-ratio: 316/74) {
  .partner-pic::before {
    content: "";
    display: block;
    width: 100%;
    height: 0;
    padding-top: 23.417%;
  }
}
.partner-img {
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  object-fit: contain;
}

@media (max-width: 559px) {
  .partners-list {
    grid-template-columns: 100%;
  }
}
@media (min-width: 560px) and (max-width: 699px) {
  .partners-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 700px) and (max-width: 1023px) {
  .partners-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1024px) and (max-width: 1499px) {
  .partners-list {
    grid-template-columns: repeat(4, 1fr);
  }
  .partner-card {
    padding: 24px 36px;
  }
}
@media (min-width: 1500px) {
  .partners-list {
    grid-template-columns: repeat(5, 1fr);
  }
  .partner-card {
    padding: 24px 36px;
  }
}
.join-box {
  position: relative;
}

.join-box::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: calc(-1 * var(--x-pad));
  z-index: -1;
  background: transparent url("/assets/bg-form-065cf395.svg") 0 0/contain no-repeat;
}

.join-form {
  position: relative;
  z-index: 2;
}

@supports (aspect-ratio: 776/856) {
  .join-box::before {
    aspect-ratio: 776/856;
  }
}
@supports not (aspect-ratio: 776/856) {
  .join-box::before {
    height: 0;
    padding-top: 110%;
  }
}
@media (max-width: 1023px) {
  .join-box {
    padding-top: 72px;
    padding-bottom: 30px;
  }
  .join-box::before {
    width: 76vw;
  }
  .join-form {
    margin-top: 32px;
  }
}
@media (min-width: 1024px) {
  .join-box {
    display: flex;
    padding-top: 72px;
    padding-bottom: 30px;
  }
  .join-box::before {
    width: 46vw;
  }
  .join-lead,
  .join-form {
    width: 50%;
  }
  .join-lead {
    padding-left: calc(8vw - var(--x-pad));
    padding-right: 5vw;
  }
}
.form {
  display: block;
  container-type: inline-size;
  --label-font-size: 14px;
  --input-font-size: 16px;
}

@media (min-width: 1280px) and (max-width: 1499px) {
  .form {
    --label-font-size: 16px;
    --input-font-size: 18px;
  }
}
@media (min-width: 1500px) {
  .form {
    --label-font-size: 18px;
    --input-font-size: 20px;
  }
}
.form-line {
  display: contents;
}

.form-item {
  margin-top: var(--label-font-size);
}

.form-line:first-child .form-item:first-child {
  margin-top: 0;
}

@supports (container-type: inline-size) {
  @container (width > 479px) {
    .form-line {
      display: block;
    }
    .form-item {
      margin-top: 0;
    }
    .form-line:not(:first-child) {
      margin-top: var(--label-font-size);
    }
    .form-line-fluid {
      display: flex;
      justify-content: space-between;
    }
    .form-line-fluid .form-item {
      width: calc(50% - var(--input-font-size) / 2);
    }
    .form-item .btn {
      width: calc(50% - var(--input-font-size) / 2);
    }
  }
  @container (width > 580px) {
    .form-notice {
      width: calc(50% - var(--input-font-size) / 2);
    }
  }
}
.form-label {
  display: inline-block;
  font-size: var(--label-font-size);
  padding-left: 0.5em;
}

.form-label sup {
  font-size: 0.7em;
}

.form-input-box {
  margin-top: 4px;
}

.form input[type=email].form-input,
.form input[type=tel].form-input,
.form input[type=text].form-input {
  display: block;
  width: 100%;
  border: 1px solid #e9f6f5;
  outline: 0 none;
  background: #e9f6f5;
  border-radius: 5px;
  padding: 8px;
  font-family: "Roboto Flex", sans-serif;
  font-size: var(--input-font-size);
  font-weight: 400;
}

.form input[type=email].form-input:focus,
.form input[type=tel].form-input:focus,
.form input[type=text].form-input:focus {
  border-color: #35BDB2;
}

.form .form-item_error input[type=email].form-input,
.form .form-item_error input[type=tel].form-input,
.form .form-item_error input[type=text].form-input {
  border-color: #bb0000;
}

.form-item a {
  text-decoration: underline;
}

.form-item a:hover {
  text-decoration: none;
}

/* Select */
.form-select {
  width: 100%;
}

/* Checkbox */
.form-checkbox {
  position: relative;
}

.form-checkbox-input {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-100%, -100%);
}

.form-checkbox-label {
  display: flex;
  flex-flow: row nowrap;
  align-items: flex-start;
  justify-content: flex-start;
}

.form-checkbox-icon {
  display: block;
  width: var(--input-font-size);
  height: var(--input-font-size);
  border: 1px solid #000000;
  border-radius: 4px;
  position: relative;
  margin-right: calc(var(--input-font-size) / 2);
}

.form-item_error .form-checkbox-icon {
  border-color: #bb0000;
}

.form-checkbox-icon::before {
  content: "";
  display: block;
  width: 76%;
  height: 76%;
  background: #35BDB2;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  border-radius: 3px;
  opacity: 0;
  visibility: hidden;
}

.form-checkbox-input:checked + .form-checkbox-label .form-checkbox-icon::before {
  opacity: 1;
  visibility: visible;
}

.form-checkbox-text {
  font-size: var(--label-font-size);
  line-height: 1.2;
}

.form-notice {
  font-size: var(--label-font-size);
  line-height: 1.3;
  color: #666666;
}

.form-notice p {
  font-size: 0.857em;
}

@media (max-width: 559px) {
  .form-item .btn {
    width: 100%;
  }
}
.choices[data-type*=select-one] .choices__inner {
  padding: 8px;
  min-height: unset;
  border-radius: 5px;
  border-color: #e9f6f5;
  background-color: #e9f6f5;
  font-size: 16px;
  font-family: inherit;
  font-weight: 400;
}

.is-open.is-focused.choices[data-type*=select-one] .choices__inner {
  border-color: #35BDB2;
}

.form-item_error .choices[data-type*=select-one] .choices__inner {
  border-color: #bb0000;
}

.choices__list--dropdown,
.choices__list[aria-expanded] {
  border-radius: 5px;
}

.is-open .choices__list--dropdown,
.is-open .choices__list[aria-expanded] {
  border-color: #35BDB2;
}

.choices__list--single {
  padding-top: 0;
  padding-bottom: 0;
  padding-left: 0;
}

.choices__list--dropdown .choices__item--selectable.is-highlighted,
.choices__list[aria-expanded] .choices__item--selectable.is-highlighted {
  background-color: #e9f6f5;
}

.choices__list--dropdown .choices__item--selectable.is-selected,
.choices__list[aria-expanded] .choices__item--selectable.is-selected {
  font-weight: 700;
}

.choices__list--dropdown .choices__item--selectable.choices__placeholder,
.choices__list[aria-expanded] .choices__item--selectable.choices__placeholder {
  display: none;
}

/* Card */
.vacancy-desc {
  background-color: #000000;
  color: #ffffff;
  border-radius: 10px;
  padding: 16px 16px 10px;
  line-height: 1.3;
  font-family: "Kelson Sans";
}

.vacancy-title {
  display: inline;
  font-size: 21px;
  font-weight: 700;
  text-transform: uppercase;
}

.vacancy-def {
  display: inline;
}

.vacancy-title::after {
  content: ":";
}

.vacancy-icon {
  display: block;
  position: relative;
}

.vacancy-icon img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: 0 50%;
}

.vacancy-action .btn {
  width: 100%;
}

@media (max-width: 559px) {
  .vacancy-small-title {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0 none;
    outline: 0 none;
    background: transparent;
    text-align: left;
    font-family: inherit;
    font-weight: 700;
    line-height: inherit;
    font-size: 21px;
    text-transform: uppercase;
    position: relative;
  }
  .vacancy-small-title::after {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 4px;
    right: 0;
    background: transparent url('data:image/svg+xml;utf8,<svg width="18" height="10" viewBox="0 0 18 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.448242 1L8.72412 9.27588L17 1" stroke="white"/></svg>') 50% 50%/contain no-repeat;
  }
  .vacancy-cut {
    position: relative;
    overflow: hidden;
  }
  .vacancy-cut-content {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    z-index: -1;
    padding-right: 24px;
  }
  .vacancy-cut-content > * {
    opacity: 0;
    visibility: hidden;
  }
  .vacancy-cut-content .vacancy-def,
  .vacancy-cut-content .vacancy-icon {
    transition: opacity 0.25s, visibility 0s 0.25s;
  }
  .vacancy-icon {
    width: 76px;
    height: 76px;
    margin-top: 76px;
    margin-bottom: 6px;
  }
  .vacancy-action {
    opacity: 0;
    visibility: hidden;
    height: 0;
  }
  .vacancies-item_active .vacancy-small-title {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
  }
  .vacancies-item_active .vacancy-small-title span {
    opacity: 0;
  }
  .vacancies-item_active .vacancy-small-title::after {
    transform: scaleY(-1);
  }
  .vacancies-item_active .vacancy-cut-content {
    position: relative;
    z-index: 1;
  }
  .vacancies-item_active .vacancy-cut-content > * {
    opacity: 1;
    visibility: visible;
  }
  .vacancies-item_active .vacancy-cut-content .vacancy-def,
  .vacancies-item_active .vacancy-cut-content .vacancy-icon {
    transition: opacity 0.25s;
  }
  .vacancies-item_active .vacancy-action {
    opacity: 1;
    visibility: visible;
    height: auto;
  }
  .vacancy-def {
    display: block;
  }
}
@media (min-width: 560px) {
  .vacancy-small-title {
    display: none;
  }
  .vacancy-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
  }
  .vacancy-desc {
    flex-grow: 2;
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
    padding-bottom: 16px;
  }
  .vacancy-cut,
  .vacancy-cut-content {
    display: contents;
  }
  .vacancy-def {
    padding-bottom: 16px;
  }
  .vacancy-icon {
    width: 76px;
    height: 76px;
    margin-bottom: 0;
    margin-top: auto;
  }
}
@media (min-width: 1280px) {
  .vacancy-title,
  .vacancy-def {
    font-size: 21px;
  }
  .vacancy-def {
    padding-bottom: 45px;
  }
}
@media (min-width: 1500px) {
  .vacancy-title,
  .vacancy-def {
    font-size: 28px;
  }
  .vacancy-def {
    padding-bottom: 62px;
  }
  .vacancy-icon {
    width: 125px;
    height: 125px;
  }
  .vacancy-desc {
    padding: 24px;
  }
}
/* Layout */
@media (max-width: 559px) {
  .vacancies-item:not(:first-child) {
    margin-top: var(--x-pad);
  }
}
@media (min-width: 560px) {
  .vacancies-grid {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: 10px;
    row-gap: calc(2 * var(--x-pad));
  }
}
@media (min-width: 700px) {
  .vacancies-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (min-width: 1024px) {
  .vacancies-grid {
    grid-template-columns: repeat(5, 1fr);
  }
}
.howto-list {
  display: grid;
  gap: var(--x-pad);
  grid-auto-rows: 1fr;
}

@media (max-width: 699px) {
  .howto-list {
    grid-template-columns: 100%;
  }
}
@media (min-width: 700px) {
  .howto-list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.howto-list {
  counter-reset: counter;
}

.howto-card {
  background: #e9f6f5;
  padding: 24px 16px 18px;
  border-radius: 10px;
  display: flex;
}

.howto-card::before {
  counter-increment: counter;
  content: counter(counter);
  font-size: 70px;
  font-weight: 700;
  line-height: 1;
  display: block;
  font-family: "Kelson Sans";
  color: #35BDB2;
}

.howto-text {
  text-transform: uppercase;
  font-family: "Kelson Sans";
  font-weight: 700;
  font-style: normal;
  line-height: 1.1;
  font-size: 20px;
  padding-left: 16px;
}

@supports (text-box: cap alphabetic) {
  .howto-card::before,
  .howto-text {
    text-box: cap alphabetic;
  }
}
@supports not (text-box: cap alphabetic) {
  .howto-card::before {
    height: 0.77em;
  }
}
@media (min-width: 1024px) and (max-width: 1920px) {
  .howto-text {
    font-size: calc(20px + 20 * (100vw - 1024px) / 896);
  }
  .howto-card::before {
    font-size: calc(70px + 76 * (100vw - 1024px) / 896);
  }
}
@media (min-width: 1921px) {
  .howto-text {
    font-size: 40px;
  }
  .howto-card::before {
    font-size: 146px;
  }
}
.qa-list,
.qa-item {
  display: block;
}

.qa-list {
  border-bottom: 1px solid #BEBEBE;
}

.qa-item {
  border-top: 1px solid #BEBEBE;
  padding: 16px 8px;
}

.qa-item-title {
  width: 100%;
  margin: 0;
  padding: 0;
  border: 0 none;
  outline: 0 none;
  background: transparent none;
  font-family: "Kelson Sans";
  line-height: 1.2;
  font-weight: 700;
  text-align: left;
}

.qa-item-content {
  line-height: 1.25;
  padding-top: 8px;
}

@media (max-width: 1023px) {
  .qa-item-title {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    font-size: 20px;
  }
  .qa-item-title span {
    display: block;
    padding-right: 2em;
  }
  .qa-item-title::after {
    content: "";
    display: block;
    width: 16px;
    min-width: 16px;
    height: 16px;
    background: url('data:image/svg+xml;utf8,<svg width="18" height="10" viewBox="0 0 18 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.448242 1L8.72412 9.27588L17 1" stroke="currentColor"/></svg>') 50% 50%/contain no-repeat;
    transform: scaleY(1);
    transition: transform 0.25s;
  }
  .qa-item_active .qa-item-title::after {
    transform: scaleY(-1);
  }
  .qa-item-crop {
    width: 100%;
    overflow: hidden;
    height: 0;
    transition: height 0.25s ease-in-out;
  }
  .qa-item_active .qa-item-crop {
    height: auto;
  }
}
@media (min-width: 1024px) {
  button.qa-item-title {
    cursor: text;
  }
}
@media (min-width: 1280px) and (max-width: 1714px) {
  .qa-item {
    padding: 24px 32px;
  }
  .qa-item-title {
    font-size: 26px;
  }
  .qa-item-content {
    font-size: 21px;
  }
}
@media (min-width: 1715px) {
  .qa-item {
    padding: 24px 32px;
  }
  .qa-item-title {
    font-size: 32px;
  }
  .qa-item-content {
    font-size: 28px;
  }
}
.desc {
  padding-top: 72px;
  position: relative;
}

.desc::before {
  content: "";
  position: absolute;
  z-index: -1;
  height: 100%;
  top: 0;
  left: calc(-1 * var(--x-pad));
  background: transparent url("/assets/bg-description-c4c9c639.svg") 100% 0/contain no-repeat;
}

.desc-text {
  line-height: 1.25;
}

.desc-fq-figcaption strong,
.desc-fq-figcaption span {
  display: block;
}

.desc-fq-figcaption span {
  margin-top: 0.25em;
  line-height: 1.21;
}

.desc-fq-blockquote {
  font-weight: 500;
  line-height: 1.3;
}

.desc-fq-img {
  display: block;
  max-width: 100%;
  height: auto;
}

.desc-fq-blockquote {
  display: block;
}

.desc-fq-blockquote:before,
.desc-fq-blockquote:after {
  background-image: url('data:image/svg+xml;utf8,<svg width="30" height="33" viewBox="0 0 30 33" fill="none" xmlns="http://www.w3.org/2000/svg"><rect x="11.8213" y="0.276367" width="31.9331" height="11.8213" transform="rotate(90 11.8213 0.276367)" fill="currentColor"/><rect x="29.3906" y="0.276367" width="31.9331" height="11.8213" transform="rotate(90 29.3906 0.276367)" fill="currentColor"/></svg>');
  background-repeat: no-repeat;
  background-size: 0.6em 1em;
}

.desc-fq-blockquote:before {
  content: "  ";
  background-position: 0 50%;
}

.desc-fq-blockquote:after {
  content: "  ";
  background-position: 100% 50%;
}

@media (max-width: 699px) {
  .desc::before {
    width: calc(100% + var(--x-pad));
  }
  .desc-text {
    margin-top: 22px;
  }
  .desc-quote {
    margin-top: 118px;
  }
  .desc-fq-blockquote {
    margin-top: 62px;
  }
  .desc-fq-pic {
    margin-top: 52px;
  }
  .desc-fq-blockquote:before {
    position: relative;
    top: -0.5em;
  }
  .desc-fq-blockquote:after {
    position: relative;
    top: 0.5em;
  }
  .desc-fq-figcaption span {
    font-size: 14px;
  }
}
@media (min-width: 700px) and (max-width: 1023px) {
  .desc::before {
    width: calc(100% + var(--x-pad));
    background-position: 0 0;
  }
  .desc {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, auto);
  }
  .desc-header {
    grid-column: 1/2;
    grid-row: 1/2;
  }
  .desc-text {
    grid-column: 1/3;
    grid-row: 2/3;
    padding-top: var(--x-pad);
  }
  .desc-quote {
    display: contents;
  }
  .desc-fq-pic {
    grid-column: 1/2;
    grid-row: 3/4;
    padding-top: calc(var(--x-pad) * 2);
    padding-right: var(--x-pad);
    align-self: end;
    justify-self: center;
  }
  .desc-fq {
    grid-column: 2/3;
    grid-row: 3/4;
    padding-top: calc(var(--x-pad) * 2);
    padding-bottom: calc(var(--x-pad) * 2);
    padding-left: var(--x-pad);
    align-self: end;
  }
  .desc-fq-figcaption span {
    font-size: 14px;
  }
  .desc-fq-blockquote {
    padding-top: calc(var(--x-pad));
  }
  .desc-fq-img {
    max-width: 324px;
  }
  .desc-fq-blockquote:before {
    position: relative;
    top: -0.5em;
  }
  .desc-fq-blockquote:after {
    position: relative;
    top: 0.5em;
  }
}
@media (min-width: 1024px) {
  .desc::before {
    width: calc(100% + var(--x-pad));
    height: 150%;
    background-position: 0 0;
  }
  .desc {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(3, auto);
  }
  .desc-header {
    grid-column: 1/2;
    grid-row: 1/2;
    padding-left: calc(8vw - var(--x-pad));
  }
  .desc-text {
    grid-column: 2/3;
    grid-row: 1/3;
  }
  .desc-quote {
    display: contents;
  }
  .desc-fq-pic {
    grid-column: 1/2;
    grid-row: 2/4;
    align-self: end;
    justify-self: center;
  }
  .desc-fq {
    grid-column: 2/3;
    grid-row: 3/4;
    align-self: end;
    padding-bottom: 8vmin;
    padding-top: 8vmin;
  }
  .desc-text,
  .desc-fq {
    padding-left: 6vw;
  }
  .desc-fq-img {
    width: 77%;
    margin-left: auto;
    margin-right: auto;
    padding-top: calc(var(--x-pad) * 2);
  }
  .desc-fq-figcaption span {
    font-size: 14px;
    width: 80%;
  }
  .desc-fq-blockquote {
    padding-top: var(--x-pad);
  }
  .desc-fq-blockquote:before {
    position: relative;
    top: -0.5em;
  }
  .desc-fq-blockquote:after {
    position: relative;
    top: 0.5em;
  }
}
@media (min-width: 1280px) {
  .desc-fq-blockquote {
    padding-left: 1.3em;
    position: relative;
  }
  .desc-fq-blockquote::before {
    position: absolute;
    top: calc(var(--x-pad) - 0.5em);
    left: 0;
  }
  .desc-fq-blockquote:after {
    position: relative;
    top: 0.5em;
  }
}
@media (min-width: 1280px) and (max-width: 1714px) {
  .desc-text,
  .desc-fq-blockquote {
    font-size: 21px;
  }
  .desc-fq-figcaption span {
    font-size: 16px;
    max-width: 40%;
  }
}
@media (min-width: 1715px) {
  .desc-text,
  .desc-fq-blockquote {
    font-size: 28px;
  }
  .desc-fq-figcaption span {
    font-size: 16px;
    max-width: 40%;
  }
}
.article {
  position: relative;
}

.article::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: calc(-1 * var(--x-pad));
  z-index: -1;
  background: transparent url("/assets/bg-form-065cf395.svg") 0 0/contain no-repeat;
}

@supports (aspect-ratio: 776/856) {
  .article::before {
    aspect-ratio: 776/856;
  }
}
@supports not (aspect-ratio: 776/856) {
  .article::before {
    height: 0;
    padding-top: 110%;
  }
}
@media (max-width: 1023px) {
  .article {
    padding-top: 72px;
    padding-bottom: 30px;
  }
  .article::before {
    width: 76vw;
  }
}
@media (min-width: 1024px) {
  .article {
    display: flex;
    padding-top: 72px;
    padding-bottom: 60px;
  }
  .article::before {
    width: 46vw;
  }
  .article-head {
    width: calc(40% - 1.5em);
    padding-right: 5vw;
  }
  .article-body {
    width: calc(60% + 1.5em);
  }
}
.article-body {
  line-height: 1.5;
}

@media (max-width: 1023px) {
  .article-body {
    margin-top: 2.375em;
    padding-bottom: 30px;
  }
}
@media (min-width: 1280px) {
  .article-body {
    font-size: 21px;
  }
}
@media (min-width: 1500px) {
  .article-body {
    font-size: 28px;
  }
}
.article-body p:not(:first-child),
.article-body ol:not(:first-child),
.article-body ul:not(:first-child) {
  margin-top: 1em;
}

.article-body ul {
  margin-left: 1.5em;
}

.article-body ol li:has(> h3):not(:first-child) {
  margin-top: 2em;
}

.article-body ol li:has(> h3)::marker {
  font-weight: 700;
}

.article-body ul li {
  list-style-type: disc;
}

.article-body ul li ul li {
  list-style-type: circle;
}

.article-body li:not(:first-child) {
  margin-top: 0.5em;
}

.article-body a {
  text-decoration: underline;
}

.article-body a:hover {
  text-decoration: none;
}

.article-body ol ol {
  margin-top: 0.5em;
}

.article-body ol ol ol {
  padding-bottom: 1em;
}

.article-body ol {
  list-style: none;
  counter-reset: li;
}

.article-body ol li:before {
  counter-increment: li;
  content: counters(li, ".") ". ";
}

.article-body ol li:has(> h3)::before {
  font-weight: 700;
}

.article-body ol li h3 {
  display: inline;
}

.article-body ol li ol li > ol {
  margin-left: 1em;
}

@media (min-width: 700px) {
  .article-body ol li ol li > ol {
    margin-left: 2em;
  }
}
.article-notice {
  font-size: 0.78em;
  margin-top: 1em;
}
