/**
 * B2B Login Page Styles
 * Scoped to .b2b-login-page body class — only affects B2B store login page.
 */

/* Constrain page width on desktop */
.b2b-login-page .column.main {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}

/* Hide the default page title on B2B login */
.b2b-login-page .page-title-wrapper {
    display: none;
}

/* Hero section above the login form */
.b2b-login-hero {
    margin-bottom: 40px;
    width: 100%;
}

/* Login container: two-column layout with image left, form right */
.b2b-login-page .login-container {
    display: flex;
    align-items: stretch;
    gap: 0;
}

/* Image block takes left half */
.b2b-login-page .login-container .b2b-login-image {
    flex: 1 1 50%;
    min-width: 0;
}

.b2b-login-page .login-container .b2b-login-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

/* Login form takes right half */
.b2b-login-page .login-container .block-customer-login {
    flex: 1 1 50%;
    min-width: 0;
    padding: 40px;
    border: none;
}

/* Left-align login block content */
.b2b-login-page .block-customer-login .block-title {
    text-align: left;
}

.b2b-login-page .block-customer-login .block-title h2 {
    text-align: left;
}

.b2b-login-page .block-customer-login .block-subtitle {
    text-align: left;
}

/* Remove border below login form */
.b2b-login-page .block-customer-login .fieldset.login {
    border-bottom: none;
}

/* Responsive: stack vertically on mobile */
@media (max-width: 767px) {
    .b2b-login-page .login-container {
        flex-direction: column;
    }

    .b2b-login-page .login-container .b2b-login-image,
    .b2b-login-page .login-container .block-customer-login {
        flex: 1 1 100%;
    }

    .b2b-login-page .login-container .block-customer-login {
        padding: 20px 0;
    }
}
