@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,300;0,400;0,600;1,400&display=swap');
body {
    font-family: 'Montserrat', sans-serif;
    overflow-x: hidden;
}


.first {
    height: 100vh;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
}

.header {
    margin-top: 8vh;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    align-items: center;
    font-size: 3vh;
    line-height: 22px;
    letter-spacing: 0.18em;
}
.header > .logo {
    margin-top:5vh;
    margin-bottom:10vh;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.header > .logo > img{
    width: 30%;
}
.header > .btn {
    display: none;
}

.main {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0.05em;
}
.main > .text {
    max-width: 80%;
    font-style: normal;
    font-weight: 300;
    font-size: 3.5vh;
    line-height: 155%;
    /* or 74px */
    letter-spacing: 0.05em;
    margin-bottom:5vh
}
.main > .image {
    mix-blend-mode: multiply;
    max-width: 50%;  
}
.main > .image > img {
    object-fit: cover;
    max-width: 100%;  
}

.video  {
    display: none;
}
.second {
    margin-top: 10vh;
}

.options {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0.05em;
}
.option {
    width: 80%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.option > img {
    width: 26%;
    margin-bottom: 2vh;
}
.option > span {
    font-style: normal;
    font-weight: 300;
    font-size: 3vh;
    line-height: 155%;
    text-align: center;
    letter-spacing: 0.05em;

    margin-bottom: 5vh;
}

.more-info {
    margin-top:10vh;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.more-info > .text {
    width: 80%;
    margin:auto;
}
.more-info > .text > h2 {
    margin-bottom: 2vh;
    font-size: 3vh;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #BDBDBD;
}
.more-info > .text > .desc {
    font-weight: 300;
    font-size: 2.4vh;
    line-height: 155%;
    letter-spacing: 0.05em;
}



.more-info > .text > .complect > h3 {
    margin-top: 3vh;
    font-size: 3vh;
    line-height: 155%;
    letter-spacing: 0.05em;
}

.more-info > .text > .complect > .complect-unit  {
    display: flex;
    align-items: center;
    margin-bottom: 2vh;
}

.more-info > .text > .complect > .complect-unit > .count {
    padding-left: 1vh;
    font-weight: 300;
    font-size: 2.4vh;
    line-height: 155%;
    letter-spacing: 0.05em;
    color: #BDBDBD;
}
.more-info > .text > .complect > .complect-unit > .name {
    padding-left: 0.8vh;
    font-weight: 300;
    font-size: 2.4vh;
    line-height: 155%;
    letter-spacing: 0.05em;
}
.more-info > .text > .complect > .complect-unit > img {
    width: 6vh;
    
}
.more-info > .text > .price > h3 {
    font-weight: 300;
    font-size: 2.8vh;
    line-height: 155%;
    letter-spacing: 0.05em;
    
}
.more-info > .text > .price > h3 > small {
    font-weight: 500;
    font-size: 2vh;
    line-height: 155%;
    letter-spacing: 0.05em;
    
}
.more-info > .image  {
    width: 80%;
    margin: 5vh auto;
}
.more-info > .image > img {
    width: 100%;
    mix-blend-mode: multiply;
}

.galery {
    margin-top: 80px;
}
.galery > img {
    width: 50%;
}

.footer {
    width: 80%;
    margin: 5vh auto;
    display: grid;
    grid-template-areas: 
        "footer-text"
        "form"
        "ur-data";
    grid-template-rows: 1fr;
    grid-template-columns: 1fr;
    grid-gap: 5vh;
}
#footer-text {
    grid-area: footer-text;
}
#ur-data {
    grid-area: ur-data;
}
#footer-form {
    grid-area: form;
}
.footer > .text {
    display: flex;
    flex-direction: column;
}
.footer > .text > h3 {
    margin: 1vh 0;
    font-weight: 300;
    font-size: 3.5vh;
    line-height: 155%;
    letter-spacing: 0.05em;
   
}
.footer > .text > h5 {
    font-weight: 300;
    margin: 1vh 0;
    font-size: 2.5vh;
    line-height: 155%;
    letter-spacing: 0.05em;
}
.footer > .text > .market-text {
    font-weight: 300;
    font-size: 24px;
    line-height: 155%;
    letter-spacing: 0.05em;
}
.footer > .text > .market-img {
    margin-top: 20px;
    margin-bottom: 100px;
    width: 350px;
}
.footer > .text > .ur-data {
    margin-bottom: 7px;
    font-size: 18px;
    line-height: 22px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #BDBDBD;
}
.footer > .text > .phone {
    margin-bottom: 20px;
    font-weight: 300;
    font-size: 28px;
    line-height: 155%;
    letter-spacing: 0.05em;
}
.footer > .text > .ur-address {
    font-weight: 300;
    font-size: 18px;
    line-height: 155%;
    letter-spacing: 0.05em;
    line-height: 22px;
    color: #BDBDBD;
}

.rules-link {
    margin-top: 25px;
    font-size: 22px;
    line-height: 22px;
    letter-spacing: 0.12em;
    text-decoration: none;
    color: #BDBDBD;
    cursor: pointer;
}
.rules-link:hover {
    text-decoration: none;
    color: #000000;
    cursor: pointer;
}
.footer > .form {
    width: 120%;
    margin: 0 -10%;
    padding: 30px 2.5%;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    
    border: 1px solid #000000;
    box-sizing: border-box;
    height: 450px;
}
.footer > .form > .inputs {
    width: 100%;
    margin: 0 auto;
    height: 115px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
}
.footer > .form > .inputs > input { 
    width: 100%;
    padding: 11px 15px;
    margin: 0 auto;
    height: 50px;
    border: 1px solid #000000;
    box-sizing: border-box;
}.footer > .form > .inputs >  input::placeholder {
    font-weight: 300;
    font-size: 18px;
    line-height: 155%;
    letter-spacing: 0.05em;
    color: #aaa;
}
.footer > .form > .inputs > .error input:invalid { 
    border: 1px solid red;
}
.footer > .form > .inputs > .error input:valid  { 
    border: 1px solid #000000;
}
.footer > .form > .address-input{    
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-sizing: border-box;
}
.footer > .form > .address-input > input { 
    display: none;
    width: 100%;
    padding: 11px 15px;
    margin: 0 auto;
    height: 50px;
    border: 1px solid #000000;
    box-sizing: border-box;
}
.footer > .form > .address-input > .error input:invalid { 
    border: 1px solid red;
}
.footer > .form > .address-input > .error input:valid  { 
    border: 1px solid #000000;
}
.footer > .form > .address-input >  input::placeholder {
    font-weight: 300;
    font-size: 18px;
    line-height: 155%;
    letter-spacing: 0.05em;
    color: #aaa;
}

.error {
    border: 1px solid red !important;
}

.footer > .form > .price > h3 {
    width: 100%;
    margin: 0 auto;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 500;
    font-size: 2.6vh;
    line-height: 155%;
    
    /* or 37px */
    letter-spacing: 0.05em;;
}
.footer > .form > .price > h3 > small {
    font-weight: 500;
    font-size: 2vh;
    line-height: 155%;
    letter-spacing: 0.05em;
}
.footer > .form > .payment-type > h4  {
    margin-top: 0px;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 500;
    font-size: 2.2vh;
    line-height: 155%;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #BDBDBD;
    margin-bottom: 7px;
}
.footer > .form > .payment-type > .payment-types-radio{
    display: flex;
    flex-direction: column;
    height: 10vh;
    justify-content: space-between;
}

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

.form_radio label {
	display: flex;
	cursor: pointer;
	position: relative;
	padding-left: 30px;
	margin-right: 0;
	line-height: 18px;
    user-select: none;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 500;
    font-size: 18px;
    line-height: 155%;
    letter-spacing: 0.05em;
    color: #000000;
}

.form_radio label > span{ 
    margin-left: 5px;
    margin-top: 2px;
    padding: 2px 4px 3px 4px;
    height: 100%;
    background-color: rgba(255, 0, 0, 0.2); /* 0.5 - полупрозрачный */
    word-wrap: break-word;
    font-family: Montserrat;
    font-style: normal;
    font-weight: 600;
    font-size: 11px;
    line-height: 100%;
    letter-spacing: 0.05em;
    color: #FFFFFF;
}

.form_radio label:before {
	content: "";
	display: inline-block;
    height: 24px;
    width: 24px;
	position: absolute;
	left: 0;
	bottom: 1px;
	background: url(/images/rb-1.svg) 0 0 no-repeat;
}

/* Checked */
.form_radio input[type=radio]:checked + label:before {
	background: url(/images/rb-2.svg) 0 0 no-repeat;
}
.form_radio input[type=radio]:checked + label > span {
	background-color: rgba(255, 0, 0, 1);
}
/* Hover */
.form_radio label:hover:before {
	filter: brightness(120%);
}
/* Disabled */
.form_radio input[type=radio]:disabled + label:before {
	filter: grayscale(100%);
}

.footer > .form > button {
    transition: 300ms;
    width: 100%;
    height: 50px;
    margin: 0 auto;
    font-size: 18px;
    line-height: 155%;
    text-align: center;
    letter-spacing: 0.05em;
    color: #FFFFFF;
    background-color: #000000;
    border: 1px solid #000000;
    box-sizing: border-box;    
    cursor: pointer;
}

.footer > .form > button:disabled {
   
    color: #BDBDBD;
    background-color: #fff;
    border: 1px solid #BDBDBD;
    cursor: not-allowed;
}
