@charset "UTF-8";

:root {
  --red: #DF2526;
  --orange: #F7B26F;
  --black: #000;
  --white: #fff;
  --light: linear-gradient(180deg, #fff 0%, #d3d3d3 100%);
  --grad: linear-gradient(130.75deg, #000 16.29%, #DF2526 56.637%, #F7B26F 96.983%);
  --font: "Manrope", Arial, Helvetica, sans-serif;
}

* {
  padding: 0;
  margin: 0;
  border: 0;
  -webkit-tap-highlight-color: transparent;
  box-sizing: border-box;
}

:focus,
:active {
  outline: none;
}

:focus-visible {
  outline: 0.125rem solid var(--red);
  outline-offset: 0.125rem;
}

nav,
footer,
header,
aside {
  display: block;
}

html,
body {
  font-size: 1.111vw;
  line-height: 1.4;
  background: #000;
  font-family: var(--font);
  -ms-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  color: #fff;
  font-weight: 400;
}

body {
  overflow-x: hidden;
  overflow-x: clip;
}

input,
button,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  color: inherit;
  background: none;
}

button {
  cursor: pointer;
}

input::-ms-clear {
  display: none;
}

button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

a {
  text-decoration: none;
  color: inherit;
  transition: all 0.3s;
}

ul li {
  list-style: none;
}

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

[hidden] {
  display: none !important;
}

/*--------- RESET END -----------*/

/*--------- COMMON -----------*/

.main {
  width: 100%;
  max-width: 69.625rem;
  margin: 0 auto;
}

.main_wide {
  width: 100%;
  max-width: 83.75rem;
  margin: 0 auto;
}

.h1 {
  font-size: 4.375rem;
  line-height: 1;
  font-weight: 800;
  letter-spacing: -0.175rem;
}

.h2 {
  font-size: 3.75rem;
  line-height: 1;
  font-weight: 300;
}

.h2.dark {
  color: #000;
}

.h3 {
  font-size: 2.5rem;
  line-height: 1;
  font-weight: 300;
}

.h3.dark {
  color: #000;
}

.breadcrumbs {
  display: flex;
  gap: 0.625rem;
  font-size: 0.75rem;
  line-height: 1;
  color: rgba(255, 255, 255, 0.5);
  white-space: nowrap;
}

.breadcrumbs a:hover {
  color: #fff;
}

.head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5625rem;
  text-align: center;
}

.head--left {
  align-items: flex-start;
  text-align: left;
}

.head_text {
  font-size: 1.125rem;
  line-height: 1.4;
}

.light .head_text {
  color: #000;
}

.more {
  display: flex;
  justify-content: center;
  margin-top: 1.875rem;
}

.bts {
  display: flex;
  justify-content: center;
  gap: 0.9375rem;
}

.bt {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 13.75rem;
  padding: 0.875rem 1.875rem;
  border: 1px solid transparent;
  border-radius: 0.9375rem;
  font-size: 0.875rem;
  line-height: 1.4;
  font-weight: 600;
  white-space: nowrap;
  transition: all 0.3s;
}

.bt_wide {
  width: 15.625rem;
}

.bt_s {
  width: 8.0625rem;
  padding: 0.5625rem 1.875rem;
}

.bt_red {
  background: var(--red);
  color: #fff;
}

.bt_red:hover {
  background: linear-gradient(rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.05)), var(--red);
  box-shadow: 0 0.25rem 8rem rgba(223, 37, 38, 0.3), 0 0.25rem 4rem rgba(223, 37, 38, 0.3);
}

.bt_white {
  background: #fff;
  color: #000;
}

.bt_white:hover {
  background: var(--red);
  color: #fff;
}

.bt_outline {
  border-color: #fff;
  color: #fff;
}

.bt_outline:hover {
  background: #fff;
  color: #000;
}

.bt_outline_dark {
  border-color: #000;
  color: #000;
}

.bt_outline_dark:hover {
  background: #000;
  color: #fff;
}

.arrow {
  position: relative;
  display: inline-flex;
  flex-shrink: 0;
  width: 3.125rem;
  height: 1.875rem;
  border: 1px solid #000;
  border-radius: 0.9375rem;
  color: #000;
  transition: all 0.3s;
}

.arrow::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0.6875rem;
  height: 0.5rem;
  margin: -0.25rem 0 0 -0.34375rem;
  background: currentColor;
  -webkit-mask: url(../img/icons/arrow.svg) no-repeat center/contain;
  mask: url(../img/icons/arrow.svg) no-repeat center/contain;
}

.arrow:hover {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

.arrow_prev::before {
  transform: rotate(180deg);
}

.arrow_white {
  border-color: #fff;
  color: #fff;
}

.arrow_red {
  border-color: transparent;
  background: rgba(223, 37, 38, 0.05);
  color: var(--red);
}

.icon_box {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  background: rgba(223, 37, 38, 0.1);
}

.icon_box img {
  width: 1.125rem;
  height: 1.125rem;
  -o-object-fit: contain;
     object-fit: contain;
}

.icon_box--light {
  background: rgba(223, 37, 38, 0.05);
}

.list {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
}

.list li {
  position: relative;
  padding-left: 1.375rem;
  font-size: 1rem;
  line-height: 1.4;
}

.list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.46875rem;
  width: 0.4375rem;
  height: 0.4375rem;
  background: var(--red);
}

.card {
  position: relative;
  display: block;
  border-radius: 2.1875rem;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(1.5625rem);
  -webkit-backdrop-filter: blur(1.5625rem);
  overflow: hidden;
  transition: background 0.3s;
}

.card::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--grad);
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}

.card > * {
  position: relative;
}

.card:hover::before {
  opacity: 1;
}

.card:hover .card_text {
  color: #fff;
}

.card:hover .arrow {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

.card::after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: inherit;
  background: conic-gradient(rgba(255, 255, 255, 0.28) 0deg, rgba(255, 255, 255, 0.28) 30deg, rgba(255, 255, 255, 0.04) 45deg, rgba(255, 255, 255, 0.11) 60deg, rgba(255, 255, 255, 0.12) 120deg, rgba(255, 255, 255, 0.3) 135deg, rgba(255, 255, 255, 0.12) 150deg, rgba(255, 255, 255, 0.11) 210deg, rgba(255, 255, 255, 0.07) 225deg, rgba(255, 255, 255, 0.29) 240deg, rgba(255, 255, 255, 0.3) 300deg, rgba(255, 255, 255, 0.42) 315deg, rgba(255, 255, 255, 0.29) 330deg, rgba(255, 255, 255, 0.28) 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  pointer-events: none;
}

.card_title {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.card_text {
  font-size: 1rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.5);
  transition: color 0.3s;
}

.card_light {
  border: 1px solid rgba(255, 255, 255, 0.85);
  background: linear-gradient(100deg, rgba(0, 0, 0, 0.015) 0%, rgba(255, 255, 255, 0) 45%, rgba(255, 255, 255, 0.22) 100%);
  backdrop-filter: blur(3.75rem);
  -webkit-backdrop-filter: blur(3.75rem);
  box-shadow: inset 1.875rem 0 3.125rem -1.5rem rgba(0, 0, 0, 0.03), inset 0 1.875rem 3.125rem -1.5rem rgba(0, 0, 0, 0.035), inset -2.5rem 0 3.75rem -1.5rem rgba(255, 255, 255, 0.25), inset 0 -3.125rem 4.375rem -1.5rem rgba(255, 255, 255, 0.35);
  color: #000;
  transition: background 0.3s, box-shadow 0.3s;
}

.card_light::before,
.card_light::after {
  display: none;
}

.card_light .card_text {
  color: rgba(0, 0, 0, 0.5);
}

.card_light:hover {
  background: #fff;
}

.card_light:hover .card_text {
  color: rgba(0, 0, 0, 0.5);
}

.card_light:hover .arrow {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

.light {
  position: relative;
  z-index: 2;
  margin-top: -3.125rem;
  border-radius: 3.125rem 3.125rem 0 0;
  background: var(--light);
  color: #000;
}

.decor_word {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 3.125rem;
  overflow: hidden;
  pointer-events: none;
}

.decor_track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  animation: marquee 40s linear infinite;
}

.decor_track img {
  flex-shrink: 0;
  width: 90rem;
}

.hd_logo img,
.ft_logo img,
.b1_img video,
.b3_lines img,
.b5_bracket img,
.b8_img video {
  display: block;
  width: 100%;
  height: auto;
}

/*--------- HEADER -----------*/

.hd {
  position: fixed;
  left: 0;
  right: 0;
  top: 3.125rem;
  z-index: 50;
  transition: transform 0.3s;
}

.hd.hd--hide {
  transform: translateY(-7.5rem);
}

.hd_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 83.75rem;
  height: 4.375rem;
  margin: 0 auto;
  padding: 0.625rem 0.625rem 0.625rem 1.25rem;
  border-radius: 1.25rem;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(1.5625rem);
  -webkit-backdrop-filter: blur(1.5625rem);
}

.hd_lf {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

.hd_logo {
  flex-shrink: 0;
  width: 12.9375rem;
}

.hd_menu {
  display: flex;
  gap: 1.25rem;
}

.hd_menu a {
  font-size: 0.875rem;
  line-height: 1.4;
  font-weight: 500;
}

.hd_menu a:hover {
  color: rgba(255, 255, 255, 0.5);
}

.hd_rg {
  display: flex;
  gap: 0.625rem;
}

.hd_bt {
  width: 12.5rem;
}

.hd_burger {
  display: none;
}

/*--------- FOOTER -----------*/

.ft {
  position: relative;
  height: 31.25rem;
  color: #000;
  overflow: hidden;
}

.ft_row,
.ft_bottom {
  display: grid;
  grid-template-columns: 42.5rem 14.1875rem 14.1875rem 1fr;
}

.ft_lf {
  display: flex;
  flex-direction: column;
}

.ft_logo {
  width: 12.9375rem;
}

.ft_copy {
  width: 12.9375rem;
  margin-top: 0.9375rem;
  font-size: 0.625rem;
  line-height: 1.4;
  opacity: 0.5;
}

.ft_cont {
  display: flex;
  gap: 1.25rem;
  margin-top: 2.0625rem;
}

.ft_cont_item {
  display: flex;
  flex-direction: column;
  width: 12.9375rem;
  font-size: 0.875rem;
  line-height: 1.4;
}

.ft_cont_item a:hover {
  color: var(--red);
}

.ft_cont_title {
  margin-bottom: 0.625rem;
  font-size: 0.75rem;
  line-height: 1;
  opacity: 0.5;
}

.ft_cont_item a + a {
  margin-top: 0.3125rem;
}

.ft_menu {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}

.ft_menu a {
  font-size: 0.875rem;
  line-height: 1.4;
}

.ft_menu a:hover {
  color: var(--red);
}

.ft_menu_title {
  margin-bottom: 0.3125rem;
  font-size: 1rem;
  line-height: 1.4;
  font-weight: 300;
  opacity: 0.5;
}

.ft_menu_title--sub {
  margin-top: 0.625rem;
}

.ft_bottom {
  margin-top: 2.0625rem;
  padding-top: 0.9375rem;
  border-top: 1px solid #d9d9d9;
}

.ft_bottom_link {
  justify-self: start;
  font-size: 0.75rem;
  line-height: 1;
  opacity: 0.5;
}

.ft_bottom_link:hover {
  opacity: 1;
}

.ft_bottom_link--line {
  text-decoration: underline;
}

.ft_dev {
  justify-self: end;
}

.ft_bg {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}

.ft_bg img {
  width: 100%;
}

.cookie {
  position: fixed;
  left: 50%;
  bottom: 3.125rem;
  z-index: 60;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  width: 83.75rem;
  height: 3.75rem;
  margin-left: -41.875rem;
  padding: 0 0.625rem 0 1.5625rem;
  border-radius: 1.25rem;
  background: var(--red);
  color: #fff;
  opacity: 0;
  visibility: hidden;
  transform: translateY(1.875rem);
  pointer-events: none;
  transition: opacity 0.3s, transform 0.3s, visibility 0s 0.3s;
}

.cookie.show {
  opacity: 1;
  visibility: visible;
  transform: none;
  pointer-events: auto;
  transition: opacity 0.3s, transform 0.3s;
}

.cookie_text {
  font-size: 0.875rem;
  line-height: 1.4;
}

.glow {
  position: absolute;
  left: 0;
  right: 0;
  pointer-events: none;
}

.glow span {
  display: block;
}

.glow--b2 {
  top: 0;
}

.glow--b2 span:nth-child(1) {
  height: 23.625rem;
  background: linear-gradient(12.5deg, rgba(223, 37, 38, 0.2) 0%, rgba(223, 37, 38, 0) 28.7%);
}

.glow--b2 span:nth-child(2) {
  height: 17rem;
  background: linear-gradient(167.5deg, rgba(223, 37, 38, 0.2) 0%, rgba(223, 37, 38, 0) 41.3%);
}

.glow--b4 {
  top: 7.0625rem;
}

.glow--b4 span:nth-child(1) {
  height: 62.875rem;
  background: linear-gradient(318.4deg, rgba(223, 37, 38, 0.3) 0%, rgba(223, 37, 38, 0) 41%);
}

.glow--b4 span:nth-child(2) {
  height: 27.75rem;
  background: linear-gradient(192.5deg, rgba(223, 37, 38, 0.3) 0%, rgba(223, 37, 38, 0) 30.5%);
}

.glow--b5 {
  top: 31.9375rem;
}

.glow--b5 span:nth-child(1) {
  height: 27.75rem;
  background: linear-gradient(12.5deg, rgba(223, 37, 38, 0.3) 0%, rgba(223, 37, 38, 0) 30.5%);
}

.glow--b5 span:nth-child(2) {
  height: 62.875rem;
  background: linear-gradient(138.4deg, rgba(223, 37, 38, 0.3) 0%, rgba(223, 37, 38, 0) 41%);
}

.glow--b9 span:nth-child(1),
.glow--feat span:nth-child(1) {
  height: 63rem;
  background: linear-gradient(319.3deg, rgba(223, 37, 38, 0.3) 0%, rgba(223, 37, 38, 0) 41.2%);
}

.glow--b9 span:nth-child(2),
.glow--feat span:nth-child(2) {
  height: 27.625rem;
  background: linear-gradient(192.7deg, rgba(223, 37, 38, 0.3) 0%, rgba(223, 37, 38, 0) 30.3%);
}

.glow--b9 {
  top: 8.75rem;
}

.glow--feat {
  top: -18.125rem;
}

/*--------- SPLIDE (базовые стили из splide-core) -----------*/

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}

.splide__track {
  position: relative;
  z-index: 0;
  overflow: hidden;
}

.splide__track--draggable {
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  -webkit-touch-callout: none;
}

.splide__list {
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  backface-visibility: hidden;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__slide {
  position: relative;
  flex-shrink: 0;
  margin: 0;
  list-style-type: none !important;
  backface-visibility: hidden;
}

.splide__sr {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0 0 0 0);
  border: 0;
}

/*--------- HOME -----------*/

.b1 {
  position: relative;
  height: 50rem;
  overflow: clip;
  padding-top: 11.875rem;
}

.b1_bg {
  position: absolute;
  inset: -6.25rem 0;
  will-change: transform;
}

.b1_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.b1_box {
  position: relative;
  display: flex;
  align-items: center;
  gap: 4.1875rem;
}

.b1_lf {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.875rem;
}

.b1_top {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.b1_text {
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: 500;
}

.b1_list {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

.b1_item {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
  height: 2.5rem;
  font-size: 1rem;
  line-height: 1.25;
}

.b1_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  background: rgba(0, 0, 0, 0.15);
}

.b1_icon img {
  width: 1.5rem;
}

.b1_img {
  flex-shrink: 0;
  will-change: transform;
  width: 30rem;
  border-radius: 0.625rem;
  overflow: hidden;
}

.b2 {
  position: relative;
  padding-top: 9.375rem;
}

.b2_row {
  position: relative;
}

.b2_row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
}

.b2_item {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 15.625rem;
  padding: 2.1875rem;
  border-radius: 2.1875rem;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(1.5625rem);
  -webkit-backdrop-filter: blur(1.5625rem);
}

.b2_item::after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: inherit;
  background: conic-gradient(rgba(255, 255, 255, 0.28) 0deg, rgba(255, 255, 255, 0.28) 30deg, rgba(255, 255, 255, 0.04) 45deg, rgba(255, 255, 255, 0.11) 60deg, rgba(255, 255, 255, 0.12) 120deg, rgba(255, 255, 255, 0.3) 135deg, rgba(255, 255, 255, 0.12) 150deg, rgba(255, 255, 255, 0.11) 210deg, rgba(255, 255, 255, 0.07) 225deg, rgba(255, 255, 255, 0.29) 240deg, rgba(255, 255, 255, 0.3) 300deg, rgba(255, 255, 255, 0.42) 315deg, rgba(255, 255, 255, 0.29) 330deg, rgba(255, 255, 255, 0.28) 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  pointer-events: none;
}

.b2_num {
  font-size: 3.75rem;
  line-height: 1;
  font-weight: 200;
  letter-spacing: -0.15rem;
}

.b2_text {
  font-size: 1rem;
  line-height: 1.4;
}

.b3 {
  position: relative;
  padding-top: 15.625rem;
  overflow-x: clip;
}

.b3::after {
  content: "";
  display: block;
  height: 300vh;
}

.b3_sticky {
  position: sticky;
  top: var(--b3-top, 7.5rem);
}

.b3_lines {
  position: absolute;
  left: 0;
  top: -23.125rem;
  width: 72.375rem;
  pointer-events: none;
}

.b3_box {
  position: relative;
}

.b3_tabs {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 1rem;
  margin-top: 2.25rem;
}

.b3_tab {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  font-size: 1rem;
  line-height: 1;
  font-weight: 600;
  text-align: left;
  transition: color 0.3s;
}

.b3_tab:hover,
.b3_tab.active {
  color: var(--red);
}

.b3_tab_line {
  position: relative;
  height: 1px;
  background: #fff;
  overflow: hidden;
}

.b3_tab_line::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: var(--progress, 0%);
  background: var(--red);
}

.b3_slides {
  display: grid;
  margin-top: -1px;
}

.b3_slide {
  grid-area: 1/1;
  display: flex;
  gap: 8.3125rem;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
}

.b3_slide.active {
  opacity: 1;
  visibility: visible;
}

.b3_img {
  position: relative;
  flex-shrink: 0;
  width: 27.125rem;
  height: 27.125rem;
}

.b3_img img {
  position: absolute;
  left: -7.1875rem;
  top: -7.1875rem;
  max-width: none;
  width: 41.5rem;
}

.b3_info {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  width: 28.5rem;
  padding-top: 6.8125rem;
}

.b3_num {
  font-size: 1.875rem;
  line-height: 1;
  font-weight: 600;
}

.b3_title {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.b4 {
  position: relative;
  padding-top: 7.0625rem;
}

.b4_decor {
  position: absolute;
  left: 0;
  right: 0;
  top: 58.4375rem;
  pointer-events: none;
}

.b4_decor img {
  width: 100%;
}

.b4_box {
  position: relative;
}

.b4_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-top: 2.1875rem;
}

.b4_item {
  height: 18.75rem;
  padding: 2.25rem 2.125rem 2.25rem 2.25rem;
}

.b4_item .card_title {
  margin-top: 2.1875rem;
}

.b4_item .card_text {
  margin-top: 0.9375rem;
}

.b5 {
  position: relative;
  padding: 15.625rem 0 15.625rem;
}

.b5_bracket {
  position: absolute;
  top: 25.9375rem;
  width: 5.875rem;
  pointer-events: none;
}

.b5_bracket--l {
  left: 3.125rem;
}

.b5_bracket--r {
  right: 3.125rem;
}

.b5_box {
  position: relative;
}

.b5_row {
  display: flex;
  justify-content: space-between;
  margin-top: 6.8125rem;
}

.b5_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 20rem;
  text-align: center;
}

.b5_item .bt {
  margin-top: 1.875rem;
}

.b5_top {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
}

.b5_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.8125rem;
  height: 2.8125rem;
}

.b5_icon img {
  width: auto;
  height: 2.4375rem;
}

.b5_title {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.b5_text {
  margin-top: 1.25rem;
  font-size: 1rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.5);
}

.b6 {
  position: relative;
  padding: 9.375rem 0 6.25rem;
  background: #fff;
  border-radius: 3.125rem 3.125rem 0 0;
  color: #000;
}

.b6_bg {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 51.875rem;
  border-radius: inherit;
  overflow: hidden;
}

.b6_bg video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.b6_bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(#fff, #d3d3d3);
  mix-blend-mode: overlay;
  opacity: 0.6;
}

.b6_box {
  position: relative;
}

.b6_row {
  display: flex;
  align-items: center;
  gap: 3.125rem;
  width: 63.5625rem;
  margin: 3.125rem auto 0;
}

.b6_card {
  position: relative;
  flex-shrink: 0;
  width: 20rem;
  height: 20rem;
  padding: 2.1875rem;
  border-radius: 1.875rem;
  background: #fff;
  color: #000;
  overflow: hidden;
}

.b6_card_title {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.b6_card_img {
  position: absolute;
  left: -2.875rem;
  top: 6.625rem;
  width: 27.875rem;
}

.b6_card_img img {
  max-width: none;
  width: 100%;
}

.b6_info {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.875rem;
}

.b6_text {
  font-size: 1rem;
  line-height: 1.4;
}

.b6_text p + p {
  margin-top: 1.375rem;
}

.b6_marquee {
  position: relative;
  margin-top: 2.75rem;
  overflow: hidden;
}

.b6_track {
  display: flex;
  width: -moz-max-content;
  width: max-content;
  will-change: transform;
}

.b6_list {
  display: flex;
  gap: 5rem;
  padding-right: 5rem;
}

.b6_logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 8.1875rem;
  height: 6.25rem;
}

.b6_logo img {
  width: auto;
}

.b6_logo:nth-child(1) img {
  height: 2.75rem;
}

.b6_logo:nth-child(2) img {
  height: 4.375rem;
}

.b6_logo:nth-child(3) img {
  height: 1.23125rem;
}

.b6_logo:nth-child(4) img {
  height: 2.375rem;
}

.b6_logo:nth-child(5) img {
  height: 1.975rem;
}

.b6_logo:nth-child(6) img {
  height: 1.375rem;
}

.b6_logo:nth-child(7) img {
  height: 1.3125rem;
}

@keyframes marquee {
  to {
    transform: translateX(-50%);
  }
}

.b7 {
  padding: 9.375rem 0 12.5rem;
}

.b7_box {
  position: relative;
}

.b7_list {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-top: 2.1875rem;
}

.b7_list .b7_bar + .b7_bar {
  margin-top: -0.625rem;
}

.b7_item {
  padding: 2.0625rem;
}

.b7_item .card_text {
  margin-top: 1.3125rem;
  color: #000;
}

.b7_top {
  display: flex;
  align-items: center;
  gap: 1.1875rem;
}

.b7_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.8125rem;
  height: 2.8125rem;
}

.b7_icon img {
  width: 1.5rem;
}

.b7_row {
  display: flex;
}

.b7_lf {
  width: 33.1875rem;
}

.b7_types {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.b7_types li {
  position: relative;
  padding-left: 1.375rem;
}

.b7_types li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.46875rem;
  width: 0.4375rem;
  height: 0.4375rem;
  background: var(--red);
}

.b7_types .card_text {
  margin-top: 0.3125rem;
  margin-left: -1.375rem;
  color: rgba(0, 0, 0, 0.5);
}

.b7_type {
  font-size: 1rem;
  line-height: 1.4;
}

.b7_item .b7_row + .b7_note {
  margin: 1.4375rem -1.1875rem -1.125rem;
}

.b7_note {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
  height: 4.375rem;
  padding: 0 1.25rem;
  border-radius: 1.25rem;
  background: rgba(0, 0, 0, 0.05);
  font-size: 1rem;
  line-height: 1.4;
}

.b7_note img {
  width: 1.09375rem;
}

.b7_bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  min-height: 4.375rem;
  padding: 0.625rem 0.625rem 0.625rem 1.125rem;
  border-radius: 1.25rem;
  background: #fff;
  font-size: 1rem;
  line-height: 1.4;
}

.b7_bar--dark {
  background: #000;
  color: #fff;
}

.b8 {
  position: relative;
  z-index: 3;
  margin-top: -3.125rem;
  padding: 3.125rem 0 9.375rem;
  border-radius: 3.125rem 3.125rem 0 0;
  background: #fff;
  color: #000;
}

.b8_img {
  width: 41.25rem;
  margin: 0 auto;
  mix-blend-mode: multiply;
}

.b8_box {
  position: relative;
  margin-top: -7.5rem;
}

.b8_box .bts {
  margin-top: 1.875rem;
}

.b9 {
  position: relative;
  z-index: 4;
  margin-top: -3.125rem;
  padding: 9.375rem 0 19.0625rem;
  border-radius: 3.125rem 3.125rem 0 0;
  background: #000;
  overflow: hidden;
}

.b9_lines {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  pointer-events: none;
}

.b9_lines img {
  width: 100%;
}

.b9_box {
  position: relative;
}

.b9_logos {
  position: relative;
  margin-top: 3.125rem;
}

.b9_logos .loop_prev,
.b9_logos .loop_next {
  position: absolute;
  top: 6.875rem;
  z-index: 2;
}

.b9_logos .loop_prev {
  left: -5rem;
}

.b9_logos .loop_next {
  right: -5rem;
}

.b9_logos .b9_logos_clip {
  overflow: visible;
}

.b9_logos_row {
  display: flex;
}

.b9_logo {
  position: relative;
  flex-shrink: 0;
  width: 16.5rem;
  height: 15.625rem;
  border-radius: 2.1875rem;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(1.5625rem);
  -webkit-backdrop-filter: blur(1.5625rem);
}

.b9_logo::after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: inherit;
  background: conic-gradient(rgba(255, 255, 255, 0.28) 0deg, rgba(255, 255, 255, 0.28) 30deg, rgba(255, 255, 255, 0.04) 45deg, rgba(255, 255, 255, 0.11) 60deg, rgba(255, 255, 255, 0.12) 120deg, rgba(255, 255, 255, 0.3) 135deg, rgba(255, 255, 255, 0.12) 150deg, rgba(255, 255, 255, 0.11) 210deg, rgba(255, 255, 255, 0.07) 225deg, rgba(255, 255, 255, 0.29) 240deg, rgba(255, 255, 255, 0.3) 300deg, rgba(255, 255, 255, 0.42) 315deg, rgba(255, 255, 255, 0.29) 330deg, rgba(255, 255, 255, 0.28) 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  pointer-events: none;
}

.b9_logo img {
  position: absolute;
  left: 50%;
  top: 50%;
  max-width: none;
  width: auto;
  height: 20.125rem;
  transform: translate(-50%, -50%);
}

.b9_logo img[src*=logo_2] {
  height: 19.1875rem;
}

.b9_logo img[src*=logo_3] {
  height: 18rem;
}

.b9_logo img[src*=logo_4] {
  height: 17.8125rem;
}

.b9_title {
  margin-top: 15.625rem;
  text-align: center;
}

.b9_reviews {
  position: relative;
  height: 26.25rem;
  margin-top: 3.125rem;
}

.b9_review {
  position: absolute;
  top: 0.9375rem;
  left: 50%;
  width: 27.125rem;
  height: 24.375rem;
  margin-left: -13.5625rem;
  padding: 0.875rem;
  border-radius: 2.1875rem;
  background: rgba(0, 0, 0, 0.1);
  backdrop-filter: blur(1.5625rem);
  -webkit-backdrop-filter: blur(1.5625rem);
  opacity: 0.5;
  filter: blur(0.625rem);
  transition: all 0.5s;
}

.b9_review::after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: inherit;
  background: conic-gradient(rgba(255, 255, 255, 0.28) 0deg, rgba(255, 255, 255, 0.28) 30deg, rgba(255, 255, 255, 0.04) 45deg, rgba(255, 255, 255, 0.11) 60deg, rgba(255, 255, 255, 0.12) 120deg, rgba(255, 255, 255, 0.3) 135deg, rgba(255, 255, 255, 0.12) 150deg, rgba(255, 255, 255, 0.11) 210deg, rgba(255, 255, 255, 0.07) 225deg, rgba(255, 255, 255, 0.29) 240deg, rgba(255, 255, 255, 0.3) 300deg, rgba(255, 255, 255, 0.42) 315deg, rgba(255, 255, 255, 0.29) 330deg, rgba(255, 255, 255, 0.28) 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
          mask: linear-gradient(#000 0 0) content-box exclude, linear-gradient(#000 0 0);
  pointer-events: none;
}

.b9_review[data-pos=prev] {
  transform: translateX(-21.25rem);
}

.b9_review[data-pos=next] {
  transform: translateX(21.25rem);
}

.b9_review[data-pos=active] {
  z-index: 2;
  top: 0;
  height: 26.25rem;
  opacity: 1;
  filter: none;
}

.b9_review_top {
  display: flex;
  align-items: center;
  gap: 0.9375rem;
  height: 5.9375rem;
  padding: 0.8125rem;
  border-radius: 1.5625rem;
  background: rgba(255, 255, 255, 0.05);
}

.b9_review_top img {
  width: 4.3125rem;
  height: 4.3125rem;
  border-radius: 50%;
  -o-object-fit: cover;
     object-fit: cover;
}

.b9_review_info {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
}

.b9_review_name {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.b9_review_role {
  font-size: 0.75rem;
  line-height: 1.4;
  opacity: 0.5;
}

.b9_review_company {
  font-size: 0.625rem;
  line-height: 1.4;
  opacity: 0.5;
}

.b9_review_text {
  margin: 1.5625rem 1.25rem 0;
  font-size: 0.875rem;
  line-height: 1.4;
  color: rgba(255, 255, 255, 0.5);
}

.b9_prev,
.b9_next {
  position: absolute;
  top: 12.1875rem;
  z-index: 3;
}

.b9_prev {
  left: 19.6875rem;
}

.b9_next {
  right: 19.6875rem;
}

.b10 {
  z-index: 5;
  padding: 9.375rem 0 12.5rem;
  overflow: hidden;
}

.b10_word {
  position: absolute;
  left: -43.5rem;
  top: 34.75rem;
  font-family: "Cal Sans", var(--font);
  font-size: 17.5rem;
  line-height: 1;
  white-space: nowrap;
  color: rgba(0, 0, 0, 0.05);
  pointer-events: none;
}

.b10_box {
  position: relative;
}

.b10_row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-top: 3.125rem;
}

.b10_item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 18.75rem;
  padding: 2.125rem 2rem 1.8125rem 2.125rem;
}

.b10_top .card_title {
  margin-top: 1.5625rem;
}

.b10_top .card_text {
  margin-top: 0.9375rem;
}

.ft_wrap {
  z-index: 6;
}

.b11 {
  padding-top: 9.375rem;
}

.b11_slider {
  position: relative;
  margin-top: 3.125rem;
}

.b11_slider .b11_prev,
.b11_slider .b11_next {
  position: absolute;
  top: 14.0625rem;
  z-index: 2;
}

.b11_slider .b11_prev {
  left: -5rem;
}

.b11_slider .b11_next {
  right: -5rem;
}

.b11_item {
  flex-shrink: 0;
  width: 22.375rem;
  height: 30rem;
  padding: 0.875rem;
}

.b11_item .arrow {
  position: absolute;
  left: 2.1875rem;
  bottom: 1.875rem;
}

.b11_img {
  height: 12.5rem;
  border-radius: 1.5625rem;
  overflow: hidden;
}

.b11_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.b11_info {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  padding: 1.25rem 1.25rem 0;
}

.b11_info .card_title {
  font-size: 1.25rem;
}

.b12 {
  padding: 9.375rem 0;
}

.b12_box {
  position: relative;
  height: 41.25rem;
  padding-top: 9.0625rem;
  border-radius: 3.125rem;
  overflow: hidden;
  color: #fff;
}

.b12_bg {
  position: absolute;
  inset: -5rem 0;
  will-change: transform;
}

.b12_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.b12_content {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5625rem;
  width: 57.875rem;
  margin: 0 auto;
  text-align: center;
}

.b12_content .head_text {
  color: #fff;
}

.b12_content .bts {
  margin-top: 0.3125rem;
}

.b12_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 4.375rem;
  height: 4.375rem;
  border-radius: 0.9375rem;
  background: var(--red);
}

.b12_icon img {
  width: auto;
  height: 2.75rem;
}

/*--------- FEATURES -----------*/

.feat_b1 {
  position: relative;
  height: 41.5rem;
  padding-top: 12.125rem;
  overflow: clip;
  color: #fff;
}

.feat_b1_bg {
  position: absolute;
  inset: 0;
  will-change: transform;
}

.feat_b1_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.feat_b1_box {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.feat_b1_lf {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin: 1.625rem 0 0 -0.1875rem;
}

.feat_b1_text {
  width: 39.125rem;
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: 500;
  text-wrap: pretty;
}

.feat_b2,
.feat_b4,
.feat_b5 {
  padding: 9.375rem 0;
}

.feat_b2 {
  z-index: 2;
}

.feat_b3 {
  position: relative;
  z-index: 3;
  margin-top: -3.125rem;
  padding: 9.375rem 0;
  border-radius: 3.125rem 3.125rem 0 0;
  background: #000;
  color: #fff;
  overflow: hidden;
}

.feat_b3_box {
  position: relative;
}

.feat_b4 {
  z-index: 4;
}

.feat_b5 {
  z-index: 5;
  padding: 0;
}

.feat_b5_top {
  padding: 9.375rem 0 0;
}

.feat_row {
  display: grid;
  gap: 1.25rem;
  margin-top: 1.25rem;
}

.feat_row--2 {
  grid-template-columns: repeat(2, 1fr);
}

.feat_row--3 {
  grid-template-columns: repeat(3, 1fr);
}

.h3 + .feat_row {
  margin-top: 3.125rem;
}

.feat_item {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  padding: 2.25rem;
}

.feat_item.card_light {
  padding: 2.1875rem;
}

.feat_item .card_title {
  line-height: 1.625rem;
}

.feat_item .card_text {
  line-height: 1.375rem;
}

.feat_item .icon_box {
  margin-bottom: 0.625rem;
}

.feat_item .icon_box img {
  width: 1.5rem;
  height: 1.5rem;
}

.feat_cta {
  padding: 9.375rem 0;
}

.feat_cta_box {
  position: relative;
  height: 35.625rem;
  padding-top: 6.25rem;
  border-radius: 3.125rem;
  overflow: hidden;
  color: #fff;
}

.feat_cta_bg {
  position: absolute;
  inset: -5rem 0;
  will-change: transform;
}

.feat_cta_bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.feat_cta_content {
  position: relative;
}

.feat_cta_head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5625rem;
  width: 40.875rem;
  margin: 0 auto;
  text-align: center;
}

.feat_cta_head .h2 {
  font-size: 3.75rem;
}

.feat_cta_head .head_text {
  color: #fff;
}

.feat_os_row {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1.25rem;
  width: 69.625rem;
  margin: 2.1875rem auto 0;
}

.feat_os {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 12.5rem;
  padding: 2.25rem 2.25rem 1.9375rem;
}

.feat_os_top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.6875rem;
}

.feat_os_top img {
  width: auto;
  height: 1.625rem;
}

.feat_os_name {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

/*--------- DOWNLOAD -----------*/

.dl_b1 {
  height: 40.6875rem;
  padding-top: 11.3125rem;
}

.dl_b1 .feat_b1_bg {
  bottom: auto;
  height: 42.8125rem;
}

.dl_b1 .feat_b1_lf {
  margin-top: 2.4375rem;
}

.dl_app {
  display: flex;
  align-items: flex-start;
  flex-shrink: 0;
  width: 20rem;
  height: 20rem;
  padding: 3.125rem 0 0 1.6875rem;
  border-radius: 3.125rem;
  background: var(--red);
}

.dl_app img {
  width: 16.8125rem;
  height: auto;
}

.dl_b2 {
  position: relative;
  padding: 9.375rem 0 3.125rem;
}

.dl_row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-top: 3.125rem;
}

.dl_item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 12.5rem;
  padding: 2.1875rem 5.0625rem 2.1875rem 2.1875rem;
}

.dl_item .card_title {
  line-height: 1.625rem;
}

.dl_note {
  margin-top: 1.25rem;
  padding: 0.8125rem 1.25rem;
  border-radius: 1.25rem;
  background: #000;
  color: #fff;
  font-size: 1rem;
  line-height: 1.375rem;
}

.dl_b2_word {
  pointer-events: none;
}

.dl_b2_word img {
  display: block;
  width: 100%;
}

.dl_b3 {
  z-index: 3;
}

.dl_b3_top {
  position: relative;
  padding: 9.375rem 0 0;
}

.dl_b3_img {
  position: absolute;
  left: 50%;
  top: 4.375rem;
  width: 41.25rem;
  margin-left: 0.625rem;
  mix-blend-mode: multiply;
  pointer-events: none;
}

.dl_b3_img video {
  display: block;
  width: 100%;
  height: auto;
}

.dl_b3_box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5625rem;
}

.dl_b3_box .bt {
  margin-top: 0.3125rem;
}

.dl_b3_text {
  width: 31.3125rem;
  font-size: 1.125rem;
  line-height: 1.4;
}

.dl_b3_text p + p {
  margin-top: 1.5625rem;
}

.feat_cta_box--dl {
  height: 41.875rem;
}

.feat_os_row--3 {
  grid-template-columns: repeat(3, 1fr);
}

.dl_os {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  height: 18.75rem;
  padding: 2.25rem 5.875rem 1.9375rem 2.25rem;
}

.dl_os_top {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5625rem;
}

.dl_os_top > img {
  width: auto;
  height: 1.625rem;
}

.dl_os_info {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
}

.dl_os .card_title {
  display: block;
  font-size: 1.375rem;
}

.dl_os .card_text {
  display: block;
  color: rgba(255, 255, 255, 0.5);
  white-space: nowrap;
}

/*--------- LICENSES -----------*/

body.lic_page,
.page_light {
  background: var(--light);
}

.breadcrumbs--dark {
  color: rgba(0, 0, 0, 0.5);
}

.breadcrumbs--dark a:hover {
  color: #000;
}

.pg_title {
  margin-top: 1.25rem;
}

.lic_b1 {
  padding: 13.75rem 0 9.375rem;
  color: #000;
}

.lic_b1 .breadcrumbs {
  color: rgba(0, 0, 0, 0.5);
}

.lic_b1 .breadcrumbs a:hover {
  color: #000;
}

.lic_b1 .h1 {
  margin-top: 1.25rem;
}

.lic_b1 .h3 {
  margin-top: 3.125rem;
}

.lic_b1_text {
  margin-top: 1.25rem;
  font-size: 1.125rem;
  line-height: 1.4;
  font-weight: 500;
}

.lic_which {
  margin-top: 3.125rem;
  padding: 0 2.1875rem 1px;
  border-radius: 2.1875rem;
  background: #fff;
}

.lic_which_head,
.lic_which_row {
  display: grid;
  grid-template-columns: 33.25rem 14.1875rem 1fr;
}

.lic_which_head {
  padding: 2.1875rem 0 1.25rem;
  font-size: 0.75rem;
  line-height: 1;
  color: rgba(0, 0, 0, 0.5);
}

.lic_which_row {
  padding: 1.5rem 0 1.5rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  font-size: 1rem;
  line-height: 1.375rem;
}

.lic_which_row:last-child {
  padding-bottom: 2.125rem;
}

.lic_which_name {
  display: flex;
  align-items: flex-start;
  gap: 1.5625rem;
}

.lic_which_name .icon_box img {
  width: 1.5rem;
  height: 1.5rem;
}

.lic_which_title {
  padding-top: 0.4375rem;
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.lic_which_who {
  padding: 0 1.25rem 0 0;
}

.lic_which_who,
.lic_which_feat {
  padding-top: 0;
}

.lic_b2 {
  z-index: 3;
  padding: 9.375rem 0 0;
  color: #000;
}

.lic_main {
  padding-bottom: 9.375rem;
}

.lic_tabs {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4.8125rem;
}

.lic_tabs_title {
  flex-shrink: 0;
  white-space: nowrap;
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.lic_tabs_row {
  display: flex;
  gap: 0.625rem;
}

.lic_tab {
  width: auto;
  height: 3.125rem;
  padding-top: 0;
  padding-bottom: 0;
}

.lic_tab.active {
  border-color: var(--red);
  background: var(--red);
  color: #fff;
}

.lic_panel[hidden] {
  display: none;
}

.lic_block {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 3.125rem;
  padding-bottom: 3.125rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.lic_block--upd {
  margin-top: 3.125rem;
  padding-bottom: 0;
  border-bottom: 0;
}

.lic_lf {
  display: flex;
  flex-direction: column;
  gap: 2.1875rem;
  width: 30.5rem;
  flex-shrink: 0;
}

.lic_red {
  color: var(--red);
}

.lic_shops {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  width: 34.1875rem;
}

.lic_shop {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5625rem;
  height: 11.875rem;
  padding: 2.1875rem;
}

.lic_shop_info {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
}

.lic_shop_info .card_title,
.lic_shop_info .card_text {
  display: block;
}

.lic_table {
  width: 34.1875rem;
  flex-shrink: 0;
  margin-top: 0.6875rem;
  border-collapse: collapse;
  font-size: 1rem;
  line-height: 1.375rem;
  text-align: left;
}

.lic_table th {
  font-size: 0.75rem;
  line-height: 1;
  font-weight: 400;
  color: rgba(0, 0, 0, 0.5);
  vertical-align: top;
}

.lic_table thead tr:first-child th {
  padding-bottom: 1.25rem;
}

.lic_table .lic_sub th {
  padding: 0.9375rem 0 0.9375rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  font-weight: 600;
  line-height: 1.0625rem;
  color: #000;
}

.lic_table tbody td {
  padding: 0.875rem 0 0.9375rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.lic_table tbody tr:last-child td {
  padding-bottom: 0;
}

.lic_table--3 th:nth-child(1),
.lic_table--3 td:nth-child(1) {
  width: 14.1875rem;
}

.lic_table--3 .lic_sub th:nth-child(2),
.lic_table--3 td:nth-child(2) {
  width: 7.0625rem;
}

.lic_table--3 .lic_sub th:nth-child(3),
.lic_table--3 td:nth-child(3) {
  width: 7.125rem;
}

.lic_table--1 th:nth-child(1),
.lic_table--1 td:nth-child(1) {
  width: 14.1875rem;
}

.lic_table--1 thead tr th {
  border: 0;
}

.lic_table--1 thead tr:first-child th,
.lic_table--3 thead tr:first-child th {
  border: 0;
}

.lic_upd_text {
  font-size: 1.125rem;
  line-height: 1.5625rem;
}

.lic_upd_text p + p {
  margin-top: 1.5625rem;
}

.lic_note {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  height: 4.375rem;
  margin-top: 2.1875rem;
  padding: 0 1.25rem;
  border-radius: 1.25rem;
  background: #fff;
  font-size: 1rem;
  line-height: 1.375rem;
}

.lic_note_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.5rem;
  height: 1.5rem;
}

.lic_note_icon img {
  width: 1.125rem;
  height: 1.125rem;
}

.lic_sec {
  display: flex;
  flex-direction: column;
  gap: 2.1875rem;
  margin-top: 6.25rem;
}

.lic_sec .list {
  gap: 0.3125rem;
}

.lic_legal {
  margin-top: 0;
}

.lic_buy {
  display: flex;
  flex-direction: column;
  gap: 2.1875rem;
  margin-top: 3.125rem;
  padding-top: 3.125rem;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.lic_buy_row {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}

.lic_buy_item {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  height: 12.5rem;
  padding: 2.1875rem;
}

.lic_buy_item .icon_box {
  margin-bottom: 0.625rem;
}

.lic_buy_item .icon_box img {
  width: 1.5rem;
  height: 1.5rem;
}

.lic_buy_item .card_title {
  line-height: 1.625rem;
}

.lic_link {
  text-decoration: underline;
  text-decoration-thickness: 5%;
}

.lic_link:hover {
  color: #000;
}

.lic_refund_text {
  font-size: 1.125rem;
  line-height: 1.5625rem;
}

.lic_refund_text p + p {
  margin-top: 0;
}

.lic_b2[data-tab=phys] .lic_legal,
.lic_b2[data-tab=phys] .lic_buy {
  display: none;
}

/*--------- CONTACTS -----------*/

.ct_b1 {
  padding: 13.75rem 0 9.375rem;
  color: #000;
}

.ct_row {
  display: grid;
  grid-template-columns: 35.4375rem 34.1875rem;
  padding: 3.125rem 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.ct_row:first-of-type {
  padding-top: 3.125rem;
}

.ct_row--last {
  padding-bottom: 0;
  border-bottom: 0;
}

.ct_lf {
  display: flex;
  flex-direction: column;
  gap: 2.1875rem;
}

.ct_links {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
  font-size: 1rem;
  line-height: 1.375rem;
}

.ct_links a:hover {
  color: var(--red);
}

.ct_rg {
  padding-top: 0.4375rem;
  font-size: 1rem;
  line-height: 1.375rem;
}

.ct_write {
  margin-top: 2.1875rem;
}

.ct_write_title {
  margin-bottom: 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5rem;
  font-weight: 300;
}

.ct_req {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
  font-size: 1rem;
  line-height: 1.375rem;
}

.ct_cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
}

.ct_card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 1.5625rem;
  height: 13.125rem;
  padding: 2.1875rem 2.1875rem 1.875rem;
}

.ct_card_info {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
}

.ct_card_info .card_title,
.ct_card_info .card_text {
  display: block;
}

/*--------- 404 -----------*/

.err_b1 {
  position: relative;
  padding: 19.6875rem 0 16.5625rem;
  overflow: hidden;
  color: #000;
}

.err_word {
  position: absolute;
  left: -6.4375rem;
  top: 3.125rem;
  font-family: "Cal Sans", var(--font);
  font-size: 22.625rem;
  line-height: 1;
  white-space: nowrap;
  background: linear-gradient(rgba(0, 0, 0, 0.06) 20%, rgba(0, 0, 0, 0) 85%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  pointer-events: none;
}

.err_box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}

.err_box .bt {
  margin-top: 0.625rem;
}

.err_text {
  font-size: 1.125rem;
  line-height: 1.5625rem;
  font-weight: 500;
}

/*--------- ABOUT -----------*/

.ab_b1 {
  height: 46.0625rem;
}

.ab_b1 .feat_b1_bg {
  bottom: auto;
  height: 46.875rem;
}

.ab_b1_text p + p {
  margin-top: 1.5625rem;
}

.ab_b1_text {
  width: auto;
}

.ab_b1_logo {
  flex-shrink: 0;
  width: 24.375rem;
  margin-top: 0.625rem;
}

.ab_b1_logo img {
  display: block;
  width: 100%;
  height: auto;
}

.ab_b2 {
  position: relative;
  padding: 9.375rem 0 3.125rem;
}

.ab_row {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.25rem;
  margin-top: 3.125rem;
}

.ab_row .feat_item {
  height: 14rem;
}

.icon_box img.ab_ico {
  width: auto;
  height: auto;
}

.ab_b3 {
  z-index: 3;
  padding: 9.375rem 0 12.5rem;
}

.ab_products {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  margin-top: 3.125rem;
}

.ab_product {
  display: flex;
  flex-direction: column;
  gap: 1.5625rem;
  height: 15.5625rem;
  padding: 2.1875rem;
  border-radius: 1.875rem;
  background: #fff;
  color: inherit;
  text-decoration: none;
  transition: box-shadow 0.3s, transform 0.3s;
}

.ab_product .card_title {
  transition: color 0.3s;
}

.ab_product:hover {
  box-shadow: 0 1.25rem 3.125rem rgba(0, 0, 0, 0.08);
  transform: translateY(-0.25rem);
}

.ab_product:hover .card_title {
  color: var(--red);
}

.ab_product_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 4.375rem;
  height: 4.375rem;
  border-radius: 0.9375rem;
  background: var(--red);
}

.ab_product_icon img {
  width: auto;
  height: 2.25rem;
}

.ab_product_info {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  margin-top: 1.25rem;
}

.ab_product_info .card_title {
  font-size: 1.375rem;
  line-height: 1.2;
  font-weight: 300;
}

.ab_product_info .card_text {
  font-size: 1rem;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.5);
}

.ab_b4 {
  position: relative;
  z-index: 4;
  margin-top: -3.125rem;
  padding: 9.375rem 0 12.5rem;
  border-radius: 3.125rem 3.125rem 0 0;
  background: #000;
  color: #fff;
  overflow: hidden;
}

.ab_b4_box {
  position: relative;
}

.ab_b5 {
  z-index: 5;
}

.ab_b5 .feat_cta {
  padding-top: 6.25rem;
}

.ab_b5_top {
  padding: 9.375rem 0 0;
}

.ab_sec {
  display: flex;
  flex-direction: column;
  gap: 2.1875rem;
}

.ab_sec + .ab_sec {
  margin-top: 6.25rem;
}

.ab_cta {
  height: 25rem;
  padding-top: 6.25rem;
}

.ab_cta_bt {
  display: flex;
  justify-content: center;
  margin-top: 1.875rem;
}

/*--------- BLOG -----------*/

.blog_b1 {
  padding: 13.75rem 0 9.375rem;
  color: #000;
}

.blog_tabs {
  display: flex;
  gap: 0.625rem;
  margin-top: 2.1875rem;
}

.blog_tab {
  width: auto;
  padding: 0.5625rem 1.875rem;
  background: rgba(0, 0, 0, 0.05);
  color: #000;
}

.blog_tab:hover,
.blog_tab.active {
  border-color: #000;
  background: transparent;
}

.blog_grid {
  display: grid;
  grid-template-columns: repeat(3, 22.375rem);
  gap: 1.25rem;
  margin-top: 2.1875rem;
}

.pager {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.9375rem;
  margin-top: 2.1875rem;
  font-size: 1rem;
  line-height: 1.25rem;
  font-weight: 600;
}

.pager_num {
  color: rgba(0, 0, 0, 0.5);
}

.pager_num.active {
  color: #000;
}

.pager_num:is(a):hover {
  color: #000;
}

.pager_arrow {
  position: relative;
  flex-shrink: 0;
  width: 2rem;
  height: 1.25rem;
  border-radius: 6.25rem;
  background: rgba(0, 0, 0, 0.05);
  color: #000;
  transition: all 0.3s;
}

.pager_arrow::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0.6875rem;
  height: 0.5rem;
  margin: -0.25rem 0 0 -0.34375rem;
  background: currentColor;
  -webkit-mask: url(../img/icons/arrow.svg) no-repeat center/contain;
  mask: url(../img/icons/arrow.svg) no-repeat center/contain;
}

.pager_arrow--prev {
  margin-right: 0.3125rem;
}

.pager_arrow--prev::before {
  transform: rotate(180deg);
}

.pager_arrow--next {
  margin-left: 0.3125rem;
}

.pager_arrow--red,
.pager_arrow:hover {
  background: var(--red);
  color: #fff;
}

/*--------- ARTICLE -----------*/

.art_b1 {
  height: 50.75rem;
  padding-top: 17.8125rem;
}

.art_b1_box {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
  margin-left: auto;
  margin-right: auto;
}

.art_b1_box .breadcrumbs,
.art_b1_box .h1,
.art_b1_box .art_b1_text {
  margin-left: -0.1875rem;
}

.art_b1_text {
  width: auto;
}

.art_meta {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  margin: 8.75rem 0 0 -0.1875rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
}

.art_tag {
  width: auto;
  padding: 0.5625rem 1.875rem;
}

.art_b2 {
  padding-top: 9.375rem;
  color: #000;
}

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

.article h2 {
  margin-top: 6.25rem;
  font-size: 2.5rem;
  line-height: 1;
  font-weight: 300;
}

.article h3 {
  margin-top: 1.5625rem;
  font-size: 1.25rem;
  line-height: 1.5rem;
  font-weight: 300;
}

.article h2 + h3 {
  margin-top: 2.1875rem;
}

.article p {
  margin-top: 2.1875rem;
  font-size: 1.125rem;
  line-height: 1.5625rem;
}

.article h3 + p {
  margin-top: 0.625rem;
  font-size: 1rem;
  line-height: 1.375rem;
}

.article ol + p {
  margin-top: 3.25rem;
}

.article b,
.article strong {
  font-weight: 600;
}

.article a {
  text-decoration: underline;
  text-decoration-thickness: 5%;
}

.article a:hover {
  color: var(--red);
}

.article ul {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
  margin-top: 2.1875rem;
}

.article ul li {
  position: relative;
  padding-left: 1.375rem;
  font-size: 1rem;
  line-height: 1.4;
}

.article ul li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.46875rem;
  width: 0.4375rem;
  height: 0.4375rem;
  background: var(--red);
}

.article ol {
  display: flex;
  flex-direction: column;
  gap: 0.9375rem;
  margin-top: 1.5625rem;
  counter-reset: art-step;
}

.article ol li {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  min-height: 2.5rem;
  font-size: 1rem;
  line-height: 1.375rem;
  counter-increment: art-step;
}

.article ol li::before {
  content: counter(art-step, decimal-leading-zero);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  background: rgba(223, 37, 38, 0.05);
  color: var(--red);
  font-weight: 600;
}

.article img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 1.5625rem;
}

.article p:has(> img) {
  display: grid;
  grid-auto-flow: column;
  grid-auto-columns: 1fr;
  gap: 1.25rem;
  margin-top: 3.125rem;
}

.article p:has(> img) img {
  height: 18.75rem;
  -o-object-fit: cover;
     object-fit: cover;
}

.art_cta_sec {
  padding: 6.25rem 0 0;
}

.art_cta {
  height: 25rem;
  padding-top: 6.25rem;
}

.art_cta .feat_cta_head {
  width: 69.625rem;
}

.art_cta .bts {
  margin-top: 1.875rem;
}

.art_related {
  padding: 9.375rem 0;
}

.art_related_title {
  text-align: center;
}

/*--------- WINDOWS -----------*/

.win_b1 {
  height: 44.5rem;
}

.win_b1 .feat_b1_bg {
  bottom: auto;
  height: 45rem;
}

.win_b1--dl {
  height: 50.75rem;
}

.win_b1--dl .feat_b1_bg {
  height: 50.9375rem;
}

.win_b1_text {
  width: auto;
}

.win_dl_bt {
  gap: 0.5rem;
  margin-top: 0;
}

.win_dl_bt img {
  width: auto;
  height: 1rem;
}

.win_b1--dl .feat_b1_lf {
  gap: 1.25rem;
}

.win_b1--dl .feat_b1_lf .win_dl_bt {
  margin-top: 0.625rem;
}

.win_b1_img {
  flex-shrink: 0;
  width: 21.375rem;
  margin: 1.625rem 0 0;
}

.win_b1_img--up {
  margin-top: -0.5625rem;
}

.win_b1_img img {
  display: block;
  width: 100%;
  height: auto;
}

.win_b2 {
  z-index: 3;
  padding-top: 9.375rem;
  color: #000;
}

.win_sec + .win_sec {
  margin-top: 6.25rem;
}

.win_sec .list {
  margin-top: 2.1875rem;
  gap: 0.3125rem;
}

.win_sec--line {
  padding-bottom: 3.125rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.win_sec.win_sec--also {
  margin-top: 3.125rem;
}

.win_main--end {
  padding-bottom: 9.375rem;
}

.win_p {
  margin-top: 2.1875rem;
  font-size: 1.125rem;
  line-height: 1.5625rem;
}

.win_sec .list + .win_p {
  margin-top: 2.1875rem;
}

.art_link {
  text-decoration: underline;
  text-decoration-thickness: 5%;
}

.art_link:hover {
  color: var(--red);
}

.win_cta_sec {
  padding: 6.25rem 0 9.375rem;
}

.win_cta {
  height: 29.0625rem;
  padding-top: 6.25rem;
}

.win_cta_bts {
  margin-top: 1.875rem;
}

.win_cta_link {
  color: rgba(255, 255, 255, 0.5);
  text-decoration: underline;
  text-decoration-thickness: 5%;
}

.win_cta_link:hover {
  color: #fff;
}

.win_cta_note {
  margin-top: 1.875rem;
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-align: center;
}

.win_cta_note .art_link:hover {
  color: var(--red);
}

/*--------- DISTRIBUTORS -----------*/

.dist_b1 {
  padding: 13.75rem 0 6.25rem;
  color: #000;
}

.dist_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.25rem;
  margin-top: 3.125rem;
}

.dist_item {
  display: flex;
  align-items: center;
  gap: 1.375rem;
  height: 12.125rem;
  padding: 2.25rem 2.125rem;
}

.dist_logo {
  flex-shrink: 0;
  width: 10.625rem;
  height: 7.5rem;
}

.dist_logo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

.dist_info {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.625rem;
  min-width: 0;
  font-size: 0.875rem;
  line-height: 1.4;
}

.dist_name {
  font-size: 1rem;
  font-weight: 300;
  transition: color 0.3s;
}

.dist_lines {
  display: flex;
  flex-direction: column;
  gap: 0.3125rem;
  color: rgba(0, 0, 0, 0.5);
  transition: color 0.3s;
}

.dist_item:hover .dist_name {
  color: var(--red);
}

.dist_item:hover .dist_lines {
  color: #000;
}

.dist_cta {
  padding: 0 0 9.375rem;
}

.dist_cta_box {
  height: 25rem;
  padding-top: 7.1875rem;
}

/*--------- MODAL -----------*/

.modal {
  display: none;
}

.modal_fb {
  --fancybox-bg: rgba(0, 0, 0, 0.8);
}

.modal_fb .fancybox__slide {
  padding: 2.5rem 0;
}

.fancybox__content.modal {
  display: block;
  width: 27.1875rem;
  padding: 2.1875rem;
  border-radius: 2.1875rem;
  background: #fff;
  color: #000;
  cursor: default;
}

.modal_close {
  position: absolute;
  top: 0;
  right: -4.0625rem;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 0.625rem;
  background: #fff;
  transition: background 0.2s;
}

.modal_close::before,
.modal_close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 0.875rem;
  height: 0.09375rem;
  margin: -0.75px 0 0 -0.4375rem;
  background: #000;
  transform: rotate(45deg);
  transition: background 0.2s;
}

.modal_close::after {
  transform: rotate(-45deg);
}

.modal_close:hover {
  background: var(--red);
}

.modal_close:hover::before,
.modal_close:hover::after {
  background: #fff;
}

.modal_title {
  font-size: 1.875rem;
  line-height: 1;
  font-weight: 300;
}

.modal_text {
  margin-top: 1.5625rem;
  font-size: 0.875rem;
  line-height: 1.4;
}

.modal_form {
  margin-top: 1.875rem;
}

.modal_fields {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
}

.modal_bt {
  width: 100%;
  margin-top: 2.1875rem;
}

.field {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}

.field input {
  width: 100%;
  height: 3.125rem;
  padding: 0 1.25rem;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 0.9375rem;
  background: #fff;
  font: inherit;
  font-size: 0.875rem;
  font-weight: 600;
  color: #000;
  outline: none;
  transition: border-color 0.2s;
}

.field input::-moz-placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.field input::placeholder {
  color: rgba(0, 0, 0, 0.5);
}

.field input:hover,
.field input:focus {
  border-color: #000;
}

.field_error {
  display: none;
  font-size: 0.5rem;
  line-height: 1.4;
  color: var(--red);
}

.field--error input,
.field--error input:hover,
.field--error input:focus {
  border-color: var(--red);
  color: var(--red);
}

.field--error .field_error {
  display: block;
}

.check {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  margin-top: 1.25rem;
  cursor: pointer;
}

.check input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.check_box {
  position: relative;
  flex-shrink: 0;
  width: 1rem;
  height: 1rem;
  border: 1px solid #000;
  border-radius: 0.375rem;
  transition: border-color 0.2s;
}

.check_box::after {
  content: "";
  position: absolute;
  left: 0.25rem;
  top: 0.1875rem;
  width: 0.375rem;
  height: 0.1875rem;
  border: solid var(--red);
  border-width: 0 0 0.09375rem 0.09375rem;
  transform: rotate(-45deg);
  opacity: 0;
}

.check:hover .check_box,
input:checked + .check_box,
input:focus-visible + .check_box {
  border-color: var(--red);
}

input:checked + .check_box::after {
  opacity: 1;
}

.check--error .check_box {
  border-color: var(--red);
  background: rgba(223, 37, 38, 0.1);
}

.check_text {
  font-size: 0.625rem;
  line-height: 1.4;
  color: rgba(0, 0, 0, 0.5);
}

.check_text a {
  text-decoration: underline;
}

.check_text a:hover {
  color: var(--red);
}

.b9_logos_clip,
.b11_splide .splide__track {
  cursor: grab;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  touch-action: pan-y;
}

.b9_logos_clip:active,
.b11_splide .splide__track:active {
  cursor: grabbing;
}

@media (min-width: 681px) {
  .b9_logos .b9_logo {
    opacity: 0;
    transition: opacity 0.4s;
  }

  .b9_logos .b9_logo.is-shown {
    opacity: 1;
  }
}