body.member-portal-page { background:#f4f6f8; color:#172b43; }
.member-portal-page .site-header.refined-site-header { position:relative; background:#fff; border-bottom:1px solid #e0e6ec; backdrop-filter:none; }
.member-portal-page .site-header .brand-copy span,.member-portal-page .site-header .brand-copy small,.member-portal-page .site-header .desktop-nav a,.member-portal-page .site-header .nav-dropdown-toggle { color:#173350; }
.member-portal-page .site-header .member-nav-link { background:#e8eef5; color:#173350; border-color:#dce5ef; }
.member-portal-page .members-hero { padding:34px 0 30px; background:#eaf0f6; overflow:visible; }
.member-portal-page .members-hero::after { display:none; }
.member-portal-page .members-hero-inner { max-width:1120px; text-align:left; color:#173350; }
.member-portal-page .members-eyebrow { justify-content:flex-start; color:#52708d; font-size:.72rem; letter-spacing:.12em; margin-bottom:12px; }
.member-portal-page .members-eyebrow::before,.member-portal-page .members-eyebrow::after { display:none; }
.member-portal-page .members-hero h1 { margin:0; color:#173350; font-size:clamp(1.9rem,4vw,2.7rem); line-height:1.15; text-transform:none; letter-spacing:-.04em; }
.member-portal-page .members-hero p { width:auto; margin:10px 0 0; color:#53677d; font-size:1rem; font-weight:500; }
.member-portal-page .members-hero-avatar { float:right; width:64px; height:64px; margin:0 0 0 20px; background:#fff; color:#173350; border:1px solid #d2dce6; font-size:1.6rem; }
.member-portal-page .members-actions { justify-content:flex-start; margin-top:18px; gap:10px; }
.member-portal-page .members-hero .btn-secondary { color:#173350; background:#fff; border:1px solid #cbd6e1; }
.member-portal-page .members-shell { padding:24px 0 64px; }
.member-portal-page .members-shell>.container { max-width:1120px; }
.member-portal-page .members-dashboard-nav { display:flex; flex-wrap:wrap; align-items:center; gap:5px; margin:0 0 24px; padding:6px; border:1px solid #dce3eb; border-radius:14px; background:#fff; }
.member-portal-page .members-dashboard-nav a,.member-portal-page .members-dashboard-nav button { display:block; padding:12px 18px; min-height:44px; border:0; border-radius:9px; color:#405771; background:transparent; box-shadow:none; font:700 .9rem/1.4 Manrope,sans-serif; text-transform:none; letter-spacing:0; text-decoration:none; }
.member-portal-page .members-dashboard-nav a[aria-current=page] { background:#173b5f; color:#fff; }
.member-portal-page .members-dashboard-nav a:hover,.member-portal-page .members-dashboard-nav button:hover { background:#edf2f7; color:#173350; }
.member-portal-page .members-dashboard-nav form { margin-left:auto; }
.member-portal-page .members-dashboard-nav button { cursor:pointer; }
.member-portal-page h2,.member-portal-page h3 { text-transform:none!important; letter-spacing:-.025em!important; line-height:1.25!important; }
.member-portal-page .members-panel h2,.member-portal-page .members-overview h2,.member-portal-page .members-message-section h2,.member-portal-page .members-directory h2,.member-portal-page .members-announcements h2 { font-size:1.5rem; }
.member-portal-page .members-panel,.member-portal-page .members-overview-card,.member-portal-page .members-stat-grid,.member-portal-page .members-directory,.member-portal-page .members-message-section,.member-portal-page .members-announcements { border-radius:16px; border:1px solid #dfe5ed; box-shadow:0 4px 18px rgba(21,42,65,.035); padding:26px; background:#fff; color:#173350; }
.member-portal-page .members-muted,.member-portal-page .members-overview-copy { color:#617388; line-height:1.6; }
.member-portal-page .members-overview { margin-top:0; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr); gap:18px; }
.member-portal-page .members-stat-grid { grid-template-columns:1fr 1fr; align-content:center; gap:16px; }
.member-portal-page .members-stat-card { border:0; padding:0; background:transparent; }
.member-portal-page .members-stat-card strong { color:#617388; text-transform:none; letter-spacing:0; }
.member-portal-page .members-stat-card span { color:#173b5f; font-size:2rem; }
.member-portal-page .members-stat-card small { display:none; }
.member-portal-page .members-role-tools { margin:0 0 20px; border-radius:14px; background:#fff; border:1px solid #dfe5ed; padding:20px 24px; }
.member-portal-page .members-role-tools-shell { padding:0; max-width:none; }
.member-portal-page .members-role-tools h2 { font-size:1.1rem; }
.member-portal-page .members-role-tools-copy { margin:6px 0 12px; font-size:.9rem; color:#617388; }
.member-portal-page .members-role-tool-groups { margin-top:10px; }
.member-portal-page .members-role-tool-group { padding:0; border:0; background:none; }
.member-portal-page .members-role-tool-group-title { display:none; }
.member-portal-page .members-account-grid { display:block; max-width:840px; }
.member-portal-page .members-profile-shell { margin:18px 0 24px; }
.member-portal-page .members-form { gap:16px; }
.member-portal-page .members-form input,.member-portal-page .members-form textarea,.member-portal-page .members-form select { border:1px solid #cad5e0; border-radius:9px; background:#fff; min-height:46px; font-size:16px; }
.member-portal-page .members-form input:focus,.member-portal-page .members-form textarea:focus,.member-portal-page .members-form select:focus { outline:3px solid #d9e9f8; outline-offset:1px; }
.member-portal-page .members-auth-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.8fr); gap:40px; align-items:start; max-width:980px; margin:8px auto; }
.member-portal-page .members-auth-card { padding:30px; }
.member-portal-page .members-auth-welcome { padding:32px 12px; }
.member-portal-page .members-auth-welcome h2 { max-width:320px; font-size:2rem; margin:18px 0 12px; }
.member-portal-page .members-auth-welcome p { max-width:340px; color:#617388; line-height:1.7; margin-bottom:18px; }
.member-portal-page .members-auth-switch { margin-top:20px; color:#617388; }
.member-portal-page .members-auth-switch a,.member-portal-page .members-auth-welcome a { color:#195c91; font-weight:700; }
.member-portal-page .members-message-sections { gap:18px; }
.member-portal-page .members-announcements { margin-top:20px; }
.member-portal-page .members-announcements h2,.member-portal-page .members-announcements .members-message-head p { color:#173350; }
.member-portal-page .members-announcements-empty { color:#617388; background:#f4f7fa; border:0; }
.member-portal-page .members-message-badge { background:#edf3f8; color:#385a7b; border:1px solid #dce6ef; }
.member-portal-page .members-message-image { max-height:300px; width:auto; max-width:100%; object-fit:contain; border-radius:10px; }
.member-portal-page .members-danger-zone { margin-top:28px; border-radius:12px; }
.member-portal-page a:focus-visible,.member-portal-page button:focus-visible { outline:3px solid #d9a441; outline-offset:3px; }
@media(max-width:1000px) { .member-portal-page .site-header .desktop-nav { display:none; } .member-portal-page .site-header .menu-toggle { display:flex; background:#173350; } }
@media(max-width:700px) {
 .member-portal-page .members-hero { padding:25px 0; }
 .member-portal-page .members-dashboard-nav a,.member-portal-page .members-dashboard-nav button { padding:10px 12px; }
 .member-portal-page .members-dashboard-nav form { margin-left:0; }
 .member-portal-page .members-overview,.member-portal-page .members-auth-layout { grid-template-columns:1fr; }
 .member-portal-page .members-auth-welcome { padding:4px 12px; }
 .member-portal-page .members-auth-welcome h2 { font-size:1.4rem; }
 .member-portal-page .members-panel,.member-portal-page .members-overview-card,.member-portal-page .members-directory,.member-portal-page .members-message-section,.member-portal-page .members-announcements { padding:20px; }
 .member-portal-page .members-row { grid-template-columns:1fr; }
 .member-portal-page .members-directory-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
