:root {
    --gbn-auth-navy: #06254a;
    --gbn-auth-navy-deep: #031a34;
    --gbn-auth-blue: #1f6fff;
    --gbn-auth-blue-dark: #0d55d8;
    --gbn-auth-cyan: #23b8d2;
    --gbn-auth-red: #d61f32;
    --gbn-auth-ink: #10213b;
    --gbn-auth-muted: #64748b;
    --gbn-auth-line: #dbe5f0;
    --gbn-auth-soft: #f4f8fc;
    --gbn-auth-success: #087a55;
    --gbn-auth-danger: #b42334;
}

/* v7.1.1 — self-contained client login surface. */
.gbn-auth-shell,
.gbn-auth-shell * { box-sizing: border-box; }

body.gbn-client-login-page {
    margin: 0 !important;
    min-width: 320px;
    min-height: 100vh;
    min-height: 100dvh;
    overflow-x: hidden;
    background:
        radial-gradient(circle at 6% 8%, rgba(31,111,255,.12), transparent 30rem),
        radial-gradient(circle at 93% 94%, rgba(214,31,50,.07), transparent 28rem),
        #eef4fa !important;
}

/* Remove the active WordPress theme framing only on the GovBID login page. */
body.gbn-client-login-page header,
body.gbn-client-login-page footer,
body.gbn-client-login-page .entry-title,
body.gbn-client-login-page .page-title,
body.gbn-client-login-page .wp-block-post-title,
body.gbn-client-login-page .post-title,
body.gbn-client-login-page .site-title,
body.gbn-client-login-page .site-description { display: none !important; }

body.gbn-client-login-page :where(#page,.site,.site-content,.content-area,.site-main,main,article,.entry-content,.wp-block-post-content,.wp-site-blocks) {
    width: 100% !important;
    max-width: none !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.gbn-client-login-page .gbn-auth-shell {
    width: min(1100px, calc(100% - 48px));
    min-height: 600px;
    max-height: 760px;
    margin: max(24px, calc((100dvh - 680px) / 2)) auto;
    display: grid;
    grid-template-columns: minmax(0, .88fr) minmax(410px, 1.12fr);
    overflow: hidden;
    border: 1px solid rgba(6,37,74,.10);
    border-radius: 26px;
    background: #fff;
    box-shadow: 0 28px 80px rgba(5,30,61,.15);
    color: var(--gbn-auth-ink);
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

.gbn-auth-brand-panel {
    position: relative;
    isolation: isolate;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 38px 40px 32px;
    overflow: hidden;
    color: #fff;
    background:
        radial-gradient(circle at 86% 12%, rgba(35,184,210,.27), transparent 28%),
        radial-gradient(circle at 10% 94%, rgba(31,111,255,.32), transparent 34%),
        linear-gradient(145deg, var(--gbn-auth-navy-deep), var(--gbn-auth-navy) 58%, #0b3f74);
}

.gbn-auth-brand-panel::before,
.gbn-auth-brand-panel::after {
    content: "";
    position: absolute;
    z-index: -1;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 50%;
}
.gbn-auth-brand-panel::before { width: 360px; height: 360px; top: -190px; right: -170px; }
.gbn-auth-brand-panel::after { width: 430px; height: 430px; bottom: -300px; left: -210px; }

.gbn-auth-logo {
    display: inline-flex;
    align-items: center;
    width: 205px;
    min-height: 68px;
    padding: 8px 12px;
    border-radius: 14px;
    background: rgba(255,255,255,.97);
    box-shadow: 0 10px 28px rgba(0,0,0,.15);
}
.gbn-auth-logo img { display:block; width:100%; height:auto; }

.gbn-auth-brand-copy { max-width: 480px; margin: 54px 0 32px; }
.gbn-auth-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 12px;
    color: inherit;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .12em;
    line-height: 1.25;
    text-transform: uppercase;
}
.gbn-auth-brand-panel .gbn-auth-kicker::before {
    content: "";
    width: 24px;
    height: 3px;
    border-radius: 99px;
    background: linear-gradient(90deg, var(--gbn-auth-cyan), #fff);
}
.gbn-auth-brand-copy h1 {
    margin: 0;
    max-width: 470px;
    color: #fff;
    font-size: clamp(39px, 4.2vw, 57px);
    font-weight: 790;
    letter-spacing: -.045em;
    line-height: .98;
}
.gbn-auth-brand-copy p {
    max-width: 470px;
    margin: 18px 0 0;
    color: rgba(255,255,255,.77);
    font-size: 15px;
    line-height: 1.62;
}

.gbn-auth-feature-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 9px;
    margin-top: auto;
}
.gbn-auth-feature-grid > div {
    display: grid;
    grid-template-columns: 36px minmax(0,1fr);
    column-gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 10px 12px;
    border: 1px solid rgba(255,255,255,.11);
    border-radius: 13px;
    background: rgba(255,255,255,.05);
}
.gbn-auth-feature-grid span {
    grid-row: 1 / span 2;
    display: grid;
    place-items: center;
    width: 32px;
    height: 32px;
    margin: 0;
    border-radius: 9px;
    background: rgba(35,184,210,.13);
    color: #74dceb;
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .08em;
}
.gbn-auth-feature-grid strong,
.gbn-auth-feature-grid small { display:block; }
.gbn-auth-feature-grid strong { color:#fff; font-size:12px; line-height:1.25; }
.gbn-auth-feature-grid small { margin-top:2px; color:rgba(255,255,255,.60); font-size:10px; line-height:1.35; }

.gbn-auth-trust {
    display: flex;
    flex-wrap: wrap;
    gap: 7px 13px;
    margin: 18px 0 0;
    color: rgba(255,255,255,.58);
    font-size: 10px;
    line-height: 1.4;
}
.gbn-auth-trust span::before { content:"✓"; margin-right:5px; color:#7bd4e4; font-weight:900; }

.gbn-auth-form-panel {
    display: grid;
    place-items: center;
    min-width: 0;
    padding: 46px clamp(38px, 5vw, 72px);
    background:
        linear-gradient(rgba(255,255,255,.94), rgba(255,255,255,.98)),
        radial-gradient(circle at 100% 0, rgba(31,111,255,.11), transparent 44%);
}
.gbn-auth-card { width:min(100%, 430px); }
.gbn-auth-card-head .gbn-auth-kicker { color: var(--gbn-auth-blue); }
.gbn-auth-card-head h2 {
    margin:0;
    color:var(--gbn-auth-ink);
    font-size:clamp(31px, 3vw, 40px);
    font-weight:790;
    letter-spacing:-.04em;
    line-height:1.03;
}
.gbn-auth-card-head p { margin:12px 0 0; color:var(--gbn-auth-muted); font-size:14px; line-height:1.55; }

.gbn-auth-notice {
    display:grid;
    gap:3px;
    margin:18px 0 0;
    padding:12px 14px;
    border:1px solid;
    border-radius:12px;
    font-size:12px;
    line-height:1.4;
}
.gbn-auth-notice strong,.gbn-auth-notice span{display:block}
.gbn-auth-notice.is-success{color:#075c43;border-color:#b7e4d3;background:#effbf6}
.gbn-auth-notice.is-error{color:#8f1728;border-color:#f1bdc5;background:#fff4f5}

.gbn-auth-form { display:grid; gap:15px; margin-top:22px; }
.gbn-auth-field { display:grid; gap:7px; }
.gbn-auth-field > span:first-child { color:var(--gbn-auth-ink); font-size:12px; font-weight:740; }
.gbn-auth-field input[type="text"],
.gbn-auth-field input[type="email"],
.gbn-auth-field input[type="password"] {
    width:100%;
    min-height:50px;
    margin:0;
    padding:0 14px;
    border:1px solid var(--gbn-auth-line);
    border-radius:11px;
    outline:0;
    background:#fbfdff;
    color:var(--gbn-auth-ink);
    font:inherit;
    font-size:15px;
    box-shadow:0 1px 0 rgba(7,38,74,.02);
    transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}
.gbn-auth-field input:hover { border-color:#c4d3e3; background:#fff; }
.gbn-auth-field input:focus { border-color:var(--gbn-auth-blue); background:#fff; box-shadow:0 0 0 4px rgba(31,111,255,.11); }

.gbn-auth-password-wrap { position:relative; display:block; }
.gbn-auth-password-wrap input { padding-right:70px !important; }
.gbn-auth-password-toggle {
    position:absolute;
    top:50%; right:7px;
    min-width:52px; min-height:36px;
    padding:0 8px;
    transform:translateY(-50%);
    border:0; border-radius:8px;
    background:transparent;
    color:var(--gbn-auth-blue);
    font:inherit; font-size:12px; font-weight:760; cursor:pointer;
}
.gbn-auth-password-toggle:hover,.gbn-auth-password-toggle:focus-visible{background:#edf4ff;outline:0}

.gbn-auth-row { display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:12px; }
.gbn-auth-row a,.gbn-auth-switch{color:var(--gbn-auth-blue);font-weight:720;text-decoration:none}
.gbn-auth-row a:hover,.gbn-auth-switch:hover{text-decoration:underline}
.gbn-auth-remember{display:inline-flex;align-items:center;gap:7px;color:var(--gbn-auth-muted);cursor:pointer}
.gbn-auth-remember input{width:17px;height:17px;margin:0;accent-color:var(--gbn-auth-blue)}

.gbn-auth-submit {
    display:flex;
    align-items:center;
    justify-content:space-between;
    width:100%;
    min-height:52px;
    margin:1px 0 0;
    padding:0 17px;
    border:0;
    border-radius:12px;
    background:linear-gradient(135deg,var(--gbn-auth-blue),var(--gbn-auth-blue-dark));
    color:#fff;
    font:inherit;
    font-size:13px;
    font-weight:820;
    letter-spacing:.01em;
    cursor:pointer;
    box-shadow:0 12px 26px rgba(31,111,255,.23);
    transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.gbn-auth-submit:hover{transform:translateY(-1px);filter:brightness(1.04);box-shadow:0 16px 30px rgba(31,111,255,.28)}
.gbn-auth-submit:focus-visible{outline:3px solid rgba(31,111,255,.23);outline-offset:3px}
.gbn-auth-submit[disabled]{cursor:wait;opacity:.75;transform:none}
.gbn-auth-switch{display:inline-block;margin-top:18px;font-size:12px}
.gbn-auth-support{display:grid;gap:2px;margin-top:22px;padding-top:18px;border-top:1px solid var(--gbn-auth-line);color:var(--gbn-auth-muted);font-size:11px;line-height:1.45}
.gbn-auth-support strong{color:var(--gbn-auth-ink);font-weight:700}
.gbn-auth-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Laptop / shorter viewport: keep the complete login above the fold. */
@media (min-width: 901px) and (max-height: 760px) {
    body.gbn-client-login-page .gbn-auth-shell { min-height: 548px; max-height:none; margin:16px auto; }
    .gbn-auth-brand-panel { padding:28px 32px 24px; }
    .gbn-auth-logo { width:180px; min-height:60px; }
    .gbn-auth-brand-copy { margin:34px 0 22px; }
    .gbn-auth-brand-copy h1 { font-size:43px; }
    .gbn-auth-brand-copy p { margin-top:13px; font-size:13px; }
    .gbn-auth-feature-grid { gap:6px; }
    .gbn-auth-feature-grid > div { padding:8px 10px; }
    .gbn-auth-trust { margin-top:12px; }
    .gbn-auth-form-panel { padding:28px 48px; }
    .gbn-auth-card-head h2 { font-size:34px; }
    .gbn-auth-form { margin-top:18px; gap:12px; }
    .gbn-auth-support { margin-top:17px; padding-top:14px; }
}

/* Tablet: concise horizontal brand banner above the form. */
@media (max-width: 900px) {
    body.gbn-client-login-page .gbn-auth-shell {
        grid-template-columns:1fr;
        width:min(720px, calc(100% - 28px));
        min-height:0;
        max-height:none;
        margin:14px auto;
        border-radius:22px;
    }
    .gbn-auth-brand-panel { min-height:0; padding:24px 28px; }
    .gbn-auth-logo { width:170px; min-height:56px; }
    .gbn-auth-brand-copy { margin:24px 0 0; max-width:620px; }
    .gbn-auth-brand-copy h1 { font-size:36px; line-height:1; }
    .gbn-auth-brand-copy p { margin-top:10px; max-width:600px; font-size:13px; }
    .gbn-auth-feature-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:20px; }
    .gbn-auth-feature-grid > div { display:block; padding:10px; }
    .gbn-auth-feature-grid span { display:block; width:auto; height:auto; background:none; text-align:left; margin-bottom:5px; }
    .gbn-auth-feature-grid small { display:none; }
    .gbn-auth-trust { margin-top:14px; }
    .gbn-auth-form-panel { padding:34px 30px 38px; }
}

/* Phone: prioritize sign-in controls, touch sizes, and zero horizontal overflow. */
@media (max-width: 620px) {
    body.gbn-client-login-page { background:#fff !important; }
    body.gbn-client-login-page .gbn-auth-shell {
        width:100%;
        margin:0;
        border:0;
        border-radius:0;
        box-shadow:none;
    }
    .gbn-auth-brand-panel { padding:18px 20px 20px; }
    .gbn-auth-logo { width:148px; min-height:49px; padding:6px 9px; border-radius:11px; }
    .gbn-auth-brand-copy { margin:18px 0 0; }
    .gbn-auth-brand-copy .gbn-auth-kicker { margin-bottom:8px; font-size:9px; }
    .gbn-auth-brand-copy h1 { max-width:340px; font-size:30px; }
    .gbn-auth-brand-copy p { font-size:12px; line-height:1.5; }
    .gbn-auth-feature-grid { display:none; }
    .gbn-auth-trust { gap:5px 10px; margin-top:13px; font-size:9px; }
    .gbn-auth-form-panel { padding:28px 20px 34px; place-items:start stretch; }
    .gbn-auth-card { width:100%; max-width:460px; margin:0 auto; }
    .gbn-auth-card-head .gbn-auth-kicker { font-size:10px; margin-bottom:8px; }
    .gbn-auth-card-head h2 { font-size:29px; }
    .gbn-auth-card-head p { font-size:13px; }
    .gbn-auth-form { margin-top:20px; }
    .gbn-auth-field input[type="text"],
    .gbn-auth-field input[type="email"],
    .gbn-auth-field input[type="password"] { min-height:52px; font-size:16px; }
    .gbn-auth-row { align-items:flex-start; gap:10px; }
    .gbn-auth-submit { min-height:54px; font-size:14px; }
    .gbn-auth-support { margin-top:20px; }
}

@media (max-width: 390px) {
    .gbn-auth-row { display:grid; grid-template-columns:1fr; }
    .gbn-auth-row a { width:max-content; }
    .gbn-auth-trust span:nth-child(3) { display:none; }
}

@media (orientation: landscape) and (max-height: 520px) and (max-width: 900px) {
    body.gbn-client-login-page .gbn-auth-shell { width:min(920px, calc(100% - 20px)); grid-template-columns:.78fr 1.22fr; margin:10px auto; }
    .gbn-auth-brand-panel { padding:20px; }
    .gbn-auth-brand-copy { margin:18px 0 0; }
    .gbn-auth-brand-copy h1 { font-size:30px; }
    .gbn-auth-brand-copy p,.gbn-auth-feature-grid,.gbn-auth-trust { display:none; }
    .gbn-auth-form-panel { padding:20px 28px; }
    .gbn-auth-card-head h2 { font-size:27px; }
    .gbn-auth-form { margin-top:14px; gap:10px; }
    .gbn-auth-support { display:none; }
}

@media (prefers-reduced-motion: reduce) {
    .gbn-auth-submit,.gbn-auth-field input { transition:none; }
}

/* WordPress core reset-password screens retain GovBID branding. */
html { background:#eef4fa; }
body.login {
    min-height:100vh;
    background:
        radial-gradient(circle at 12% 10%,rgba(31,111,255,.14),transparent 28rem),
        radial-gradient(circle at 92% 90%,rgba(214,31,50,.07),transparent 25rem),
        linear-gradient(145deg,#f8fbff,#eaf1f8);
    color:var(--gbn-auth-ink);
    font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
    -webkit-font-smoothing:antialiased;
}
body.login #login { width:min(420px,calc(100% - 28px)); padding:40px 0 30px; }
body.login #login h1 a {
    width:230px; max-width:88%; height:88px; margin:0 auto 18px;
    background:#fff url('../images/govbid-nation-logo.png') center/84% auto no-repeat;
    border-radius:15px; box-shadow:0 10px 30px rgba(7,38,74,.11);
}
body.login form { margin-top:0; padding:24px; border:1px solid rgba(7,38,74,.10); border-radius:18px; background:#fff; box-shadow:0 22px 58px rgba(7,38,74,.13); }
body.login label{color:var(--gbn-auth-ink);font-size:13px;font-weight:700}
body.login input[type="text"],body.login input[type="password"],body.login input[type="email"]{min-height:48px;margin-top:7px;border:1px solid var(--gbn-auth-line);border-radius:10px;background:#fbfdff;color:var(--gbn-auth-ink);font-size:16px;box-shadow:none}
body.login input:focus{border-color:var(--gbn-auth-blue);box-shadow:0 0 0 4px rgba(31,111,255,.11)}
body.login .button-primary{min-height:44px;padding:0 20px;border:0;border-radius:10px;background:linear-gradient(135deg,var(--gbn-auth-blue),var(--gbn-auth-blue-dark));font-weight:750;text-shadow:none;box-shadow:0 10px 24px rgba(31,111,255,.21)}
body.login #nav,body.login #backtoblog,body.login .privacy-policy-page-link{text-align:center}
body.login #nav a,body.login #backtoblog a,body.login .privacy-policy-page-link a{color:var(--gbn-auth-navy);font-weight:650}
body.login .message,body.login #login_error{border-radius:11px;box-shadow:0 10px 28px rgba(7,38,74,.08)}

/* v7.1.3 — standalone login layout hotfix.
   The login now owns the entire document, so these rules can size against the
   viewport instead of fighting an arbitrary WordPress theme container. */
html:has(body.gbn-client-login-standalone),
body.gbn-client-login-standalone {
    margin:0 !important;
    width:100% !important;
    min-width:320px;
    min-height:100%;
    background:#eef4fa !important;
}
body.gbn-client-login-standalone {
    min-height:100vh;
    min-height:100dvh;
    overflow-x:hidden;
}
body.gbn-client-login-standalone > *:not(.gbn-login-document):not(#wpadminbar) {
    max-width:100%;
}
body.gbn-client-login-standalone .gbn-login-document {
    width:100%;
    min-height:100vh;
    min-height:100dvh;
    display:grid;
    place-items:center;
    padding:28px;
    background:
        radial-gradient(circle at 8% 7%,rgba(31,111,255,.11),transparent 31rem),
        radial-gradient(circle at 92% 92%,rgba(214,31,50,.055),transparent 28rem),
        linear-gradient(145deg,#f8fbff 0%,#edf4fb 52%,#f6f8fc 100%);
}
body.gbn-client-login-standalone .gbn-auth-shell {
    width:min(1080px,100%);
    min-height:clamp(570px,calc(100dvh - 56px),680px);
    max-height:none;
    margin:0 auto;
    grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr);
    overflow:hidden;
    border-radius:28px;
    box-shadow:0 30px 90px rgba(5,30,61,.17);
}
body.gbn-client-login-standalone .gbn-auth-brand-panel {
    padding:38px 42px 32px;
}
body.gbn-client-login-standalone .gbn-auth-brand-copy {
    margin:44px 0 28px;
}
body.gbn-client-login-standalone .gbn-auth-brand-copy h1 {
    font-size:clamp(40px,3.7vw,54px);
}
body.gbn-client-login-standalone .gbn-auth-form-panel {
    min-height:0;
    padding:42px clamp(44px,5vw,72px);
    place-items:center;
}
body.gbn-client-login-standalone .gbn-auth-card {
    width:min(100%,420px);
    max-width:420px;
    margin:0;
    padding:0;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
}
body.gbn-client-login-standalone .gbn-auth-card-head h2 {
    font-size:clamp(32px,2.7vw,39px);
}

/* Typical laptops: reduce decorative content before compressing the form. */
@media (min-width:901px) and (max-height:780px) {
    body.gbn-client-login-standalone .gbn-login-document { padding:18px; }
    body.gbn-client-login-standalone .gbn-auth-shell {
        min-height:560px;
        width:min(1040px,100%);
    }
    body.gbn-client-login-standalone .gbn-auth-brand-panel { padding:28px 34px 24px; }
    body.gbn-client-login-standalone .gbn-auth-logo { width:170px; min-height:56px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy { margin:28px 0 20px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy h1 { font-size:40px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy p { margin-top:12px; font-size:12.5px; }
    body.gbn-client-login-standalone .gbn-auth-feature-grid > div:nth-child(3) { display:none; }
    body.gbn-client-login-standalone .gbn-auth-trust { margin-top:11px; }
    body.gbn-client-login-standalone .gbn-auth-form-panel { padding:26px 48px; }
    body.gbn-client-login-standalone .gbn-auth-card-head h2 { font-size:33px; }
    body.gbn-client-login-standalone .gbn-auth-card-head p { margin-top:8px; font-size:13px; }
    body.gbn-client-login-standalone .gbn-auth-form { margin-top:16px; gap:11px; }
    body.gbn-client-login-standalone .gbn-auth-field input[type="text"],
    body.gbn-client-login-standalone .gbn-auth-field input[type="email"],
    body.gbn-client-login-standalone .gbn-auth-field input[type="password"] { min-height:46px; }
    body.gbn-client-login-standalone .gbn-auth-submit { min-height:48px; }
    body.gbn-client-login-standalone .gbn-auth-support { margin-top:14px; padding-top:12px; }
}

/* Tablet: stacked, with a concise brand header and a full-width form. */
@media (max-width:900px) {
    body.gbn-client-login-standalone .gbn-login-document {
        display:block;
        min-height:100dvh;
        padding:18px;
    }
    body.gbn-client-login-standalone .gbn-auth-shell {
        width:min(720px,100%);
        min-height:0;
        margin:0 auto;
        grid-template-columns:1fr;
        border-radius:24px;
    }
    body.gbn-client-login-standalone .gbn-auth-brand-panel { padding:24px 28px 22px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy { margin:20px 0 0; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy h1 { max-width:none; font-size:34px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy p { max-width:620px; }
    body.gbn-client-login-standalone .gbn-auth-feature-grid { display:none; }
    body.gbn-client-login-standalone .gbn-auth-form-panel { padding:34px 30px 38px; }
    body.gbn-client-login-standalone .gbn-auth-card { width:min(100%,470px); max-width:470px; margin:0 auto; }
}

/* Phones: the form is the primary surface; no fixed heights and no clipping. */
@media (max-width:620px) {
    body.gbn-client-login-standalone .gbn-login-document { padding:0; background:#fff; }
    body.gbn-client-login-standalone .gbn-auth-shell {
        width:100%;
        min-height:100dvh;
        border-radius:0;
        border:0;
        box-shadow:none;
    }
    body.gbn-client-login-standalone .gbn-auth-brand-panel { padding:18px 20px 20px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy h1 { font-size:29px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy p { margin-top:9px; }
    body.gbn-client-login-standalone .gbn-auth-trust { display:none; }
    body.gbn-client-login-standalone .gbn-auth-form-panel { padding:28px 20px max(34px,env(safe-area-inset-bottom)); }
    body.gbn-client-login-standalone .gbn-auth-card { width:100%; max-width:460px; }
}

/* Short landscape phones/tablets: preserve access to every field by scrolling. */
@media (orientation:landscape) and (max-height:520px) and (max-width:900px) {
    body.gbn-client-login-standalone .gbn-login-document { padding:10px; }
    body.gbn-client-login-standalone .gbn-auth-shell {
        width:min(900px,100%);
        min-height:0;
        grid-template-columns:.72fr 1.28fr;
        border-radius:18px;
    }
    body.gbn-client-login-standalone .gbn-auth-brand-panel { padding:18px; }
    body.gbn-client-login-standalone .gbn-auth-logo { width:132px; min-height:44px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy { margin:14px 0 0; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy h1 { font-size:27px; }
    body.gbn-client-login-standalone .gbn-auth-brand-copy p,
    body.gbn-client-login-standalone .gbn-auth-feature-grid,
    body.gbn-client-login-standalone .gbn-auth-trust { display:none; }
    body.gbn-client-login-standalone .gbn-auth-form-panel { padding:18px 24px; }
    body.gbn-client-login-standalone .gbn-auth-card-head h2 { font-size:26px; }
    body.gbn-client-login-standalone .gbn-auth-card-head p { display:none; }
    body.gbn-client-login-standalone .gbn-auth-form { margin-top:12px; gap:9px; }
    body.gbn-client-login-standalone .gbn-auth-support { display:none; }
}
