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

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

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

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* Или явно: font-family: 'Inter', sans-serif; */
}

.button:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  background-color: #ccc;
}


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;
  padding: 16px 40px;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-radius: 2px;
  background: #fbbb69;
  color: #222;
  font-size: 18px;
  cursor: pointer;
  transition: 0.3s all;
}

.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;
  }
}

.button:hover {
  background: #f7aa46;
}

@media (max-width:450px) {
  .decor {
    display: none;
  }
}

#myIframe {
  min-width: 100%;
}

.online__button {
  margin: 0 auto;
}

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

.container {
  max-width: 1214px;
  padding-right: 15px;
  padding-left: 15px;
  margin: 0 auto;
}

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

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

.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;
}

.header {
  /* background-image: url(../img/header/bg_2025.png); */
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
  /* background: rgb(251, 187, 105);
  background: linear-gradient(90deg, rgba(251, 187, 105, 1) 0%, rgba(195, 222, 137, 1) 100%); */
  /* background-color: #55770aad; */
  /* background-image: url(../img/media/mainBg.mp4); */
}

.header-img {
  display: block;
}

@media (max-width: 480px) {

  .header-img {
    display: none;
  }

}

.header-img1 {
  display: none;
}

@media (max-width: 480px) {

  .header-img1 {
    display: block;
  }

}


.header__inner {
  display: flex;
  flex-direction: column;
  padding-top: 29px;
  gap: 126px;
  padding-bottom: 71px;
}

@media (max-width: 480px) {

  .header__inner {
    gap: 48px;
  }

}

.header__content {
  background-color: #CEE1A4;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px 0;
}

@media (max-width: 480px) {

  .header__content {
    display: none;
  }
}

.header__contenttg {
  font-size: 18px;
  line-height: 130%;
  font-weight: 400;
  color: #222;
}

.header__center {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

nav {
  display: flex;
  gap: 20px;
  list-style: none;
  align-items: baseline;
  padding-bottom: 15px;
}

@media (max-width: 480px) {
  .nav__header {
    display: none;
  }
}


.nav__links {
  font-weight: 400;
  font-size: 16px;
  line-height: 16.5px;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #222;
}

.nav__links:hover {
  font-weight: 700;
  color: #F2830C;
}

.button--cert {
  padding: 8px;
  font-weight: 400;
  font-size: 16px;
  line-height: 103%;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  color: #000;
}

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

@media (max-width: 480px) {

  .header__lower-container {
    justify-content: center;
  }
}

.header__lower {
  display: flex;
  flex-direction: column;
  gap: 60px;
}

@media (max-width: 480px) {

  .header__lower {
    gap: 32px;
  }
}

.header__toplower {
  display: flex;
  flex-direction: column;
  gap: 13px;
}

.header__lower__mintitle {
  font-size: 32px;
  font-weight: 300;
  line-height: 130%;
  color: #222;
  text-transform: uppercase;
}


@media (max-width: 480px) {

  .header__lower__mintitle {

    font-weight: 300;
    font-size: 18px;
    line-height: 130%;
    text-transform: uppercase;
  }
}

.header__lower__title {
  font-size: 64px;
  font-weight: 600;
  line-height: 120%;
  letter-spacing: 0.05em;
  color: #F2830C;
  text-transform: uppercase;
}

@media (max-width: 480px) {

  .header__lower__title {
    font-weight: 600;
    font-size: 36px;
    line-height: 120%;
    letter-spacing: 0.05em;
  }
}




.header__lower__title span {
  font-size: 36px;
  letter-spacing: 0.02em;
  color: #222;
  text-transform: none;
  margin-top: -25px;
  display: block;

}

@media (max-width: 480px) {

  .header__lower__title span {

    font-weight: 600;
    font-size: 21px;
    line-height: 120%;
    letter-spacing: 0.02em;
    color: #222222;
    margin-top: 0px;
  }
}

.header__lower__text {
  font-size: 26px;
  line-height: 130%;
  font-weight: 400;
  color: #222;
}

@media (max-width: 480px) {

  .header__lower__text {
    font-size: 16px;
  }
}

.header__bottomlower {
  display: flex;
  gap: 23px;
}

@media (max-width: 480px) {

  .header__bottomlower {
    display: flex;
    flex-direction: column;
    gap: 13px;
  }

}

.header__button {
  max-width: 229px;
  height: 63.34px;
  width: 100%;
  padding: 16px 8px;
  border-radius: 10px;
  font-weight: 400;
  font-size: 18px;
  line-height: 150%;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
}

@media (max-width: 480px) {

  .header__button {
    max-width: 287px;
    height: 55px;
    padding: 14px 25px;
  }
}

.header__button--green {
  background: #F2830C;
}

.header__button--yellow {
  background: #222222;
}

.hero {
  padding-bottom: 82px;
}

@media (max-width: 480px) {

  .hero {
    padding-bottom: 20px;
  }
}

.hero__mobile-img {
  display: none;
}

@media (max-width: 480px) {

  .hero__mobile-img {
    display: block;
  }
}


@media (max-width: 480px) {

  .hero__img {
    display: flex;
    flex-direction: column;
    gap: 10px;
  }

  .hero__desktop-img {
    display: none;
  }
}

.hero__inner {
  display: flex;
  gap: 62px;
}

@media (max-width: 480px) {
  .hero__inner {
    display: flex;
    flex-direction: column;
    gap: 30px;
    align-items: center;
  }
}

.hero__right {
  padding-bottom: 44px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

.hero__text {
  font-size: 18px;
  line-height: 140%;
  color: #222;
  font-weight: 400;
}





.hero__subtittle {
  font-size: 18px;
  line-height: 22px;
  font-weight: 500;
  color: #222;
}

@media (max-width: 480px) {

  .hero__subtittle {
    display: none;
  }
}

.hero__subtittle span {
  font-size: 16px;
  font-weight: 300;
}



/*callback*/

.callback {
  /* Callback Block */
  --callback-offset-top: 80px;
  --callback-offset-bottom: 80px;
  --callback-offset-top-mobile: 60px;
  --callback-offset-bottom-mobile: 60px;
  --callback-all-texts-color: inherit;
  --callback-bg-color: inherit;

  /* Title */
  --callback-title-fz: 32px;
  --callback-title-fw: 700;
  --callback-title-fz-mobile: 24px;
  --callback-title-fw-mobile: 700;

  /* Lead */
  --callback-text-fz: 24px;
  --callback-text-fw: 400;
  --callback-text-fz-mobile: 18px;
  --callback-text-fw-mobile: 400;

  /* Button */
  --callback-button-fz: 18px;
  --callback-button-fw: 400;
  --callback-button-fz-mobile: 16px;
  --callback-button-fw-mobile: 400;
  --callback-button-color: #222;
  --callback-button-bg-color: #fbbb69;

  /* Legal Text */
  --callback-legal-fz: 14px;
  --callback-legal-fw: 400;
  --callback-legal-fz-mobile: 14px;
  --callback-legal-fw-mobile: 400;

  color: var(--callback-all-texts-color);
  background-color: #F6F6F6;
}


.callback2 {
  /* Callback Block */
  --callback-offset-top: 80px;
  --callback-offset-bottom: 80px;
  --callback-offset-top-mobile: 60px;
  --callback-offset-bottom-mobile: 60px;
  --callback-all-texts-color: inherit;
  --callback-bg-color: inherit;

  /* Title */
  --callback-title-fz: 32px;
  --callback-title-fw: 700;
  --callback-title-fz-mobile: 24px;
  --callback-title-fw-mobile: 700;

  /* Lead */
  --callback-text-fz: 24px;
  --callback-text-fw: 400;
  --callback-text-fz-mobile: 18px;
  --callback-text-fw-mobile: 400;

  /* Button */
  --callback-button-fz: 18px;
  --callback-button-fw: 400;
  --callback-button-fz-mobile: 16px;
  --callback-button-fw-mobile: 400;
  --callback-button-color: #222;
  --callback-button-bg-color: #fbbb69;

  /* Legal Text */
  --callback-legal-fz: 14px;
  --callback-legal-fw: 400;
  --callback-legal-fz-mobile: 14px;
  --callback-legal-fw-mobile: 400;

  color: var(--callback-all-texts-color);
  background-color: #F6F6F6;
}

.callback__container {
  padding-bottom: var(--callback-offset-bottom);
  padding-top: 60px;
}

@media (max-width: 576px) {
  .callback__container {
    padding-top: 35px;
    padding-bottom: 40px;
  }
}

.callback__upper {
  padding-bottom: 30px;
}



.callback__title {
  margin-bottom: 16px;
  font-size: var(--callback-title-fz);
  font-weight: var(--callback-title-fw);
}

@media (max-width: 576px) {
  .callback__title {
    width: 100%;
    font-size: var(--callback-title-fz-mobile);
    font-weight: var(--callback-title-fw-mobile);
  }
}

.callback__lead {
  font-size: var(--callback-text-fz);
  font-weight: var(--callback-text-fw);
  line-height: 130%;
}

@media (max-width: 576px) {
  .callback__lead {
    width: 100%;
    font-size: var(--callback-text-fz-mobile);
    font-weight: var(--callback-text-fw-mobile);
  }
}

.callback__form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}

.callback__form--hidden {
  display: none;
}

.callback__input {
  padding: 16px 24px;
  font-size: 18px;
  border: 1px solid #222;
  border-radius: 10px;
}

.callback__input::placeholder {
  color: #a7a9ac;
}

.callback__access {
  display: flex;
  gap: 4px;
  align-items: baseline;
}


.callback__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 16px 24px;
  width: auto;
  font-size: var(--callback-button-fz);
  font-weight: var(--callback-button-fw);
  color: var(--callback-button-color);
  background-color: var(--callback-button-bg-color);
  border-radius: 10px;
}

@media (max-width: 576px) {
  .callback__button {
    font-size: var(--callback-button-fz-mobile);
    font-weight: var(--callback-button-fw-mobile);
    padding: 17px 50px;
  }
}

.callback__legal {
  font-size: var(--callback-legal-fz);
  font-weight: var(--callback-legal-fw);
  padding-top: 24px;
}

@media (max-width: 576px) {
  .callback__legal {
    font-size: var(--callback-legal-fz-mobile);
    font-weight: var(--callback-legal-fw-mobile);
    text-align: center;
  }
}

.callback__legal--hidden {
  display: none;
}

.callback__legal-link {
  color: inherit;
  text-decoration: underline;
}

.callback__checkbox--hidden {
  display: none !important;
}

.callback__checkbox--hidden2 {
  display: none !important;
}

.callback__message {
  display: none;
  margin-top: 14px;
  margin-bottom: 14px;
}

.callback__message--visible {
  display: block;
}

.callback__message--success {
  font-size: 28px;
  color: #4b9c57;
}

@media (max-width: 576px) {
  .callback__message--success {
    text-align: center;
  }
}

.callback__message--error {
  font-size: 20px;
  color: #dc291e;
}

.callback__form2 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
}

.callback__form--hidden2 {
  display: none;
}

.callback__legal2 {
  font-size: var(--callback-legal-fz);
  font-weight: var(--callback-legal-fw);
  padding-top: 24px;
}

@media (max-width: 576px) {
  .callback__legal2 {
    font-size: var(--callback-legal-fz-mobile);
    font-weight: var(--callback-legal-fw-mobile);
    text-align: center;
  }
}

.callback__legal--hidden2 {
  display: none;
}

.callback__message--success2 {
  display: none;
  margin-top: 14px;
  margin-bottom: 14px;
  font-size: 28px;
  color: #4b9c57;
}

@media (max-width: 576px) {
  .callback__message--success2 {
    text-align: center;
  }
}

.callback__message--error2 {
  display: none;
  margin-top: 14px;
  margin-bottom: 14px;
  font-size: 20px;
  color: #dc291e;
}

.callback__message--visible2 {
  display: block;
}

/*access*/

.access {
  padding-top: 98px;
  padding-bottom: 94px;
}

@media (max-width: 480px) {
  .access {
    margin-top: 44px;
    margin-bottom: 60px;
    background-color: #F6F6F6;
    padding-top: 0px;
    padding-bottom: 58px;
  }
}

.access__inner {
  padding: 73px 45px;
  border-radius: 15px;
  display: flex;
  gap: 28px;
}

@media (max-width: 480px) {
  .access__inner {
    padding: 46px 0px;
    display: block;
  }
}

.access__title {
  font-size: 36px;
  font-weight: 500;
  color: #F2830C;
  line-height: 130%;
  text-transform: uppercase;
  padding-bottom: 27px;
}

@media (max-width: 576px) {
  .access__title {
    font-size: 24px;
    padding-top: 35px;
  }
}


.access__title span {
  color: #222222;
}

.access__text {
  font-size: 20px;
  font-weight: 400;
  line-height: 130%;
  color: #222222;
  padding-bottom: 55px;
}

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

.access__text a {
  color: #0066cc;
  /* или #0055ee / #1a73e8 */
  text-decoration: none;
  font-weight: 500;
  /* чуть жирнее обычного текста — модный приём */
  transition: all 0.16s ease;
}

.access__text a:hover,
a:focus-visible {
  text-decoration: underline;
  text-decoration-thickness: 1.5px;
  text-underline-offset: 2px;
  color: #0044aa;
}


.access__button {
  max-width: 229px;
  width: 100%;
  background-color: #F2830C;
  font-size: 18px;
  font-weight: 400;
  line-height: 130%;
  color: #fff;
  text-align: center;
  padding: 21px 38px;
  border-radius: 10px;
}

@media (max-width: 480px) {
  .access__button {
    max-width: 287px;
    padding: 17px 67px
  }


}



@media (max-width: 480px) {
  .access__left {
    text-align: center;
  }
}

/************/

/* cards */

.cards {
  padding-bottom: 114px;
}

@media (max-width: 480px) {
  .cards {
    padding-bottom: 53px;
    text-align: center;
  }

}


.cards__title {
  font-size: 36px;
  font-weight: 500;
  line-height: 130%;
  text-transform: uppercase;
  color: #F2830C;
  padding-bottom: 48px;
}

@media (max-width: 480px) {
  .cards__title {
    font-size: 24px;
    padding-bottom: 32px;
  }
}

.cards__title span {
  color: #222222;
}

.cards__inner {
  display: flex;
  gap: 37px;
}

@media (max-width: 480px) {
  .cards__inner {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-items: center;
  }
}

.cards__block {
  width: 379px;
  height: 370.12px;
  border-radius: 15px;
  padding: 100px 25px 90px 25px;
}

@media (max-width: 480px) {
  .cards__block {
    width: 282px;
    height: 276px;
    border-radius: 15px;
    padding: 75px 15px 65px 15px;
  }

}

.cards__green {
  background-color: #99C044;
}

.cards__orange {
  background-color: #FBBB69;
}

.cards__yellow {
  background-color: #FFD231;
}

.cards__text {
  font-size: 30px;
  font-weight: 800;
  line-height: 130%;
  color: #444444;
  padding-bottom: 25px;
}

@media (max-width: 480px) {
  .cards__text {

    font-weight: 800;
    font-size: 22px;
    line-height: 130%;
    /* or 29px */
    text-align: center;
  }

}

.cards__description {
  font-size: 20px;
  font-weight: 400;
  line-height: 150%;
  letter-spacing: -0.02em;
  color: #444444;
  text-align: center;
}


@media (max-width: 480px) {
  .cards__description {
    font-size: 15px;
  }

}


/*      PROGRAM BLOCK          */
:root {
  --bg: #f4f7e8;
  --card: #ffffff;
  --accent: #f6a13a;
  --text: #2e2e2e;
  --muted: #6b6b6b;
  --radius: 14px;
}

* {
  box-sizing: border-box;
}



.program {
  background: var(--bg);
  color: var(--text);
  margin: 70px 0px;
}

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

.program__container {
  max-width: 1214px;
  margin: 0 auto;
  padding: 40px 15px 60px;
}

@media (max-width: 480px) {
  .program__container {
    padding: 38px 20px 52px;
  }

}

.program__sbornik {
  display: none;
}

@media (max-width: 480px) {
  .program__sbornik {
    display: block;
    position: absolute;
    bottom: -15%;
    right: -6%;
  }

}


.program__title {
  margin-bottom: 40px;
  font-weight: 500;
  font-size: 36px;
  line-height: 130%;
  /* identical to box height, or 47px */
  text-transform: uppercase;
  /* Text main */
  color: #222222;
}

@media (max-width: 480px) {
  .program__title {
    font-weight: 500;
    font-size: 24px;
    line-height: 130%;
    text-transform: uppercase;
    color: #222222;
    text-align: center;
  }

}

.program__schedule {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.session {
  display: grid;
  grid-template-columns: auto 1fr;
  background: var(--card);
  border-radius: 6px;
}

@media (max-width: 480px) {
  .session {
    grid-template-columns: 1fr;
  }

}

.session__time {
  max-width: 157px;
  display: flex;
  padding: 32px 50px;
  font-weight: 700;
  font-size: 24px;
  line-height: 130%;
  /* or 31px */
  color: #F2830C;
}

@media (max-width: 480px) {
  .session__time {
    padding-bottom: 12px;
    padding: 17px 17px 11px 17px;
  }

}

.session__main {
  display: grid;
  grid-template-columns: 1fr 220px;
  gap: 85px;
  padding: 20px 50px 20px 55px;
  border-left: 2px solid rgba(240, 248, 222, 1);
  align-items: center;
}

@media (max-width: 480px) {
  .session__main {
    border-left: none;
    padding-top: 12px;
    padding: 20px 14px 20px 17px;
    display: flex;
    flex-direction: column;
    gap: 20px;
    border-top: 2px solid rgba(240, 248, 222, 1);
    align-items: flex-start;

  }

}

.session__title {
  margin: 0 0 12px;
  font-weight: 600;
  font-size: 22px;
  line-height: 130%;
  /* or 29px */
  text-transform: uppercase;
  color: #F2830C;
}

@media (max-width: 480px) {

  .session__title {
    font-weight: 600;
    font-size: 16px;
    line-height: 130%;
    /* or 21px */
    text-transform: uppercase;
    color: #F2830C;
  }

}

.session__title2 {
  font-weight: 600;
  font-size: 22px;
  line-height: 130%;
  /* or 29px */
  text-transform: uppercase;
  color: #F2830C;
}

@media (max-width: 480px) {

  .session__title2 {
    font-weight: 600;
    font-size: 16px;
    line-height: 130%;
    /* or 21px */
    text-transform: uppercase;
    color: #F2830C;
  }

}

.session__text {
  font-style: normal;
  font-weight: 400;
  font-size: 24px;
  line-height: 130%;
  color: #222222;
}

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

}

.session__list {
  margin: 0;
  padding-left: 18px;
  color: rgba(34, 34, 34, 1);
  list-style-type: disc;
}

.session__list li {
  margin-bottom: 6px;
}

.session__list span {
  color: #F2830C;
}

.session__speaker {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: center;
}

.session__speaker img {
  border-radius: 50%;
  object-fit: cover;
}

.session__speaker span {
  font-size: 13px;
  color: var(--muted);
}

.speaker__regal {
  text-align: center;
}

.program__actions {
  display: flex;
  gap: 23px;
  margin-top: 40px;
}

@media (max-width: 480px) {
  .program__actions {
    display: flex;
    flex-direction: column;
    gap: 13px;
    align-items: center;
  }
}

.btn {
  padding: 16px 40px;
  border-radius: 10px;
  font-size: 15px;
  cursor: pointer;
  border: none;
}

.btn--primary {
  background: var(--accent);
  color: #fff;
}

.btn--secondary {
  background: #2f2f2f;
  color: #fff;
}

/* 📱 адаптив */
@media (max-width: 768px) {
  .session {
    grid-template-columns: 1fr;

  }

  .session__speaker {
    margin-top: 10px;
    flex-direction: column;
  }
}

/*      PROGRAM BLOCK          */

/************/

/* bonus */

.bonus {
  padding-top: 99px;
  padding-bottom: 103px;
}

@media (max-width: 450px) {
  .bonus {
    padding: 0px 0px;
    background-color: #F6F6F6;
    margin: 40px 0px;
  }
}

.bonus__container {
  display: flex;
  gap: 58px;
  align-items: center;
  background-color: #F6F6F6;
  padding: 65px 82px 96px 82px;
  border-radius: 15px;
}

@media (max-width: 450px) {
  .bonus__container {
    display: block;
    padding: 0px 0px;
  }
}

.bonus__inner {
  display: flex;
  flex-direction: column;

}

@media (max-width: 450px) {
  .bonus__inner {
    padding: 46px 0px 49px 0px;
    align-items: center;

  }
}

.bonus__title {
  font-size: 35px;
  font-weight: 500;
  line-height: 130%;
  color: #F2830C;
  text-transform: uppercase;
  padding-bottom: 36px;
}

@media (max-width: 450px) {
  .bonus__title {
    font-size: 21px;
    padding-bottom: 17px;
    text-align: center;
  }

}

.bonus__title span {
  color: #222222;
}

.bonus__text {
  font-size: 20px;
  font-weight: 400;
  line-height: 130%;
  color: #222222;
  padding-bottom: 90px;
}

@media (max-width: 450px) {
  .bonus__text {
    font-size: 16px;
    padding-bottom: 50px;
    text-align: center;
  }

}

.bonus__button {
  max-width: 229px;
  width: 100%;
  background-color: #F2830C;
  font-size: 18px;
  font-weight: 400;
  line-height: 130%;
  color: #fff;
  text-align: center;
  padding: 21px 21px;
  border-radius: 10px;
}

@media (max-width: 450px) {
  .bonus__button {
    max-width: 287px;
    padding: 17px 50px;
  }


}

.bonus__button a {
  color: #fff;
}

/************/

/*pasport*/

.pasport {
  padding-bottom: 117px;

}

@media (max-width: 450px) {
  .pasport {
    margin-bottom: 54px;
    padding-bottom: 0px;
    background-color: rgba(236, 243, 219, 1);
  }
}

.pasport__inner {
  padding: 65px 46px 70px 72px;
  background-color: #ebf2da;
  border-radius: 15px;
  display: flex;
  gap: 64px;
}

@media (max-width: 450px) {
  .pasport__inner {
    padding: 42px 0px 50px 0px;
    background-color: rgba(236, 243, 219, 1);
    border-radius: 15px;
    display: block;
  }
}

.pasport__left {
  position: relative;
}

.pasport__title {
  font-size: 36px;
  font-weight: 500;
  line-height: 130%;
  color: #222222;
  text-transform: uppercase;
  padding-bottom: 25px;
}

@media (max-width: 450px) {
  .pasport__title {

    font-weight: 500;
    font-size: 24px;
    line-height: 130%;
    color: #222222;
    text-align: center;



  }

}

.pasport__text {
  font-size: 20px;
  font-weight: 400;
  line-height: 130%;
  color: #222222;
  padding-bottom: 22px;
}

@media (max-width: 450px) {
  .pasport__text {
    font-weight: 400;
    font-size: 16px;
    text-align: center;
  }

}

.pasport__text2 {
  font-size: 20px;
  font-weight: 400;
  line-height: 130%;
  color: #222222;
  padding-bottom: 8px;
}

@media (max-width: 450px) {
  .pasport__text2 {
    font-weight: 400;
    font-size: 16px;
    text-align: center;
  }

}

.pasport__text3 {
  font-size: 20px;
  font-weight: 400;
  line-height: 130%;
  color: #222222;
  padding-bottom: 40px;
}

@media (max-width: 450px) {
  .pasport__text3 {
    font-weight: 400;
    font-size: 16px;
    padding-bottom: 50px;
  }

}

.pasport__list {
  padding-bottom: 20px;
  padding-left: 20px;
  list-style-type: disc;
}

@media (max-width: 450px) {
  .pasport__list {
    padding-bottom: 30px;
    padding-left: 16px;
    list-style-type: disc;
  }

}

.pasport__description {
  font-size: 20px;
  line-height: 130%;
  font-weight: 400;
  color: #222222;
}

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

}

.pasport__button {
  max-width: 229px;
  width: 100%;
  background-color: #222222;
  font-size: 18px;
  font-weight: 400;
  line-height: 130%;
  color: #fff;
  text-align: center;
  padding: 21px 35px;
  border-radius: 10px;
}

@media (max-width: 450px) {
  .pasport__button {
    max-width: 287px;
    padding: 17px 50px;
  }

}

.pasport__logo {
  position: absolute;
  bottom: -3%;
  right: 28%;
  z-index: 20;
  width: 150px;
}

@media (max-width: 1020px) {
  .pasport__logo {
    display: none;
  }

}

/************/

/*usefull*/

.usefull {
  padding-top: 104px;
  padding-bottom: 127px;
}

@media (max-width: 1020px) {
  .usefull {
    padding-top: 40px;
    padding-bottom: 127px;
  }

}

.usefull__title {
  font-size: 36px;
  font-weight: 500;
  line-height: 130%;
  color: #F2830C;
  text-transform: uppercase;
  padding-bottom: 41px;
}

@media (max-width: 450px) {
  .usefull__title {
    font-weight: 500;
    font-size: 24px;
    padding-bottom: 25px;
    text-align: center;


  }
}

.usefull__title span {
  color: #222222;
}

.usefull__inner {
  display: flex;
  justify-content: center;
}

@media (max-width: 450px) {
  .usefull__inner {
    display: flex;
    flex-direction: column;
    gap: 17px;
    align-items: center;
  }
}


.usefull__card1 {
  width: 281px;
  height: 200px;
  padding: 32px 36px;
  border-radius: 15px;
  margin-right: 27px;
  transform: rotate(-2deg);
}

@media (max-width: 450px) {
  .usefull__card1 {
    width: 287px;
    height: 124px;
    padding: 28px 28px;
    transform: rotate(0deg);
    margin-right: 0px;
  }
}


.usefull__card2 {
  width: 275px;
  height: 200px;
  padding: 36px 28px;
  border-radius: 15px;
  margin-right: 25px;
  transform: rotate(2deg);
}

@media (max-width: 450px) {
  .usefull__card2 {
    width: 287px;
    height: 124px;
    padding: 17px 28px;
    transform: rotate(0deg);
    margin-right: 0px;
  }
}


.usefull__card3 {
  width: 281px;
  height: 200px;
  padding: 32px 0px 32px 33px;
  border-radius: 15px;
  margin-right: 28px;
  transform: rotate(-2deg);
}

@media (max-width: 450px) {
  .usefull__card3 {
    width: 287px;
    height: 124px;
    padding-top: 28px;
    transform: rotate(0deg);
    margin-right: 0px;
  }
}


.usefull__card4 {
  width: 275px;
  height: 200px;
  padding: 32px 23px;
  border-radius: 15px;
  transform: rotate(2deg);
}

@media (max-width: 450px) {
  .usefull__card4 {
    width: 287px;
    height: 124px;
    transform: rotate(0deg);
    margin-right: 0px;
  }
}


.usefull__green {
  background-color: #99C044;
}

.usefull__orange {
  background-color: #FBBB69;
}

.usefull__yellow {
  background-color: #FFD231;
}

.usefull__black {
  background-color: #222222;
}

.usefull__text {
  font-size: 24px;
  font-weight: 500;
  line-height: 130%;
  color: #222222;
}

@media (max-width: 450px) {
  .usefull__text {
    font-size: 18px;
  }
}

@media (max-width: 450px) {
  .usefull__br-mob {
    display: none;
  }
}


.usefull__white {
  color: #fff;
}

/*********/

/*location*/
.location {
  background-color: #FCFCFC;
}

.map {
  background-color: #333;
  filter: grayscale(1);
}

.map_mobile {
  display: none;
  filter: grayscale(1);
}

.location-container {
  position: relative;
}

.location__inner {
  display: flex;
  color: #fff;
  margin: auto 0;
  position: absolute;
  top: 20%;
  z-index: 1000;
}

.location__left {
  background-color: #333232;
}

.location__left-container {
  padding-left: 64px;
  padding-top: 72px;
  padding-right: 32px;
}

.location__upper>ul>li {
  color: #DDDDDE;
  font-size: 18px;
  font-weight: 400;
  line-height: 130%;
}

.location__upper>ul>li:last-child {
  display: flex;
}

.location__link {
  text-decoration: underline;
  color: #DDDDDE;
}

.location-title {
  padding-bottom: 12px;
  color: #FFF;
  font-size: 32px;
  font-weight: 700;
  line-height: 130%;
}

.location__lower {
  padding-top: 64px;
}

.location__lower-title {
  color: #FFF;
  font-size: 18px;
  font-weight: 600;
  line-height: 130%;
  padding-bottom: 8px;
}

.location__lower-subtitle {
  padding-bottom: 8px;
}

.location__lower-subtitle,
.location__lower>ul {
  color: #DDDDDE;
  font-size: 18px;
  font-weight: 400;
  line-height: 130%;
}

@media (max-width:1024px) {
  .location__inner {
    margin: auto;
    position: relative;
    width: 100%;
    top: 0;
    left: 0;
  }

  .map {
    display: none;
  }

  .map_mobile {
    display: block;
  }


  .location__left {
    width: 100%;
  }

  .location-container {
    padding-left: 16px;
    padding-right: 16px;
    display: flex;
    flex-direction: column-reverse;
    background-color: #333;
  }

  .location__right {
    display: none;
  }

  .location__left-container {
    display: flex;
    justify-content: space-between;
    gap: 64px;
    padding: 32px 32px;
  }

  .location__lower {
    padding-top: 0px;
  }
}

@media (max-width:550px) {
  .location__left-container {
    display: flex;
    flex-direction: column;
    padding: 32px 32px;
  }

  .location-container {}
}

/**********/

/*footer*/
.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: inherit;
  --footer-bg-color: inherit;

  /* 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: 20px;
  --footer-tel-fw: 700;
  --footer-tel-fz-mobile: 20px;
  --footer-tel-fw-mobile: 700;

  /* Phone Call Info Text */
  --footer-info-fz: 16px;
  --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: #fff;
  background-color: #333232;
}

.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;
}

.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 {
  align-self: flex-start;
}

.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: 30px;
  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);
  }
}

/**********************/

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(8px);
  /* Размытие фона под модалкой */
  -webkit-backdrop-filter: blur(8px);
  /* Для Safari */
  z-index: 9999;
  display: none;
  justify-content: center;
  align-items: center;
}

.modal2 {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  backdrop-filter: blur(8px);
  /* Размытие фона под модалкой */
  -webkit-backdrop-filter: blur(8px);
  /* Для Safari */
  z-index: 9999;
  display: none;
  justify-content: center;
  align-items: center;
}

.modal__inner2 {
  position: relative;
  width: 640px;
  height: 480px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  justify-content: center;
  text-align: center;
  gap: 20px;
  align-items: center;
  background-color: #FFF;
}


.modal__title2 {
  font-weight: 700;
  font-size: 32px;
  line-height: 130%;
  text-align: center;
  color: #222222;
}


.modal__text2 {
  font-weight: 400;
  font-size: 24px;
  line-height: 130%;
  text-align: center;
  color: #444444;
  padding-bottom: 30px;
  margin: 0 70px;
}

.modal__text3 {
  font-weight: 400;
  font-size: 24px;
  line-height: 130%;
  text-align: center;
  color: #444444;
  padding-bottom: 30px;
  margin: 0 120px;
}

.modal__button--tg2 {
  font-weight: 400;
  font-size: 14px;
  line-height: 130%;
  text-align: center;
  color: #706F6F;
}



.modal-icon {
  width: 40px;
  padding-bottom: 10px;
}

.modal__close-button {
  position: absolute;
  top: 3%;
  right: 3%;
  z-index: 10;
}

.modal__close-button2 {
  position: absolute;
  top: 3%;
  right: 3%;
  z-index: 10;
}

.modal__link {

  text-decoration: underline;
}

@media (max-width: 576px) {
  .modal2 {}

  .modal__inner2 {
    position: relative;
    max-width: 300px;
    height: 240px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    gap: 10px;
    align-items: center;
  }

  .modal__title2 {
    font-weight: 700;
    font-size: 18px;
    line-height: 130%;
    text-align: center;
    color: #222222;
  }


  .modal__text2 {
    font-weight: 400;
    font-size: 12px;
    line-height: 130%;
    text-align: center;
    color: #444444;
    padding-bottom: 10px;
    margin: 0 48px;
  }

  .modal__button--tg2 {
    font-weight: 400;
    font-size: 10px;
    line-height: 130%;
    text-align: center;
    color: #706F6F;
  }

  .modal__link {
    text-decoration: underline;
  }

  .modal-icon {
    width: 25px;
    padding-bottom: 5px;
  }

  .modal__close-button2 {
    position: absolute;
    top: 1%;
    right: 1%;
    z-index: 10;
  }

  .close-icon {
    width: 25px;
  }


  .modal__text3 {
    font-weight: 400;
    font-size: 12px;
    line-height: 130%;
    text-align: center;
    color: #444444;
    padding-bottom: 10px;
    margin: 0 35px;
  }
}


.modal--visible {
  display: flex;
}

.modal--visible2 {
  display: flex;
}

.userCheckButton:disabled {
  opacity: 0.6;
  border: 0px solid #fff;
  pointer-events: none;
}

.userCheckButton2:disabled {
  opacity: 0.6;
  border: 0px solid #fff;
  pointer-events: none;
}

.reg__hidden {
  display: none;
}

/*Новая модалка*/
.modal_access {
  --modal-close-button-color:#000;


  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  display: none;
  align-items: center;
  justify-content: center;
  padding-right: 15px;
  padding-left: 15px;
  background-color: rgba(0, 0, 0, 0.8);
}

.modal_access__inner {
  position: relative;
  display: flex;
  flex-direction: column;
  width: 600px;
  
  color: var(--modal-all-texts-color);
  text-align: center;
  background-color: var(--modal-bg-color);

}

@media (max-width: 650px) {

  .modal_access{
    width: 100%;
  }

  .modal_access__inner{
    width: 90%;
  }
}

@media (max-width: 450px) {

  .modal_access{
    width: 100%;
  }

  .modal_access__inner{
    width: 100%;
  }
}

.modal_access--visible {
  display: flex;
}

.modal_access__inner a img{
  width: 100%;
}


.modal_access__close-button {
  position: absolute;
  top: 20px;
  right: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-color: var(--modal-close-button-color);
  border-style: solid;
  border-width: 2px;
  border-radius: 50%;
  transition: transform 0.3s ease; 
  cursor: pointer; 
}

.modal_access__close-button::before {
  position: absolute;
  top: 47%;
  left: 18%;
  width: 20px;
  height: 2px;
  content: '';
  background-color: var(--modal-close-button-color);
  transform: rotate(45deg);
  transition: transform 0.3s ease;
}

.modal_access__close-button::after {
  position: absolute;
  top: 47%;
  left: 18%;
  width: 20px;
  height: 2px;
  content: '';
  background-color: var(--modal-close-button-color);
  transform: rotate(-45deg);
  transition: transform 0.3s ease;
}


.modal_access__close-button:hover {
transform: rotate(90deg); 
}

.modal_access__close-button:hover::before {
transform: rotate(135deg); 
}

.modal_access__close-button:hover::after {
transform: rotate(45deg); 
}
