body {
    margin:0;
    padding:0;
    font-family: 'Roboto', sans-serif;
}
form {margin: 0; padding:0;}

hr {border:0;height:1px;margin:14px 0;background:#ececec;}

.fx {display:flex;}
.fx-wrap {flex-wrap:wrap;}
.auto {margin:auto;}

#top-block {
    max-width: 77%;
    height: 80px;
    background: #ce2635;
    border-radius: 0 40px 40px 0;
    margin: 0;
    display:flex;
}
#top-block > div:nth-child(1) {flex: 0 0 20%;}
#top-block > div:nth-child(2) {display:flex;}

#top-logo {
    background: url("../img/logo_edp.png") left center no-repeat;
    background-size:42px;
    padding-left: 52px;
    color:white;
    font-size:13px;
    line-height:18px;
    font-weight:bold;
    width: 120px;
    margin: auto;
}

.container {
    margin:auto;
    padding:0 10px;
    width: calc(100% - 20px);
    max-width:1140px;
}
h1 {
    font-size: 34px;
    line-height: 100%;
    color: #2d3464;
    font-weight: bold;
}
h2 {
    font-size: 24px;
    line-height: 100%;
    color: #2d3464;
    font-weight: bold;
}

p{
    font-size: 18px;
    line-height: 100%;
    color: #2d3464;
}

.form-elements {display:flex;flex-wrap:wrap;justify-content: center;}
.form-elements > div {flex: 1 0 200px;  padding-right: 4px;}
.form-elements input[type=text], .form-elements input[type=email] {
    width:calc(100% - 24px);
    color: rgba(0,0,0,.87);
    border-radius: .28571429rem;
    box-shadow: 0 0 0 0 transparent inset;
    border:0;
    background:#f2f3f4;
    padding:12px;
}
.form-elements span {color:#2d3464;font-size:11px;line-height: 26px;}

.brands {display:flex;flex-wrap:wrap;justify-content: center;}
.brands input[type=checkbox] {display:none;}
.brand-img {width:220px;height:100px;background-size:contain;opacity: 0.6;margin:4px;cursor:pointer;}
.brands input[type=checkbox]:checked + label .brand-img {opacity: 1;}

/*.cr-costume > div {margin:10px 0;}*/

.cr-costume input[type=checkbox] {
    display: none
}

.cr-costume input[type=checkbox] + label {
    text-align: left;
    padding-left: 36px;
    line-height:28px;
}

.cr-costume input[type=checkbox] + label:before {
    content: ' ';
    background-color: white;
    width: 24px;
    height: 24px;
    color: #ee7586;
    font-size: 24px;
    margin-left: -36px;
    margin-top: 0;
    position: absolute;
    border: 1px #CCC solid;
    line-height: 12px;
}

.cr-costume input[type=checkbox]:checked + label:before {
    content: '\2714';
    background-color: white;
    width: 24px;
    height: 24px;
    color: #ee7586;
    font-size: 36px;
    margin-left: -36px;
    margin-top: 0;
    position: absolute;
    line-height: 12px;
}

.cr-costume input[type=checkbox].q-w-warning + label:before {
    background-color: #fe9e9e
}

.cr-costume input[type=radio] {
    display: none
}

.cr-costume input[type=radio] + label {
    text-align: left;
    padding-left: 36px;
    line-height:28px;
}

.cr-costume input[type=radio] + label:before {
    content: ' ';
    background-color: white;
    width: 24px;
    height: 24px;
    color: #ee7586;
    font-size: 24px;
    margin-left: -36px;
    margin-top: 0;
    position: absolute;
    border: 1px #CCC solid;
    border-radius: 42px;
    line-height: 12px;
}

.cr-costume input[type=radio]:checked + label:before {
    content: '\2714';
    background-color: white;
    width: 24px;
    height: 24px;
    color: #ee7586;
    font-size: 36px;
    margin-left: -36px;
    margin-top: 0;
    position: absolute;
    line-height: 12px;
}

.cr-costume input[type=radio].q-w-warning + label:before {
    background-color: #fe9e9e;
}

.warning {color:red!important;background-color: #ffdede!important;}
.cr-costume input[type=checkbox].warning + label:before {background-color:pink;}


.ak-block {
    background: #f5f5f5;
    padding: 2px 18px 18px 18px;
    border-radius: 14px;
}

.btn {
    border-radius: 30px;
    font-size: 16px;
    line-height: 100%;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: 14px 32px;
    border: none;
    cursor: pointer;
    transition: 0.3s;
}
.btn:hover {opacity:0.8;}

.btn-primary {
    background: #ce2635;
    box-shadow: 0 15px 30px rgb(206 38 53 / 30%);
    color: #fff;
}
sup {color:red;}
#form_errors {padding:14px 0;color:red;font-size: 13px;}

.sm-text {font-size: 14px;}