/* +++++++++++++++++ Common title design for  Login page, Registration page, Reset password, customer new password page +++++++++++++++++++++++++ */
.login-form .title,
.registration-form .title,
.password-reset-form .title,
.customer-new-password .title {
    display        : block;
    font-size      : 24px;
    padding-bottom : 5px;
}
/* +++++++++++++++++  Login page design +++++++++++++++++++++++++ */
.page-login .login-form {
    max-width: 540px;
    width: auto;
    margin: 0 auto;
    padding: 40px;
    background: #FFFFFF;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.02), 0 -2px 10px rgba(0, 0, 0, 0.05);
    border-radius: 8px;
}
.page-login .login-form .title {
    font-weight: 600;
    font-size: 22px;
    line-height: 120%;
    letter-spacing: 0.01em;
    color: #000000;
    margin: 0 0 30px;
    padding-bottom: 0;
    display: block;
}
.page-login .login-form .form-row {
    margin: 0;
}
.page-login .login-form .form-row ~ .form-row {
    margin-top: 16px;
}
.page-login .login-form label {
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
    margin: 0 0 6px;
    display: block;
    width: auto;
}
.page-login .login-form input[type="text"],
.page-login .login-form input[type="password"],
.page-login .login-form input[type="email"] {
    height: 40px;
    width: 100%;
    border: 1px solid #d5d5d5;
    padding: 5px 15px;
    font-size: 14px;
    box-sizing: border-box;
    display: block;
    background: #ffffff;
}
.page-login .login-form .submit-row {
    float: none;
}
.page-login .login-form .login-button {
    height: 45px;
    width: 100%;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
    text-align: center;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #FFFFFF;
    background: #000000;
    border: none;
    cursor: pointer;
}
.page-login .login-form .remember {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    width: auto;
}
.page-login .login-form .remember label {
    display: none;
}
.page-login .login-form input[type="checkbox"] {
    display: inline-block;
    width: auto;
    height: auto;
    margin: 0;
}
.page-login .login-form .lost-password a {
    color: #3C3C3C;
    font-size: 13px;
    text-decoration: underline;
}
.page-login .login-form .lost-password a:hover {
    color: #000000;
}
.page-login .login-form .account-register a {
    color: #3C3C3C;
    font-size: 13px;
}
.page-login .login-form .account-register a:hover {
    color: #000000;
}

.page-login .checkout-as-guest-button {
    text-align: center;
}
.page-login .checkout-as-guest-button .checkout-as-guest {
    background: none;
    border: none;
    padding: 0;
}
.page-login .checkout-as-guest-button a {
    display: block;
    font-size: 16px;
    line-height: 35px;
    font-weight: 500;
    color: #171127;
    background: none;
    border: 1px #171127 solid;
    height: 46px;
    width: 318px;
    border-radius: 6px;
    padding: 5px 20px;
    transition: all 300ms ease-out 0s;
}

.page-login .checkout-as-guest-button a:hover {
    color: #ffffff;
    background: #171127;
    border: 1px #171127 solid;
}
/* +++++++++++++++++  Registration page design +++++++++++++++++++++++++ */
.registration-form label {
    width : 150px;
}
.registration-form input {
    width : 305px;
}
.registration-form select {
    width : 312px;
}
.registration-form input.radio,
.registration-form input.checkbox {
    width : auto;
}
.registration-form input.checkbox {
    margin-right : 5px;
}
.registration-form .recaptcha-container {
    padding-left : 150px;
}
/* +++++++++++++++++  Registration page — card design (matches login) +++++++++++++++++++++++++ */
.page-registration .registration-form {
    max-width: 540px;
    width: auto;
    margin: 0 auto;
    padding: 40px;
    background: #FFFFFF;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.02), 0 -2px 10px rgba(0, 0, 0, 0.05);
    border-radius: 8px;
}
.page-registration .registration-form .title {
    font-weight: 600;
    font-size: 22px;
    line-height: 120%;
    letter-spacing: 0.01em;
    color: #000000;
    margin: 0 0 30px;
    padding-bottom: 0;
    display: block;
}
.page-registration .registration-form .form-row {
    margin: 0;
    width: 100%;
}
.page-registration .registration-form .form-row ~ .form-row {
    margin-top: 16px;
}
.page-registration .registration-form label {
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
    margin: 0 0 6px;
    display: block;
    width: auto;
}
.page-registration .registration-form input[type="text"],
.page-registration .registration-form input[type="password"],
.page-registration .registration-form input[type="email"] {
    height: 40px;
    width: 100%;
    border: 1px solid #d5d5d5;
    padding: 5px 15px;
    font-size: 14px;
    box-sizing: border-box;
    display: block;
    background: #ffffff;
}
.page-registration .registration-form select {
    height: 40px;
    width: 100%;
    border: 1px solid #d5d5d5;
    padding: 5px 12px;
    font-size: 14px;
    box-sizing: border-box;
    display: block;
    background: #ffffff;
}
.page-registration .registration-form input[type="radio"],
.page-registration .registration-form input[type="checkbox"] {
    width: auto;
    height: auto;
    display: inline-block;
}
.page-registration .registration-form .submit-row {
    float: none;
}
.page-registration .registration-form .submit-row button {
    height: 45px;
    width: 100%;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
    text-align: center;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #FFFFFF;
    background: #000000;
    border: none;
    cursor: pointer;
    margin-left: 0;
}
.page-registration .registration-form .recaptcha-container {
    padding-left: 0;
}
/* +++++++++++++++++  Reset password page design +++++++++++++++++++++++++ */

.password-reset-form .lost-password-text {
    color     : #00CED1;
    font-size : 16px;
    padding   : 5px 0;
}
.password-reset-form .form-row {
    display : inline-block;
}
.password-reset-form .form-row label {
    display : block;
    width   : auto;
}
.password-reset-form .form-row input {
    width : 210px;
}
.password-reset-form .form-row.submit-row button {
    margin-left : 3px;
}
.dockable {
    background-color : #FFFFFF;
    position : fixed;
}
.password-reset-form .form-row {
    position : relative;
}
.password-reset-form .errorlist.after {
    left     : 0;
    position : absolute;
    top      : 58px;
    width    : 140px;
}
/* +++++++++++++++++  Reset password page — card design +++++++++++++++++++++++++ */
.password-reset-form {
    max-width: 540px;
    width: auto;
    margin: 0 auto;
    padding: 40px;
    background: #FFFFFF;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.02), 0 -2px 10px rgba(0, 0, 0, 0.05);
    border-radius: 8px;
}
.password-reset-form .title {
    font-weight: 600;
    font-size: 22px;
    line-height: 120%;
    letter-spacing: 0.01em;
    color: #000000;
    margin: 0 0 10px;
    padding-bottom: 0;
    display: block;
}
.password-reset-form .lost-password-text {
    color: #3C3C3C;
    font-size: 12px;
    font-weight: 600;
    line-height: 18px;
    padding: 0 0 30px;
}
.password-reset-form .form-row {
    display: block;
    margin: 0;
    position: relative;
}
.password-reset-form .form-row ~ .form-row {
    margin-top: 16px;
}
.password-reset-form .form-row label {
    font-style: normal;
    font-weight: 500;
    font-size: 14px;
    line-height: 20px;
    color: #000000;
    margin: 0 0 6px;
    display: block;
    width: auto;
}
.password-reset-form .form-row input {
    height: 40px;
    width: 100%;
    border: 1px solid #d5d5d5;
    padding: 5px 15px;
    font-size: 14px;
    box-sizing: border-box;
    display: block;
    background: #ffffff;
}
.password-reset-form .form-row.submit-row {
    float: none;
    margin-top: 16px;
}
.password-reset-form .form-row.submit-row button {
    height: 45px;
    width: 100%;
    font-weight: 600;
    font-size: 14px;
    line-height: 17px;
    text-align: center;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #FFFFFF;
    background: #000000;
    border: none;
    cursor: pointer;
    margin-left: 0;
}

/* +++++++++++++++++  customer new password page design +++++++++++++++++++++++++ */
.customer-new-password .form-row label {
    width : 120px;
}



/* +++++++++++++++++  Login page design +++++++++++++++++++++++++ */
@media screen and (max-width: 767px) {
    .page-login .login-form {
        background-color: transparent;
        padding: 0;
        width: auto;
    }
    .login-form input {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        height: auto;
        padding: 7px;
        width: 100%;
    }
}
/* +++++++++++++++++  registration page design +++++++++++++++++++++++++ */
@media screen and (max-width: 767px) {
    .registration-form {
        padding: 0;
    }
    .registration-form label {
        display: block;
    }
    .registration-form input,
    .registration-form select {
        box-sizing: border-box;
        height: auto;
        padding: 7px;
        width: 100%;
    }
}