@charset "UTF-8";
/*обнуление*/
*,
*::before,
*::after,
body {
  list-style: none;
  margin: 0;
  border: 0;
  padding: 0;
  box-sizing: border-box;
  font-size: inherit;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}

@font-face {
  src: url(../fonts/OpenSans-Regular.ttf) format(truetype);
  font-family: "Open Sans";
}
@font-face {
  src: url(../fonts/OpenSans-Bold.ttf) format(truetype);
  font-family: "Open Sans";
  font-weight: 700;
}
@font-face {
  src: url(../fonts/Pacifico-Regular.ttf) format(truetype);
  font-family: "Pacifico";
}
html,
body {
  width: 100%;
  height: 100%;
}

html::-webkit-scrollbar, .menu::-webkit-scrollbar, .advert::-webkit-scrollbar {
  width: 16px;
}

.header::-webkit-scrollbar, .nav::-webkit-scrollbar,
.wrape-card-text::-webkit-scrollbar,
.card-text::-webkit-scrollbar {
  display: none;
}

html::-webkit-scrollbar-track, .menu::-webkit-scrollbar, .advert::-webkit-scrollbar {
  position: absolute;
  background-color: transparent;
}

html::-webkit-scrollbar-thumb, .advert::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #2980b9;
  background: linear-gradient(to bottom, #2980b9, #6dd5fa, #ffffff);
}

.menu::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #2980b9;
  background: linear-gradient(to bottom, #2980b9, #6dd5fa, #ffffff);
}

body {
  font-family: "Open Sans", sans-serif;
  font-size: 20px;
  line-height: 1.5;
}

.page {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 100%;
}

/* header */
.header {
  position: relative;
  z-index: 4;
  overflow: scroll;
  height: 70px;
  padding: 0.25em 0.5em;
  box-shadow: inset 0px -9px 17px 0px rgba(34, 60, 80, 0.28);
  background-color: #f1f1f1;
}

.nav {
  position: absolute;
  top: 50%;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  overflow-y: scroll;
  height: 50px;
  min-width: 100vw;
  transform: translate(0, -50%);
}

.nav-text {
  margin-right: 30px;
  white-space: nowrap;
}

.nav-link {
  position: relative;
  height: 100%;
  padding-left: 30px;
  font-size: 19px;
  text-decoration: none;
  color: black;
  transition: all 0.5s linear;
}

.nav > :last-child {
  padding-right: 30px;
}

.nav > :first-child {
  padding-left: 45px;
}

.nav > :first-child .nav-text {
  margin-right: 45px;
}

.nav > :last-child .nav-text {
  margin: 0;
}

.nav-link::first-letter {
  font-size: 30px;
  color: #0f21ac;
}

.nav-link::after {
  content: " ";
  position: absolute;
  left: 50%;
  display: block;
  border-radius: 30%;
  width: 0%;
  height: 0px;
  background-color: black;
  transform: translate(-50%, 0);
  transition: all 0.5s linear;
}

.nav-link:hover::after {
  width: 100%;
  height: 3px;
}

.nav-link:hover {
  margin-bottom: 10px;
}

.section1-main-page {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 600px;
  background-color: black;
}

.wrape-section1 {
  margin-left: 175px;
  width: 100%;
  height: 100%;
  background-image: url(../img/primer1.webp);
  background-size: cover;
  background-repeat: no-repeat;
}

.main-h {
  margin-bottom: 20px;
  font-weight: 900;
  font-size: 35px;
  text-align: center;
}

.main-p {
  position: relative;
  text-indent: 20px;
}

.wrape-main-p {
  position: relative;
}

.wrape-main-p::before {
  content: "";
  position: absolute;
  left: -6.5%;
  top: -6.5%;
  display: block;
  border-radius: 50px;
  width: 113%;
  height: 113%;
  background-color: rgba(0, 0, 0, 0.6);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.text-about_Rusinov {
  position: absolute;
  left: 10%;
  top: 15%;
  display: block;
  max-width: 400px;
  color: rgb(255, 255, 255);
}

.a-victor-rusinov {
  text-decoration: none;
}

.span-victor-rusinov {
  display: inline-block;
  text-decoration: none;
  text-indent: 0%;
  color: blue;
  transition: all 0.5s linear;
}

.span-victor-rusinov2 {
  color: rgb(17, 105, 237);
}

.a-victor-rusinov:hover .span-victor-rusinov {
  transform: translate(0, -20%);
}

.section2-main-page, .section3-main-page {
  position: relative;
  border-top: 1px solid transparent;
  width: 100%;
  min-height: 100vh;
  padding-top: 2em;
  padding-bottom: 2em;
}

.section2-main-page {
  display: flex;
  flex-direction: column;
  border-top: 1px solid transparent;
  background-color: #48036F;
}

.section3-main-page {
  background-image: linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%);
  background-color: #8EC5FC;
}

.wrape-section2, .wrape-section3 {
  width: 100%;
  min-height: 100%;
}

.wrape-section2 {
  display: flex;
  flex: 1;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.section1-about-victor-rusinov-page {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 200px;
  padding-bottom: 2em;
  box-shadow: inset 0px 20px 20px 0px rgba(34, 60, 80, 0.28);
  background-image: linear-gradient(62deg, #8EC5FC 0%, #E0C3FC 100%);
  background-color: #8EC5FC;
}

.wrape-section1-about-victor-rusinov-page {
  width: 100%;
  min-height: 100vh;
}

.h1-zagolovok {
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  font-family: "Pacifico", cursive;
  font-style: normal;
  font-size: 50px;
  text-align: center;
}

.white-border {
  display: inline-block;
  margin: 0 auto;
  padding: 0.5em 1.5em;
  text-shadow: -5px -18px 20px rgba(255, 255, 255, 0.4), 0px 8px 20px rgba(255, 255, 255, 0.4), 0px 18px 23px rgba(255, 255, 255, 0.4);
}

.content {
  width: 100%;
  padding-bottom: 220px;
}

.footer {
  position: absolute;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-evenly;
  width: 100%;
  height: 220px;
  font-weight: 900;
  font-size: 25px;
  background-image: linear-gradient(360deg, #A9C9FF 0%, #FFBBEC 100%);
  background-color: #A9C9FF;
}

.link-footer:hover .img-footer {
  transform: scale(1.3);
}

.copyryte {
  padding: 0em 0.75em 0em 0.75em;
  text-align: center;
}

.link-footer {
  position: relative;
  height: 40px;
  min-width: 250px;
  text-align: center;
  text-decoration: none;
  color: #000000;
}

.img-footer {
  vertical-align: middle;
  margin: 0;
  height: 100%;
  padding: 0;
  transition: all 1.2s ease;
}

.link-footer > span {
  vertical-align: middle;
  padding-left: 10px;
}

.content-text {
  padding: 0.5em 1em;
  text-indent: 20px;
}

.bullet {
  counter-reset: li;
  list-style: none;
  margin: 1em 2em;
}

.bullet li {
  position: relative;
  margin-bottom: 1.5em;
  border: 3px solid #CADFCF;
  border-radius: 4px;
  padding: 0.6em;
  color: #231F20;
  background: #FEFEFE;
}

.span-victor-rusinov li {
  border-left: 0.5em solid blue;
  border-radius: 8% 2% 0% 2%/50% 50% 50% 50%;
}

.bullet li:before {
  counter-increment: li;
  content: counter(li);
  position: absolute;
  left: -0.85em;
  top: -0.85em;
  border: 3px solid #CADFCF;
  border-right: 0px solid #ff0000;
  border-bottom: 0px solid #ff0000;
  border-radius: 50%;
  padding-right: 0.4em;
  padding-left: 0.4em;
  font-weight: bold;
  font-size: 25px;
  color: #DCC24B;
  background: #FEFEFE;
}

.bullet-bez-numerik li::before {
  content: " ";
  border: none;
}

.bullet-bez-numerik li {
  text-align: center;
}

.bullet-bez-numerik {
  text-align: center;
}

.bullet-negativ li:before {
  content: counter(li);
  border: 3px solid #ff0202;
  border-right: 0px solid #ff0000;
  border-bottom: 0px solid #ff0000;
}

.bullet-negativ li {
  border: 3px solid #ff0000;
}

.info {
  display: block;
  border-left: 0.5em solid blue;
  border-radius: 0% 2% 0% 2%/50% 50% 50% 50%;
  padding: 1em 1.5em;
  background-image: linear-gradient(180deg, #A9C9FF 0%, #FFBBEC 100%);
  background-color: #A9C9FF;
}

.info-main-page {
  margin: 2em auto 0 auto;
  width: 70%;
}

.h2-zagolovok-left {
  margin: 1em 1.5em;
}

.title h2 {
  margin-bottom: 1em;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 40px;
  color: #fcfffc;
}

.list_menu a {
  border-left: 2px solid #F5B7C7;
  padding-left: 5px;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 25px;
  color: #fcfffc;
  transition: 0.2s ease;
}

.list_menu a:hover {
  border-left: 2px solid #F5B7C7;
  padding-left: 10px;
  transition: 0.2s ease;
}

.list_menu li {
  margin: 20px 0;
}

.list_menu {
  margin-bottom: 50px;
}

.menu {
  position: fixed;
  left: -900px;
  top: 0;
  overflow-y: scroll;
  height: 100vh;
  padding: 5vh 50px;
  background: rgba(20, 20, 20, 0.9);
  transition: 0.4s ease;
}

body.mouse .wrape-menu:hover .menu {
  left: 0;
  transition: 0.5s ease;
}

body.mouse .wrape-menu:hover {
  z-index: 6;
}

.faq-input:checked ~ .wrape-menu {
  z-index: 7;
}

.faq-input:checked ~ .wrape-menu .menu {
  left: 0;
  z-index: 100000;
  transition: 1s linear;
}

.faq-input:checked ~ .wrape-menu > .span-menu-btn-no-animation {
  opacity: 0;
}

.wrape-menu {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 3;
  width: 15px;
  height: 100vh;
}

.span-menu-btn {
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 40px;
  height: 40px;
  color: white;
  opacity: 0;
  transform: translate(0, -50%);
  animation-name: svg-menu-arrow;
  animation-duration: 15s;
  animation-delay: 0s;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
}

.span-menu-btn-no-animation {
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  stroke: #f7f3f3;
  stroke-width: 10;
  visibility: hidden;
  transition: 1s linear;
}

.span-menu-btn svg {
  width: 100%;
  height: 100%;
  fill: #ffffff;
  stroke: #000000;
  stroke-width: 10;
}

.menu .span-menu-btn-no-animation {
  position: absolute;
  right: 0;
}

.menu .span-menu-btn-no-animation svg {
  transform: rotate(180deg);
}

body.touch .span-menu-btn {
  visibility: hidden;
}

body.touch .span-menu-btn-no-animation {
  visibility: visible;
}

@keyframes svg-menu-arrow {
  0% {
    opacity: 0;
    transform: translateX(-100px) scale(2);
  }
  94% {
    opacity: 0;
    transform: translateX(-100px) scale(2);
  }
  95% {
    opacity: 1;
    transform: translateX(-100px) scale(2);
  }
  100% {
    opacity: 0;
    transform: translateX(100px) scale(4);
  }
}
.faq {
  margin: 0px auto;
  width: 800px;
  min-width: 500px;
  padding: 2em;
}

.faq-item {
  margin-bottom: 5px;
  border: 1px solid #b91125;
}

.faq-title {
  position: relative;
  display: block;
  padding: 1em 2.5em;
  color: #fff;
  background-color: #8B42D6;
  transition: background 0.2s ease-out;
  cursor: pointer;
}

.faq-title:after {
  content: "";
  position: absolute;
  right: 15px;
  top: 50%;
  display: block;
  border-style: solid;
  border-width: 8px 5px 0 5px;
  border-color: #fff transparent transparent transparent;
  transform: translateY(-50%);
}

.faq-title:hover {
  background-color: #b91125;
}

.faq-input, .radio, .faq-input-door {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  position: absolute;
  width: 0;
  height: 0;
}

.faq-input:checked ~ .faq-title {
  background-color: #b91125;
}

.faq-input:checked ~ .faq-title:after {
  border-style: solid;
  border-width: 0 5px 8px 5px;
  border-color: transparent transparent #fff transparent;
}

.faq-input:checked ~ .faq-text {
  grid-template-rows: 1fr;
  padding: 1em 2.5em;
  opacity: 1;
}

.faq-text p {
  min-height: 0px;
}

.faq-text {
  display: grid;
  grid-template-rows: 0fr;
  overflow: hidden;
  color: #fff;
  background-image: linear-gradient(160deg, #0093E9 0%, #80D0C7 100%);
  background-color: #0093E9;
  opacity: 0;
  transition: all 0.5s ease-out;
}

.card-wrapper {
  margin: 20px;
  width: 350px;
  height: 450px;
  perspective: 500px;
}

.card {
  border-radius: 10px;
  width: 100%;
  height: 100%;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.2);
  transform-style: preserve-3d;
  transition: transform 0.2s linear;
}

.card-wrapper:hover .card {
  transform: rotateY(-180deg);
}

.card-wrapper:hover .card-text {
  overflow-y: scroll;
}

.card-front,
.card-back {
  position: absolute;
  border-radius: 10px;
  width: 100%;
  height: 100%;
  backface-visibility: hidden;
}

.card-front {
  background-image: linear-gradient(43deg, #4158D0 0%, #C850C0 46%, #FFCC70 100%);
  background-color: #4158D0;
}

.card-back {
  background-color: white;
  transform: rotateY(180deg);
}

.card-image {
  display: block;
  border-radius: 10px;
  width: 100%;
  height: 100%;
}

.card-title {
  margin: 1em 0.5em;
  font-size: 24px;
  text-align: center;
  color: #0f21ac;
}

.card-text {
  overflow: hidden;
  height: 100%;
  padding: 0 1.5em;
  color: #333;
}

.wrape-img {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 95%;
  transform: translate(-50%, -50%);
}

.wrape-card-text {
  overflow: hidden;
  width: 100%;
  height: 80%;
  padding-bottom: 50px;
}

.video-wrape {
  margin-left: 50%;
  width: 40%;
  transform: translateX(-50%);
}

.video {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  background-color: #000000;
}

.video__link {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.video__media {
  position: absolute;
  left: 0;
  top: 0;
  border: none;
  width: 100%;
  height: 100%;
}

.video__button {
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 1;
  display: none;
  border: none;
  width: 68px;
  height: 48px;
  padding: 0;
  background-color: transparent;
  transform: translate(-50%, -50%);
  cursor: pointer;
}

.video__button-shape {
  fill: #212121;
  fill-opacity: 0.8;
  transition: all 0.5s linear;
}

.video__button-icon {
  fill: #ffffff;
}

.video__button:focus {
  outline: none;
}

.video:hover .video__button-shape,
.video__button:focus .video__button-shape {
  fill: #ff0000;
  fill-opacity: 1;
}

/* Enabled */
.video--enabled {
  cursor: pointer;
}

.video--enabled .video__button {
  display: block;
}

.element-animation {
  opacity: 0;
  transform: translateY(20px);
  transition: all 1.5s;
}

.element-animation.faq .faq-item:nth-child(even) {
  transform: translate(-100%, -50%);
}

.element-animation.faq .faq-item:nth-child(odd) {
  transform: translate(100%, -50%);
}

.element-animation.element-show {
  opacity: 1;
  transform: translate(0%, 0%);
  transition: all 1.5s linear;
}

.element-animation.faq .faq-item.element-show:nth-child(odd) {
  transform: translate(0, 0);
  transition: all 1s linear;
}

.element-animation.faq .faq-item.element-show:nth-child(even) {
  transform: translate(0, 0);
  transition: all 1s linear;
}

.wrape-advert {
  position: fixed;
  left: 67%;
  bottom: 0px;
  width: 30vw;
}

.element-animation.element-show.footer .wrape-advert {
  position: absolute;
  bottom: 100%;
}

.element-animation.snape-container, .element-animation.snape-container-one {
  opacity: 1;
  transform: translateY(0);
}

.element-animation.footer {
  opacity: 1;
  transform: none;
}

.element-animation.snape-container-one {
  background-size: 10px 0%;
}

.element-animation.snape-container-one.snape-container-end {
  background-size: 10px 0%, 0 10px;
}

.element-animation.snape-container-one.element-show {
  background-size: 10px 100%;
}

.element-animation.snape-container-one.snape-container-end.element-show {
  background-size: 10px 100%, calc(50% + 5px) 10px;
}

.element-animation.snape-container-end {
  background-size: 10px 0%, 0% 10px;
}

.element-animation.snape-container-end.element-show {
  background-size: 10px 100%, 100% 10px;
}

.element-animation.snape-container-start {
  background-size: 10px 0%, 0 10px;
}

.element-animation.snape-container-start.element-show {
  background-size: 10px 100%, calc(50% + 5px) 10px;
}

.element-animation.snape-container-right {
  background-size: 10px 0%, 0% 10px;
}

.element-animation.snape-container-right.element-show {
  background-size: 10px 100%, 100% 10px;
}

.element-animation.snape-container-right {
  background-size: 10px 0%, 0% 10px;
}

.element-animation.snape-container-right.element-show {
  background-size: 10px 100%, 100% 10px;
}

.element-animation.snape-container-left {
  background-size: 10px 0%, 0% 10px;
}

.element-animation.snape-container-left.element-show {
  background-size: 10px 100%, 100% 10px;
}

.advert-btn {
  position: absolute;
  right: 0;
  top: 0;
  z-index: 13;
  border: none;
  width: 50px;
  height: 50px;
  transform: translate(0, -120%) rotate(0deg);
  transition: all 2.5s ease-out;
}

.advert {
  position: relative;
  bottom: 0px;
  z-index: 12;
  display: grid;
  grid-template-rows: 0fr;
  overflow-y: scroll;
  border-radius: 30px 30px 0 0;
  width: 100%;
  max-height: 500px;
  color: #fff;
  background-image: linear-gradient(160deg, #0093E9 0%, #74bab2 100%);
  background-color: #0093E9;
  opacity: 0.5;
  transition: all 2.5s ease-out;
}

.advert div {
  min-height: 0px;
}

.faq-input:checked ~ .advert {
  grid-template-rows: 1fr;
  opacity: 1;
}

.faq-input:checked ~ .advert-btn {
  opacity: 1;
  transform: translateX(0%) rotate(45deg);
}

.my-label-13 {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  transition: background 0.2s ease-out;
  cursor: pointer;
}

.my-label-13 > svg {
  width: 150%;
  height: 150%;
  fill: yellow;
  stroke: orange;
  stroke-width: 0.7px;
  transform: translate(-15%, -33%);
}

.advert .content-text {
  padding-right: 0;
  padding-left: 16px;
  font-size: 0.75em;
}

.wrape-section-main-page {
  width: 100vw;
  min-height: 100vh;
  background-color: #beade3;
}

.section-main-page {
  margin: 0 auto;
  width: 80%;
  min-height: 100vh;
}

.snape-container-one {
  width: 100%;
  min-height: calc(18vw + 30px);
  background-image: linear-gradient(#48036F, #48036F);
  background-position: 50% top;
  background-size: 10px 100%;
  background-repeat: no-repeat;
}

body.mouse .snape-container-one {
  min-height: calc((18vw + 30px) / 2);
}

.snape-container-one.snape-container-end {
  width: 100%;
  min-height: calc(18vw + 30px);
  background-image: linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F);
  background-position: 50% bottom, right top;
  background-size: 10px 100%, calc(50% + 5px) 10px;
  background-repeat: no-repeat;
}

.snape-container {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: calc(18vw + 30px);
  padding: 20px 0 0 0;
  background-repeat: no-repeat;
}

.snape-container-shadov {
  position: absolute;
  bottom: 0;
  display: block;
  width: 58%;
  height: 70px;
  background-image: -webkit-gradient(linear, left bottom, left top, from(rgb(190, 173, 227)), to(rgba(190, 173, 227, 0.8)));
}

.snape-container-shadov-end {
  width: 98%;
}

.snape-container-shadov svg {
  position: absolute;
  right: 0;
  right: 3%;
  top: 50%;
  width: 50px;
  height: 50px;
  transform: translateY(-50%);
  cursor: pointer;
}

.snape-container-shadov-left svg {
  left: 3%;
}

.snape-container-shadov-end svg {
  left: 3%;
}

.wrape-content-text {
  height: 18vw;
}

.faq-input:checked ~ .wrape-content-text {
  height: auto;
}

.faq-input-back:checked {
  display: block;
}

.faq-input:checked ~ .snape-container-shadov {
  width: 100%;
  background-image: none;
}

.faq-input:checked ~ .snape-container-shadov svg {
  right: 1.74%;
}

.faq-input:checked ~ .snape-container-shadov-left svg {
  left: 1.74%;
}

.faq-input:checked ~ .snape-container-shadov-end svg {
  left: 1.74%;
}

.faq-input:checked ~ .snape-container-shadov svg {
  transform: translateY(-50%) rotate(180deg);
}

.faq-input:checked ~ .wrape-content-text {
  padding-bottom: 80px;
}

.snape-container-start {
  background-image: linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F);
  background-position: left top, left top;
  background-size: 10px 100%, calc(50% + 5px) 10px;
}

.snape-container-start .snape-container-shadov {
  right: 0;
}

.snape-container-left .snape-container-shadov {
  right: 0;
}

.snape-container-left {
  background-image: linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F);
  background-position: left top, left top;
  background-size: 10px 100%, 100% 10px;
}

.snape-container-right {
  background-image: linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F);
  background-position: right top, left top;
  background-size: 10px 100%, 100% 10px;
}

.snape-container-end {
  padding: 20px 0 0 0;
  background-image: linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F);
  background-position: right bottom, left top;
  background-size: 10px 100%, 100% 10px;
}

.snape-container-final {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 400px;
  background-image: linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F), linear-gradient(#48036F, #48036F);
  background-position: right bottom, left top, left top, left bottom;
  background-size: 10px 100%, 100% 10px, 10px 100%, 100% 10px;
  background-repeat: no-repeat;
  background-color: #74bab2;
}

.snape-container .video-wrape {
  display: inline-block;
  margin: 0px 20px 0px 20px;
  width: 40%;
  transform: translate(0, 0);
}

.snape-container-start .video-wrape {
  float: left;
}

.snape-container-left .video-wrape {
  float: left;
}

.snape-container-right .video-wrape {
  float: right;
}

.snape-container-end .video-wrape {
  float: right;
}

.wrape-content-text .content-text::first-letter {
  font-size: 1.9em;
  color: #48036F;
}

.wrape-our-contact {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  padding: 10px;
}

.wrape-our-contact h2 {
  flex-basis: 20%;
  padding: 0.5em;
}

.wrape-our-contact-for-img {
  display: flex;
  flex-basis: 80%;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-evenly;
  width: 100%;
  height: 100%;
}

.wrape-img-our-contact {
  width: 300px;
  height: 300px;
}

.wrape-img-our-contact img {
  border-radius: 100%;
  width: 100%;
  height: 100%;
}

.radio_label {
  position: relative;
  margin: 0.5em;
  text-align: center;
  cursor: pointer;
}

.radio_label span {
  display: inline-block;
  padding-top: 0.5em;
}

.radio_label::after {
  content: "";
  position: absolute;
  top: 0;
  display: block;
  border-radius: 100%;
  width: 300px;
  height: 300px;
  background-color: rgba(0, 0, 0, 0.5);
  transition: all 1s linear;
  -webkit-backdrop-filter: blur(5px);
          backdrop-filter: blur(5px);
}

.wrape-text-our-contact {
  position: absolute;
  left: 100%;
  width: 100%;
  min-height: 100px;
  opacity: 0;
  transition: opacity 1.5s linear;
}

.wrape-text-our-contact {
  display: grid;
  place-items: center;
}

.radio#radio_1:checked ~ .our-contact-for-Reutov {
  position: relative;
  left: 0;
  opacity: 1;
}

.radio:checked + .radio_label::after {
  background-color: rgba(0, 0, 0, 0);
  -webkit-backdrop-filter: blur(0px);
          backdrop-filter: blur(0px);
}

.radio#radio_2:checked ~ .our-contact-for-Dmitrov {
  position: relative;
  left: 0;
  opacity: 0.8;
}

.wrape-section-main-page.door {
  overflow: hidden;
  min-height: 116vh;
}

.section-main-page.door {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  min-height: 116vh;
}

.wrape-img-door {
  position: relative;
  z-index: 0;
  overflow: hidden;
  border-radius: 100% 100% 0 0;
  width: 40vw;
  height: 40vw;
  opacity: 1;
  transform-origin: bottom;
  transition: all 2s ease;
  transition-delay: 0.5s;
}

.wrape-img-door div {
  position: absolute;
  left: 50%;
  bottom: 20vh;
  z-index: 0;
  width: 50vw;
  font-size: 50px;
  color: rgb(34, 49, 212);
  opacity: 0;
  transform: translate(-50%, 12%) scale(0.350877, 0.350877);
  transition: all 1s linear;
  transition-delay: 2s;
}

.img-monument {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 70px;
  height: 90px;
  transform: translate(-50%, 37%);
  transition: all 1.5s ease;
  transition-delay: 1.5s;
}

.faq-input {
  display: none;
  width: 0;
  height: 0;
}

.faq-input-door {
  display: none;
}

.img-gutar {
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 85px;
  height: 125px;
  opacity: 0;
  transform: translate(-50%, -160%);
  transition: all 1.5s ease;
  transition-delay: 1.5s;
}

.img-ray {
  position: absolute;
  left: 50%;
  bottom: 0%;
  width: auto;
  height: 113.1vw;
  transform: scale(0.3333333333) translate(-49%, 0);
  transform-origin: bottom left;
  transition: all 2s ease;
  transition-delay: 0.5s;
}

.faq-input-door:checked + .wrape-section-main-page .wrape-img-door {
  z-index: 15;
  transform: scale(3);
}

.faq-input-door:checked + .wrape-section-main-page .wrape-img-door .door-left-into {
  transform: rotateY(75deg);
}

.faq-input-door:checked + .wrape-section-main-page .wrape-img-door .img-door {
  opacity: 0;
}

.faq-input-door:checked + .wrape-section-main-page .wrape-img-door div {
  opacity: 1;
}

.faq-input-door:checked + .wrape-section-main-page .wrape-img-door .img-gutar {
  opacity: 1;
  transform: translate(-50%, -37%);
}

.faq-input-door:checked + .wrape-section-main-page .wrape-img-door .img-ray {
  width: auto;
  height: 116vh;
  transform: scale(0.3333333333) translate(-49%, 0);
}

.img-door {
  position: absolute;
  z-index: 1;
  width: 51%;
  height: 100%;
  transition: all 1.5s ease, opacity 1.5s cubic-bezier(1, 0, 1, 1);
  transition-delay: 0s;
}

.door-left-into {
  transform-origin: 24%;
}

.img-door-right {
  right: -1%;
  bottom: -1%;
  transform: rotateY(180deg);
}

.img-door-left {
  left: -1%;
  bottom: -1%;
}

.door-left-into.img-door-right {
  transform: rotateY(0);
  transform-origin: 80%;
}

.section-main-page.door {
  width: 100vw;
}

@media (max-width: 1500px) {
  .wrape-section1 {
    margin: 0;
  }
  .wrape-advert {
    left: 63%;
    width: 35vw;
  }
}
@media (max-width: 1400px) {
  .wrape-section1 {
    background-position: -50px;
  }
  .wrape-advert {
    left: 58%;
    width: 40vw;
  }
}
@media (max-width: 1350px) {
  .wrape-section1 {
    background-position: -100px;
  }
}
@media (max-width: 1250px) {
  .wrape-section1 {
    background-position: -200px;
  }
  .wrape-advert {
    left: 53%;
    width: 45vw;
  }
}
@media (max-width: 1200px) {
  .wrape-section1 {
    background-position: -430px;
  }
  .text-about_Rusinov {
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
  .menu {
    width: 65%;
    padding: 5vh 1vw;
  }
  .h1-zagolovok {
    font-size: 40px;
  }
  .video-wrape {
    width: 80%;
  }
  .advert-btn {
    transform: translate(0%, -120%) rotate(0deg);
  }
  .faq-input:checked ~ .advert-btn {
    transform: translateX(0%) rotate(45deg);
  }
  .snape-container-shadov {
    width: 57%;
  }
  .snape-container-shadov-end {
    width: 98%;
  }
  .section-main-page {
    width: 99%;
  }
  .snape-container {
    min-height: calc(22.275vw + 30px);
  }
  .wrape-img-door div {
    width: 70vw;
  }
}
@media (max-width: 900px) {
  .wrape-section1 {
    background-position: -530px;
  }
  .video-wrape {
    width: 90%;
  }
  .wrape-advert {
    left: 44%;
    width: 50vw;
  }
  .advert-btn {
    transform: translate(0%, -120%) rotate(0deg);
  }
  .faq-input:checked ~ .advert-btn {
    transform: translateX(0%) rotate(45deg);
  }
  .wrape-img-door {
    width: 50vw;
    height: 50vw;
  }
  .img-ray {
    width: auto;
    height: 143.1vw;
  }
  .wrape-img-door div {
    width: 70vw;
  }
}
@media (max-width: 800px) {
  .text-about_Rusinov {
    width: 70%;
    max-width: none;
  }
  .wrape-section1 {
    background-position: -630px;
  }
  .menu {
    width: 90%;
  }
  .faq {
    width: 95%;
    min-width: 200px;
  }
  .footer {
    height: 300px;
    font-size: 20px;
  }
  .content {
    padding-bottom: 300px;
  }
  body {
    font-size: 15px;
  }
  .title h1 {
    font-size: 25px;
  }
  .video-wrape {
    width: 95%;
  }
  .radio_label::after, .wrape-img-our-contact {
    width: 150px;
    height: 150px;
  }
  .wrape-img-door div {
    width: 80vw;
  }
}
@media (max-width: 650px) {
  .wrape-advert {
    left: 36%;
    width: 60vw;
  }
  .snape-container-shadov {
    width: 98%;
    height: 50px;
  }
  .faq-input:checked ~ .wrape-content-text {
    padding-bottom: 50px;
  }
  .snape-container .video-wrape {
    position: relative;
    left: 50%;
    float: none;
    width: 60%;
    transform: translate(calc(-50% - 5px), 0);
  }
  .snape-container-shadov svg {
    width: 40px;
    height: 40px;
  }
  .wrape-content-text {
    height: 23vw;
  }
  .wrape-img-door {
    width: 90vw;
    height: 90vw;
  }
  .img-ray {
    width: auto;
    height: 257.1vw;
  }
  .wrape-img-door div {
    width: 95vw;
  }
}
@media (max-width: 550px) {
  .main-h {
    font-size: 25px;
  }
  .wrape-section1 {
    background-position: -730px;
  }
  .faq {
    padding: 2em 0 0 0;
  }
  .title h1 {
    font-size: 20px;
  }
  .h1-zagolovok {
    font-size: 30px;
  }
  .faq-title {
    padding: 1em 2.5em 1em 0.5em;
  }
  .faq-input:checked ~ .faq-text {
    padding: 1em 2.5em;
    padding: 1em 2.5em 1em 0.5em;
  }
  .menu .span-menu-btn-no-animation {
    position: absolute;
    right: 50%;
    top: 10px;
    transform: translateX(50%);
  }
  .menu {
    padding: 10vh 1vw;
  }
  .video-wrape {
    width: 97%;
  }
  .wrape-advert {
    left: 21%;
    width: 75vw;
  }
  .snape-container-shadov {
    width: 96%;
  }
  .wrape-content-text {
    height: 30vw;
  }
  .wrape-img-door div {
    bottom: 23vh;
    width: 95%;
    font-size: 40px;
  }
}
@media (max-width: 450px) {
  .wrape-img-door div {
    bottom: 22vh;
    font-size: 33px;
  }
}
@media (max-width: 350px) {
  .wrape-img-door div {
    bottom: 23vh;
    font-size: 30px;
  }
}/*# sourceMappingURL=main.css.map */