:root {
  --color-base: #060a12;
  --color-dark-900: #0a0c10;
  --color-dark-800: #101620;
  --color-dark-700: #0a1222;
  --color-accent: #a3d723;
  --color-text-base: #b4b8bf;
  --color-text-soft: #c5ccd9;
  --color-text-muted: #5c6066;
  --color-graphite-900: #0e1a32;
  --color-graphite-800: #132444;
  --color-graphite-700: #313b4d;
  --color-graphite-600: #323844;
  --color-graphite-500: #4d6085;
  --color-gray-600: #7a8190;
  --color-red: #e12a3e;
  --color-black: #000000;
  --color-white: #ffffff;
  --rgb-color-base: 6, 10, 18;
  --rgb-color-dark-900: 10, 12, 16;
  --rgb-color-dark-800: 16, 22, 32;
  --rgb-color-dark-700: 10, 18, 34;
  --rgb-color-accent: 163, 215, 35;
  --rgb-color-text-base: 180, 184, 191;
  --rgb-color-text-soft: 197, 204, 217;
  --rgb-color-text-muted: 92, 96, 102;
  --rgb-color-graphite-900: 14, 26, 50;
  --rgb-color-graphite-800: 19, 36, 68;
  --rgb-color-graphite-700: 49, 59, 77;
  --rgb-color-graphite-600: 50, 56, 68;
  --rgb-color-graphite-500: 77, 96, 133;
  --rgb-color-gray-600: 122, 129, 144;
  --rgb-color-red: 225, 42, 62;
  --rgb-color-black: 0, 0, 0;
  --rgb-color-white: 255, 255, 255;
  --transition-value: all 0.3s ease;
  --shadow-glow-accent: 0px 0px 80px rgba(163, 215, 35, 0.5);
  --shadow-glow-accent-slim: 0px 0px 48px rgba(163, 215, 35, 0.5);
  --font: "Manrope", Arial, sans-serif;
  --fontHead: "HeadingOne", Arial, sans-serif;
}

/*_______ Fonts _______*/
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-Regular.woff") format("woff"),
    url("../fonts/Manrope/Manrope-Regular.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-Regular.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: normal;
}
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-ExtraLight.woff") format("woff"),
    url("../fonts/Manrope/Manrope-ExtraLight.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-ExtraLight.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 200;
}
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-Light.woff") format("woff"),
    url("../fonts/Manrope/Manrope-Light.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-Light.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 300;
}
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-Medium.woff") format("woff"),
    url("../fonts/Manrope/Manrope-Medium.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-Medium.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 500;
}
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-SemiBold.woff") format("woff"),
    url("../fonts/Manrope/Manrope-SemiBold.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-SemiBold.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 600;
}
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-Bold.woff") format("woff"),
    url("../fonts/Manrope/Manrope-Bold.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-Bold.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
}
@font-face {
  font-family: "Manrope";
  src:
    url("../fonts/Manrope/Manrope-ExtraBold.woff") format("woff"),
    url("../fonts/Manrope/Manrope-ExtraBold.woff2") format("woff2"),
    url("../fonts/Manrope/Manrope-ExtraBold.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 800;
}
@font-face {
  font-family: "HeadingOne";
  src:
    url("../fonts/HeadingOne/HeadingOne-Bold.woff") format("woff"),
    url("../fonts/HeadingOne/HeadingOne-Bold.woff2") format("woff2"),
    url("../fonts/HeadingOne/HeadingOne-Bold.ttf") format("truetype");
  font-display: swap;
  font-style: normal;
  font-weight: 700;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

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

html,
body {
  min-height: 100%;
}

html {
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -ms-overflow-style: scrollbar;
  -webkit-tap-highlight-color: transparent;
}

body {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  margin: 0;
  font-family: var(--font);
  font-size: 18px;
  line-height: 1.5;
  color: var(--color-text-base);
  background-color: var(--color-base);
  overflow-x: hidden;
}

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

a {
  text-decoration: none;
  color: var(--color-text-base);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
a:hover {
  text-decoration: none;
  opacity: 0.8;
}

a:focus,
input:focus,
textarea:focus {
  outline: 0 none;
}

strong {
  font-weight: 700;
}

.height-fullscreen {
  height: 100vh;
}

.no-scroll {
  overflow: hidden;
}

/*_________ Typo _________*/
h1 {
  margin: 0 0 30px;
  font-family: var(--font);
  font-weight: 600;
  font-size: 44px;
  line-height: 1.2;
  color: var(--color-white);
}

h2 {
  margin: 0 0 32px;
  font-family: var(--font);
  font-weight: 600;
  font-size: 28px;
  line-height: 1.2;
  color: var(--color-white);
}

h3 {
  margin: 0 0 28px;
  font-family: var(--font);
  font-weight: 600;
  font-size: 24px;
  line-height: 1.2;
  color: var(--color-white);
}

h4 {
  margin: 0 0 24px;
  font-family: var(--font);
  font-weight: 600;
  font-size: 22px;
  line-height: 1.2;
  color: var(--color-white);
}

h5 {
  margin: 0 0 24px;
  font-family: var(--font);
  font-weight: 600;
  font-size: 20px;
  line-height: 1.2;
  color: var(--color-white);
}

h6 {
  margin: 0 0 20px;
  font-family: var(--font);
  font-weight: 600;
  font-size: 20px;
  line-height: 1.2;
  color: var(--color-white);
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
  margin-top: 0;
}

p {
  margin: 0 0 16px;
}

ul,
ol {
  width: 98%;
  padding-left: 0;
}

ul {
  list-style: square;
  margin: 24px 0 28px 16px;
}
ul li {
  margin-top: 0px;
  margin-bottom: 8px;
  padding-left: 2px;
  line-height: 1.5;
}
ul li::marker {
  color: var(--color-accent);
}

ul li p,
ol li p {
  display: inline;
  margin: 0;
}

ol {
  list-style: none;
  counter-reset: list-counter;
  margin: 0 0 28px 0;
}
ol > li {
  counter-increment: list-counter;
  position: relative;
  margin-top: 0px;
  margin-bottom: 8px;
}
ol > li::before {
  content: counter(list-counter);
  margin-right: 14px;
  font-weight: 500;
  line-height: 1;
  color: var(--color-accent);
}

ol li > ul {
  width: 93%;
  margin: 6px 0 12px 20px;
}
ol li > ul li {
  margin-bottom: 6px;
}
ol li > ul li::before {
  content: "";
}

.table-wrapper {
  overflow-x: auto;
  min-height: 0.01%;
  margin-bottom: 32px;
}

table {
  width: 100%;
  max-width: 100%;
  margin-top: 12px;
  border-bottom: 1px solid var(--color-text-muted);
  border-left: none;
  border-right: none;
  border-radius: 0;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 16px;
  line-height: 1.5;
  text-align: left;
  background-color: transparent;
  overflow: hidden;
}

table p {
  margin: 0;
}

th {
  padding: 18px 20px;
  border-bottom: 1px solid var(--color-text-muted);
  border-left: 1px solid var(--color-text-muted);
  font-weight: 600;
  text-overflow: ellipsis;
}

td {
  padding: 18px 20px;
  border-bottom: 1px solid var(--color-text-muted);
  border-left: 1px solid var(--color-text-muted);
  text-overflow: ellipsis;
}

tr:last-child td {
  border-bottom: none;
}

blockquote {
  position: relative;
  margin: 52px 0 52px;
  padding: 32px 40px 40px 70px;
  border-radius: 0 20px;
  font-weight: 300;
  background: rgba(14, 26, 50, 0.5);
}
blockquote::before {
  content: "";
  position: absolute;
  top: 36px;
  left: 32px;
  display: block;
  width: 24px;
  height: 20px;
  background-image: url("data:image/svg+xml,%3Csvg width='24' height='20' viewBox='0 0 24 20' fill='none' stroke='%23A3D723' stroke-width='2' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M22.414.707l-9 9 9 9M10.414.707l-9 9 9 9'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
}

blockquote p {
  margin-bottom: 10px;
  font-size: 20px;
  line-height: 1.4;
  color: var(--color-text-soft);
}
blockquote p:last-child {
  margin-bottom: 0;
}

.blockquote-author {
  margin-bottom: 0;
  padding-top: 8px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--color-text-muted);
}

@media (max-width: 1030px) {
  h1 {
    margin: 0 0 32px;
    font-size: 40px;
  }
  h2 {
    margin: 0 0 24px;
    font-size: 32px;
  }
  h3 {
    margin: 0 0 20px;
    font-size: 28px;
  }
  h4 {
    margin: 0 0 20px;
    font-size: 24px;
  }
  h5 {
    margin: 0 0 20px;
    font-size: 22px;
  }
  .table-wrapper {
    margin-bottom: 24px;
  }
  td {
    padding: 16px;
  }
  th {
    padding: 16px;
  }
  blockquote {
    margin: 36px 0 40px;
  }
}
@media (max-width: 860px) {
  h1 {
    font-size: 36px;
  }
  h2 {
    font-size: 30px;
  }
  h3 {
    font-size: 26px;
  }
  h4 {
    font-size: 22px;
  }
  h5 {
    font-size: 22px;
  }
}
@media (max-width: 560px) {
  h1 {
    font-size: 30px;
  }
  h2 {
    font-size: 24px;
  }
  h3 {
    font-size: 22px;
  }
  h4 {
    font-size: 20px;
  }
  h5 {
    font-size: 20px;
  }
  ul li {
    margin-bottom: 6px;
  }
  ol > li {
    margin-bottom: 6px;
  }
  blockquote {
    padding: 24px 20px 24px 56px;
  }
  blockquote::before {
    top: 26px;
    left: 24px;
    width: 20px;
  }
  blockquote p {
    margin-bottom: 8px;
    font-size: 17px;
  }
}
/*_________ Buttons _________*/
/* #region */
button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  padding: 0;
  border: none;
  outline: 0;
  font-family: var(--font);
  background-color: transparent;
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}

.button {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 24px 40px 22px;
  border: 1px solid transparent;
  border-radius: 0 20px;
  font-family: var(--fontHead);
  font-size: 20px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.button:hover {
  text-decoration: none;
  cursor: pointer;
}

.button_accent {
  border: 1px solid var(--color-accent);
  color: var(--color-black);
  background-color: var(--color-accent);
}
.button_accent:hover {
  border: 1px solid var(--color-accent);
  color: var(--color-black);
  background-color: rgba(var(--rgb-color-accent), 0.8);
}

.button_outline_accent {
  border: 1px solid var(--color-accent);
  color: var(--color-accent);
  background-color: transparent;
}
.button_outline_accent:hover {
  border: 1px solid var(--color-accent);
  color: var(--color-accent);
  background-color: rgba(var(--rgb-color-accent), 0.07);
}

.button_white {
  border: 1px solid var(--color-white);
  color: var(--color-black);
  background-color: var(--color-white);
}
.button_white:hover {
  border: 1px solid var(--color-base);
  color: var(--color-base);
  background-color: transparent;
}

.button_outline {
  border: 1px solid var(--color-text-soft);
  color: var(--color-text-soft);
  background-color: transparent;
}
.button_outline:hover {
  border: 1px solid var(--color-white);
  color: var(--color-white);
  background-color: transparent;
}

@media (max-width: 1200px) {
  .button {
    padding: 20px 36px 19px;
    font-size: 18px;
  }
}
@media (max-width: 860px) {
  .button {
    padding: 20px 32px 16px;
    font-size: 16px;
  }
}
/* #endregion */
/*_______ Forms _______*/
/* #region */
input {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  outline: 0;
  font-family: var(--font);
  font-weight: 400;
  color: var(--color-black);
}

input[type="submit"] {
  cursor: pointer;
}

textarea {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  outline: 0;
  resize: none;
  font-family: var(--font);
  font-weight: 400;
  color: var(--color-black);
}

.form-field {
  position: relative;
  width: 100%;
}

.form-input__name {
  position: absolute;
  left: 10px;
  top: 16px;
  -webkit-transition: all 0.2s ease-in-out;
  transition: all 0.2s ease-in-out;
  pointer-events: none;
  font-size: 18px;
  font-weight: 400;
  color: rgba(var(--rgb-color-black), 0.8);
}

.form-input:focus ~ .form-input__name {
  top: -6px;
  font-size: 16px;
}

.form-input:focus + .form-input__name,
.form-input.has-value + .form-input__name,
.form-textarea:focus + .form-input__name,
.form-textarea.has-value + .form-input__name {
  top: -6px;
  font-size: 16px;
}

.form-input {
  width: 100%;
  padding: 16px 10px;
  border-bottom: 1px solid rgba(var(--rgb-color-black), 0.6);
  background-color: transparent;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
}

.form-textarea {
  resize: none;
  width: 100%;
  padding: 20px 10px;
  border-bottom: 1px solid rgba(var(--rgb-color-black), 0.6);
  font-family: var(--font);
  font-size: 18px;
  line-height: 1.5;
}

::-webkit-input-placeholder {
  color: transparent;
}

::-moz-placeholder {
  color: transparent;
}

:-moz-placeholder {
  color: transparent;
}

:-ms-input-placeholder {
  color: transparent;
}

input:focus::-webkit-input-placeholder {
  color: transparent;
}

input:focus:-moz-placeholder {
  color: transparent;
}

input:focus::-moz-placeholder {
  color: transparent;
}

input:focus:-ms-input-placeholder {
  color: transparent;
}

.form-policy {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 8px;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
}

.form-policy__label {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 14px;
  cursor: pointer;
}

.form-policy__checkbox {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  cursor: pointer;
}

.form-policy__control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 26px;
  height: 26px;
  border: 1px solid var(--color-black);
  border-radius: 4px;
  opacity: 0.6;
}

.form-policy__ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
  fill: var(--color-black);
}

.form-policy__checkbox:checked + .form-policy__control .form-policy__ico {
  display: block;
}

.form-policy__checkbox:not(:checked) + .form-policy__control .form-policy__ico {
  display: none;
}

.form-policy__checkbox:checked + .form-policy__control {
  opacity: 1;
}

.form-policy__text {
  color: rgba(var(--rgb-color-black), 0.9);
}

.form-policy__link {
  display: inline;
  text-decoration: underline !important;
  color: rgba(var(--rgb-color-black), 0.9);
}
.form-policy__link:hover {
  text-decoration: none !important;
  color: rgba(var(--rgb-color-black), 1);
}

.form-policy__prompt {
  display: none;
  margin-top: 8px;
  font-size: 12px;
  line-height: 1.35;
  color: var(--color-red);
}

.form-policy_invalid .form-policy__control {
  border-color: var(--color-red);
  opacity: 1;
}

.form-policy_invalid .form-policy__prompt {
  display: block;
}

.form-field__prompt {
  display: none;
  position: absolute;
  bottom: 2px;
  left: 10px;
  font-size: 12px;
  color: var(--color-red);
}

.form-field_invalid input {
  border-bottom: 1px solid var(--color-red);
}

.form-field_invalid .form-input::-webkit-input-placeholder {
  color: transparent;
  opacity: 0.8;
}

.form-field_invalid .form-input::-moz-placeholder {
  color: transparent;
  opacity: 0.8;
}

.form-field_invalid .form-input:-moz-placeholder {
  color: transparent;
  opacity: 0.8;
}

.form-field_invalid .form-input:-ms-input-placeholder {
  color: transparent;
  opacity: 0.8;
}

.form-field_invalid .form-field__prompt {
  display: block;
}

@media (max-width: 860px) {
  .form-input,
  .form-textarea {
    padding: 16px 10px 8px;
    font-size: 17px;
  }
  .form-input__name {
    top: 14px;
    font-size: 16px;
  }
  .form-policy__control {
    width: 24px;
    height: 24px;
  }
  .form-policy__ico {
    width: 14px;
    height: 14px;
  }
  .form-field__prompt {
    bottom: 1px;
  }
}
/* #endregion */
:root {
  --animate-duration: 1s;
  --animate-delay: 1s;
  --animate-repeat: 1;
}

.animate__animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-duration: var(--animate-duration);
  animation-duration: var(--animate-duration);
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animate__animated.animate__infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animate__animated.animate__repeat-1 {
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-iteration-count: var(--animate-repeat);
  animation-iteration-count: var(--animate-repeat);
}

.animate__animated.animate__repeat-2 {
  -webkit-animation-iteration-count: 2;
  animation-iteration-count: 2;
  -webkit-animation-iteration-count: calc(var(--animate-repeat) * 2);
  animation-iteration-count: calc(var(--animate-repeat) * 2);
}

.animate__animated.animate__repeat-3 {
  -webkit-animation-iteration-count: 3;
  animation-iteration-count: 3;
  -webkit-animation-iteration-count: calc(var(--animate-repeat) * 3);
  animation-iteration-count: calc(var(--animate-repeat) * 3);
}

.animate__animated.animate__delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-delay: var(--animate-delay);
  animation-delay: var(--animate-delay);
}

.animate__animated.animate__delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  -webkit-animation-delay: calc(var(--animate-delay) * 2);
  animation-delay: calc(var(--animate-delay) * 2);
}

.animate__animated.animate__delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
  -webkit-animation-delay: calc(var(--animate-delay) * 3);
  animation-delay: calc(var(--animate-delay) * 3);
}

.animate__animated.animate__delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
  -webkit-animation-delay: calc(var(--animate-delay) * 4);
  animation-delay: calc(var(--animate-delay) * 4);
}

.animate__animated.animate__delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
  -webkit-animation-delay: calc(var(--animate-delay) * 5);
  animation-delay: calc(var(--animate-delay) * 5);
}

.animate__animated.animate__faster {
  -webkit-animation-duration: 0.12s;
  animation-duration: 0.12s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.12);
  animation-duration: calc(var(--animate-duration) * 0.12);
}

.animate__animated.animate__fast {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.5);
  animation-duration: calc(var(--animate-duration) * 0.5);
}

.animate__animated.animate__slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-duration: calc(var(--animate-duration) * 2);
  animation-duration: calc(var(--animate-duration) * 2);
}

.animate__animated.animate__slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-duration: calc(var(--animate-duration) * 3);
  animation-duration: calc(var(--animate-duration) * 3);
}

@media print, (prefers-reduced-motion: reduce) {
  .animate__animated {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
  .animate__animated[class*="Out"] {
    opacity: 0;
  }
}
/* Sliding entrances */
@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

/* Sliding exits */
@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.animate__slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.animate__slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.animate__slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.animate__slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

/*_______ Layout _______*/
/* #region */
.section-wrapper {
  position: relative;
  z-index: 1;
  max-width: 1200px;
  margin: 0 auto;
}

.grid-aside-left {
  position: relative;
  display: grid;
  grid-template-columns: 390px minmax(0, 1fr);
  gap: 36px 120px;
}

.grid-aside-right {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 390px;
  gap: 36px 120px;
}

@media (max-width: 1360px) {
  .section {
    padding-right: 16px;
    padding-left: 16px;
  }
}
@media (max-width: 1200px) {
  .grid-aside-left {
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 36px 60px;
  }
  .grid-aside-right {
    grid-template-columns: minmax(0, 1fr) 360px;
    gap: 36px 60px;
  }
}
@media (max-width: 860px) {
  .grid-aside-left {
    grid-template-columns: 1fr;
    gap: 36px 0;
  }
  .grid-aside-right {
    grid-template-columns: 1fr;
    gap: 36px 0;
  }
}
/* #endregion */
/*_______ Modals _______*/
/* #region */
.modal {
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(var(--rgb-color-base), 0.8);
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  -webkit-overflow-scrolling: touch;
  overflow-y: scroll;
  z-index: 10;
}

.modal-overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  z-index: 10;
}

.modal-content {
  position: relative;
  z-index: 20;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: auto;
  margin: 0 auto;
}

.modal-close {
  position: absolute;
  top: 30px;
  right: 30px;
  width: 36px;
  height: 36px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  cursor: pointer;
}

.modal-close:hover {
  opacity: 0.8;
}

.modal-close__ico {
  width: 30px;
  height: 30px;
}

.modal-content-video {
  max-width: 560px;
  width: 100%;
  height: 560px;
  margin: 20px auto;
}

.modal-content-video .video-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  padding-bottom: 56.25%;
}
.modal-content-video .video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: none;
}

.modal-twinned {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 1200px;
}

.modal-twinned__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 50%;
  max-height: 520px;
  border-radius: 4px 0 0 4px;
  background-color: rgba(var(--rgb-color-text-base), 0.5);
}

.modal-twinned__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 4px 0 0 4px;
}

.modal-twinned__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px 0;
  width: 50%;
  padding: 120px 50px;
  border-radius: 0 8px 8px 0;
  background-color: #fff;
}

.modal-single {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px 0;
  width: 620px;
  padding: 68px 60px 70px;
  border-radius: 20px;
  background-color: #fff;
}

.modal-twinned .modal-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 240px;
  gap: 20px;
}
.modal-twinned .modal-form .form-policy {
  grid-column: 1/-1;
}

.modal-course {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 400px;
  gap: 40px;
  width: 1200px;
  padding: 80px 80px 56px;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0 40px;
  background-color: var(--color-dark-700);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.modal-course__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 28px 0;
  font-size: 18px;
  color: var(--color-text-base);
  line-height: 1.5;
}

.modal-course__header {
  margin-bottom: 4px;
}

.modal-course__title {
  margin-bottom: 8px;
  font-size: 44px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-accent);
}

.modal-course__subtitle {
  font-size: 26px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-white);
}

.modal-course__parameters {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
  margin-bottom: 10px;
}

.modal-course__parameter {
  position: relative;
  font-size: 14px;
}
.modal-course__parameter .parameter-discount {
  position: absolute;
  bottom: 100%;
  left: 0;
  padding: 3px 10px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-base);
  background-color: var(--color-white);
}
.modal-course__parameter .parameter-discount .discount-accent {
  font-weight: 800;
}
.modal-course__parameter .parameter-name {
  font-weight: 300;
  color: var(--color-text-base);
}
.modal-course__parameter .parameter-value {
  font-size: 18px;
  font-weight: 600;
  color: var(--color-white);
}
.modal-course__parameter .parameter-value.old-price {
  text-decoration: line-through;
}

.modal-course__program .program-title {
  margin-bottom: 10px;
  font-size: 22px;
  font-weight: 500;
  color: var(--color-white);
}
.modal-course__program .program-content {
  margin-bottom: 0;
}

.modal-form__title {
  margin-bottom: 10px;
  font-size: 44px;
  font-weight: 600;
  line-height: 1.2;
  color: var(--color-accent);
}

.modal-form__subtitle {
  margin-bottom: 12px;
  font-size: 26px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-white);
}

.modal-course-form-wrap {
  -ms-flex-item-align: center;
  align-self: center;
  padding: 30px 40px 50px;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0px 40px;
  color: var(--color-text-base);
  background-color: rgba(var(--rgb-color-graphite-900), 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.modal-course__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px 0;
}

.modal-course__form input {
  color: rgba(var(--rgb-color-white), 0.8);
}
.modal-course__form .form-input {
  border-bottom: 1px solid rgba(var(--rgb-color-white), 0.2);
}
.modal-course__form .form-input__name {
  color: rgba(var(--rgb-color-white), 0.5);
}
.modal-course__form .form-field__prompt {
  color: rgba(var(--rgb-color-white), 0.8);
}
.modal-course__form .form-field_invalid input {
  border-bottom: 1px solid rgba(var(--rgb-color-white), 0.8);
}
.modal-course__form .form-policy {
  margin-top: 6px;
}
.modal-course__form .form-policy__control {
  border: 1px solid var(--color-white);
}
.modal-course__form .form-policy__ico {
  fill: var(--color-white);
}
.modal-course__form .form-policy__text {
  color: rgba(var(--rgb-color-white), 0.5);
}
.modal-course__form .form-policy__link {
  color: rgba(var(--rgb-color-white), 0.8);
}
.modal-course__form .form-policy__link:hover {
  text-decoration: none;
  color: rgba(var(--rgb-color-white), 1);
}

.modal-form__submit {
  margin-top: 32px;
  color: var(--color-base) !important;
  -webkit-box-shadow: var(--shadow-glow-accent);
  box-shadow: var(--shadow-glow-accent);
}
.modal-form__submit:hover {
  -webkit-box-shadow: var(--shadow-glow-accent-slim);
  box-shadow: var(--shadow-glow-accent-slim);
}

/* #endregion */
@media (max-width: 1200px) {
  .modal-close {
    top: 24px;
    right: 24px;
    width: 30px;
    height: 30px;
  }
  .modal-course {
    grid-template-columns: minmax(0, 1fr) 440px;
    width: 98%;
    padding: 80px 48px 44px;
    border-radius: 0;
  }
  .modal-course__parameters {
    gap: 6px 20px;
    margin-bottom: 12px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .modal-course__content {
    gap: 20px 0;
    font-size: 17px;
  }
  .modal-course__title {
    font-size: 32px;
  }
  .modal-course__subtitle {
    font-size: 22px;
  }
  .modal-course__program .program-title {
    font-size: 19px;
  }
}
@media (max-width: 960px) {
  .modal-content-video {
    width: 100%;
    height: 100%;
  }
  .modal-twinned__image {
    display: none;
  }
  .modal-twinned {
    width: 520px;
  }
  .modal-twinned__content {
    width: 100%;
    padding: 60px 60px 50px;
    border-radius: 8px;
  }
  .modal-single {
    width: 520px;
    padding: 60px 60px 50px;
    border-radius: 8px;
  }
  .modal-course {
    grid-template-columns: minmax(0, 1fr);
  }
  .modal-course-form-wrap {
    padding: 20px 28px 44px;
  }
}
@media (max-width: 860px) {
  .modal-content-video {
    width: 100%;
  }
}
@media (max-width: 560px) {
  .modal-close {
    top: 16px;
    right: 16px;
    width: 24px;
    height: 24px;
  }
  .modal-course {
    padding: 80px 18px 44px;
  }
  .modal-course__parameter {
    font-size: 13px;
  }
  .modal-course__parameter .parameter-value {
    font-size: 15px;
  }
  .modal-course__parameter .parameter-discount {
    bottom: 110%;
    font-size: 14px;
  }
  .modal-course__title {
    font-size: 28px;
  }
  .modal-course__subtitle {
    font-size: 20px;
  }
  .modal-course__program .program-title {
    font-size: 18px;
  }
  .modal-course__content {
    font-size: 16px;
  }
}
/*_______ Header _______*/
/* #region */
header {
  position: relative;
  z-index: 50;
  padding-top: 22px;
  padding-bottom: 22px;
  background-color: var(--color-base);
}

.header-box {
  position: relative;
  z-index: 51;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 20px;
}

.header_fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 60;
  border-bottom: 1px solid rgba(var(--rgb-color-text-soft), 0.3);
}

.header-logo {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: grid;
  grid-template-columns: 36px 188px;
  gap: 7px 12px;
}
.header-logo__img {
  width: 35px;
  height: 43px;
}
.header-logo__site {
  -ms-flex-item-align: center;
  align-self: center;
  font-family: var(--fontHead);
  font-weight: 700;
  font-size: 28px;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-white);
}
.header-logo__site .accent {
  padding-left: 6px;
  color: var(--color-accent);
}
.header-logo__text {
  grid-column: span 2;
  width: 100%;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--color-text-base);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.header-logo:hover {
  opacity: 0.8;
}

.header-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 35px;
}

.header-menu__item {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.header-menu__link {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 16px;
  font-weight: 300;
  text-decoration: none;
  line-height: 1.4;
  color: var(--color-text-base);
  cursor: pointer;
}
.header-menu__link:hover {
  color: var(--color-white);
  text-decoration: none;
}
.header-menu__item_dropdown {
  position: relative;
}
.header-menu__link_dropdown {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 0;
  border: 0;
  background: transparent;
  font-family: inherit;
}
.header-menu__dropdown-ico {
  width: 10px;
  height: 10px;
  opacity: 0.72;
  filter: brightness(0) saturate(100%) invert(78%) sepia(75%) saturate(489%) hue-rotate(30deg) brightness(94%) contrast(91%);
  transition: transform 0.2s ease, opacity 0.2s ease;
}
.header-menu__dropdown {
  position: absolute;
  top: calc(100% + 16px);
  right: 0;
  z-index: 100;
  min-width: 230px;
  padding: 10px;
  border: 1px solid rgba(var(--rgb-color-text-base), 0.18);
  border-radius: 0 14px;
  background: rgba(var(--rgb-color-graphite-900), 0.98);
  box-shadow: 0 18px 45px rgba(0, 0, 0, 0.28);
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity 0.2s ease, transform 0.2s ease, visibility 0.2s ease;
}
.header-menu__dropdown::before {
  content: "";
  position: absolute;
  right: 0;
  bottom: 100%;
  width: 100%;
  height: 18px;
}
.header-menu__item_dropdown:hover .header-menu__dropdown,
.header-menu__item_dropdown:focus-within .header-menu__dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.header-menu__item_dropdown:hover .header-menu__dropdown-ico,
.header-menu__item_dropdown:focus-within .header-menu__dropdown-ico {
  opacity: 1;
  transform: rotate(180deg);
}
.header-menu__dropdown-link {
  display: block;
  padding: 10px 12px;
  border-radius: 0 8px;
  color: var(--color-text-base);
  font-size: 15px;
  font-weight: 300;
  line-height: 1.35;
  text-decoration: none;
  white-space: nowrap;
}
.header-menu__dropdown-link:hover {
  background: rgba(var(--rgb-color-text-base), 0.08);
  color: var(--color-white);
  text-decoration: none;
}

.header-contacts {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 10px;
}

.header-contacts__socnet {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 0 15px;
  padding: 12px 20px 11px;
  border: 1px solid var(--color-gray-600);
  border-radius: 0 12px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: var(--color-text-base);
}
.header-contacts__socnet .ico-tg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.header-contacts__socnet:hover {
  border: 1px solid var(--color-white);
  color: var(--color-white);
}
.header-contacts__socnet:hover .ico-tg {
  fill: var(--color-white);
}

.header-burger {
  display: none;
}

@media (max-width: 1200px) {
  .header-logo {
    gap: 7px 8px;
  }
  .header-logo__site {
    font-size: 26px;
  }
  .header-logo__img {
    width: 32px;
    height: 40px;
  }
  .header-menu {
    gap: 0 30px;
  }
  .header-contacts__socnet {
    gap: 0 12px;
  }
}
@media (max-width: 1030px) {
  .header-logo {
    gap: 7px 6px;
  }
  .header-logo__img {
    width: 29px;
    height: 36px;
  }
  .header-logo__site {
    font-size: 24px;
  }
  .header-menu {
    gap: 0 26px;
  }
  .header-contacts__socnet {
    padding: 12px 16px;
  }
  .header-contacts__socnet .ico-tg {
    width: 24px;
    height: 24px;
  }
  .header-contacts__socnet .socnet-name {
    display: none;
  }
}
@media (max-width: 860px) {
  .header-box {
    -webkit-box-pack: initial;
    -ms-flex-pack: initial;
    justify-content: initial;
  }
  .header-logo {
    margin-right: auto;
  }
  .header-menu {
    display: none;
  }
  .header-contacts__socnet {
    width: 48px;
    height: 48px;
    padding: 0;
    border-radius: 0 8px;
  }
  .header-burger {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid var(--color-gray-600);
    border-radius: 0 8px;
    cursor: pointer;
  }
  .header-burger svg {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 24px;
    height: 24px;
  }
}
@media (max-width: 560px) {
  .header-box {
    gap: 0 16px;
  }
  .header-logo {
    grid-template-columns: 36px 160px;
    gap: 6px 4px;
  }
  .header-logo__img {
    width: 27px;
    height: 34px;
  }
  .header-logo__site {
    font-size: 22px;
  }
  .header-contacts__socnet {
    width: 44px;
    height: 44px;
  }
  .header-contacts__socnet .ico-tg {
    width: 22px;
    height: 22px;
  }
  .header-burger {
    width: 44px;
    height: 44px;
  }
  .header-burger svg {
    width: 23px;
    height: 23px;
  }
}
/* #endregion */
/*_______ Sitenav _______*/
/* #region */
.sitenav {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  height: 100vh;
  height: 100dvh;
  width: 420px;
  padding-bottom: 48px;
  background-color: var(--color-graphite-900);
  z-index: 120;
}

.sitenav-wrapper {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  height: 100%;
  padding: 16px 20px 60px;
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.sitenav-wrapper_noscroll {
  overflow-y: hidden;
}

.sitenav-header {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
}

.sitenav-close {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 32px;
  height: 32px;
  margin-left: auto;
  border: 1px solid var(--color-accent);
  border-radius: 4px;
  opacity: 0.8;
  cursor: pointer;
}
.sitenav-close__ico {
  width: 18px;
  height: 18px;
}

.sitenav-menu {
  margin-bottom: 64px;
}

.sitenav-menu__section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 12px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(var(--rgb-color-text-base), 0.2);
  font-size: 19px;
  font-weight: 400;
}

.sitenav-menu__section_submodule {
  cursor: pointer;
}

.sitenav-menu__section_submodule .sitenav-menu__link {
  color: var(--color-white);
}

.sitenav-menu__link {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  text-decoration: none;
  color: var(--color-text-soft);
  cursor: pointer;
}
.sitenav-menu__link:hover {
  text-decoration: none;
  color: var(--color-text-soft);
}

.sitenav-menu__control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-item-align: stretch;
  align-self: center;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(var(--rgb-color-accent), 0.55);
  border-radius: 0 10px;
  background: rgba(var(--rgb-color-accent), 0.16);
  cursor: pointer;
}

.sitenav-menu__ico {
  width: 9px;
  height: 16px;
  filter: brightness(0) saturate(100%) invert(78%) sepia(75%) saturate(489%) hue-rotate(30deg) brightness(94%) contrast(91%);
}

.sitenav-menu__submodule {
  display: none;
}

.sitenav-menu__submodule_active {
  position: fixed;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  height: 100vh;
  height: 100dvh;
  padding: 16px 20px 80px;
  background-color: var(--color-dark-700);
  z-index: 130;
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
}

.sitenav-menu__submodule-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 20px;
}

.sitenav-menu__submodule-back {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 30px;
  height: 30px;
  margin-right: auto;
  border: 1px solid var(--color-accent);
  border-radius: 4px;
  opacity: 0.8;
  cursor: pointer;
}
.sitenav-menu__submodule-back img {
  margin-right: 1px;
}

.sitenav-menu__submodule-title {
  font-size: 20px;
  font-weight: 500;
  color: rgba(var(--rgb-color-text-soft), 0.8);
}

.sitenav-callback {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px 0;
}

.sitenav-callback__socnet {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 0 15px;
  padding: 18px 28px;
  border: 1px solid var(--color-gray-600);
  border-radius: 0 12px;
  font-family: var(--font);
  font-size: 17px;
  font-weight: 700;
  line-height: 1;
  color: var(--color-text-soft);
}
.sitenav-callback__socnet .ico-tg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.sitenav-callback__button {
  width: 100%;
  padding: 16px 28px;
  font-family: var(--font);
  font-size: 17px;
  font-weight: 700;
}

.sitenav-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 100vh;
  height: 100dvh;
  background-color: rgba(var(--rgb-color-base), 0.8);
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  z-index: 110;
}

.sitenav-overlay_active {
  display: block;
}

@media (max-width: 420px) {
  .sitenav {
    width: 100%;
  }
}
/* #endregion */
/*_______ Section Header _______*/
/* #region */
.section-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 36px;
  margin-bottom: 72px;
}

.section-header__title {
  position: relative;
  margin: 0;
  font-size: 50px;
  line-height: 1.15;
  color: var(--color-white);
}

.section-header__subtitle {
  margin-bottom: 28px;
  font-size: 40px;
  line-height: 1.4;
}

.section-header__text {
  font-size: 20px;
  line-height: 1.4;
}

.section-label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 20px 11px;
  border: 1px solid var(--color-text-muted);
  border-radius: 0 12px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.section_button_center {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 60px;
}

@media (max-width: 1030px) {
  .section-header {
    margin-bottom: 52px;
  }
  .section-header__title {
    font-size: 44px;
  }
}
@media (max-width: 860px) {
  .section-header {
    margin-bottom: 48px;
  }
  .section-header__title {
    font-size: 36px;
  }
}
@media (max-width: 560px) {
  .section-header {
    margin-bottom: 40px;
  }
  .section-header__title {
    font-size: 32px;
  }
}
/* #endregion */
/*_______ Form Callback _______*/
/* #region */
.form-callback-section {
  margin-bottom: 160px;
}

.form-callback-wrap {
  display: grid;
  grid-template-columns: 425px minmax(0, 1fr);
  gap: 40px 120px;
  padding: 70px;
  border-radius: 0 40px;
  background-color: var(--color-accent);
}

.form-callback__title {
  margin-bottom: 20px;
  font-weight: 800;
  font-size: 50px;
  line-height: 1.15;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--color-base);
}

.form-callback__text {
  margin-bottom: 16px;
  font-size: 20px;
  font-weight: 500;
  color: var(--color-base);
}

.form-callback__messagers {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0 10px;
  margin-top: 28px;
}
.form-callback__messagers .form-callback__text {
  grid-column: span 2;
}

.form-callback__messager {
  gap: 0 10px;
  padding: 12px 36px;
  border-radius: 0 20px;
  font-family: var(--font);
  font-weight: 400;
  font-size: 16px;
  line-height: 1.5;
  text-transform: capitalize;
  color: var(--color-black);
}
.form-callback__messager .messager-ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 26px;
  height: 26px;
}

.form-callback {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 12px 0;
  max-width: 390px;
  width: 100%;
  margin-right: auto;
}
.form-callback__submit {
  width: 100%;
  margin-top: 16px;
}
.form-callback .form-field__prompt {
  color: var(--color-graphite-900);
}
.form-callback .form-field_invalid input {
  border-bottom: 1px solid var(--color-graphite-900);
}

@media (max-width: 1200px) {
  .form-callback-wrap {
    padding: 48px 52px;
  }
}
@media (max-width: 1030px) {
  .form-callback-section {
    margin-bottom: 120px;
  }
  .form-callback-wrap {
    gap: 40px 60px;
    padding: 40px 44px;
  }
  .form-callback__title {
    font-size: 34px;
  }
  .form-callback__text {
    font-size: 18px;
  }
}
@media (max-width: 960px) {
  .form-callback-wrap {
    grid-template-columns: 410px minmax(0, 1fr);
    gap: 40px;
  }
  .form-callback__title {
    font-size: 28px;
  }
}
@media (max-width: 860px) {
  .form-callback-wrap {
    grid-template-columns: 380px minmax(0, 1fr);
    gap: 40px 30px;
    margin-left: -16px;
    margin-right: -16px;
    padding: 32px 16px 40px;
    border-radius: 0;
  }
  .form-callback__messager {
    gap: 0 8px;
    padding: 12px 32px;
  }
  .form-callback__messager .messager-ico {
    width: 24px;
    height: 24px;
  }
}
@media (max-width: 720px) {
  .form-callback-section {
    margin-bottom: 80px;
  }
  .form-callback-wrap {
    grid-template-columns: minmax(0, 1fr);
  }
  .form-callback {
    justify-self: center;
    margin-right: 0;
    max-width: 520px;
  }
}
@media (max-width: 480px) {
  .form-callback__title {
    font-size: 26px;
    line-height: 1.32;
  }
  .form-callback__messager {
    padding: 12px 24px;
  }
}
/* #endregion */
/*_______ Form Consultation _______*/
/* #region */
.form-consultation-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 40px 36px;
  border-radius: 0 40px;
  background-color: var(--color-accent);
}

.form-consultation-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 40px 36px 40px 48px;
}

.form-consultation__title {
  margin-bottom: 10px;
  font-size: 46px;
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -0.02em;
  text-transform: uppercase;
  color: var(--color-base);
}

.form-consultation__text {
  margin-bottom: 30px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-base);
}

.form-consultation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
  max-width: 389px;
}

.form-consultation .form-input__name {
  color: rgba(var(--rgb-color-black), 0.8);
}

.form-consultation .form-field__prompt {
  color: rgba(var(--rgb-color-black), 0.6);
}

.form-consultation .form-field_invalid input {
  border-bottom-color: rgba(var(--rgb-color-black), 0.8);
}

.form-consultation .form-policy__link {
  color: rgba(var(--rgb-color-black), 0.9);
}
.form-consultation .form-policy__link:hover {
  color: rgba(var(--rgb-color-black), 1);
}

.form-consultation__submit {
  width: 100%;
  margin-top: 10px;
}

.form-consultation__messagers {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 10px;
  margin-top: 30px;
}

.form-consultation__messagers-text {
  grid-column: 1/-1;
  font-size: 18px;
  line-height: 1.35;
  color: var(--color-base);
}

.form-consultation__messager {
  gap: 10px;
  width: 100%;
  padding: 14px 18px 13px;
  border-radius: 0 20px;
  font-family: var(--font);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  text-transform: none;
}

.form-consultation__messager .messager-ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.form-consultation-image {
  overflow: hidden;
  border-radius: 0 40px 0 0;
}

.form-consultation__img {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 0 !important;
  -o-object-fit: cover;
  object-fit: cover;
}

@media (max-width: 1200px) {
  .form-consultation__title {
    font-size: 40px;
  }
}
@media (max-width: 1030px) {
  .form-consultation-wrap {
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
  }
  .form-consultation-info {
    padding: 24px 32px 0;
  }
  .form-consultation__title {
    margin-bottom: 16px;
    font-size: 28px;
  }
  .form-consultation__submit {
    font-size: 16px;
  }
  .form-consultation__text,
  .form-consultation__messagers-text {
    font-size: 18px;
  }
  .form-consultation-image {
    height: 360px;
    border-radius: 0 32px 0 0;
  }
}
@media (max-width: 860px) {
  .form-consultation-wrap {
    margin-right: -16px;
    margin-left: -16px;
    border-radius: 0;
  }
  .form-consultation {
    max-width: none;
  }
  .form-consultation-info {
    padding: 32px 16px 0;
  }
  .form-consultation-image {
    height: 320px;
    border-radius: 0;
  }
}
@media (max-width: 560px) {
  .form-consultation__title {
    font-size: 26px;
  }
  .form-consultation__text {
    margin-bottom: 24px;
  }
  .form-consultation__messagers {
    grid-template-columns: minmax(0, 1fr);
  }
  .form-consultation__messager {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .form-consultation-image {
    height: 280px;
  }
}
/* #endregion */
/*_______ breadcrumbs _______*/
/* #region */
.breadcrumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 48px;
}

.breadcrumbs__item {
  margin-right: 6px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.4;
  text-decoration: none;
  color: var(--color-text-muted);
}
.breadcrumbs__item:hover {
  color: var(--color-text-base);
  text-decoration: none;
}

.breadcrumbs__pointer {
  padding-left: 4px;
}

.breadcrumbs__item_current {
  margin-right: 0;
  color: var(--color-text-base);
}
.breadcrumbs__item_current:hover {
  color: var(--color-text-base);
  text-decoration: none;
}

/* #endregion */
@media (max-width: 1030px) {
  .breadcrumbs {
    margin-bottom: 32px;
  }
}
@media (max-width: 560px) {
  .breadcrumbs {
    margin-bottom: 28px;
  }
}
/*_______ Main Page _______*/
/* #region */
.index-page {
  color: var(--color-text-base);
  background-color: var(--color-base);
}
.index-page h1,
.index-page h2 {
  font-family: var(--fontHead);
}

.main-page-wrap {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  overflow-x: hidden;
}

.main-page-wrap .section {
  margin-bottom: 160px;
}

.main-page-wrap .section-header__title {
  color: var(--color-white);
}

.main-page__bg-glow-left-1 {
  position: absolute;
  z-index: 0;
  top: 42%;
  left: -40%;
}

.main-page__bg-glow-left-2 {
  position: absolute;
  z-index: 0;
  bottom: 0;
  left: -40%;
}

.main-page__bg-glow-right-1 {
  position: absolute;
  z-index: 0;
  top: 12%;
  right: -40%;
}

.main-page__bg-glow-right-2 {
  position: absolute;
  z-index: 0;
  bottom: 26%;
  right: -40%;
}

.main-page__bg-bottom-angles {
  position: absolute;
  z-index: 0;
  bottom: 9%;
  right: 0;
}

@media (max-width: 1200px) {
  .main-page__bg-bottom-angles {
    bottom: 10%;
    width: 410px;
    height: 484px;
  }
}
@media (max-width: 1030px) {
  .main-page-wrap .section {
    margin-bottom: 140px;
  }
  .main-page__bg-bottom-angles {
    bottom: 12%;
    width: 320px;
    height: 378px;
  }
}
@media (max-width: 860px) {
  .main-page-wrap .section {
    margin-bottom: 120px;
  }
}
@media (max-width: 640px) {
  .main-page__bg-bottom-angles {
    bottom: 15%;
    width: 210px;
    height: 280px;
  }
}
@media (max-width: 560px) {
  .main-page-wrap .section {
    margin-bottom: 90px;
  }
  .main-page__bg-glow-left-1 {
    top: 53%;
    left: -36%;
    height: 480px;
  }
  .main-page__bg-glow-left-2 {
    bottom: 1%;
    left: -30%;
    height: 480px;
  }
  .main-page__bg-glow-right-1 {
    top: 15%;
    right: -30%;
    height: 480px;
  }
  .main-page__bg-glow-right-2 {
    bottom: 20%;
    right: -30%;
    height: 480px;
  }
}
@media (max-width: 480px) {
  .main-page__bg-glow-left-1 {
    display: none;
  }
  .main-page__bg-glow-left-2 {
    display: none;
  }
  .main-page__bg-glow-right-1 {
    display: none;
  }
  .main-page__bg-glow-right-2 {
    display: none;
  }
  .main-page__bg-bottom-angles {
    bottom: 14%;
    width: 180px;
    height: 250px;
  }
}
/* #endregion */
/*_______ Main Promo _______*/
/* #region */
.main-page-wrap .main-promo-section {
  margin-top: 56px;
  margin-bottom: 180px;
}

.main-promo-wrap {
  position: relative;
  z-index: 1;
}

.main-promo-header {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 24px;
  width: 100%;
  margin-bottom: 40px;
  padding: 24px 30px;
  border-radius: 0px 40px;
  background-color: rgba(14, 26, 50, 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.main-promo-header .promo-header__teacher {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 30px;
  max-width: 644px;
  padding-right: 80px;
  border-right: 1px solid #6e7a91;
}
.main-promo-header .promo-header__teacher .avatar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 74px;
  height: 87px;
}
.main-promo-header .promo-header__teacher .info {
  font-size: 20px;
  font-weight: 300;
  line-height: 1.4;
  color: var(--color-white);
}
.main-promo-header .promo-header__teacher .info .accent {
  font-weight: 700;
}

.main-promo-header .promo-header__partner {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 8px 0;
}
.main-promo-header .promo-header__partner .partner-note {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  background: -webkit-gradient(linear, left top, right top, from(#ccd3e2), to(#6d7991)), #c5ccd9;
  background: linear-gradient(90deg, #ccd3e2 0%, #6d7991 100%), #c5ccd9;
  -webkit-background-clip: text;
  background-clip: text;
}
.main-promo-header .promo-header__partner .partner-name {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 136px;
  height: 31px;
}

.main-promo-header .promo-header__practice {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 0 40px;
  margin-left: auto;
}
.main-promo-header .promo-header__practice .practice-title {
  margin-bottom: 5px;
  font-family: var(--fontHead);
  font-size: 42px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: var(--color-accent);
}
.main-promo-header .promo-header__practice .practice-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  color: var(--color-white);
}

.main-promo__content {
  max-width: 760px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.main-promo__title {
  margin-bottom: 40px;
  font-family: var(--font);
  font-size: 50px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-white);
}
.main-promo__title .accent {
  color: #a3d723;
}

.main-promo-params {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px 0;
  margin-bottom: 60px;
}
.main-promo-params__info {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 15px;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.4;
  color: var(--color-text-base);
}
.main-promo-params__ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.main-promo-buttons {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 28px 40px;
}

.main-promo-buttons .button {
  height: 64px;
  -webkit-box-shadow: var(--shadow-glow-accent);
  box-shadow: var(--shadow-glow-accent);
}
.main-promo-buttons .button:hover {
  -webkit-box-shadow: var(--shadow-glow-accent-slim);
  box-shadow: var(--shadow-glow-accent-slim);
}

.main-promo-video__play {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 0 20px;
}

.video-play__control {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 64px;
  height: 64px;
  border: 1px solid var(--color-accent);
  border-radius: 50%;
  cursor: pointer;
}
.video-play__control .play-ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.video-pay__text {
  font-family: var(--fontHead);
  font-weight: 700;
  font-size: 20px;
  line-height: 1.2;
  text-transform: uppercase;
  color: var(--color-accent);
}

.main-promo-image-wrap {
  position: absolute;
  z-index: -1;
  top: 125px;
  right: -190px;
}

.main-promo__image {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.main-promo__bg-glow {
  position: absolute;
  z-index: -1;
  -webkit-transform: scale(0.6);
  transform: scale(0.6);
  top: -520px;
  right: -220px;
}

.main-promo__bg-angles {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
}

.main-promo__img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.main-promo__image .promo-image__footer {
  position: absolute;
  top: 440px;
  right: 190px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 10px;
}

.main-promo__image .promo-image__achieve {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px 0;
  width: 140px;
  height: 140px;
  padding: 0 10px 20px;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0px 20px;
  background: -webkit-gradient(
    linear,
    left top,
    right bottom,
    from(rgba(161, 177, 206, 0.05)),
    color-stop(30%, rgba(161, 177, 206, 0.05)),
    color-stop(50%, rgba(161, 177, 206, 0.09)),
    to(rgba(161, 177, 206, 0.03))
  );
  background: linear-gradient(
    to bottom right,
    rgba(161, 177, 206, 0.05) 0%,
    rgba(161, 177, 206, 0.05) 30%,
    rgba(161, 177, 206, 0.09) 50%,
    rgba(161, 177, 206, 0.03) 100%
  );
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  background-color: rgba(161, 177, 206, 0.01);
}
.main-promo__image .promo-image__achieve .achieve-img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.main-promo__image .promo-image__achieve .achieve-info {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  color: var(--color-text-soft);
}

@media (max-width: 1440px) {
  .main-promo__bg-angles {
    top: 120px;
  }
}
@media (max-width: 1200px) {
  .main-promo-header .promo-header__teacher {
    padding-right: 24px;
  }
  .main-promo-header .promo-header__practice .practice-title {
    font-size: 38px;
  }
  .main-promo__title {
    font-size: 46px;
  }
  .main-promo-buttons {
    gap: 28px 32px;
  }
}
@media (max-width: 1030px) {
  .main-promo-header {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 48px;
  }
  .main-promo-header .promo-header__practice {
    gap: 0 32px;
    margin-left: 24px;
  }
  .main-promo__title {
    font-size: 40px;
  }
  .main-promo-buttons {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .main-promo__img {
    -webkit-transform: scale(0.8);
    transform: scale(0.8);
  }
  .main-promo__image .promo-image__footer {
    top: 403px;
  }
}
@media (max-width: 960px) {
  .main-page-wrap .main-promo-section {
    margin-bottom: 60px;
  }
  .main-promo-header {
    padding: 24px 30px 28px;
    border-radius: 0px 28px;
  }
  .main-promo-header .promo-header__teacher {
    max-width: 770px;
    width: 100%;
    padding-right: 0;
    border-right: none;
  }
  .main-promo__title {
    font-size: 36px;
  }
  .main-promo-image-wrap {
    position: relative;
    top: 0;
    right: 0;
    height: 380px;
    margin-top: -120px;
  }
  .main-promo__bg-glow {
    display: none;
  }
  .main-promo__bg-angles {
    top: 300px;
    width: 360px;
    height: 470px;
  }
  .main-promo__image .promo-image__footer {
    top: 170px;
    right: initial;
    left: 0;
  }
  .main-promo__img {
    margin-top: -120px;
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}
@media (max-width: 860px) {
  .main-promo__bg-angles {
    top: 360px;
    width: 300px;
    height: 360px;
  }
}
@media (max-width: 720px) {
  .main-promo-header .promo-header__practice .practice-title {
    margin-bottom: 0;
    font-size: 32px;
  }
  .main-promo-header .promo-header__partner .partner-name {
    width: 120px;
    height: 28px;
  }
  .main-promo__title {
    margin-bottom: 44px;
  }
  .main-promo-params {
    gap: 15px 0;
    margin-bottom: 64px;
  }
  .main-promo-params__info {
    gap: 0 15px;
    font-size: 17px;
  }
  .main-promo-buttons .button {
    font-size: 18px;
  }
  .video-play__control {
    width: 56px;
    height: 56px;
  }
  .video-play__control .play-ico {
    width: 22px;
    height: 22px;
  }
}
@media (max-width: 560px) {
  .main-page-wrap .main-promo-section {
    margin-top: 30px;
  }
  .main-promo__bg-angles {
    top: 390px;
    width: 180px;
    height: 260px;
  }
  .main-promo-header {
    gap: 20px;
    padding: 18px 16px 24px;
  }
  .main-promo-header .promo-header__teacher {
    gap: 0 24px;
  }
  .main-promo-header .promo-header__teacher .info {
    font-size: 17px;
  }
  .main-promo__image .promo-image__footer {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
  }
}
@media (max-width: 480px) {
  .main-promo-header {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: auto;
    margin: 0 -16px 40px;
    border-radius: 0;
  }
  .main-promo-header .promo-header__teacher .info {
    font-size: 16px;
  }
  .main-promo-header .promo-header__practice .practice-title {
    font-size: 30px;
  }
  .main-promo__title {
    margin-bottom: 40px;
    font-size: 30px;
  }
  .main-promo-buttons .button {
    height: 60px;
    font-size: 17px;
  }
  .main-promo-image-wrap {
    height: 340px;
    margin-top: 60px;
    margin-left: -16px;
    margin-right: -16px;
  }
  .main-promo__bg-angles {
    top: 540px;
    width: 200px;
    height: 340px;
  }
  .main-promo__img {
    margin-top: 0;
    -webkit-transform: scale(1.4);
    transform: scale(1.4);
    margin-left: -120px;
  }
  .main-promo__image .promo-image__footer {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .main-promo__image .promo-image__achieve {
    gap: 8px 0;
    width: 110px;
    height: 110px;
    padding: 0 8px 9px;
  }
  .main-promo__image .promo-image__achieve .achieve-img.achieve-avery-denninson {
    width: 98px;
    height: 32px;
  }
  .main-promo__image .promo-image__achieve .achieve-img.achieve-russian-wrap-masters {
    width: 69px;
    height: 32px;
  }
  .main-promo__image .promo-image__achieve .achieve-img.achieve-nations-wrap-cup {
    width: 51px;
    height: 52px;
  }
  .main-promo__image .promo-image__achieve .achieve-info {
    font-size: 11px;
  }
}
@media (max-width: 420px) {
  .main-promo__title {
    font-size: 28px;
  }
  .main-promo-params {
    margin-bottom: 56px;
  }
  .main-promo-params__ico {
    width: 25px;
    height: 25px;
  }
  .main-promo-params__info {
    font-size: 16px;
  }
  .main-promo-buttons .button {
    width: 100%;
    height: 56px;
    font-size: 18px;
  }
  .video-pay__text {
    font-size: 19px;
  }
  .main-promo-image-wrap {
    height: 320px;
  }
}
/* #endregion */
/*_______ About Main Page _______*/
/* #region */
.about-common-section .section-label {
  margin-bottom: 60px;
}

.about-common-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 56px 64px;
}

.about-common-item__title {
  margin-bottom: 28px;
  font-size: 36px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

@media (max-width: 1200px) {
  .about-common-section .section-label {
    margin-bottom: 48px;
  }
  .about-common-item__title {
    margin-bottom: 24px;
    font-size: 32px;
  }
}
@media (max-width: 1030px) {
  .about-common-item__title {
    font-size: 28px;
  }
}
@media (max-width: 860px) {
  .about-common-wrap {
    grid-template-columns: minmax(0, 1fr);
    gap: 52px;
  }
}
@media (max-width: 560px) {
  .about-common-wrap {
    gap: 48px;
  }
  .about-common-item__title {
    margin-bottom: 20px;
    font-size: 24px;
  }
}
/* #endregion */
/*_______ Target Section _______*/
/* #region */
.target-wrap {
  display: grid;
  grid-template-columns: 520px minmax(0, 1fr);
  gap: 44px;
  padding: 60px;
  border-radius: 0 40px;
  color: var(--color-base);
  background-color: var(--color-accent);
}

.target-plate {
  padding: 30px;
  border-radius: 0 30px;
  background-color: var(--color-white);
}
.target-plate__title {
  position: relative;
  margin-bottom: 20px;
  font-weight: 800;
  font-size: 50px;
  line-height: 1.1;
  text-transform: uppercase;
}
.target-plate__title .title-image {
  position: absolute;
  top: 11px;
  right: 0;
}
.target-plate__title .title-text {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}
.target-plate__text {
  font-weight: 700;
  line-height: 1.5;
}

.target-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px 0;
  width: 450px;
}

.target-info__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 15px;
  font-weight: 400;
  line-height: 1.4;
}
.target-info__item .item-marker {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: block;
  width: 6px;
  height: 6px;
  margin-top: 11px;
  background-color: var(--color-white);
}

@media (max-width: 1200px) {
  .target-wrap {
    grid-template-columns: 480px minmax(0, 1fr);
  }
  .target-plate__title {
    font-size: 44px;
  }
  .target-plate__title .title-image {
    top: 6px;
    width: 70px;
  }
  .target-info {
    width: 100%;
  }
}
@media (max-width: 1030px) {
  .target-wrap {
    grid-template-columns: minmax(0, 1fr);
  }
  .target-plate {
    padding: 32px 40px;
  }
  .target-plate__title .title-image {
    width: 74px;
  }
  .target-plate__title .title-text {
    width: 89%;
  }
}
@media (max-width: 860px) {
  .target-wrap {
    gap: 36px;
    padding: 32px 28px;
  }
  .target-plate {
    padding: 30px;
  }
}
@media (max-width: 720px) {
  .target-wrap {
    margin-left: -16px;
    padding: 28px 16px;
    margin-right: -16px;
    border-radius: 0;
  }
  .target-plate__title {
    font-size: 36px;
  }
  .target-plate__title .title-text {
    width: 87%;
  }
  .target-plate__title .title-image {
    width: 60px;
  }
}
@media (max-width: 560px) {
  .target-wrap {
    gap: 32px;
  }
  .target-plate {
    padding: 20px;
    border-radius: 0 28px;
  }
  .target-plate__title {
    font-size: 28px;
  }
  .target-plate__title .title-image {
    top: 4px;
    width: 56px;
  }
  .target-plate__text {
    font-size: 17px;
  }
  .target-info__item {
    gap: 0 12px;
    font-size: 17px;
  }
  .target-info__item .item-marker {
    margin-top: 10px;
  }
}
@media (max-width: 480px) {
  .target-wrap {
    margin-bottom: 28px;
  }
  .target-plate__title {
    margin-bottom: 16px;
    font-size: 24px;
    line-height: 1.25;
  }
  .target-plate__title .title-text {
    width: 80%;
  }
  .target-plate__title .title-image {
    top: 2px;
  }
}
/* #endregion */
/*_______ Teacher _______*/
/* #region */
.teacher-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 500px;
  gap: 36px;
  padding: 36px 70px 60px;
  border-radius: 0 40px;
  background-color: rgba(var(--rgb-color-graphite-900), 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.teacher-content {
  padding-top: 32px;
  padding-right: 48px;
}
.teacher-content .section-label {
  margin-bottom: 40px;
}

.teacher-title {
  margin-bottom: 30px;
  font-weight: 600;
  font-size: 50px;
  line-height: 1.15;
  color: var(--color-accent);
}

.teacher-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px 0;
}

.teacher-info__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 15px;
}
.teacher-info__item .item-marker {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: block;
  width: 6px;
  height: 6px;
  margin-top: 11px;
  background-color: var(--color-accent);
}

.teacher-media {
  position: relative;
  z-index: 1;
  width: 412px;
  margin-right: auto;
}

.teacher-media__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.teacher-media__img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.teacher-media__practice {
  position: absolute;
  top: 92px;
  right: -80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px 0;
}
.teacher-media__practice .practice-title {
  margin-bottom: 5px;
  font-family: var(--fontHead);
  font-size: 42px;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  color: var(--color-accent);
}
.teacher-media__practice .practice-text {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  color: var(--color-white);
}

.teacher-media__footer {
  position: absolute;
  bottom: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 32px;
}

.teacher-media__achieve {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px 0;
}
.teacher-media__achieve .achieve-img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.teacher-media__achieve .achieve-info {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  text-align: center;
  color: var(--color-text-soft);
}

.teacher-media__achieve .achieve-img.achieve-avery-denninson {
  width: 117px;
  height: 39px;
}
.teacher-media__achieve .achieve-img.achieve-russian-wrap-masters {
  width: 84px;
  height: 39px;
}
.teacher-media__achieve .achieve-img.achieve-nations-wrap-cup {
  width: 57px;
  height: 59px;
}

@media (max-width: 1200px) {
  .teacher-wrap {
    grid-template-columns: minmax(0, 1fr) 440px;
    gap: 28px;
    padding: 32px 48px 60px;
  }
  .teacher-title {
    margin-bottom: 24px;
    font-size: 44px;
  }
  .teacher-info__item {
    gap: 0 12px;
    font-size: 17px;
  }
  .teacher-info__item .item-marker {
    margin-top: 10px;
  }
  .teacher-content {
    padding-top: 20px;
    padding-right: 40px;
  }
  .teacher-media {
    width: 380px;
  }
  .teacher-media__practice {
    top: 36px;
    right: -40px;
  }
}
@media (max-width: 1030px) {
  .teacher-wrap {
    grid-template-columns: minmax(0, 1fr) 400px;
    margin-left: -16px;
    margin-right: -16px;
    padding: 24px 28px 36px;
    border-radius: 0;
  }
  .teacher-content {
    padding-right: 20px;
  }
  .teacher-title {
    font-size: 36px;
  }
  .teacher-media {
    width: 340px;
  }
  .teacher-media__footer {
    gap: 16px;
    margin-left: -16px;
    margin-right: -16px;
  }
  .teacher-media__practice .practice-title {
    margin-bottom: 2px;
    font-size: 32px;
  }
}
@media (max-width: 860px) {
  .teacher-wrap {
    grid-template-columns: minmax(0, 1fr);
    gap: 40px;
    padding: 16px 16px 36px;
  }
  .teacher-content {
    padding-right: 0;
  }
  .teacher-title {
    margin-bottom: 28px;
    font-size: 38px;
  }
  .teacher-info__item {
    font-size: 18px;
  }
  .teacher-info__item .item-marker {
    margin-top: 11px;
  }
  .teacher-media {
    width: 420px;
    margin-left: auto;
    margin-right: auto;
  }
  .teacher-media__footer {
    margin-left: 0;
    margin-right: 0;
  }
  .teacher-media__practice .practice-title {
    margin-bottom: 4px;
    font-size: 36px;
  }
}
@media (max-width: 560px) {
  .teacher-title {
    font-size: 34px;
  }
  .teacher-media {
    width: 380px;
  }
  .teacher-media__practice {
    right: -12px;
  }
  .teacher-media__practice .practice-title {
    margin-bottom: 2px;
    font-size: 30px;
  }
}
@media (max-width: 480px) {
  .teacher-info__item {
    font-size: 17px;
  }
  .teacher-info__item .item-marker {
    margin-top: 10px;
  }
  .teacher-media {
    width: 100%;
  }
  .teacher-media__image {
    height: 480px;
  }
  .teacher-media__footer {
    gap: 10px;
  }
  .teacher-media__practice {
    top: 28px;
    right: 0;
  }
}
/* #endregion */
/*_______ Courses _______*/
/* #region */
.courses-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
}

.course-card {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 40px 0;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0px 40px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: rgba(var(--rgb-color-graphite-900), 0.5);
  overflow: hidden;
}

.course-card__discount {
  position: absolute;
  top: 28px;
  left: 48px;
  padding: 3px 10px;
  border-radius: 50px;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.5;
  color: var(--color-base);
  background-color: var(--color-white);
}
.course-card__discount .discount-accent {
  font-weight: 800;
}

.course-card__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 242px;
}

.course-card__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.course-card__content {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 50px 50px;
}
.course-card__content .content_bg_img {
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: -80px;
  width: 285px;
  height: 320px;
}

.course-card.wide {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  grid-column: 1/-1;
  gap: 0 40px;
}
.course-card.wide .course-card__image {
  width: 100%;
  height: 100%;
}
.course-card.wide .course-card__content {
  padding: 50px 50px 50px 32px;
}

.course-card__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px 30px;
  margin-bottom: 20px;
}

.course-card__parameter {
  font-size: 13px;
}
.course-card__parameter .parameter-name {
  font-weight: 300;
  color: var(--color-text-base);
}
.course-card__parameter .parameter-value {
  font-size: 16px;
  font-weight: 600;
  color: var(--color-white);
}
.course-card__parameter .parameter-value.old-price {
  text-decoration: line-through;
}

.course-card__name {
  margin-bottom: 10px;
  font-size: 36px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

.course-card__direction {
  margin-bottom: 28px;
  font-size: 22px;
  font-weight: 500;
  color: var(--color-white);
}

.course-card__program {
  margin-bottom: 40px;
  color: var(--color-text-base);
}

.course-card__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: auto;
}
.course-card__actions .course-card__button {
  margin-top: 0;
  align-self: auto;
}

.course-card__button {
  -ms-flex-item-align: start;
  align-self: flex-start;
  margin-top: auto;
  -webkit-box-shadow: var(--shadow-glow-accent);
  box-shadow: var(--shadow-glow-accent);
}
.course-card__button:hover {
  -webkit-box-shadow: var(--shadow-glow-accent-slim);
  box-shadow: var(--shadow-glow-accent-slim);
}

@media (max-width: 1200px) {
  .course-card {
    gap: 36px 0;
  }
  .course-card__content {
    padding: 0 32px 32px;
  }
  .course-card__header {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px 20px;
    margin-bottom: 24px;
  }
  .course-card__name {
    margin-bottom: 12px;
    font-size: 32px;
  }
  .course-card__direction {
    font-size: 20px;
  }
  .course-card.wide {
    gap: 0 24px;
  }
  .course-card.wide .course-card__content {
    padding: 32px 32px;
  }
}
@media (max-width: 1030px) {
  .courses-wrap {
    gap: 20px;
  }
  .course-card__header {
    margin-bottom: 24px;
  }
  .course-card {
    gap: 28px 0;
  }
  .course-card__discount {
    top: 28px;
    left: 28px;
  }
  .course-card__content {
    padding: 0 24px 28px;
  }
  .course-card__name {
    font-size: 28px;
  }
  .course-card__program {
    font-size: 17px;
  }
  .course-card.wide {
    gap: 0 12px;
  }
  .course-card.wide .course-card__content {
    padding: 24px 24px 32px;
  }
  .course-card__content .content_bg_img {
    width: 232px;
    height: 260px;
  }
}
@media (max-width: 720px) {
  .courses-wrap {
    grid-template-columns: minmax(0, 1fr);
  }
  .course-card__name {
    font-size: 26px;
  }
  .course-card__direction {
    margin-bottom: 24px;
    font-size: 19px;
  }
  .course-card.wide {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px 0;
  }
  .course-card__content,
  .course-card.wide .course-card__content {
    padding: 0 24px 28px;
  }
  .course-card__image,
  .course-card.wide .course-card__image {
    height: 250px;
  }
}
@media (max-width: 560px) {
  .course-card {
    border-radius: 0px 28px;
  }
  .course-card__discount {
    top: 20px;
    left: 20px;
    padding: 4px 10px 3px;
    font-size: 15px;
  }
  .course-card__header {
    gap: 4px 16px;
  }
  .course-card__content,
  .course-card.wide .course-card__content {
    padding: 0 16px 24px;
  }
  .course-card__image,
  .course-card.wide .course-card__image {
    height: 230px;
  }
  .course-card.wide {
    gap: 24px 0;
  }
  .course-card__name {
    margin-bottom: 16px;
    font-size: 28px;
  }
  .course-card__direction {
    font-size: 18px;
  }
  .course-card__program {
    font-size: 16px;
  }
  .course-card__actions {
    gap: 10px;
    width: 100%;
  }
  .course-card__actions .course-card__button {
    flex: 1 1 100%;
    text-align: center;
  }
  .course-card__button {
    padding: 16px 28px 14px;
  }
}
/* #endregion */
/*_______ Course Page _______*/
/* #region */
.course-page .course-hero-section {
  margin-top: 56px;
  margin-bottom: 160px;
}

.course-hero {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0 60px;
  margin-bottom: 160px;
}

.course-hero__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.course-hero__title {
  margin: 0 0 20px;
  font-size: 70px;
  line-height: 1.1;
  color: var(--color-white);
}

.course-hero__subtitle {
  margin: 0 0 56px;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

.course-hero__features {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px 0;
  margin: 0 0 48px;
  padding: 0;
  list-style: none;
}

.course-hero__feature {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 12px;
  margin-top: 0;
  margin-bottom: 0;
  font-size: 16px;
  font-weight: 300;
  color: var(--color-text-base);
}

.course-hero__feature-icon {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.course-hero__button {
  -ms-flex-item-align: start;
  align-self: flex-start;
  margin-top: auto;
  -webkit-box-shadow: var(--shadow-glow-accent);
  box-shadow: var(--shadow-glow-accent);
}
.course-hero__button:hover {
  -webkit-box-shadow: var(--shadow-glow-accent-slim);
  box-shadow: var(--shadow-glow-accent-slim);
}

.course-hero__image {
  position: relative;
  overflow: hidden;
  border-radius: 0 0 0 24px;
}

.course-hero__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* --- Params --- */
.course-params {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 0 80px;
  max-width: 1040px;
  padding: 48px 0 80px;
  border-top: 1px solid rgba(var(--rgb-color-graphite-900), 0.5);
}

.course-params__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.course-params__price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
}

.course-params__label {
  margin-bottom: 16px;
  font-size: 18px;
  color: var(--color-text-base);
}

.course-params__value {
  font-size: 50px;
  font-weight: 600;
  line-height: 1;
  color: var(--color-accent);
}

.course-params__value_old {
  font-size: 50px;
  font-weight: 600;
  text-decoration: line-through;
  color: var(--color-text-base);
}

.course-params__sale {
  margin-top: 6px;
  font-size: 28px;
  font-weight: 600;
  color: var(--color-accent);
}

.course-params__value_accent {
  color: var(--color-accent);
}

/* --- Description --- */
.course-page .course-desc-section {
  margin-bottom: 160px;
}

.course-desc {
  position: relative;
  z-index: 1;
  padding: 40px 56px;
  border-radius: 0 40px;
  background-color: rgba(var(--rgb-color-graphite-900), 0.5);
  overflow: hidden;
}

.course-desc__text {
  max-width: 680px;
  margin: 0;
  font-size: 18px;
  line-height: 1.75;
  color: var(--color-text-base);
}

.course-desc__decor {
  position: absolute;
  z-index: -1;
  right: -20px;
  bottom: -60px;
  width: 260px;
  height: auto;
  opacity: 0.7;
}

/* --- About --- */
.course-page .course-about-section {
  margin-bottom: 160px;
}

.course-about {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0 80px;
}

.course-about__title {
  margin: 0 0 24px;
  font-size: 32px;
  line-height: 1.2;
  color: var(--color-white);
}

.course-about__text {
  margin: 0 0 16px;
  font-size: 16px;
  line-height: 1.7;
  color: var(--color-text-base);
}
.course-about__text:last-of-type {
  margin-bottom: 0;
}

.course-about__link {
  display: inline-block;
  margin-top: 20px;
  font-size: 16px;
  font-weight: 500;
  text-decoration: none;
  color: var(--color-accent);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.course-about__link:hover {
  opacity: 0.75;
}

/* --- Program --- */
.course-page .course-program-section {
  margin-bottom: 160px;
}

.course-program {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 60px 54px;
}

.course-program__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}

.course-program__number {
  font-size: 22px;
  font-weight: 600;
  color: var(--color-accent);
}

.course-program__title {
  margin: 0 0 16px;
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--color-white);
}

.course-program__text {
  margin: 0;
  font-size: 18px;
  line-height: 1.5;
  color: var(--color-text-base);
}

/* --- Equipment --- */
.course-page .course-equipment-section {
  margin-bottom: 160px;
}

.course-equipment__intro {
  margin: 0 0 48px;
  font-size: 22px;
  line-height: 1.6;
  color: var(--color-text-base);
}

.course-equipment__list {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 12px 24px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.course-equipment__item {
  position: relative;
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 20px;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-text-base);
}
.course-equipment__item::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  width: 6px;
  height: 6px;
  background-color: var(--color-accent);
}
.course-equipment__item .accent-intro {
  color: var(--color-white);
}

/* --- Features --- */
.course-page .learning-video-section {
  margin-bottom: 160px;
}

.course-page .course-features-section {
  margin-bottom: 160px;
}

.course-features {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 60px 64px;
}

.course-feature__title {
  margin: 0 0 28px;
  font-size: 36px;
  font-weight: 600;
  color: var(--color-accent);
}

.course-feature__text {
  margin: 0;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-text-base);
}

.course-page .course-enroll-section {
  margin-bottom: 160px;
}

.course-enroll {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 0 24px;
}

.course-enroll__title {
  margin: 0 0 70px;
  font-size: 50px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-white);
}

.course-enroll__params {
  display: grid;
  grid-template-columns: minmax(0, auto) minmax(0, auto);
  gap: 54px 56px;
  max-width: 580px;
  margin-bottom: 98px;
}

.course-enroll__param-label {
  display: block;
  margin-bottom: 8px;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-text-base);
}

.course-enroll__param-value {
  position: relative;
  display: inline-block;
  font-size: 36px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

.course-enroll__param-value_old {
  color: var(--color-text-base);
}

.course-enroll__param-value_old::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

.course-enroll__dates-title {
  margin: 0 0 18px;
  font-size: 18px;
  line-height: 1.6;
  color: var(--color-text-base);
}

.course-enroll__dates {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 14px 10px;
}

.course-enroll__date {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 13px 20px 11px;
  border: 1px solid #5c6066;
  border-radius: 0 12px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-text-base);
  background-color: transparent;
  cursor: pointer;
}

.course-enroll__date_active {
  color: var(--color-accent);
}

.course-enroll__form-wrap {
  padding: 50px 60px 52px;
  border-radius: 0 40px 0 40px;
  background-color: var(--color-accent);
}

.course-enroll__form-text {
  max-width: 423px;
  margin: 0 0 30px;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-black);
}

.course-enroll__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px 0;
}
.course-enroll__form .form-input {
  color: rgba(var(--rgb-color-black), 0.8);
}
.course-enroll__form .form-input__name {
  color: rgba(var(--rgb-color-black), 0.8);
}
.course-enroll__form .form-field__prompt {
  color: rgba(var(--rgb-color-black), 0.8);
}
.course-enroll__form .form-policy {
  margin-top: 10px;
}
.course-enroll__form .form-policy__control {
  border: 1px solid rgba(var(--rgb-color-black), 0.6);
}
.course-enroll__form .form-policy__ico {
  fill: var(--color-black);
}
.course-enroll__form .form-policy__text {
  color: rgba(var(--rgb-color-black), 0.9);
}
.course-enroll__form .form-policy__link {
  color: rgba(var(--rgb-color-black), 0.9);
}
.course-enroll__form .form-policy__link:hover {
  color: var(--color-black);
}

.course-enroll__submit {
  width: 100%;
  margin-top: 12px;
  padding: 26px 48px 22px;
  border: 1px solid var(--color-white);
  border-radius: 0 20px;
  font-size: 20px;
  color: var(--color-black) !important;
  -webkit-box-shadow: 0px 0px 80px 0px rgba(var(--rgb-color-accent), 0.5);
  box-shadow: 0px 0px 80px 0px rgba(var(--rgb-color-accent), 0.5);
}

.course-page .target-section,
.course-page .teacher-section {
  margin-bottom: 160px;
}

@media (max-width: 1200px) {
  .course-hero__title {
    font-size: 48px;
  }
  .course-params__value {
    font-size: 38px;
  }
  .course-about {
    gap: 0 56px;
  }
  .course-features {
    gap: 40px 60px;
  }
  .course-enroll__title {
    margin-bottom: 52px;
    font-size: 44px;
  }
  .course-enroll__params {
    gap: 44px 42px;
    margin-bottom: 72px;
  }
  .course-enroll__param-value {
    font-size: 32px;
  }
  .course-enroll__form-wrap {
    padding: 44px 40px 46px;
  }
  .course-enroll__form-text {
    font-size: 32px;
  }
}
@media (max-width: 1030px) {
  .course-page .course-hero-section {
    margin-top: 12px;
  }
  .course-hero {
    gap: 0 40px;
  }
  .course-hero__title {
    font-size: 40px;
  }
  .course-hero__subtitle {
    font-size: 18px;
    margin-bottom: 28px;
  }
  .course-hero__features {
    margin-bottom: 36px;
  }
  .course-params {
    gap: 0 48px;
    padding: 40px 0 64px;
  }
  .course-params__value {
    font-size: 32px;
  }
  .course-about {
    gap: 0 40px;
  }
  .course-about__title {
    font-size: 28px;
  }
  .course-equipment__list {
    gap: 14px 48px;
  }
  .course-features {
    gap: 36px 48px;
  }
  .course-enroll {
    grid-template-columns: minmax(0, 1fr);
    gap: 40px 0;
  }
  .course-enroll__content {
    max-width: 100%;
  }
  .course-enroll__title {
    margin-bottom: 42px;
    font-size: 40px;
  }
  .course-enroll__params {
    max-width: 100%;
    margin-bottom: 56px;
  }
  .course-enroll__form-text {
    max-width: 100%;
    margin-bottom: 24px;
    font-size: 28px;
  }
}
@media (max-width: 860px) {
  .course-hero {
    grid-template-columns: minmax(0, 1fr);
  }
  .course-hero__image {
    height: 340px;
  }
  .course-hero__content {
    padding-bottom: 40px;
  }
  .course-params {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 28px 40px;
    padding: 32px 0 52px;
  }
  .course-desc__text {
    max-width: 100%;
  }
  .course-about {
    grid-template-columns: minmax(0, 1fr);
    gap: 40px 0;
  }
  .course-equipment__list {
    gap: 14px 40px;
  }
  .course-features {
    gap: 32px 40px;
  }
  .course-enroll__title {
    font-size: 34px;
  }
  .course-enroll__params {
    gap: 36px 24px;
    margin-bottom: 44px;
  }
  .course-enroll__param-label,
  .course-enroll__dates-title {
    font-size: 16px;
  }
  .course-enroll__param-value {
    font-size: 30px;
  }
  .course-enroll__date {
    padding: 12px 16px 10px;
    font-size: 13px;
  }
  .course-enroll__form-wrap {
    padding: 36px 28px 40px;
    border-radius: 0 28px 0 28px;
  }
}
@media (max-width: 720px) {
  .course-hero__title {
    font-size: 34px;
  }
  .course-program {
    grid-template-columns: minmax(0, 1fr);
  }
  .course-features {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px 0;
  }
  .course-enroll__title {
    font-size: 30px;
  }
  .course-enroll__params {
    grid-template-columns: minmax(0, 1fr);
    gap: 26px 0;
    margin-bottom: 36px;
  }
  .course-enroll__form-text {
    font-size: 24px;
  }
}
@media (max-width: 640px) {
  .course-desc {
    padding: 32px 28px;
  }
  .course-equipment__list {
    grid-template-columns: minmax(0, 1fr);
  }
  .course-enroll__submit {
    padding: 22px 24px 18px;
    font-size: 18px;
  }
}
@media (max-width: 560px) {
  .course-page .course-hero-section {
    margin-top: 6px;
    margin-bottom: 90px;
  }
  .course-page .course-desc-section,
  .course-page .course-about-section,
  .course-page .course-program-section,
  .course-page .course-equipment-section,
  .course-page .learning-video-section,
  .course-page .course-features-section,
  .course-page .course-enroll-section,
  .course-page .target-section,
  .course-page .teacher-section {
    margin-bottom: 90px;
  }
  .course-hero {
    margin-bottom: 96px;
  }
  .course-hero__content {
    padding-bottom: 32px;
  }
  .course-hero__title {
    font-size: 30px;
    margin-bottom: 12px;
  }
  .course-hero__subtitle {
    font-size: 16px;
    margin-bottom: 24px;
  }
  .course-hero__features {
    gap: 12px 0;
    margin-bottom: 28px;
  }
  .course-params {
    gap: 24px 32px;
    padding: 28px 0 48px;
  }
  .course-params__label {
    margin-bottom: 10px;
    font-size: 16px;
  }
  .course-params__value {
    font-size: 28px;
  }
  .course-params__value_old {
    font-size: 22px;
  }
  .course-params__sale {
    font-size: 18px;
  }
  .course-about__title {
    font-size: 24px;
    margin-bottom: 16px;
  }
  .course-desc {
    padding: 24px 20px;
  }
  .course-desc__text {
    font-size: 16px;
    line-height: 1.6;
  }
  .course-enroll__title {
    margin-bottom: 28px;
    font-size: 28px;
  }
  .course-enroll__params {
    margin-bottom: 28px;
  }
  .course-enroll__param-value {
    font-size: 28px;
  }
  .course-enroll__dates-title {
    margin-bottom: 12px;
  }
  .course-enroll__dates {
    gap: 10px 8px;
  }
  .course-enroll__date {
    width: 100%;
  }
  .course-enroll__form-wrap {
    padding: 28px 20px 30px;
    border-radius: 0 20px 0 20px;
  }
  .course-enroll__form-text {
    margin-bottom: 18px;
    font-size: 20px;
  }
  .course-enroll__submit {
    margin-top: 10px;
    font-size: 16px;
  }
  .course-about {
    gap: 32px 0;
  }
  .course-about__text {
    margin-bottom: 12px;
    font-size: 16px;
    line-height: 1.6;
  }
  .course-about__link {
    margin-top: 16px;
    font-size: 15px;
  }
  .course-program {
    gap: 28px 0;
  }
  .course-program__number {
    font-size: 18px;
  }
  .course-program__title {
    margin-bottom: 12px;
    font-size: 18px;
  }
  .course-program__text {
    font-size: 16px;
    line-height: 1.6;
  }
  .course-equipment__intro {
    margin-bottom: 28px;
    font-size: 18px;
    line-height: 1.55;
  }
  .course-equipment__list {
    gap: 10px 0;
  }
  .course-equipment__item {
    padding-left: 16px;
    font-size: 16px;
    line-height: 1.55;
  }
  .course-equipment__item::before {
    top: 9px;
    width: 5px;
    height: 5px;
  }
  .course-feature__title {
    margin-bottom: 16px;
    font-size: 28px;
  }
  .course-feature__text {
    font-size: 16px;
    line-height: 1.55;
  }
}
@media (max-width: 480px) {
  .course-hero__title {
    font-size: 28px;
  }
  .course-hero__image {
    height: 260px;
  }
  .course-params {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px 0;
    padding: 24px 0 8px;
  }
  .course-hero {
    margin-bottom: 64px;
  }
  .course-page .course-hero-section,
  .course-page .course-desc-section,
  .course-page .course-about-section,
  .course-page .course-program-section,
  .course-page .course-equipment-section,
  .course-page .learning-video-section,
  .course-page .course-features-section,
  .course-page .course-enroll-section,
  .course-page .target-section,
  .course-page .teacher-section {
    margin-bottom: 64px;
  }
  .course-hero__features {
    margin-bottom: 24px;
  }
  .course-hero__button {
    width: 100%;
  }
  .course-program {
    gap: 24px 0;
  }
  .course-feature__title {
    margin-bottom: 14px;
    font-size: 24px;
  }
  .course-enroll__form-wrap {
    padding: 24px 16px 26px;
  }
  .course-enroll__form-text {
    font-size: 18px;
  }
}
/* #endregion */
/*_______ Courses Page _______*/
/* #region */
.courses-page .courses-section {
  overflow: hidden;
  margin-top: 56px;
  margin-bottom: 160px;
}

.courses-section__glow {
  position: absolute;
  z-index: 0;
  top: 7%;
  right: 0;
}

.courses-page-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 80px;
}

.courses-page-wrap .course-card.wide {
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
}

@media (max-width: 1200px) {
  .courses-page-wrap .course-card.wide {
    gap: 0 24px;
  }
}
@media (max-width: 1030px) {
  .courses-page .courses-section {
    margin-top: 12px;
    margin-bottom: 120px;
  }
  .courses-page-wrap {
    gap: 56px;
  }
  .courses-page-wrap .course-card.wide {
    gap: 0 12px;
  }
}
@media (max-width: 720px) {
  .courses-page-wrap .course-card.wide {
    grid-template-columns: minmax(0, 1fr);
    gap: 36px 0;
  }
}
@media (max-width: 560px) {
  .courses-page .courses-section {
    margin-top: 6px;
    margin-bottom: 90px;
  }
  .courses-page-wrap {
    gap: 32px;
  }
  .courses-page-wrap .course-card.wide {
    gap: 24px 0;
  }
  .courses-section__glow {
    top: 10%;
    width: 360px;
  }
}
/* #endregion */
/*_______ Learning Videos Carousel _______*/
/* #region */
.learning-video__controls {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 0 10px;
}

.learning-video__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 56px;
  height: 56px;
  border-radius: 0 20px;
  background-color: var(--color-accent);
  cursor: pointer;
  outline: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  z-index: 1;
}
.learning-video__nav svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 16px;
  height: 28px;
}

.learning-video__nav[aria-disabled="true"] {
  opacity: 0.2;
  cursor: auto;
  pointer-events: none;
}

.learning-video {
  height: 500px;
}

.learning-video__image {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 0 20px;
  overflow: hidden;
}
.learning-video__image .image_fade {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(var(--rgb-color-black), 0.7);
}

.learning-video__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.learning-video__play {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
  cursor: pointer;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 64px;
  height: 64px;
  border: 1px solid var(--color-accent);
  border-radius: 50%;
}
.learning-video__play .ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

@media (max-width: 1030px) {
  .learning-video__nav {
    width: 48px;
    height: 48px;
    border-radius: 0 14px;
  }
  .learning-video__nav svg {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 14px;
    height: 24px;
  }
}
@media (max-width: 960px) {
  .learning-video {
    height: 420px;
  }
}
@media (max-width: 480px) {
  .learning-video__nav {
    width: 42px;
    height: 42px;
  }
  .learning-video__nav svg {
    width: 11px;
    height: 20px;
  }
}
@media (max-width: 420px) {
  .learning-video {
    height: 460px;
  }
}
/* #endregion */
/*_______ Reviews Page _______*/
/* #region */
.reviews-page .reviews-students-section {
  margin-top: 24px;
}

.reviews-page .reviews-students-section,
.reviews-page .reviews-video-page-section,
.reviews-page .reviews-success-section {
  margin-bottom: 160px;
}

.reviews-students__controls,
.reviews-video__controls,
.reviews-success__controls {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 0 10px;
}

.reviews-students__nav,
.reviews-video__nav,
.reviews-success__nav {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 58px;
  height: 58px;
  border: 0;
  border-radius: 0 20px;
  background-color: var(--color-accent);
  cursor: pointer;
}
.reviews-students__nav svg,
.reviews-video__nav svg,
.reviews-success__nav svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 16px;
  height: 28px;
}

.reviews-students__nav.swiper-button-disabled,
.reviews-video__nav.swiper-button-disabled,
.reviews-success__nav.swiper-button-disabled,
.reviews-students__nav[aria-disabled="true"],
.reviews-video__nav[aria-disabled="true"],
.reviews-success__nav[aria-disabled="true"] {
  opacity: 0.2;
  cursor: auto;
  pointer-events: none;
}

.reviews-students-carousel,
.reviews-video-wrapper,
.reviews-success-carousel {
  position: relative;
}

.reviews-students-carousel .swiper,
.reviews-video-wrapper .swiper,
.reviews-success-carousel .swiper {
  padding-bottom: 44px;
}

.reviews-students__pagination,
.reviews-video-page__pagination,
.reviews-success__pagination {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  -webkit-transform: none;
  transform: none;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100% !important;
}

.reviews-students__pagination .swiper-pagination-bullet,
.reviews-video-page__pagination .swiper-pagination-bullet,
.reviews-success__pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  margin: 0 5px !important;
  border-radius: 50%;
  opacity: 1;
  background-color: rgba(var(--rgb-color-white), 0.2);
}

.reviews-students__pagination .swiper-pagination-bullet-active,
.reviews-video-page__pagination .swiper-pagination-bullet-active,
.reviews-success__pagination .swiper-pagination-bullet-active {
  background-color: var(--color-accent);
}

.reviews-student-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0 40px;
  height: auto;
  padding: 40px;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0 40px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: rgba(14, 26, 50, 0.5);
}

.reviews-student-card__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-bottom: 24px;
}

.reviews-student-card__avatar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 102px;
  height: 102px;
  border-radius: 50%;
  overflow: hidden;
}
.reviews-student-card__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.reviews-student-card__person {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px 0;
}

.reviews-student-card__name {
  margin: 0;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

.reviews-student-card__social {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 10px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  text-decoration: underline;
  color: var(--color-text-base);
}
.reviews-student-card__social:hover {
  color: var(--color-white);
  text-decoration: none;
}

.reviews-student-card__social-ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 16px;
  height: 16px;
}

.reviews-student-card__text {
  grid-column: 2/-1;
  margin: 0 0 20px;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  color: #dde1e9;
}

.reviews-student-card__more {
  grid-column: 2/-1;
  justify-self: start;
  margin-top: auto;
  padding: 0;
  border: 0;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  text-decoration: underline;
  color: var(--color-accent);
  background-color: transparent;
  cursor: pointer;
}
.reviews-student-card__more:hover {
  text-decoration: none;
}

.reviews-video {
  height: 502px;
}

.reviews-video__image {
  position: relative;
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 100%;
  border-radius: 0 20px;
  overflow: hidden;
}
.reviews-video__image .image_fade {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(var(--rgb-color-black), 0.7);
}

.reviews-video__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.reviews-video__play {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 2;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 66px;
  height: 66px;
  border: 1px solid var(--color-accent);
  border-radius: 50%;
  cursor: pointer;
}
.reviews-video__play .ico {
  width: 24px;
  height: 24px;
}

.reviews-success-card {
  padding: 40px;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0 40px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: rgba(14, 26, 50, 0.5);
}

.reviews-success-card__layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 30px 60px;
}

.reviews-success-card__left {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px 0;
}

.reviews-success-card__right {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px 0;
}

.reviews-success-card__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 28px 60px;
  grid-column: 1/-1;
}

.reviews-success-card__avatar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  overflow: hidden;
}
.reviews-success-card__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.reviews-success-card__person {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 0 28px;
}

.reviews-succes-card__author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 10px;
}

.reviews-success-card__name {
  margin: 0;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

.reviews-success-card__social {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 10px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  text-decoration: underline;
  color: var(--color-text-base);
}
.reviews-success-card__social:hover {
  color: var(--color-white);
  text-decoration: none;
}

.reviews-success-card__social-ico {
  width: 16px;
  height: 16px;
}

.reviews-success-card__course {
  grid-column: 1/-1;
  line-height: 1.32;
}

.reviews-success-card__course-label {
  font-size: 13px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-text-base);
}

.reviews-success-card__course-value {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: underline;
  color: var(--color-accent);
}

.reviews-success-card__part-title,
.reviews-success-card__review-title {
  margin: 0 0 10px;
  font-size: 22px;
  font-weight: 500;
  line-height: 1.5;
  color: var(--color-white);
}

.reviews-success-card__part-text,
.reviews-success-card__review-text {
  margin: 0;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-text-base);
}

.reviews-popup {
  display: none;
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(var(--rgb-color-base), 0.8);
  -webkit-backdrop-filter: blur(50px);
  backdrop-filter: blur(50px);
  overflow-y: auto;
  z-index: 12;
}

.reviews-popup__overlay {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 100%;
  padding: 20px;
}

.reviews-popup__content {
  position: relative;
  width: 760px;
  padding: 60px;
  border: 1px solid rgba(66, 79, 105, 0.2);
  border-radius: 0 40px;
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  background-color: var(--color-dark-700);
  overflow: visible;
}

.reviews-popup__switch {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 24px;
  height: 49px;
  padding: 0;
  border: 0;
  color: var(--color-accent);
  background-color: transparent;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  cursor: pointer;
}

.reviews-popup__switch_prev {
  left: -64px;
}

.reviews-popup__switch_next {
  right: -64px;
}

.reviews-popup__switch-ico {
  width: 24px;
  height: 49px;
}

.reviews-popup__close {
  position: absolute;
  top: 30px;
  right: 30px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 30px;
  height: 30px;
  padding: 0;
  border: 0;
  background-color: transparent;
  cursor: pointer;
}

.reviews-popup__close-ico {
  width: 30px;
  height: 30px;
}

.reviews-popup__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 30px;
  margin-bottom: 40px;
}

.reviews-popup__avatar {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 102px;
  height: 102px;
  border-radius: 50%;
  overflow: hidden;
}
.reviews-popup__avatar img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.reviews-popup__person {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px 0;
}

.reviews-popup__name {
  margin: 0;
  font-size: 32px;
  font-weight: 600;
  line-height: 1.15;
  color: var(--color-accent);
}

.reviews-popup__social {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 10px;
  font-size: 14px;
  font-weight: 300;
  line-height: 1.5;
  text-decoration: underline;
  color: var(--color-text-base);
}

.reviews-popup__social-ico {
  width: 16px;
  height: 16px;
}

.reviews-popup__text {
  margin: 0;
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-text-base);
}

@media (max-width: 1200px) {
  .reviews-student-card {
    height: auto;
    padding: 32px;
  }
  .reviews-success-card__name,
  .reviews-popup__name {
    font-size: 28px;
  }
}
@media (max-width: 1030px) {
  .reviews-page .reviews-students-section {
    margin-top: 12px;
  }
  .reviews-page .reviews-students-section,
  .reviews-page .reviews-video-page-section,
  .reviews-page .reviews-success-section {
    margin-bottom: 120px;
  }
  .reviews-students__nav,
  .reviews-video__nav,
  .reviews-success__nav {
    width: 48px;
    height: 48px;
    border-radius: 0 14px;
  }
  .reviews-students__nav svg,
  .reviews-video__nav svg,
  .reviews-success__nav svg {
    width: 14px;
    height: 24px;
  }
  .reviews-student-card {
    padding: 28px;
    border-radius: 0 28px;
  }
  .reviews-student-card__head {
    gap: 0 24px;
    margin-bottom: 24px;
  }
  .reviews-student-card__avatar {
    width: 86px;
    height: 86px;
  }
  .reviews-student-card__name {
    font-size: 22px;
  }
  .reviews-student-card__text {
    font-size: 17px;
  }
  .reviews-success-card {
    padding: 28px;
    border-radius: 0 28px;
  }
  .reviews-success-card__layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px 0;
  }
  .reviews-success-card__name,
  .reviews-popup__name {
    font-size: 24px;
  }
  .reviews-success-card__part-title,
  .reviews-success-card__review-title {
    font-size: 20px;
  }
  .reviews-success-card__part-text,
  .reviews-success-card__review-text {
    font-size: 17px;
  }
  .reviews-popup__content {
    padding: 56px 32px 36px;
    border-radius: 0 28px;
  }
  .reviews-popup__switch_prev {
    left: -36px;
  }
  .reviews-popup__switch_next {
    right: -36px;
  }
  .reviews-popup__switch,
  .reviews-popup__switch-ico {
    width: 20px;
    height: 40px;
  }
}
@media (max-width: 860px) {
  .reviews-video {
    height: 420px;
  }
  .reviews-popup__head {
    gap: 0 20px;
    margin-bottom: 24px;
  }
  .reviews-popup__avatar {
    width: 84px;
    height: 84px;
  }
  .reviews-popup__content {
    width: 100%;
    padding: 52px 44px 24px;
    border-radius: 0 20px;
  }
  .reviews-popup__switch_prev {
    left: 8px;
  }
  .reviews-popup__switch_next {
    right: 8px;
  }
  .reviews-popup__switch,
  .reviews-popup__switch-ico {
    width: 14px;
    height: 28px;
  }
  .reviews-popup__close {
    top: 14px;
    right: 14px;
    width: 24px;
    height: 24px;
  }
  .reviews-popup__close-ico {
    width: 24px;
    height: 24px;
  }
}
@media (max-width: 720px) {
  .reviews-students__controls,
  .reviews-video__controls,
  .reviews-success__controls {
    gap: 0 8px;
  }
  .reviews-student-card {
    padding: 24px 20px;
  }
  .reviews-student-card__name {
    font-size: 20px;
  }
  .reviews-student-card__text {
    font-size: 16px;
  }
  .reviews-success-card {
    padding: 24px 20px;
  }
  .reviews-success-card__head {
    grid-template-columns: minmax(0, 1fr);
    gap: 20px;
  }
  .reviews-success-card__avatar {
    width: 80px;
    height: 80px;
  }
  .reviews-success-card__name,
  .reviews-popup__name {
    font-size: 22px;
  }
  .reviews-success-card__part-title,
  .reviews-success-card__review-title {
    font-size: 18px;
  }
  .reviews-success-card__part-text,
  .reviews-success-card__review-text,
  .reviews-popup__text {
    font-size: 16px;
  }
}
@media (max-width: 560px) {
  .reviews-page .reviews-students-section {
    margin-top: 6px;
  }
  .reviews-page .reviews-students-section,
  .reviews-page .reviews-video-page-section,
  .reviews-page .reviews-success-section {
    margin-bottom: 90px;
  }
  .reviews-students-carousel .swiper,
  .reviews-video-wrapper .swiper,
  .reviews-success-carousel .swiper {
    padding-bottom: 34px;
  }
  .reviews-students__nav,
  .reviews-video__nav,
  .reviews-success__nav {
    width: 42px;
    height: 42px;
  }
  .reviews-students__nav svg,
  .reviews-video__nav svg,
  .reviews-success__nav svg {
    width: 11px;
    height: 20px;
  }
  .reviews-student-card {
    gap: 0 28px;
    padding: 20px 16px 24px;
    border-radius: 0 20px;
  }
  .reviews-student-card__head {
    gap: 0 16px;
    margin-bottom: 18px;
  }
  .reviews-student-card__avatar {
    width: 75px;
    height: 75px;
  }
  .reviews-student-card__person {
    gap: 10px 0;
  }
  .reviews-video {
    height: 460px;
  }
  .reviews-video__play {
    width: 56px;
    height: 56px;
  }
  .reviews-video__play .ico {
    width: 20px;
    height: 20px;
  }
  .reviews-success-card {
    padding: 20px 16px 24px;
    border-radius: 0 20px;
  }
  .reviews-success-card__layout {
    gap: 24px 0;
  }
  .reviews-success-card__left {
    gap: 24px 0;
  }
  .reviews-success-card__right {
    gap: 0;
  }
  .reviews-success-card__avatar {
    width: 72px;
    height: 72px;
  }
  .reviews-success-card__course-value {
    font-size: 15px;
  }
  .reviews-popup__overlay {
    padding: 12px;
  }
  .reviews-success-card__name,
  .reviews-popup__name {
    font-size: 20px;
  }
  .reviews-popup__head {
    gap: 0 18px;
    margin-bottom: 18px;
  }
  .reviews-popup__person {
    gap: 14px 0;
  }
  .reviews-popup__avatar {
    width: 74px;
    height: 74px;
  }
}
@media (max-width: 480px) {
  .reviews-page .reviews-students-section,
  .reviews-page .reviews-video-page-section,
  .reviews-page .reviews-success-section {
    margin-bottom: 80px;
  }
}
/* #endregion */
/*_______ Works Gallery _______*/
/* #region */
.works-gallery-wrap {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr);
  gap: 24px;
}

.work-study {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 220px;
  border-radius: 0 20px;
  cursor: pointer;
  overflow: hidden;
}

.work-study__img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}

.work-study:hover .work-study__img {
  -webkit-transform: scale(1.1);
  transform: scale(1.1);
}

@media (max-width: 1200px) {
  .works-gallery-wrap {
    gap: 20px;
  }
}
@media (max-width: 1200px) {
  .works-gallery-wrap {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  }
}
@media (max-width: 560px) {
  .works-gallery-wrap {
    grid-template-columns: minmax(0, 1fr);
  }
  .work-study {
    height: 240px;
  }
}
/* #endregion */
/*_______ Certificate _______*/
/* #region */
.cert-wrap {
  position: relative;
  z-index: 1;
  padding: 70px;
  border-radius: 0px 40px;
  background: rgba(var(--rgb-color-graphite-900), 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.cert-content {
  width: 500px;
}
.cert-content__title {
  margin-bottom: 28px;
  font-weight: 600;
  font-size: 50px;
  line-height: 1.15;
  color: var(--color-accent);
}

.cert-image {
  position: absolute;
  top: -58px;
  right: 120px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 281px;
  height: 398px;
}

.cert-img {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
  height: 100%;
}

@media (max-width: 1200px) {
  .cert-content__title {
    font-size: 44px;
  }
  .cert-image {
    right: 80px;
  }
}
@media (max-width: 1030px) {
  .cert-wrap {
    padding: 70px 60px;
  }
  .cert-content__title {
    font-size: 40px;
    margin-bottom: 24px;
  }
  .cert-image {
    top: -48px;
    right: 64px;
    width: 255px;
    height: 360px;
  }
}
@media (max-width: 860px) {
  .cert-wrap {
    padding: 48px 40px;
  }
  .cert-content {
    width: 440px;
  }
  .cert-content__title {
    font-size: 36px;
  }
  .cert-image {
    top: -30px;
    right: 36px;
    width: 230px;
    height: 300px;
  }
}
@media (max-width: 720px) {
  .cert-wrap {
    padding: 40px;
  }
  .cert-content {
    width: 100%;
    margin-bottom: 40px;
  }
  .cert-image {
    top: initial;
    right: initial;
    width: 250px;
    height: 320px;
    position: relative;
    margin-left: auto;
  }
}
@media (max-width: 560px) {
  .cert-image {
    margin-right: auto;
    margin-left: auto;
  }
}
@media (max-width: 480px) {
  .cert-wrap {
    margin-left: -16px;
    margin-right: -16px;
    padding: 28px 16px 36px;
    border-radius: 0;
  }
  .cert-content__title {
    font-size: 32px;
  }
  .cert-image {
    width: 100%;
    height: initial;
  }
}
/* #endregion */
/*_______ FAQ _______*/
/* #region */
.main-page-wrap .faq-section {
  margin-bottom: 170px;
}

.faq-section .section-header {
  margin-bottom: 56px;
}

.faq-items {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 36px 56px;
}

.faq-item__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.4;
  color: var(--color-accent);
  cursor: pointer;
}
.faq-item__title span {
  padding-right: 10px;
}

.faq-item__control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  margin-left: auto;
}

.faq-item__ico {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 24px;
  height: 24px;
}

.faq-item__content {
  display: none;
  margin-top: 28px;
}

.faq-item__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  max-width: 480px;
  width: 100%;
  padding: 0 0 8px;
  font-size: 18px;
  line-height: 1.5;
  color: var(--color-text-base);
}

.faq-item__text p {
  margin: 0 0 12px;
}
.faq-item__text p:last-child {
  margin: 0;
}

.faq-item_open .faq-item__content {
  display: block;
}

.faq-item.faq-item_open {
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}

.faq-item_open .faq-item__ico {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}

@media (max-width: 1200px) {
  .faq-item__title {
    font-size: 24px;
  }
  .faq-item__ico {
    width: 20px;
    height: 20px;
  }
  .faq-item__control {
    width: 32px;
    height: 32px;
  }
  .faq-item__content {
    margin-top: 24px;
  }
  .faq-items {
    gap: 32px 56px;
  }
}
@media (max-width: 1030px) {
  .main-page-wrap .faq-section {
    margin-bottom: 140px;
  }
  .faq-section .section-header {
    margin-bottom: 48px;
  }
}
@media (max-width: 860px) {
  .main-page-wrap .faq-section {
    margin-bottom: 110px;
  }
  .faq-items {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 860px) {
  .faq-section .section-header {
    margin-bottom: 40px;
  }
}
@media (max-width: 560px) {
  .main-page-wrap .faq-section {
    margin-bottom: 90px;
  }
  .faq-item__title {
    font-size: 22px;
  }
  .faq-item__control {
    width: 30px;
    height: 30px;
  }
  .faq-item__ico {
    width: 18px;
    height: 18px;
  }
}
@media (max-width: 480px) {
  .faq-section .section-header {
    margin-bottom: 36px;
  }
  .faq-items {
    gap: 28px 0;
  }
  .faq-item__title {
    font-size: 20px;
  }
  .faq-item__control {
    width: 28px;
    height: 28px;
  }
  .faq-item__ico {
    width: 16px;
    height: 16px;
  }
  .faq-item__content {
    margin-top: 20px;
  }
  .faq-item__text {
    font-size: 17px;
  }
}
/* #endregion */
/*_______ Faq Promo _______*/
/* #region */
.faq-promo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 500px;
  border-radius: 0 40px;
  overflow: hidden;
}

.faq-promo__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

@media (max-width: 1200px) {
  .faq-promo {
    height: 450px;
  }
}
@media (max-width: 1030px) {
  .faq-promo {
    height: 380px;
  }
}
@media (max-width: 860px) {
  .faq-promo {
    height: 340px;
  }
}
@media (max-width: 560px) {
  .faq-promo {
    height: 320px;
  }
}
/* #endregion */
/*_______ Contacts Promo _______*/
/* #region */
.contacts-promo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: 500px;
  border-radius: 0 40px;
  margin-bottom: 160px;
  overflow: hidden;
}

.contacts-promo__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.contacts-bg-shape-right {
  position: absolute;
  z-index: 0;
  bottom: 20%;
  right: 0;
}

@media (max-width: 1200px) {
  .contacts-bg-shape-right {
    bottom: 32%;
    width: 410px;
    height: 484px;
  }
}
@media (max-width: 1030px) {
  .contacts-bg-shape-right {
    bottom: 30%;
    width: 320px;
    height: 378px;
  }
}
@media (max-width: 640px) {
  .contacts-bg-shape-right {
    bottom: 56%;
    width: 210px;
    height: 280px;
  }
}
@media (max-width: 480px) {
  .contacts-bg-shape-right {
    bottom: 60%;
    width: 190px;
    height: 240px;
  }
}
@media (max-width: 1200px) {
  .contacts-promo {
    height: 450px;
  }
}
@media (max-width: 1030px) {
  .contacts-promo {
    height: 380px;
    margin-bottom: 140px;
  }
}
@media (max-width: 860px) {
  .contacts-promo {
    height: 340px;
    margin-bottom: 120px;
  }
}
@media (max-width: 560px) {
  .contacts-promo {
    height: 320px;
    margin-bottom: 90px;
  }
}
/* #endregion */
/*_______ Contacts _______*/
/* #region */
.contacts-section {
  position: relative;
  margin-bottom: 100px;
  background-color: var(--color-base);
}
.contacts-section .section-header {
  margin-bottom: 56px;
}
.contacts-section .section-header__title {
  color: var(--color-white);
}

.contacts-wrap {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: 40px 320px;
}

.contacts {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 28px;
}

.contacts-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px 0;
  line-height: 1.5;
}

.contacts-item__title {
  font-size: 18px;
  color: var(--color-text-base);
}

.contacts-item__note {
  margin-top: 10px;
  font-size: 18px;
  color: var(--color-text-base);
}

.contacts-item__info {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 20px;
  font-size: 28px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  color: var(--color-accent);
}
.contacts-item__info:hover {
  text-decoration: none;
  color: var(--color-accent);
}

.contacts-item__info .contact-ico {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.contacts-item__info .contact-ico svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 34px;
  height: 34px;
}

.contacts-map {
  width: 100%;
  height: 250px;
  border-radius: 0 40px;
  border: 1px solid var(--color-red);
  overflow: hidden;
}
.contacts-map .map {
  width: 100%;
  height: 100%;
}

@media (max-width: 1200px) {
  .contacts-wrap {
    grid-template-columns: 360px minmax(0, 1fr);
    gap: 40px 120px;
  }
}
@media (max-width: 1030px) {
  .contacts-section .section-header {
    margin-bottom: 48px;
  }
  .contacts-wrap {
    grid-template-columns: 340px minmax(0, 1fr);
    gap: 40px 60px;
  }
}
@media (max-width: 860px) {
  .contacts-section .section-header {
    margin-bottom: 40px;
  }
  .contacts-wrap {
    grid-template-columns: minmax(0, 1fr);
  }
  .contacts-item__note {
    margin-top: 4px;
  }
  .contacts-map {
    height: 280px;
    margin-top: 16px;
  }
}
@media (max-width: 560px) {
  .contacts-page .contacts-section {
    padding-top: 24px;
    padding-bottom: 68px;
  }
  .contacts-wrap {
    gap: 28px 0;
  }
  .contacts {
    gap: 24px;
  }
  .contacts-item {
    gap: 8px 0;
  }
  .contacts-item__title {
    font-size: 16px;
  }
  .contacts-item__info {
    gap: 0 12px;
    font-size: 24px;
  }
  .contacts-item__info .contact-ico svg {
    width: 30px;
    height: 32px;
  }
  .contacts-item__note {
    font-size: 16px;
  }
}
@media (max-width: 480px) {
  .contacts-section {
    margin-bottom: 60px;
  }
  .contacts-section .section-header {
    margin-bottom: 36px;
  }
  .contacts-item__info {
    font-size: 22px;
  }
  .contacts-map {
    height: 260px;
  }
}
/* #endregion */
/*_______ Contacts Page _______*/
/* #region */
.contacts-page .contacts-section {
  overflow: hidden;
}

.contacts-page .contacts-section {
  margin-bottom: 0;
  padding-top: 48px;
  padding-bottom: 100px;
  overflow: hidden;
}

.contacts-section__glow {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
}

.contacts-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.contacts-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 40px;
  padding: 40px;
  border-radius: 0 40px;
  background-color: rgba(var(--rgb-color-graphite-900), 0.5);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.contacts-card__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}

.contacts-card__title {
  font-size: 18px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-text-base);
}

.contacts-card__info {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  font-size: 24px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  color: var(--color-accent);
}
.contacts-card__info:hover {
  text-decoration: none;
  color: var(--color-accent);
}

.contacts-card__ico {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.contacts-card__ico svg {
  width: 24px;
  height: 24px;
}

.contacts-card__note {
  font-size: 12px;
  font-weight: 300;
  line-height: 1.5;
  color: var(--color-text-muted);
}

.contacts-page-map {
  width: 100%;
  height: 500px;
  margin-top: 24px;
  border-radius: 0 40px;
  overflow: hidden;
}
.contacts-page-map .map {
  width: 100%;
  height: 100%;
}

@media (max-width: 1200px) {
  .contacts-cards {
    gap: 20px;
  }
  .contacts-card {
    gap: 32px;
    padding: 32px;
  }
}
@media (max-width: 1030px) {
  .contacts-card {
    gap: 28px;
    padding: 28px;
  }
  .contacts-card__info {
    gap: 16px;
    font-size: 22px;
  }
  .contacts-page-map {
    height: 420px;
  }
}
@media (max-width: 860px) {
  .contacts-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .contacts-page-map {
    height: 360px;
  }
}
@media (max-width: 640px) {
  .contacts-cards {
    grid-template-columns: minmax(0, 1fr);
  }
  .contacts-card {
    gap: 24px;
    padding: 24px;
  }
  .contacts-page-map {
    height: 300px;
  }
}
@media (max-width: 560px) {
  .contacts-card__info {
    gap: 12px;
    font-size: 20px;
  }
  .contacts-card__ico svg {
    width: 22px;
    height: 22px;
  }
  .contacts-section__glow {
    top: 15%;
    width: 320px;
  }
}
@media (max-width: 480px) {
  .contacts-card {
    padding: 20px;
  }
  .contacts-card__title {
    font-size: 16px;
  }
  .contacts-card__info {
    font-size: 18px;
  }
  .contacts-page-map {
    height: 260px;
    margin-top: 16px;
  }
}
/* #endregion */
/*_______ Content Offer _______*/
/* #region */
.content-offer-section {
  margin-bottom: 120px;
}
.content-offer-section .section-wrapper {
  max-width: 1440px;
}

.content-offer {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  background-color: #fff;
}

.content-offer__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 100px 110px 140px;
}

.content-offer__title {
  margin-bottom: 20px;
  font-size: 48px;
  font-weight: 300;
  line-height: 1.2;
  color: var(--color-black);
}

.content-offer__text {
  margin-bottom: 50px;
  font-size: 24px;
  font-weight: 300;
  line-height: 1.4;
  color: var(--color-black);
  opacity: 0.6;
}

.content-offer-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}

.content-offer__image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.content-offer__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

@media (max-width: 1200px) {
  .content-offer-section {
    margin-bottom: 80px;
  }
  .content-offer__info {
    padding: 36px 40px 56px;
  }
  .content-offer__title {
    font-size: 40px;
  }
  .content-offer__text {
    font-size: 20px;
  }
}
@media (max-width: 1030px) {
  .content-offer__title {
    font-size: 36px;
  }
}
@media (max-width: 860px) {
  .content-offer-section {
    margin-bottom: 40px;
  }
  .content-offer {
    grid-template-columns: 1fr;
    gap: 24px 0;
  }
  .content-offer__info {
    padding: 32px 32px 44px;
  }
  .content-offer__image {
    height: 420px;
  }
}
@media (max-width: 560px) {
  .content-offer-section {
    margin-top: 20px;
    margin-bottom: 32px;
  }
  .content-offer {
    gap: 20px;
    margin-right: -16px;
    margin-left: -16px;
  }
  .content-offer__info {
    padding: 28px 16px 36px;
    border-radius: 0;
  }
  .content-offer__title {
    margin-bottom: 22px;
    font-size: 30px;
  }
  .content-offer__text {
    font-size: 18px;
  }
  .content-offer__image {
    height: 340px;
    border-radius: 0;
  }
}
/* #endregion */
/*_______ Content _______*/
/* #region */
.content-section {
  margin-top: 40px;
  margin-bottom: 120px;
}

.content-module {
  font-size: 18px;
  line-height: 1.7;
  color: var(--color-text-base);
}
.content-module h2,
.content-module h3,
.content-module h4,
.content-module h5,
.content-module h6 {
  color: var(--color-white);
}
.content-module h2 {
  margin-top: 48px;
}
.content-module h2:first-child {
  margin-top: 0;
}
.content-module h3 {
  margin-top: 40px;
}
.content-module h4 {
  margin-top: 36px;
}
.content-module h5 {
  margin-top: 32px;
}
.content-module h6 {
  margin-top: 28px;
}
.content-module a {
  color: var(--color-accent);
  text-decoration: underline;
  text-underline-offset: 3px;
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.content-module a:hover {
  color: rgba(var(--rgb-color-accent), 0.8);
}
.content-module strong {
  color: var(--color-white);
}
.content-module img {
  display: block;
  width: 100%;
  border-radius: 0 20px;
}
.content-module p > img {
  -o-object-fit: cover;
  object-fit: cover;
  padding-top: 16px;
  margin-bottom: 12px;
}
.content-module p:first-child > img {
  padding-top: 1px;
}
.content-module p ~ img {
  padding-top: 16px;
  margin-bottom: 12px;
  -o-object-fit: cover;
  object-fit: cover;
}

.content-module p > img + .content-image__caption {
  display: block;
  margin-top: 8px;
  margin-bottom: 24px;
  font-size: 14px;
  line-height: 1.4;
  color: #9299a5;
}

@media (max-width: 1030px) {
  .content-section {
    margin-bottom: 80px;
  }
}
@media (max-width: 860px) {
  .content-side {
    display: none;
  }
}
@media (max-width: 560px) {
  .content-section {
    margin-top: 32px;
  }
  .content-module {
    font-size: 16px;
  }
  .content-module p > img {
    padding-top: 12px;
    margin-bottom: 10px;
  }
  .content-module p ~ img {
    padding-top: 12px;
    margin-bottom: 10px;
  }
  .content-module p > img + .content-image__caption {
    margin-top: 6px;
    margin-bottom: 20px;
    font-size: 13px;
  }
}
/* #endregion */
/*_______ Content Carousel _______*/
/* #region */
.content-carousel {
  position: relative;
  padding-top: 12px;
  padding-bottom: 24px;
}

.content-carousel + h2,
.content-carousel + h3,
.content-carousel + h4 {
  margin-top: 10px;
}

.content-carousel__slide {
  width: 100% !important;
}

.content-carousel__title {
  font-size: 14px;
  line-height: 1.3;
  overflow-wrap: anywhere;
  word-break: normal;
}

.content-carousel__image {
  width: 100%;
  height: 480px;
  margin-bottom: 8px;
  border-radius: 4px 4px 0 4px;
  overflow: hidden;
}

.content-carousel__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.content-carousel__sum {
  position: absolute;
  right: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  height: 40px;
  padding: 4px 0 4px 10px;
  border-radius: 4px 0 4px 0;
  color: var(--color-text-base);
  background-color: var(--color-black);
  z-index: 1;
}

.content-carousel__total {
  width: auto;
  margin-right: 5px;
  font-size: 16px;
  line-height: 1.5;
}

.content-carousel__navs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.content-carousel__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  cursor: pointer;
  outline: 0;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

@media (max-width: 1030px) {
  .content-carousel__image {
    height: 410px;
  }
}
@media (max-width: 860px) {
  .content-carousel__image {
    height: 380px;
  }
}
@media (max-width: 560px) {
  .content-section {
    margin-bottom: 60px;
  }
  .content-carousel {
    padding-top: 8px;
    padding-bottom: 16px;
  }
  .content-carousel__image {
    height: 320px;
  }
}
@media (max-width: 480px) {
  .content-carousel__image {
    height: 240px;
  }
}
/* #endregion */
/*_______ Articles Page _______*/
/* #region */
.articles-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 48px;
}

.articles-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 20px 11px;
  border: 1px solid var(--color-text-muted);
  border-radius: 0 12px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-text-muted);
  background-color: transparent;
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
  cursor: pointer;
}
.articles-tag:hover {
  border-color: var(--color-accent);
  color: var(--color-accent);
}

.articles-tag_active {
  border-color: var(--color-accent);
  color: var(--color-black);
  background-color: var(--color-accent);
}
.articles-tag_active:hover {
  color: var(--color-black);
  background-color: rgba(var(--rgb-color-accent), 0.8);
}

.articles-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px 24px;
}

.article-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  border-radius: 0 28px;
  text-decoration: none;
  color: var(--color-text-base);
  background-color: rgba(var(--rgb-color-graphite-900), 0.5);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
  cursor: pointer;
}
.article-card:hover {
  text-decoration: none;
}
.article-card:hover .article-card__img {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.article-card__image {
  position: relative;
  overflow: hidden;
  border-radius: 0 20px;
  margin-bottom: 20px;
}

.article-card__img {
  display: block;
  width: 100%;
  height: 220px;
  -o-object-fit: cover;
  object-fit: cover;
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition:
    transform 0.3s ease,
    -webkit-transform 0.3s ease;
}

.article-card__tag {
  position: absolute;
  top: 12px;
  left: 12px;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 8px 14px 7px;
  border-radius: 0 8px;
  font-family: var(--fontHead);
  font-size: 12px;
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-black);
  background-color: var(--color-accent);
}

.article-card__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 16px;
  margin-bottom: 10px;
  font-size: 14px;
  line-height: 1.4;
  color: var(--color-text-base);
}

.article-card__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 0 20px 28px;
}

.article-card__views {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 6px;
}

.article-card__views-icon {
  display: block;
  width: 16px;
  height: 16px;
}

.article-card__title {
  margin: 0;
  font-family: var(--font);
  font-size: 22px;
  font-weight: 500;
  line-height: 1.4;
  color: var(--color-white);
}

@media (max-width: 1030px) {
  .articles-tags {
    margin-bottom: 40px;
  }
}
@media (max-width: 860px) {
  .articles-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .articles-tags {
    margin-bottom: 36px;
  }
  .article-card__title {
    font-size: 18px;
  }
}
@media (max-width: 560px) {
  .articles-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .articles-tags {
    gap: 8px;
    margin-bottom: 32px;
  }
  .articles-tag {
    padding: 10px 16px 9px;
    font-size: 12px;
  }
}
@media (max-width: 480px) {
  .article-card__img {
    height: 200px;
  }
}
/* #endregion */
/*_______ Article Page _______*/
/* #region */
.article-section {
  margin-top: 24px;
  margin-bottom: 120px;
}

.article-section__glow {
  position: absolute;
  z-index: 0;
  top: -4%;
  right: 0;
}

.article-layout {
  display: grid;
  grid-template-columns: minmax(0, 894px) 282px;
  gap: 40px 24px;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.article-header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px;
  grid-column: 1/-1;
  max-width: 894px;
}

.article-header h1 {
  margin: 0 !important;
}

.article-info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  font-size: 14px;
  line-height: 1.5;
  color: var(--color-text-base);
}

.article-info__backward {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  padding: 12px 20px 10px;
  border: 1px solid var(--color-gray-600);
  border-radius: 0 12px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--color-text-soft);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.article-info__backward:hover {
  border-color: var(--color-white);
  color: var(--color-white);
  text-decoration: none;
}

.article-info__backward-ico {
  width: 8px;
  height: 16px;
}

.article-info__backward-text {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
}

.article-info__category {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 20px 10px;
  border-radius: 0 8px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-base);
  background-color: var(--color-accent);
}

.article-info__date,
.article-info__views-value {
  font-weight: 300;
}

.article-info__views {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 5px;
}

.article-info__views-ico {
  width: 16px;
  height: 16px;
}

.article-wrap {
  max-width: 894px;
}

.article-side-content {
  position: sticky;
  top: 124px;
}

.scrollable {
  overflow-y: auto;
}

.article-toc {
  padding-top: 30px;
  border-top: 1px solid #2b323e;
}

.article-toc__head {
  margin-bottom: 20px;
  font-size: 16px;
  line-height: 1;
  color: var(--color-accent);
}

.article-toc__list,
.article-toc .toc-list {
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
}

.article-toc__list_level-1,
.article-toc .toc-list.level-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px;
}

.article-toc__list_level-2,
.article-toc .toc-list.level-3,
.article-toc .toc-list.level-4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 10px;
}

.article-toc .toc-list.level-4 {
  margin-top: -2px;
  padding-left: 8px;
}

.article-toc__item,
.article-toc .toc-item {
  margin: 0;
  padding: 0;
}

.article-toc__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  text-decoration: none;
  color: var(--color-text-base);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.article-toc__link:hover {
  color: var(--color-white);
  text-decoration: none;
}

.article-toc__link_level-1,
.article-toc .title.level-2 {
  font-size: 14px;
  font-weight: 600;
  line-height: 1.4;
}

.article-toc__link_level-2,
.article-toc .title.level-3,
.article-toc .title.level-4 {
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
}

.article-toc__link_active {
  color: var(--color-white);
}

.article-toc__link_active .title {
  color: var(--color-white);
}

.content-module {
  margin-bottom: 60px;
  color: var(--color-text-base);
}

.content-module .table-wrapper {
  width: 100%;
  margin-top: 0;
  margin-bottom: 0;
  overflow-x: auto;
}

.content-module table {
  min-width: 894px;
}

.content-module th,
.content-module td {
  border-left: none;
  vertical-align: top;
  background-color: transparent;
}

.content-module th + th,
.content-module td + td {
  border-left: 1px solid var(--color-text-muted);
}

.content-module th {
  padding-top: 0;
  padding-bottom: 10px;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.35;
  color: var(--color-text-base);
}

.content-module td {
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-base);
}

.content-module tbody td:first-child,
.content-module tbody td:last-child {
  font-weight: 600;
}

.content-module tr:last-child td {
  border-bottom: none;
}

.article-content__lead {
  margin-bottom: 60px;
}

.article-content__image-box {
  margin-top: 60px;
  margin-bottom: 60px;
}

.article-content__image {
  display: block;
  width: 100%;
  border-radius: 0 40px;
}

.article-content__image_secondary {
  border-radius: 0 20px;
}

.content-module hr {
  width: 100%;
  height: 1px;
  margin: 56px 0 60px;
  border: none;
  background-color: var(--color-graphite-700);
}

.content-module .form-callback__messager {
  text-decoration: none;
  color: var(--color-black);
}
.content-module .form-callback__messager:hover {
  border: 1px solid var(--color-base);
  color: var(--color-base);
  background-color: transparent;
}

.article-content__consultation {
  margin-top: 60px;
  margin-bottom: 60px;
}

.article-author {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  padding-top: 40px;
  border-top: 1px solid var(--color-graphite-700);
}

.article-author__image {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: linear-gradient(135deg, rgba(var(--rgb-color-accent), 0.28) 0%, rgba(var(--rgb-color-white), 0.08) 100%);
}

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

.article-author__initials {
  font-family: var(--fontHead);
  font-size: 22px;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-white);
}

.article-author__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 6px;
}

.article-author__name {
  font-size: 22px;
  font-weight: 600;
  line-height: 1.3;
  color: var(--color-white);
}

.article-author__link {
  font-size: 14px;
  line-height: 1.4;
  text-decoration: underline;
  color: var(--color-text-base);
}
.article-author__link:hover {
  color: var(--color-white);
  text-decoration: none;
}

.article-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-top: 56px;
}

.article-nav__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 8px;
  max-width: 48%;
  width: 280px;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.35;
  text-decoration: none;
  color: var(--color-text-base);
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.article-nav__link:hover {
  color: var(--color-white);
}

.article-nav__image {
  display: block;
  width: 100%;
  aspect-ratio: 16/10;
  overflow: hidden;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.06);
}
.article-nav__img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.article-nav__label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  gap: 4px;
  color: var(--color-accent);
}
.article-nav__label svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.article-nav__prev {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  text-align: left;
}

.article-nav__next {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  margin-left: auto;
  text-align: right;
}

.article-similar-section {
  margin-bottom: 100px;
}

.article-similar__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  margin-bottom: 32px;
}

.article-similar__title {
  margin: 0;
}

.article-similar-carousel__controls {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
}

.article-similar-carousel__nav {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 58px;
  height: 58px;
  border-radius: 0 20px;
  background-color: var(--color-accent);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
  cursor: pointer;
}
.article-similar-carousel__nav:hover {
  border-color: var(--color-white);
}

.article-similar-carousel__nav svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 16px;
  height: 28px;
}

.article-similar-carousel__nav.swiper-button-disabled {
  opacity: 0.3;
  pointer-events: none;
  cursor: default;
}

.article-similar-section .article-card__image {
  height: 216px;
}

@media (max-width: 1200px) {
  .article-layout {
    grid-template-columns: minmax(0, 1fr) 260px;
  }
}
@media (max-width: 1030px) {
  .article-section {
    margin-top: 12px;
    margin-bottom: 80px;
  }
  .article-layout {
    gap: 36px 24px;
  }
  .article-info {
    margin-bottom: 16px;
  }
  .article-content__lead,
  .article-content__image-box,
  .article-content__consultation {
    margin-bottom: 48px;
  }
  .content-module th,
  .content-module td {
    padding-right: 20px;
    padding-left: 20px;
  }
  .content-module hr {
    margin: 48px 0 48px;
  }
  .article-author {
    margin-top: 48px;
    padding-top: 32px;
  }
  .article-similar-section {
    margin-bottom: 80px;
  }
}
@media (max-width: 860px) {
  .article-layout {
    grid-template-columns: minmax(0, 1fr);
    gap: 28px 0;
  }
  .article-side {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    margin-bottom: 12px;
  }
  .article-wrap {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
  .article-side-content {
    position: static;
  }
  .article-toc {
    padding-top: 24px;
  }
  .article-similar__header {
    margin-bottom: 28px;
  }
}
@media (max-width: 720px) {
  .article-info {
    gap: 12px;
  }
  .article-info__backward,
  .article-info__category {
    padding: 10px 16px 8px;
    font-size: 12px;
  }
  .article-author {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .article-similar__header {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
}
@media (max-width: 560px) {
  .article-section {
    margin-top: 6px;
  }
  .article-section__glow {
    top: 1%;
  }
  .article-info {
    gap: 12px;
    margin-bottom: 0;
  }
  .article-info__backward {
    gap: 8px;
    padding: 10px 16px 7px;
  }
  .article-info__backward-ico {
    width: 8px;
    height: 14px;
  }
  .article-info__category {
    padding: 10px 16px 7px;
  }
  .article-toc__head {
    margin-bottom: 20px;
  }
  .article-content__lead,
  .article-content__image-box,
  .article-content__consultation {
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .content-module table {
    min-width: 760px;
    font-size: 14px;
  }
  .content-module th,
  .content-module td {
    padding: 20px 16px;
  }
  .content-module th {
    padding-top: 0;
    padding-bottom: 10px;
    font-size: 14px;
  }
  .content-module td {
    font-size: 14px;
  }
  .content-module hr {
    margin: 44px 0 36px;
  }
  .article-author {
    gap: 16px;
    margin-top: 40px;
    padding-top: 28px;
  }
  .article-author__image {
    width: 64px;
    height: 64px;
  }
  .article-author__initials {
    font-size: 18px;
  }
  .article-author__name {
    font-size: 18px;
  }
  .article-author__link {
    font-size: 14px;
  }
  .article-nav {
    margin-top: 48px;
  }
  .article-similar-carousel__controls {
    gap: 12px;
  }
  .article-similar-carousel__nav {
    width: 44px;
    height: 44px;
  }
  .article-similar-carousel__nav svg {
    width: 12px;
    height: 24px;
  }
}
@media (max-width: 480px) {
  .article-toc {
    padding-top: 20px;
  }
  .article-toc__list_level-1 {
    gap: 16px;
  }
  .article-similar-section .article-card__image {
    height: 200px;
  }
}
/* #endregion */
/*_______ Footer _______*/
/* #region */
.footer-section {
  padding-top: 40px;
  padding-bottom: 60px;
  background-color: var(--color-base);
}

.height-fullscreen footer {
  margin-top: auto;
}

.footer-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  gap: 40px 72px;
  margin-bottom: 110px;
}

.footer-logo {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  display: grid;
  grid-template-columns: 36px 188px;
  gap: 7px 12px;
}
.footer-logo__img {
  width: 35px;
  height: 43px;
}
.footer-logo__site {
  -ms-flex-item-align: center;
  align-self: center;
  font-family: var(--fontHead);
  font-weight: 700;
  font-size: 28px;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-white);
}
.footer-logo__site .accent {
  padding-left: 6px;
  color: var(--color-accent);
}
.footer-logo__text {
  grid-column: span 2;
  width: 100%;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.4;
  color: var(--color-text-base);
  -webkit-transition: var(--transition-value);
  transition: var(--transition-value);
}
.footer-logo:hover {
  opacity: 0.8;
}

.footer-nav {
  display: grid;
  grid-template-columns: repeat(3, minmax(160px, -webkit-max-content));
  grid-template-columns: repeat(3, minmax(160px, max-content));
  gap: 36px 28px;
}

.footer-nav__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  line-height: 1.4;
}

.footer-nav-head {
  margin-bottom: 20px;
}
.footer-nav-head__link {
  font-size: 28px;
  font-weight: 600;
  line-height: 1.4;
  text-decoration: none;
  color: var(--color-accent);
}
.footer-nav-head__link:hover {
  text-decoration: none;
  color: var(--color-accent);
  opacity: 0.8;
}

.footer-nav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
  gap: 10px 0;
}
.footer-nav__link {
  font-size: 16px;
  font-weight: 300;
  line-height: 1.4;
  text-decoration: none;
  color: var(--color-text-soft);
}
.footer-nav__link:hover {
  text-decoration: none;
  color: var(--color-white);
}

.footer-contacts__socnet {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  gap: 0 15px;
  padding: 12px 20px 11px;
  border: 1px solid var(--color-gray-600);
  border-radius: 0 12px;
  font-family: var(--fontHead);
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  color: var(--color-text-base);
}
.footer-contacts__socnet .ico-tg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
}

.footer-contacts__socnet:hover {
  border: 1px solid var(--color-white);
  color: var(--color-white);
}
.footer-contacts__socnet:hover .ico-tg {
  fill: var(--color-white);
}

.footer-sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 16px 0;
}

.footer-sub-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 50px;
}

.footer-sub__link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0 10px;
  text-decoration: none;
  color: var(--color-white);
}
.footer-sub__link .ico-link {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  flex-shrink: 0;
}
.footer-sub__link .ico-link svg {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
.footer-sub__link:hover {
  text-decoration: none;
  color: var(--color-white);
  opacity: 0.8;
}

.footer-sub__label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-left: auto;
  padding: 12px 20px;
  border: 1px solid var(--color-text-muted);
  border-radius: 0px 12px;
  font-family: var(--fontHead);
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  text-transform: uppercase;
  color: var(--color-text-muted);
}

.footer-company {
  color: var(--color-text-base);
}

.footer-copyright {
  margin-top: 52px;
  font-size: 16px;
  color: var(--color-text-base);
}

@media (max-width: 1200px) {
  .footer-box {
    gap: 40px 52px;
  }
  .footer-logo {
    grid-template-columns: 34px 165px;
    gap: 7px 8px;
  }
  .footer-logo__site {
    font-size: 26px;
  }
  .footer-logo__img {
    width: 32px;
    height: 40px;
  }
  .footer-nav-head {
    margin-bottom: 16px;
  }
  .footer-nav-head__link {
    font-size: 24px;
  }
  .footer-contacts__socnet {
    gap: 0 12px;
    padding: 12px 16px 10px;
  }
  .footer-contacts__socnet .ico-tg {
    width: 22px;
    height: 22px;
  }
  .footer-sub-row {
    gap: 0 40px;
  }
  .footer-sub__link {
    font-size: 17px;
  }
  .footer-sub__link .ico-link {
    width: 22px;
    height: 22px;
  }
  .footer-sub__link .ico-link svg {
    width: 22px;
    height: 22px;
  }
  .footer-company {
    font-size: 17px;
  }
}
@media (max-width: 1100px) {
  .footer-box {
    gap: 40px 36px;
  }
}
@media (max-width: 1030px) {
  .footer-section {
    padding-bottom: 40px;
  }
  .footer-box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin-bottom: 60px;
  }
  .footer-logo {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  .footer-contacts__socnet {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  .footer-nav {
    gap: 36px 48px;
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
  .footer-copyright {
    margin-top: 44px;
  }
}
@media (max-width: 720px) {
  .footer-nav {
    gap: 36px;
  }
  .footer-sub__label {
    margin-top: 6px;
    margin-bottom: 16px;
    margin-left: 0;
    padding: 12px 16px;
  }
  .footer-sub-row {
    gap: 24px 0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    line-height: 1.2;
  }
}
@media (max-width: 640px) {
  .footer-box {
    gap: 32px 0;
    margin-bottom: 64px;
  }
  .footer-nav {
    grid-template-columns: minmax(0, 1fr);
    gap: 34px 0;
  }
  .footer-sub__link {
    font-size: 16px;
  }
}
@media (max-width: 480px) {
  .footer-nav-head__link {
    font-size: 23px;
  }
  .footer-sub__link .ico-link {
    display: none;
  }
}
/* #endregion */

/* Course FAQ */
.course-faq-section .course-faq__actions {
  display: flex;
  justify-content: center;
  margin-top: 40px;
}

.course-faq-section .course-faq__button {
  width: min(100%, 520px);
  justify-content: center;
  text-align: center;
}

@media (max-width: 767px) {
  .course-faq-section .course-faq__actions {
    margin-top: 34px;
  }
}

/* PPF School course desktop rhythm sync with home page, 2026-06-10 */
@media (min-width: 1201px) {
  .course-page .course-hero-section {
    margin-top: 56px;
    margin-bottom: 160px;
  }

  .course-page .course-desc-section,
  .course-page .course-completed-section {
    margin-bottom: 160px;
  }

  .course-page .course-faq-section {
    margin-bottom: 100px;
  }
}

/* Cookie notice */
.cookie-section {
  display: none;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1200;
  border-top: 1px solid rgba(163, 215, 35, 0.28);
  background: rgba(14, 18, 20, 0.98);
  box-shadow: 0 -18px 44px rgba(0, 0, 0, 0.32);
  color: #f3f5f6;
}

.cookie-section.show {
  display: flex !important;
}

.cookie-section .section-wrapper {
  max-width: 1200px;
}

.cookie {
  display: flex;
  align-items: center;
  gap: 20px;
  padding: 18px 0;
}

.cookie__text {
  min-width: 0;
  font-size: 15px;
  line-height: 1.45;
}

.cookie__text a {
  color: #a3d723;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.cookie__text a:hover {
  text-decoration: none;
}

.cookie__button {
  flex-shrink: 0;
  margin-left: auto;
  min-height: 44px;
  padding: 12px 22px;
  border: 0;
  border-radius: 6px;
  background: #a3d723;
  color: #111;
  font: inherit;
  font-weight: 700;
  line-height: 1;
  cursor: pointer;
  white-space: nowrap;
}

.cookie__button:hover,
.cookie__button:focus {
  background: #b6ef28;
}

@media (max-width: 640px) {
  .cookie-section {
    max-height: min(260px, 42vh);
    overflow: auto;
  }

  .cookie {
    flex-wrap: wrap;
    gap: 12px;
    padding: 14px 0;
  }

  .cookie__text {
    font-size: 13px;
    line-height: 1.38;
  }

  .cookie__button {
    width: 100%;
    margin-left: 0;
    min-height: 42px;
    padding: 11px 16px;
  }
}
