body {
  display: block;
  height: 100vh;
}

@font-face {
font-family: Voxel; /* Имя шрифта */
src: url(Voxel.otf); /* Путь к файлу со шрифтом */
}

.screen_help {
  display: none;
}

P, label {
  font-family: 'Pragmatica', arial;
  font-size: 18px;
  text-decoration: none;
}
span {
  font-family: Voxel;
  font-size: 5.56vw;
}
.fo {
display: block;
width: 480px;
position: relative;
top: -2vw;
margin: 62px 9px -24px 20px;
font-size: 18px;
text-align: left;
color: black;
}

.form {
font-size: 3.33vw;
font-style: normal;
font-weight: 500;
font-size: 48px;
line-height: 48px;
text-align: center;
margin-top: 7px;
margin-left: -9vw;
letter-spacing: -0.04em;
}

.screen{
width: 90vw;
height:90vh;
position: absolute;
top: 10vh;
overflow: hidden;
}


.forma {
display: none;
width: 37vw;
height: 42vw;
z-index: 15;
background-color: white;
color: black;
position: fixed;
top: 5vh;
border-radius: 20px;
left: calc( 50% - 18.5vw);
}

input[type='name'],
input[type="tel"],
input[type="name1"],
input[type="email"], select {
  height: 40px;
  border: 2px solid #E4E4E4;
  font-size: 17px;
  line-height: 46px;
  padding: 0 15px;
  margin-left: 20px;
  outline: none;
  border-radius: 5px;
  appearance: none;
}

input[type='name']:focus,
input[type="tel"]:focus,
input[type="name1"]:focus,
input[type="email"]:focus {
  border: 2px solid #DFFB6E;
}

.background{
  display: none;
  height: 100%;
  width: 100%;
  position:fixed;
  top: 0;
  z-index: 13;
  background: rgba(255, 255, 255, 0.2);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
}


.question{
  display: none;
  width: 37vw;
  height: 44vw;
  z-index: 15;
  background-color: white;
  color: black;
  position: fixed;
  top: 5vh;
  border-radius: 20px;
  left: calc( 50% - 18.5vw);
  }

.forma_after{
  display: none;
  width: 50vw;
  height: 11.3vw;;
  z-index: 15;
  color: black;
  border-radius: 20px;
  background-image: url(../img/form_after.png);
  background-size: cover;
  color: white;
  position: fixed;
  padding: 20px;
  top: calc( 50% - 11.5vh);
  left: calc( 50% - 25vw);
}


.form-split {
  width: 426px;
  position: relative;
  display: flex;
  justify-content: space-between;
}

.custom {
position: absolute;
z-index: -1;
opacity: 0;
}

.checkbox-list {
width: 198px;
position: relative;
display: flex;
justify-content: space-between;
margin: 20px;
}

.custom+label {
display: inline-flex;
align-items: center;
user-select: none;
}
.custom+label::before {
content: '';
display: inline-block;
width: 1em;
height: 1em;
flex-shrink: 0;
flex-grow: 0;
border: 2px solid #000;
border-radius: 0.25em;
margin-right: 0.5em;
background-repeat: no-repeat;
background-position: center center;
background-size: 50% 50%;
}

.custom:not(:disabled):not(:checked)+label:hover::before {
border-color: #000000;
background-color: #DFFB6E;
}
.custom:checked+label::before {
border-color: #000000;
background-color: #D763F7;
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3e%3c/svg%3e");
}

.button, .next1 {
  font-size: 22px;
  width: 215px;
  height: 25px;
  color: black;
  background-color: #DFFB6E;
  border: 2px solid #DFFB6E;
  border-radius: 6px;
  margin-left: auto;
  margin-right: auto;
  z-index: 10;
  margin-top: 42px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
}

.button:hover, .next1:hover {
color: black;
background-color: white;
border: 2px solid #DFFB6E;
transition: .5s;
cursor: pointer;
}

.but {font-size: 22px}

.cross, .cross2 {
position: relative;
  width: 41px;
  height: 41px;
  border-radius: 6px;
  background-repeat: no-repeat;
  background-image: url(../img/close.svg);
  left: 480px;
  top: 10px;
  z-index: 115;
}

.form_a {
font-size: 48px;
line-height: 48px;
text-align: left;
margin-top: 39px;
margin-left: 0vw;
letter-spacing: -0.04em;
color: black;
width: 30vw;
}

.list{
  margin-left: 18px auto;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
}
.list1, .list2 {
  display: flex;
  flex-direction: column;
  width: 100%;;
}
 .list1 span {
  font-size: 36px;
  margin-right: 1vw;
  color: black;
}
.list1 label {
 font-size: 22px;
 margin-right: 1vw;
 color: black;
}

.list2 span {
 font-size: 3vw;
 margin-right: 1vw;
 margin-left: 1vw;
 color: black;

}
.list2 label {
font-size: 32px;
margin-right: 2vw;
color: black;
}


.radio-list{
  width: 450px;
  margin-left: 20px;
  margin-top: 28px;

}
.rcustom{
   position: absolute;
   z-index: -1;
   opacity: 0;
 }
 /* для элемента label связанного с .custom-radio */
 .rcustom+label {
   display: inline-flex;
   align-items: center;
   user-select: none;
 }

 /* создание в label псевдоэлемента  before со следующими стилями */
 .rcustom+label::before {
   content: '';
   display: inline-block;
   width: 1em;
   height: 1em;
   flex-shrink: 0;
   flex-grow: 0;
   border: 2px solid black;
   border-radius: 50%;
   margin-right: 0.5em;
   background-repeat: no-repeat;
   background-position: center center;
   background-size: 50% 50%;
 }
 /* стили при наведении курсора на радио */
 .rcustom:not(:disabled):not(:checked)+label:hover::before {
  background-color: #DFFB6E;
  border: 2px solid black;
 }
 /* стили для активной радиокнопки (при нажатии на неё) */

 .rcustom:checked+label::before {
  border-color: #D763F7;
  background-color: #D763F7;
  border: 2px solid black;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='000000'/%3e%3c/svg%3e");
 }

@media screen and (min-width: 441px) and (max-width: 820px) {

  .question {
    width: 70vw;
    height: 60vh;
    left: calc(50% - 35vw);
  }
  p.form {
    margin-left: -19vw;
  }
  .forma {
    width: 70vw;
    height: 56vh;
    left: calc(50% - 35vw);
  }
  .fo {
    top: -5vw;
  }
  .forma_after {
    width: 79vw;
    height: 17.3vw;
    left: calc(50% - 40vw);
  }
  p.form_a {
    margin-top: 0;
  }
}

/* адаптивы для mobiles */
@media screen and (min-width: 381px) and (max-width: 440px) {

  .question {
    width: 100vw;
    height: 100vh;
    left: 0;
  }

  p.form {
    margin-left: -3vw;
    margin-top: 7vw;
  }

  .fo {
    top: -5vw;
    margin: 62px 9px -12px 20px;
    width: 266px;
  }

  .forma {
    width: 100vw;
    height: 100vh;
    left: 0;
    top: 8vh;
  }

  .question {
    left: 0;
    top: 8vh;
  }
  .form-split {
    width: 400px;
    position: relative;
    display: grid;
  }
  .forma_after {
    width: 92vw;
    height: 17.3vw;
    left: 0;
    top: 43vh;
    border-radius: 10px;
  }
  .form_a {
    font-size: 32px;
    line-height: 29px;
    margin-top: -8px;
    margin-left: 0vw;
  }
  .list2 span {
    font-size: 45px;
  }
  .cross2, .cross {
    top: 10px;
    left: 359px;
  }

  .background {
    top: 0px;
    z-index: 13;
    left: 0;
  }
}

@media screen and (min-width: 200px) and (max-width: 380px) {

  .question {
    width: 100vw;
    height: 100vh;
    z-index: 15;
    background-color: white;
    color: black;
    position: fixed;
    top: 10vh;
    border-radius: 20px;
    left: 0;
  }
  .forma {
    height: 100vh;
    width: 100vw;
  }
}
