:root {
  box-sizing: border-box;
}

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

html {
  scroll-behavior: smooth;
}

body {
  font-family: 'Inter', sans-serif;
  color: #000;
  background-color: #F9F6F7;
  margin: 0;
  background-repeat: no-repeat;
  background-position: center 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
figure {
  padding: 0;
  margin: 0;
}

ul {
  list-style-type: none;
}

a {
  font-family: inherit;
  text-decoration: none;
  cursor: pointer;
}

button,
input[type='submit'] {
  padding: 0;
  margin: 0;
  color: inherit;
  cursor: pointer;
  user-select: none;
  background-color: transparent;
  border: none;
}

.button {
  display: flex;
  justify-content: center;
  align-items: center;
  border-radius: 10px;
  padding: 16px 40px;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
  background-color: var(--text-color);
  color: #fff;
  cursor: pointer;
  transition: 0.3s all;
}

.button:disabled {
  opacity: 0.6;
}

.button:disabled:hover {
  background-color: var(--text-color);
}

.button:hover {
  background-color: #8B6FFF;
}

.hidden {
  display: none;
}

.hidden-client {
  display: none;
}

.button__orange {
  max-width: 344px;
  width: 100%;
}

@media (max-width:450px) {
  .button__orange {
    width: 100%;
    margin: 0 auto;
    text-align: center;
  }
}

#myIframe {
  min-width: 100%;
}

.online__button {
  margin: 0 auto;
}

.online-text {
  font-size: 24px;
  padding: 6px 0px;
  color: white;
}

.container {
  max-width: 1170px;
  margin: 0 auto;
}

@media (max-width:1170px) {
  .container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.min_container {
  max-width: 1006px;
  margin: 0 auto;
}

@media (max-width:1216px) {
  .min_container {
    padding-right: 15px;
    padding-left: 15px;
  }
}

.section-title {
  color: #222;
  text-align: center;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  /* 41.6px */
}

.thanks-title {
  color: #4b9c57;
  font-size: 28px;
}

.topline {
  /* Topline Block */
  --topline-bg-color: #000;

  /* Logo */
  --topline-logo-width: 126px;
  --topline-logo-height: 24px;
  --topline-logo-width-mobile: 126px;
  --topline-logo-height-mobile: 24px;

  background-color: var(--topline-bg-color);
}

.topline__container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1920px;
  padding: 6px 15px;
}

.topline__logo-link {
  display: flex;
  align-items: center;
  justify-content: center;
}

.topline__logo-img {
  width: var(--topline-logo-width);
  height: var(--topline-logo-height);
  object-fit: contain;
}

@media (max-width: 576px) {
  .topline__logo-img {
    width: var(--topline-logo-width-mobile);
    height: var(--topline-logo-height-mobile);
  }
}

#panelcontainer {
  z-index: 10;
  height: 32px;
}

:root {
  --text-color: #6F50F1;
  --main-color: #6F50F1;
  --bg-color: #D0C5F5;
}

.button-hover--white {
  transition: 0.3s all ease-in;
  background-color: #fff;
  color: var(--text-color);
}

.button-hover--white:hover {
  background-color: var(--text-color);
  color: #ffffff;
  transition: 0.3s all ease-in;
}

header {
  padding: 44px;
}

.header__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.header__logos {
  display: flex;
  align-items: center;
  gap: 43px;
}

nav {
  display: flex;
  align-items: center;
  gap: 24px;
  list-style: none;
}

.nav__links a {
  color: var(--text-color);
  font-weight: 500;
  font-size: 18px;
  line-height: 130%;
}

@media (max-width:770px) {
  header {
    padding: 16px 0px;
  }

  .header__inner {
    flex-direction: column-reverse;
    gap: 16px;
  }

  .nav__links a {
    font-size: 14px;
  }

  .header__logos img {
    max-width: 100px;
    width: 100%;
  }
}

main {
  padding-top: 127px;
}

.main__inner {
  display: flex;
  align-items: center;
  gap: 60px;
}

.main__left {
  width: 100%;
  max-width: 640px;
}

.main__title {
  font-weight: 600;
  font-size: 56px;
  line-height: 125%;
  text-transform: uppercase;
  color: #0F0F0E;
}

.main__title span {
  color: var(--text-color);
}

.main__subtitle {
  font-weight: 500;
  font-size: 28px;
  line-height: 120%;
  color: #444;
  padding-top: 46px;
}

.main__carousel {
  overflow: hidden;
  padding-top: 36px;
}

.main__carousel-track {
  display: flex;
  transition: transform 0.5s ease-in-out;
  gap: 1px;
}

.main__carousel-slide {
  object-fit: cover;
}

.main__right {
  max-width: 470px;
  padding: 36px 46px;
  background-color: var(--bg-color);
  border-radius: 20px;
}

.main__form--title {
  font-weight: 700;
  font-size: 32px;
  line-height: 130%;
  color: #0f0f0e;
}

.main__form {
  display: flex;
  flex-direction: column;
  gap: 18px;
  padding-top: 32px;
}

.main__callback--input {
  border: 1px solid rgba(34, 34, 34, 0.5);
  border-radius: 10px;
  padding: 16px 24px;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
}

.main__callback--input::placeholder {
  color: #a7a9ac;
}

@media (max-width:770px) {
  main {
    padding-top: 32px;
  }

  .main__inner {
    flex-direction: column;
    gap: 24px;
  }

  .main__carousel {
    display: none;
  }

  .main__title {
    font-size: 24px;
    line-height: 131%
  }

  .main__subtitle {
    font-size: 15px;
    line-height: 120%;
    padding-top: 16px;
  }

  .main__form--title {
    font-size: 23px;
    line-height: 130%;
  }

  .main__callback--input {
    font-size: 11px;
    line-height: 130%;
    border-radius: 6px;
    padding: 9px 14px;
  }

  .main__right {
    margin: 0 12px;
    padding: 24px 32px;
  }

  .main__form {
    gap: 8px;
  }

  .button {
    padding: 9px 14px;
    font-size: 11px;
    line-height: 130%;
  }
}

.program {
  padding-top: 132px;
  padding-bottom: 132px;
}

.program__title {
  font-weight: 600;
  font-size: 30px;
  text-transform: uppercase;
  color: #0f0f0e;
  padding-bottom: 54px;
}

.program__title span {
  color: var(--text-color);
}

.program__radios {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 56px;
}

.radios__group {
  display: flex;
}

.radios__group input[type=radio] {
  display: none;
}

.radios__group label {
  border-radius: 10px;
  padding: 16px 34px;
  font-weight: 500;
  font-size: 20px;
  line-height: 130%;
  cursor: pointer;
  border: 1px solid var(--text-color);
  background: rgba(253, 253, 255, 0);
  color: var(--text-color);
  transition: 0.3s all ease-in;
}

.radios__group input[type=radio]:checked+label {
  background-color: var(--text-color);
  color: #fff;
}

.program__content {
  display: grid;
  grid-template-columns: repeat(3, minmax(300px, 370px));
  gap: 30px;
}

.program__item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 40px 34px;
  border-radius: 20px;
  background-color: #fff;
  transition: 0.3s all ease-in;
  height: 310px;
  position: relative;
}

.program__item--final {
  background-color: var(--text-color);
}

.program__item--final .program__item--title {
  color: #fff;
}

.program__item:hover {
  background: #e8dffc;
}

.program__item--final:hover {
  background-color: var(--text-color);
}

.program__item--title {
  font-weight: 600;
  font-size: 24px;
  line-height: 130%;
  color: #1a171b;
  margin-top: auto;
  margin-bottom: auto;
}

.program__item--subtitle {
  font-weight: 500;
  font-size: 18px;
  line-height: 150%;
  color: var(--text-color);
}

.program__item--subtitle span {
  font-weight: 400;
}

.program__item--img {
  position: absolute;
  right: 22px;
  top: 10px;
}

@media (max-width:770px) {
  .program {
    padding-top: 32px;
  }

  .program__title {
    font-weight: 600;
    font-size: 28px;
    line-height: 133%;
    padding-bottom: 16px;
  }

  .program__radios {
    flex-direction: column;
    padding: 0 12px;
    gap: 12px;
  }

  .radios__group {
    width: 100%;
  }

  .radios__group label {
    width: 100%;
    text-align: center;
    font-size: 16px;
    line-height: 130%;
  }

  .program__content {
    padding-top: 32px;
    grid-template-columns: repeat(1, minmax(300px, 1fr));
  }

  .program__item {
    height: 240px;
  }

  .program__item--title {
    font-size: 20px;
    line-height: 130%
  }

  .program__item--subtitle {
    font-size: 16px;
    line-height: 150%;
  }
}

.lawyers {
  padding-bottom: 96px;
}

.lawyers__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.lawyers__title {
  font-weight: 600;
  font-size: 30px;
  line-height: 133%;
  text-transform: uppercase;
  color: #0f0f0e;
}

.lawyers__title span {
  color: var(--text-color);
}

.lawyers__subtitle {
  font-weight: 500;
  font-size: 20px;
  line-height: 120%;
  color: #444;
  max-width: 575px;
}

.lawyers__center {
  display: grid;
  padding-top: 40px;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 27px 30px;
  grid-template-areas:
    "lawyers__item--1 lawyers__item--2 lawyers__item--2"
    "lawyers__item--1 lawyers__item--3 lawyers__item--3"
    "lawyers__item--4 lawyers__item--5 lawyers__item--6";
}

.lawyers__item--1 {
  grid-area: lawyers__item--1;
}

.lawyers__item--2 {
  position: relative;
  display: flex;
  grid-area: lawyers__item--2;
}

.lawyers__item--3 {
  position: relative;
  display: flex;
  grid-area: lawyers__item--3;
}

.lawyers__item--3 .lawyers__left {
  width: 54%;
}

.lawyers__item--3 .lawyers--img {
  top: auto;
  bottom: 0;
}

.lawyers__item--4 {
  display: flex;
  flex-direction: column;
  gap: 14px;
  grid-area: lawyers__item--4;
}

.lawyers__item--5 {
  display: flex;
  flex-direction: column;
  gap: 14px;
  grid-area: lawyers__item--5;
}

.lawyers__item--6 {
  grid-area: lawyers__item--6;
  background-image: url(../img/lawyers/lawyerBg.png);
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.lawyers__item {
  background-color: #E1D8F6;
  padding: 32px 34px;
  border-radius: 20px;
}

.lawyers__item--title {
  font-weight: 600;
  font-size: 24px;
  line-height: 130%;
  color: var(--text-color);
}

.lawyers__item--subtitle {
  font-weight: 400;
  font-size: 18px;
  line-height: 120%;
  color: #444;
}

.lawyers__item--description {
  font-family: var(--font-family);
  font-weight: 400;
  font-size: 14px;
  line-height: 120%;
  color: #444;
}

.laweyrs__person {
  padding: 38px 0px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
}

.lawyers__info {
  font-weight: 500;
  font-size: 14px;
  color: #000;
}

.lawyers__info span {
  font-weight: 300;
  font-size: 12px;
  padding-top: 6px;
}

.lawyers__left {
  display: flex;
  flex-direction: column;
  gap: 14px;
  width: 45%;
}

.lawyers--img {
  position: absolute;
  top: 0;
  right: 0;
}

@media (max-width:770px) {
  .lawyers__header {
    flex-direction: column;
    gap: 16px;
  }

  .lawyers__title {
    font-size: 24px;
    line-height: 133%;
  }

  .lawyers__subtitle {
    font-size: 15px;
    line-height: 120%;
  }

  .lawyers__center {
    grid-template-columns: 1fr;
    gap: 20px;
    grid-template-areas:
      "lawyers__item--1"
      "lawyers__item--2"
      "lawyers__item--3"
      "lawyers__item--4"
      "lawyers__item--5"
      "lawyers__item--6";
  }

  .lawyers__item--2,
  .lawyers__item--3 {
    flex-direction: column;
  }

  .lawyers__item--3 .lawyers__left {
    width: 100%;
  }

  .lawyers__item--title {
    font-size: 18px;
    line-height: 130%;
    max-width: 175px;
  }

  .laweyrs__person {
    padding: 24px 0px;
    gap: 12px;
  }

  .lawyers__item--subtitle {
    font-size: 15px;
    line-height: 120%;
    letter-spacing: -0.03em;
  }

  .lawyers__left {
    width: 100%;
  }

  .lawyers__item--2 {
    height: 450px;
  }

  .lawyers--img {
    bottom: 0;
    top: inherit;
    width: 100%;
  }

  .lawyers__item--3 {
    height: 500px;
  }

  .lawyers__item--3 img {
    width: 80%;
    right: 50%;
    transform: translateX(50%);
  }

  .lawyers__item--5,
  .lawyers__item--4 {
    gap: 8px;
  }

  .lawyers__item--6 {
    display: none;
  }
}

.feedback {
  padding-bottom: 127px;
}

.feedback__title {
  font-weight: 600;
  font-size: 30px;
  line-height: 133%;
  text-transform: uppercase;
  color: var(--text-color);
  padding-bottom: 59px;
}

.feedback__title span {
  color: #0f0f0e
}

.feedback__slider--container {
  background-color: #E1D8F6;
  padding: 59px 0px;
  border-radius: 20px;
  position: relative;
}

.feedback__wrapper {
  width: 100%;
  max-width: 817px;
  margin: 0 auto;
  overflow: hidden;
}

.feedback__list {
  display: flex;
  transition: transform 0.6s ease-in-out;
  will-change: transform;
}

.feedback__item {
  flex: 0 0 100%;
  box-sizing: border-box;
  padding: 20px;

  padding: 54px 20px;
  background-color: #ffffff;
  border-radius: 20px;
}

.feedback__btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  cursor: pointer;
  z-index: 1;
}

.feedback__btn.prev {
  left: 8%;
}

.feedback__btn.next {
  right: 8%;
}

.feedback__name {
  font-weight: 600;
  font-size: 24px;
  line-height: 130%;
  color: var(--text-color)
}

.feedback__post {
  font-weight: 500;
  font-size: 19px;
  line-height: 140%;
  color: #444;
}

.feedback__text {
  font-weight: 400;
  font-size: 18px;
  line-height: 120%;
  letter-spacing: -0.03em;
  color: #444;
  padding: 16px 0px;
}

.feedback__button {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 212px;
  width: 100%;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
  border-radius: 10px;
  padding: 16px 0px;
  margin: 0 auto;
  margin-top: 31px;
}


@media (max-width:770px) {
  .lawyers {
    padding-bottom: 32px;
  }

  .feedback__title {
    font-size: 24px;
    line-height: 133%;
    padding-bottom: 16px;
  }

  .feedback__btn {
    top: 82%;
  }

  .feedback__name {
    font-size: 22px;
    line-height: 130%;
  }

  .feedback__post {
    font-size: 17px;
    line-height: 130%;
  }

  .feedback__text {
    font-size: 15px;
    line-height: 120%;
  }
}

.callback {
  padding-bottom: 124px;
}

.callback__title {
  font-weight: 400;
  font-size: 30px;
  line-height: 130%;
  color: #000;
  max-width: 824px;
  padding-bottom: 51px;
}

.course__page {
  font-weight: 700;
  font-size: 30px;
  line-height: 140%;
  color: var(--text-color);
  max-width: none;
  padding-bottom: 37px;
}

.course__page span {
  color: #000;
  font-weight: 400;
  font-size: 24px;
}

.callback__title br {
  color: var(--text-color);
  font-weight: 500;
}

.callback__form {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.callback__upper {
  display: grid;
  grid-template-columns: repeat(4, minmax(100px, 1fr));
  gap: 28px;
  justify-content: space-between;
}

.callback__lower {
  display: flex;
  justify-content: space-between;
}

.callback__checkbox {
  max-width: 275px;
  font-size: 13px;
  font-weight: 400;
  line-height: 120%;
}

@media (max-width:770px) {

  .feedback {
    padding-bottom: 32px;
  }

  .callback__title {
    font-size: 22px;
    line-height: 120%;
    padding-bottom: 16px;
  }

  .callback__upper {
    grid-template-columns: repeat(1, minmax(100px, 1fr));
    gap: 12px;
  }

  .callback__lower {
    flex-direction: column-reverse;
    gap: 16px;
  }

  .callback {
    padding: 24px 0px;
  }
}

.priceList {
  background: var(--text-color);
}

.priceList__inner {
  padding-top: 116px;
}

.priceList__title {
  font-weight: 600;
  font-size: 30px;
  line-height: 133%;
  text-transform: uppercase;
  color: #fff;
  padding-bottom: 63px;
}

.priceList__list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 370px));
  justify-content: center;
  gap: 30px;
}

.priceList__item {
  display: flex;
  flex-direction: column;
  border-radius: 20px;
  background-color: var(--bg-color);
  padding: 48px 66px;
}

.price__name {
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
  color: var(--text-color);
}

.price__description {
  padding-top: 24px;
  display: flex;
  flex-direction: column;
  list-style-image: url("../img/icons/galka.png");
  gap: 22px;
  margin-right: -36px;
}

.price__description--item {
  font-weight: 400;
  font-size: 18px;
  line-height: 140%;
  letter-spacing: -0.03em;
  color: #000;
}

.price__list--lower {
  margin-top: auto;
}

.price__number--old {
  padding-top: 63px;
  text-decoration: line-through;
  font-weight: 400;
  font-size: 28px;
  line-height: 130%;
  text-align: center;
  color: #000;
}

.price__number--new {
  font-weight: 700;
  font-size: 36px;
  line-height: 130%;
  text-align: center;
  color: var(--main-color);
}

.priceList__buttons {
  display: flex;
  flex-direction: column;
  padding-top: 30px;
  gap: 12px;
}

.priceList__button {
  display: flex;
  justify-content: center;
  border-radius: 10px;
  padding: 16px 40px;
}

.priceList__letter {
  display: flex;
  border-radius: 20px;
  gap: 58px;
  background-color: var(--bg-color);
  margin-top: 56px;
  padding: 66px 44px;
}

.priceList__letter--left {
  width: 40%;
}

.priceList__letter--title {
  font-weight: 600;
  font-size: 30px;
  line-height: 133%;
  text-transform: uppercase;
  color: #000;
}

.priceList__letter--title span {
  color: var(--text-color);
}

.priceList__letter--right {
  width: 60%;
  display: flex;
  flex-direction: column;
  gap: 36px;
}

.priceList__letter--subtitle {
  font-weight: 500;
  font-size: 20px;
  line-height: 120%;
  color: #000;
}

.priceList__letter--button {
  border-radius: 10px;
  padding: 16px 40px;
  max-width: 230px;
  text-align: center;
}

.priceList__nav {
  display: flex;
  align-items: center;
  justify-content: right;
  gap: 24px;
  list-style: none;
  padding-top: 70px;
  padding-bottom: 122px;
}

.priceList__nav--link a {
  color: #fff;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
}

@media (max-width:770px) {
  .priceList__inner {
    padding-top: 32px;
  }

  .priceList__title {
    font-size: 24px;
    line-height: 133%
  }

  .price__name {
    font-size: 20px;
    line-height: 130%;
  }

  .price__description {
    gap: 12px;
  }

  .price__description--item {
    font-size: 14px;
    line-height: 140%;
    letter-spacing: -0.03em;
  }

  .price__number--old {
    font-size: 21px;
    line-height: 130%;
    padding-top: 18px;
  }

  .price__number--new {
    font-size: 27px;
    line-height: 130%;
  }

  .priceList__button {
    font-size: 16px;
    line-height: 130%;
    padding: 12px 30px;
  }

  .priceList__letter {
    display: none;
  }

  .priceList__nav {
    gap: 8px;
    justify-content: space-between;
    padding: 32px 0px
  }

  .priceList__nav--link a {
    font-size: 10px;
    line-height: 130%;
  }
}

.footer {
  /* Footer Block */
  --footer-offset-top: 80px;
  --footer-offset-bottom: 80px;
  --footer-offset-top-mobile: 60px;
  --footer-offset-bottom-mobile: 60px;
  --footer-all-text-color: #ffffff;
  --footer-bg-color: #333232;

  /* Logo Image 1 */
  --footer-logo-img-1-width: 110px;
  --footer-logo-img-1-height: 40px;
  --footer-logo-img-1-width-mobile: 110px;
  --footer-logo-img-1-height-mobile: 40px;

  /* Logo Image 2 */
  --footer-logo-img-2-width: 110px;
  --footer-logo-img-2-height: 40px;
  --footer-logo-img-2-width-mobile: 110px;
  --footer-logo-img-2-height-mobile: 40px;

  /* Copyright Text */
  --footer-copy-fz: 16px;
  --footer-copy-fw: 400;
  --footer-copy-fz-mobile: 16px;
  --footer-copy-fw-mobile: 400;

  /* Legal Text */
  --footer-legal-fz: 16px;
  --footer-legal-fw: 400;
  --footer-legal-fz-mobile: 16px;
  --footer-legal-fw-mobile: 400;

  /* Phone Number Link */
  --footer-tel-fz: 18px;
  --footer-tel-fw: 700;
  --footer-tel-fz-mobile: 20px;
  --footer-tel-fw-mobile: 700;

  /* Phone Call Info Text */
  --footer-info-fz: 12px;
  --footer-info-fw: 400;
  --footer-info-fz-mobile: 16px;
  --footer-info-fw-mobile: 400;

  /* Social Images */
  --footer-socials-img-size: 32px;
  --footer-socials-img-size-mobile: 32px;

  color: var(--footer-all-text-color);
  background-color: var(--footer-bg-color);
}

.footer__container {
  padding-top: var(--footer-offset-top);
  padding-bottom: var(--footer-offset-bottom);
}

@media (max-width: 576px) {
  .footer__container {
    padding-top: var(--footer-offset-top-mobile);
    padding-bottom: var(--footer-offset-bottom-mobile);
  }
}

.footer__upper {
  display: flex;
  flex-wrap: wrap;
  column-gap: 40px;
  padding-bottom: 34px;
}

@media (max-width: 576px) {
  .footer__upper {
    row-gap: 10px;
    padding-bottom: 20px;
  }
}

.footer__logo-link {
  display: flex;
  align-items: center;
  justify-content: center;
}

@media (max-width: 576px) {
  .footer__logo-link {
    margin: 16px;
    margin-left: 0;
  }
}

.footer__logo-img {
  object-fit: contain;
}

@media (max-width: 576px) {
  .footer__logo-img--1 {
    width: var(--footer-logo-img-1-width-mobile);
    height: var(--footer-logo-img-1-height-mobile);
  }
}

@media (max-width: 576px) {
  .footer__logo-img--2 {
    width: var(--footer-logo-img-2-width-mobile);
    height: var(--footer-logo-img-2-height-mobile);
  }
}

.footer__lower {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  justify-content: space-between;
}

@media (max-width: 576px) {
  .footer__lower {
    flex-direction: column;
  }
}

@media (max-width: 576px) {
  .footer__left {
    padding-bottom: 30px;
  }
}

.footer__copy {
  margin-bottom: 20px;
  font-size: var(--footer-copy-fz);
  font-weight: var(--footer-copy-fw);
}

@media (max-width: 576px) {
  .footer__copy {
    margin-bottom: 14px;
    font-size: var(--footer-copy-fz-mobile);
    font-weight: var(--footer-copy-fw-mobile);
  }
}

.footer__legal {
  display: flex;
  flex-direction: column;
  gap: 4px;
  max-width: 400px;
  font-size: var(--footer-legal-fz);
  font-weight: var(--footer-legal-fw);
  line-height: 130%;
}

@media (max-width: 576px) {
  .footer__legal {
    font-size: var(--footer-legal-fz-mobile);
    font-weight: var(--footer-legal-fw-mobile);
  }
}

.footer__legal-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.footer__central {
  display: flex;
  gap: 24px;
}

.footer__central--title {
  font-weight: 600;
  font-size: 18px;
  line-height: 130%;
  color: #fff;
}

.footer__central--subtitle {
  font-weight: 400;
  font-size: 12px;
  line-height: 140%;
  color: #fff;
}

.footer__tel {
  display: block;
  margin-bottom: 18px;
  font-size: var(--footer-tel-fz);
  font-weight: var(--footer-tel-fw);
  color: inherit;
}

@media (max-width: 576px) {
  .footer__tel {
    margin-bottom: 14px;
    font-size: var(--footer-tel-fz-mobile);
    font-weight: var(--footer-tel-fw-mobile);
  }
}

.footer__info-text {
  margin-bottom: 4px;
  font-size: var(--footer-info-fz);
  font-weight: var(--footer-info-fw);
}

@media (max-width: 576px) {
  .footer__info-text {
    font-size: var(--footer-info-fz-mobile);
    font-weight: var(--footer-info-fw-mobile);
  }
}

.footer__right {
  align-self: flex-start;
}

@media (max-width: 576px) {
  .footer__right {
    justify-content: flex-start;
  }
}

.footer__socials-list {
  display: flex;
  gap: 20px;
}

.footer__socials-link {
  display: flex;
  align-items: center;
  justify-content: center;
}

.footer__socials-img {
  display: block;
  width: var(--footer-socials-img-size);
  height: var(--footer-socials-img-size);
  object-fit: contain;
}

@media (max-width: 576px) {
  .footer__socials-img {
    width: var(--footer-socials-img-size-mobile);
    height: var(--footer-socials-img-size-mobile);
  }
}

.author__inner {
  padding: 78px 60px;
  border-radius: 20px;
  background-color: #e8dffc;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.author__left {
  display: flex;
  align-items: center;
  width: 45%;
  gap: 38px;
}

.author__img {
  border-radius: 100%;
  background-color: #d3c5f3;
  max-width: 137px;
  max-height: 137px;
  width: 100%;
}

.author__name {
  font-weight: 500;
  font-size: 20px;
  line-height: 100%;
  color: #000;
}

.author__name span {
  font-weight: 300;
  font-size: 14px;
  line-height: 129%;
}

.author__right {
  width: 50%;
}

.author__description {
  font-weight: 300;
  font-size: 18px;
  line-height: 130%;
  color: #000;
}

@media (max-width:770px) {
  .author__inner {
    padding: 32px 24px;
    flex-direction: column;
    gap: 32px;
  }

  .author__left {
    width: 100%;
    flex-direction: column;
    gap: 12px;
  }

  .author__right {
    width: 100%;
  }

  .author__name {
    text-align: center;
  }

  .author__description {
    font-size: 14px;
    line-height: 130%;
  }
}

.lecturers__title {
  font-weight: 600;
  font-size: 30px;
  text-transform: uppercase;
  padding-bottom: 22px;
  color: var(--text-color);
}

.lecturers__subtitle {
  font-weight: 400;
  font-size: 24px;
  line-height: 140%;
  color: #000;
  padding-bottom: 51px;
}

.lecturers__inner {
  padding: 42px 58px;
  border-radius: 20px;
  background-color: #e8dffc;
  margin-bottom: 76px;
}

.lecturers__list {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.lecturers__letter {
  font-weight: 600;
  font-size: 48px;
  line-height: 130%;
  color: var(--text-color);
}

.lecturers__persons {
  display: grid;
  grid-template-columns: repeat(4, minmax(180px, 1fr));
  gap: 75px;
  padding-top: 32px;
}

.lecturers__img {
  max-width: 137px;
  max-height: 137px;
  width: 100%;
  border-radius: 100%;
  background-color: #d3c5f3;
}

.lecturers__person {
  display: flex;
  flex-direction: column;
  gap: 22px;
}

.lecturers__info {
  font-weight: 500;
  font-size: 14px;
  line-height: 143%;
  color: #000;
}

.lecturers__info span {
  font-weight: 300;
  font-size: 12px;
  line-height: 150%;
}

@media (max-width:770px) {
  .lecturers__inner {
    padding: 16px 24px;
  }

  .lecturers__persons {
    grid-template-columns: repeat(2, minmax(120px, 1fr));
    gap: 16px;
  }

  .lecturers__img {
    max-width: 90px;
    max-height: 90px;
  }

  .lecturers__info {
    font-size: 12px;
    line-height: 109%;
  }

  .lecturers__info span {
    font-size: 10px;
    line-height: 120%;
  }
}

.reviews__title {
  color: var(--text-color);
  font-weight: 600;
  font-size: 30px;
  text-transform: uppercase;
  padding-bottom: 50px;
}

.reviews__inner {
  padding-bottom: 74px;
}

.reviews__form {
  display: flex;
  flex-direction: column;
  gap: 19px;
  background-color: #e8dffc;
  padding: 54px 64px;
  border-radius: 20px;
  position: relative;
}

.reviews__form textarea {
  resize: none;
}

.reviews__title span {
  color: #000;
}

.reviews__label {
  width: 100%;
  display: flex;
  justify-content: space-between;
  font-weight: 600;
  font-size: 24px;
  color: #444;
}

.reviews__input {
  border: 1px solid rgba(34, 34, 34, 0.5);
  border-radius: 10px;
  padding: 16px 24px;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
  max-width: 658px;
  width: 100%;
}

.reviews__button {
  max-width: 360px;
  width: 100%;
  margin-left: auto;
}


@media (max-width:770px) {
  .reviews__title{
    font-size: 24px;
    line-height: 120%;
  }

  .reviews__form{
    padding: 24px 16px;
  }

  .reviews__label{
    flex-direction: column;
    font-size: 16px;
  }

  .reviews__required{
    top: 50%;
  }

  .feedback__btn{
    top: 92%;
  }
}

.checkbox__button {
  display: flex;
  align-items: center;
  position: relative;
  cursor: pointer;
  padding-left: 22px;
}

.checkbox__button input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.checkbox__custom {
  position: absolute;
  left: 0;
  top: 50%;
  width: 16px;
  height: 16px;
  border: 2px solid #333;
  border-radius: 4px;
  background-color: white;
  transform: translateY(-50%);
}

.checkbox__custom::after {
  content: "";
  position: absolute;
  display: none;
  left: 5px;
  top: 0px;
  width: 5px;
  height: 10px;
  border: solid #000;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.checkbox__button input:checked+.checkbox__custom::after {
  display: block;
}

.reviews__checkbox {
  margin-left: auto;
  max-width: 358px;
}


@media (max-width:770px) {
  .checkbox__custom {
    border: 1px solid #333;
    width: 12px;
    height: 12px;
  }

  .checkbox__custom::after {
    left: 3px;
    top: 1px;
    width: 4px;
    height: 7px;
  }

  .checkbox__button {
    line-height: 120%;
    font-size: 12px;
    padding-left: 16px;
  }
}

.reviews__required {
  position: absolute;
  bottom: 21%;
  font-weight: 400;
  font-size: 20px;
  line-height: 120%;
  color: #444
}

.reviews__lower {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding-bottom: 306px;
}

.reviews__button--lower {
  display: block;
  text-align: center;
  border: 2px solid var(--text-color);
  color: var(--text-color);
  border-radius: 10px;
  padding: 16px 20px;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
  transition: 0.3s all ease-in-out;
  max-width: 330px;
  width: 100%;
}

.reviews__button--lower:hover {
  color: #fff;
  background-color: var(--text-color);
}

.course__main {
  background-color: var(--text-color);
  border-radius: 20px;
  padding: 52px 60px;
  margin-bottom: 66px;
}

.course__main--title {
  font-weight: 600;
  font-size: 46px;
  line-height: 120%;
  color: #fff;
  padding-bottom: 26px;
}

.course__main--subtitle {
  font-weight: 600;
  font-size: 24px;
  line-height: 130%;
  color: #fff;
  padding-bottom: 41px;
}

.course__main--parameters {
  font-weight: 500;
  font-size: 20px;
  line-height: 150%;
  text-transform: capitalize;
  color: #fff;
}

.course__main--parameters {
  font-weight: 400;
}

.course__main--button {
  text-align: center;
  margin-left: auto;
  width: 100%;
  max-width: 295px;
  display: block;
  border: 1px solid #fff;
  border-radius: 10px;
  padding: 16px 40px;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
  color: #fff;
  transition: 0.3s all ease-in-out;
}

.course__main--button:hover {
  color: var(--text-color);
  background-color: white;
}

.course__main--buttons {
  padding-top: 14px;
  display: flex;
  justify-content: space-between;
}

.course__main--white {
  border-radius: 10px;
  padding: 16px 40px;
  background: #fff;
  font-weight: 400;
  font-size: 18px;
  line-height: 130%;
  color: var(--text-color);
  margin: 0;
  transition: 0.3s all ease-in-out;
}

.course__main--white:hover {
  color: white;
  background-color: transparent;
}

.course__info {
  padding-bottom: 157px;
}

.course__info--list {
  display: flex;
  flex-direction: column;
  gap: 78px;
}

.course__info--item {
  display: flex;
  align-items: start;
  justify-content: space-between;
}

.course__info--title {
  font-family: var(--font-family);
  font-weight: 600;
  font-size: 30px;
  line-height: 120%;
  text-transform: uppercase;
  color: #0f0f0e;
  width: 33%;
}

.course__info--title span {
  color: var(--text-color);
}

.course__info--arrow {
  padding-top: 12px;
}

.course__info--subtitle {
  font-weight: 400;
  font-size: 18px;
  line-height: 120%;
  color: #1a171b;
  width: 57%;
}

.course__description--title {
  font-weight: 600;
  font-size: 30px;
  line-height: 120%;
  text-transform: uppercase;
  color: #000;
}

.course__description--title span {
  color: var(--text-color);
}

.course__description--item:not(:first-child) {
  padding-top: 20px;
  /* или любой нужный отступ */
}

.course__description--list {
  margin-top: 44px;
  background-color: #E1D8F6;
  border-radius: 20px;
  padding: 62px 58px;
  padding-right: 98px;
}

.course__theme--title {
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
  text-transform: uppercase;
  color: var(--text-color);
  padding-bottom: 41px;
}

.course__theme--list {
  display: flex;
  flex-direction: column;
  gap: 27px;
}

.course__theme--upper {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.course__theme--subtitle {
  font-weight: 500;
  font-size: 24px;
  line-height: 130%;
  color: #000;
}

.course__theme--description {
  font-weight: 400;
  font-size: 18px;
  line-height: 120%;
  color: #1a171b;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease, opacity 0.4s ease;
  opacity: 0;
  padding: 0;
}

.course__theme--item {
  border-bottom: 1px solid var(--text-color);
  padding-bottom: 27px;
}

.course__theme--item.active .course__theme--description {
  padding-top: 24px;
  max-height: none;
  opacity: 1;
}

.course__toggle {
  background: none;
  border: none;
  cursor: pointer;
  transition: transform 0.3s ease;
}

.course__theme--item.active .course__toggle img {
  transform: rotate(90deg);
  /* поворачиваем стрелку */
}

.course__callback {
  padding-top: 106px;
  display: flex;
  justify-content: space-between;
}

.course__callback--list {
  padding-top: 36px;
  max-width: 570px;
  display: flex;
  flex-direction: column;
  gap: 18px;
  list-style-image: url(../img/icons/galka-purple.png);
  list-style-position: inside;
}

.course__callback--item {
  font-weight: 400;
  font-size: 18px;
  line-height: 140%;
  letter-spacing: -0.03em;
  color: #000;
}

.course__callback--right {
  max-width: 470px;
  background-color: #E1D8F6;
}

.course__callback--form {}

.course__callback--form-title {
  font-weight: 700;
  font-size: 32px;
  line-height: 130%;
  color: #0f0f0e;
}

.course__lecturers {
  margin-bottom: 123px;
  margin-top: 58px;
  background: #e1d8f6;
  padding: 58px;
  border-radius: 20px;
  display: flex;
  justify-content: space-between;
}

.course__lecturers--left {
  max-width: 378px;
}

.course__lecturers--title {
  font-weight: 600;
  font-size: 24px;
  line-height: 130%;
  color: var(--text-color);
}

.course__lecturers--subtitle {
  padding-top: 28px;
  font-weight: 400;
  font-size: 18px;
  line-height: 120%;
  color: #444;
}

.course__lecturers--button {
  margin-top: 32px;
  border-radius: 10px;
  padding: 16px 0px;
  max-width: 248px;
}

.course__lecturers--right {
  max-width: 474px;
  margin: 0 auto;
  position: relative;
  padding-bottom: 64px;
}

.course__lecturers--wrapper {
  width: 100%;
  max-width: 817px;
  margin: 0 auto;
  overflow: hidden;
}

.course__lecturers--list {
  display: flex;
  transition: transform 0.6s ease-in-out;
  will-change: transform;
}

.course__lecturers--item {
  flex: 0 0 100%;
  box-sizing: border-box;
  background-color: #fff;
  padding: 40px 34px;
  border-radius: 20px;
}

.course__lecturers--main {
  display: flex;
  gap: 33px;
  padding-bottom: 26px;
  border-bottom: 1px solid var(--text-color);
  align-items: center;
}

.course__lecturers--img {
  width: 137px;
  height: 137px;
  background-color: var(--text-color);
  border-radius: 50%;
}

.course__lecturers--name {
  font-weight: 500;
  font-size: 14px;
  line-height: 143%;
  color: #000;
}

.course__lecturers--post {
  font-weight: 300;
  font-size: 12px;
  line-height: 150%;
  color: #000;
}

.course__lecturer--btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border: none;
  cursor: pointer;
  z-index: 1;
}

.course__lecturer--btn.prev {
  left: -15%;
}

.course__lecturer--btn.next {
  right: -15%;
}

@media (max-width:770px) {
  .course__main {
    padding: 32px 24px;
  }

  .course__main--title {
    font-size: 22px;
    line-height: 120%;
    padding-bottom: 12px;
  }

  .course__main--subtitle {
    font-size: 14px;
    line-height: 130%;
    font-weight: 500;
  }

  .course__main--parameters {
    font-size: 12px;
    line-height: 150%;
    padding-bottom: 16px;
  }

  .course__main--buttons {
    flex-direction: column;
    gap: 12px;
    padding-top: 12px;
  }

  .course__main--button {
    font-size: 14px;
    line-height: 130%;
    padding: 12px 31px;
    margin-left: 0;
  }

  .callback__title.course__page span {
    font-size: 14px;
    line-height: 120%;
  }

  .course__info--item {
    flex-direction: column;
    gap: 12px;
    justify-content: center;
    align-items: center;
  }

  .course__info--title {
    width: 100%;
    font-size: 24px;
    line-height: 120%;
  }

  .course__info--subtitle {
    font-size: 14px;
    line-height: 120%;
    width: 100%;
  }

  .course__info--arrow {
    transform: rotate(90deg);
  }

  .course__info {
    padding-bottom: 64px;
  }

  .course__description--title {
    font-size: 24px;
    line-height: 120%;
  }

  .course__description--list {
    margin-top: 12px;
    padding: 24px 16px;
  }

  .course__theme--title {
    font-size: 18px;
    line-height: 130%;
    padding-bottom: 16px;
  }

  .course__theme--subtitle {
    font-size: 18px;
    line-height: 130%;
  }

  .course__theme--description {
    font-size: 16px;
    line-height: 120%;
  }

  .course__theme--item {
    padding-bottom: 12px;
  }

  .course__theme--list {
    gap: 8px;
  }

  .course__callback {
    padding-top: 32px;
    flex-direction: column;
  }

  .course__callback--list {
    padding: 24px;
    gap: 12px;
  }

  .course__callback--item {
    font-size: 14px;
    line-height: 140%;
  }

  .course__lecturers {
    margin-top: 32px;
    margin-bottom: 32px;
    padding: 24px;
    flex-direction: column;
  }

  .course__lecturers--title {
    font-size: 18px;
    line-height: 130%;
  }

  .course__lecturers--subtitle {
    font-size: 16px;
    line-height: 120%;
    padding-top: 12px;
  }

  .course__lecturers--button {
    padding: 14px 35px;
    font-size: 16px;
  }

  .course__lecturers--right {
    padding-top: 16px;
    width: 100%;
  }

  .course__lecturers--main {
    flex-direction: column;
  }

  .course__lecturers--name {
    text-align: center;
  }

  .course__lecturers--post {
    text-align: center;
  }

  .course__lecturer--btn {
    top: 95%;
  }

  .course__lecturer--btn.prev {
    left: 5%;
  }

  .course__lecturer--btn.next {
    right: 5%;
  }
}