/**
 * GBPSSI-AAN Design System v1.8.8
 * One visual language across public site, Portal Suite and Ultimate Member.
 */

:root{
    --gbpssi-font:Arial,Helvetica,sans-serif;
    --gbpssi-navy:#174A82;
    --gbpssi-navy-deep:#0E3B6B;
    --gbpssi-blue:#1268F3;
    --gbpssi-gold:#D9A441;
    --gbpssi-ink:#18324F;
    --gbpssi-text:#344E63;
    --gbpssi-muted:#667085;
    --gbpssi-line:#DCE8F0;
    --gbpssi-line-strong:#C9DCE9;
    --gbpssi-surface:#FFFFFF;
    --gbpssi-soft:#F5F9FC;
    --gbpssi-soft-blue:#EDF5FB;
    --gbpssi-success:#176B37;
    --gbpssi-success-bg:#EFFAF3;
    --gbpssi-danger:#B42318;
    --gbpssi-danger-bg:#FFF1F0;
    --gbpssi-warning:#73510C;
    --gbpssi-warning-bg:#FFF8E8;
    --gbpssi-radius-sm:8px;
    --gbpssi-radius-md:12px;
    --gbpssi-radius-lg:16px;
    --gbpssi-shadow-sm:0 5px 16px rgba(23,74,130,.055);
    --gbpssi-shadow-md:0 10px 28px rgba(23,74,130,.08);
}

/* ==========================================================
   FOUNDATION — do not alter page structure, only visual language.
   ========================================================== */
body.gbpssi-aan-design-system,
body.gbpssi-aan-design-system button,
body.gbpssi-aan-design-system input,
body.gbpssi-aan-design-system select,
body.gbpssi-aan-design-system textarea,
body.gbpssi-aan-design-system .elementor,
body.gbpssi-aan-design-system .um,
body.gbpssi-aan-design-system [class^="gbpssi-"],
body.gbpssi-aan-design-system [class*=" gbpssi-"],
body.gbpssi-aan-design-system [class^="gbp-"],
body.gbpssi-aan-design-system [class*=" gbp-"],
body.gbpssi-aan-design-system [class^="gbpai"],
body.gbpssi-aan-design-system [class*=" gbpai"]{
    font-family:var(--gbpssi-font)!important;
}

body.gbpssi-aan-design-system{
    color:var(--gbpssi-ink);
    -webkit-font-smoothing:antialiased;
    text-rendering:optimizeLegibility;
}

/* Front-end Admin Console typography is owned by the Design System.
   Theme/plugin button fonts must never leak into admin workspaces. */
body.gbpssi-ui-admin-console :where(.gbpssi-admin-console,.gbpssi-aan-suite,.gbpssi-console-content) :where(a,button,input,select,textarea,summary,label,p,span,strong,small,h1,h2,h3,h4,h5,h6,table,th,td,dt,dd){
    font-family:var(--gbpssi-font)!important;
}

body.gbpssi-aan-design-system h1,
body.gbpssi-aan-design-system h2,
body.gbpssi-aan-design-system h3,
body.gbpssi-aan-design-system h4,
body.gbpssi-aan-design-system h5,
body.gbpssi-aan-design-system h6{
    font-family:var(--gbpssi-font)!important;
    letter-spacing:0!important;
}

body.gbpssi-aan-design-system input[type="text"],
body.gbpssi-aan-design-system input[type="email"],
body.gbpssi-aan-design-system input[type="password"],
body.gbpssi-aan-design-system input[type="url"],
body.gbpssi-aan-design-system input[type="search"],
body.gbpssi-aan-design-system input[type="tel"],
body.gbpssi-aan-design-system input[type="number"],
body.gbpssi-aan-design-system input[type="date"],
body.gbpssi-aan-design-system input[type="month"],
body.gbpssi-aan-design-system select,
body.gbpssi-aan-design-system textarea{
    border-color:var(--gbpssi-line-strong);
    border-radius:var(--gbpssi-radius-sm);
    color:var(--gbpssi-ink);
    font-family:var(--gbpssi-font)!important;
}

body.gbpssi-aan-design-system input:focus,
body.gbpssi-aan-design-system select:focus,
body.gbpssi-aan-design-system textarea:focus{
    border-color:var(--gbpssi-blue)!important;
    box-shadow:0 0 0 3px rgba(18,104,243,.08)!important;
    outline:none!important;
}

/* Public WordPress/Elementor typography: harmonise without overriding
   intentional hero colours or custom layout. */
body.gbpssi-aan-design-system .entry-content,
body.gbpssi-aan-design-system .elementor-widget-text-editor,
body.gbpssi-aan-design-system .elementor-heading-title{
    font-family:var(--gbpssi-font)!important;
}
body.gbpssi-aan-design-system .entry-title{
    color:var(--gbpssi-navy);
    font-family:var(--gbpssi-font)!important;
    font-weight:800;
    letter-spacing:-.02em!important;
}

/* ==========================================================
   SHARED PORTAL SURFACES
   ========================================================== */
body.gbpssi-aan-design-system .gbpssi-pro-wrap,
body.gbpssi-aan-design-system .gbpssi-jobs,
body.gbpssi-aan-design-system .gbpssi-career,
body.gbpssi-aan-design-system .gbpai,
body.gbpssi-aan-design-system .gbp-portal{
    color:var(--gbpssi-ink)!important;
}

/* Shared page hero language. */
body.gbpssi-aan-design-system .gbp-portal-welcome,
body.gbpssi-aan-design-system .gbpai-hero,
body.gbpssi-aan-design-system .gbpssi-jobs-hero,
body.gbpssi-aan-design-system .gbpssi-career-hero{
    border-radius:var(--gbpssi-radius-lg)!important;
    background:linear-gradient(135deg,var(--gbpssi-navy-deep),var(--gbpssi-blue))!important;
    box-shadow:var(--gbpssi-shadow-md)!important;
}

/* Shared card language. */
body.gbpssi-aan-design-system .gbp-portal-card,
body.gbpssi-aan-design-system .gbpai-panel,
body.gbpssi-aan-design-system .gbpssi-pro-section,
body.gbpssi-aan-design-system .gbpssi-career-section,
body.gbpssi-aan-design-system .gbpssi-jobs-panel,
body.gbpssi-aan-design-system .gbpssi-jobs-card{
    border-color:var(--gbpssi-line)!important;
    border-radius:var(--gbpssi-radius-md)!important;
    box-shadow:var(--gbpssi-shadow-sm)!important;
}

/* Shared buttons. */
body.gbpssi-aan-design-system .um-button,
body.gbpssi-aan-design-system button.um-button,
body.gbpssi-aan-design-system input.um-button,
body.gbpssi-aan-design-system .gbp-portal-btn,
body.gbpssi-aan-design-system .gbpai-btn,
body.gbpssi-aan-design-system .gbpssi-pro-primary,
body.gbpssi-aan-design-system .gbpssi-career-primary{
    border-radius:var(--gbpssi-radius-sm)!important;
    background:linear-gradient(135deg,var(--gbpssi-navy),var(--gbpssi-blue))!important;
    color:#fff!important;
    font-family:var(--gbpssi-font)!important;
    font-weight:700!important;
    box-shadow:0 5px 12px rgba(23,74,130,.12)!important;
}

/* ==========================================================
   PROFILE OVERVIEW + PROFESSIONAL JOURNEY — ONE HIERARCHY
   Primary profile header is identity; section headers are light blue/gold.
   ========================================================== */
body.gbpssi-aan-design-system .um-profile{
    --gbp-navy:var(--gbpssi-navy)!important;
    --gbp-blue:var(--gbpssi-blue)!important;
    --gbp-gold:var(--gbpssi-gold)!important;
    --gbp-ink:var(--gbpssi-ink)!important;
    --gbp-muted:var(--gbpssi-muted)!important;
    --gbp-line:var(--gbpssi-line)!important;
    --gbp-soft:var(--gbpssi-soft)!important;
    --gbp-soft-blue:var(--gbpssi-soft-blue)!important;
}

/* Overview section bars now match Journey section headers instead of looking
   like a separate application. */
body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-divider-text span{
    padding:11px 14px 11px 16px!important;
    border:1px solid var(--gbpssi-line)!important;
    border-left:4px solid var(--gbpssi-gold)!important;
    border-radius:var(--gbpssi-radius-sm)!important;
    background:linear-gradient(90deg,#EDF5FB,#F8FBFD)!important;
    color:var(--gbpssi-navy)!important;
    font-size:15px!important;
    font-weight:800!important;
    box-shadow:none!important;
}

body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-label,
body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-label label{
    color:var(--gbpssi-navy)!important;
    font-size:12px!important;
    font-weight:700!important;
}
body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-value,
body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-value p,
body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-area{
    color:var(--gbpssi-text)!important;
    font-size:13px!important;
    line-height:1.55!important;
}

body.gbpssi-aan-design-system .gbpssi-pro-intro{
    border-color:var(--gbpssi-line)!important;
    border-top:3px solid var(--gbpssi-navy)!important;
    border-radius:var(--gbpssi-radius-md)!important;
    background:linear-gradient(135deg,#fff,var(--gbpssi-soft))!important;
    box-shadow:var(--gbpssi-shadow-sm)!important;
}
body.gbpssi-aan-design-system .gbpssi-pro-intro h2{
    color:var(--gbpssi-navy)!important;
    font-size:22px!important;
    font-weight:800!important;
}
body.gbpssi-aan-design-system .gbpssi-pro-section-head{
    border-left-color:var(--gbpssi-gold)!important;
    background:linear-gradient(90deg,#EDF5FB,#F8FBFD)!important;
}
body.gbpssi-aan-design-system .gbpssi-pro-section-head h3{
    color:var(--gbpssi-navy)!important;
    font-size:17px!important;
    font-weight:800!important;
}
body.gbpssi-aan-design-system .gbpssi-pro-section-head p,
body.gbpssi-aan-design-system .gbpssi-pro-intro p{
    color:var(--gbpssi-muted)!important;
    font-size:12px!important;
}
body.gbpssi-aan-design-system .gbpssi-pro-editor-head{
    background:var(--gbpssi-soft-blue)!important;
    color:var(--gbpssi-navy)!important;
}

/* ==========================================================
   ULTIMATE MEMBER ACCOUNT / PASSWORD / PRIVACY
   Make these native UM screens visually belong to the same portal.
   ========================================================== */
body.gbpssi-aan-design-system .um-account{
    max-width:1180px!important;
    margin:0 auto!important;
    color:var(--gbpssi-ink)!important;
    font-family:var(--gbpssi-font)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side,
body.gbpssi-aan-design-system .um-account .um-account-main{
    box-sizing:border-box!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side{
    border:1px solid var(--gbpssi-line)!important;
    border-radius:var(--gbpssi-radius-md)!important;
    background:var(--gbpssi-surface)!important;
    box-shadow:var(--gbpssi-shadow-sm)!important;
    overflow:hidden!important;
}
body.gbpssi-aan-design-system .um-account .um-account-main{
    padding:24px 28px!important;
    border:1px solid var(--gbpssi-line)!important;
    border-radius:var(--gbpssi-radius-md)!important;
    background:#fff!important;
    box-shadow:var(--gbpssi-shadow-sm)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-heading{
    display:flex!important;
    align-items:center!important;
    min-height:54px!important;
    margin:0 0 22px!important;
    padding:14px 18px!important;
    border:0!important;
    border-left:4px solid var(--gbpssi-gold)!important;
    border-radius:var(--gbpssi-radius-sm)!important;
    background:linear-gradient(90deg,var(--gbpssi-navy),var(--gbpssi-blue))!important;
    color:#fff!important;
    font-family:var(--gbpssi-font)!important;
    font-size:20px!important;
    font-weight:800!important;
    line-height:1.2!important;
    box-shadow:0 7px 18px rgba(23,74,130,.11)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-heading i{
    color:var(--gbpssi-gold)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side li a,
body.gbpssi-aan-design-system .um-account .um-account-side li span.um-account-title{
    font-family:var(--gbpssi-font)!important;
    font-size:13px!important;
    font-weight:700!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side li a{
    min-height:48px!important;
    padding:12px 14px!important;
    border-bottom:1px solid var(--gbpssi-line)!important;
    background:#fff!important;
    color:var(--gbpssi-ink)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side li a:hover{
    background:var(--gbpssi-soft)!important;
    color:var(--gbpssi-navy)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side li a.current,
body.gbpssi-aan-design-system .um-account .um-account-side li a.current:hover{
    background:linear-gradient(135deg,var(--gbpssi-navy),var(--gbpssi-blue))!important;
    color:#fff!important;
}
body.gbpssi-aan-design-system .um-account .um-account-side li a.current i{
    color:#fff!important;
}
body.gbpssi-aan-design-system .um-account .um-field-label label,
body.gbpssi-aan-design-system .um-account label{
    color:var(--gbpssi-navy)!important;
    font-family:var(--gbpssi-font)!important;
    font-size:13px!important;
    font-weight:700!important;
}
body.gbpssi-aan-design-system .um-account input[type="text"],
body.gbpssi-aan-design-system .um-account input[type="email"],
body.gbpssi-aan-design-system .um-account input[type="password"],
body.gbpssi-aan-design-system .um-account select,
body.gbpssi-aan-design-system .um-account textarea{
    min-height:46px!important;
    border:1px solid var(--gbpssi-line-strong)!important;
    border-radius:var(--gbpssi-radius-sm)!important;
    background:#fff!important;
    color:var(--gbpssi-ink)!important;
    font-size:14px!important;
}
body.gbpssi-aan-design-system .um-account .um-account-meta-img img{
    border:4px solid #fff!important;
    box-shadow:0 8px 22px rgba(23,74,130,.13)!important;
}
body.gbpssi-aan-design-system .um-account .um-account-name a,
body.gbpssi-aan-design-system .um-account .um-account-name{
    color:var(--gbpssi-navy)!important;
    font-size:18px!important;
    font-weight:800!important;
}

/* Radio / choice tiles. */
body.gbpssi-aan-design-system .um-account .um-field-radio,
body.gbpssi-aan-design-system .um-account .um-field-checkbox{
    border-color:var(--gbpssi-line)!important;
}

/* ==========================================================
   ULTIMATE MEMBER LOGIN / REGISTER / PROFILE EDIT FORMS
   ========================================================== */
body.gbpssi-aan-design-system .um-form{
    font-family:var(--gbpssi-font)!important;
    color:var(--gbpssi-ink)!important;
}
body.gbpssi-aan-design-system .um-form .um-field-label label{
    color:var(--gbpssi-navy)!important;
    font-size:12.5px!important;
    font-weight:700!important;
}
body.gbpssi-aan-design-system .um-form input[type="text"],
body.gbpssi-aan-design-system .um-form input[type="email"],
body.gbpssi-aan-design-system .um-form input[type="password"],
body.gbpssi-aan-design-system .um-form input[type="url"],
body.gbpssi-aan-design-system .um-form input[type="tel"],
body.gbpssi-aan-design-system .um-form input[type="number"],
body.gbpssi-aan-design-system .um-form select,
body.gbpssi-aan-design-system .um-form textarea{
    min-height:44px!important;
    border:1px solid var(--gbpssi-line-strong)!important;
    border-radius:var(--gbpssi-radius-sm)!important;
    background:#fff!important;
    color:var(--gbpssi-ink)!important;
    font-size:13px!important;
}

/* ==========================================================
   PORTAL MODULE TYPOGRAPHY — use a shared readable scale.
   Existing layouts remain intact.
   ========================================================== */
body.gbpssi-aan-design-system .gbp-portal h1,
body.gbpssi-aan-design-system .gbpai-hero h1,
body.gbpssi-aan-design-system .gbpssi-jobs-hero h1,
body.gbpssi-aan-design-system .gbpssi-career-hero h1{
    font-size:32px!important;
    font-weight:800!important;
    line-height:1.15!important;
}
body.gbpssi-aan-design-system .gbp-portal h2,
body.gbpssi-aan-design-system .gbpai-panel h2,
body.gbpssi-aan-design-system .gbpssi-jobs h2,
body.gbpssi-aan-design-system .gbpssi-career h2{
    font-weight:800!important;
}

/* ==========================================================
   RESPONSIVE
   ========================================================== */
@media(max-width:782px){
    body.gbpssi-aan-design-system .um-account .um-account-main{
        padding:18px 15px!important;
        border-radius:10px!important;
    }
    body.gbpssi-aan-design-system .um-account .um-account-heading{
        min-height:48px!important;
        padding:12px 14px!important;
        font-size:18px!important;
    }
    body.gbpssi-aan-design-system .um-profile .um-profile-body .um-field-divider-text span{
        font-size:14px!important;
    }
    body.gbpssi-aan-design-system .gbp-portal h1,
    body.gbpssi-aan-design-system .gbpai-hero h1,
    body.gbpssi-aan-design-system .gbpssi-jobs-hero h1,
    body.gbpssi-aan-design-system .gbpssi-career-hero h1{
        font-size:27px!important;
    }
}

/* ==========================================================
   v3.28.0 — Association & Member Services consolidation
   One visual/navigation language across Association, Membership,
   Recognition, Contributions, Legacy, Alumni Voice and Stories.
   Business logic remains in the owning modules.
   ========================================================== */
.gbpssi-member-services-nav{
    display:flex;
    align-items:center;
    gap:7px;
    margin:14px 0 18px;
    padding:6px;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:thin;
    border:1px solid var(--gbpssi-line);
    border-radius:var(--gbpssi-radius-md);
    background:var(--gbpssi-surface);
    box-shadow:var(--gbpssi-shadow-sm);
}
.gbpssi-member-services-nav a{
    flex:0 0 auto;
    display:inline-flex;
    min-height:38px;
    align-items:center;
    justify-content:center;
    padding:8px 11px;
    border:1px solid transparent;
    border-radius:9px;
    color:var(--gbpssi-text)!important;
    background:transparent;
    font-size:12px!important;
    font-weight:700!important;
    line-height:1.15;
    text-decoration:none!important;
    white-space:nowrap;
}
.gbpssi-member-services-nav a:hover,
.gbpssi-member-services-nav a:focus-visible{
    border-color:var(--gbpssi-line-strong);
    background:var(--gbpssi-soft);
    color:var(--gbpssi-navy)!important;
}
.gbpssi-member-services-nav a.is-active{
    border-color:var(--gbpssi-navy);
    background:var(--gbpssi-navy);
    color:#fff!important;
    box-shadow:none;
}

body.gbpssi-aan-design-system :where(
    .gbpssi-association-hub,
    .gbpssi-membership-hub,
    .gbpssi-recognition-hub,
    .gbpssi-contribution-centre,
    .gbpssi-legacy-wrap,
    .gbpssi-voice-wrap,
    .gbpssi-content-hub
){
    width:100%;
    max-width:1240px;
    margin:0 auto!important;
    padding:18px 16px 56px!important;
    color:var(--gbpssi-ink)!important;
    font-family:var(--gbpssi-font)!important;
}

body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-hero,
    .gbpssi-membership-hero,
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-legacy-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
){
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:22px!important;
    margin:0!important;
    padding:24px 26px!important;
    border:1px solid var(--gbpssi-line)!important;
    border-radius:var(--gbpssi-radius-lg)!important;
    background:linear-gradient(135deg,#fff 0%,var(--gbpssi-soft-blue) 100%)!important;
    box-shadow:var(--gbpssi-shadow-sm)!important;
    color:var(--gbpssi-ink)!important;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-hero,
    .gbpssi-membership-hero,
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-legacy-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) > div:first-child{min-width:0;max-width:820px}
body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-hero,
    .gbpssi-membership-hero,
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-legacy-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) :where(>div:first-child>span,.eyebrow){
    color:var(--gbpssi-blue)!important;
    font-size:10px!important;
    font-weight:800!important;
    letter-spacing:.08em!important;
    text-transform:uppercase;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-hero,
    .gbpssi-membership-hero,
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-legacy-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) h1{
    margin:5px 0 7px!important;
    color:var(--gbpssi-navy)!important;
    font:800 clamp(24px,3vw,30px)/1.15 var(--gbpssi-font)!important;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-hero,
    .gbpssi-membership-hero,
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-legacy-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) p{
    margin:0!important;
    color:var(--gbpssi-text)!important;
    font-size:13px!important;
    line-height:1.6!important;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) > div:last-child{
    min-width:118px;
    padding:11px 13px;
    border:1px solid var(--gbpssi-line);
    border-radius:var(--gbpssi-radius-md);
    background:#fff;
    text-align:center!important;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) > div:last-child > strong{
    display:block;
    color:var(--gbpssi-navy)!important;
    font-size:25px!important;
    font-weight:800!important;
    line-height:1.1;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-recognition-hero,
    .gbpssi-contribution-hero,
    .gbpssi-voice-hero,
    .gbpssi-content-hero
) > div:last-child :where(span,small){
    display:block;
    margin-top:3px;
    color:var(--gbpssi-muted)!important;
    font-size:10px!important;
    font-weight:700!important;
    letter-spacing:0!important;
    text-transform:none!important;
}

/* Shared section scale. */
body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-panel,
    .gbpssi-membership-card,
    .gbpssi-membership-request,
    .gbpssi-recognition-panel,
    .gbpssi-contribution-initiative,
    .gbpssi-voice-panel,
    .gbpssi-content-submit,
    .gbpssi-content-detail,
    .gbpssi-legacy-card
){
    border-color:var(--gbpssi-line)!important;
    border-radius:var(--gbpssi-radius-md)!important;
    background:var(--gbpssi-surface)!important;
    box-shadow:var(--gbpssi-shadow-sm)!important;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-assoc-panel,
    .gbpssi-membership-card,
    .gbpssi-membership-request,
    .gbpssi-recognition-panel,
    .gbpssi-voice-panel,
    .gbpssi-content-submit
) h2{
    color:var(--gbpssi-navy)!important;
    font-size:20px!important;
    font-weight:800!important;
    line-height:1.25!important;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-membership-request button,
    .gbpssi-recognition-form button.primary,
    .recognition-filters button,
    .gbpssi-contribution-form button,
    .gbpssi-voice-primary,
    .gbpssi-content-primary
){
    min-height:40px!important;
    padding:9px 14px!important;
    border:1px solid var(--gbpssi-navy)!important;
    border-radius:9px!important;
    background:var(--gbpssi-navy)!important;
    color:#fff!important;
    font-family:var(--gbpssi-font)!important;
    font-size:12px!important;
    font-weight:800!important;
    line-height:1.2!important;
    cursor:pointer;
}
body.gbpssi-aan-design-system :where(
    .gbpssi-membership-request select,
    .gbpssi-membership-request textarea,
    .gbpssi-recognition-form input,
    .gbpssi-recognition-form select,
    .gbpssi-recognition-form textarea,
    .recognition-filters select,
    .gbpssi-contribution-form input,
    .gbpssi-contribution-form select,
    .gbpssi-contribution-form textarea,
    .gbpssi-voice-form input,
    .gbpssi-voice-form select,
    .gbpssi-voice-form textarea,
    .gbpssi-content-form-grid input,
    .gbpssi-content-form-grid select,
    .gbpssi-content-form-grid textarea
){
    border-color:var(--gbpssi-line-strong)!important;
    border-radius:9px!important;
    background:#fff!important;
    color:var(--gbpssi-ink)!important;
    font-family:var(--gbpssi-font)!important;
    font-size:13px!important;
    box-shadow:none!important;
}

/* Local tabs stay secondary to the global service navigation. */
body.gbpssi-aan-design-system :where(.gbpssi-assoc-jump,.recognition-tabs,.gbpssi-legacy-filters,.gbpssi-content-tabs){
    margin-top:10px!important;
}
body.gbpssi-aan-design-system :where(.gbpssi-assoc-jump a,.recognition-tabs a,.gbpssi-legacy-filters a,.gbpssi-content-tabs a){
    font-family:var(--gbpssi-font)!important;
    font-size:11px!important;
    font-weight:700!important;
}

@media(max-width:760px){
    .gbpssi-member-services-nav{margin:10px 0 14px;padding:5px}
    .gbpssi-member-services-nav a{min-height:36px;padding:7px 10px;font-size:11px!important}
    body.gbpssi-aan-design-system :where(
        .gbpssi-association-hub,
        .gbpssi-membership-hub,
        .gbpssi-recognition-hub,
        .gbpssi-contribution-centre,
        .gbpssi-legacy-wrap,
        .gbpssi-voice-wrap,
        .gbpssi-content-hub
    ){padding:12px 10px 42px!important}
    body.gbpssi-aan-design-system :where(
        .gbpssi-assoc-hero,
        .gbpssi-membership-hero,
        .gbpssi-recognition-hero,
        .gbpssi-contribution-hero,
        .gbpssi-legacy-hero,
        .gbpssi-voice-hero,
        .gbpssi-content-hero
    ){
        display:block!important;
        padding:18px!important;
    }
    body.gbpssi-aan-design-system :where(
        .gbpssi-recognition-hero,
        .gbpssi-contribution-hero,
        .gbpssi-voice-hero,
        .gbpssi-content-hero
    ) > div:last-child{
        width:max-content;
        min-width:0;
        margin-top:12px;
        text-align:left!important;
    }
}

body.gbpssi-aan-design-system .gbpssi-membership-hero>a{
    display:inline-flex!important;
    min-height:40px;
    align-items:center;
    justify-content:center;
    padding:9px 13px;
    border:1px solid var(--gbpssi-line-strong);
    border-radius:9px;
    background:#fff;
    color:var(--gbpssi-navy)!important;
    font-size:12px!important;
    font-weight:800!important;
    text-decoration:none!important;
    white-space:nowrap;
}
body.gbpssi-aan-design-system :where(.gbpssi-assoc-stats,.gbpssi-legacy-stats){
    display:flex!important;
    gap:8px!important;
    align-items:stretch;
}
body.gbpssi-aan-design-system :where(.gbpssi-assoc-stats,.gbpssi-legacy-stats)>div{
    min-width:92px!important;
    padding:10px 11px!important;
    border:1px solid var(--gbpssi-line)!important;
    border-radius:10px!important;
    background:#fff!important;
    text-align:center!important;
}
body.gbpssi-aan-design-system :where(.gbpssi-assoc-stats,.gbpssi-legacy-stats)>div>strong{
    display:block;
    color:var(--gbpssi-navy)!important;
    font-size:20px!important;
    font-weight:800!important;
    line-height:1.15;
}
body.gbpssi-aan-design-system :where(.gbpssi-assoc-stats,.gbpssi-legacy-stats)>div>span{
    display:block;
    margin-top:3px;
    color:var(--gbpssi-muted)!important;
    font-size:9px!important;
    font-weight:700!important;
    letter-spacing:0!important;
}
@media(max-width:760px){
    body.gbpssi-aan-design-system :where(.gbpssi-assoc-stats,.gbpssi-legacy-stats){overflow-x:auto;margin-top:12px}
    body.gbpssi-aan-design-system .gbpssi-membership-hero>a{margin-top:12px}
}

/* ========================================================================== 
   v3.29.0 — Help, notifications, identity and account services
   ========================================================================== */
body.gbpssi-aan-design-system .gbpssi-account-services-nav{
    width:min(calc(100% - 32px),1180px);margin:14px auto 18px;padding:5px;
    display:flex;gap:4px;align-items:center;overflow-x:auto;scrollbar-width:thin;
    border:1px solid var(--gbpssi-line);border-radius:12px;background:#fff;
    box-shadow:0 4px 14px rgba(20,50,79,.035)
}
body.gbpssi-aan-design-system .gbpssi-account-services-nav a{
    flex:0 0 auto;display:inline-flex;min-height:36px;align-items:center;justify-content:center;
    padding:7px 11px;border-radius:8px;color:var(--gbpssi-navy)!important;
    font:800 11px/1.2 Arial,Helvetica,sans-serif!important;text-decoration:none!important;white-space:nowrap
}
body.gbpssi-aan-design-system .gbpssi-account-services-nav a:hover{background:#f2f7fb}
body.gbpssi-aan-design-system .gbpssi-account-services-nav a.is-active{background:var(--gbpssi-navy);color:#fff!important}
body.gbpssi-aan-design-system .gbpssi-account-services-intro{
    width:min(calc(100% - 32px),1180px);margin:22px auto 0;padding:21px 23px;border:1px solid var(--gbpssi-line);
    border-radius:14px;background:linear-gradient(135deg,#174a82,#1268f3);color:#fff;box-shadow:0 9px 24px rgba(23,74,130,.10)
}
body.gbpssi-aan-design-system .gbpssi-account-services-intro span{display:block;font-size:9px!important;font-weight:800!important;letter-spacing:1px}
body.gbpssi-aan-design-system .gbpssi-account-services-intro h1{margin:5px 0!important;color:#fff!important;font:800 24px/1.12 Arial,Helvetica,sans-serif!important}
body.gbpssi-aan-design-system .gbpssi-account-services-intro p{max-width:800px;margin:0!important;color:rgba(255,255,255,.92)!important;font-size:12px!important;line-height:1.55!important}

/* Ultimate Member account remains the owner of password/account logic; this only harmonises its surface. */
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account{margin-top:6px!important;font-family:Arial,Helvetica,sans-serif!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-side,
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-main{border:1px solid var(--gbpssi-line)!important;border-radius:13px!important;background:#fff!important;box-shadow:0 5px 16px rgba(20,50,79,.04)!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-side{overflow:hidden!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-side li a{min-height:42px!important;padding:10px 12px!important;color:var(--gbpssi-text)!important;font:700 12px/1.3 Arial,Helvetica,sans-serif!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-side li a:hover{background:#f4f8fb!important;color:var(--gbpssi-navy)!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-side li a.current{background:#eef5fb!important;color:var(--gbpssi-navy)!important;border-left:3px solid var(--gbpssi-blue)!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-main{padding:20px!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-heading{margin-bottom:16px!important;color:var(--gbpssi-navy)!important;font:800 20px/1.2 Arial,Helvetica,sans-serif!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-field-label label{font:700 11px/1.3 Arial,Helvetica,sans-serif!important;color:var(--gbpssi-text)!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account :where(input[type=text],input[type=password],input[type=email],select,textarea){min-height:42px!important;border:1px solid var(--gbpssi-line-strong)!important;border-radius:8px!important;background:#fff!important;font-family:Arial,Helvetica,sans-serif!important}
body.gbpssi-aan-design-system.gbpssi-member-surface-account :where(.um-button,input[type=submit]){min-height:40px!important;border-radius:8px!important;background:var(--gbpssi-navy)!important;color:#fff!important;font:800 11px Arial,Helvetica,sans-serif!important}

/* Small action row added to notification inbox. */
body.gbpssi-aan-design-system .gbpn-head-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;justify-content:flex-end}

@media(max-width:760px){
  body.gbpssi-aan-design-system .gbpssi-account-services-nav{width:calc(100% - 20px);margin:10px auto 14px;padding:4px}
  body.gbpssi-aan-design-system .gbpssi-account-services-nav a{min-height:34px;padding:6px 9px;font-size:10px!important}
  body.gbpssi-aan-design-system .gbpssi-account-services-intro{width:calc(100% - 20px);margin-top:12px;padding:18px 16px}
  body.gbpssi-aan-design-system .gbpssi-account-services-intro h1{font-size:21px!important}
  body.gbpssi-aan-design-system.gbpssi-member-surface-account .um-account-main{padding:15px!important}
  body.gbpssi-aan-design-system .gbpn-head-actions{justify-content:flex-start}
}
body.gbpssi-aan-design-system :where(.gbpn,.gbpssi-help-centre,.gbpssi-id-page)>.gbpssi-account-services-nav{width:100%;margin:12px 0 16px}
