/* Loaded only by the guest login view, including its site/index entry point. */
body.app-controller-site .page.page-center { display: block; padding: 0; min-width: 0; min-height: 100vh; background: #fff; }
body.app-controller-site .page-center > .container-tight.py-5 { width: 100%; max-width: none; margin: 0; padding: 0 !important; }
.clarity-login, .clarity-login * { box-sizing: border-box; }
.clarity-login { color-scheme: light; display: grid; grid-template-columns: 46% 54%; min-height: 100vh; font-family: 'Segoe UI', Arial, sans-serif; font-size: 16px; color: #12283e; background: #fff; }
.clarity-login h1, .clarity-login h2, .clarity-login p { margin: 0; }
.clarity-story { position: relative; overflow: hidden; display: flex; flex-direction: column; padding: 40px 56px 28px; background: radial-gradient(ellipse at 30% 62%, #0b6c9955, transparent 57%), #063c64; color: #fff; }
.clarity-eyebrow { text-transform: uppercase; font-size: 11px; font-weight: 650; letter-spacing: .17em; }
.clarity-story-top { display: flex; align-items: center; justify-content: flex-end; color: #ccdfed; }
.clarity-story-index { font-size: 12px; border: 1px solid #5a809e; border-radius: 30px; padding: 7px 12px; letter-spacing: .07em; white-space: nowrap; }
.clarity-story-copy { margin-top: auto; padding-top: 40px; }
.clarity-story h1 { color: #fff; font-size: 52px; line-height: 1.08; font-weight: 500; letter-spacing: -.045em; max-width: 520px; }
.clarity-story h1 span { color: #8dd8f4; }
.clarity-orbit { width: 500px; max-width: 110%; height: 310px; flex-shrink: 0; align-self: center; color: #7fc6e8; stroke: currentColor; stroke-width: 1.2; margin: 16px 0 auto; overflow: visible; }
.clarity-nucleus { fill: currentColor; fill-opacity: .09; stroke-width: 1.6; }
.clarity-nucleus-mark { stroke-width: 2; }
.clarity-electron { fill: currentColor; stroke: none; offset-rotate: 0deg; }
.clarity-electron-one { offset-path: path('M 548 250 A 248 140 0 1 1 52 250 A 248 140 0 1 1 548 250'); offset-distance: 25%; }
.clarity-electron-two { offset-path: path('M 512 250 A 212 118 0 1 1 88 250 A 212 118 0 1 1 512 250'); offset-distance: 65%; }
.clarity-electron-three { offset-path: path('M 378 250 A 78 78 0 1 1 222 250 A 78 78 0 1 1 378 250'); offset-distance: 40%; }
.clarity-orbit-field { transform-origin: 300px 250px; }
/* Static without JavaScript: the pause control is available before motion starts. */
@media (prefers-reduced-motion: no-preference) {
    .clarity-login[data-motion-paused] .clarity-orbit-field { animation: clarity-precession 120s linear infinite; }
    .clarity-login[data-motion-paused] .clarity-electron { animation: clarity-revolution 26s linear infinite; }
    .clarity-login[data-motion-paused] .clarity-electron-one { animation-delay: -6.5s; }
    .clarity-login[data-motion-paused] .clarity-electron-two { animation-duration: 34s; animation-delay: -22.1s; animation-direction: reverse; }
    .clarity-login[data-motion-paused] .clarity-electron-three { animation-duration: 20s; animation-delay: -8s; }
    .clarity-login[data-motion-paused="true"] .clarity-orbit-field, .clarity-login[data-motion-paused="true"] .clarity-electron { animation-play-state: paused; }
}
@keyframes clarity-revolution { from { offset-distance: 0%; } to { offset-distance: 100%; } }
@keyframes clarity-precession { from { transform: rotate(0); } to { transform: rotate(360deg); } }
.clarity-story-bottom { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding-top: 28px; color: #cadcea; font-size: 12px; line-height: 1.5; }
.clarity-motion-toggle { background: transparent; color: #d7ecf8; border: 1px solid #6a94b0; border-radius: 6px; min-height: 44px; padding: 8px 11px; font: inherit; font-size: 11px; white-space: nowrap; cursor: pointer; }
.clarity-motion-toggle[hidden] { display: none; }
.clarity-motion-toggle:hover { background: #174e73; }
.clarity-motion-toggle:focus-visible { outline: 3px solid #8bd9fa; outline-offset: 3px; }
.clarity-form-panel { display: flex; flex-direction: column; padding: 36px 64px 28px; min-width: 0; background: #fff; }
.clarity-brand { display: flex; align-items: center; gap: 24px; align-self: flex-start; min-width: 0; }
.clarity-brand .clarity-logo { width: 140px; max-width: 46%; height: auto; object-fit: contain; }
.clarity-brand-product { font-size: 13px; line-height: 1.5; font-weight: 650; letter-spacing: .025em; border-left: 1px solid #c7d3dd; padding-left: 22px; overflow-wrap: anywhere; }
.clarity-login-block { width: min(100%, 432px); margin: auto; padding: 28px 0; }
.clarity-login-block > .clarity-eyebrow { color: #00649f; margin-bottom: 14px; }
.clarity-login-block h2 { color: #12283e; font-size: 36px; font-weight: 650; line-height: 1.2; letter-spacing: -.035em; }
.clarity-login .clarity-intro { font-size: 15px; line-height: 1.65; color: #526a80; margin: 10px 0 26px; }
.clarity-login .clarity-field { margin-bottom: 20px; }
.clarity-login .clarity-label { display: block; margin: 0 0 8px; color: #12283e; font-size: 14px; line-height: 1.5; font-weight: 600; }
.clarity-login .clarity-field .form-control { width: 100%; height: 52px; padding: 0 16px; font: inherit; font-size: 16px; color: #152c43; background: #fff; border: 1px solid #7b91a7; border-radius: 8px; box-shadow: none; outline: none; transform: none; }
.clarity-login .clarity-field .form-control::placeholder { color: #63768a; opacity: 1; font-size: 14px; }
.clarity-login .clarity-field .form-control:focus { border-color: #006db6; box-shadow: 0 0 0 3px #006db62b; background: #fff; }
.clarity-login .clarity-field .form-control.is-invalid { border-color: #b32431; }
.clarity-login .invalid-feedback { font-size: 13px; line-height: 1.5; color: #b32431; margin-top: 7px; }
.clarity-login .invalid-feedback:empty { display: none; }
.clarity-login .invalid-feedback:not(:empty) { display: block; }
.clarity-remember { display: flex; align-items: center; gap: 10px; min-height: 44px; margin-top: -7px; margin-bottom: 14px; }
.clarity-login .clarity-remember .form-check-input { position: static; flex: 0 0 auto; width: 18px; height: 18px; margin: 0; border: 1px solid #7b91a7; background-color: #fff; }
.clarity-login .clarity-remember .form-check-input:checked { background-color: #006db6; border-color: #006db6; }
.clarity-login .clarity-remember .form-check-input:focus-visible { outline: 3px solid #006db6; outline-offset: 3px; box-shadow: none; }
.clarity-login .clarity-remember .form-check-label { display: flex; align-items: center; min-height: 44px; margin: 0; color: #12283e; font-size: 14px; cursor: pointer; }
.clarity-login .clarity-submit { display: flex; align-items: center; justify-content: center; gap: 17px; width: 100%; min-height: 52px; padding: 12px; border-radius: 8px; background: #006db6; color: #fff; border: 1px solid #006db6; font: inherit; font-size: 15px; font-weight: 600; line-height: 1.5; transform: none; box-shadow: none; transition: background-color .15s; }
.clarity-login .clarity-submit svg { width: 21px; height: 21px; flex: 0 0 auto; }
.clarity-login .clarity-submit:hover, .clarity-login .clarity-submit:active { background: #00588f; border-color: #00588f; color: #fff; transform: none; box-shadow: none; }
.clarity-login .clarity-submit:focus-visible { outline: 3px solid #006db6; outline-offset: 4px; }
.clarity-footer { display: flex; justify-content: space-between; gap: 10px; color: #5c7084; font-size: 12px; line-height: 1.5; }
@media (max-width: 1050px) and (min-width: 801px) {
    .clarity-story, .clarity-form-panel { padding-left: 36px; padding-right: 36px; }
    .clarity-story h1 { font-size: 48px; }
    .clarity-story-bottom { flex-direction: column; align-items: flex-start; }
    .clarity-story-top { flex-wrap: wrap; }
}
@media (max-width: 800px) {
    .clarity-login { display: flex; flex-direction: column; }
    .clarity-form-panel { display: contents; }
    .clarity-brand { order: 0; width: 100%; padding: 14px 24px; gap: 22px; }
    .clarity-brand .clarity-logo { width: 110px; }
    .clarity-brand-product { font-size: 12px; padding-left: 20px; }
    .clarity-story { order: 1; padding: 20px 24px; min-height: 144px; }
    .clarity-story-top, .clarity-story-bottom > span { display: none; }
    .clarity-story-copy { margin: 0; padding: 0; width: 62%; z-index: 1; }
    .clarity-story h1 { font-size: 26px; line-height: 1.15; }
    .clarity-orbit { position: absolute; width: 130px; max-width: 38%; height: 98px; right: 11px; top: 2px; margin: 0; }
    .clarity-story-bottom { position: absolute; bottom: 8px; right: 20px; padding: 0; }
    .clarity-motion-toggle { font-size: 10px; padding: 8px; min-height: 44px; }
    .clarity-login-block { order: 2; width: 100%; max-width: 520px; align-self: center; padding: 24px; margin: 0; }
    .clarity-login-block > .clarity-eyebrow { display: none; }
    .clarity-login-block h2 { font-size: 28px; }
    .clarity-login .clarity-intro { font-size: 14px; line-height: 1.6; margin: 8px 0 22px; }
    .clarity-login .clarity-field { margin-bottom: 16px; }
    .clarity-footer { order: 3; display: block; text-align: center; padding: 0 24px 18px; margin-top: auto; }
    .clarity-footer span:last-child { display: none; }
}
@media (prefers-reduced-motion: reduce) {
    .clarity-login *, .clarity-login *::before, .clarity-login *::after { animation: none !important; transition: none !important; }
}
