.account-page {
    background:#f4f4f4;
    color:#202020;
}

.account-page .account-page-header {
    padding:38px 0 42px;
    background:#d4002a;
    color:#fff;
}

.account-page .account-page-header h1 {
    margin:0;
    color:#fff;
    font-size:32px;
    line-height:1.2;
    font-weight:700;
}

.account-page .account-content {
    padding:48px 0 72px;
}

.account-page .account-card {
    width:100%;
    max-width:760px;
    margin:0 auto;
    padding:42px 48px;
    background:#fff;
    box-shadow:0 4px 16px rgba(0,0,0,.08);
}

.account-page .account-card.account-card-register {
    max-width:980px;
}

.account-page .account-title {
    margin:0 0 8px;
    font-size:25px;
    line-height:1.3;
    font-weight:700;
}

.account-page .account-lead {
    margin:0 0 32px;
    color:#555;
    font-size:15px;
    line-height:1.65;
}

.account-page .account-lead strong,
.account-page .type-red {
    color:#d4002a;
}

.account-page .account-switch {
    display:flex;
    margin:-42px -48px 38px;
    border-bottom:1px solid #e1e1e1;
}

.account-page .account-switch a {
    display:flex;
    flex:1 1 50%;
    align-items:center;
    justify-content:center;
    min-height:58px;
    padding:12px 18px;
    color:#333;
    font-size:14px;
    font-weight:700;
    text-decoration:none;
    background:#f1f1f1;
}

.account-page .account-switch a.active {
    color:#fff;
    background:#d4002a;
}

.account-page .account-grid {
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:22px 24px;
}

.account-page .account-field.full {
    grid-column:1 / -1;
}

.account-page .account-field label {
    display:block;
    margin:0 0 8px;
    color:#333;
    font-size:13px;
    font-weight:700;
}

.account-page .account-field .form-control {
    width:100%;
    height:52px;
    padding:0 16px;
    border:1px solid #d5d5d5;
    border-radius:0;
    color:#222;
    background:#fff;
    box-shadow:none;
}

.account-page .account-field .form-control:focus {
    border-color:#d4002a;
    outline:0;
}

.account-page .account-password {
    position:relative;
}

.account-page .account-password .form-control {
    padding-right:52px;
}

.account-page .account-password-toggle {
    position:absolute;
    top:0;
    right:0;
    width:52px;
    height:52px;
    border:0;
    color:#666;
    background:transparent;
}

.account-page .account-options,
.account-page .account-actions {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
}

.account-page .account-options {
    margin-top:24px;
}

.account-page .account-actions {
    margin-top:30px;
}

.account-page .account-check {
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin:0;
    font-size:12px;
    line-height:1.55;
}

.account-page .account-check input {
    width:18px;
    height:18px;
    margin:0;
    accent-color:#d4002a;
}

.account-page .account-link {
    color:#222;
    font-size:12px;
    font-weight:700;
    text-decoration:none;
}

.account-page .account-link:hover {
    color:#d4002a;
}

.account-page .account-submit {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:170px;
    min-height:46px;
    padding:0 24px;
    border:0;
    border-radius:24px;
    color:#fff;
    font-size:13px;
    font-weight:700;
    background:#ef3340;
}

.account-page .account-submit .icon {
    margin-left:14px;
}

.account-page .account-message {
    margin-top:34px;
    padding:22px 24px;
    background:#f3f3f3;
}

.account-page .account-message b {
    display:block;
    margin-bottom:8px;
    font-size:14px;
}

.account-page .account-message a {
    color:#d4002a;
    font-size:13px;
    font-weight:700;
}

.account-page .account-consents {
    display:grid;
    gap:14px;
    margin-top:28px;
}

@media (max-width:767.98px) {
    .account-page .account-page-header {
        padding:25px 16px;
    }
    .account-page .account-page-header h1 {
        font-size:24px;
    }
    .account-page .account-content {
        padding:24px 0 48px;
    }
    .account-page .account-card {
        padding:28px 20px;
        box-shadow:none;
    }
    .account-page .account-switch {
        margin:-28px -20px 28px;
    }
    .account-page .account-grid {
        grid-template-columns:1fr;
        gap:18px;
    }
    .account-page .account-field.full {
        grid-column:auto;
    }
    .account-page .account-options,
    .account-page .account-actions {
        align-items:flex-start;
        flex-direction:column;
    }
    .account-page .account-submit {
        width:100%;
    }
}
