:root {
    --access-sky-base: #44a7de;
    --access-sky-deep: #2d93d6;
    --access-sky-light: #8ad2f5;
    --flightdeck-blue: #339bbf;
    --flightdeck-blue-dark: #006baf;
    --flightdeck-blue-light: #006baf;
    --flightdeck-green: #6cb144;
    --flightdeck-green-bright: #86c140;
    --flightdeck-yellow: #ffc40c;
    --flightdeck-white: #ffffff;
    --access-ink: #163454;
    --access-link: #0f64bf;
    --access-link-hover: #0b4f95;
    --access-cloud-glow: rgba(59, 144, 214, 0.10);
    --access-panel-shadow: 0 36px 90px rgba(20, 67, 111, 0.24);
}

.portal-honeypot {
    display: none !important;
}

body.portal-auth-login .portal-page-preloader {
    display: none !important;
}

body.portal-shell {
    background:
            radial-gradient(circle at top center, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0) 28%),
            radial-gradient(circle at 18% 24%, rgba(160, 226, 255, 0.28), rgba(160, 226, 255, 0) 22%),
            linear-gradient(180deg, #57bbea 0%, var(--access-sky-base) 34%, var(--access-sky-deep) 100%);
    color: #4b5563;
    font-family: "Jost", sans-serif;
    margin: 0;
}

a {
    color: var(--access-link);
}

a:hover {
    color: var(--access-link-hover);
    text-decoration: none;
}

.portal-page-preloader {
    align-items: center;
    backdrop-filter: blur(6px);
    background: rgba(68, 167, 222, 0.92);
    display: flex;
    inset: 0;
    justify-content: center;
    opacity: 1;
    pointer-events: all;
    position: fixed;
    transition: opacity .28s ease, visibility .28s ease;
    visibility: visible;
    z-index: 3000;
}

.portal-page-preloader.is-hidden {
    opacity: 0;
    pointer-events: none;
    visibility: hidden;
}

.portal-page-preloader-inner {
    align-items: center;
    display: inline-flex;
    justify-content: center;
}

.portal-page-preloader-icon {
    animation: portalPagePreloaderFlight 2.4s ease-in-out infinite;
    display: block;
    filter: drop-shadow(0 16px 22px rgba(8, 67, 108, 0.24)) drop-shadow(0 0 18px rgba(255, 255, 255, 0.12));
    height: auto;
    transform-origin: center center;
    width: 112px;
}

@keyframes portalPagePreloaderFlight {
    0% {
        transform: translate3d(-8px, 8px, 0) rotate(-6deg);
    }

    50% {
        transform: translate3d(10px, -10px, 0) rotate(4deg);
    }

    100% {
        transform: translate3d(-8px, 8px, 0) rotate(-6deg);
    }
}

.portal-auth-video-wrap {
    display: none;
}

.portal-auth-page {
    box-sizing: border-box;
    min-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
}

.portal-auth-main {
    align-items: stretch;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    min-height: 100dvh;
    padding: 0;
    position: relative;
    z-index: 1;
}

.access-scene {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    min-height: 100dvh;
    overflow-x: hidden;
    overflow-y: visible;
    padding: 48px 32px;
    position: relative;
    width: 100%;
}

.access-scene::before,
.access-scene::after {
    content: "";
    pointer-events: none;
    position: absolute;
}

.access-scene::before {
    background: radial-gradient(circle, rgba(255, 255, 255, 0.24), rgba(255, 255, 255, 0) 64%);
    height: 640px;
    left: -120px;
    top: -180px;
    width: 640px;
}

.access-scene::after {
    background: radial-gradient(circle, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 68%);
    height: 560px;
    right: -120px;
    top: -120px;
    width: 560px;
}

.access-cloud-video-wrap {
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    z-index: 0;
}

.access-cloud-video-wrap::after {
    background:
            linear-gradient(180deg, rgba(68, 167, 222, 0.18), rgba(68, 167, 222, 0.08)),
            linear-gradient(180deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0));
    content: "";
    inset: 0;
    position: absolute;
}

.access-cloud-video {
    height: 100%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    object-fit: cover;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}

.access-clouds {
    inset: 0;
    overflow: hidden;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.access-cloud-layer {
    bottom: 0;
    filter: drop-shadow(0 0 24px var(--access-cloud-glow)) drop-shadow(0 14px 34px rgba(32, 107, 173, 0.22));
    left: 50%;
    position: absolute;
    transform: translate3d(-50%, 0, 0) scale(var(--cloud-scale, 1));
    transform-origin: center bottom;
    width: var(--cloud-width, 112vw);
}

.access-cloud-layer img {
    display: block;
    height: auto;
    width: 100%;
}

.access-cloud-layer-6 {
    --cloud-width: max(1600px, 128vw);
    z-index: 26;
}

.access-cloud-layer-8 {
    --cloud-width: max(1640px, 132vw);
    z-index: 28;
}

.access-panel-wrap {
    display: flex;
    justify-content: center;
    overflow: visible;
    position: relative;
    width: min(1320px, 100%);
    z-index: 20;
}

.portal-auth-shell {
    background:
            radial-gradient(circle at 30% 28%, rgba(255, 214, 145, 0.16), rgba(255, 214, 145, 0) 22%),
            radial-gradient(circle at 83% 26%, rgba(204, 227, 255, 0.56), rgba(204, 227, 255, 0) 28%),
            linear-gradient(90deg, rgba(255, 255, 255, 0.98) 0%, rgba(253, 254, 255, 0.98) 49%, rgba(227, 239, 252, 0.92) 100%);
    border: 1px solid rgba(255, 255, 255, 0.58);
    border-radius: 34px;
    box-shadow: var(--access-panel-shadow);
    display: grid;
    grid-template-columns: minmax(0, .55fr) minmax(590px, .78fr);
    max-width: 1260px;
    overflow: hidden;
    position: relative;
    width: 100%;
}

.access-form-divider {
    display: none;
}

.portal-auth-shell::before {
    background:
            linear-gradient(180deg, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0) 18%),
            linear-gradient(90deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.02) 48%, rgba(193, 220, 248, 0.12) 100%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.portal-auth-shell::after {
    background:
            radial-gradient(circle at 78% 30%, rgba(177, 210, 244, 0.22), rgba(177, 210, 244, 0) 26%),
            radial-gradient(circle at 18% 16%, rgba(255, 224, 171, 0.12), rgba(255, 224, 171, 0) 18%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.portal-auth-showcase-pane,
.portal-auth-form-pane {
    position: relative;
    z-index: 2;
}

.portal-auth-showcase-pane {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.08));
    min-height: 700px;
    overflow: hidden;
    padding: 52px 58px 38px;
}

.portal-auth-showcase-pane::before,
.portal-auth-showcase-pane::after {
    display: none;
}

.access-showcase-top-glow,
.access-showcase-bottom-glow {
    border-radius: 50%;
    filter: blur(24px);
    pointer-events: none;
    position: absolute;
}

.access-showcase-top-glow {
    background: rgba(255, 210, 140, 0.18);
    height: 260px;
    left: 12%;
    top: -80px;
    width: 320px;
}

.access-showcase-bottom-glow {
    background: rgba(123, 201, 255, 0.14);
    bottom: 40px;
    left: 18%;
    height: 220px;
    width: 360px;
}

.portal-auth-form-pane {
    /* background: linear-gradient(135deg, rgba(255, 255, 255, 0.06) 12%, rgba(243, 249, 255, 0.12) 58%, rgba(224, 237, 251, 0.18) 100%); */
    display: flex;
    justify-content: center;
    isolation: isolate;
    min-height: 700px;
    overflow: hidden;
    padding: 118px 70px 62px 194px;
}

.portal-auth-form-pane::before {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.22), rgba(255, 255, 255, 0.08) 24%, rgba(255, 255, 255, 0.06) 100%),
    linear-gradient(90deg, rgba(255, 255, 255, 0.30) 0%, rgba(244, 249, 253, 0.16) 14%, rgba(233, 243, 251, 0.06) 28%, rgba(233, 243, 251, 0) 42%),
    radial-gradient(circle at 21% 50%, rgba(255, 255, 255, 0.70), rgba(240, 248, 253, 0.48) 20%, rgba(211, 230, 245, 0.22) 38%, rgba(176, 214, 240, 0.08) 54%, rgba(176, 214, 240, 0) 68%),
    radial-gradient(circle at 84% 88%, rgba(255, 255, 255, 0.18), rgba(255, 255, 255, 0) 28%),
    url("../imgs/access-form-bg.svg") 40px center / auto 100% no-repeat;
    content: "";
    inset: 0;
    opacity: .58;
    pointer-events: none;
    position: absolute;
    z-index: 0;
drop-shadow(0 0 24px var(
--access-cloud-glow)) drop-shadow(0 14px 34px rgba(32, 107, 173, 0.22)): inherit;
}

.portal-auth-form-pane::after {
    background:
            linear-gradient(90deg, rgba(255, 255, 255, 0.34) 0%, rgba(255, 255, 255, 0.12) 14%, rgba(255, 255, 255, 0.03) 28%, rgba(255, 255, 255, 0) 42%),
            radial-gradient(circle at 64% 18%, rgba(255, 255, 255, 0.16), rgba(255, 255, 255, 0) 22%);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    z-index: 1;
}

.portal-auth-showcase {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    min-height: 100%;
    position: relative;
    width: 100%;
    z-index: 2;
}

.portal-auth-brand {
    margin-bottom: 6px;
}

.portal-auth-brand img {
    display: block;
    height: auto;
    max-width: min(380px, 100%);
    width: 100%;
}

.portal-auth-brand-animated {
    max-width: 500px;
    min-height: 230px;
    position: relative;
}

body.portal-auth-login .portal-auth-brand-animated {
    outline: none;
}

.portal-auth-brand-lockup {
    height: 171.5px;
    left: 3px;
    overflow: visible;
    position: absolute;
    top: 70px;
    transform: scale(0.4985);
    transform-origin: top left;
    width: 170.5px;
}

.portal-auth-brand-line {
    filter: drop-shadow(0 12px 22px rgba(0, 107, 175, 0.12));
    height: auto;
    opacity: 1;
    overflow: visible;
    position: absolute;
    top: 0;
    left: 0;
    width: 170.5px;
    z-index: 1;
}

.portal-auth-brand-line-solid,
.portal-auth-brand-line-dashed {
    fill: none;
    stroke: #006baf;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 4px;
}

.portal-auth-brand-line-dashed {
    stroke-dasharray: 22.6 15.4;
}

.portal-auth-brand-line-seg {
    animation: accessLogoLineSegReveal .32s ease-out forwards;
    opacity: 0;
}

.portal-auth-brand-line-seg-1 { animation-delay: 1.18s; }
.portal-auth-brand-line-seg-2 { animation-delay: 1.46s; }
.portal-auth-brand-line-seg-3 { animation-delay: 2.04s; }
.portal-auth-brand-line-seg-4 { animation-delay: 2.56s; }
.portal-auth-brand-line-seg-5 { animation-delay: 3.04s; }
.portal-auth-brand-line-seg-6 { animation-delay: 3.86s; }

.portal-auth-brand-line-seg-5.portal-auth-brand-line-dashed {
    animation-duration: .38s;
}

.portal-auth-brand-plane {
    animation: accessLogoPlaneFlight 2.6s linear 1s 1 forwards;
    filter: drop-shadow(0 12px 22px rgba(0, 107, 175, 0.28));
    height: auto;
    left: 30px;
    opacity: 0;
    offset-anchor: 30% 42%;
    offset-distance: 0%;
    offset-path: path("M2,169.5s3.6-2.1,9.2-6C23.5,154.3,65.4,110.8,53.9,56.7C41.6,-1.3,-36.8,24.9,-17.8,77.6C-3,118.4,38,124.4,69,108.5c22.5-11.6,45-30.4,58.8-43c5-4.7,7.9-7.7,7.9-7.7");
    offset-rotate: 0deg;
    position: absolute;
    top: -90px;
    will-change: offset-distance, opacity;
    width: 215px;
    z-index: 2;
}

.portal-auth-brand-wordmark {
    top:95px;
    left:0;
    max-width: min(380px, 100%);
    position: absolute;
    transform-origin: left center;
    z-index:2;
}

.portal-auth-single-ad {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    padding-top: 14px;
}

.portal-auth-showcase-copy {
    display: flex;
    flex-direction: column;
    max-width: 470px;
    min-height: 100%;
    position: relative;
    z-index: 2;
    margin-top: 32px;
}

.portal-auth-badge {
    align-items: center;
    align-self: flex-start;
    background: linear-gradient(180deg, var(--flightdeck-blue-dark) 0%, var(--flightdeck-blue) 100%);
    border: 1px solid rgba(51, 155, 191, 0.18);
    border-radius: 999px;
    box-shadow: 0 8px 16px rgba(51, 155, 191, 0.14);
    color: var(--flightdeck-white);
    display: inline-flex;
    font-size: 11px;
    font-weight: 700;
    gap: 7px;
    letter-spacing: .06em;
    min-height: 34px;
    padding: 0 15px;
    text-transform: uppercase;
}

.portal-auth-badge i {
    color: var(--flightdeck-white);
}

.portal-auth-showcase-title {
    color: var(--flightdeck-blue-dark);
    font-size: clamp(34px, 3.1vw, 46px);
    font-weight: 700;
    letter-spacing: -.05em;
    line-height: .94;
    margin: 14px 0 0;
    max-width: 390px;
}

.portal-auth-showcase-title strong {
    color: var(--flightdeck-green);
}

.portal-auth-title-nowrap {
    white-space: nowrap;
}

.portal-auth-showcase-text {
    color: var(--flightdeck-blue-dark);
    font-size: 13px;
    line-height: 1.45;
    margin: 12px 0 0;
    max-width: 390px;
}

.portal-auth-feature-list {
    column-gap: 22px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 14px;
    max-width: 420px;
    row-gap: 0;
}

.portal-auth-feature {
    align-items: center;
    border-bottom: 1px solid rgba(51, 155, 191, 0.18);
    color: var(--flightdeck-blue-dark);
    display: flex;
    font-size: 13px;
    gap: 9px;
    min-height: 40px;
    padding: 6px 0;
}

.portal-auth-feature i {
    align-items: center;
    color: var(--flightdeck-green);
    display: inline-flex;
    font-size: 18px;
    height: 20px;
    justify-content: center;
    width: 20px;
}

.portal-auth-feature span {
    line-height: 1.25;
}

.portal-auth-secondary-cta {
    align-items: center;
    align-self: flex-start;
    background: var(--flightdeck-white);
    border: 2px solid var(--flightdeck-blue-dark);
    border-radius: 999px;
    box-shadow: 0 8px 16px rgba(51, 155, 191, 0.12);
    color: var(--flightdeck-blue-dark);
    display: inline-flex;
    font-size: 14px;
    font-weight: 700;
    gap: 10px;
    margin-top: 14px;
    min-height: 48px;
    padding: 0 20px;
    text-decoration: none;
    transition: transform .2s ease, box-shadow .2s ease, background-color .2s ease;
}

.portal-auth-secondary-cta:hover,
.portal-auth-secondary-cta:focus {
    background: #f7fbff;
    box-shadow: 0 10px 20px rgba(51, 155, 191, 0.16);
    color: var(--flightdeck-blue-dark);
    transform: translateY(-2px);
}

.portal-auth-card {
    max-width: 420px;
    position: relative;
    width: 100%;
    z-index: 2;
}

.portal-auth-card-header {
    margin-bottom: 40px;
}

.portal-auth-kicker {
    color: #0f64bf;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.portal-auth-title {
    color: var(--access-ink);
    font-size: clamp(54px, 4.3vw, 72px);
    font-weight: 700;
    letter-spacing: -.05em;
    line-height: .94;
    margin-top: 16px;
}

.portal-auth-copy {
    color: #546579;
    font-size: 16px;
    line-height: 1.6;
    margin-top: 16px;
}

.portal-auth-copy-accent {
    color: #63c52d;
    font-family: "Shadows Into Light", cursive;
    font-size: 34px;
    line-height: 1;
    margin-top: 8px;
}

.portal-auth-card .form-group {
    margin-bottom: 28px;
}

.portal-auth-card .form-group label {
    color: var(--flightdeck-blue-dark);
    display: block;
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 14px;
}

.portal-auth-input-wrap {
    position: relative;
}

.portal-auth-input-icon,
.portal-auth-input-toggle {
    align-items: center;
    color: var(--flightdeck-green);
    display: inline-flex;
    height: 100%;
    justify-content: center;
    position: absolute;
    top: 0;
}

.portal-auth-input-icon {
    left: 0;
    width: 58px;
}

.portal-auth-input-toggle {
    background: transparent;
    border: 0;
    color: var(--flightdeck-blue-dark);
    cursor: pointer;
    padding: 0;
    right: 0;
    width: 58px;
}

.portal-auth-card .form-control {
    background: rgba(255, 255, 255, 0.98);
    border: 0;
    border-radius: 999px;
    box-shadow:
            inset 0 1px 0 rgba(255, 255, 255, .84),
            0 10px 28px rgba(27, 92, 158, 0.12);
    color: var(--access-ink);
    font-size: 17px;
    height: 54px;
    padding: 0 64px;
}

.portal-auth-card .form-control::placeholder {
    color: #8391a5;
}

.portal-auth-card textarea.form-control,
.portal-auth-textarea {
    border-radius: 22px;
    height: auto;
    min-height: 140px;
    padding: 18px 20px;
    resize: vertical;
}

.portal-auth-card .form-control:focus {
    border-color: transparent;
    box-shadow:
            0 0 0 4px rgba(68, 167, 222, 0.14),
            0 12px 30px rgba(27, 92, 158, 0.14);
}

.portal-auth-primary {
    align-items: center;
    background: linear-gradient(180deg, var(--flightdeck-blue-dark) 0%, var(--flightdeck-blue) 100%);
    border: 0;
    border-radius: 999px;
    box-shadow: 0 14px 28px rgba(18, 50, 112, 0.22);
    color: #fff;
    display: inline-flex;
    font-size: 18px;
    font-weight: 700;
    gap: 12px;
    height: 58px;
    justify-content: center;
    margin-top: 14px;
    text-transform: uppercase;
}

.portal-auth-primary:hover,
.portal-auth-primary:focus {
    background: linear-gradient(180deg, #1a458f 0%, #12357b 100%);
    color: #fff;
}

.portal-auth-primary i {
    font-size: 18px;
}

.portal-auth-links {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 24px;
}

.portal-auth-links a,
.portal-auth-inline-link {
    color: var(--flightdeck-blue-dark);
    font-size: 16px;
    font-weight: 600;
}

.portal-auth-links a:hover,
.portal-auth-inline-link:hover {
    color: var(--flightdeck-blue);
}

.portal-auth-helper-box {
    background: rgba(15, 100, 191, 0.05);
    border: 1px solid rgba(15, 100, 191, 0.12);
    border-radius: 18px;
    color: #43576f;
    padding: 16px 18px;
}

.portal-auth-helper-title {
    color: var(--access-ink);
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 4px;
}

.portal-auth-card .alert {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 249, 255, 0.94));
    border: 1px solid rgba(20, 50, 74, 0.10);
    border-left-width: 5px;
    border-radius: 18px;
    box-shadow: 0 16px 32px rgba(27, 92, 158, 0.12);
    color: #365066;
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 0;
    padding: 15px 18px;
}

.portal-auth-card .alert + .alert {
    margin-top: 12px;
}

.portal-auth-card .alert a {
    color: inherit;
    font-weight: 700;
    text-decoration: underline;
}

.portal-auth-card .alert p:last-child,
.portal-auth-card .alert ul:last-child,
.portal-auth-card .alert ol:last-child {
    margin-bottom: 0;
}

.portal-auth-card .alert ul,
.portal-auth-card .alert ol {
    margin-top: 10px;
    padding-left: 20px;
}

.portal-auth-card .alert-success {
    background: linear-gradient(180deg, rgba(246, 252, 241, 0.98), rgba(238, 248, 228, 0.96));
    border-color: rgba(108, 177, 68, 0.22);
    border-left-color: var(--flightdeck-green);
    color: #355322;
}

.portal-auth-card .alert-info {
    background: linear-gradient(180deg, rgba(244, 250, 255, 0.98), rgba(233, 245, 253, 0.96));
    border-color: rgba(0, 107, 175, 0.16);
    border-left-color: var(--flightdeck-blue);
    color: #1f5377;
}

.portal-auth-card .alert-warning {
    background: linear-gradient(180deg, rgba(255, 251, 238, 0.98), rgba(255, 246, 218, 0.96));
    border-color: rgba(255, 196, 12, 0.26);
    border-left-color: var(--flightdeck-yellow);
    color: #7a5a08;
}

.portal-auth-card .alert-danger {
    background: linear-gradient(180deg, rgba(255, 246, 246, 0.98), rgba(255, 237, 237, 0.96));
    border-color: rgba(208, 86, 86, 0.22);
    border-left-color: #d64f4f;
    color: #7a2f2f;
}

@keyframes accessLogoPlaneFlight {
    0% {
        opacity: 0;
        offset-distance: 0%;
    }

    8% {
        opacity: 1;
    }

    100% {
        opacity: 1;
        offset-distance: 100%;
    }
}

@keyframes accessLogoLineSegReveal {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@media (max-width: 1199px) {
    .access-scene {
        padding: 42px 22px;
    }

    .portal-auth-shell {
        grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
    }

    .portal-auth-showcase-pane,
    .portal-auth-form-pane {
        min-height: 700px;
    }

    .portal-auth-showcase-title {
        font-size: 38px;
    }

    .portal-auth-feature {
        font-size: 13px;
    }

    .access-form-divider {
        left: calc(100% - 34.2%);
        width: 140px;
    }
}

@media (max-width: 991px) {
    .portal-auth-main {
        min-height: auto;
    }

    .access-scene {
        min-height: 100dvh;
        padding: 28px 16px 130px;
    }

    .access-cloud-layer-6,
    .access-cloud-layer-8 {
        opacity: .92;
    }

    .access-panel-wrap {
        width: 100%;
    }

    .portal-auth-shell {
        grid-template-columns: 1fr;
    }

    .access-form-divider {
        height: 22px;
        left: 34px;
        right: 34px;
        top: auto;
        bottom: calc(50% - 11px);
        transform: none;
        width: auto;
    }

    .access-form-divider::before {
        height: 28px;
        left: 22%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 28px;
    }

    .access-form-divider::after {
        height: 42px;
        left: 34%;
        top: 50%;
        transform: translate(-50%, -50%);
        width: 42px;
    }

    .portal-auth-showcase-pane,
    .portal-auth-form-pane {
        min-height: auto;
    }

    .portal-auth-showcase-pane {
        padding: 34px 28px 18px;
    }

    .portal-auth-form-pane {
        padding: 34px 28px 38px;
    }

    .portal-auth-brand img {
        max-width: 340px;
    }

    .portal-auth-brand-animated {
        min-height: 176px;
    }

    .portal-auth-brand-lockup {
        left: 0;
        top: 62px;
        transform: scale(0.44);
    }

    .portal-auth-brand-plane {
        width: 205px;
    }

    .portal-auth-single-ad {
        display: none;
    }

    .portal-auth-showcase-title,
    .portal-auth-title {
        font-size: 42px;
    }

    .portal-auth-copy-accent {
        font-size: 28px;
    }

    .portal-auth-feature-list {
        grid-template-columns: 1fr;
        max-width: 430px;
    }
}

@media (max-width: 575px) {
    .access-scene {
        padding: 18px 12px 96px;
    }

    .portal-auth-shell {
        border-radius: 28px;
    }

    .portal-auth-showcase-pane {
        padding: 24px 18px 10px;
    }

    .portal-auth-form-pane {
        padding: 22px 18px 28px;
    }

    .portal-auth-brand-wordmark {
        max-width: 280px;
    }

    .portal-auth-showcase-title,
    .portal-auth-title {
        font-size: 30px;
    }

    .portal-auth-showcase-text,
    .portal-auth-feature,
    .portal-auth-links a {
        font-size: 16px;
    }

    .portal-auth-copy-accent {
        font-size: 24px;
    }

    .portal-auth-card {
        max-width: none;
    }

    .portal-auth-tagline img {
        width: 290px;
    }

    .portal-auth-card .form-control,
    .portal-auth-primary,
    .portal-auth-secondary-cta {
        min-height: 56px;
    }

}
