body:has(.authPage) {
    background: url('../images/authBg.jpg'), #F5FDFF;
    background-repeat: no-repeat;
    background-size: 100% 100%;
    height: 100vh;
}
body:has(.authPage .signup) {
    height: auto;
    padding: 120px 0;
    background-image: none;
 }
.authPage {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.authPage .mainBlock {
    max-width: 500px;
    margin: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
}
.authPage .mainBlock .logoWrapper {
    margin-bottom: 35px;
}
.authPage .mainBlock .card h1 {
    font-size: 24px;
    font-weight: 600;
    line-height: 20px;
}
.authPage .mainBlock .card p {
    font-size: 16px;
    font-weight: 500;
    line-height: 20px;
    color: #00000099;
}
.authPage .mainBlock .card {
    padding: 40px;
    border-radius: 10px;
    border: none;
    box-shadow: 0 0 15px rgba(12, 12, 13, 0.1);
}
.form-check a {
    font-size: 14px;
    font-weight: 400;
    line-height: 19.6px;
    text-align: right;
    color: #00000099;
    text-decoration: none;
}
input.form-control[type="password"] {
    background: url('../images/lockIcon.png');
    background-position: 16px center;
}
input.form-control[type="email"], input.form-control.emailIcon {
    background: url('../images/envlopeIcon.png');
}
input.form-control.userIcon {
    background: url('../images/userIcon.png'); 
}
input.form-control.mobileIcon {
    background: url('../images/phoneIcon.png'); 
}
.authPage .mainBlock.signup {
    max-width: 855px;
}
.fieldWrap input.form-control.flagIcon {
    background-image: url('../images/flagIcon.png');
}
.fieldWrap input.form-control.addressIcon {
    background-image: url('../images/addressIcon.png');
}
.fieldWrap input.form-control.locationIcon {
    background-image: url('../images/locationIcon.png');
}
.form-check-input[type=checkbox] {
    border: 1px solid #77CADA;
}
.mulipleCheck {
    border: 1px solid #0000001A;
    border-radius: 12px;
    padding: 12px;
    margin-bottom: 24px;
}
.indvidualCheck {
    margin-bottom: 20px;
}
.authPage .indvidualCheck .form-check{
    align-items: flex-start;
}
.mulipleCheck .form-check, .indvidualCheck .form-check{
    margin-bottom: 12px;
    font-size: 14px;
    font-weight: 500;
    line-height: 16.8px;
    text-align: left;
    display: flex;
    align-items: center;
    gap: 10px;
    padding-left: 0px;
}
.mulipleCheck .form-check .form-check-input[type=checkbox],
.indvidualCheck .form-check .form-check-input[type=checkbox] {
    margin: 0px;
}
.form-check-input:checked {
    background-color: #77CADA;
    border-color: #77CADA;
}
p {
    font-size: 16px;
    line-height: 22.4px;
    color: #000;
}
label.form-label {
    font-size: 16px;
    font-weight: 400;
    line-height: 22.4px;
    text-align: left;
    color: #00000099;
}
.fieldWrap input.form-control {
    padding-left: 50px;
    height: 46px;
    border-radius: 8px;
    border: 1px solid #00000014;
    background-position: 16px center;
    background-repeat: no-repeat;
}
.fieldWrap input.form-control:focus {
    border-color: #01FDD2;
    box-shadow: none;
}
button.showPassword {
    position: absolute;
    top: 42px;
    right: 16px;
    border: none;
    background: transparent;
}
button.btn.btn-primary.btnGreen {
    width: 100%;
    height: 51px;
    padding: 16px;
    border-radius: 8px;
    background: #01FDD2;
    border: 1px solid #01FDD2;
    font-size: 16px;
    font-weight: 600;
    line-height: 19.2px;
    text-align: center;
    color: #012126;
}
.socialBlock {
    padding: 24px 0 0;
}
.socialBlock p.signLine {
    position: relative;
    text-align: center;
}
.socialBlock p.signLine::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    background: #D9D9D9;
    width: 100%;
    height: 2px;
    top: 50%;
}
.socialBlock p.signLine span {
    background-color: #fff;
    padding: 5px 10px;
    position: relative;
    z-index: 1;
}
.socialBlock ul {
    list-style: none;
    gap: 12px;
    margin: 20px 0;
}
.socialBlock ul li a:hover {
    border: 1px solid #01FDD2;
}
.socialBlock ul li a {
    border: 1px solid #00000033;
    border-radius: 100px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}
p.accountLine {
    color: #000000CC;
    font-size: 14px;
    font-weight: 400;
    line-height: 19.6px;
}
p.accountLine a {
    color: #01FDD2;
}
@media only screen and (max-width: 1199px) {
    body:has(.authPage) {
        background-size: cover;
    }
}
@media only screen and (min-width: 900px) and (max-width: 950px) {
    body:has(.authPage) {
        height: auto;
        padding: 30px 0;
    }
}
@media only screen and (max-width: 768px) {
    body:has(.authPage .signup) {
        padding: 50px 0;
    }
}
@media only screen and (max-width: 767px) {
    body:has(.authPage .signup) {
        padding: 30px 0;
    }
    body:has(.authPage) {
        height: auto;
        background-image: none;
        padding: 20px 0;
    }
    .authPage .mainBlock .card {
        padding: 25px 15px;
    }
}