/* Official brand applications. Original logos are displayed without redrawing or recoloring. */
.corporate-logo { display: block; width: 100%; height: auto; object-fit: contain; }
.portal-brand { display: flex; flex-direction: column; gap: 12px; background: #fff; padding: 25px 18px 20px; min-height: 0; border-bottom: 4px solid #4368e6; }
.portal-brand .corporate-logo { width: 220px; max-width: 100%; height: auto; flex: none; }
.portal-brand__descriptor { color: #1d399a; text-align: center; font-size: 14px; font-weight: 500; letter-spacing: .12em; text-transform: uppercase; }
.portal-sidebar { background: #001c7d; }
.portal-sidebar__navigation { padding-top: 18px; }
.workspace-navigation { color: #e2e7fc; }
.workspace-navigation__label { color: #b7c6fa; font-size: 14px; font-weight: 500; letter-spacing: .07em; }
.workspace-navigation .portal-icon { color: #bbcaff; }
.workspace-navigation a { line-height: 1.5; }
.workspace-navigation a.active { background: #1d399a; color: #fff; box-shadow: inset 3px 0 #fff; }
.workspace-navigation a.active .portal-icon { color: #fff; }
.portal-sidebar__foot { color: #d5dfff; }
.portal-topbar__identity { min-width: 0; }
.portal-topbar__identity strong { color: #001c7d; font-weight: 500; }
.portal-product-title small { color: #626879; }
.portal-topbar .portal-mobile-brand { flex: 0 1 176px; }
.portal-mobile-brand .corporate-logo { width: 176px; max-width: 100%; height: auto; }
.portal-topbar__actions { flex-shrink: 0; }
.account-menu__avatar { color: #fff; background: #1d399a; font-weight: 500; }
.mobile-navigation__panel { background: #001c7d; }
.site-footer__brand { padding-block: 8px; }
.site-footer__brand .corporate-logo { width: 260px; max-width: 100%; }
.site-footer__brand p { color: #1d399a; font-weight: 500; margin-top: 14px; }
.identity-intro { background: linear-gradient(145deg,#00145a,#001c7d 60%,#1d399a); }
.identity-brand { width: 100%; max-width: 380px; padding: 24px; margin-bottom: 32px; border-radius: 12px; background: #fff; }
.identity-intro .eyebrow { color: #cbd6ff; }
.identity-intro > p, .identity-intro li p { color: #e1e7ff; }
.identity-intro li > span { color: #c0cfff; }
.identity-intro h1 { font-weight: 500; letter-spacing: -.045em; }
.identity-intro li strong { font-weight: 500; }
.identity-shell > .profile-panel { border-top: 4px solid #4368e6; }
.access-form button { background: #1d399a; }
.access-form button:hover { background: #001c7d; }
.passkey-login .button { color: #1d399a; }
.enterprise-metrics > div:first-child { border-top-color: #4368e6; }
.enterprise-metrics strong, .enterprise-heading h1, .enterprise-home .section-heading h1, .enterprise-home .section-heading h2, .workspace-hero h1, .portal-hero h1, .editor-heading h1, .access-welcome { font-weight: 500; }
.enterprise-home .server-card h3 { font-weight: 500; font-size: 22px; min-height: 64px; }
.enterprise-home .server-card__head { min-height: 48px; }
.enterprise-home .server-card__head small { color: #626879; }
.enterprise-home .server-card__head span { color: #1d399a; }
.enterprise-home .capacity-row span, .selected-capacity span { color: #626879; }
.server-card__status > span { background: #edf1ff; color: #1d399a; font-weight: 500; }
.enterprise-process li > span, .editor-panel__number { color: #1d399a; background: #edf1ff; border-color: #d2dcf5; }
.eyebrow, .field-label, .service-form-grid label, .catalog-filters label, .profile-panel__head, .editor-summary__head { font-weight: 500; }
.enterprise-process li strong, .button, .account-menu > summary { font-weight: 500; }
.service-legal-links, .application-privacy, .scope-note, .permission-card, .tenant-lock, .storage-badge { background: #f1f4ff; border-color: #d2dcf5; color: #343434; }
.service-legal-links a, .application-privacy a, .policy-document a { color: #1d399a; }
.service-legal-links p, .tenant-lock p, .tenant-lock small { color: #626879; }
.tenant-lock > i, .privacy-icon, .profile-icon { background: #e8eeff; border-color: #d2dcf5; color: #1d399a; }
.policy-document aside { background: #f1f4ff; color: #343434; border-left-color: #4368e6; }
.policy-hero { background: #001c7d; }
.policy-hero > a, .policy-hero .eyebrow, .policy-hero p { color: #d5dfff; }
.policy-hero h1 { font-size: clamp(28px,3vw,40px); font-weight: 500; }
.editor-price { background: #f1f4ff; border-color: #d2dcf5; }
.editor-price > small, .editor-price em { color: #1d399a; }
.editor-summary .snapshot-list span { color: #1d399a; }
.quote-card { background: #001c7d; }
.quote-card__top, .quote-payment small { color: #d5dfff; }
.quote-card .button--primary { background: #fff; border-color: #fff; color: #001c7d; }
.quote-card .button--primary:hover { background: #edf1ff; }
.context-current i { background: #4368e6; box-shadow: 0 0 0 4px #e2e9ff; }
:focus-visible { outline: 2px solid #3556c7; outline-offset: 3px; }
.portal-sidebar :focus-visible, .mobile-navigation__panel :focus-visible { outline-color: #fff; }
@media(max-width:1000px) {
    .portal-topbar__identity .portal-product-title { display: none; }
}
.portal-frame:has(.identity-page) .portal-product-title { display: none; }
@media(max-width:740px) {
    .portal-topbar .portal-mobile-brand { flex-basis: 160px; }
    .portal-mobile-brand .corporate-logo { width: 160px; }
    .portal-topbar { padding-block: 16px; }
    .portal-topbar__actions { gap: 8px; }
    .portal-topbar__actions .header-access { font-size: 14px; padding-inline: 12px; }
    .identity-intro { padding: 28px 24px; }
    .identity-brand { max-width: 300px; padding: 20px; margin-bottom: 24px; }
    .identity-intro h1 { font-size: 31px; }
    .enterprise-home .server-card h3 { min-height: 0; }
}
@media(max-width:370px) {
    .portal-topbar { padding-inline: 12px; }
    .portal-topbar .portal-mobile-brand { flex-basis: 130px; }
    .portal-mobile-brand .corporate-logo { width: 130px; }
    .portal-topbar__actions .header-access { padding-inline: 9px; }
    .enterprise-home .server-card__head { min-height: 0; }
}
.service-request-summary span { background: #edf1ff; color: #1d399a; }
.service-form-notice { background: #f1f4ff; border-left-color: #4368e6; }
.service-form-notice--selection { border-color: #d2dcf5; border-left-color: #4368e6; }
.tenant-lock small, .editor-terms button span, .editor-price > small, .status-pill { font-weight: 500; }
