/*
Gathr31 Platform
Version 1.3.0
*/

:root {
    --g31-pink: #EF4056;
    --g31-pink-dark: #D9364D;
    --g31-ink: #1F2937;
    --g31-muted: #667085;
    --g31-cream: #FAF7F2;
    --g31-green: #6BA292;
    --g31-white: #FFFFFF;
    --g31-border: rgba(31, 41, 55, 0.08);
    --g31-shadow: 0 16px 45px rgba(31, 41, 55, 0.09);
}

/* ==========================================================
   Gathr31 v2.8.99 — Host activity and renewal
   ========================================================== */
.g31-host-activity-panel{
    margin-bottom:24px;
    overflow:hidden;
    border:1px solid #e4e7ec;
    border-top:4px solid #12b76a;
    background:linear-gradient(145deg,#fff 0%,#f7fbf9 100%);
}
.g31-host-activity-panel.is-reminder{border-top-color:#f79009;background:linear-gradient(145deg,#fff 0%,#fffbeb 100%)}
.g31-host-activity-panel.is-at-risk,
.g31-host-activity-panel.is-review{border-top-color:#ef4056;background:linear-gradient(145deg,#fff 0%,#fff5f6 100%)}
.g31-host-activity-panel.is-onboarding{border-top-color:#6172f3;background:linear-gradient(145deg,#fff 0%,#f5f7ff 100%)}
.g31-host-activity-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.g31-host-activity-head h2{margin:5px 0 6px;color:#101828;font-size:24px}
.g31-host-activity-head p{max-width:720px;margin:0;color:#667085;font-size:13px}
.g31-host-activity-status{flex:0 0 auto;padding:7px 11px;border-radius:999px;background:#ecfdf3;color:#067647;font-size:10px;font-weight:900;letter-spacing:.02em}
.is-reminder .g31-host-activity-status{background:#fff4e5;color:#b54708}
.is-at-risk .g31-host-activity-status,
.is-review .g31-host-activity-status{background:#fff0f1;color:#b42318}
.is-onboarding .g31-host-activity-status{background:#eef0ff;color:#3538cd}
.g31-host-activity-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}
.g31-host-activity-stats div{min-height:78px;padding:14px;border:1px solid #eaecf0;border-radius:13px;background:#fff}
.g31-host-activity-stats span{display:block;margin-bottom:6px;color:#98a2b3;font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}
.g31-host-activity-stats strong{display:block;color:#344054;font-size:13px;line-height:1.35}
.g31-host-activity-history{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin-top:13px}
.g31-host-activity-history div{padding:9px 6px;border-radius:10px;background:#f2f4f7;text-align:center}
.g31-host-activity-history strong,.g31-host-activity-history span{display:block}
.g31-host-activity-history strong{color:#475467;font-size:10px}.g31-host-activity-history span{margin-top:2px;color:#667085;font-size:8px;font-weight:750}
.g31-host-activity-history .is-complete{background:#ecfdf3}.g31-host-activity-history .is-complete strong,.g31-host-activity-history .is-complete span{color:#067647}
.g31-host-activity-history .is-scheduled{background:#eef0ff}.g31-host-activity-history .is-scheduled strong,.g31-host-activity-history .is-scheduled span{color:#3538cd}
.g31-host-activity-history .is-missed{background:#fff0f1}.g31-host-activity-history .is-missed strong,.g31-host-activity-history .is-missed span{color:#b42318}
.g31-host-activity-history .is-exception{background:#fff8e5}.g31-host-activity-history .is-exception strong,.g31-host-activity-history .is-exception span{color:#7a5200}
.g31-host-activity-grace{display:flex;align-items:center;gap:8px;margin-top:16px;padding:13px 15px;border-radius:13px;background:#f8fafc}
.g31-host-activity-grace>span{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border:2px solid #b7e4cc;border-radius:50%;background:#fff;color:#067647;font-size:10px;font-weight:900}
.g31-host-activity-grace>span.is-missed{border-color:#fda29b;background:#fff0f1;color:#b42318}
.g31-host-activity-grace small{margin-left:5px;color:#667085;font-size:10px;line-height:1.45}
.g31-host-activity-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:17px}
.g31-host-activity-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 14px;border-radius:10px;background:#ef4056;color:#fff!important;font-size:11px;font-weight:900;text-decoration:none!important}
.g31-host-activity-actions span{color:#667085;font-size:10px;text-align:right}
@media(max-width:850px){.g31-host-activity-stats{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.g31-host-activity-head,.g31-host-activity-actions{align-items:flex-start;flex-direction:column}.g31-host-activity-stats{grid-template-columns:1fr}.g31-host-activity-history{grid-template-columns:repeat(3,minmax(0,1fr))}.g31-host-activity-grace{align-items:flex-start;flex-wrap:wrap}.g31-host-activity-grace small{flex-basis:100%;margin:3px 0 0}.g31-host-activity-actions span{text-align:left}}

.g31-host-renewal-panel{margin-bottom:24px;overflow:hidden;border:1px solid #e4e7ec;border-top:4px solid #6172f3;background:linear-gradient(145deg,#fff 0%,#f7f8ff 100%)}
.g31-host-renewal-panel.is-sponsored,.g31-host-renewal-panel.is-sponsorship-approved{border-top-color:#12b76a;background:linear-gradient(145deg,#fff 0%,#f7fbf9 100%)}
.g31-host-renewal-panel.is-review-due,.g31-host-renewal-panel.is-renewal-review{border-top-color:#f79009;background:linear-gradient(145deg,#fff 0%,#fffbeb 100%)}
.g31-host-renewal-panel.is-overdue{border-top-color:#ef4056;background:linear-gradient(145deg,#fff 0%,#fff5f6 100%)}
.g31-host-renewal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}.g31-host-renewal-head h2{margin:5px 0 6px;color:#101828;font-size:24px}.g31-host-renewal-head p{max-width:720px;margin:0;color:#667085;font-size:13px}.g31-host-renewal-status{flex:0 0 auto;padding:7px 11px;border-radius:999px;background:#eef0ff;color:#3538cd;font-size:10px;font-weight:900}.is-sponsored .g31-host-renewal-status,.is-sponsorship-approved .g31-host-renewal-status{background:#ecfdf3;color:#067647}.is-review-due .g31-host-renewal-status,.is-renewal-review .g31-host-renewal-status{background:#fff4e5;color:#b54708}.is-overdue .g31-host-renewal-status{background:#fff0f1;color:#b42318}.g31-host-renewal-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:22px}.g31-host-renewal-stats div{min-height:78px;padding:14px;border:1px solid #eaecf0;border-radius:13px;background:#fff}.g31-host-renewal-stats span{display:block;margin-bottom:6px;color:#98a2b3;font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase}.g31-host-renewal-stats strong{display:block;color:#344054;font-size:13px;line-height:1.35}.g31-host-renewal-year{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:13px;padding:13px 15px;border-radius:13px;background:#ecfdf3;color:#067647;font-size:11px}.g31-host-renewal-note{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:13px;padding-top:13px;border-top:1px solid #eaecf0;color:#667085;font-size:10px}.g31-host-renewal-note p{max-width:650px;margin:0;text-align:right}@media(max-width:850px){.g31-host-renewal-stats{grid-template-columns:1fr 1fr}}@media(max-width:560px){.g31-host-renewal-head,.g31-host-renewal-year,.g31-host-renewal-note{align-items:flex-start;flex-direction:column}.g31-host-renewal-stats{grid-template-columns:1fr}.g31-host-renewal-note p{text-align:left}}

.g31-dashboard {
    max-width: 1180px;
    margin: 38px auto 60px;
    padding: 0 20px;
    color: var(--g31-ink);
}

.g31-dashboard-hero {
    position: relative;
    overflow: hidden;
    margin-bottom: 34px;
    padding: 42px;
    border-radius: 28px;
    background: linear-gradient(135deg, #1F2937 0%, #374151 100%);
    box-shadow: var(--g31-shadow);
    color: var(--g31-white);
}

.g31-dashboard-hero::after {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    right: -85px;
    top: -100px;
    border-radius: 50%;
    background: rgba(239, 64, 86, 0.18);
}

.g31-member-identity {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 26px;
}

.g31-avatar-wrap {
    flex: 0 0 auto;
}

.g31-member-avatar {
    display: block;
    width: 96px;
    height: 96px;
    object-fit: cover;
    border-radius: 50%;
    border: 4px solid rgba(255,255,255,.92);
    box-shadow: 0 10px 30px rgba(0,0,0,.22);
}

.g31-member-copy h1,
.g31-dashboard-hero h1 {
    margin: 3px 0 9px;
    color: var(--g31-white);
    font-size: clamp(30px, 4vw, 44px);
    line-height: 1.1;
}

.g31-member-copy p,
.g31-dashboard-hero p {
    max-width: 720px;
    margin: 13px 0 0;
    color: rgba(255,255,255,.82);
    font-size: 17px;
    line-height: 1.6;
}

.g31-eyebrow {
    display: block;
    margin-bottom: 6px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .14em;
    color: #FFB6C0;
}

.g31-eyebrow-dark {
    color: var(--g31-pink);
}

.g31-membership-badge {
    display: inline-flex;
    align-items: center;
    margin-top: 4px;
    padding: 8px 13px;
    border: 1px solid rgba(255,255,255,.17);
    border-radius: 999px;
    background: rgba(255,255,255,.1);
    color: var(--g31-white);
    font-size: 14px;
    font-weight: 700;
}

.g31-section-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    margin: 8px 2px 18px;
}

.g31-section-heading-tight {
    margin-top: 0;
}

.g31-section-heading h2 {
    margin: 0;
    color: var(--g31-ink);
    font-size: 28px;
}

.g31-dashboard-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.g31-card {
    padding: 30px;
    border: 1px solid var(--g31-border);
    border-radius: 24px;
    background: var(--g31-white);
    box-shadow: 0 10px 32px rgba(31, 41, 55, .07);
}

.g31-feature-card {
    position: relative;
    transition: transform .22s ease, box-shadow .22s ease;
}

.g31-feature-card:hover {
    transform: translateY(-4px);
    box-shadow: var(--g31-shadow);
}

.g31-card-icon {
    margin-bottom: 18px;
    font-size: 32px;
    line-height: 1;
}

.g31-card h2,
.g31-card h3 {
    color: var(--g31-ink);
}

.g31-card h3 {
    margin: 0 0 10px;
    font-size: 22px;
}

.g31-card p {
    margin: 0 0 22px;
    color: var(--g31-muted);
    line-height: 1.65;
}

.g31-primary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 20px;
    border: 0;
    border-radius: 999px;
    background: var(--g31-pink);
    color: var(--g31-white) !important;
    font-weight: 750;
    line-height: 1.2;
    text-decoration: none !important;
    transition: transform .2s ease, background .2s ease;
}

.g31-primary-button:hover {
    background: var(--g31-pink-dark);
    transform: translateY(-2px);
}

.g31-button-disabled {
    opacity: .68;
    cursor: default;
}

.g31-button-disabled:hover {
    background: var(--g31-pink);
    transform: none;
}

.g31-partner {
    border-top: 4px solid var(--g31-green);
}

.g31-host {
    border-top: 4px solid var(--g31-pink);
    background: linear-gradient(180deg, #FFFFFF 0%, #FFF8F9 100%);
}

.g31-host-label {
    display: inline-block;
    margin-bottom: 8px;
    color: var(--g31-pink);
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .12em;
}

.g31-host-hero {
    background: linear-gradient(135deg, #242C3A 0%, #46333A 100%);
}

.g31-experiences-hero {
    background: linear-gradient(135deg, #252E3A 0%, #3F4B46 100%);
}

.g31-local-note {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-top: 24px;
    padding: 18px 22px;
    border-radius: 18px;
    background: var(--g31-cream);
    color: var(--g31-ink);
}

.g31-local-note span {
    color: var(--g31-muted);
}

.g31-login-card {
    max-width: 650px;
    margin: 80px auto;
    text-align: center;
}

.g31-host-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: -8px 0 24px;
}

.g31-host-tab {
    display: inline-flex;
    padding: 10px 16px;
    border-radius: 999px;
    background: var(--g31-cream);
    color: var(--g31-ink) !important;
    font-weight: 700;
    text-decoration: none !important;
}

.g31-host-tab:hover {
    background: #F3EEE7;
}

.g31-host-panel {
    margin-bottom: 24px;
}

.g31-intro-copy {
    max-width: 760px;
    margin-top: -4px !important;
}

.g31-notice {
    display: grid;
    gap: 5px;
    padding: 18px 20px;
    border-radius: 16px;
    background: var(--g31-cream);
    color: var(--g31-muted);
}

.g31-wpem-wrap,
.g31-wpem-form,
.g31-wpem-dashboard {
    width: 100%;
}

.g31-wpem-wrap .job_listings,
.g31-wpem-wrap .event_listings {
    margin-top: 8px;
}

.g31-wpem-wrap ul.event_listings,
.g31-wpem-wrap ul.job_listings {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
}

.g31-wpem-wrap ul.event_listings li,
.g31-wpem-wrap ul.job_listings li {
    overflow: hidden;
    border: 1px solid var(--g31-border) !important;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 10px 28px rgba(31, 41, 55, .07);
}

.g31-wpem-wrap ul.event_listings li > a,
.g31-wpem-wrap ul.job_listings li > a {
    display: block;
    padding: 22px !important;
    text-decoration: none !important;
}

.g31-wpem-wrap .event_listing .position h3,
.g31-wpem-wrap .event_listing h3,
.g31-wpem-wrap .job_listing h3 {
    color: var(--g31-ink);
    font-size: 20px;
}

.g31-wpem-form form,
.g31-wpem-dashboard {
    padding-top: 6px;
}

.g31-wpem-form input[type="text"],
.g31-wpem-form input[type="email"],
.g31-wpem-form input[type="url"],
.g31-wpem-form input[type="number"],
.g31-wpem-form input[type="date"],
.g31-wpem-form input[type="time"],
.g31-wpem-form select,
.g31-wpem-form textarea {
    width: 100%;
    border: 1px solid #D8DCE3;
    border-radius: 12px;
    background: #fff;
    padding: 12px 14px;
}

.g31-wpem-form small,
.g31-wpem-form .description,
.g31-wpem-form .field-description {
    color: var(--g31-muted);
    line-height: 1.5;
}

.g31-wpem-form input[type="submit"],
.g31-wpem-form button,
.g31-wpem-dashboard input[type="submit"],
.g31-wpem-dashboard button {
    border: 0;
    border-radius: 999px;
    background: var(--g31-pink);
    color: #fff;
    padding: 12px 20px;
    font-weight: 700;
}

@media (max-width: 780px) {
    .g31-dashboard {
        margin-top: 22px;
        padding: 0 14px;
    }

    .g31-dashboard-hero {
        padding: 28px 22px;
        border-radius: 22px;
    }

    .g31-member-identity {
        align-items: flex-start;
        flex-direction: column;
        gap: 18px;
    }

    .g31-member-avatar {
        width: 82px;
        height: 82px;
    }

    .g31-dashboard-grid,
    .g31-wpem-wrap ul.event_listings,
    .g31-wpem-wrap ul.job_listings {
        grid-template-columns: 1fr;
    }

    .g31-card {
        padding: 24px;
    }

    .g31-local-note {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }
}


/* Gathr31 participation — v1.2.2 */

.g31-participation-card {
    max-width: 960px;
    margin: 34px auto;
    padding: 30px;
    border: 1px solid var(--g31-border);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(31, 41, 55, .08);
}

.g31-participation-top {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 22px;
}

.g31-participation-top h2 {
    margin: 0;
    color: var(--g31-ink);
    font-size: 28px;
}

.g31-place-pill {
    flex: 0 0 auto;
    padding: 9px 13px;
    border-radius: 999px;
    background: var(--g31-cream);
    color: var(--g31-ink);
    font-size: 13px;
    font-weight: 800;
}

.g31-participation-stats {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 22px;
}

.g31-participation-stats > div {
    padding: 16px;
    border-radius: 16px;
    background: var(--g31-cream);
}

.g31-participation-stats strong,
.g31-participation-stats span {
    display: block;
}

.g31-participation-stats strong {
    color: var(--g31-ink);
    font-size: 20px;
}

.g31-participation-stats span {
    margin-top: 3px;
    color: var(--g31-muted);
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.g31-friend-option {
    display: flex;
    gap: 12px;
    align-items: flex-start;
    margin: 0 0 18px;
    padding: 16px;
    border: 1px solid var(--g31-border);
    border-radius: 16px;
    background: #fffaf9;
    cursor: pointer;
}

.g31-friend-option input {
    margin-top: 4px;
}

.g31-friend-option span,
.g31-friend-option strong,
.g31-friend-option small {
    display: block;
}

.g31-friend-option strong {
    color: var(--g31-ink);
}

.g31-friend-option small {
    margin-top: 3px;
    color: var(--g31-muted);
    line-height: 1.4;
}

.g31-participation-status,
.g31-participation-message,
.g31-feedback {
    margin-bottom: 18px;
    padding: 15px 17px;
    border-radius: 15px;
}

.g31-status-going {
    background: #EDF7F3;
    color: #305F52;
    font-weight: 800;
}

.g31-status-waiting {
    background: #FFF5E7;
    color: #7A5426;
    font-weight: 800;
}

.g31-participation-message {
    background: var(--g31-cream);
    color: var(--g31-muted);
}

.g31-feedback {
    background: #F0F5FF;
    color: #344B72;
    font-weight: 700;
}

.g31-secondary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 11px 18px;
    border: 1px solid #D8DCE3;
    border-radius: 999px;
    background: #fff;
    color: var(--g31-ink);
    font-weight: 700;
    cursor: pointer;
}

.g31-secondary-button:hover {
    border-color: #C5CAD2;
    background: #F9FAFB;
}

@media (max-width: 680px) {
    .g31-participation-card {
        margin: 24px 14px;
        padding: 22px;
    }

    .g31-participation-top {
        flex-direction: column;
    }

    .g31-participation-stats {
        grid-template-columns: 1fr;
    }
}


/* Experience Invitations — v1.2.3 */

.g31-invite-card {
    max-width: 960px;
    margin: 34px auto;
    padding: 30px;
    border: 1px solid var(--g31-border);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 12px 34px rgba(31, 41, 55, .08);
}

.g31-invite-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
    margin-bottom: 22px;
}

.g31-invite-heading h2 {
    margin: 0 0 7px;
    color: var(--g31-ink);
    font-size: 28px;
}

.g31-invite-heading p {
    max-width: 680px;
    margin: 0;
    color: var(--g31-muted);
    line-height: 1.55;
}

.g31-invite-count {
    flex: 0 0 auto;
    padding: 9px 13px;
    border-radius: 999px;
    background: var(--g31-cream);
    color: var(--g31-ink);
    font-size: 13px;
    font-weight: 800;
}

.g31-invite-all-form {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
    margin-bottom: 24px;
}

.g31-invite-helper {
    color: var(--g31-muted);
    font-size: 13px;
}

.g31-connection-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.g31-connection-card {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 14px;
    border: 1px solid var(--g31-border);
    border-radius: 16px;
    background: #fff;
}

.g31-connection-avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
}

.g31-connection-copy {
    display: flex;
    flex: 1;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}

.g31-connection-copy strong {
    color: var(--g31-ink);
}

.g31-mini-button {
    padding: 7px 12px;
    border: 0;
    border-radius: 999px;
    background: var(--g31-pink);
    color: #fff;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.g31-invited-badge {
    color: var(--g31-green);
    font-size: 12px;
    font-weight: 800;
}

.g31-dashboard-invitations {
    margin-top: 24px;
}

.g31-invitations-list {
    display: grid;
    gap: 10px;
}

.g31-invitation-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid var(--g31-border);
    border-radius: 16px;
    color: var(--g31-ink) !important;
    text-decoration: none !important;
    transition: transform .18s ease, box-shadow .18s ease;
}

.g31-invitation-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 22px rgba(31, 41, 55, .07);
}

.g31-invitation-item strong {
    display: block;
    font-size: 16px;
}

@media (max-width: 680px) {
    .g31-invite-card {
        margin: 24px 14px;
        padding: 22px;
    }

    .g31-invite-heading,
    .g31-invitation-item {
        flex-direction: column;
        align-items: flex-start;
    }

    .g31-connection-grid {
        grid-template-columns: 1fr;
    }

    .g31-connection-copy {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Find Your Circles — v1.2.4 */
body .g31-circle-card,
body #groups-list > li,
body .groups-list > li,
body .bp-list.groups-list > li {
    overflow: hidden;
    border: 1px solid var(--g31-border) !important;
    border-radius: 22px !important;
    background: #fff !important;
    box-shadow: 0 10px 28px rgba(31,41,55,.07) !important;
    transition: transform .22s ease, box-shadow .22s ease !important;
}
body .g31-circle-card:hover,
body #groups-list > li:hover,
body .groups-list > li:hover {
    transform: translateY(-4px);
    box-shadow: var(--g31-shadow) !important;
}
body .g31-circle-card .g31-circle-title,
body .g31-circle-card .g31-circle-title a,
body .g31-circle-card .item-title,
body .g31-circle-card .item-title a,
body .g31-circle-card .groups-title,
body .g31-circle-card .groups-title a,
body .g31-circle-card .group-name,
body .g31-circle-card .group-name a,
body .g31-circle-card .bb-group-title,
body .g31-circle-card .bb-group-title a,
body #groups-list .item-title,
body #groups-list .item-title a,
body .groups-list .item-title,
body .groups-list .item-title a,
body .bp-list.groups-list .item-title,
body .bp-list.groups-list .item-title a {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    position: relative !important;
    z-index: 5 !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    color: var(--g31-ink) !important;
    font-size: 18px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    text-decoration: none !important;
    clip: auto !important;
    clip-path: none !important;
}
body .g31-circle-card .g31-circle-title,
body .g31-circle-card .item-title,
body .g31-circle-card .groups-title,
body .g31-circle-card .group-name,
body .g31-circle-card .bb-group-title { margin: 12px 0 6px !important; }
body .g31-circle-card .g31-circle-title a:hover,
body .g31-circle-card .item-title a:hover,
body .g31-circle-card .groups-title a:hover,
body .g31-circle-card .group-name a:hover { color: var(--g31-pink) !important; }
body .g31-circle-description,
body .g31-circle-card .item-desc,
body .g31-circle-card .group-description {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    color: var(--g31-muted) !important;
    line-height: 1.55 !important;
}
body .g31-circle-card .group-button a,
body .g31-circle-card .group-button button,
body .g31-circle-card .action a,
body .g31-circle-card .generic-button a {
    border: 0 !important;
    border-radius: 999px !important;
    background: var(--g31-pink) !important;
    color: #fff !important;
    font-weight: 750 !important;
    text-decoration: none !important;
}
@media (max-width:780px) {
    body .g31-circle-card { border-radius:18px !important; }
}


/* ==========================================================
   Gathr31 Find Your Circles — dark premium cards
   Version 1.3.0
   ========================================================== */

/* Main card */
body .g31-circle-card {
    display: flex !important;
    flex-direction: column !important;
    overflow: hidden !important;
    min-height: 610px !important;
    padding: 20px !important;
    border: 1px solid #3a424d !important;
    border-radius: 22px !important;
    background: linear-gradient(180deg, #121820 0%, #0d1319 100%) !important;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .22) !important;
    color: #f8fafc !important;
    box-sizing: border-box !important;
    transition: transform .2s ease, box-shadow .2s ease !important;
}

body .g31-circle-card:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 18px 40px rgba(0, 0, 0, .28) !important;
}

/*
 * v1.2.9 KEY FIX:
 * Image now uses the SAME width as the text/content area.
 * No negative margins and no full-bleed extension.
 */
body .g31-circle-card .g31-circle-image,
body .g31-circle-card .bs-group-cover,
body .g31-circle-card .bb-cover-list-item,
body .g31-circle-card .group-cover,
body .g31-circle-card .item-avatar,
body .g31-circle-card .group-avatar,
body .g31-circle-card .groups-avatar {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 210px !important;
    min-height: 210px !important;
    margin: 0 0 24px !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.08) !important;
    border-radius: 17px !important;
    background: #1d2630 !important;
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
}

body .g31-circle-card .g31-circle-image::after,
body .g31-circle-card .bs-group-cover::after,
body .g31-circle-card .bb-cover-list-item::after,
body .g31-circle-card .group-cover::after {
    content: "";
    position: absolute !important;
    inset: 0 !important;
    border-radius: 17px !important;
    pointer-events: none !important;
    background: linear-gradient(
        180deg,
        rgba(8, 12, 18, .02) 0%,
        rgba(8, 12, 18, .10) 100%
    ) !important;
}

body .g31-circle-card .g31-circle-image img,
body .g31-circle-card .bs-group-cover img,
body .g31-circle-card .bb-cover-list-item img,
body .g31-circle-card .group-cover img,
body .g31-circle-card .item-avatar img,
body .g31-circle-card .group-avatar img,
body .g31-circle-card .groups-avatar img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: cover !important;
    object-position: center center !important;
    border: 0 !important;
    border-radius: 17px !important;
    box-sizing: border-box !important;
}

/* Public/private pill retained */
body .g31-circle-visibility-badge {
    position: absolute !important;
    top: 15px !important;
    left: 15px !important;
    z-index: 8 !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 34px !important;
    padding: 7px 13px !important;
    border: 1px solid rgba(255,255,255,.78) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.94) !important;
    color: #111827 !important;
    font-size: 13px !important;
    font-weight: 750 !important;
    line-height: 1 !important;
    box-shadow: 0 4px 14px rgba(0,0,0,.16) !important;
    backdrop-filter: blur(6px);
}

body .g31-circle-private::before {
    content: "🔒";
    margin-right: 7px;
}

body .g31-circle-public::before {
    content: "◉";
    margin-right: 7px;
}

/* Title — retained from v1.2.8 */
body .g31-circle-card .g31-circle-title,
body .g31-circle-card .g31-circle-title a,
body .g31-circle-card .item-title,
body .g31-circle-card .item-title a,
body .g31-circle-card .groups-title,
body .g31-circle-card .groups-title a,
body .g31-circle-card .group-name,
body .g31-circle-card .group-name a,
body .g31-circle-card .bb-group-title,
body .g31-circle-card .bb-group-title a {
    position: static !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 0 10px !important;
    padding: 0 !important;
    overflow: visible !important;
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 850 !important;
    line-height: 1.18 !important;
    letter-spacing: -0.025em !important;
    text-decoration: none !important;
    text-shadow: none !important;
    white-space: normal !important;
}

body .g31-circle-card .g31-circle-title a:hover,
body .g31-circle-card .item-title a:hover,
body .g31-circle-card .groups-title a:hover,
body .g31-circle-card .group-name a:hover {
    color: #EF4056 !important;
}

/* Meta */
body .g31-circle-card .g31-circle-meta,
body .g31-circle-card .item-meta,
body .g31-circle-card .groups-meta,
body .g31-circle-card .group-meta {
    display: block !important;
    margin: 0 0 18px !important;
    color: #d0d5dd !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    line-height: 1.4 !important;
}

/* Description */
body .g31-circle-card .g31-circle-description,
body .g31-circle-card .item-desc,
body .g31-circle-card .group-description {
    display: -webkit-box !important;
    visibility: visible !important;
    opacity: 1 !important;
    min-height: 76px !important;
    margin: 0 0 20px !important;
    overflow: hidden !important;
    color: #f5f7fa !important;
    font-size: 15px !important;
    line-height: 1.58 !important;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}

body .g31-circle-card a {
    text-decoration: none !important;
}

body .g31-circle-card .item-desc a,
body .g31-circle-card .group-description a,
body .g31-circle-card a.more-link {
    color: #EF4056 !important;
    font-weight: 700 !important;
}

body .g31-circle-card p,
body .g31-circle-card span,
body .g31-circle-card div {
    text-shadow: none !important;
}

body .g31-circle-card .item,
body .g31-circle-card .item-block,
body .g31-circle-card .group-content,
body .g31-circle-card .groups-meta-wrap {
    background: transparent !important;
    color: #f5f7fa !important;
}

/* Members */
body .g31-circle-card .group-members-wrap,
body .g31-circle-card .bs-group-members,
body .g31-circle-card .item-avatar-list,
body .g31-circle-card .group-members {
    margin-top: auto !important;
    color: #f5f7fa !important;
}

body .g31-circle-card .group-members img,
body .g31-circle-card .group-members-wrap img,
body .g31-circle-card .bs-group-members img,
body .g31-circle-card .item-avatar-list img {
    width: 38px !important;
    height: 38px !important;
    border: 2px solid #ffffff !important;
    border-radius: 50% !important;
    object-fit: cover !important;
}

/* Footer divider */
body .g31-circle-footer-rule {
    width: 100% !important;
    height: 1px !important;
    margin: 20px 0 16px !important;
    background: #2f3944 !important;
}

/* Join / Organizer */
body .g31-circle-card .g31-circle-actions,
body .g31-circle-card .action,
body .g31-circle-card .group-button,
body .g31-circle-card .generic-button {
    margin-top: auto !important;
}

body .g31-circle-card .group-button a,
body .g31-circle-card .group-button button,
body .g31-circle-card .generic-button a,
body .g31-circle-card .action a,
body .g31-circle-card .action button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 180px !important;
    min-height: 48px !important;
    padding: 11px 20px !important;
    border: 1.5px solid #EF4056 !important;
    border-radius: 11px !important;
    background: transparent !important;
    color: #EF4056 !important;
    box-shadow: none !important;
    font-size: 15px !important;
    font-weight: 750 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
}

body .g31-circle-card .group-button a:hover,
body .g31-circle-card .generic-button a:hover,
body .g31-circle-card .action a:hover {
    background: rgba(239,64,86,.10) !important;
    color: #ff5b70 !important;
    border-color: #ff5b70 !important;
}

body .g31-circle-card .is-admin a,
body .g31-circle-card .is-member a,
body .g31-circle-card a.leave-group,
body .g31-circle-card a.group-button.leave-group {
    border-color: #98a2b3 !important;
    color: #f2f4f7 !important;
}

/* Mobile */
@media (max-width: 780px) {
    body .g31-circle-card {
        min-height: 0 !important;
        padding: 16px !important;
        border-radius: 18px !important;
    }

    body .g31-circle-card .g31-circle-image,
    body .g31-circle-card .bs-group-cover,
    body .g31-circle-card .bb-cover-list-item,
    body .g31-circle-card .group-cover,
    body .g31-circle-card .item-avatar,
    body .g31-circle-card .group-avatar,
    body .g31-circle-card .groups-avatar {
        width: 100% !important;
        height: 200px !important;
        min-height: 200px !important;
        margin: 0 0 20px !important;
        border-radius: 14px !important;
    }

    body .g31-circle-card .g31-circle-image img,
    body .g31-circle-card .bs-group-cover img,
    body .g31-circle-card .bb-cover-list-item img,
    body .g31-circle-card .group-cover img,
    body .g31-circle-card .item-avatar img,
    body .g31-circle-card .group-avatar img,
    body .g31-circle-card .groups-avatar img {
        border-radius: 14px !important;
    }

    body .g31-circle-card .g31-circle-title,
    body .g31-circle-card .g31-circle-title a,
    body .g31-circle-card .item-title,
    body .g31-circle-card .item-title a {
        font-size: 21px !important;
    }

    body .g31-circle-card .g31-circle-description,
    body .g31-circle-card .item-desc,
    body .g31-circle-card .group-description {
        min-height: auto !important;
        -webkit-line-clamp: 2;
    }

    body .g31-circle-card .group-button a,
    body .g31-circle-card .generic-button a,
    body .g31-circle-card .action a {
        width: 100% !important;
    }
}


/* ==========================================================
   Circle Hosts — Version 1.3.0
   ========================================================== */

.g31-circle-host {
    margin: 18px 0 10px;
}

.g31-circle-host-label {
    display: block;
    margin-bottom: 8px;
    color: #98a2b3;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .12em;
}

.g31-circle-host-person {
    display: inline-flex;
    align-items: center;
    gap: 11px;
    padding: 10px 14px 10px 10px;
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 16px;
    background: rgba(255,255,255,.06);
    color: #fff !important;
    text-decoration: none !important;
}

.g31-circle-host-avatar {
    width: 48px !important;
    height: 48px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
}

.g31-circle-host-copy {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.g31-circle-host-copy strong {
    color: #fff;
    font-size: 15px;
    line-height: 1.25;
}

.g31-circle-host-copy span {
    color: #EF4056;
    font-size: 12px;
    font-weight: 750;
}

.g31-circle-host-badge {
    display: inline-flex !important;
    align-items: center;
    margin-left: 7px;
    padding: 4px 8px;
    border: 1px solid rgba(239,64,86,.4);
    border-radius: 999px;
    background: rgba(239,64,86,.10);
    color: #EF4056 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap;
}


/* ==========================================================
   Member Membership Badges — Version 1.9.1
   ========================================================== */

.g31-member-level-badge {
    display: inline-flex !important;
    align-items: center;
    margin: 8px 0 0;
    padding: 7px 12px;
    border: 1px solid rgba(239,64,86,.38);
    border-radius: 999px;
    background: rgba(239,64,86,.10);
    color: #EF4056 !important;
    font-size: 12px;
    font-weight: 800;
    line-height: 1;
    white-space: nowrap;
}

.g31-member-level-badge-small {
    margin: 6px 0 0;
    padding: 5px 9px;
    font-size: 10px;
}

/*
 * BuddyBoss Profile Type is a separate concept from PMPro membership.
 * On member profiles, suppress the generic Profile Type label so the
 * Gathr31 PMPro-driven badge is the visible membership identity.
 */
body.g31-member-profile .profile-type,
body.g31-member-profile .member-type,
body.g31-member-profile .bb-profile-type,
body.g31-member-profile .bp-member-type,
body.g31-member-profile .profile-type-label {
    display: none !important;
}


/* ==========================================================
   Member identity corrections — Version 1.9.1
   ========================================================== */

/*
 * BuddyBoss Profile Types are NOT Gathr31 membership tiers.
 * Hide their visible labels in profile and directory cards.
 */
body.g31-member-profile .profile-type,
body.g31-member-profile .member-type,
body.g31-member-profile .bb-profile-type,
body.g31-member-profile .bp-member-type,
body.g31-member-profile .profile-type-label,
body.g31-members-directory .profile-type,
body.g31-members-directory .member-type,
body.g31-members-directory .bb-profile-type,
body.g31-members-directory .bp-member-type,
body.g31-members-directory .profile-type-label,
body.g31-members-directory .member-type-label {
    display: none !important;
}

/*
 * BuddyBoss's @username/nicename is a login/mention identity,
 * not the Gathr31 "From" field. Hide it on profile headers.
 */
body.g31-member-profile .user-nicename,
body.g31-member-profile .bb-user-nicename,
body.g31-member-profile .member-nicename,
body.g31-member-profile .bp-user-nicename,
body.g31-member-profile #item-header-content .user-nicename,
body.g31-member-profile #item-header-content .mention-name {
    display: none !important;
}

.g31-profile-identity,
.g31-directory-member-identity {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 10px;
    margin-top: 8px;
}

.g31-member-from {
    display: inline-flex;
    align-items: center;
    color: #667085;
    font-size: 13px;
    font-weight: 600;
    line-height: 1.2;
}

.g31-member-from-label {
    margin-right: 4px;
    color: #98a2b3;
    font-weight: 700;
}

.g31-member-from-small {
    font-size: 11px;
}

body.g31-member-profile .g31-member-from {
    color: #d0d5dd;
}

body.g31-member-profile .g31-member-from-label {
    color: #98a2b3;
}


/* ==========================================================
   Member identity — Version 1.9.1
   ========================================================== */

.g31-profile-identity,
.g31-directory-member-identity {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px 10px !important;
    margin: 8px 0 4px !important;
}

.g31-member-level-badge {
    margin: 0 !important;
}

.g31-member-level-badge-inline {
    display: inline-flex !important;
    margin: 0 0 0 8px !important;
    vertical-align: middle !important;
}

.g31-member-from {
    display: inline-flex !important;
    align-items: center !important;
    color: #d0d5dd !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
}

.g31-member-from-small {
    font-size: 11px !important;
}

/* Strongly suppress BuddyBoss profile type and handle display */
body.g31-member-profile .profile-type,
body.g31-member-profile .member-type,
body.g31-member-profile .bb-profile-type,
body.g31-member-profile .bp-member-type,
body.g31-member-profile .profile-type-label,
body.g31-member-profile .user-nicename,
body.g31-member-profile .bb-user-nicename,
body.g31-member-profile .member-nicename,
body.g31-member-profile .bp-user-nicename,
body.g31-member-profile #item-header-content .mention-name,
body.g31-members-directory .profile-type,
body.g31-members-directory .member-type,
body.g31-members-directory .bb-profile-type,
body.g31-members-directory .bp-member-type,
body.g31-members-directory .profile-type-label {
    display: none !important;
}


/* ==========================================================
   Member identity refinements — Version 1.9.1
   ========================================================== */

.g31-member-level-badge-inline {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    margin-left: 8px !important;
    padding: 5px 9px !important;
    border: 1px solid rgba(239,64,86,.38) !important;
    border-radius: 999px !important;
    background: rgba(239,64,86,.10) !important;
    color: #EF4056 !important;
    font-size: 10px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
}

.g31-profile-identity .g31-member-level-badge,
.g31-profile-identity .g31-member-from {
    margin-right: 4px !important;
}

.g31-profile-identity .g31-member-from::before {
    content: "•";
    margin-right: 8px;
    color: #667085;
}

/* Hide only dedicated handle elements. Combined Joined/Active meta is cleaned by JS. */
body.g31-member-profile .user-nicename,
body.g31-member-profile .bb-user-nicename,
body.g31-member-profile .member-nicename,
body.g31-member-profile .bp-user-nicename {
    display: none !important;
}


/* ==========================================================
   Manual Gathr31 badges — Version 1.9.1
   ========================================================== */

.g31-profile-identity,
.g31-directory-member-identity {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 8px 0 4px !important;
}

.g31-member-level-badge {
    display: inline-flex !important;
    align-items: center !important;
    margin: 0 !important;
    padding: 7px 12px !important;
    border: 1px solid rgba(239,64,86,.38) !important;
    border-radius: 999px !important;
    background: rgba(239,64,86,.10) !important;
    color: #EF4056 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.g31-member-level-badge-inline {
    margin-left: 8px !important;
    padding: 5px 9px !important;
    font-size: 10px !important;
    vertical-align: middle !important;
}

.g31-member-from {
    display: inline-flex !important;
    margin: 0 !important;
    color: #d0d5dd !important;
    font-size: 13px !important;
    font-weight: 650 !important;
    line-height: 1.2 !important;
}

.g31-member-from::before {
    content: "•";
    margin-right: 8px;
    color: #667085;
}

/* Hide BuddyBoss member type/profile type labels where they surface. */
.profile-type,
.member-type,
.bb-profile-type,
.bp-member-type,
.profile-type-label,
.member-type-label {
    display: none !important;
}


/* ==========================================================
   Trusted Business Dashboard — Version 1.9.1
   ========================================================== */

.g31-tb-dashboard {
    max-width: 1180px;
    margin: 0 auto;
    padding: 24px 18px 48px;
}

.g31-tb-hero {
    padding: 34px;
    border-radius: 24px;
    background: #101828;
    color: #fff;
    box-shadow: 0 18px 50px rgba(16,24,40,.12);
}

.g31-tb-kicker {
    display: block;
    margin-bottom: 12px;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #98a2b3;
}

.g31-tb-badge {
    display: inline-flex;
    margin-bottom: 14px;
    padding: 7px 12px;
    border-radius: 999px;
    background: rgba(239,64,86,.14);
    color: #ff7385;
    font-size: 12px;
    font-weight: 800;
}

.g31-tb-hero h1 {
    margin: 0 0 8px;
    color: #fff;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.05;
}

.g31-tb-hero p {
    margin: 0;
    color: #d0d5dd;
    font-size: 16px;
}

.g31-tb-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 20px;
}

.g31-tb-card {
    padding: 24px;
    border: 1px solid #eaecf0;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(16,24,40,.06);
}

.g31-tb-card-featured {
    border-color: rgba(239,64,86,.35);
}

.g31-tb-icon {
    display: block;
    margin-bottom: 12px;
    font-size: 28px;
}

.g31-tb-card h2,
.g31-tb-next h2 {
    margin: 0 0 8px;
    color: #101828;
    font-size: 19px;
}

.g31-tb-card p,
.g31-tb-next p {
    color: #667085;
    line-height: 1.6;
}

.g31-tb-card dl {
    display: grid;
    grid-template-columns: 110px 1fr;
    gap: 7px 12px;
    margin: 18px 0 0;
}

.g31-tb-card dt {
    color: #98a2b3;
    font-size: 12px;
    font-weight: 800;
    text-transform: uppercase;
}

.g31-tb-card dd {
    margin: 0;
    color: #344054;
    font-weight: 700;
}

.g31-tb-perk {
    padding: 14px 16px;
    border-radius: 14px;
    background: rgba(239,64,86,.08);
    color: #b42318 !important;
    font-weight: 750;
}

.g31-tb-link {
    display: inline-flex;
    margin-top: 10px;
    color: #ef4056;
    font-weight: 800;
    text-decoration: none;
}

.g31-tb-next {
    margin-top: 20px;
    padding: 24px;
    border-radius: 20px;
    background: #f9fafb;
    border: 1px solid #eaecf0;
}

.g31-tb-notice {
    max-width: 760px;
    margin: 30px auto;
    padding: 20px;
    border-radius: 14px;
    background: #f9fafb;
    border: 1px solid #eaecf0;
    color: #344054;
}

@media (max-width: 760px) {
    .g31-tb-grid {
        grid-template-columns: 1fr;
    }

    .g31-tb-hero {
        padding: 26px 22px;
    }
}


/* ==========================================================
   Trusted Business Self-Service — Version 1.9.1
   ========================================================== */

.g31-tb-primary-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 18px;
    border: 0;
    border-radius: 11px;
    background: #EF4056;
    color: #fff !important;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    cursor: pointer;
}

.g31-tb-primary-button:hover {
    background: #d9364d;
}

.g31-tb-hero .g31-tb-primary-button {
    margin-top: 18px;
}

.g31-tb-success {
    margin: 18px 0 0;
    padding: 14px 16px;
    border: 1px solid #abefc6;
    border-radius: 14px;
    background: #ecfdf3;
    color: #067647;
    font-weight: 750;
}

.g31-tb-editor-section {
    margin-top: 22px;
    padding: 26px;
    border: 1px solid #eaecf0;
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(16,24,40,.06);
}

.g31-tb-editor-heading {
    margin-bottom: 20px;
}

.g31-tb-editor-heading h2 {
    margin: 0 0 8px;
    color: #101828;
    font-size: 24px;
}

.g31-tb-editor-heading p {
    max-width: 720px;
    margin: 0;
    color: #667085;
    line-height: 1.6;
}

.g31-tb-kicker-dark {
    color: #EF4056;
}

.g31-tb-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-bottom: 20px;
}

.g31-tb-field {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.g31-tb-field-full {
    grid-column: 1 / -1;
}

.g31-tb-field > span {
    color: #344054;
    font-size: 13px;
    font-weight: 800;
}

.g31-tb-field input,
.g31-tb-field textarea {
    width: 100%;
    padding: 12px 13px;
    border: 1px solid #d0d5dd;
    border-radius: 11px;
    background: #fff;
    color: #101828;
    font: inherit;
    box-sizing: border-box;
}

.g31-tb-field input:focus,
.g31-tb-field textarea:focus {
    outline: none;
    border-color: #EF4056;
    box-shadow: 0 0 0 3px rgba(239,64,86,.10);
}

.g31-tb-field small {
    color: #98a2b3;
    line-height: 1.4;
}

@media (max-width: 760px) {
    .g31-tb-form-grid {
        grid-template-columns: 1fr;
    }

    .g31-tb-field-full {
        grid-column: auto;
    }

    .g31-tb-editor-section {
        padding: 20px;
    }
}


/* ==========================================================
   Premium Trusted Business Profiles — Version 1.9.1
   ========================================================== */

.g31-tb-premium {
    max-width: 1180px;
}

.g31-tb-premium-hero {
    position: relative;
    min-height: 390px;
    display: flex;
    align-items: flex-end;
    overflow: hidden;
    padding: 34px;
    border-radius: 26px;
    background:
        radial-gradient(circle at 85% 15%, rgba(239,64,86,.22), transparent 28%),
        linear-gradient(135deg, #101828, #1d2939);
    background-position: center;
    background-size: cover;
    box-shadow: 0 22px 60px rgba(16,24,40,.16);
}

.g31-tb-premium-overlay {
    position: relative;
    z-index: 2;
    width: 100%;
    display: flex;
    align-items: flex-end;
    gap: 22px;
}

.g31-tb-logo-shell {
    flex: 0 0 112px;
    width: 112px;
    height: 112px;
    padding: 5px;
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 12px 30px rgba(16,24,40,.22);
}

.g31-tb-logo,
.g31-tb-logo-placeholder {
    width: 100%;
    height: 100%;
    border-radius: 19px;
    object-fit: cover;
}

.g31-tb-logo-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    background: #f2f4f7;
    color: #344054;
    font-size: 30px;
    font-weight: 900;
}

.g31-tb-premium-title h1 {
    margin: 7px 0 8px;
    color: #fff;
    font-size: clamp(30px, 4vw, 48px);
    line-height: 1.05;
}

.g31-tb-meta-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    color: #eaecf0;
    font-size: 14px;
    font-weight: 650;
}

.g31-tb-profile-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(260px, .75fr);
    gap: 20px;
    margin-top: 20px;
}

.g31-tb-profile-main,
.g31-tb-profile-side {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.g31-tb-profile-panel,
.g31-tb-trust-panel {
    padding: 26px;
    border: 1px solid #eaecf0;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 8px 28px rgba(16,24,40,.055);
}

.g31-tb-section-label {
    display: block;
    margin-bottom: 9px;
    color: #EF4056;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .11em;
}

.g31-tb-profile-panel h2 {
    margin: 0 0 12px;
    color: #101828;
    font-size: 22px;
}

.g31-tb-about {
    margin: 0;
    color: #475467;
    font-size: 15px;
    line-height: 1.75;
}

.g31-tb-empty {
    color: #98a2b3;
    font-style: italic;
}

.g31-tb-perk-panel {
    border-color: rgba(239,64,86,.24);
}

.g31-tb-perk-heading {
    display: flex;
    gap: 13px;
    align-items: center;
}

.g31-tb-perk-heading h2 {
    margin-bottom: 2px;
}

.g31-tb-perk-heading p {
    margin: 0;
    color: #98a2b3;
}

.g31-tb-perk-icon {
    font-size: 31px;
}

.g31-tb-premium-perk {
    margin-top: 18px;
    padding: 18px 20px;
    border-radius: 15px;
    background: rgba(239,64,86,.08);
    color: #b42318;
    font-size: 17px;
    font-weight: 850;
    line-height: 1.45;
}

.g31-tb-empty-perk {
    color: #98a2b3;
    font-weight: 600;
}

.g31-tb-info-line {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 12px 0;
    border-bottom: 1px solid #f2f4f7;
}

.g31-tb-info-line strong {
    color: #98a2b3;
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.g31-tb-info-line span {
    color: #344054;
    font-weight: 750;
}

.g31-tb-website-button {
    display: flex;
    justify-content: center;
    margin-top: 18px;
    padding: 12px 14px;
    border-radius: 11px;
    background: #101828;
    color: #fff !important;
    font-weight: 800;
    text-decoration: none !important;
}

.g31-tb-trust-panel {
    display: flex;
    gap: 13px;
    background: #101828;
    color: #fff;
}

.g31-tb-trust-check {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #EF4056;
    font-weight: 900;
}

.g31-tb-trust-panel strong {
    font-size: 15px;
}

.g31-tb-trust-panel p {
    margin: 4px 0 0;
    color: #d0d5dd;
    font-size: 13px;
    line-height: 1.45;
}

.g31-tb-photo-grid {
    display: grid;
    grid-template-columns: minmax(220px,.65fr) minmax(300px,1.35fr);
    gap: 18px;
    margin-bottom: 22px;
}

.g31-tb-photo-field {
    padding: 18px;
    border: 1px solid #eaecf0;
    border-radius: 16px;
    background: #f9fafb;
}

.g31-tb-field-title {
    display: block;
    margin-bottom: 10px;
    color: #344054;
    font-size: 13px;
    font-weight: 850;
}

.g31-tb-upload-preview {
    overflow: hidden;
    margin-bottom: 12px;
    border-radius: 13px;
    background: #eaecf0;
}

.g31-tb-logo-preview {
    width: 120px;
    height: 120px;
}

.g31-tb-cover-preview {
    width: 100%;
    height: 150px;
}

.g31-tb-upload-preview img,
.g31-tb-upload-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.g31-tb-upload-placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #98a2b3;
    font-size: 11px;
    font-weight: 850;
    letter-spacing: .08em;
}

.g31-tb-upload-button {
    display: inline-flex;
    padding: 9px 13px;
    border: 1px solid #d0d5dd;
    border-radius: 9px;
    background: #fff;
    color: #344054;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
}

.g31-tb-upload-button input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.g31-tb-photo-field small {
    display: block;
    margin-top: 8px;
    color: #98a2b3;
    line-height: 1.4;
}

@media (max-width: 800px) {
    .g31-tb-profile-layout,
    .g31-tb-photo-grid {
        grid-template-columns: 1fr;
    }

    .g31-tb-premium-hero {
        min-height: 360px;
        padding: 24px;
    }

    .g31-tb-premium-overlay {
        align-items: flex-start;
        flex-direction: column;
    }

    .g31-tb-logo-shell {
        width: 90px;
        height: 90px;
        flex-basis: 90px;
    }
}


/* ==========================================================
   Public Trusted Businesses Directory — Version 1.9.1
   ========================================================== */

.g31-tb-directory,
.g31-tb-public-profile {
    max-width: 1180px;
    margin: 0 auto;
    padding: 26px 18px 50px;
}

.g31-tb-directory-hero {
    margin-bottom: 24px;
    padding: 34px;
    border-radius: 24px;
    background: linear-gradient(135deg,#101828,#1d2939);
    color: #fff;
}

.g31-tb-directory-hero h1 {
    margin: 4px 0 10px;
    color: #fff;
    font-size: clamp(32px,4vw,48px);
}

.g31-tb-directory-hero p {
    max-width: 760px;
    margin: 0;
    color: #d0d5dd;
    line-height: 1.6;
}

.g31-tb-directory-grid {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 20px;
}

.g31-tb-directory-card {
    overflow: hidden;
    border: 1px solid #eaecf0;
    border-radius: 20px;
    background: #fff;
    box-shadow: 0 10px 30px rgba(16,24,40,.07);
    transition: transform .2s ease, box-shadow .2s ease;
}

.g31-tb-directory-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 18px 40px rgba(16,24,40,.12);
}

.g31-tb-directory-cover {
    position: relative;
    display: block;
    height: 190px;
    overflow: hidden;
    background: #e4e7ec;
}

.g31-tb-directory-cover img,
.g31-tb-directory-cover-placeholder {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.g31-tb-directory-cover-placeholder {
    background: linear-gradient(135deg,#d0d5dd,#eaecf0);
}

.g31-tb-directory-trust {
    position: absolute;
    top: 14px;
    left: 14px;
    padding: 7px 10px;
    border-radius: 999px;
    background: rgba(16,24,40,.9);
    color: #fff;
    font-size: 11px;
    font-weight: 800;
}

.g31-tb-directory-body {
    padding: 18px;
}

.g31-tb-directory-heading {
    display: flex;
    gap: 12px;
    align-items: center;
}

.g31-tb-directory-logo {
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    overflow: hidden;
    border: 3px solid #fff;
    border-radius: 14px;
    background: #f2f4f7;
    box-shadow: 0 4px 14px rgba(16,24,40,.10);
}

.g31-tb-directory-logo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.g31-tb-directory-logo span {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #344054;
    font-weight: 900;
}

.g31-tb-directory-heading h2 {
    margin: 0 0 5px;
    font-size: 19px;
    line-height: 1.2;
}

.g31-tb-directory-heading h2 a {
    color: #101828;
    text-decoration: none;
}

.g31-tb-directory-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 10px;
    color: #667085;
    font-size: 12px;
}

.g31-tb-directory-perk {
    margin-top: 16px;
    padding: 12px 13px;
    border-radius: 12px;
    background: rgba(239,64,86,.08);
    color: #b42318;
    font-size: 13px;
    font-weight: 750;
    line-height: 1.4;
}

.g31-tb-directory-button {
    display: inline-flex;
    margin-top: 16px;
    color: #EF4056;
    font-weight: 850;
    text-decoration: none;
}

@media (max-width: 950px) {
    .g31-tb-directory-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width: 650px) {
    .g31-tb-directory-grid {
        grid-template-columns: 1fr;
    }

    .g31-tb-directory-hero {
        padding: 26px 22px;
    }
}


/* Trusted Business discovery filters — v1.4.5 */
.g31-tb-directory-filters{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(170px,.8fr) minmax(190px,.9fr) auto auto;gap:10px;align-items:center;margin:0 0 12px;padding:15px;border:1px solid #eaecf0;border-radius:17px;background:#fff;box-shadow:0 7px 24px rgba(16,24,40,.05)}
.g31-tb-directory-filters input,.g31-tb-directory-filters select{width:100%;min-height:44px;padding:9px 12px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#344054;font:inherit}
.g31-tb-directory-filters input:focus,.g31-tb-directory-filters select:focus{outline:none;border-color:#EF4056;box-shadow:0 0 0 3px rgba(239,64,86,.10)}
.g31-tb-filter-button{min-height:44px;padding:10px 16px;border:0;border-radius:10px;background:#EF4056;color:#fff;font-weight:850;cursor:pointer}
.g31-tb-filter-reset{color:#667085;font-size:13px;font-weight:750;text-decoration:none}
.g31-tb-directory-summary{margin:0 0 16px;color:#667085;font-size:13px;font-weight:750}
@media(max-width:900px){.g31-tb-directory-filters{grid-template-columns:1fr 1fr}.g31-tb-directory-filters input{grid-column:1/-1}}
@media(max-width:600px){.g31-tb-directory-filters{grid-template-columns:1fr}.g31-tb-directory-filters input{grid-column:auto}}


/* ==========================================================
   Toulouse Discovery Map — Version 1.9.1
   ========================================================== */
.g31-tb-view-toggle{display:flex;justify-content:flex-end;gap:6px;margin:0 0 14px}
.g31-tb-view-button{padding:9px 14px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#475467;font-weight:800;cursor:pointer}
.g31-tb-view-button.is-active{border-color:#101828;background:#101828;color:#fff}
.g31-tb-map-wrap{margin-bottom:20px}
.g31-tb-map{height:540px;border:1px solid #eaecf0;border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(16,24,40,.08)}
.g31-tb-map-empty{margin-top:10px;padding:13px;border-radius:12px;background:#f9fafb;color:#667085;font-size:13px}
.g31-map-popup{min-width:190px;line-height:1.45}
.g31-map-popup strong{display:block;margin-bottom:4px;font-size:15px;color:#101828}
.g31-map-popup-perk{margin:8px 0;padding:7px;border-radius:8px;background:rgba(239,64,86,.08);color:#b42318;font-weight:700}
.g31-map-popup a{display:inline-block;margin-top:7px;color:#EF4056;font-weight:800;text-decoration:none}
.g31-tb-directions-button{display:flex;justify-content:center;margin-top:12px;padding:11px 14px;border:1px solid #d0d5dd;border-radius:11px;background:#fff;color:#344054!important;font-weight:800;text-decoration:none!important}
.g31-tb-directions-button:hover{border-color:#EF4056;color:#EF4056!important}
@media(max-width:650px){.g31-tb-map{height:430px}.g31-tb-view-toggle{justify-content:stretch}.g31-tb-view-button{flex:1}}


/* ==========================================================
   Gathr31 Perk Redemption — Version 1.9.1
   ========================================================== */
.g31-perk-action{margin-top:16px}
.g31-perk-use-button,.g31-perk-login-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:0;border-radius:12px;background:#EF4056;color:#fff!important;font-weight:850;text-decoration:none!important;cursor:pointer}
.g31-perk-use-button:hover,.g31-perk-login-button:hover{background:#d9364d}
.g31-perk-pending{margin-top:12px;padding:13px 15px;border:1px solid #abefc6;border-radius:12px;background:#ecfdf3;color:#067647;font-weight:750}
.g31-perk-locked{margin-top:12px;padding:13px 15px;border:1px solid #eaecf0;border-radius:12px;background:#f9fafb;color:#667085;font-weight:700}
.g31-perk-manager{margin-top:20px}
.g31-perk-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.g31-perk-manager-head h2{margin-bottom:4px}
.g31-perk-manager-head p{margin:0;color:#667085}
.g31-perk-stats{display:flex;gap:8px;flex-wrap:wrap}
.g31-perk-stats span{padding:8px 10px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:12px;font-weight:700}
.g31-perk-stats strong{color:#101828}
.g31-perk-empty{margin-top:16px;padding:15px;border-radius:12px;background:#f9fafb;color:#667085}
.g31-perk-claim-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.g31-perk-claim-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 0;border-top:1px solid #f2f4f7}
.g31-perk-claim-member{display:flex;align-items:center;gap:11px}
.g31-perk-claim-member img{width:42px;height:42px;border-radius:50%;object-fit:cover}
.g31-perk-claim-member strong{display:block;color:#101828}
.g31-perk-claim-member span{display:block;margin-top:2px;color:#98a2b3;font-size:12px}
.g31-perk-validate-button{min-height:40px;padding:9px 13px;border:1px solid rgba(239,64,86,.35);border-radius:10px;background:rgba(239,64,86,.08);color:#EF4056;font-weight:850;cursor:pointer}
@media(max-width:650px){.g31-perk-manager-head,.g31-perk-claim-row{align-items:stretch;flex-direction:column}.g31-perk-validate-button,.g31-perk-use-button,.g31-perk-login-button{width:100%}}


/* ==========================================================
   Members Home Perks — Version 1.9.1
   ========================================================== */
.g31-home-perks{margin:24px 0 30px;padding:24px;border:1px solid #eaecf0;border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(16,24,40,.06)}
.g31-home-perks-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.g31-home-perks-head h2{margin:3px 0 5px;color:#101828;font-size:25px}
.g31-home-perks-head p{margin:0;color:#667085}
.g31-home-perks-head>a{flex:0 0 auto;color:#EF4056;font-weight:850;text-decoration:none}
.g31-home-eyebrow{color:#EF4056;font-size:11px;font-weight:900;letter-spacing:.09em}
.g31-home-perks-upgrade{margin-bottom:16px;padding:12px 14px;border:1px solid #eaecf0;border-radius:12px;background:#f9fafb;color:#667085;font-size:13px;font-weight:750}
.g31-home-perks-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.g31-home-perk-card{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid #eaecf0;border-radius:16px;background:#fff}
.g31-home-perk-card.is-locked{background:#fcfcfd}
.g31-home-perk-top{display:flex;align-items:center;gap:11px}
.g31-home-perk-logo{flex:0 0 48px;width:48px;height:48px;overflow:hidden;border-radius:12px;background:#f2f4f7}
.g31-home-perk-logo img{width:100%;height:100%;object-fit:cover}
.g31-home-perk-logo span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#EF4056;font-weight:900}
.g31-home-perk-card h3{margin:0 0 4px;color:#101828;font-size:16px;line-height:1.2}
.g31-home-perk-meta{display:flex;flex-wrap:wrap;gap:3px 8px;color:#98a2b3;font-size:11px}
.g31-home-perk-offer{display:flex;gap:8px;align-items:flex-start;margin:14px 0;padding:11px 12px;border-radius:11px;background:rgba(239,64,86,.07);color:#b42318;font-size:13px;line-height:1.4}
.g31-home-perk-link{margin-top:auto;color:#EF4056!important;font-size:13px;font-weight:850;text-decoration:none!important}
@media(max-width:950px){.g31-home-perks-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.g31-home-perks{padding:18px}.g31-home-perks-head{align-items:flex-start;flex-direction:column}.g31-home-perks-grid{grid-template-columns:1fr}.g31-home-perks-head>a{width:100%}}


/* ==========================================================
   My Gathr31 / Mes avantages — Version 1.9.1
   ========================================================== */
.g31-my-gathr31{margin:24px 0;padding:24px;border:1px solid #eaecf0;border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(16,24,40,.06)}
.g31-my-gathr31-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.g31-my-gathr31-head h2{margin:3px 0 5px;color:#101828;font-size:25px}
.g31-my-gathr31-head p{margin:0;color:#667085}
.g31-my-perk-stats{display:flex;gap:8px;flex-wrap:wrap}
.g31-my-perk-stats span{padding:8px 11px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:12px;font-weight:750}
.g31-my-perk-stats strong{color:#101828}
.g31-my-perks-empty{display:flex;align-items:center;gap:14px;padding:16px;border:1px dashed #d0d5dd;border-radius:15px;background:#fcfcfd}
.g31-my-perks-empty-icon{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:13px;background:rgba(239,64,86,.08);font-size:22px}
.g31-my-perks-empty strong{display:block;color:#101828}
.g31-my-perks-empty p{margin:3px 0 0;color:#667085;font-size:13px}
.g31-my-perks-empty a{margin-left:auto;flex:0 0 auto;color:#EF4056!important;font-weight:850;text-decoration:none!important}
.g31-my-perks-list{display:flex;flex-direction:column}
.g31-my-perk-item{display:flex;gap:14px;padding:16px 0;border-top:1px solid #f2f4f7}
.g31-my-perk-item:first-child{padding-top:0;border-top:0}
.g31-my-perk-logo{flex:0 0 52px;width:52px;height:52px;overflow:hidden;border-radius:13px;background:#f2f4f7}
.g31-my-perk-logo img{width:100%;height:100%;object-fit:cover}
.g31-my-perk-logo span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#EF4056;font-weight:900}
.g31-my-perk-main{flex:1;min-width:0}
.g31-my-perk-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.g31-my-perk-title-row h3{margin:0 0 4px;color:#101828;font-size:16px}
.g31-my-perk-meta{display:flex;gap:8px;flex-wrap:wrap;color:#98a2b3;font-size:11px}
.g31-my-perk-status{flex:0 0 auto;padding:6px 9px;border-radius:999px;font-size:11px;font-weight:850}
.g31-my-perk-status.is-active{background:#fff7ed;color:#c2410c}
.g31-my-perk-status.is-used{background:#ecfdf3;color:#067647}
.g31-my-perk-offer{margin-top:10px;padding:9px 11px;border-radius:10px;background:rgba(239,64,86,.07);color:#b42318;font-size:13px;font-weight:750}
.g31-my-perk-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:9px;color:#98a2b3;font-size:11px}
.g31-my-perk-footer a{color:#EF4056!important;font-weight:800;text-decoration:none!important}
@media(max-width:650px){
.g31-my-gathr31{padding:18px}
.g31-my-gathr31-head{align-items:flex-start;flex-direction:column}
.g31-my-perks-empty{align-items:flex-start;flex-wrap:wrap}
.g31-my-perks-empty a{width:100%;margin-left:62px}
.g31-my-perk-title-row,.g31-my-perk-footer{align-items:flex-start;flex-direction:column}
}


/* ==========================================================
   My Gathr31 — Circles & Connections — Version 1.9.1
   ========================================================== */
.g31-my-community{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}
.g31-my-community-column{padding:22px;border:1px solid #eaecf0;border-radius:20px;background:#fff;box-shadow:0 8px 28px rgba(16,24,40,.05)}
.g31-my-community-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:15px}
.g31-my-community-head h2{margin:3px 0 0;color:#101828;font-size:22px}
.g31-my-community-head>a{color:#EF4056!important;font-size:12px;font-weight:850;text-decoration:none!important}
.g31-my-community-empty{padding:15px;border:1px dashed #d0d5dd;border-radius:13px;background:#fcfcfd;color:#667085}
.g31-my-community-empty strong{display:block;color:#344054;font-size:13px}
.g31-my-community-empty a{display:inline-block;margin-top:7px;color:#EF4056!important;font-size:12px;font-weight:800;text-decoration:none!important}
.g31-my-groups-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.g31-my-group-card{display:flex;gap:10px;align-items:center;min-width:0;padding:10px;border:1px solid #f2f4f7;border-radius:13px;color:inherit!important;text-decoration:none!important;transition:.18s ease}
.g31-my-group-card:hover{border-color:#d0d5dd;transform:translateY(-1px)}
.g31-my-group-image{flex:0 0 46px;width:46px;height:46px;overflow:hidden;border-radius:12px;background:#f2f4f7}
.g31-my-group-image img{width:100%;height:100%;object-fit:cover}
.g31-my-group-image span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#EF4056;font-weight:900}
.g31-my-group-card strong{display:block;color:#101828;font-size:13px;line-height:1.2}
.g31-my-group-card p{margin:4px 0 0;color:#98a2b3;font-size:10px;line-height:1.3}
.g31-my-connections-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.g31-my-connection{display:flex;flex-direction:column;align-items:center;gap:7px;color:#344054!important;font-size:11px;font-weight:750;text-align:center;text-decoration:none!important}
.g31-my-connection img{width:56px;height:56px;border-radius:50%;object-fit:cover;border:2px solid #fff;box-shadow:0 4px 12px rgba(16,24,40,.10)}
.g31-my-connection:hover span{color:#EF4056}
@media(max-width:900px){.g31-my-community{grid-template-columns:1fr}.g31-my-connections-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
@media(max-width:650px){.g31-my-community-column{padding:18px}.g31-my-groups-grid{grid-template-columns:1fr}.g31-my-connections-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}


/* ==========================================================
   My Gathr31 — Upcoming Experiences — Version 1.9.1
   ========================================================== */
.g31-my-experiences{margin:24px 0;padding:24px;border:1px solid #eaecf0;border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(16,24,40,.06)}
.g31-my-experiences-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:18px}
.g31-my-experiences-head h2{margin:3px 0 5px;color:#101828;font-size:25px}
.g31-my-experiences-head p{margin:0;color:#667085}
.g31-my-experiences-head>a{flex:0 0 auto;color:#EF4056!important;font-size:13px;font-weight:850;text-decoration:none!important}
.g31-my-experiences-empty{display:flex;align-items:center;gap:14px;padding:16px;border:1px dashed #d0d5dd;border-radius:15px;background:#fcfcfd}
.g31-my-experiences-empty-icon{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;border-radius:13px;background:rgba(239,64,86,.08);font-size:22px}
.g31-my-experiences-empty strong{display:block;color:#101828}
.g31-my-experiences-empty p{margin:3px 0 0;color:#667085;font-size:13px}
.g31-my-experiences-empty>a{margin-left:auto;color:#EF4056!important;font-size:12px;font-weight:850;text-decoration:none!important}
.g31-my-experiences-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.g31-my-experience-card{overflow:hidden;border:1px solid #eaecf0;border-radius:17px;background:#fff;box-shadow:0 6px 20px rgba(16,24,40,.05)}
.g31-my-experience-media{position:relative;display:block;height:150px;overflow:hidden;background:#101828}
.g31-my-experience-media img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.g31-my-experience-card:hover .g31-my-experience-media img{transform:scale(1.025)}
.g31-my-experience-placeholder{display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,#101828,#344054);color:#fff;font-size:26px;font-weight:900}
.g31-my-experience-date{position:absolute;left:12px;bottom:12px;padding:7px 9px;border-radius:9px;background:rgba(16,24,40,.88);color:#fff;font-size:11px;font-weight:850}
.g31-my-experience-body{padding:15px}
.g31-my-experience-status{display:inline-flex;margin-bottom:8px;padding:5px 8px;border-radius:999px;background:#ecfdf3;color:#067647;font-size:10px;font-weight:850}
.g31-my-experience-body h3{margin:0 0 9px;font-size:16px;line-height:1.3}
.g31-my-experience-body h3 a{color:#101828!important;text-decoration:none!important}
.g31-my-experience-meta{display:flex;flex-direction:column;gap:5px;color:#667085;font-size:11px}
.g31-my-experience-link{display:inline-flex;margin-top:13px;color:#EF4056!important;font-size:12px;font-weight:850;text-decoration:none!important}
@media(max-width:950px){.g31-my-experiences-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
.g31-my-experiences{padding:18px}
.g31-my-experiences-head{align-items:flex-start;flex-direction:column}
.g31-my-experiences-grid{grid-template-columns:1fr}
.g31-my-experiences-empty{align-items:flex-start;flex-wrap:wrap}
.g31-my-experiences-empty>a{width:100%;margin-left:62px}
}


/* ==========================================================
   Discover for You — Version 1.9.1
   ========================================================== */
.g31-discover{margin:24px 0;padding:24px;border:1px solid #eaecf0;border-radius:22px;background:#101828;color:#fff;box-shadow:0 14px 38px rgba(16,24,40,.12)}
.g31-discover-head{margin-bottom:18px}
.g31-discover-head h2{margin:3px 0 5px;color:#fff;font-size:25px}
.g31-discover-head p{margin:0;color:#d0d5dd}
.g31-discover .g31-home-eyebrow{color:#ff7385}
.g31-discover-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.g31-discover-column{padding:16px;border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.045)}
.g31-discover-column-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.g31-discover-column-head h3{margin:0;color:#fff;font-size:15px}
.g31-discover-column-head a{color:#ff7385!important;font-size:11px;font-weight:850;text-decoration:none!important}
.g31-discover-list{display:flex;flex-direction:column;gap:9px}
.g31-discover-experience,.g31-discover-group,.g31-discover-business{display:flex;align-items:center;gap:10px;padding:9px;border-radius:12px;background:rgba(255,255,255,.045);color:inherit!important;text-decoration:none!important;transition:.18s ease}
.g31-discover-experience:hover,.g31-discover-group:hover,.g31-discover-business:hover{background:rgba(255,255,255,.08)}
.g31-discover-thumb{flex:0 0 54px;width:54px;height:54px;overflow:hidden;border-radius:11px;background:#344054}
.g31-discover-thumb img{width:100%;height:100%;object-fit:cover}
.g31-discover-thumb span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#fff;font-weight:900}
.g31-discover-circle{flex:0 0 46px;width:46px;height:46px;overflow:hidden;border-radius:50%;background:#344054}
.g31-discover-circle img{width:100%;height:100%;object-fit:cover}
.g31-discover-circle span{display:flex;width:100%;height:100%;align-items:center;justify-content:center;color:#ff7385;font-weight:900}
.g31-discover-list strong{display:block;color:#fff;font-size:12px;line-height:1.25}
.g31-discover-list span,.g31-discover-list small{display:block;margin-top:3px;color:#98a2b3;font-size:10px;line-height:1.3}
.g31-discover-empty{padding:13px;border-radius:11px;background:rgba(255,255,255,.04);color:#98a2b3;font-size:12px}
@media(max-width:950px){.g31-discover-columns{grid-template-columns:1fr 1fr}.g31-discover-column:last-child{grid-column:1/-1}}
@media(max-width:650px){.g31-discover{padding:18px}.g31-discover-columns{grid-template-columns:1fr}.g31-discover-column:last-child{grid-column:auto}}


/* ==========================================================
   Le Pouls de Gathr31 — Version 1.9.1
   ========================================================== */
.g31-pulse{margin:26px 0;padding:25px;border:1px solid #eaecf0;border-radius:22px;background:linear-gradient(180deg,#fff 0%,#fcfcfd 100%);box-shadow:0 10px 32px rgba(16,24,40,.06)}
.g31-pulse-head{margin-bottom:18px}
.g31-pulse-head h2{margin:5px 0;color:#101828;font-size:26px}
.g31-pulse-head p{margin:0;color:#667085}
.g31-pulse-live{display:inline-flex;align-items:center;gap:7px;color:#EF4056;font-size:11px;font-weight:900;letter-spacing:.08em}
.g31-pulse-live i{display:block;width:8px;height:8px;border-radius:50%;background:#EF4056;box-shadow:0 0 0 4px rgba(239,64,86,.12)}
.g31-pulse-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.g31-pulse-card{min-width:0;padding:17px;border:1px solid #eaecf0;border-radius:16px;background:#fff}
.g31-pulse-card-head{display:flex;align-items:center;gap:10px;margin-bottom:13px}
.g31-pulse-icon{display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border-radius:11px;background:#f9fafb;font-size:18px}
.g31-pulse-card-head strong{display:block;color:#101828;font-size:14px}
.g31-pulse-card-head small{display:block;margin-top:2px;color:#98a2b3;font-size:10px}
.g31-pulse-people{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.g31-pulse-people a{min-width:0;color:#344054!important;text-align:center;text-decoration:none!important}
.g31-pulse-people img{display:block;width:48px;height:48px;margin:0 auto 5px;border-radius:50%;object-fit:cover}
.g31-pulse-people span{display:block;overflow:hidden;font-size:10px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}
.g31-pulse-people small{display:block;margin-top:2px;color:#98a2b3;font-size:8px}
.g31-pulse-lines{display:flex;flex-direction:column}
.g31-pulse-lines>a{display:flex;align-items:center;gap:10px;padding:9px 0;border-top:1px solid #f2f4f7;color:inherit!important;text-decoration:none!important}
.g31-pulse-lines>a:first-child{padding-top:0;border-top:0}
.g31-pulse-lines strong{display:block;color:#344054;font-size:11px}
.g31-pulse-lines small{display:block;margin-top:2px;color:#98a2b3;font-size:9px}
.g31-pulse-date{display:flex;align-items:center;justify-content:center;flex:0 0 58px;min-height:34px;padding:5px;border-radius:9px;background:#f9fafb;color:#EF4056;font-size:9px;font-weight:900;text-align:center}
.g31-pulse-gift{display:flex;align-items:center;justify-content:center;flex:0 0 36px;width:36px;height:36px;border-radius:10px;background:rgba(239,64,86,.07)}
.g31-pulse-groups{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.g31-pulse-groups a{display:flex;align-items:center;gap:8px;padding:8px;border-radius:11px;background:#f9fafb;color:#344054!important;text-decoration:none!important}
.g31-pulse-group-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;overflow:hidden;border-radius:50%;background:#eaecf0;color:#EF4056}
.g31-pulse-group-avatar img{width:100%;height:100%;object-fit:cover}
.g31-pulse-groups strong{font-size:10px;line-height:1.2}
.g31-pulse-empty{padding:12px;border-radius:10px;background:#f9fafb;color:#98a2b3;font-size:11px}
@media(max-width:800px){.g31-pulse-grid{grid-template-columns:1fr}}
@media(max-width:650px){.g31-pulse{padding:18px}.g31-pulse-people{grid-template-columns:repeat(4,minmax(0,1fr))}.g31-pulse-groups{grid-template-columns:1fr 1fr}}


/* ==========================================================
   Gathr31 Engagement Layer / Notifications — Version 1.9.1
   ========================================================== */
.g31-notifications{margin:24px 0;padding:24px;border:1px solid #eaecf0;border-radius:22px;background:#fff;box-shadow:0 10px 32px rgba(16,24,40,.06)}
.g31-notifications-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:15px}
.g31-notifications-head h2{display:flex;align-items:center;gap:9px;margin:3px 0 5px;color:#101828;font-size:25px}
.g31-notifications-head p{margin:0;color:#667085}
.g31-notification-count{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#EF4056;color:#fff;font-size:11px;font-weight:900}
.g31-notifications-read-all{min-height:38px;padding:8px 12px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#344054;font-size:12px;font-weight:850;cursor:pointer}
.g31-notifications-read-all:hover{border-color:#EF4056;color:#EF4056}
.g31-notifications-confirm{margin-bottom:12px;padding:10px 12px;border-radius:10px;background:#ecfdf3;color:#067647;font-size:12px;font-weight:750}
.g31-notifications-empty{display:flex;align-items:center;gap:12px;padding:15px;border:1px dashed #d0d5dd;border-radius:14px;background:#fcfcfd}
.g31-notifications-empty>span{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;background:#f2f4f7;font-size:20px}
.g31-notifications-empty strong{display:block;color:#101828}
.g31-notifications-empty p{margin:3px 0 0;color:#667085;font-size:12px}
.g31-notifications-list{display:flex;flex-direction:column}
.g31-notification-item{position:relative;display:grid;grid-template-columns:44px minmax(0,1fr) auto 8px;gap:11px;align-items:center;padding:12px 8px;border-top:1px solid #f2f4f7;color:inherit!important;text-decoration:none!important}
.g31-notification-item:first-child{border-top:0}
.g31-notification-item.is-unread{background:linear-gradient(90deg,rgba(239,64,86,.045),transparent 60%)}
.g31-notification-icon{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#f9fafb;font-size:19px}
.g31-notification-copy{min-width:0}
.g31-notification-copy strong{display:block;color:#101828;font-size:13px}
.g31-notification-copy>span{display:block;margin-top:2px;overflow:hidden;color:#667085;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.g31-notification-time{color:#98a2b3;font-size:10px;white-space:nowrap}
.g31-notification-dot{display:block;width:7px;height:7px;border-radius:50%;background:#EF4056}
.g31-notification-item:hover .g31-notification-copy strong{color:#EF4056}
@media(max-width:650px){
.g31-notifications{padding:18px}
.g31-notifications-head{align-items:flex-start;flex-direction:column}
.g31-notification-item{grid-template-columns:42px minmax(0,1fr) 7px}
.g31-notification-time{grid-column:2/3;margin-top:-4px}
.g31-notification-copy>span{white-space:normal}
}

/* v1.9.1 — individual notification read state */
.g31-notification-item.is-read{opacity:.78}
.g31-notification-item.is-read:hover{opacity:1}


/* ==========================================================
   Trusted Businesses directory discovery strip — v1.9.6
   Member-facing = English
   ========================================================== */
.g31-tb-category-strip{
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    margin:16px 0 22px;
}
.g31-tb-category-pill{
    display:inline-flex;
    align-items:center;
    gap:7px;
    min-height:38px;
    padding:7px 12px;
    border:1px solid #eaecf0;
    border-radius:999px;
    background:#fff;
    color:#344054;
    box-shadow:0 2px 8px rgba(16,24,40,.035);
}
.g31-tb-category-pill>span{
    font-size:15px;
    line-height:1;
}
.g31-tb-category-pill strong{
    font-size:11px;
    font-weight:800;
    white-space:nowrap;
}
@media(max-width:650px){
    .g31-tb-category-strip{
        gap:6px;
    }
    .g31-tb-category-pill{
        min-height:34px;
        padding:6px 9px;
    }
    .g31-tb-category-pill strong{
        font-size:10px;
    }
}

/* v1.9.7 Trusted Businesses markup repair */


/* ==========================================================
   Clickable Trusted Business categories — v1.9.8
   ========================================================== */
button.g31-tb-category-pill{
    appearance:none;
    cursor:pointer;
    font:inherit;
    transition:border-color .16s ease,background .16s ease,color .16s ease,transform .16s ease;
}
button.g31-tb-category-pill:hover{
    border-color:rgba(239,64,86,.35);
    color:#EF4056;
    transform:translateY(-1px);
}
button.g31-tb-category-pill.is-active{
    border-color:#EF4056;
    background:#fff1f3;
    color:#EF4056;
}
.g31-tb-directory-card[hidden]{display:none!important}

.g31-tb-business-category-options{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:9px;
    margin-top:8px;
}
.g31-tb-business-category-choice{
    position:relative;
    display:flex;
    align-items:center;
    min-height:44px;
    cursor:pointer;
}
.g31-tb-business-category-choice input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}
.g31-tb-business-category-choice span{
    display:flex;
    align-items:center;
    width:100%;
    min-height:44px;
    padding:9px 11px;
    border:1px solid #d0d5dd;
    border-radius:11px;
    background:#fff;
    color:#475467;
    font-size:12px;
    font-weight:750;
    box-sizing:border-box;
}
.g31-tb-business-category-choice input:checked + span{
    border-color:#EF4056;
    background:#fff1f3;
    color:#b42318;
}
.g31-tb-category-help{margin-top:4px}
@media(max-width:760px){
    .g31-tb-business-category-options{grid-template-columns:1fr 1fr}
}
@media(max-width:500px){
    .g31-tb-business-category-options{grid-template-columns:1fr}
}


/* ==========================================================
   Gathr31 v2.0 — Experiences
   ========================================================== */

.g31-experiences-v2{max-width:1220px}
.g31-xp-hero{position:relative;overflow:hidden;display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:38px;background:linear-gradient(135deg,#101828 0%,#1d2939 62%,#344054 100%)}
.g31-xp-hero:after{content:"";position:absolute;width:280px;height:280px;right:-80px;top:-90px;border-radius:50%;background:rgba(239,64,86,.16)}
.g31-xp-hero .g31-member-copy{position:relative;z-index:2;max-width:760px}
.g31-xp-hero .g31-member-copy h1{font-size:clamp(34px,4vw,52px)}
.g31-xp-hero-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.g31-xp-primary-link,.g31-xp-secondary-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 15px;border-radius:11px;font-size:12px;font-weight:850;text-decoration:none!important}
.g31-xp-primary-link{background:#EF4056;color:#fff!important}.g31-xp-secondary-link{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.06);color:#fff!important}
.g31-xp-hero-stat{position:relative;z-index:2;flex:0 0 150px;padding:18px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:rgba(255,255,255,.06);color:#fff;text-align:center}
.g31-xp-hero-stat strong{display:block;font-size:34px;line-height:1}.g31-xp-hero-stat span{display:block;margin-top:6px;color:#d0d5dd;font-size:11px}

.g31-xp-section{margin-top:28px}
.g31-xp-heading p{margin:5px 0 0;color:#667085}
.g31-xp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.g31-xp-card{overflow:hidden;border:1px solid #eaecf0;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(16,24,40,.07);transition:transform .2s ease,box-shadow .2s ease}
.g31-xp-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(16,24,40,.11)}
.g31-xp-media{position:relative;display:block;height:220px;overflow:hidden;background:#101828}
.g31-xp-media img,.g31-xp-media-placeholder{width:100%;height:100%;object-fit:cover}
.g31-xp-media img{transition:transform .25s ease}.g31-xp-card:hover .g31-xp-media img{transform:scale(1.025)}
.g31-xp-media-placeholder{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#101828,#475467);color:#fff;font-size:36px;font-weight:900}
.g31-xp-date-badge{position:absolute;top:14px;left:14px;display:flex;flex-direction:column;align-items:center;justify-content:center;width:54px;height:58px;border-radius:14px;background:#fff;color:#101828;box-shadow:0 7px 18px rgba(16,24,40,.16)}
.g31-xp-date-badge strong{font-size:21px;line-height:1}.g31-xp-date-badge small{margin-top:3px;color:#EF4056;font-size:9px;font-weight:900}
.g31-xp-member-status{position:absolute;right:14px;top:14px;padding:7px 10px;border-radius:999px;font-size:10px;font-weight:900}
.g31-xp-member-status.is-going{background:#ecfdf3;color:#067647}.g31-xp-member-status.is-waiting{background:#fff7ed;color:#c2410c}

.g31-xp-body{padding:17px}
.g31-xp-host{display:flex;align-items:center;gap:9px;margin-bottom:12px}
.g31-xp-host img{width:34px!important;height:34px!important;border-radius:50%!important;object-fit:cover}
.g31-xp-host span{display:block;color:#98a2b3;font-size:9px}.g31-xp-host a{display:block;color:#344054!important;font-size:11px;font-weight:800;text-decoration:none!important}
.g31-xp-body h3{margin:0 0 9px;font-size:19px;line-height:1.25}.g31-xp-body h3 a{color:#101828!important;text-decoration:none!important}
.g31-xp-meta{display:flex;flex-direction:column;gap:5px;color:#667085;font-size:11px}
.g31-xp-excerpt{margin:12px 0 0;color:#667085;font-size:12px;line-height:1.55}
.g31-xp-social-row{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-top:15px;padding-top:14px;border-top:1px solid #f2f4f7}
.g31-xp-attendees{display:flex;align-items:center;min-width:0}
.g31-xp-faces{display:flex;margin-right:9px}.g31-xp-faces a{display:block;margin-left:-7px}.g31-xp-faces a:first-child{margin-left:0}.g31-xp-faces img{width:32px!important;height:32px!important;border:2px solid #fff!important;border-radius:50%!important;object-fit:cover}
.g31-xp-going-copy strong,.g31-xp-places strong{display:block;color:#344054;font-size:10px}.g31-xp-going-copy span,.g31-xp-places span{display:block;margin-top:2px;color:#98a2b3;font-size:8px}
.g31-xp-places{flex:0 0 auto;text-align:right}.g31-xp-places strong{color:#EF4056}
.g31-xp-view-button{display:flex;align-items:center;justify-content:center;margin-top:15px;min-height:42px;border-radius:11px;background:#101828;color:#fff!important;font-size:12px;font-weight:850;text-decoration:none!important}.g31-xp-view-button:hover{background:#EF4056}
.g31-xp-empty{display:flex;align-items:center;gap:14px;padding:20px;border:1px dashed #d0d5dd;border-radius:16px;background:#fcfcfd}.g31-xp-empty>span{font-size:24px}.g31-xp-empty strong{display:block;color:#101828}.g31-xp-empty p{margin:3px 0 0;color:#667085;font-size:12px}

@media(max-width:980px){.g31-xp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.g31-xp-hero-stat{display:none}}
@media(max-width:650px){.g31-xp-hero{padding:26px 22px}.g31-xp-hero-actions{flex-direction:column}.g31-xp-primary-link,.g31-xp-secondary-link{width:100%}.g31-xp-grid{grid-template-columns:1fr}.g31-xp-media{height:210px}}


/* ==========================================================
   Gathr31 v2.1 — Single Experience
   ========================================================== */
.g31-single-xp{max-width:1180px;margin:22px auto 60px;padding:0 18px}
/* Only the theme's separate featured-image wrapper, not the Gathr31 hero,
   attendee avatars, authored content images or Experience listing cards. */
body.g31-single-experience-page article.type-event_listing > figure.entry-img,
body.g31-single-experience-page article.type-event_listing > .post-thumbnail,
body.g31-single-experience-page article.type-event_listing > .entry-header > figure.entry-img,
body.g31-single-experience-page article.type-event_listing > .entry-content-wrap > figure.entry-media.entry-img,
body.g31-single-experience-page article.type-event_listing > .entry-header > .post-thumbnail{display:none!important}
.g31-native-editor .g31-vibes-selection-status{margin:12px 0 0;color:#667085;font-size:13px;line-height:1.5}
.g31-single-xp-back{margin-bottom:12px}.g31-single-xp-back a{color:#667085!important;font-size:12px;font-weight:800;text-decoration:none!important}
.g31-single-xp-hero{display:grid;grid-template-columns:1.2fr .8fr;overflow:hidden;border-radius:24px;background:#101828;box-shadow:0 18px 48px rgba(16,24,40,.13)}
.g31-single-xp-image{min-height:430px}.g31-single-xp-image img{width:100%;height:100%;object-fit:cover}
.g31-single-xp-intro{display:flex;flex-direction:column;justify-content:center;padding:36px;color:#fff}
.g31-single-xp-intro h1{margin:7px 0 20px;color:#fff;font-size:clamp(30px,4vw,48px);line-height:1.06}
.g31-single-xp-meta{display:flex;flex-direction:column;gap:10px}.g31-single-xp-meta span{color:#e4e7ec;font-size:12px}.g31-single-xp-meta b{display:inline-block;min-width:68px;color:#98a2b3;font-size:9px;text-transform:uppercase;letter-spacing:.05em}
.g31-single-xp-quick{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:22px}.g31-single-xp-quick div{padding:11px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.05)}.g31-single-xp-quick strong{display:block;color:#fff;font-size:16px}.g31-single-xp-quick span{display:block;margin-top:2px;color:#98a2b3;font-size:8px}
.g31-single-xp-join-jump{display:flex;align-items:center;justify-content:center;margin-top:15px;min-height:46px;border-radius:12px;background:#EF4056;color:#fff!important;font-size:12px;font-weight:900;text-decoration:none!important}
.g31-single-xp-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;margin-top:24px}
.g31-single-section{margin-bottom:18px;padding:24px;border:1px solid #eaecf0;border-radius:18px;background:#fff;box-shadow:0 5px 18px rgba(16,24,40,.04)}
.g31-single-section h2{margin:5px 0 12px;color:#101828;font-size:21px}.g31-single-xp-content{color:#475467;font-size:14px;line-height:1.7}
.g31-single-faces{display:flex;flex-wrap:wrap;margin:12px 0}.g31-single-faces a{margin:0 0 0 -8px}.g31-single-faces a:first-child{margin-left:0}.g31-single-faces img{width:48px!important;height:48px!important;border:3px solid #fff!important;border-radius:50%!important;object-fit:cover}
.g31-single-muted{color:#667085;font-size:12px}.g31-single-location{color:#344054}
.g31-single-host{display:flex;align-items:center;gap:16px}.g31-single-host img{width:72px!important;height:72px!important;border-radius:50%!important;object-fit:cover}.g31-single-host h2{margin-bottom:2px}.g31-single-host a{color:#EF4056!important;font-size:11px;font-weight:850;text-decoration:none!important}
.g31-single-xp-aside{position:relative}.g31-single-join-card{position:sticky;top:95px;padding:20px;border:1px solid #eaecf0;border-radius:20px;background:#fff;box-shadow:0 12px 34px rgba(16,24,40,.08)}.g31-single-join-card>h2{margin:6px 0 4px;color:#101828;font-size:22px}.g31-single-join-card>p{margin:0 0 14px;color:#667085}
.g31-single-join-card .g31-participation-card{margin:0;padding:0;border:0;box-shadow:none}.g31-single-join-card .g31-participation-top,.g31-single-join-card .g31-participation-stats{display:none}
@media(max-width:900px){.g31-single-xp-hero{grid-template-columns:1fr}.g31-single-xp-image{min-height:300px;max-height:430px}.g31-single-xp-layout{grid-template-columns:1fr}.g31-single-join-card{position:static}}
@media(max-width:600px){.g31-single-xp{padding:0 12px}.g31-single-xp-intro{padding:24px 20px}.g31-single-xp-image{min-height:230px}.g31-single-xp-quick{grid-template-columns:1fr}.g31-single-section{padding:19px}.g31-single-host{align-items:flex-start}}


/* ==========================================================
   Gathr31 v2.2 — Experience Discovery
   ========================================================== */
.g31-xp-discovery{margin:16px 0 22px;padding:14px;border:1px solid #eaecf0;border-radius:16px;background:#fff}
.g31-xp-filter-row{display:flex;flex-wrap:wrap;gap:7px}.g31-xp-quick-filters{margin-top:9px;padding-top:9px;border-top:1px solid #f2f4f7}
.g31-xp-filter,.g31-xp-quick-filter{appearance:none;min-height:36px;padding:7px 11px;border:1px solid #eaecf0;border-radius:999px;background:#fff;color:#475467;font:inherit;font-size:10px;font-weight:850;cursor:pointer;transition:.16s ease}
.g31-xp-filter:hover,.g31-xp-quick-filter:hover{border-color:rgba(239,64,86,.4);color:#EF4056}
.g31-xp-filter.is-active,.g31-xp-quick-filter.is-active{border-color:#EF4056;background:#fff1f3;color:#EF4056}
.g31-xp-filter-count{margin:9px 2px 0;color:#98a2b3;font-size:10px;font-weight:750}
.g31-xp-card[hidden]{display:none!important}
.g31-xp-category-badge{position:absolute;left:14px;bottom:14px;padding:7px 10px;border-radius:999px;background:rgba(16,24,40,.82);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:9px;font-weight:850}
@media(max-width:600px){.g31-xp-discovery{padding:11px}.g31-xp-filter,.g31-xp-quick-filter{font-size:9px;padding:6px 9px}}


/* v2.2.1 — Experience Type badge */
.g31-xp-type-badge{
    position:absolute;
    right:14px;
    bottom:14px;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.92);
    color:#344054;
    font-size:9px;
    font-weight:850;
    box-shadow:0 4px 12px rgba(16,24,40,.10);
}


/* v2.2.3 — single Experience Category discovery model */
.g31-xp-type-badge{display:none!important}


/* ==========================================================
   Gathr31 v2.3 — Create an Experience
   ========================================================== */
.g31-create-journey{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:18px 0}
.g31-create-journey div{display:flex;align-items:center;gap:7px;padding:10px;border:1px solid #eaecf0;border-radius:12px;background:#fcfcfd;color:#475467;font-size:9px;font-weight:800}
.g31-create-journey strong{display:flex;align-items:center;justify-content:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#fff1f3;color:#EF4056;font-size:10px}
.g31-create-prompt{margin:0 0 16px;padding:17px 18px;border-radius:15px;background:#101828;color:#fff}.g31-create-prompt h3{margin:4px 0;color:#fff;font-size:18px}.g31-create-prompt p{margin:0;color:#d0d5dd;font-size:11px}
.g31-create-experience-form{padding:18px;border:1px solid #eaecf0;border-radius:18px;background:#fff}
.g31-create-experience-form label{font-weight:800!important;color:#344054!important}
.g31-create-experience-form input,.g31-create-experience-form select,.g31-create-experience-form textarea{border-radius:10px!important;border-color:#d0d5dd!important}
.g31-create-experience-form input:focus,.g31-create-experience-form select:focus,.g31-create-experience-form textarea:focus{border-color:#EF4056!important;box-shadow:0 0 0 3px rgba(239,64,86,.08)!important}
.g31-create-experience-form input[type=submit],.g31-create-experience-form button[type=submit]{min-height:46px!important;padding:10px 18px!important;border:0!important;border-radius:12px!important;background:#EF4056!important;color:#fff!important;font-weight:900!important}
@media(max-width:900px){.g31-create-journey{grid-template-columns:1fr 1fr}.g31-create-journey div:last-child{grid-column:1/-1}}
@media(max-width:520px){.g31-create-journey{grid-template-columns:1fr}}

.g31-good-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:12px}.g31-good-grid div{padding:11px;border-radius:11px;background:#f9fafb}.g31-good-grid span{display:block;color:#98a2b3;font-size:9px;font-weight:800}.g31-good-grid strong{display:block;margin-top:3px;color:#344054;font-size:11px}.g31-vibes{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.g31-vibes span{padding:7px 10px;border-radius:999px;background:#fff1f3;color:#b42318;font-size:9px;font-weight:850}@media(max-width:500px){.g31-good-grid{grid-template-columns:1fr}}


/* v2.3.1 — Experiences interaction fixes */
.g31-xp-hero:after{pointer-events:none!important}
.g31-xp-hero-actions,.g31-xp-discovery,.g31-xp-filter-row{position:relative;z-index:5}
.g31-xp-primary-link,.g31-xp-secondary-link,.g31-xp-filter,.g31-xp-quick-filter{position:relative;z-index:6;pointer-events:auto!important;cursor:pointer!important}
#g31-upcoming-experiences{scroll-margin-top:110px}


/* ==========================================================
   Gathr31 v2.3.2 — Manage My Experiences
   ========================================================== */
.g31-host-experience-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:16px;
}
.g31-host-experience-card{
    overflow:hidden;
    border:1px solid #eaecf0;
    border-radius:17px;
    background:#fff;
    box-shadow:0 7px 22px rgba(16,24,40,.05);
}
.g31-host-experience-media{
    position:relative;
    display:block;
    height:180px;
    overflow:hidden;
    background:#101828;
}
.g31-host-experience-media img,
.g31-host-experience-placeholder{
    width:100%;
    height:100%;
    object-fit:cover;
}
.g31-host-experience-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:30px;
    font-weight:900;
}
.g31-host-status{
    position:absolute;
    top:12px;
    right:12px;
    padding:6px 9px;
    border-radius:999px;
    background:#f2f4f7;
    color:#475467;
    font-size:9px;
    font-weight:900;
}
.g31-host-status.is-live{
    background:#ecfdf3;
    color:#067647;
}
.g31-host-experience-body{padding:15px}
.g31-host-experience-body h3{
    margin:0 0 8px;
    color:#101828;
    font-size:16px;
}
.g31-host-experience-meta{
    display:flex;
    flex-wrap:wrap;
    gap:6px 10px;
    color:#667085;
    font-size:10px;
}
.g31-host-experience-actions{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:13px;
    padding-top:12px;
    border-top:1px solid #f2f4f7;
}
.g31-host-experience-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:34px;
    padding:6px 9px;
    border:1px solid #d0d5dd;
    border-radius:9px;
    background:#fff;
    color:#344054!important;
    font-size:9px;
    font-weight:850;
    text-decoration:none!important;
}
.g31-host-experience-actions a:hover{
    border-color:#EF4056;
    color:#EF4056!important;
}
.g31-host-experience-actions a.is-primary{
    border-color:#EF4056;
    background:#EF4056;
    color:#fff!important;
}
.g31-host-empty{
    padding:18px;
    border:1px dashed #d0d5dd;
    border-radius:14px;
    background:#fcfcfd;
}
.g31-host-empty strong{display:block;color:#101828}
.g31-host-empty p{margin:4px 0 8px;color:#667085;font-size:12px}
.g31-host-empty a{color:#EF4056!important;font-weight:850;text-decoration:none!important}

.g31-single-xp-back{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
}
.g31-single-edit-link{
    display:inline-flex!important;
    align-items:center;
    min-height:34px;
    padding:6px 10px;
    border:1px solid #EF4056;
    border-radius:9px;
    color:#EF4056!important;
    font-size:10px!important;
    font-weight:900!important;
}
.g31-single-edit-link:hover{
    background:#fff1f3;
}

@media(max-width:760px){
    .g31-host-experience-grid{grid-template-columns:1fr}
    .g31-single-xp-back{align-items:flex-start;flex-direction:column}
}


/* ==========================================================
   Gathr31 v2.3.5 — Experience Vibes clarity
   ========================================================== */

/* Native multiple-select fallback */
select[name*="g31_vibes"]{
    min-height:170px!important;
    width:100%!important;
    padding:8px!important;
    border:1px solid #d0d5dd!important;
    border-radius:12px!important;
    background:#fff!important;
    color:#344054!important;
    line-height:1.4!important;
}
select[name*="g31_vibes"] option{
    padding:9px 10px!important;
    margin:2px 0!important;
    border-radius:8px!important;
    white-space:normal!important;
}
select[name*="g31_vibes"] option:checked{
    background:#fff1f3!important;
    color:#b42318!important;
}

/* Select2 / enhanced multi-select used by WP Event Manager */
select[name*="g31_vibes"] + .select2-container,
.g31-create-experience-form .select2-container,
.event-manager-form .select2-container{
    width:100%!important;
    max-width:100%!important;
}

select[name*="g31_vibes"] + .select2-container .select2-selection--multiple,
.g31-create-experience-form .select2-selection--multiple,
.event-manager-form .select2-selection--multiple{
    min-height:52px!important;
    padding:7px 8px!important;
    border:1px solid #d0d5dd!important;
    border-radius:12px!important;
    background:#fff!important;
    box-sizing:border-box!important;
}

select[name*="g31_vibes"] + .select2-container .select2-selection__rendered,
.g31-create-experience-form .select2-selection__rendered,
.event-manager-form .select2-selection__rendered{
    display:flex!important;
    flex-wrap:wrap!important;
    align-items:center!important;
    gap:6px!important;
    margin:0!important;
    padding:0!important;
    white-space:normal!important;
}

select[name*="g31_vibes"] + .select2-container .select2-selection__choice,
.g31-create-experience-form .select2-selection__choice,
.event-manager-form .select2-selection__choice{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    max-width:100%!important;
    margin:0!important;
    padding:6px 9px!important;
    border:1px solid rgba(239,64,86,.24)!important;
    border-radius:999px!important;
    background:#fff1f3!important;
    color:#b42318!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1.25!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
}

select[name*="g31_vibes"] + .select2-container .select2-selection__choice__remove,
.g31-create-experience-form .select2-selection__choice__remove,
.event-manager-form .select2-selection__choice__remove{
    position:static!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    margin:0 2px 0 0!important;
    padding:0!important;
    border:0!important;
    color:#b42318!important;
    font-size:14px!important;
    line-height:1!important;
}

.select2-dropdown{
    border:1px solid #d0d5dd!important;
    border-radius:12px!important;
    overflow:hidden!important;
    box-shadow:0 10px 28px rgba(16,24,40,.10)!important;
}

.select2-results__option{
    padding:9px 12px!important;
    color:#344054!important;
    font-size:12px!important;
    line-height:1.35!important;
    white-space:normal!important;
}

.select2-results__option--highlighted[aria-selected]{
    background:#fff1f3!important;
    color:#b42318!important;
}

.select2-search--inline{
    flex:1 1 140px!important;
    min-width:120px!important;
}
.select2-search--inline .select2-search__field{
    width:100%!important;
    min-width:120px!important;
    margin:0!important;
    padding:6px 4px!important;
    border:0!important;
    box-shadow:none!important;
}

/* Make the field explanation easier to scan */
select[name*="g31_vibes"] ~ small,
.g31-create-experience-form small,
.event-manager-form small{
    line-height:1.45!important;
}

@media(max-width:600px){
    select[name*="g31_vibes"] + .select2-container .select2-selection__choice,
    .g31-create-experience-form .select2-selection__choice,
    .event-manager-form .select2-selection__choice{
        width:auto!important;
        max-width:100%!important;
        font-size:10px!important;
    }
}


/* ==========================================================
   Gathr31 v2.3.6 — Experience Vibes layout fix
   Reserve real vertical space so following fields never overlap
   ========================================================== */

.g31-vibes-field-wrap{
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
    box-sizing:border-box!important;
    margin-bottom:24px!important;
}

.g31-vibes-field-wrap:before,
.g31-vibes-field-wrap:after{
    content:"";
    display:table;
    clear:both;
}

.g31-vibes-field-wrap > label,
.g31-vibes-field-wrap .field-label,
.g31-vibes-field-wrap .wpem-form-label{
    display:block!important;
    float:none!important;
    width:100%!important;
    margin-bottom:7px!important;
}

.g31-vibes-field-wrap .field,
.g31-vibes-field-wrap .field-content,
.g31-vibes-field-wrap .wpem-form-group,
.g31-vibes-field-wrap .wpem-form-control{
    display:block!important;
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    overflow:visible!important;
}

.g31-vibes-field-wrap .select2-container,
.g31-vibes-field-wrap .g31-vibes-select2{
    position:relative!important;
    display:block!important;
    float:none!important;
    width:100%!important;
    max-width:100%!important;
    height:auto!important;
    min-height:54px!important;
    margin:0!important;
}

.g31-vibes-field-wrap .select2-selection--multiple{
    position:relative!important;
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:54px!important;
    overflow:visible!important;
    box-sizing:border-box!important;
}

.g31-vibes-field-wrap .select2-selection__rendered{
    position:relative!important;
    display:flex!important;
    flex-wrap:wrap!important;
    width:100%!important;
    min-height:38px!important;
    height:auto!important;
    overflow:visible!important;
    box-sizing:border-box!important;
}

.g31-vibes-field-wrap .select2-selection__choice{
    float:none!important;
    position:relative!important;
    max-width:100%!important;
}

.g31-vibes-field-wrap select[name*="g31_vibes"]{
    float:none!important;
    clear:both!important;
    width:100%!important;
    height:auto!important;
    min-height:170px!important;
    margin-bottom:8px!important;
}

.g31-vibes-field-wrap small,
.g31-vibes-field-wrap .description,
.g31-vibes-field-wrap .field-description{
    position:relative!important;
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    margin-top:8px!important;
    padding-top:0!important;
    color:#667085!important;
    line-height:1.5!important;
}

/* Whatever field follows Vibes must start below it. */
.g31-after-vibes-field{
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    margin-top:0!important;
}

/* Extra insurance against old two-column WPEM layouts. */
.g31-create-experience-form .g31-vibes-field-wrap,
.event-manager-form .g31-vibes-field-wrap{
    grid-column:1 / -1!important;
    flex:0 0 100%!important;
}

@media(max-width:600px){
    .g31-vibes-field-wrap{
        margin-bottom:20px!important;
    }
}


/* ==========================================================
   Gathr31 v2.3.7 — Reliable Vibes UI + simplified venue fields
   ========================================================== */

.g31-vibes-native-select{
    position:absolute!important;
    left:-9999px!important;
    width:1px!important;
    height:1px!important;
    opacity:0!important;
    pointer-events:none!important;
}

.g31-vibes-field-wrap .select2-container{
    display:none!important;
}

.g31-vibes-choice-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    width:100%;
    margin:8px 0 10px;
    clear:both;
}

.g31-vibes-choice{
    position:relative;
    display:flex!important;
    align-items:center!important;
    min-height:44px;
    width:100%!important;
    margin:0!important;
    cursor:pointer;
}

.g31-vibes-choice input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
}

.g31-vibes-choice span{
    display:flex;
    align-items:center;
    width:100%;
    min-height:44px;
    padding:9px 11px;
    border:1px solid #d0d5dd;
    border-radius:11px;
    background:#fff;
    color:#475467;
    font-size:11px;
    font-weight:800;
    line-height:1.3;
    box-sizing:border-box;
    transition:.15s ease;
}

.g31-vibes-choice:hover span{
    border-color:rgba(239,64,86,.45);
}

.g31-vibes-choice input:checked + span{
    border-color:#EF4056;
    background:#fff1f3;
    color:#b42318;
    box-shadow:0 0 0 2px rgba(239,64,86,.07);
}

.g31-vibes-field-wrap{
    position:relative!important;
    display:block!important;
    clear:both!important;
    float:none!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
    margin-bottom:24px!important;
}

.g31-after-vibes-field{
    clear:both!important;
    float:none!important;
}

@media(max-width:600px){
    .g31-vibes-choice-grid{
        grid-template-columns:1fr;
    }
}


/* ==========================================================
   Gathr31 v2.3.8 — remove duplicate Experience Vibes UI
   ========================================================== */

.g31-vibes-hide-native-ui{
    display:none!important;
    visibility:hidden!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
}

/*
 * Keep only:
 * - the field title
 * - our Gathr31 checkbox grid
 * - the explanatory help text
 *
 * Hide native multi-select leftovers.
 */
.g31-vibes-field-wrap select[name*="g31_vibes"],
.g31-vibes-field-wrap .select2-container,
.g31-vibes-field-wrap .chosen-container,
.g31-vibes-field-wrap .multiselect-container{
    display:none!important;
}

.g31-vibes-field-wrap .g31-vibes-choice-grid{
    display:grid!important;
    visibility:visible!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
}

/* Extra spacing so the field reads clearly */
.g31-vibes-field-wrap{
    padding-bottom:6px!important;
}

.g31-vibes-choice-grid{
    margin-top:10px!important;
    margin-bottom:10px!important;
}

.g31-vibes-field-wrap small,
.g31-vibes-field-wrap .description,
.g31-vibes-field-wrap .field-description{
    margin-top:8px!important;
}


/* ==========================================================
   Gathr31 v2.3.9 — Edit form data cleanup
   ========================================================== */
textarea[name*="event_description"]{
    min-height:150px!important;
    line-height:1.55!important;
    white-space:pre-wrap!important;
}


/* ==========================================================
   Gathr31 v2.3.10 — REAL Experience Vibes checkboxes
   ========================================================== */

.g31-vibes-native-select,
.g31-vibes-field-wrap .select2-container,
.g31-vibes-field-wrap .chosen-container,
.g31-vibes-field-wrap .multiselect-container{
    display:none!important;
}

.g31-vibes-real-checkbox-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    width:100%;
    margin:10px 0 12px;
}

.g31-vibes-real-choice{
    position:relative;
    display:grid!important;
    grid-template-columns:22px minmax(0,1fr);
    align-items:center!important;
    gap:9px;
    min-height:46px;
    width:100%!important;
    margin:0!important;
    padding:10px 11px!important;
    border:1px solid #d0d5dd!important;
    border-radius:11px!important;
    background:#fff!important;
    cursor:pointer;
    box-sizing:border-box!important;
    transition:border-color .15s ease, background .15s ease, box-shadow .15s ease;
}

.g31-vibes-real-choice:hover{
    border-color:rgba(239,64,86,.45)!important;
}

.g31-vibes-real-choice input{
    position:absolute!important;
    opacity:0!important;
    pointer-events:none!important;
}

.g31-vibes-checkmark{
    display:flex;
    align-items:center;
    justify-content:center;
    width:20px;
    height:20px;
    border:1.5px solid #98a2b3;
    border-radius:6px;
    background:#fff;
    box-sizing:border-box;
}

.g31-vibes-real-choice input:checked + .g31-vibes-checkmark{
    border-color:#EF4056;
    background:#EF4056;
}

.g31-vibes-real-choice input:checked + .g31-vibes-checkmark:after{
    content:"✓";
    color:#fff;
    font-size:13px;
    font-weight:900;
    line-height:1;
}

.g31-vibes-real-choice:has(input:checked){
    border-color:#EF4056!important;
    background:#fff1f3!important;
    box-shadow:0 0 0 2px rgba(239,64,86,.06);
}

.g31-vibes-real-label{
    display:block;
    min-width:0;
    color:#475467;
    font-size:11px;
    font-weight:800;
    line-height:1.3;
}

.g31-vibes-real-choice:has(input:checked) .g31-vibes-real-label{
    color:#b42318;
}

.g31-vibes-field-wrap{
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
    height:auto!important;
    overflow:visible!important;
    margin-bottom:24px!important;
}

.g31-after-vibes-field{
    display:block!important;
    float:none!important;
    clear:both!important;
    width:100%!important;
}

@media(max-width:600px){
    .g31-vibes-real-checkbox-grid{
        grid-template-columns:1fr;
    }
}


/* ==========================================================
   Gathr31 v2.3.11 — Edit Experience Save Changes CTA
   ========================================================== */

/* WP Event Manager front-end edit form */
form[name="edit_event"] input[type="submit"],
form[name="edit_event"] button[type="submit"],
.event-manager-form input[type="submit"][value*="Save"],
.event-manager-form button[type="submit"],
.wpem-form-wrapper input[type="submit"][value*="Save"],
.wpem-form-wrapper button[type="submit"]{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:auto!important;
    min-width:150px!important;
    min-height:46px!important;
    margin-top:14px!important;
    padding:11px 20px!important;
    border:1px solid #EF4056!important;
    border-radius:11px!important;
    background:#EF4056!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.2!important;
    text-align:center!important;
    text-decoration:none!important;
    cursor:pointer!important;
    box-shadow:0 5px 14px rgba(239,64,86,.18)!important;
    appearance:none!important;
    -webkit-appearance:none!important;
}

form[name="edit_event"] input[type="submit"]:hover,
form[name="edit_event"] button[type="submit"]:hover,
.event-manager-form input[type="submit"][value*="Save"]:hover,
.event-manager-form button[type="submit"]:hover,
.wpem-form-wrapper input[type="submit"][value*="Save"]:hover,
.wpem-form-wrapper button[type="submit"]:hover{
    background:#d92d48!important;
    border-color:#d92d48!important;
    color:#fff!important;
    transform:translateY(-1px);
}

form[name="edit_event"] input[type="submit"]:focus-visible,
form[name="edit_event"] button[type="submit"]:focus-visible,
.event-manager-form input[type="submit"][value*="Save"]:focus-visible,
.event-manager-form button[type="submit"]:focus-visible{
    outline:3px solid rgba(239,64,86,.20)!important;
    outline-offset:2px!important;
}

@media(max-width:520px){
    form[name="edit_event"] input[type="submit"],
    form[name="edit_event"] button[type="submit"],
    .event-manager-form input[type="submit"][value*="Save"],
    .event-manager-form button[type="submit"],
    .wpem-form-wrapper input[type="submit"][value*="Save"],
    .wpem-form-wrapper button[type="submit"]{
        width:100%!important;
    }
}


/* ==========================================================
   Gathr31 v2.3.14 — reliable front-end Experience joining
   ========================================================== */

#g31-participation{
    scroll-margin-top:110px;
}

.g31-single-join-card .g31-join-form{
    display:block!important;
    width:100%!important;
    margin-top:12px!important;
}

.g31-single-join-card .g31-primary-button,
.g31-single-join-card .g31-join-form button[type="submit"]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:48px!important;
    margin-top:12px!important;
    padding:11px 16px!important;
    border:0!important;
    border-radius:12px!important;
    background:#EF4056!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:900!important;
    line-height:1.2!important;
    cursor:pointer!important;
    text-decoration:none!important;
    box-shadow:0 6px 16px rgba(239,64,86,.18)!important;
}

.g31-single-join-card .g31-primary-button:hover,
.g31-single-join-card .g31-join-form button[type="submit"]:hover{
    background:#d92d48!important;
}

.g31-single-join-card .g31-secondary-button{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    min-height:42px!important;
    margin-top:10px!important;
    border:1px solid #d0d5dd!important;
    border-radius:10px!important;
    background:#fff!important;
    color:#475467!important;
    font-weight:850!important;
    cursor:pointer!important;
}

.g31-single-xp-join-jump{
    cursor:pointer!important;
    pointer-events:auto!important;
}


/* ==========================================================
   Gathr31 v2.3.17 — Experience page refinement
   ========================================================== */
.g31-single-xp-layout{
    display:block!important;
    max-width:900px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}
.g31-single-xp-main{
    width:100%!important;
    max-width:none!important;
}
.g31-single-xp-aside{display:none!important;}
.g31-single-join-card{
    width:100%!important;
    max-width:none!important;
    margin-top:24px!important;
    box-sizing:border-box!important;
}
.g31-status-hosting{
    border:1px solid rgba(239,64,86,.22);
    background:#fff1f3;
    color:#b42318;
    border-radius:12px;
    padding:12px 14px;
    font-weight:900;
}
.g31-host-capacity-note{margin:9px 0 0;color:#667085;line-height:1.5;}
.g31-host-contact{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px 12px;
    margin:12px 0;
    padding:12px 14px;
    border:1px solid #eaecf0;
    border-radius:12px;
    background:#f9fafb;
}
.g31-host-contact strong{width:100%;font-size:12px;}
.g31-host-contact a{font-weight:900;text-decoration:none;}
.g31-host-contact small{width:100%;color:#667085;}


/* ==========================================================
   Gathr31 v2.3.18 — Circle Experiences
   ========================================================== */
.g31-circle-experience-action{
    margin:12px 0 4px;
}
.g31-circle-experience-button{
    display:inline-flex!important;
    align-items:center;
    gap:7px;
    min-height:40px;
    padding:8px 13px;
    border:1px solid #EF4056;
    border-radius:11px;
    background:#EF4056;
    color:#fff!important;
    font-size:11px;
    font-weight:900;
    text-decoration:none!important;
    box-shadow:0 5px 14px rgba(239,64,86,.15);
}
.g31-circle-experience-button:hover{
    background:#d92d48;
    border-color:#d92d48;
    color:#fff!important;
}
.g31-circle-experience-feed-card{
    margin:8px 0;
    padding:14px;
    border:1px solid #eaecf0;
    border-radius:14px;
    background:#fff;
}
.g31-circle-experience-feed-card>strong{
    color:#EF4056;
    font-size:9px;
    letter-spacing:.05em;
    text-transform:uppercase;
}
.g31-circle-experience-feed-card h4{
    margin:5px 0;
    font-size:16px;
}
.g31-circle-experience-feed-card p{
    margin:5px 0;
    color:#667085;
    font-size:11px;
}
.g31-circle-experience-feed-card a{
    font-weight:850;
    text-decoration:none!important;
}


/* ==========================================================
   Gathr31 v2.3.20 — consolidated fast Circle/Experience UI
   ========================================================== */

/* Single Experience: remove external BuddyBoss/WordPress right sidebar. */
.g31-single-experience-page #secondary,
.g31-single-experience-page .widget-area,
.g31-single-experience-page .bb-sidebar,
.g31-single-experience-page .bb-right-panel,
.g31-single-experience-page .bb-grid > aside,
.g31-single-experience-page .site-content > aside{
    display:none!important;
}

.g31-single-experience-page #primary,
.g31-single-experience-page .content-area,
.g31-single-experience-page .site-main,
.g31-single-experience-page .bb-grid > main,
.g31-single-experience-page .bb-grid > .content-area{
    width:100%!important;
    max-width:100%!important;
    flex:1 1 100%!important;
}

/* Circle origin on directory cards. */
.g31-xp-circle-badge{
    position:absolute;
    right:14px;
    bottom:14px;
    z-index:4;
    max-width:55%;
    padding:7px 10px;
    border-radius:999px;
    background:rgba(255,255,255,.94);
    color:#344054!important;
    font-size:9px;
    font-weight:900;
    text-decoration:none!important;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    box-shadow:0 4px 12px rgba(16,24,40,.12);
}
.g31-xp-circle-badge:hover{color:#EF4056!important}

/* Circle origin on single Experience. */
.g31-xp-circle-link{
    color:#fff!important;
    font-weight:850;
    text-decoration:none!important;
    border-bottom:1px solid rgba(255,255,255,.32);
}

/* Joined/host/waiting state in hero. */
.g31-single-xp-member-state{
    display:flex;
    align-items:center;
    justify-content:center;
    margin-top:15px;
    min-height:46px;
    padding:10px 14px;
    border-radius:12px;
    font-size:12px;
    font-weight:900;
    text-align:center;
}
.g31-single-xp-member-state.is-going{background:#ecfdf3;color:#067647}
.g31-single-xp-member-state.is-hosting{background:#fff1f3;color:#b42318}
.g31-single-xp-member-state.is-waiting{background:#fff7ed;color:#c2410c}

/* Circle's own Experience hub. */
.g31-circle-experiences{
    margin:24px 0;
    padding:20px;
    border:1px solid #eaecf0;
    border-radius:18px;
    background:#fff;
}
.g31-circle-experiences-head{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:12px;
    margin-bottom:14px;
}
.g31-circle-experiences-head span{
    color:#EF4056;
    font-size:9px;
    font-weight:900;
    letter-spacing:.06em;
}
.g31-circle-experiences-head h2{
    margin:3px 0 0;
    color:#101828;
    font-size:22px;
}
.g31-circle-small-create{
    display:inline-flex;
    min-height:36px;
    align-items:center;
    padding:7px 11px;
    border-radius:10px;
    background:#EF4056;
    color:#fff!important;
    font-size:10px;
    font-weight:900;
    text-decoration:none!important;
}
.g31-circle-experience-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
}
.g31-circle-experience-card{
    overflow:hidden;
    border:1px solid #eaecf0;
    border-radius:15px;
    background:#fcfcfd;
}
.g31-circle-experience-image{
    display:block;
    height:150px;
    overflow:hidden;
    background:#101828;
}
.g31-circle-experience-image img{
    width:100%;
    height:100%;
    object-fit:cover;
}
.g31-circle-experience-image>span{
    display:flex;
    width:100%;
    height:100%;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:28px;
    font-weight:900;
}
.g31-circle-experience-info{padding:13px}
.g31-circle-source{color:#EF4056;font-size:9px;font-weight:900}
.g31-circle-experience-info h3{margin:5px 0 8px;font-size:15px}
.g31-circle-experience-info h3 a{color:#101828!important;text-decoration:none!important}
.g31-circle-experience-info p{margin:4px 0;color:#667085;font-size:10px}
.g31-circle-view-xp{
    display:inline-block;
    margin-top:8px;
    color:#EF4056!important;
    font-size:10px;
    font-weight:900;
    text-decoration:none!important;
}

@media(max-width:700px){
    .g31-circle-experience-grid{grid-template-columns:1fr}
    .g31-circle-experiences-head{align-items:flex-start;flex-direction:column}
}


/* ==========================================================
   Gathr31 v2.3.21 — Circle Experiences tab
   ========================================================== */

#g31-circle-experiences-tab a:before{
    content:"✨";
    margin-right:5px;
}

.g31-circle-experiences-page{
    width:100%;
    margin:0;
    padding:4px 0 28px;
}

.g31-circle-experiences-hero{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:20px;
    margin:0 0 18px;
    padding:20px;
    border:1px solid #eaecf0;
    border-radius:18px;
    background:#fff;
}

.g31-circle-kicker{
    display:block;
    color:#EF4056;
    font-size:9px;
    font-weight:900;
    letter-spacing:.07em;
}

.g31-circle-experiences-hero h2{
    margin:4px 0 5px;
    color:#101828;
    font-size:24px;
}

.g31-circle-experiences-hero p{
    margin:0;
    color:#667085;
    font-size:12px;
}

.g31-circle-create-main{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:42px;
    padding:9px 14px;
    border-radius:11px;
    background:#EF4056;
    color:#fff!important;
    font-size:11px;
    font-weight:900;
    text-decoration:none!important;
}

.g31-circle-create-main:hover{
    background:#d92d48;
    color:#fff!important;
}

.g31-circle-experiences-empty{
    padding:24px;
    border:1px dashed #d0d5dd;
    border-radius:16px;
    background:#fcfcfd;
    text-align:center;
}

.g31-circle-experiences-empty strong{
    display:block;
    color:#101828;
    font-size:16px;
}

.g31-circle-experiences-empty p{
    margin:5px 0 10px;
    color:#667085;
}

.g31-circle-experiences-empty a{
    color:#EF4056!important;
    font-weight:900;
    text-decoration:none!important;
}

@media(max-width:700px){
    .g31-circle-experiences-hero{
        align-items:flex-start;
        flex-direction:column;
    }

    .g31-circle-create-main{
        width:100%;
    }
}


/* ==========================================================
   Gathr31 v2.3.25 — Experience-first Circles
   ========================================================== */
.g31-circle-experiences-page{
    display:flex;
    flex-direction:column;
    gap:16px;
}

.g31-circle-member-strip{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    padding:12px 14px;
    border:1px solid #eaecf0;
    border-radius:14px;
    background:#fcfcfd;
}

.g31-circle-member-strip-copy strong{
    display:block;
    margin-top:3px;
    color:#344054;
    font-size:11px;
}

.g31-circle-member-faces{
    display:flex;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.g31-circle-member-faces a{
    display:block;
    width:38px;
    height:38px;
    margin-left:-8px;
    border:2px solid #fff;
    border-radius:50%;
    overflow:hidden;
    background:#fff;
}

.g31-circle-member-faces a:first-child{margin-left:0}

.g31-circle-member-faces img{
    width:100%!important;
    height:100%!important;
    object-fit:cover;
    border-radius:50%!important;
}

.g31-circle-experience-card{
    box-shadow:0 5px 16px rgba(16,24,40,.05);
}

/* On the dedicated Experiences tab, keep member grids out of the way. */
.g31-circle-experiences-active .members-list,
.g31-circle-experiences-active .item-list.members-group-list,
.g31-circle-experiences-active .bb-members-list{
    display:none!important;
}

@media(max-width:700px){
    .g31-circle-member-strip{
        align-items:flex-start;
        flex-direction:column;
    }
    .g31-circle-member-faces{
        justify-content:flex-start;
    }
}


/* Gathr31 v2.3.26 — Experience-first Circle Home */
.g31-circle-home{margin:0 0 22px}
.g31-circle-home-intro{padding:20px;margin-bottom:20px;border:1px solid #eaecf0;border-radius:18px;background:#fff}
.g31-circle-home-intro h2{margin:4px 0 6px;font-size:26px;color:#101828}
.g31-circle-home-intro p{margin:0;max-width:720px;color:#667085;font-size:13px;line-height:1.6}
.g31-circle-home-section-head{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:0 0 12px}
.g31-circle-home-section-head h3,.g31-circle-home-discussion h3{margin:3px 0 0;color:#101828;font-size:20px}
.g31-circle-home-section-head>a,.g31-circle-all-members{color:#EF4056!important;font-size:11px;font-weight:900;text-decoration:none!important}
.g31-circle-home-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:18px}
.g31-circle-home-event{display:grid;grid-template-columns:150px minmax(0,1fr);overflow:hidden;border:1px solid #eaecf0;border-radius:16px;background:#fff;box-shadow:0 5px 16px rgba(16,24,40,.05)}
.g31-circle-home-event-image{display:block;min-height:145px;background:#101828;overflow:hidden}
.g31-circle-home-event-image img{width:100%;height:100%;object-fit:cover}
.g31-circle-home-event-image>span{display:flex;height:100%;align-items:center;justify-content:center;color:#fff;font-weight:900}
.g31-circle-home-event-copy{padding:13px}
.g31-circle-event-date{color:#EF4056;font-size:9px;font-weight:900;text-transform:uppercase}
.g31-circle-home-event h4{margin:5px 0 7px;font-size:15px;line-height:1.25}
.g31-circle-home-event h4 a{color:#101828!important;text-decoration:none!important}
.g31-circle-home-event p{margin:4px 0;color:#667085;font-size:10px}
.g31-circle-home-event-cta{display:inline-block;margin-top:8px;color:#EF4056!important;font-size:10px;font-weight:900;text-decoration:none!important}
.g31-circle-home-empty{padding:20px;margin-bottom:18px;border:1px dashed #d0d5dd;border-radius:15px;background:#fcfcfd}
.g31-circle-home-empty p{margin:4px 0 0;color:#667085}
.g31-circle-home-people{margin:4px 0 20px}
.g31-circle-home-people .g31-circle-member-strip{margin-bottom:7px}
.g31-circle-all-members{display:inline-block;margin-left:4px}
.g31-circle-home-discussion{padding:15px 16px;border-top:1px solid #eaecf0;border-bottom:1px solid #eaecf0;background:#fcfcfd}
.g31-circle-home-discussion p{margin:4px 0 0;color:#667085;font-size:11px}
@media(max-width:900px){.g31-circle-home-events{grid-template-columns:1fr}}
@media(max-width:560px){.g31-circle-home-event{grid-template-columns:1fr}.g31-circle-home-event-image{height:170px}}


/* Gathr31 v2.8.89 — Circle Experience availability and waiting lists */
.g31-circle-experience-image{position:relative}
.g31-circle-rsvp-badge{
    position:absolute;
    top:10px;
    left:10px;
    display:inline-flex;
    align-items:center;
    min-height:27px;
    padding:5px 9px;
    border:1px solid rgba(255,255,255,.65);
    border-radius:999px;
    background:rgba(16,24,40,.88);
    color:#fff;
    box-shadow:0 4px 12px rgba(16,24,40,.18);
    font-size:9px;
    font-style:normal;
    font-weight:900;
    line-height:1;
    backdrop-filter:blur(6px);
}
.g31-circle-rsvp-badge.is-going{background:rgba(3,152,85,.92)}
.g31-circle-rsvp-badge.is-waiting{background:rgba(181,71,8,.94)}
.g31-circle-rsvp-badge.is-hosting{background:rgba(239,64,86,.94)}
.g31-circle-event-availability{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin-top:8px;
}
.g31-circle-event-availability>span{
    display:inline-flex;
    align-items:center;
    min-height:24px;
    padding:4px 7px;
    border-radius:999px;
    background:#f2f4f7;
    color:#475467;
    font-size:9px;
    font-weight:850;
    line-height:1.2;
}
.g31-circle-event-availability>span.is-full,
.g31-circle-event-availability>span.is-waiting{background:#fff4e5;color:#b54708}
.g31-circle-event-availability>span.is-going{background:#ecfdf3;color:#027a48}
.g31-circle-event-availability>span.is-hosting{background:#fff1f3;color:#c01048}
.g31-circle-experience-links{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin-top:10px;
}
.g31-circle-experience-links .g31-circle-view-xp{margin-top:0}
.g31-circle-manage-xp{
    color:#475467!important;
    font-size:10px;
    font-weight:850;
    text-decoration:underline!important;
    text-underline-offset:2px;
}
.g31-circle-home-event-copy .g31-circle-event-availability{margin-top:7px}
.g31-circle-home-event-copy .g31-circle-event-availability>span{font-size:8px}


/* Gathr31 v2.3.29 — Share existing Experiences with Circles */
.g31-host-circle-share{margin-top:13px;padding-top:13px;border-top:1px solid #f2f4f7}
.g31-host-circle-share>label strong{display:block;color:#101828;font-size:11px}
.g31-host-circle-share>label span{display:block;margin-top:2px;color:#667085;font-size:9px}
.g31-host-circle-options{display:flex;flex-wrap:wrap;gap:6px;margin:9px 0}
.g31-host-circle-option{position:relative;display:inline-flex!important;margin:0!important;cursor:pointer}
.g31-host-circle-option input{position:absolute!important;opacity:0!important;pointer-events:none!important}
.g31-host-circle-option span{display:inline-flex;align-items:center;min-height:32px;padding:6px 9px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;font-size:9px;font-weight:850}
.g31-host-circle-option input:checked+span{border-color:#EF4056;background:#fff1f3;color:#b42318}
.g31-host-circle-share button{min-height:34px;padding:6px 11px;border:1px solid #EF4056;border-radius:9px;background:#EF4056;color:#fff;font-size:9px;font-weight:900;cursor:pointer}
.g31-xp-circle-badges{position:absolute;right:14px;bottom:14px;z-index:4;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:70%}
.g31-xp-circle-badges .g31-xp-circle-badge{position:static!important;max-width:100%}

/* Gathr31 v2.4.0 — Native Experience Editor */
.g31-native-editor{max-width:850px;margin:25px auto;padding:26px;border:1px solid #eaecf0;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(16,24,40,.06)}
.g31-native-editor-head{margin-bottom:22px}.g31-native-editor-head h1{margin:4px 0 5px;color:#101828}.g31-native-editor-head p{margin:0;color:#667085}
.g31-native-editor form>label,.g31-native-editor fieldset{display:block;margin:0 0 18px;color:#344054;font-weight:800}
.g31-native-editor input:not([type=checkbox]),.g31-native-editor textarea{box-sizing:border-box;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#101828;font:inherit;font-weight:500}
.g31-native-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.g31-native-editor small{display:block;margin-top:4px;color:#667085;font-size:11px;font-weight:500}
.g31-native-editor fieldset{padding:14px;border:1px solid #eaecf0;border-radius:13px}.g31-native-editor legend{padding:0 6px;color:#101828;font-weight:900}
.g31-native-pills{display:flex;flex-wrap:wrap;gap:7px}.g31-native-pills label{position:relative;margin:0}.g31-native-pills input{position:absolute;opacity:0}.g31-native-pills span{display:inline-block;padding:8px 11px;border:1px solid #d0d5dd;border-radius:999px;background:#fff;color:#475467;cursor:pointer;font-size:12px}.g31-native-pills input:checked+span{border-color:#EF4056;background:#fff1f3;color:#b42318;font-weight:850}
.g31-native-save{padding:11px 18px;border:0;border-radius:10px;background:#EF4056;color:#fff;font-weight:900;cursor:pointer}.g31-native-cancel{display:inline-block;margin-left:12px;color:#667085!important;font-weight:800;text-decoration:none!important}.g31-native-notice{max-width:700px;margin:30px auto;padding:18px;border:1px solid #fecdca;border-radius:12px;background:#fef3f2}
@media(max-width:600px){.g31-native-grid{grid-template-columns:1fr}.g31-native-editor{padding:18px}}


/* Gathr31 v2.4.4 — authoritative native Experience editor control */
.g31-native-edit-control{
    display:inline-flex!important;
    align-items:center;
    gap:6px;
    padding:8px 12px;
    border-radius:10px;
    background:#EF4056!important;
    color:#fff!important;
    font-weight:900!important;
    text-decoration:none!important;
}
.g31-native-edit-control:hover{
    background:#d92d48!important;
    color:#fff!important;
}


/* Gathr31 v2.4.5 — native edit uses browser form submission, not a link */
.g31-native-edit-form{
    display:inline-block;
    margin:0;
    padding:0;
}
.g31-native-edit-form .g31-native-edit-control{
    border:0!important;
    cursor:pointer;
    font:inherit;
}

/* v2.4.6: unique native manage control — no legacy edit-link class, no form */
.g31-native-manage-button{
    display:inline-flex!important;align-items:center;gap:6px;
    padding:8px 12px!important;border:0!important;border-radius:10px!important;
    background:#EF4056!important;color:#fff!important;font-weight:900!important;
    cursor:pointer!important;font:inherit;
}
.g31-native-manage-button:hover{background:#d92d48!important;color:#fff!important}

/* v2.4.7 — complete native editor */
.g31-native-section-title{margin:28px 0 14px;padding-top:20px;border-top:1px solid #eaecf0}
.g31-native-section-title:first-of-type{margin-top:8px;padding-top:0;border-top:0}
.g31-native-section-title h2{margin:0 0 4px;color:#101828;font-size:18px}
.g31-native-section-title p{margin:0;color:#667085;font-size:13px}
.g31-native-editor select{box-sizing:border-box;width:100%;margin-top:7px;padding:11px 12px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#101828;font:inherit;font-weight:500}
.g31-native-editor fieldset.g31-start-time-picker{min-width:0;margin:0;padding:0;border:0;border-radius:0}
.g31-native-editor .g31-start-time-picker legend{padding:0;color:#344054;font:inherit;font-weight:800}
.g31-native-editor .g31-start-time-controls{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:10px}
.g31-native-editor .g31-start-time-controls label{min-width:0;margin:0}
.g31-native-editor .g31-start-time-label{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.g31-native-editor .g31-start-time-controls select{min-height:46px;cursor:pointer}
.g31-native-editor .g31-start-time-separator{align-self:center;margin-top:7px;font-size:20px;color:#667085}
.g31-native-editor .g31-start-time-controls select:focus-visible{outline:2px solid #ef4056;outline-offset:2px}
.g31-native-editor input[type=file]{padding:9px;background:#f9fafb}
.g31-native-current-image{margin:0 0 14px;border-radius:14px;overflow:hidden;max-width:420px;background:#f2f4f7}
.g31-native-current-image img{display:block;width:100%;height:auto}


/* ==========================================================
   Gathr31 v2.4.8 — Native Create Experience
   ========================================================== */
.g31-native-create-launch{
    overflow:hidden;
}
.g31-native-create-callout{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:22px;
    margin-top:18px;
    padding:20px;
    border:1px solid #eaecf0;
    border-radius:16px;
    background:#fcfcfd;
}
.g31-native-create-callout h3{
    margin:4px 0 6px;
    color:#101828;
    font-size:18px;
}
.g31-native-create-callout p{
    margin:0;
    max-width:600px;
    color:#667085;
    line-height:1.55;
}
.g31-native-create-button,
.g31-host-tab-create{
    text-decoration:none!important;
}
.g31-native-create-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-height:44px;
    padding:10px 15px;
    border-radius:11px;
    background:#EF4056;
    color:#fff!important;
    font-size:11px;
    font-weight:900;
}
.g31-native-create-button:hover{
    background:#d92d48;
    color:#fff!important;
}
@media(max-width:760px){
    .g31-native-create-callout{
        align-items:flex-start;
        flex-direction:column;
    }
    .g31-native-create-button{
        width:100%;
    }
}

/* ==========================================================
   Gathr31 v2.5.1 — Host Experience Management
   ========================================================== */
.g31-host-manager{margin:0 0 24px;padding:24px;border:1px solid #e4e7ec;border-radius:18px;background:#fff}
.g31-host-manager-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}
.g31-host-manager-head h2{margin:4px 0 5px;color:#101828;font-size:24px}
.g31-host-manager-head p{margin:0;color:#667085}
.g31-host-manager-actions{display:flex;gap:8px;flex-wrap:wrap}
.g31-host-manager-actions a{padding:9px 12px;border:1px solid #d0d5dd;border-radius:10px;color:#344054!important;font-weight:800;text-decoration:none!important}
.g31-host-manager-actions a.is-primary{border-color:#EF4056;background:#EF4056;color:#fff!important}
.g31-host-manager-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}
.g31-host-manager-stats>div{padding:16px;border-radius:14px;background:#f9fafb}
.g31-host-manager-stats strong{display:block;color:#101828;font-size:24px}
.g31-host-manager-stats span{color:#667085;font-size:12px;font-weight:700}
.g31-host-manager-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.g31-host-roster{padding:16px;border:1px solid #eaecf0;border-radius:14px}
.g31-host-roster h3{margin:0 0 12px;color:#101828;font-size:17px}
.g31-host-person{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid #f2f4f7}
.g31-host-person:first-of-type{border-top:0}
.g31-host-person-avatar img{display:block;width:44px;height:44px;border-radius:50%;object-fit:cover}
.g31-host-person-main{min-width:0;flex:1}
.g31-host-person-main strong,.g31-host-person-main span{display:block}
.g31-host-person-main strong{color:#101828}
.g31-host-person-main span{margin-top:2px;color:#667085;font-size:12px}
.g31-host-person-action button,.g31-host-wait-actions button{padding:7px 9px;border:1px solid #d0d5dd;border-radius:8px;background:#fff;color:#475467;font-size:11px;font-weight:800;cursor:pointer}
.g31-host-wait-actions{display:flex;gap:5px;align-items:center}
.g31-host-wait-actions form{margin:0}
.g31-host-wait-actions button.is-promote{border-color:#101828;background:#101828;color:#fff}
.g31-wait-position{display:flex;align-items:center;justify-content:center;width:25px;height:25px;border-radius:50%;background:#f2f4f7;color:#344054;font-size:11px;font-weight:900}
.g31-host-roster-empty{padding:16px 0;color:#98a2b3}
@media(max-width:760px){
 .g31-host-manager-head{flex-direction:column}
 .g31-host-manager-stats,.g31-host-manager-columns{grid-template-columns:1fr}
 .g31-host-manager-actions{width:100%}
}

/* ==========================================================
   Gathr31 v2.5.2 — Member Experience & RSVP
   ========================================================== */
.g31-member-rsvp-card{display:flex;align-items:center;gap:13px;margin:15px 0 8px;padding:15px;border:1px solid #e4e7ec;border-radius:14px;background:#f9fafb}
.g31-member-rsvp-card.is-going{background:#f6fef9;border-color:#abefc6}
.g31-member-rsvp-card.is-waiting,.g31-member-rsvp-card.is-full{background:#fffcf5;border-color:#fedf89}
.g31-member-rsvp-icon{display:flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:#fff;border:1px solid #e4e7ec;font-size:17px;font-weight:900}
.g31-member-rsvp-copy{min-width:0}
.g31-member-rsvp-copy strong,.g31-member-rsvp-copy span{display:block}
.g31-member-rsvp-copy strong{color:#101828;font-size:15px}
.g31-member-rsvp-copy span{margin-top:3px;color:#667085;font-size:12px;line-height:1.45}
.g31-rsvp-help{margin:8px 0 13px;color:#667085;font-size:12px;line-height:1.5}
.g31-rsvp-summary{margin:14px 0 10px;padding:11px 12px;border-radius:10px;background:#f9fafb}
.g31-rsvp-summary strong,.g31-rsvp-summary span{display:block}
.g31-rsvp-summary strong{color:#101828;font-size:13px}
.g31-rsvp-summary span{margin-top:2px;color:#667085;font-size:11px}

/* ==========================================================
   Gathr31 v2.5.4 — Circle-first Experiences
   Experiences lead; people support.
   ========================================================== */
.g31-circle-experiences-page .g31-circle-experiences-hero{margin-bottom:22px}
.g31-circle-experience-grid{margin-top:0}
.g31-circle-people-secondary{margin-top:28px;padding-top:20px;border-top:1px solid #eaecf0}
.g31-circle-people-secondary .g31-circle-member-strip{padding:14px 16px;border:1px solid #eaecf0;border-radius:14px;background:#fcfcfd}
.g31-circle-people-secondary .g31-circle-member-strip-copy strong{font-size:13px}
.g31-circle-people-secondary .g31-circle-member-faces{display:flex;align-items:center;flex-wrap:wrap;gap:0}
.g31-circle-people-secondary .g31-circle-member-faces a{display:block;margin-left:-7px;border:2px solid #fff;border-radius:50%}
.g31-circle-people-secondary .g31-circle-member-faces a:first-child{margin-left:0}
.g31-circle-people-secondary .g31-circle-member-faces img{display:block;width:34px!important;height:34px!important;border-radius:50%;object-fit:cover}
.g31-circle-home-people{margin-top:26px;padding-top:18px;border-top:1px solid #eaecf0}
.g31-circle-home-people .g31-circle-member-faces img{width:34px!important;height:34px!important}
@media(max-width:760px){
 .g31-circle-people-secondary .g31-circle-member-strip{align-items:flex-start}
}

/* ==========================================================
   Gathr31 v2.5.5 — Experience updates & cancellation
   ========================================================== */
.g31-native-danger-zone{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-top:34px;padding:18px;border:1px solid #fecdca;border-radius:14px;background:#fffbfa}
.g31-native-danger-zone strong,.g31-native-danger-zone span{display:block}
.g31-native-danger-zone strong{color:#b42318}
.g31-native-danger-zone span{margin-top:4px;max-width:620px;color:#667085;font-size:12px;line-height:1.5}
.g31-native-danger-zone form{margin:0}
.g31-native-danger-button{white-space:nowrap;padding:10px 13px;border:1px solid #d92d20;border-radius:10px;background:#fff;color:#b42318;font-weight:800;cursor:pointer}
.g31-cancelled-banner{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:15px 18px;border:1px solid #fecdca;border-radius:14px;background:#fffbfa}
.g31-cancelled-banner strong{color:#b42318}
.g31-cancelled-banner span{color:#667085;font-size:12px}
.g31-experience-change{display:flex;align-items:flex-start;gap:15px;margin:0 0 18px;padding:19px 20px;border:1px solid #f2c572;border-radius:16px;background:#fffaf0;color:#344054}
.g31-experience-change-icon{display:flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border-radius:12px;background:#fff0ce;color:#9a6700;font-size:23px;font-weight:800}
.g31-experience-change-copy{flex:1;min-width:0}.g31-experience-change h2{margin:4px 0 7px;color:#1d2939;font-size:20px}.g31-experience-change p{margin:0 0 13px;color:#596579;font-size:14px;line-height:1.6}
.g31-experience-change form{margin:0 0 8px}.g31-experience-change button{min-height:42px;padding:10px 17px;border:0;border-radius:10px;background:#ef4056;color:#fff;font:inherit;font-size:14px;font-weight:700;cursor:pointer}.g31-experience-change button:hover{background:#d92d48}.g31-experience-change button:focus-visible{outline:3px solid #243044;outline-offset:3px}
.g31-experience-change small{display:block;color:#667085;line-height:1.5}.g31-change-confirmed{padding:11px 13px;border-radius:10px;background:#ecfdf3;color:#067647;font-size:14px;font-weight:650}
.g31-experience-change.is-host-view{border-color:#d7dee8;background:#f7f9fb}.g31-change-count{display:block;color:#344054;font-size:14px}.g31-change-responses{margin-top:11px}.g31-change-responses summary{color:#b4233f;font-size:13px;font-weight:700;cursor:pointer}.g31-change-responses span{display:inline-flex;margin:9px 7px 0 0;padding:6px 9px;border-radius:999px;background:#fff;color:#667085;font-size:12px}.g31-change-responses span.is-confirmed{background:#ecfdf3;color:#067647}
@media(max-width:760px){.g31-native-danger-zone,.g31-cancelled-banner{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.g31-experience-change{padding:16px;gap:11px}.g31-experience-change-icon{width:36px;height:36px;flex-basis:36px}}

/* ==========================================================
   Gathr31 v2.5.6 — Member Home simplification
   ========================================================== */
.g31-home-simple{max-width:1180px;margin:0 auto}
.g31-home-simple-welcome{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:2px 0 20px;padding:4px 2px 18px;border-bottom:1px solid #eaecf0}
.g31-home-simple-kicker{display:block;margin-bottom:5px;color:#667085;font-size:10px;font-weight:900;letter-spacing:.12em}
.g31-home-simple-welcome h1{margin:0;color:#101828;font-size:30px;line-height:1.1}
.g31-home-simple-welcome p{margin:6px 0 0;color:#667085;font-size:14px}
.g31-home-simple-badge{padding:7px 10px;border:1px solid #e4e7ec;border-radius:999px;background:#fff;color:#475467;font-size:11px;font-weight:800}
.g31-home-alert{display:flex;align-items:center;gap:12px;margin:0 0 18px;padding:11px 14px;border:1px solid #fedf89;border-radius:12px;background:#fffcf5;color:#344054!important;text-decoration:none!important}
.g31-home-alert>span:nth-child(2){display:flex;flex:1;gap:7px;min-width:0;font-size:12px}
.g31-home-alert b{font-size:11px;white-space:nowrap}
.g31-home-simple-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:12px}
.g31-home-simple-heading h2{margin:0;color:#101828;font-size:21px}
.g31-home-simple-heading>a{color:#475467!important;font-size:11px;font-weight:800;text-decoration:none!important}
.g31-home-next{margin-bottom:28px}
.g31-home-next-card{display:grid;grid-template-columns:34% 1fr;min-height:190px;overflow:hidden;border:1px solid #e4e7ec;border-radius:18px;background:#fff;color:inherit!important;text-decoration:none!important;box-shadow:0 5px 18px rgba(16,24,40,.05)}
.g31-home-next-image{min-height:190px;background:#f2f4f7;overflow:hidden}
.g31-home-next-image img{width:100%;height:100%;min-height:190px;object-fit:cover;display:block}
.g31-home-next-image>span{display:flex;height:100%;align-items:center;justify-content:center;font-weight:900}
.g31-home-next-copy{display:flex;flex-direction:column;justify-content:center;padding:22px 26px}
.g31-home-next-state{align-self:flex-start;margin-bottom:8px;padding:5px 8px;border-radius:999px;background:#ecfdf3;color:#027a48;font-size:10px;font-weight:900}
.g31-home-next-copy h3{margin:0 0 9px;color:#101828;font-size:24px;line-height:1.2}
.g31-home-next-meta{display:flex;flex-wrap:wrap;gap:7px 14px;color:#667085;font-size:12px}
.g31-home-next-open{margin-top:16px;color:#EF4056;font-size:12px}
.g31-home-next-empty{display:flex;align-items:center;gap:15px;padding:20px;border:1px solid #e4e7ec;border-radius:16px;background:#fff;color:#344054!important;text-decoration:none!important}
.g31-home-next-empty-icon{font-size:24px}.g31-home-next-empty>span:nth-child(2){flex:1}
.g31-home-next-empty strong,.g31-home-next-empty small{display:block}.g31-home-next-empty small{margin-top:3px;color:#667085}
.g31-home-next-empty b{font-size:11px}
.g31-home-discover-simple{margin-bottom:30px}
.g31-home-discover-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.g31-home-discover-card{overflow:hidden;border:1px solid #e4e7ec;border-radius:15px;background:#fff;color:inherit!important;text-decoration:none!important}
.g31-home-discover-image{position:relative;height:130px;overflow:hidden;background:#f2f4f7}
.g31-home-discover-image img{width:100%;height:100%;object-fit:cover;display:block}
.g31-home-discover-image>span{display:flex;height:100%;align-items:center;justify-content:center;font-weight:900}
.g31-home-discover-image b{position:absolute;left:10px;bottom:9px;padding:5px 7px;border-radius:7px;background:rgba(255,255,255,.94);color:#101828;font-size:9px}
.g31-home-discover-copy{padding:12px}
.g31-home-discover-copy h3{margin:0 0 5px;color:#101828;font-size:14px;line-height:1.25}
.g31-home-discover-copy span{color:#667085;font-size:10px}
.g31-home-lower{display:grid;grid-template-columns:1.6fr .9fr;gap:18px;margin-bottom:22px}
.g31-home-circles-simple,.g31-home-member-more{padding:18px;border:1px solid #e4e7ec;border-radius:16px;background:#fff}
.g31-home-simple-heading.is-compact h2{font-size:17px}
.g31-home-circle-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.g31-home-circle-list>a{display:flex;align-items:center;gap:9px;padding:9px;border-radius:10px;background:#f9fafb;color:#344054!important;text-decoration:none!important}
.g31-home-circle-list>a>span:nth-child(2){min-width:0;flex:1}
.g31-home-circle-list strong,.g31-home-circle-list small{display:block}
.g31-home-circle-list strong{font-size:12px}.g31-home-circle-list small{margin-top:2px;color:#667085;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.g31-home-circle-avatar{display:flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;overflow:hidden;background:#fff}
.g31-home-circle-avatar img{width:100%;height:100%;object-fit:cover}
.g31-home-member-more h2{margin:0 0 6px;color:#101828;font-size:18px}
.g31-home-member-more p{margin:0 0 12px;color:#667085;font-size:11px;line-height:1.5}
.g31-home-member-more>a{color:#EF4056!important;font-size:11px;font-weight:900;text-decoration:none!important}
.g31-home-host-link{margin-top:16px;padding-top:14px;border-top:1px solid #eaecf0}
.g31-home-host-link span,.g31-home-host-link strong,.g31-home-host-link a{display:block}
.g31-home-host-link span{color:#667085;font-size:9px;font-weight:900;letter-spacing:.1em}
.g31-home-host-link strong{margin:4px 0 7px;color:#101828;font-size:12px}
.g31-home-host-link a{color:#475467!important;font-size:10px;font-weight:800;text-decoration:none!important}
.g31-home-simple-empty{padding:14px;border-radius:11px;background:#f9fafb;color:#667085;font-size:11px}
.g31-home-simple-empty.is-link{display:block;color:#475467!important;text-decoration:none!important;font-weight:800}
.g31-home-quiet-links{display:flex;justify-content:center;gap:22px;padding:13px 0 2px;border-top:1px solid #eaecf0}
.g31-home-quiet-links a{color:#667085!important;font-size:10px;font-weight:800;text-decoration:none!important}
@media(max-width:760px){
 .g31-home-simple-welcome{align-items:flex-start;flex-direction:column}
 .g31-home-next-card{grid-template-columns:1fr}
 .g31-home-next-image{height:175px;min-height:175px}.g31-home-next-image img{min-height:175px}
 .g31-home-next-copy{padding:17px}
 .g31-home-discover-cards{grid-template-columns:1fr}
 .g31-home-discover-image{height:165px}
 .g31-home-lower{grid-template-columns:1fr}
 .g31-home-circle-list{grid-template-columns:1fr}
 .g31-home-quiet-links{flex-wrap:wrap;gap:10px 18px}
 .g31-home-alert>span:nth-child(2){display:block}.g31-home-alert>span:nth-child(2) strong{display:block}
}

/* ==========================================================
   Gathr31 v2.5.7 — Member Home depth & personality
   No extra content: hierarchy through surface, image and space.
   ========================================================== */
body.page-id-644,
body.g31-member-home-page{
    background:#f6f7f8;
}
.g31-home-simple{
    padding:22px;
    border-radius:24px;
    background:#f6f7f8;
}
.g31-home-simple-welcome{
    margin-bottom:24px;
    padding:8px 4px 20px;
    border-bottom:0;
}
.g31-home-simple-welcome h1{
    font-size:32px;
    letter-spacing:-.025em;
}
.g31-home-simple-welcome p{
    color:#596273;
}
.g31-home-simple-badge{
    border-color:#dde1e7;
    box-shadow:0 2px 8px rgba(16,24,40,.04);
}
.g31-home-simple-heading{
    margin-bottom:14px;
}
.g31-home-simple-heading h2{
    letter-spacing:-.018em;
}
.g31-home-next{
    position:relative;
    margin-bottom:34px;
}
.g31-home-next-card{
    border:0;
    border-radius:20px;
    box-shadow:0 14px 34px rgba(16,24,40,.12),0 2px 6px rgba(16,24,40,.05);
    transition:transform .18s ease,box-shadow .18s ease;
}
.g31-home-next-card:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 40px rgba(16,24,40,.14),0 3px 8px rgba(16,24,40,.06);
}
.g31-home-next-image{
    min-height:220px;
}
.g31-home-next-image img{
    min-height:220px;
}
.g31-home-next-copy{
    padding:28px 30px;
    background:#fff;
}
.g31-home-next-state{
    background:#fff1f3;
    color:#c01048;
}
.g31-home-next-copy h3{
    font-size:26px;
    letter-spacing:-.025em;
}
.g31-home-next-open{
    color:#ef4056;
}
.g31-home-next-empty{
    border:0;
    box-shadow:0 10px 28px rgba(16,24,40,.09);
}
.g31-home-discover-simple{
    margin-bottom:34px;
}
.g31-home-discover-card{
    border:0;
    box-shadow:0 7px 20px rgba(16,24,40,.08);
    transition:transform .18s ease,box-shadow .18s ease;
}
.g31-home-discover-card:hover{
    transform:translateY(-2px);
    box-shadow:0 11px 26px rgba(16,24,40,.11);
}
.g31-home-discover-image{
    height:145px;
}
.g31-home-discover-copy{
    padding:14px 15px 15px;
}
.g31-home-discover-copy h3{
    font-size:15px;
}
.g31-home-lower{
    gap:20px;
    margin-bottom:26px;
}
.g31-home-circles-simple,
.g31-home-member-more{
    border:0;
    border-radius:18px;
    box-shadow:0 7px 20px rgba(16,24,40,.07);
}
.g31-home-circles-simple{
    padding:20px;
}
.g31-home-member-more{
    position:relative;
    overflow:hidden;
    padding:20px;
}
.g31-home-member-more:before{
    content:"";
    position:absolute;
    top:0;
    left:0;
    width:4px;
    height:100%;
    background:#ef4056;
}
.g31-home-circle-list>a{
    border:1px solid #edf0f3;
    background:#fafbfc;
    transition:background .15s ease,transform .15s ease;
}
.g31-home-circle-list>a:hover{
    background:#fff;
    transform:translateX(2px);
}
.g31-home-circle-avatar{
    box-shadow:0 2px 7px rgba(16,24,40,.10);
}
.g31-home-host-link{
    margin-top:18px;
}
.g31-home-quiet-links{
    margin-top:4px;
    padding-top:17px;
    border-top-color:#dde1e7;
}
.g31-home-alert{
    border:0;
    box-shadow:0 5px 15px rgba(16,24,40,.06);
}
@media(max-width:760px){
    .g31-home-simple{padding:14px 10px;border-radius:18px}
    .g31-home-simple-welcome h1{font-size:28px}
    .g31-home-next-image,.g31-home-next-image img{min-height:185px}
    .g31-home-next-copy{padding:19px}
    .g31-home-next-copy h3{font-size:22px}
    .g31-home-discover-image{height:175px}
}

/* ==========================================================
   Gathr31 v2.5.8 — Warm edge-to-edge Member Home surface
   ========================================================== */
body.page-id-644,
body.g31-member-home-page,
body.page-id-644 #page,
body.page-id-644 #content,
body.page-id-644 .site-content,
body.page-id-644 .container,
body.page-id-644 .bb-grid,
body.page-id-644 .content-area,
body.page-id-644 .site-main,
body.g31-member-home-page #page,
body.g31-member-home-page #content,
body.g31-member-home-page .site-content,
body.g31-member-home-page .container,
body.g31-member-home-page .bb-grid,
body.g31-member-home-page .content-area,
body.g31-member-home-page .site-main{
    background:#eeede9 !important;
}
body.page-id-644 .site-content,
body.g31-member-home-page .site-content{
    min-height:calc(100vh - 76px);
}
.g31-home-simple{
    max-width:1180px;
    margin:0 auto;
    padding:24px 22px 30px;
    background:transparent;
}
.g31-home-simple-welcome{
    padding-top:10px;
}
.g31-home-simple-badge{
    background:rgba(255,255,255,.72);
    border-color:#d9d6cf;
}
.g31-home-next-card,
.g31-home-discover-card,
.g31-home-circles-simple,
.g31-home-member-more,
.g31-home-next-empty{
    background:#fff;
}
.g31-home-circle-list>a{
    background:#f8f7f4;
    border-color:#ebe8e1;
}
.g31-home-circle-list>a:hover{
    background:#fff;
}
.g31-home-quiet-links{
    border-top-color:#d8d5ce;
}
.g31-home-simple-kicker{
    color:#706d67;
}
.g31-home-simple-welcome p,
.g31-home-discover-copy span,
.g31-home-member-more p,
.g31-home-circle-list small{
    color:#68655f;
}
@media(max-width:760px){
    .g31-home-simple{
        padding:16px 10px 24px;
    }
}


/* ==========================================================
   Gathr31 v2.5.9 — Toulouse Member Home
   Real hero photography + warmer member surface.
   ========================================================== */

/* Edge-to-edge warm stone surface */
body.page-id-644,
body.g31-member-home-page,
body.page-id-644 #page,
body.page-id-644 #content,
body.page-id-644 .site-content,
body.page-id-644 .container,
body.page-id-644 .bb-grid,
body.page-id-644 .content-area,
body.page-id-644 .site-main,
body.g31-member-home-page #page,
body.g31-member-home-page #content,
body.g31-member-home-page .site-content,
body.g31-member-home-page .container,
body.g31-member-home-page .bb-grid,
body.g31-member-home-page .content-area,
body.g31-member-home-page .site-main{
    background:#e6e2dc !important;
}

.g31-home-simple{
    max-width:1240px;
    padding:0 18px 30px;
    background:transparent;
}

/* Toulouse hero */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    position:relative;
    display:flex;
    align-items:flex-end;
    min-height:300px;
    margin:0 -18px 30px;
    padding:42px 48px;
    overflow:hidden;
    border:0;
    border-radius:0 0 22px 22px;
    background-position:center 67%;
    background-repeat:no-repeat;
    background-size:cover;
    box-shadow:0 12px 34px rgba(16,24,40,.18);
}
.g31-home-hero-copy{
    max-width:680px;
}
.g31-home-toulouse-hero .g31-home-simple-kicker{
    color:rgba(255,255,255,.78);
}
.g31-home-toulouse-hero h1{
    margin:0;
    color:#fff;
    font-size:42px;
    line-height:1.05;
    letter-spacing:-.035em;
    text-shadow:0 2px 16px rgba(0,0,0,.28);
}
.g31-home-toulouse-hero p{
    margin:9px 0 16px;
    color:rgba(255,255,255,.94);
    font-size:17px;
    text-shadow:0 1px 10px rgba(0,0,0,.32);
}
.g31-home-toulouse-hero .g31-home-simple-badge{
    display:inline-flex;
    width:auto;
    padding:8px 12px;
    border:1px solid rgba(255,255,255,.42);
    background:rgba(15,17,20,.42);
    color:#fff;
    backdrop-filter:blur(6px);
    -webkit-backdrop-filter:blur(6px);
}

/* Main desktop composition */
.g31-home-top-grid{
    display:grid;
    grid-template-columns:1.12fr .88fr;
    align-items:start;
    gap:24px;
    margin-bottom:30px;
}
.g31-home-top-grid .g31-home-next,
.g31-home-top-grid .g31-home-discover-simple{
    margin-bottom:0;
}

/* Next Experience retains the strongest visual weight */
.g31-home-top-grid .g31-home-next-card{
    grid-template-columns:46% 54%;
    min-height:260px;
}
.g31-home-top-grid .g31-home-next-image,
.g31-home-top-grid .g31-home-next-image img{
    min-height:260px;
}
.g31-home-top-grid .g31-home-next-copy{
    padding:25px;
}
.g31-home-top-grid .g31-home-next-copy h3{
    font-size:23px;
}

/* Discover: three narrower social cards */
.g31-home-top-grid .g31-home-discover-cards{
    grid-template-columns:repeat(3,1fr);
    gap:11px;
}
.g31-home-top-grid .g31-home-discover-image{
    height:155px;
}
.g31-home-top-grid .g31-home-discover-copy{
    min-height:82px;
}
.g31-home-top-grid .g31-home-discover-copy h3{
    font-size:13px;
}

/* Lower cards */
.g31-home-lower{
    grid-template-columns:1.12fr .88fr;
    gap:24px;
}
.g31-home-circles-simple,
.g31-home-member-more{
    padding:22px;
    border-radius:17px;
    box-shadow:0 8px 22px rgba(16,24,40,.09);
}

/* Circular Circle treatment */
.g31-home-circle-bubbles{
    display:flex;
    align-items:flex-start;
    gap:18px;
    overflow-x:auto;
    padding:6px 2px 3px;
}
.g31-home-circle-bubbles>a{
    display:flex;
    flex:0 0 78px;
    flex-direction:column;
    align-items:center;
    gap:8px;
    padding:0;
    border:0;
    background:transparent;
    text-align:center;
    transform:none !important;
}
.g31-home-circle-bubbles>a:hover{
    background:transparent;
}
.g31-home-circle-bubbles .g31-home-circle-avatar{
    width:58px;
    height:58px;
    flex-basis:58px;
    border:3px solid #fff;
    box-shadow:0 4px 13px rgba(16,24,40,.14);
    font-size:22px;
}
.g31-home-circle-bubbles strong{
    color:#272b30;
    font-size:10px;
    line-height:1.25;
}
.g31-home-circle-find .g31-home-circle-avatar{
    border:1px dashed #9b968e;
    background:#f7f4ef;
    color:#817c74;
    box-shadow:none;
}

/* A little more */
.g31-home-member-more:before{
    width:4px;
    background:#ef4056;
}
.g31-home-member-more h2{
    font-size:19px;
}
.g31-home-member-more>a,
.g31-home-host-link a{
    color:#ef4056 !important;
}

/* Footer links remain quiet */
.g31-home-quiet-links{
    border-top-color:#cec8bf;
}

/* Tablet */
@media(max-width:1050px){
    .g31-home-top-grid{
        grid-template-columns:1fr;
    }
    .g31-home-top-grid .g31-home-discover-image{
        height:175px;
    }
}

/* Mobile */
@media(max-width:760px){
    .g31-home-simple{
        padding:0 10px 24px;
    }
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        min-height:255px;
        margin:0 -10px 24px;
        padding:30px 20px;
        border-radius:0 0 18px 18px;
        background-position:62% center;
    }
    .g31-home-toulouse-hero h1{
        font-size:32px;
    }
    .g31-home-toulouse-hero p{
        font-size:14px;
    }
    .g31-home-top-grid .g31-home-next-card{
        grid-template-columns:1fr;
    }
    .g31-home-top-grid .g31-home-next-image,
    .g31-home-top-grid .g31-home-next-image img{
        min-height:190px;
        height:190px;
    }
    .g31-home-top-grid .g31-home-discover-cards{
        grid-template-columns:1fr;
    }
    .g31-home-lower{
        grid-template-columns:1fr;
    }
}


/* ==========================================================
   Gathr31 v2.6.0 — Member Home visual system
   Closely follows the approved Toulouse dashboard direction.
   ========================================================== */

body.page-id-644,
body.g31-member-home-page{
    background:#e6e2dc !important;
}

/* Break Member Home out of the boxed BuddyBoss feeling */
body.page-id-644 .site-content > .container,
body.g31-member-home-page .site-content > .container,
body.page-id-644 .bb-grid,
body.g31-member-home-page .bb-grid{
    max-width:none !important;
    width:100% !important;
    padding-left:0 !important;
    padding-right:0 !important;
    margin-left:0 !important;
    margin-right:0 !important;
}
body.page-id-644 .content-area,
body.g31-member-home-page .content-area{
    width:100% !important;
    max-width:none !important;
}
body.page-id-644 .site-main,
body.g31-member-home-page .site-main{
    width:100% !important;
    max-width:none !important;
}

.g31-home-simple{
    max-width:none;
    width:100%;
    padding:0 38px 28px;
}

/* Full-width visual hero */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    min-height:385px;
    margin:0 -38px 34px;
    padding:0 44px 40px;
    border-radius:0;
    background-position:center 67%;
    box-shadow:0 8px 26px rgba(16,24,40,.18);
}
.g31-home-hero-topbar{
    position:absolute;
    top:0;
    left:0;
    right:0;
    display:flex;
    align-items:center;
    gap:48px;
    padding:26px 44px;
    z-index:2;
}
.g31-home-wordmark{
    display:inline-flex;
    align-items:baseline;
    color:#fff !important;
    font-size:31px;
    font-weight:900;
    letter-spacing:-.04em;
    text-decoration:none !important;
    text-shadow:0 2px 14px rgba(0,0,0,.22);
}
.g31-home-wordmark b{
    color:#ef4056;
    font:inherit;
}
.g31-home-hero-nav{
    display:flex;
    align-items:center;
    gap:30px;
}
.g31-home-hero-nav a{
    position:relative;
    padding:4px 0 10px;
    color:rgba(255,255,255,.94) !important;
    font-size:14px;
    font-weight:700;
    text-decoration:none !important;
    text-shadow:0 1px 8px rgba(0,0,0,.24);
}
.g31-home-hero-nav a.is-active:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:3px;
    border-radius:999px;
    background:#ef4056;
}
.g31-home-hero-copy{
    max-width:720px;
    margin-top:104px;
}
.g31-home-toulouse-hero h1{
    font-size:45px;
}
.g31-home-toulouse-hero p{
    font-size:18px;
}
.g31-home-toulouse-hero .g31-home-simple-badge{
    margin-top:3px;
    padding:9px 14px;
    border-color:rgba(255,255,255,.34);
    background:rgba(16,18,20,.42);
    color:#ff777f;
    font-size:12px;
}

/* Main content width and spacing */
.g31-home-top-grid,
.g31-home-lower,
.g31-home-footer{
    max-width:1450px;
    margin-left:auto;
    margin-right:auto;
}
.g31-home-top-grid{
    grid-template-columns:1.12fr .88fr;
    gap:28px;
    margin-bottom:30px;
}

/* Section headings like the mockup */
.g31-home-simple-heading{
    margin-bottom:13px;
}
.g31-home-simple-heading h2{
    font-size:15px;
    font-weight:900;
    letter-spacing:.02em;
    text-transform:uppercase;
}
.g31-home-simple-heading .g31-home-simple-kicker{
    display:none;
}
.g31-home-simple-heading>a{
    color:#ef4056 !important;
    font-size:10px;
}

/* Big next-experience card */
.g31-home-top-grid .g31-home-next-card{
    min-height:272px;
    border-radius:14px;
    box-shadow:0 8px 22px rgba(16,24,40,.12);
}
.g31-home-top-grid .g31-home-next-image,
.g31-home-top-grid .g31-home-next-image img{
    min-height:272px;
}
.g31-home-top-grid .g31-home-next-copy{
    padding:26px 28px;
}
.g31-home-next-state{
    background:transparent;
    padding:0;
    color:#ef4056;
    font-size:11px;
}
.g31-home-top-grid .g31-home-next-copy h3{
    margin-top:8px;
    font-size:23px;
}
.g31-home-next-meta{
    margin-top:6px;
    color:#66615a;
    font-size:11px;
}
.g31-home-next-bottom{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    margin-top:22px;
}
.g31-home-next-faces{
    display:flex;
    align-items:center;
}
.g31-home-next-faces img{
    display:block;
    width:31px !important;
    height:31px !important;
    margin-left:-7px;
    border:2px solid #fff;
    border-radius:50%;
    object-fit:cover;
}
.g31-home-next-faces img:first-child{
    margin-left:0;
}
.g31-home-next-faces span{
    margin-left:10px;
    color:#5f5b55;
    font-size:10px;
}
.g31-home-next-open{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:102px;
    padding:10px 14px;
    border-radius:9px;
    background:#ef4056;
    color:#fff !important;
    font-size:10px;
}

/* Discover cards much closer to the approved mockup */
.g31-home-top-grid .g31-home-discover-cards{
    gap:14px;
}
.g31-home-top-grid .g31-home-discover-card{
    border-radius:12px;
    box-shadow:0 7px 18px rgba(16,24,40,.11);
}
.g31-home-top-grid .g31-home-discover-image{
    height:177px;
}
.g31-home-top-grid .g31-home-discover-image b{
    display:none;
}
.g31-home-top-grid .g31-home-discover-copy{
    min-height:92px;
    padding:12px 12px 13px;
}
.g31-home-top-grid .g31-home-discover-copy h3{
    font-size:13px;
    line-height:1.25;
}
.g31-home-top-grid .g31-home-discover-copy span{
    color:#746f68;
    font-size:9px;
}

/* Lower row */
.g31-home-lower{
    grid-template-columns:1.12fr .88fr;
    gap:28px;
}
.g31-home-circles-simple,
.g31-home-member-more{
    min-height:175px;
    padding:18px 20px 20px;
    border-radius:13px;
    box-shadow:0 7px 18px rgba(16,24,40,.10);
}
.g31-home-circles-simple .g31-home-simple-heading h2{
    font-size:15px;
}
.g31-home-circle-bubbles{
    gap:22px;
    padding-top:4px;
}
.g31-home-circle-bubbles>a{
    flex-basis:84px;
}
.g31-home-circle-bubbles .g31-home-circle-avatar{
    width:64px;
    height:64px;
    flex-basis:64px;
}
.g31-home-circle-bubbles strong{
    font-size:10px;
}

/* A Little More as two compact feature panels */
.g31-home-member-more:before{
    display:none;
}
.g31-home-member-more > .g31-home-simple-kicker{
    margin-bottom:13px;
    color:#393b3e;
    font-size:14px;
    letter-spacing:.02em;
}
.g31-home-more-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:0;
}
.g31-home-more-grid.no-host{
    grid-template-columns:repeat(2,minmax(0,1fr));
}
.g31-home-more-item{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:5px 17px 5px 0;
    color:#2d3033 !important;
    text-decoration:none !important;
}
.g31-home-more-item + .g31-home-more-item{
    padding-left:18px;
    border-left:1px solid #ece8e2;
}
.g31-home-more-item:nth-child(n+3){
    margin-top:15px;
    padding-top:15px;
    border-top:1px solid #ece8e2;
}
.g31-home-more-item:nth-child(odd){
    padding-left:0;
    border-left:0;
}
.g31-home-more-icon{
    display:flex;
    align-items:center;
    justify-content:center;
    flex:0 0 54px;
    width:54px;
    height:54px;
    border-radius:50%;
    background:#ffe8e7;
    font-size:21px;
}
.g31-home-more-icon.is-host{
    background:#fff0d5;
    color:#e8a300;
}
.g31-home-more-icon.is-help{
    background:#e8f1ff;
    color:#175cd3;
    font-weight:900;
}
.g31-home-more-icon.is-membership{
    background:#e8f8ef;
    color:#08783e;
    font-weight:900;
}
.g31-home-more-item strong,
.g31-home-more-item small,
.g31-home-more-item b{
    display:block;
}
.g31-home-more-item strong{
    font-size:12px;
}
.g31-home-more-item small{
    margin-top:5px;
    color:#706c66;
    font-size:9px;
    line-height:1.45;
}
.g31-home-more-item b{
    margin-top:10px;
    color:#ef4056;
    font-size:9px;
}

/* Footer */
.g31-home-footer{
    padding-top:17px;
    text-align:center;
}
.g31-home-footer > strong{
    color:#5d5953;
    font-size:10px;
    font-weight:600;
}
.g31-home-footer > strong span{
    color:#ef4056;
}
.g31-home-footer .g31-home-quiet-links{
    padding-top:8px;
    border:0;
}

/* Keep mobile practical rather than forcing desktop look */
@media(max-width:1100px){
    .g31-home-simple{
        padding-left:22px;
        padding-right:22px;
    }
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        margin-left:-22px;
        margin-right:-22px;
    }
    .g31-home-top-grid,
    .g31-home-lower{
        grid-template-columns:1fr;
    }
}
@media(max-width:760px){
    .g31-home-simple{
        padding-left:10px;
        padding-right:10px;
    }
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        min-height:310px;
        margin-left:-10px;
        margin-right:-10px;
        padding:0 20px 28px;
    }
    .g31-home-hero-topbar{
        padding:18px 20px;
    }
    .g31-home-wordmark{
        font-size:25px;
    }
    .g31-home-hero-nav{
        display:none;
    }
    .g31-home-hero-copy{
        margin-top:90px;
    }
    .g31-home-toulouse-hero h1{
        font-size:34px;
    }
    .g31-home-top-grid .g31-home-next-card{
        grid-template-columns:1fr;
    }
    .g31-home-top-grid .g31-home-discover-cards{
        grid-template-columns:1fr;
    }
    .g31-home-more-grid,
    .g31-home-more-grid.no-host{
        grid-template-columns:1fr;
    }
    .g31-home-more-item + .g31-home-more-item{
        margin-top:15px;
        padding-top:15px;
        padding-left:0;
        border-top:1px solid #ece8e2;
        border-left:0;
    }
}


/* ==========================================================
   Gathr31 v2.6.1 — True full-width Member Home + readability
   ========================================================== */

/* Break the dashboard out of any BuddyBoss/WordPress boxed parent */
body.page-id-644 .entry-content,
body.g31-member-home-page .entry-content,
body.page-id-644 article,
body.g31-member-home-page article,
body.page-id-644 .type-page,
body.g31-member-home-page .type-page{
    max-width:none !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
}

.g31-dashboard.g31-home-simple{
    position:relative;
    left:50%;
    width:100vw !important;
    max-width:none !important;
    margin-left:-50vw !important;
    margin-right:0 !important;
    padding:0 34px 32px !important;
    box-sizing:border-box;
}

/* Hero genuinely spans the viewport content width */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    width:auto !important;
    margin-left:-34px !important;
    margin-right:-34px !important;
}

/* Main rows use the available screen width */
.g31-home-top-grid,
.g31-home-lower,
.g31-home-footer{
    width:100%;
    max-width:none !important;
}

/* Wider desktop composition */
@media(min-width:1200px){
    .g31-home-top-grid{
        grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
        gap:30px;
    }
    .g31-home-lower{
        grid-template-columns:minmax(0,1.12fr) minmax(0,.88fr);
        gap:30px;
    }
}

/* Readability: important text should never feel like microcopy */
.g31-home-simple{
    font-size:14px;
}

.g31-home-hero-nav a{
    font-size:15px !important;
}

.g31-home-simple-heading h2{
    font-size:18px !important;
    line-height:1.25;
}

.g31-home-simple-heading>a{
    font-size:13px !important;
}

.g31-home-next-state{
    font-size:13px !important;
}

.g31-home-top-grid .g31-home-next-copy h3{
    font-size:26px !important;
    line-height:1.2;
}

.g31-home-next-meta{
    font-size:13px !important;
    line-height:1.5;
}

.g31-home-next-faces span{
    font-size:12px !important;
}

.g31-home-next-open{
    min-width:112px;
    padding:11px 16px;
    font-size:12px !important;
}

.g31-home-top-grid .g31-home-discover-copy h3{
    font-size:16px !important;
    line-height:1.3;
}

.g31-home-top-grid .g31-home-discover-copy span{
    font-size:12px !important;
    line-height:1.45;
}

.g31-home-circle-bubbles strong{
    font-size:12px !important;
    line-height:1.3;
}

.g31-home-member-more > .g31-home-simple-kicker{
    font-size:17px !important;
}

.g31-home-more-item strong{
    font-size:14px !important;
}

.g31-home-more-item small{
    font-size:12px !important;
    line-height:1.5;
}

.g31-home-more-item b{
    font-size:12px !important;
}

.g31-home-footer > strong{
    font-size:12px !important;
}

.g31-home-quiet-links a{
    font-size:12px !important;
}

/* Give Discover cards more breathing room now that type is larger */
.g31-home-top-grid .g31-home-discover-copy{
    min-height:108px;
    padding:14px 14px 16px;
}

.g31-home-top-grid .g31-home-discover-image{
    height:190px;
}

/* Your Circles should breathe at full width */
.g31-home-circle-bubbles{
    gap:26px;
}

.g31-home-circle-bubbles>a{
    flex-basis:92px;
}

.g31-home-circle-bubbles .g31-home-circle-avatar{
    width:68px;
    height:68px;
    flex-basis:68px;
}

/* Tablet */
@media(max-width:1100px){
    .g31-dashboard.g31-home-simple{
        padding-left:22px !important;
        padding-right:22px !important;
    }
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        margin-left:-22px !important;
        margin-right:-22px !important;
    }
}

/* Mobile */
@media(max-width:760px){
    .g31-dashboard.g31-home-simple{
        padding-left:10px !important;
        padding-right:10px !important;
    }
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        margin-left:-10px !important;
        margin-right:-10px !important;
    }
    .g31-home-simple-heading h2{
        font-size:17px !important;
    }
    .g31-home-top-grid .g31-home-next-copy h3{
        font-size:23px !important;
    }
    .g31-home-top-grid .g31-home-discover-copy h3{
        font-size:16px !important;
    }
}

/* Gathr31 v2.6.2 — hero/content overlap */
.g31-home-simple-welcome.g31-home-toulouse-hero{margin-bottom:0!important;padding-bottom:72px!important}
.g31-home-top-grid{position:relative;z-index:5;margin-top:-48px!important}
.g31-home-top-grid .g31-home-simple-heading h2,.g31-home-top-grid .g31-home-simple-heading>a{position:relative;z-index:6;color:#fff!important;text-shadow:0 1px 8px rgba(0,0,0,.42)}
.g31-home-top-grid .g31-home-simple-heading>a:hover{color:#ffd8dc!important}
@media(max-width:1100px){.g31-home-simple-welcome.g31-home-toulouse-hero{padding-bottom:68px!important}.g31-home-top-grid{margin-top:-44px!important}}
@media(max-width:760px){.g31-home-simple-welcome.g31-home-toulouse-hero{padding-bottom:58px!important}.g31-home-top-grid{margin-top:-36px!important}}


/* ==========================================================
   Gathr31 v2.6.3 — true hero overlap
   ========================================================== */

/* The hero now physically owns the notification and extends deep enough
   for the first section titles to live over the image. */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    min-height:455px !important;
    padding-bottom:125px !important;
    overflow:visible !important;
}

/* Notification now sits ON the hero */
.g31-home-hero-alert{
    position:absolute;
    left:44px;
    right:44px;
    bottom:68px;
    z-index:7;
    display:flex;
    align-items:center;
    gap:12px;
    margin:0 !important;
    padding:10px 0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    color:#fff !important;
    text-decoration:none !important;
}
.g31-home-hero-alert > span:first-child{
    font-size:18px;
}
.g31-home-hero-alert > span:nth-child(2){
    display:flex !important;
    flex:1;
    min-width:0;
    flex-direction:column;
    gap:2px !important;
    color:#fff !important;
}
.g31-home-hero-alert strong{
    color:#fff !important;
    font-size:13px !important;
    font-weight:800;
    text-shadow:0 1px 8px rgba(0,0,0,.45);
}
.g31-home-hero-alert em{
    color:rgba(255,255,255,.92) !important;
    font-size:12px !important;
    font-style:normal;
    text-shadow:0 1px 8px rgba(0,0,0,.45);
}
.g31-home-hero-alert b{
    color:#fff !important;
    font-size:12px !important;
    white-space:nowrap;
    text-shadow:0 1px 8px rgba(0,0,0,.45);
}

/* Pull the headings significantly farther into the photograph.
   Cards themselves begin just below the visual edge. */
.g31-home-top-grid{
    margin-top:-78px !important;
}
.g31-home-top-grid .g31-home-simple-heading{
    position:relative;
    z-index:8;
    min-height:30px;
    margin-bottom:16px !important;
}
.g31-home-top-grid .g31-home-simple-heading h2{
    color:#fff !important;
    font-size:18px !important;
    text-shadow:0 2px 10px rgba(0,0,0,.5) !important;
}
.g31-home-top-grid .g31-home-simple-heading>a{
    color:#fff !important;
    font-size:13px !important;
    text-shadow:0 2px 10px rgba(0,0,0,.5) !important;
}

/* Give the image a slightly darker lower fade so white headings stay readable */
.g31-home-toulouse-hero:after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    height:150px;
    z-index:1;
    pointer-events:none;
    background:linear-gradient(to bottom,rgba(16,18,20,0),rgba(16,18,20,.38));
}
.g31-home-hero-topbar,
.g31-home-hero-copy,
.g31-home-hero-alert{
    z-index:3;
}

/* Cards stay above the warm page surface */
.g31-home-top-grid .g31-home-next-card,
.g31-home-top-grid .g31-home-discover-card{
    position:relative;
    z-index:9;
}

/* Tablet */
@media(max-width:1100px){
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        min-height:430px !important;
        padding-bottom:116px !important;
    }
    .g31-home-hero-alert{
        left:22px;
        right:22px;
        bottom:63px;
    }
    .g31-home-top-grid{
        margin-top:-72px !important;
    }
}

/* Mobile */
@media(max-width:760px){
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        min-height:390px !important;
        padding-bottom:104px !important;
    }
    .g31-home-hero-alert{
        left:20px;
        right:20px;
        bottom:54px;
    }
    .g31-home-hero-alert b{
        display:none;
    }
    .g31-home-top-grid{
        margin-top:-62px !important;
    }
    .g31-home-top-grid .g31-home-simple-heading h2{
        font-size:17px !important;
    }
}

/* ==========================================================
   Gathr31 v2.6.4 — social discovery additions
   ========================================================== */

/* No home notification strip under the Host badge */
.g31-home-hero-alert{display:none!important}

/* Center the three Discover cards across their column */
.g31-home-top-grid .g31-home-discover-cards{
    justify-content:center;
    align-items:stretch;
}
.g31-home-top-grid .g31-home-discover-card{
    width:100%;
    max-width:260px;
    justify-self:center;
}

/* Welcome new Gatherers */
.g31-home-new-gatherers{
    width:100%;
    max-width:none;
    margin:0 auto 28px;
    padding:18px 20px 20px;
    border-radius:13px;
    background:#fff;
    box-shadow:0 7px 18px rgba(16,24,40,.10);
}
.g31-home-new-people{
    display:flex;
    align-items:flex-start;
    gap:24px;
    overflow-x:auto;
    padding:6px 2px 2px;
}
.g31-home-new-people>a{
    display:flex;
    flex:0 0 88px;
    flex-direction:column;
    align-items:center;
    gap:8px;
    color:#2d3033!important;
    text-align:center;
    text-decoration:none!important;
}
.g31-home-new-people img{
    display:block;
    width:66px!important;
    height:66px!important;
    border:3px solid #fff;
    border-radius:50%;
    object-fit:cover;
    box-shadow:0 4px 13px rgba(16,24,40,.14);
}
.g31-home-new-people strong{
    font-size:12px;
    line-height:1.25;
}

/* Circles that may interest you */
.g31-home-suggested-circles{
    margin-top:20px;
    padding-top:18px;
    border-top:1px solid #ece8e2;
}
.g31-home-suggested-circle-list{
    display:flex;
    align-items:flex-start;
    gap:16px;
    overflow-x:auto;
    padding-top:4px;
}
.g31-home-suggested-circle-list>a{
    display:flex;
    flex:0 0 78px;
    flex-direction:column;
    align-items:center;
    gap:7px;
    color:#2d3033!important;
    text-align:center;
    text-decoration:none!important;
}
.g31-home-suggested-circle-list .g31-home-circle-avatar{
    width:58px;
    height:58px;
    flex-basis:58px;
}
.g31-home-suggested-circle-list strong{
    font-size:11px;
    line-height:1.25;
}

@media(max-width:760px){
    .g31-home-new-people{gap:18px}
    .g31-home-new-people>a{flex-basis:78px}
    .g31-home-new-people img{width:58px!important;height:58px!important}
}

/* v2.6.5 — latest Experiences + native Circle logos */
.g31-home-top-grid .g31-home-discover-cards{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    width:100%;
    gap:14px;
}
.g31-home-top-grid .g31-home-discover-card{width:100%;max-width:none!important}
.g31-circle-organiser-tools{display:flex;align-items:flex-start;justify-content:flex-end;gap:9px;flex-wrap:wrap}
.g31-circle-logo-tool{position:relative}
.g31-circle-logo-tool summary{list-style:none;cursor:pointer;padding:10px 13px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;color:#344054;font-size:11px;font-weight:900}
.g31-circle-logo-tool summary::-webkit-details-marker{display:none}
.g31-circle-logo-tool form{position:absolute;top:48px;right:0;z-index:30;width:290px;padding:15px;border:1px solid #e4e7ec;border-radius:13px;background:#fff;box-shadow:0 14px 34px rgba(16,24,40,.16)}
.g31-circle-logo-tool label{display:block;color:#475467;font-size:11px;font-weight:700}
.g31-circle-logo-tool input[type=file]{display:block;width:100%;margin-top:8px;font-size:11px}
.g31-circle-logo-tool button{margin-top:12px;padding:9px 12px;border:0;border-radius:9px;background:#ef4056;color:#fff;font-size:11px;font-weight:900;cursor:pointer}
@media(max-width:760px){
 .g31-home-top-grid .g31-home-discover-cards{grid-template-columns:1fr!important}
 .g31-circle-organiser-tools{justify-content:flex-start}
 .g31-circle-logo-tool form{left:0;right:auto;width:min(290px,calc(100vw - 40px))}
}

/* v2.6.6 — Invite a Friend */
.g31-home-people-invite-row{display:grid;grid-template-columns:minmax(0,1fr) 330px;align-items:center;gap:24px}
.g31-home-new-people-wrap{min-width:0}
.g31-home-invite-friend{display:flex;align-items:center;gap:14px;min-height:92px;padding:13px 16px;border-left:1px solid #ece8e2;color:#2d3033!important;text-decoration:none!important}
.g31-home-invite-round{display:flex;align-items:center;justify-content:center;flex:0 0 66px;width:66px;height:66px;border-radius:50%;background:#ef4056;box-shadow:0 5px 15px rgba(239,64,86,.24);transition:transform .18s ease,box-shadow .18s ease}
.g31-home-invite-round svg{width:38px;height:38px;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.g31-home-invite-friend:hover .g31-home-invite-round{transform:translateY(-2px) scale(1.03);box-shadow:0 8px 19px rgba(239,64,86,.30)}
.g31-home-invite-copy,.g31-home-invite-copy strong,.g31-home-invite-copy small,.g31-home-invite-copy b{display:block}
.g31-home-invite-copy strong{color:#2d3033;font-size:14px;line-height:1.25}
.g31-home-invite-copy small{margin-top:4px;color:#706c66;font-size:11px;line-height:1.4}
.g31-home-invite-copy b{margin-top:7px;color:#ef4056;font-size:11px}
@media(max-width:950px){.g31-home-people-invite-row{grid-template-columns:1fr}.g31-home-invite-friend{max-width:430px;padding-left:0;border-top:1px solid #ece8e2;border-left:0}}

/* ==========================================================
   Gathr31 v2.6.7 — Experiences page Circle badge repair
   ========================================================== */

/* Old overlay badges are retired. They were nested links inside the
   Experience image link, which caused browsers to generate detached
   floating pills/circles on the page. */
.g31-xp-circle-badges,
.g31-xp-circle-badge{
    display:none!important;
}

/* Circle association now appears quietly in the card body. */
.g31-xp-shared-circles{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:4px 0 12px;
}
.g31-xp-shared-circles span{
    display:inline-flex;
    align-items:center;
    min-height:25px;
    padding:5px 9px;
    border-radius:999px;
    background:#f5f1ed;
    color:#6b625c;
    font-size:11px;
    font-weight:700;
    line-height:1.2;
}

/* v2.6.8 — Discover more Experiences */
.g31-xp-card-more{display:none!important}
.g31-xp-card-more.g31-xp-card-revealed{display:flex!important}
.g31-xp-discover-more-wrap{display:flex;justify-content:center;width:100%;margin:30px 0 8px}
.g31-xp-discover-more{appearance:none;min-width:245px;padding:13px 22px;border:1px solid #111a2c;border-radius:11px;background:#111a2c;color:#fff;font-size:13px;font-weight:800;line-height:1.2;cursor:pointer;box-shadow:0 5px 14px rgba(17,26,44,.12);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.g31-xp-discover-more:hover{transform:translateY(-1px);background:#1d2940;box-shadow:0 8px 18px rgba(17,26,44,.16)}
.g31-xp-discover-more.is-complete{display:none}

/* ==========================================================
   Gathr31 v2.6.9 — Experiences visual refinement
   ========================================================== */

/* Bring the hero and discovery area closer together */
.g31-xp-page{
    padding-bottom:42px;
}
.g31-xp-hero{
    margin-bottom:20px!important;
}
.g31-xp-discover{
    margin-top:0!important;
}
.g31-xp-discover-head{
    margin-bottom:12px!important;
}

/* Filters: lighter, more compact and scan-friendly */
.g31-xp-filters{
    padding:14px 16px!important;
    margin-bottom:18px!important;
    border-radius:13px!important;
}
.g31-xp-filter-row{
    gap:7px!important;
}
.g31-xp-filter{
    min-height:30px!important;
    padding:6px 10px!important;
    font-size:11px!important;
}

/* Cards: imagery leads; content has a cleaner hierarchy */
.g31-xp-grid{
    gap:22px!important;
}
.g31-xp-card{
    overflow:hidden;
    border-radius:16px!important;
    border:1px solid #e8e4df!important;
    box-shadow:0 8px 24px rgba(16,24,40,.07)!important;
    transition:transform .18s ease,box-shadow .18s ease!important;
}
.g31-xp-card:hover{
    transform:translateY(-3px);
    box-shadow:0 13px 30px rgba(16,24,40,.11)!important;
}
.g31-xp-card-image{
    min-height:245px!important;
}
.g31-xp-card-image img{
    width:100%;
    height:245px!important;
    object-fit:cover;
}
.g31-xp-card-body{
    padding:19px 20px 20px!important;
}

/* Host becomes useful context rather than competing with the Experience */
.g31-xp-host{
    margin-bottom:8px!important;
}
.g31-xp-host img{
    width:36px!important;
    height:36px!important;
}
.g31-xp-host small{
    font-size:10px!important;
}
.g31-xp-host strong{
    font-size:12px!important;
}

/* Circle association is deliberately quiet */
.g31-xp-shared-circles{
    margin:2px 0 9px!important;
}
.g31-xp-shared-circles span{
    min-height:22px!important;
    padding:4px 8px!important;
    background:#f5f1ed!important;
    color:#756d67!important;
    font-size:10px!important;
}

/* Experience title is the strongest text inside the card */
.g31-xp-card h3{
    margin:7px 0 11px!important;
    font-size:21px!important;
    line-height:1.12!important;
    letter-spacing:-.35px;
}
.g31-xp-card h3 a{
    color:#111827!important;
    text-decoration:none!important;
}

/* Date and location become quick-scan information */
.g31-xp-meta{
    gap:7px!important;
    margin-bottom:12px!important;
}
.g31-xp-meta>div,
.g31-xp-meta>span{
    color:#596579!important;
    font-size:12px!important;
    line-height:1.35!important;
}

/* Description is supporting information, not the main event */
.g31-xp-description{
    color:#667085!important;
    font-size:12px!important;
    line-height:1.5!important;
    margin-bottom:14px!important;
}

/* Attendance block */
.g31-xp-card-footer{
    margin-top:auto!important;
    padding-top:14px!important;
    border-top:1px solid #eeeae6!important;
}
.g31-xp-going strong{
    font-size:12px!important;
}
.g31-xp-going small,
.g31-xp-places small{
    color:#8a94a6!important;
    font-size:10px!important;
}
.g31-xp-places strong{
    color:#ef4056!important;
    font-size:14px!important;
}

/* CTA: substantial but not oversized */
.g31-xp-view{
    min-height:44px!important;
    margin-top:15px!important;
    border-radius:10px!important;
    font-size:12px!important;
    letter-spacing:.05px;
}

/* Date tile and status pill stay crisp over larger imagery */
.g31-xp-date-badge{
    top:14px!important;
    left:14px!important;
    box-shadow:0 4px 12px rgba(0,0,0,.12);
}
.g31-xp-going-badge{
    top:14px!important;
    right:14px!important;
}

/* Desktop hero: slightly more presence without making the page long */
@media(min-width:900px){
    .g31-xp-hero{
        min-height:270px!important;
        padding:34px 38px!important;
    }
    .g31-xp-hero h1{
        max-width:620px;
        font-size:38px!important;
        line-height:1.02!important;
    }
    .g31-xp-hero p{
        max-width:700px;
        font-size:13px!important;
        line-height:1.55!important;
    }
}

/* Tablet/mobile: preserve the same hierarchy */
@media(max-width:900px){
    .g31-xp-card-image,
    .g31-xp-card-image img{
        min-height:220px!important;
        height:220px!important;
    }
}
@media(max-width:600px){
    .g31-xp-card-body{padding:17px!important}
    .g31-xp-card h3{font-size:20px!important}
    .g31-xp-filters{padding:12px!important}
}

/* v2.7.1 Public Membership */
.g31-membership-page{width:min(1180px,calc(100% - 36px));margin:28px auto 54px;color:#19202c}.g31-membership-hero{padding:48px 52px;border-radius:22px;background:#111a2c;color:#fff;text-align:center}.g31-membership-eyebrow{display:block;margin-bottom:9px;color:#ef4056;font-size:11px;font-weight:900;letter-spacing:1.4px}.g31-membership-hero h1{margin:0;color:#fff;font-size:46px}.g31-membership-hero p{margin:14px auto 0;color:#ffffffd1}.g31-membership-billing-note{display:inline-flex;margin-top:20px;padding:7px 12px;border:1px solid #ffffff2e;border-radius:999px;font-size:11px}.g31-membership-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:930px;margin:34px auto 0}.g31-membership-card{position:relative;display:flex;flex-direction:column;min-height:610px;padding:34px;border:1px solid #e6e0da;border-radius:20px;background:#fff;box-shadow:0 10px 28px #10182812}.g31-membership-card-plus{border:2px solid #ef4056}.g31-membership-most-loved{position:absolute;top:0;right:28px;transform:translateY(-50%);padding:7px 12px;border-radius:999px;background:#ef4056;color:#fff;font-size:10px;font-weight:900}.g31-membership-tier{color:#ef4056;font-size:11px;font-weight:900;letter-spacing:1.2px}.g31-membership-card h2{margin:8px 0 18px;font-size:26px}.g31-membership-price{display:flex;align-items:flex-end;gap:6px}.g31-membership-price strong{font-size:46px;line-height:.95}.g31-membership-price span{max-width:100px;padding-bottom:4px;color:#667085;font-size:12px;line-height:1.2}.g31-membership-annual{margin-bottom:2px;color:#596579;font-size:12px;font-weight:800}.g31-membership-tax{margin:0 0 12px;color:#7b8494;font-size:11px}.g31-membership-intro{min-height:54px;color:#596579;font-size:13px}.g31-membership-card ul{margin:20px 0 26px;padding:20px 0 0;border-top:1px solid #eee9e4;list-style:none}.g31-membership-card li{position:relative;margin-bottom:12px;padding-left:24px;font-size:13px}.g31-membership-card li:before{content:"✓";position:absolute;left:0;color:#ef4056;font-weight:900}.g31-membership-button{display:flex;justify-content:center;align-items:center;min-height:48px;margin-top:auto;border-radius:11px;background:#111a2c;color:#fff!important;font-size:13px;font-weight:900;text-decoration:none!important}.g31-membership-button-coral{background:#ef4056}.g31-membership-difference{margin:-4px 0 20px;padding:10px;border-radius:9px;background:#fff3f4;color:#bd3346;font-size:11px;font-weight:800;text-align:center}.g31-membership-clarity{margin:16px auto;text-align:center;color:#7b8494;font-size:11px}.g31-membership-organiser{display:grid;grid-template-columns:80px 1fr;gap:24px;max-width:930px;margin:34px auto 0;padding:28px 32px;border-radius:18px;background:#eee9e3}.g31-membership-organiser-icon{display:flex;align-items:center;justify-content:center;width:68px;height:68px;border-radius:50%;background:#ef4056;color:#fff;font-size:36px}.g31-membership-eyebrow-dark{color:#596579}.g31-membership-organiser h2{margin:3px 0 8px}.g31-membership-organiser p{color:#596579;font-size:13px}.g31-membership-invite{max-width:930px;margin:28px auto 0;padding:38px;border-radius:20px;background:#111a2c;color:#fff;text-align:center}.g31-membership-invite h2{color:#fff}.g31-membership-invite p{color:#ffffffc7}.g31-membership-button-light{display:inline-flex;min-width:220px;background:#fff;color:#111a2c!important}.g31-membership-footer{text-align:center;padding-top:26px;font-size:11px;color:#7b8494}@media(max-width:760px){.g31-membership-plans{grid-template-columns:1fr}.g31-membership-card{min-height:0}.g31-membership-organiser{grid-template-columns:1fr}.g31-membership-hero{padding:36px 22px}}
.g31-pms-plan-tax{display:block;margin:3px 0 0 20px;color:#7b8494;font-size:11px;font-weight:500;line-height:1.35}

/* ==========================================================
   Gathr31 v2.7.3 — Public landing page
   Shortcode: [g31_public_home]
   ========================================================== */
.g31-public-home{width:100%;margin:0;background:#e6e2dc;color:#19202c}
.g31-public-hero{min-height:590px;background-size:cover;background-position:center 66%;display:flex;align-items:stretch}
.g31-public-hero-inner{width:min(1320px,calc(100% - 64px));margin:0 auto;padding:34px 0 60px;display:flex;flex-direction:column}
.g31-public-wordmark{display:inline-flex;align-items:baseline;align-self:flex-start;color:#fff!important;font-size:31px;font-weight:900;letter-spacing:-.04em;text-decoration:none!important}
.g31-public-wordmark b{color:#ef4056;font:inherit}
.g31-public-hero-copy{max-width:700px;margin-top:auto}
.g31-public-eyebrow{display:block;margin-bottom:9px;color:#ef4056;font-size:11px;font-weight:900;letter-spacing:1.4px}
.g31-public-eyebrow-dark{color:#6b665f}
.g31-public-hero h1{margin:0;color:#fff;font-size:64px;line-height:.98;letter-spacing:-2.1px;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.g31-public-hero p{max-width:650px;margin:18px 0 0;color:rgba(255,255,255,.9);font-size:18px;line-height:1.5}
.g31-public-actions{display:flex;align-items:center;gap:12px;margin-top:24px;flex-wrap:wrap}
.g31-public-primary,.g31-public-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:47px;padding:11px 18px;border-radius:10px;font-size:13px;font-weight:900;text-decoration:none!important}
.g31-public-primary{background:#ef4056;color:#fff!important}
.g31-public-secondary{border:1px solid rgba(255,255,255,.42);background:rgba(18,20,23,.26);color:#fff!important;backdrop-filter:blur(4px)}
.g31-public-signin{display:inline-block;margin-top:17px;color:rgba(255,255,255,.82)!important;font-size:12px;font-weight:700;text-decoration:none!important}
.g31-public-intro{max-width:860px;margin:0 auto;padding:62px 24px 32px;text-align:center}
.g31-public-intro h2,.g31-public-community h2,.g31-public-final h2{margin:4px 0 12px;font-size:36px;line-height:1.08;letter-spacing:-1px}
.g31-public-intro p{margin:0;color:#5f5a54;font-size:15px;line-height:1.65}
.g31-public-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;width:min(1180px,calc(100% - 40px));margin:12px auto 54px}
.g31-public-pillars article{min-height:220px;padding:24px;border-radius:17px;background:#fff;box-shadow:0 8px 22px rgba(16,24,40,.07)}
.g31-public-pillar-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#fff0f2;color:#ef4056;font-size:22px;font-weight:900}
.g31-public-pillars h3{margin:18px 0 8px;font-size:20px}
.g31-public-pillars p{margin:0;color:#68635d;font-size:13px;line-height:1.55}
.g31-public-community{display:grid;grid-template-columns:1.25fr .75fr;gap:28px;width:min(1180px,calc(100% - 40px));margin:0 auto 54px;padding:38px 40px;border-radius:20px;background:#f3f0eb}
.g31-public-community p{max-width:690px;color:#635e58;font-size:14px;line-height:1.6}
.g31-public-community-card{align-self:center;padding:24px;border-radius:15px;background:#fff;box-shadow:0 8px 20px rgba(16,24,40,.06)}
.g31-public-community-card strong,.g31-public-community-card span,.g31-public-community-card a{display:block}
.g31-public-community-card strong{font-size:17px;line-height:1.3}
.g31-public-community-card span{margin-top:6px;color:#77716a;font-size:12px}
.g31-public-community-card a{margin-top:16px;color:#ef4056!important;font-size:12px;font-weight:900;text-decoration:none!important}
.g31-public-final{width:min(1180px,calc(100% - 40px));margin:0 auto;padding:48px 34px;border-radius:22px;background:#111a2c;color:#fff;text-align:center}
.g31-public-final h2{color:#fff}
.g31-public-final p{max-width:700px;margin:0 auto;color:rgba(255,255,255,.78);font-size:14px;line-height:1.6}
.g31-public-actions-center{justify-content:center}
.g31-public-secondary.is-light{background:#fff;color:#111a2c!important;border-color:#fff}
.g31-public-footer{padding:28px 20px 36px;text-align:center;color:#6f6962;font-size:11px;font-weight:800}
@media(max-width:900px){
 .g31-public-hero{min-height:520px}.g31-public-hero h1{font-size:50px}
 .g31-public-pillars{grid-template-columns:repeat(2,minmax(0,1fr))}
 .g31-public-community{grid-template-columns:1fr}
}
@media(max-width:600px){
 .g31-public-hero-inner{width:calc(100% - 34px);padding-top:24px}.g31-public-hero{min-height:520px;background-position:62% center}
 .g31-public-hero h1{font-size:42px}.g31-public-hero p{font-size:15px}
 .g31-public-pillars{grid-template-columns:1fr}
 .g31-public-intro h2,.g31-public-community h2,.g31-public-final h2{font-size:30px}
 .g31-public-community,.g31-public-final{padding:30px 22px}
}

/* v2.7.4 — Controlled Join */
.g31-join-page{width:min(920px,calc(100% - 34px));margin:30px auto 54px}.g31-join-intro{padding:34px 38px;border-radius:19px 19px 0 0;background:#111a2c;color:#fff}.g31-join-intro h1{margin:3px 0 9px;color:#fff;font-size:36px}.g31-join-intro>p{margin:0;color:#ffffffcc;font-size:14px}.g31-join-plan-note{display:flex;justify-content:space-between;gap:14px;margin-top:22px;padding:12px 14px;border:1px solid #ffffff2b;border-radius:10px;background:#ffffff0f}.g31-join-plan-note strong{color:#ff7787;font-size:13px}.g31-join-plan-note span{color:#ffffffcc;font-size:11px}.g31-join-form{padding:30px 34px 34px;border-radius:0 0 19px 19px;background:#fff;box-shadow:0 12px 30px #10182814}.g31-join-clarity{max-width:720px;margin:14px auto 0;color:#7b756e;font-size:11px;text-align:center}@media(max-width:600px){.g31-join-intro,.g31-join-form{padding-left:22px;padding-right:22px}.g31-join-plan-note{flex-direction:column}}


/* ==========================================================
   Gathr31 v2.7.6 — Flush-top / edge-to-edge Home heroes
   Applies ONLY to:
   - WordPress front page (public Gathr31 home)
   - Members Home page
   Keeps the BuddyBoss site header/navigation visible.
   ========================================================== */

/* Remove BuddyBoss page-canvas spacing around our two home experiences. */
body.home #content,
body.home .site-content,
body.home .site-content-grid,
body.home #primary,
body.home main.site-main,
body.page-members-home #content,
body.page-members-home .site-content,
body.page-members-home .site-content-grid,
body.page-members-home #primary,
body.page-members-home main.site-main {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* WordPress normally supplies a page-id class; this catches Members Home
   even where the slug-specific body class is unavailable. */
body:has(.g31-dashboard) #content,
body:has(.g31-dashboard) .site-content,
body:has(.g31-dashboard) .site-content-grid,
body:has(.g31-dashboard) #primary,
body:has(.g31-dashboard) main.site-main,
body:has(.g31-public-home) #content,
body:has(.g31-public-home) .site-content,
body:has(.g31-public-home) .site-content-grid,
body:has(.g31-public-home) #primary,
body:has(.g31-public-home) main.site-main {
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* Break the Gathr31 page itself out of BuddyBoss' max-width container.
   Inner dashboard sections retain their own deliberate widths. */
body.home .g31-public-home,
body:has(.g31-public-home) .g31-public-home,
body:has(.g31-dashboard) .g31-dashboard {
    width: 100vw !important;
    max-width: none !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    margin-top: 0 !important;
}

/* Remove empty WordPress entry wrappers/titles that can create a white band. */
body.home .entry-header:empty,
body:has(.g31-public-home) .entry-header:empty,
body:has(.g31-dashboard) .entry-header:empty {
    display:none !important;
}
body.home .entry-content,
body:has(.g31-public-home) .entry-content,
body:has(.g31-dashboard) .entry-content {
    margin-top:0 !important;
    padding-top:0 !important;
}

/* The public hero should physically begin at the first pixel below BuddyBoss nav. */
.g31-public-home .g31-public-hero {
    margin-top: 0 !important;
}

/* Members Home: remove any top gap before its photographic hero. */
.g31-dashboard .g31-hero,
.g31-dashboard .g31-dashboard-hero,
.g31-dashboard .g31-home-hero,
.g31-dashboard > :first-child {
    margin-top: 0 !important;
}

/* Mobile: keep true edge-to-edge without creating horizontal scroll. */
@media (max-width: 782px) {
    body.home .g31-public-home,
    body:has(.g31-public-home) .g31-public-home,
    body:has(.g31-dashboard) .g31-dashboard {
        width:100vw !important;
        margin-left:calc(50% - 50vw) !important;
        margin-right:calc(50% - 50vw) !important;
    }
}


/* ==========================================================
   Gathr31 v2.7.7 — Members Home hero correction
   The hero itself, rather than the whole dashboard, breaks out of every
   BuddyBoss container. This prevents the narrow centred "panel" effect.
   ========================================================== */

/* Keep the useful member content comfortably readable. */
.g31-dashboard.g31-home-simple{
    position:static !important;
    left:auto !important;
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
    padding-top:0 !important;
}

/* The Toulouse member hero alone spans the entire browser viewport. */
.g31-dashboard.g31-home-simple > .g31-home-simple-welcome.g31-home-toulouse-hero{
    position:relative !important;
    left:50% !important;
    width:100vw !important;
    max-width:none !important;
    margin-top:0 !important;
    margin-left:-50vw !important;
    margin-right:0 !important;
    border-radius:0 !important;
    box-sizing:border-box !important;
    background-size:cover !important;
    background-repeat:no-repeat !important;
    background-position:center 67% !important;
}

/* Ensure no parent canvas creates a visible band before the hero. */
body:has(.g31-home-toulouse-hero) article,
body:has(.g31-home-toulouse-hero) .entry-content,
body:has(.g31-home-toulouse-hero) #primary,
body:has(.g31-home-toulouse-hero) main.site-main{
    margin-top:0 !important;
    padding-top:0 !important;
}

/* Prevent a theme title/header placeholder appearing above the member hero. */
body:has(.g31-home-toulouse-hero) .entry-header{
    margin:0 !important;
    padding:0 !important;
}
body:has(.g31-home-toulouse-hero) .entry-header:empty{
    display:none !important;
}

/* Content beneath the hero uses the viewport sensibly rather than becoming
   one extremely wide line on large monitors. */
.g31-home-top-grid,
.g31-home-new-gatherers,
.g31-home-lower,
.g31-home-footer{
    width:min(1500px,100%) !important;
    margin-left:auto !important;
    margin-right:auto !important;
}

/* Preserve the intentional overlap of the first experience headings/cards. */
.g31-home-top-grid{
    margin-top:-78px !important;
}

/* Print/PDF fallback: browser print engines often suppress CSS background
   images, so avoid turning the hero into a harsh black slab. */
@media print{
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        background-color:#333a43 !important;
    }
}


/* ==========================================================
   Gathr31 v2.7.8 — Members Home photographic hero
   ========================================================== */

/* Stop relying on CSS background rendering for the member hero. */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    position:relative !important;
    min-height:420px !important;
    padding-top:92px !important;
    padding-bottom:112px !important;
    background-image:none !important;
    background-color:#23272d !important;
    overflow:hidden !important;
}

/* Real image layer: renders consistently in browser and PDF/print captures. */
.g31-home-hero-photo{
    position:absolute !important;
    inset:0 !important;
    z-index:0 !important;
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center 67% !important;
    display:block !important;
}

/* Darken enough for text, but keep the Toulouse photo visibly photographic. */
.g31-home-hero-overlay{
    position:absolute !important;
    inset:0 !important;
    z-index:1 !important;
    background:
        linear-gradient(90deg,rgba(13,16,20,.68) 0%,rgba(13,16,20,.42) 46%,rgba(13,16,20,.16) 100%),
        linear-gradient(to bottom,rgba(13,16,20,.06) 48%,rgba(13,16,20,.36) 100%) !important;
    pointer-events:none !important;
}

/* Everything interactive/textual stays above the real image. */
.g31-home-hero-topbar,
.g31-home-hero-copy,
.g31-home-hero-alert{
    position:relative !important;
    z-index:3 !important;
}

/* Keep the integrated wordmark comfortably inside the hero.
   v2.7.7 allowed it to sit too close to the clipped top edge. */
.g31-home-hero-topbar{
    position:absolute !important;
    top:0 !important;
    left:0 !important;
    right:0 !important;
    padding:22px 42px 0 !important;
}
.g31-home-wordmark{
    line-height:1 !important;
    margin-top:0 !important;
}

/* Greeting sits higher, but not under the nav/wordmark. */
.g31-home-hero-copy{
    margin-top:46px !important;
}

/* Reduce the overlap: headings still sit on the image, cards mostly emerge below. */
.g31-home-top-grid{
    margin-top:-58px !important;
}
.g31-home-top-grid .g31-home-simple-heading{
    margin-bottom:14px !important;
}

/* Remove the older pseudo-darkening layer; the new overlay owns this. */
.g31-home-toulouse-hero:after{
    display:none !important;
}

/* PDF/print: keep the image rather than replacing it with a dark slab. */
@media print{
    .g31-home-hero-photo{
        display:block !important;
    }
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        background:#23272d !important;
        -webkit-print-color-adjust:exact;
        print-color-adjust:exact;
    }
}

@media(max-width:760px){
    .g31-home-simple-welcome.g31-home-toulouse-hero{
        min-height:360px !important;
        padding-top:78px !important;
        padding-bottom:96px !important;
    }
    .g31-home-hero-topbar{
        padding:18px 20px 0 !important;
    }
    .g31-home-hero-copy{
        margin-top:40px !important;
    }
    .g31-home-top-grid{
        margin-top:-48px !important;
    }
}

/* ==========================================================
   Gathr31 v2.7.9 — Members Home hero markup repair
   ========================================================== */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    background:none!important;
}
.g31-home-simple-welcome.g31-home-toulouse-hero .g31-home-hero-photo{
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    z-index:0!important;
}
.g31-home-simple-welcome.g31-home-toulouse-hero .g31-home-hero-overlay{
    z-index:1!important;
}
.g31-home-simple-welcome.g31-home-toulouse-hero > *:not(.g31-home-hero-photo):not(.g31-home-hero-overlay){
    position:relative;
    z-index:2;
}

/* ==========================================================
   Gathr31 v2.8.0 — Members Home hero top-edge correction
   The previous full-bleed breakout was shifted upward by a BuddyBoss
   wrapper/overflow interaction. Anchor the hero at its natural flow
   position directly below the navigation instead.
   ========================================================== */

/* Do not vertically translate the member hero or its dashboard wrapper. */
body:has(.g31-home-toulouse-hero) .g31-dashboard,
body:has(.g31-home-toulouse-hero) .g31-home-simple,
body:has(.g31-home-toulouse-hero) .g31-home-toulouse-hero{
    top:auto!important;
    transform:none!important;
}

/* Full viewport width, but keep the section's natural Y position. */
.g31-dashboard.g31-home-simple > .g31-home-simple-welcome.g31-home-toulouse-hero{
    position:relative!important;
    left:50%!important;
    right:auto!important;
    width:100vw!important;
    margin-left:-50vw!important;
    margin-right:0!important;
    margin-top:0!important;
    top:auto!important;
    transform:none!important;
    overflow:hidden!important;
}

/* Give the top of the photograph breathing room and keep the skyline visible.
   This affects only the image crop inside the hero, not the public homepage. */
.g31-home-toulouse-hero .g31-home-hero-photo{
    inset:0!important;
    object-fit:cover!important;
    object-position:center 50%!important;
    transform:none!important;
}

/* Keep the GATHR31 wordmark safely below the global navigation. */
.g31-home-toulouse-hero .g31-home-hero-topbar{
    top:0!important;
    padding-top:24px!important;
    clip-path:none!important;
    overflow:visible!important;
}


/* ==========================================================
   Gathr31 v2.8.1 — Members Home hero focal-point correction
   Keep the sunset, river and people — not the empty sky.
   ========================================================== */

/* The original photo is portrait-heavier than the panoramic hero.
   Push the crop down to preserve the socially interesting lower scene. */
.g31-home-toulouse-hero .g31-home-hero-photo{
    object-position:center 82%!important;
}

/* Give the image slightly more vertical room so both sunset and riverbank
   remain visible without reintroducing the old white-space problem. */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    min-height:470px!important;
    padding-bottom:118px!important;
}

/* Desktop-wide screens crop most aggressively, so favour the lower focal area. */
@media(min-width:1400px){
    .g31-home-toulouse-hero .g31-home-hero-photo{
        object-position:center 86%!important;
    }
}

/* On narrower screens less vertical cropping is required. */
@media(max-width:900px){
    .g31-home-toulouse-hero .g31-home-hero-photo{
        object-position:center 76%!important;
    }
}

/* ==========================================================
   Gathr31 v2.8.2 — Members Home hero wordmark correction
   Keep the successful sunset/river crop from v2.8.1.
   ========================================================== */

/* The hero starts immediately below the global nav. Move the internal
   GATHR31 wordmark down into the photograph rather than letting the
   sticky header clip its top edge. */
.g31-home-toulouse-hero .g31-home-hero-topbar{
    position:absolute!important;
    top:34px!important;
    left:0!important;
    right:0!important;
    padding:0 42px!important;
    margin:0!important;
    transform:none!important;
    overflow:visible!important;
    clip:auto!important;
    z-index:4!important;
}

/* Give the wordmark its own predictable box so no inherited line-height,
   negative margin or theme styling can push it upward. */
.g31-home-toulouse-hero .g31-home-wordmark{
    display:inline-flex!important;
    align-items:center!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    line-height:38px!important;
    position:relative!important;
    top:0!important;
    transform:none!important;
    overflow:visible!important;
}

/* Keep the greeting comfortably below the wordmark. */
.g31-home-toulouse-hero .g31-home-hero-copy{
    margin-top:72px!important;
}

/* Preserve the v2.8.1 focal point exactly. */
.g31-home-toulouse-hero .g31-home-hero-photo{
    object-position:center 82%!important;
}
@media(min-width:1400px){
    .g31-home-toulouse-hero .g31-home-hero-photo{
        object-position:center 86%!important;
    }
}
@media(max-width:900px){
    .g31-home-toulouse-hero .g31-home-hero-photo{
        object-position:center 76%!important;
    }
    .g31-home-toulouse-hero .g31-home-hero-topbar{
        top:24px!important;
        padding:0 20px!important;
    }
    .g31-home-toulouse-hero .g31-home-hero-copy{
        margin-top:62px!important;
    }
}

/* ==========================================================
   Gathr31 v2.8.3 — Put member-home wordmark/navigation in white header
   ========================================================== */

/* Hide the duplicate internal hero navigation entirely. It was being
   clipped by the BuddyBoss header and duplicated the real site menu. */
.g31-home-toulouse-hero .g31-home-hero-topbar{
    display:none!important;
}

/* Add the Gathr31 wordmark into the left side of the existing white
   BuddyBoss header on Members Home only. */
body:has(.g31-home-toulouse-hero) #masthead .site-header-container,
body:has(.g31-home-toulouse-hero) #masthead .bb-header-row,
body:has(.g31-home-toulouse-hero) header.site-header .container{
    position:relative!important;
}

/* Prefer the main BuddyBoss header wrapper; pseudo-element avoids adding
   another DOM/menu system and cannot create duplicate links. */
body:has(.g31-home-toulouse-hero) #masthead:before{
    content:"GATHR31";
    position:absolute;
    left:30px;
    top:50%;
    transform:translateY(-50%);
    z-index:999;
    font-family:inherit;
    font-size:28px;
    line-height:1;
    font-weight:900;
    letter-spacing:-1.2px;
    color:#111827;
    pointer-events:none;
}

/* Coral 31 effect using a small overlay label. */
body:has(.g31-home-toulouse-hero) #masthead:after{
    content:"31";
    position:absolute;
    left:124px;
    top:50%;
    transform:translateY(-50%);
    z-index:1000;
    font-family:inherit;
    font-size:28px;
    line-height:1;
    font-weight:900;
    letter-spacing:-1.2px;
    color:#ef4056;
    pointer-events:none;
}

/* Give the real BuddyBoss menu enough room for the wordmark at left. */
body:has(.g31-home-toulouse-hero) #masthead .main-navigation,
body:has(.g31-home-toulouse-hero) #masthead .site-header-container{
    padding-left:150px!important;
}

/* Hero no longer needs reserved top space for its removed internal nav. */
.g31-home-simple-welcome.g31-home-toulouse-hero{
    padding-top:34px!important;
}
.g31-home-toulouse-hero .g31-home-hero-copy{
    margin-top:0!important;
}

@media(max-width:1100px){
    body:has(.g31-home-toulouse-hero) #masthead:before,
    body:has(.g31-home-toulouse-hero) #masthead:after{
        display:none!important;
    }
    body:has(.g31-home-toulouse-hero) #masthead .main-navigation,
    body:has(.g31-home-toulouse-hero) #masthead .site-header-container{
        padding-left:0!important;
    }
}

/* ==========================================================
   Gathr31 v2.8.4 — Header wordmark repair
   v2.8.3's :before layer was being hidden/covered by BuddyBoss while
   the later :after "31" remained visible. Use one atomic wordmark.
   ========================================================== */

/* Remove the split pseudo-element implementation. */
body:has(.g31-home-toulouse-hero) #masthead:before{
    content:"Gathr"!important;
    display:block!important;
    position:absolute!important;
    left:30px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:2147483000!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:visible!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:28px!important;
    line-height:32px!important;
    font-weight:900!important;
    letter-spacing:-1.2px!important;
    color:#111827!important;
    background:transparent!important;
    pointer-events:none!important;
}
body:has(.g31-home-toulouse-hero) #masthead:after{
    content:"31"!important;
    display:block!important;
    position:absolute!important;
    left:103px!important;
    top:50%!important;
    transform:translateY(-50%)!important;
    z-index:2147483001!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    overflow:visible!important;
    font-family:Arial,Helvetica,sans-serif!important;
    font-size:28px!important;
    line-height:32px!important;
    font-weight:900!important;
    letter-spacing:-1.2px!important;
    color:#ef4056!important;
    background:transparent!important;
    pointer-events:none!important;
}

/* Ensure the masthead itself can paint the complete wordmark. */
body:has(.g31-home-toulouse-hero) #masthead{
    position:relative!important;
    overflow:visible!important;
}

/* Reserve a little more space before the real navigation. */
body:has(.g31-home-toulouse-hero) #masthead .main-navigation,
body:has(.g31-home-toulouse-hero) #masthead .site-header-container{
    padding-left:145px!important;
}

@media(max-width:1100px){
    body:has(.g31-home-toulouse-hero) #masthead:before,
    body:has(.g31-home-toulouse-hero) #masthead:after{
        display:none!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.5 — Desktop header wordmark + five-item nav
   Members Home only.
   ========================================================== */

/* Make Gathr + 31 share the exact same baseline and vertical centre. */
body:has(.g31-home-toulouse-hero) #masthead:before,
body:has(.g31-home-toulouse-hero) #masthead:after{
    top:50%!important;
    transform:translateY(-50%)!important;
    height:32px!important;
    line-height:32px!important;
    margin:0!important;
    padding:0!important;
    vertical-align:middle!important;
    font-size:28px!important;
    font-weight:900!important;
}

/* Tighten the join so it reads as one wordmark. */
body:has(.g31-home-toulouse-hero) #masthead:before{
    left:28px!important;
}
body:has(.g31-home-toulouse-hero) #masthead:after{
    left:102px!important;
}

/* Reserve only the space actually needed by the wordmark. */
body:has(.g31-home-toulouse-hero) #masthead .site-header-container,
body:has(.g31-home-toulouse-hero) #masthead .bb-header-row{
    padding-left:132px!important;
    padding-right:18px!important;
}

/* Give the primary navigation enough horizontal room and forbid wrapping. */
body:has(.g31-home-toulouse-hero) #masthead .main-navigation,
body:has(.g31-home-toulouse-hero) #masthead .primary-menu,
body:has(.g31-home-toulouse-hero) #masthead .bb-primary-menu{
    display:flex!important;
    flex:1 1 auto!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    white-space:nowrap!important;
    overflow:visible!important;
}

/* Keep all five actual menu items visible on normal desktop widths. */
body:has(.g31-home-toulouse-hero) #masthead .main-navigation > ul,
body:has(.g31-home-toulouse-hero) #masthead .primary-menu,
body:has(.g31-home-toulouse-hero) #masthead .bb-primary-menu{
    display:flex!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:0!important;
    overflow:visible!important;
}

/* Compact spacing slightly so all five fit cleanly. */
body:has(.g31-home-toulouse-hero) #masthead .main-navigation li > a,
body:has(.g31-home-toulouse-hero) #masthead .primary-menu li > a,
body:has(.g31-home-toulouse-hero) #masthead .bb-primary-menu li > a{
    padding-left:10px!important;
    padding-right:10px!important;
    font-size:13px!important;
    white-space:nowrap!important;
}

/* Hide BuddyBoss overflow/more item on full desktop. */
@media(min-width:1180px){
    body:has(.g31-home-toulouse-hero) #masthead .more-button,
    body:has(.g31-home-toulouse-hero) #masthead .bb-more-menu,
    body:has(.g31-home-toulouse-hero) #masthead .menu-item-more,
    body:has(.g31-home-toulouse-hero) #masthead li.more,
    body:has(.g31-home-toulouse-hero) #masthead .bb-nav-more{
        display:none!important;
    }
}

/* On smaller desktop/tablet widths let BuddyBoss resume responsive behaviour. */
@media(max-width:1179px){
    body:has(.g31-home-toulouse-hero) #masthead .site-header-container,
    body:has(.g31-home-toulouse-hero) #masthead .bb-header-row{
        padding-left:0!important;
    }
    body:has(.g31-home-toulouse-hero) #masthead:before,
    body:has(.g31-home-toulouse-hero) #masthead:after{
        display:none!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.6 — Safe desktop navigation overflow
   Show all five when possible; otherwise preserve BuddyBoss “more”.
   ========================================================== */

/* Undo v2.8.5's forced hiding of BuddyBoss overflow controls. */
body:has(.g31-home-toulouse-hero) #masthead .more-button,
body:has(.g31-home-toulouse-hero) #masthead .bb-more-menu,
body:has(.g31-home-toulouse-hero) #masthead .menu-item-more,
body:has(.g31-home-toulouse-hero) #masthead li.more,
body:has(.g31-home-toulouse-hero) #masthead .bb-nav-more{
    display:revert!important;
    visibility:visible!important;
    opacity:1!important;
}

/* Free a little extra room for the real menu without forcing hidden items back
   out of BuddyBoss' overflow system. */
body:has(.g31-home-toulouse-hero) #masthead .site-header-container,
body:has(.g31-home-toulouse-hero) #masthead .bb-header-row{
    padding-left:124px!important;
    padding-right:10px!important;
}

/* Slightly tighter desktop menu spacing. */
body:has(.g31-home-toulouse-hero) #masthead .main-navigation li > a,
body:has(.g31-home-toulouse-hero) #masthead .primary-menu li > a,
body:has(.g31-home-toulouse-hero) #masthead .bb-primary-menu li > a{
    padding-left:8px!important;
    padding-right:8px!important;
    font-size:12.5px!important;
}

/* Give navigation preference over decorative spacing.
   BuddyBoss can still move items into overflow if necessary. */
@media(min-width:1180px){
    body:has(.g31-home-toulouse-hero) #masthead .main-navigation,
    body:has(.g31-home-toulouse-hero) #masthead .primary-menu,
    body:has(.g31-home-toulouse-hero) #masthead .bb-primary-menu{
        flex:1 1 auto!important;
        min-width:0!important;
        max-width:none!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.7 — Experiences refinement
   ========================================================== */

/* Tighter, more confident hero. */
.g31-experiences-page .g31-xp-hero{
    min-height:0!important;
    padding-top:34px!important;
    padding-bottom:34px!important;
}
.g31-experiences-page .g31-xp-hero h1{
    max-width:680px!important;
    margin-bottom:12px!important;
}
.g31-experiences-page .g31-xp-hero .g31-member-copy>p{
    max-width:820px!important;
    line-height:1.55!important;
}
.g31-experiences-page .g31-xp-hero-stat{
    min-width:120px!important;
    padding:18px 20px!important;
}

/* Discovery filters become a lightweight toolbar instead of a large box. */
.g31-experiences-page .g31-xp-discovery{
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
    padding:8px 0 18px!important;
    margin-bottom:10px!important;
}
.g31-experiences-page .g31-xp-filter-row{
    gap:8px!important;
}
.g31-experiences-page .g31-xp-filter,
.g31-experiences-page .g31-xp-quick-filter{
    min-height:34px!important;
    padding:7px 12px!important;
    font-size:12px!important;
    background:#fff!important;
    border:1px solid #e5e7eb!important;
    box-shadow:0 2px 7px rgba(15,23,42,.035)!important;
}
.g31-experiences-page .g31-xp-filter.is-active,
.g31-experiences-page .g31-xp-quick-filter.is-active{
    border-color:#ef4056!important;
    color:#ef4056!important;
    background:#fff7f8!important;
}
.g31-experiences-page .g31-xp-quick-filters{
    margin-top:9px!important;
}
.g31-experiences-page .g31-xp-filter-count{
    margin:9px 0 0!important;
    font-size:12px!important;
    color:#8a94a6!important;
}

/* Give cards more readable typography and a little more internal breathing room. */
.g31-experiences-page .g31-xp-body{
    padding:20px 20px 18px!important;
}
.g31-experiences-page .g31-xp-body h3{
    font-size:19px!important;
    line-height:1.22!important;
    margin-top:13px!important;
    margin-bottom:10px!important;
}
.g31-experiences-page .g31-xp-meta{
    font-size:12.5px!important;
    line-height:1.5!important;
    gap:5px!important;
}
.g31-experiences-page .g31-xp-excerpt{
    font-size:13px!important;
    line-height:1.52!important;
    display:-webkit-box!important;
    -webkit-line-clamp:3!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
}
.g31-experiences-page .g31-xp-host{
    margin-bottom:10px!important;
}
.g31-experiences-page .g31-xp-host img{
    width:40px!important;
    height:40px!important;
}

/* Circle attribution: visual, linked and clearly connected to Circles. */
.g31-experiences-page .g31-xp-shared-circles{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    margin:5px 0 9px!important;
}
.g31-experiences-page .g31-xp-circle-pill{
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    width:auto!important;
    padding:5px 9px 5px 5px!important;
    border:1px solid #e6e8ed!important;
    border-radius:999px!important;
    background:#f8fafc!important;
    color:#344054!important;
    text-decoration:none!important;
    font-size:11px!important;
    line-height:1.12!important;
}
.g31-experiences-page .g31-xp-circle-pill:hover{
    border-color:#ef4056!important;
    color:#ef4056!important;
}
.g31-experiences-page .g31-xp-circle-pill img,
.g31-experiences-page .g31-xp-circle-fallback{
    width:27px!important;
    height:27px!important;
    border-radius:50%!important;
    object-fit:cover!important;
    flex:0 0 27px!important;
}
.g31-experiences-page .g31-xp-circle-fallback{
    display:grid!important;
    place-items:center!important;
    background:#fff!important;
    border:1px solid #d9dde5!important;
}
.g31-experiences-page .g31-xp-circle-pill small{
    display:block!important;
    font-size:8.5px!important;
    color:#98a2b3!important;
    margin-bottom:2px!important;
}

/* Stronger attendance row. */
.g31-experiences-page .g31-xp-social-row{
    padding-top:14px!important;
    margin-top:14px!important;
}
.g31-experiences-page .g31-xp-attendees img{
    width:32px!important;
    height:32px!important;
}
.g31-experiences-page .g31-xp-going-copy strong{
    font-size:12.5px!important;
}
.g31-experiences-page .g31-xp-going-copy span{
    font-size:10.5px!important;
}
.g31-experiences-page .g31-xp-places strong{
    color:#ef4056!important;
}

/* A deliberate end to the discovery page instead of empty white space. */
.g31-experiences-page .g31-xp-end-cta{
    margin:48px 0 18px!important;
    padding:28px 32px!important;
    border:1px solid #e7e9ee!important;
    border-radius:20px!important;
    background:#f8fafc!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:28px!important;
}
.g31-experiences-page .g31-xp-end-cta h2{
    margin:5px 0 4px!important;
    font-size:25px!important;
}
.g31-experiences-page .g31-xp-end-cta p{
    margin:0!important;
    color:#667085!important;
}
.g31-experiences-page .g31-xp-end-actions{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    flex-wrap:wrap!important;
}
.g31-experiences-page .g31-xp-end-primary,
.g31-experiences-page .g31-xp-end-secondary{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    padding:0 17px!important;
    border-radius:10px!important;
    font-size:12px!important;
    font-weight:700!important;
    text-decoration:none!important;
    white-space:nowrap!important;
}
.g31-experiences-page .g31-xp-end-primary{
    background:#ef4056!important;
    color:#fff!important;
}
.g31-experiences-page .g31-xp-end-secondary{
    background:#fff!important;
    color:#111827!important;
    border:1px solid #dfe3e9!important;
}

@media(max-width:800px){
    .g31-experiences-page .g31-xp-end-cta{
        display:block!important;
        padding:24px!important;
    }
    .g31-experiences-page .g31-xp-end-actions{
        margin-top:18px!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.10 — Conservative Circles polish
   IMPORTANT: no grid, sidebar, width or directory-layout overrides.
   ========================================================== */

/* Banner copy refinement only. */
.g31-community-copy h1{
    max-width:760px;
}
.g31-community-copy p{
    max-width:780px;
}

/* Keep the existing stable card footprint; refine internal rhythm only. */
body .g31-circle-card{
    padding:13px!important;
}
body .g31-circle-card .g31-circle-image,
body .g31-circle-card .bs-group-cover,
body .g31-circle-card .bb-cover-list-item,
body .g31-circle-card .group-cover,
body .g31-circle-card .item-avatar,
body .g31-circle-card .group-avatar,
body .g31-circle-card .groups-avatar{
    position:relative!important;
    margin-bottom:14px!important;
}

/* Small round Circle identity/avatar over the bottom-left of the photo. */
body .g31-circle-logo-badge{
    position:absolute!important;
    left:11px!important;
    bottom:-15px!important;
    z-index:12!important;
    display:block!important;
    width:34px!important;
    height:34px!important;
    padding:2px!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 4px 12px rgba(0,0,0,.24)!important;
    pointer-events:none!important;
}
body .g31-circle-logo-badge img{
    display:block!important;
    width:30px!important;
    height:30px!important;
    border-radius:50%!important;
    object-fit:cover!important;
}

/* Leave room for the overlapping identity mark without enlarging the card. */
body .g31-circle-card .g31-circle-title,
body .g31-circle-card .item-title,
body .g31-circle-card .groups-title,
body .g31-circle-card .group-name{
    margin-top:17px!important;
    margin-bottom:4px!important;
}
body .g31-circle-card .g31-circle-title a,
body .g31-circle-card .item-title a,
body .g31-circle-card .groups-title a,
body .g31-circle-card .group-name a{
    font-size:14px!important;
    line-height:1.18!important;
}

/* Descriptions stay readable but consume less vertical space. */
body .g31-circle-card .g31-circle-description,
body .g31-circle-card .item-desc,
body .g31-circle-card .group-description{
    min-height:0!important;
    margin:7px 0 10px!important;
    font-size:10.5px!important;
    line-height:1.42!important;
    display:-webkit-box!important;
    -webkit-line-clamp:4!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
}

/* Compact meta/activity line. */
body .g31-circle-card .g31-circle-meta,
body .g31-circle-card .item-meta,
body .g31-circle-card .groups-meta,
body .g31-circle-card .group-meta{
    margin-bottom:6px!important;
    font-size:9px!important;
    line-height:1.35!important;
}

/* Make the member row easier to scan without changing its structure. */
body .g31-circle-card .group-members,
body .g31-circle-card .group-members-wrap,
body .g31-circle-card .bs-group-members,
body .g31-circle-card .item-avatar-list{
    margin-top:auto!important;
    margin-bottom:9px!important;
}
body .g31-circle-card .group-members img,
body .g31-circle-card .group-members-wrap img,
body .g31-circle-card .bs-group-members img,
body .g31-circle-card .item-avatar-list img{
    width:25px!important;
    height:25px!important;
    border:2px solid #fff!important;
}

/* Cleaner status/action button while preserving BuddyBoss behaviour. */
body .g31-circle-card .group-button a,
body .g31-circle-card .group-button button,
body .g31-circle-card .generic-button a,
body .g31-circle-card .action a,
body .g31-circle-card .action button{
    min-height:34px!important;
    padding:7px 10px!important;
    border-radius:7px!important;
    font-size:10px!important;
    font-weight:700!important;
}
body .g31-circle-footer-rule{
    margin:9px 0 8px!important;
}


/* ==========================================================
   Gathr31 v2.8.11 — Circles internal spacing correction
   No grid / width / image / sidebar changes.
   ========================================================== */

/* Reduce the artificial card height that was creating the large empty
   middle zone on Circles with short descriptions. */
body .g31-circle-card{
    min-height:500px!important;
}

/* Stop the member row being pushed to the absolute bottom by margin-top:auto.
   Keep it naturally close to the description instead. */
body .g31-circle-card .group-members,
body .g31-circle-card .group-members-wrap,
body .g31-circle-card .bs-group-members,
body .g31-circle-card .item-avatar-list{
    margin-top:12px!important;
    margin-bottom:8px!important;
}

/* Likewise, don't force action wrappers to the bottom of the flex card. */
body .g31-circle-card .g31-circle-actions,
body .g31-circle-card .action,
body .g31-circle-card .group-button,
body .g31-circle-card .generic-button{
    margin-top:0!important;
}

/* Slightly tighten the description/footer rhythm. */
body .g31-circle-card .g31-circle-description,
body .g31-circle-card .item-desc,
body .g31-circle-card .group-description{
    margin-bottom:8px!important;
}
body .g31-circle-footer-rule{
    margin:7px 0 8px!important;
}

/* Allow the card body/content wrappers to size naturally rather than
   stretching to fill the remaining column height. */
body .g31-circle-card .item,
body .g31-circle-card .item-block,
body .g31-circle-card .group-content,
body .g31-circle-card .groups-meta-wrap{
    flex:0 0 auto!important;
    min-height:0!important;
}

/* On cards with very little copy, keep the action visually attached to
   the member row instead of floating low in the card. */
body .g31-circle-card .group-members + .g31-circle-footer-rule,
body .g31-circle-card .group-members-wrap + .g31-circle-footer-rule,
body .g31-circle-card .bs-group-members + .g31-circle-footer-rule,
body .g31-circle-card .item-avatar-list + .g31-circle-footer-rule{
    margin-top:7px!important;
}


/* ==========================================================
   Gathr31 v2.8.12 — Circles page shell cleanup
   White canvas + no BuddyBoss left sidebar.
   Cards/photos/layout remain untouched.
   ========================================================== */

/* Make the dedicated Circles page use the same white application canvas
   as Members Home and Experiences. */
body.g31-circles-directory,
body.g31-circles-directory #page,
body.g31-circles-directory .site,
body.g31-circles-directory .site-content,
body.g31-circles-directory .bb-grid,
body.g31-circles-directory .bb-buddypress-content-wrap,
body.g31-circles-directory #buddypress,
body.g31-circles-directory .buddypress-wrap,
body.g31-circles-directory #primary,
body.g31-circles-directory main{
    background:#fff!important;
}

/* Remove the distracting BuddyBoss left navigation only on the Circles
   directory. This does not affect Circle detail pages or other community pages. */
body.g31-circles-directory .buddypanel,
body.g31-circles-directory .bb-left-panel,
body.g31-circles-directory #secondary,
body.g31-circles-directory .bb-buddypanel,
body.g31-circles-directory .buddypress-sidebar{
    display:none!important;
}

/* Reclaim the horizontal space the sidebar occupied without touching
   the stable four-column card grid. */
body.g31-circles-directory .site-content,
body.g31-circles-directory .bb-grid,
body.g31-circles-directory .bb-buddypress-content-wrap,
body.g31-circles-directory #primary{
    margin-left:0!important;
    width:100%!important;
    max-width:none!important;
}

/* Keep the directory itself comfortably centred rather than stretching
   cards endlessly across very large screens. */
body.g31-circles-directory #buddypress,
body.g31-circles-directory .buddypress-wrap{
    width:min(1320px,calc(100% - 48px))!important;
    max-width:1320px!important;
    margin-left:auto!important;
    margin-right:auto!important;
}

/* Clean up the transition from the white community banner into the directory. */
body.g31-circles-directory .g31-community-shell{
    margin-bottom:0!important;
    border-bottom:1px solid #eceff3!important;
    background:#fff!important;
}
body.g31-circles-directory .g31-community-nav{
    background:#fff!important;
}

/* The BuddyBoss directory controls should sit on white, not a dark strip. */
body.g31-circles-directory .subnav-filters,
body.g31-circles-directory .bb-subnav-filters-container,
body.g31-circles-directory .groups-type-navs,
body.g31-circles-directory .bp-navs,
body.g31-circles-directory .dir-search,
body.g31-circles-directory .item-list-tabs{
    background:#fff!important;
    color:#111827!important;
}

/* Add some breathing room around the card area on the new white canvas. */
body.g31-circles-directory #groups-list,
body.g31-circles-directory .groups-list,
body.g31-circles-directory .bp-list.groups-list{
    margin-top:18px!important;
    margin-bottom:32px!important;
}

/* Preserve the dark cards intentionally: they now read as premium content
   cards against the same white Gathr31 canvas used elsewhere. */
body.g31-circles-directory .g31-circle-card{
    box-shadow:0 12px 30px rgba(15,23,42,.12)!important;
}

@media(max-width:900px){
    body.g31-circles-directory #buddypress,
    body.g31-circles-directory .buddypress-wrap{
        width:min(100% - 24px,1320px)!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.13 — Circles hero + full-width directory polish
   Keeps the proven card/photo dimensions.
   ========================================================== */

/* Remove the boxed / mini-page feeling created by nested BuddyBoss wrappers. */
body.g31-circles-directory #page,
body.g31-circles-directory .site,
body.g31-circles-directory .site-content,
body.g31-circles-directory .container,
body.g31-circles-directory .bb-grid,
body.g31-circles-directory .bb-buddypress-content-wrap{
    border:0!important;
    box-shadow:none!important;
}

/* Experiences-style hero: broad dark statement area, not a small white panel. */
body.g31-circles-directory .g31-community-shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:#0d1117!important;
}
body.g31-circles-directory .g31-community-bar{
    width:min(1320px,calc(100% - 48px))!important;
    max-width:1320px!important;
    margin:0 auto!important;
    padding:42px 0 38px!important;
    background:transparent!important;
    border:0!important;
}
body.g31-circles-directory .g31-community-copy .g31-eyebrow,
body.g31-circles-directory .g31-community-copy h1,
body.g31-circles-directory .g31-community-copy p{
    color:#fff!important;
}
body.g31-circles-directory .g31-community-copy .g31-eyebrow{
    color:#ef4056!important;
}
body.g31-circles-directory .g31-community-copy h1{
    font-size:clamp(30px,3vw,46px)!important;
    line-height:1.08!important;
    max-width:900px!important;
    margin:7px 0 10px!important;
}
body.g31-circles-directory .g31-community-copy p{
    max-width:780px!important;
    color:#c7ced8!important;
    font-size:14px!important;
}

/* Hide the redundant Back to Home button and second navigation row.
   The global Gathr31 header already provides navigation. */
body.g31-circles-directory .g31-community-actions,
body.g31-circles-directory .g31-community-nav{
    display:none!important;
}

/* Directory gets a generous, normal full-page width under the hero. */
body.g31-circles-directory #buddypress,
body.g31-circles-directory .buddypress-wrap{
    width:min(1320px,calc(100% - 48px))!important;
    max-width:1320px!important;
    margin:30px auto 50px!important;
    padding:0!important;
    border:0!important;
}

/* Clean toolbar rather than a heavy black bar. */
body.g31-circles-directory .subnav-filters,
body.g31-circles-directory .bb-subnav-filters-container,
body.g31-circles-directory .groups-type-navs{
    min-height:54px!important;
    padding:8px 10px!important;
    border:1px solid #e6e9ee!important;
    border-radius:14px!important;
    background:#fff!important;
    box-shadow:0 5px 18px rgba(15,23,42,.05)!important;
}

/* Grid only: hide all BuddyBoss grid/list toggles and generic create control. */
body.g31-circles-directory .bp-list-grid,
body.g31-circles-directory .grid-list-view,
body.g31-circles-directory .bb-grid-list,
body.g31-circles-directory .layout-view,
body.g31-circles-directory .view-style,
body.g31-circles-directory .groups-view-switcher,
body.g31-circles-directory .g31-bb-create-circle-hidden{
    display:none!important;
}

/* Super Gatherer Host create action. */
body.g31-circles-directory .g31-circle-host-create{
    margin-left:auto!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    min-height:38px!important;
    padding:6px 13px!important;
    border-radius:9px!important;
    background:#ef4056!important;
    color:#fff!important;
    text-decoration:none!important;
    font-size:12px!important;
    font-weight:800!important;
}
body.g31-circles-directory .g31-circle-host-create small{
    display:block!important;
    margin-left:3px!important;
    font-size:9px!important;
    font-weight:600!important;
    opacity:.8!important;
}

/* Cards remain the known-good size/photo treatment from v2.8.12. */
body.g31-circles-directory .g31-circle-card{
    box-shadow:0 10px 25px rgba(15,23,42,.10)!important;
}

/* Clear ending / more-discovery treatment. */
body.g31-circles-directory .g31-circles-discover-more{
    margin:34px 0 0!important;
    padding:23px 26px!important;
    display:flex!important;
    align-items:center!important;
    gap:12px 22px!important;
    flex-wrap:wrap!important;
    border:1px solid #e6e9ee!important;
    border-radius:16px!important;
    background:#f8fafc!important;
}
body.g31-circles-directory .g31-circles-discover-more strong{
    font-size:17px!important;
    color:#111827!important;
}
body.g31-circles-directory .g31-circles-discover-more span{
    color:#667085!important;
    font-size:12px!important;
}
body.g31-circles-directory .g31-circles-discover-more a{
    margin-left:auto!important;
    color:#ef4056!important;
    font-size:12px!important;
    font-weight:800!important;
    text-decoration:none!important;
}

@media(max-width:700px){
    body.g31-circles-directory .g31-community-bar,
    body.g31-circles-directory #buddypress,
    body.g31-circles-directory .buddypress-wrap{
        width:calc(100% - 24px)!important;
    }
    body.g31-circles-directory .g31-circles-discover-more a{
        margin-left:0!important;
        width:100%!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.14 — Circles unified page / Experiences-style hero
   Card/photo system deliberately untouched.
   ========================================================== */

/* The whole Circles experience uses the browser width like Experiences.
   Remove theme container max-widths that created the framed-page effect. */
body.g31-circles-directory .site-content,
body.g31-circles-directory .container,
body.g31-circles-directory .bb-grid,
body.g31-circles-directory .bb-buddypress-content-wrap,
body.g31-circles-directory #primary,
body.g31-circles-directory main.site-main{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
}

/* Rounded hero like Experiences: inset from browser edges, not a disconnected
   full-bleed black strip. */
body.g31-circles-directory .g31-community-shell{
    width:calc(100% - 48px)!important;
    max-width:none!important;
    margin:22px 24px 0!important;
    border-radius:24px!important;
    overflow:hidden!important;
    background:#0d1117!important;
    box-shadow:0 14px 35px rgba(15,23,42,.10)!important;
}
body.g31-circles-directory .g31-community-bar{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:40px clamp(28px,4vw,62px) 36px!important;
    border:0!important;
    background:
      radial-gradient(circle at 92% 18%,rgba(239,64,86,.13),transparent 27%),
      #0d1117!important;
}
body.g31-circles-directory .g31-community-copy{
    width:100%!important;
    max-width:1100px!important;
}

/* No Back to Home button in the hero; top navigation already does that job. */
body.g31-circles-directory .g31-community-home-link{
    display:none!important;
}

/* Useful controls now live IN the hero, like Experiences filters. */
body.g31-circles-directory .g31-circles-hero-controls{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:8px!important;
    margin-top:22px!important;
}
body.g31-circles-directory .g31-circles-hero-count,
body.g31-circles-directory .g31-circles-hero-select,
body.g31-circles-directory .g31-circles-hero-select select{
    min-height:36px!important;
    border-radius:999px!important;
}
body.g31-circles-directory .g31-circles-hero-count{
    display:inline-flex!important;
    align-items:center!important;
    padding:0 13px!important;
    border:1px solid rgba(255,255,255,.20)!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
}
body.g31-circles-directory .g31-circles-hero-select{
    display:inline-flex!important;
    align-items:center!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
}
body.g31-circles-directory .g31-circles-hero-select select{
    appearance:auto!important;
    min-width:132px!important;
    padding:0 12px!important;
    border:1px solid rgba(255,255,255,.20)!important;
    background:#fff!important;
    color:#111827!important;
    font-size:11px!important;
    font-weight:700!important;
}
body.g31-circles-directory .g31-circles-hero-controls .g31-circle-host-create{
    margin-left:2px!important;
    min-height:36px!important;
    border-radius:999px!important;
    padding:6px 15px!important;
}

/* Once controls are in the hero, the old BuddyBoss black toolbar no longer
   needs to look like a second header. Keep only any residual functional UI. */
body.g31-circles-directory .subnav-filters,
body.g31-circles-directory .bb-subnav-filters-container{
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    box-shadow:none!important;
    background:transparent!important;
}
body.g31-circles-directory .subnav-filters:empty,
body.g31-circles-directory .bb-subnav-filters-container:empty{
    display:none!important;
}

/* Main directory spans the same broad canvas as Experiences. */
body.g31-circles-directory #buddypress,
body.g31-circles-directory .buddypress-wrap{
    width:calc(100% - 48px)!important;
    max-width:none!important;
    margin:28px 24px 52px!important;
    padding:0 clamp(0px,1.5vw,22px)!important;
    border:0!important;
    box-shadow:none!important;
}

/* Ensure the global desktop Gathr31 menu is visible on Circles too.
   These rules mirror the safe Members Home header treatment, without
   touching the card directory. */
@media(min-width:1180px){
    body.g31-circles-directory #masthead .main-navigation,
    body.g31-circles-directory #masthead .primary-menu,
    body.g31-circles-directory #masthead .bb-primary-menu,
    body.g31-circles-directory #masthead .main-navigation > ul{
        display:flex!important;
        flex:1 1 auto!important;
        align-items:center!important;
        flex-wrap:nowrap!important;
        min-width:0!important;
        max-width:none!important;
        white-space:nowrap!important;
        overflow:visible!important;
    }
    body.g31-circles-directory #masthead .main-navigation li > a,
    body.g31-circles-directory #masthead .primary-menu li > a,
    body.g31-circles-directory #masthead .bb-primary-menu li > a{
        padding-left:8px!important;
        padding-right:8px!important;
        font-size:12.5px!important;
        white-space:nowrap!important;
    }
}
body.g31-circles-directory #masthead .more-button,
body.g31-circles-directory #masthead .bb-more-menu,
body.g31-circles-directory #masthead .menu-item-more,
body.g31-circles-directory #masthead li.more,
body.g31-circles-directory #masthead .bb-nav-more{
    visibility:visible!important;
    opacity:1!important;
}

/* Generic duplicate Create New stays gone. */
body.g31-circles-directory .g31-bb-create-circle-hidden{
    display:none!important;
}

@media(max-width:700px){
    body.g31-circles-directory .g31-community-shell{
        width:calc(100% - 24px)!important;
        margin:12px 12px 0!important;
        border-radius:18px!important;
    }
    body.g31-circles-directory .g31-community-bar{
        padding:30px 22px 27px!important;
    }
    body.g31-circles-directory #buddypress,
    body.g31-circles-directory .buddypress-wrap{
        width:calc(100% - 24px)!important;
        margin:22px 12px 40px!important;
        padding:0!important;
    }
}

/* Gathr31 v2.8.15 — Circles aligned to Experiences. Cards/photos untouched. */
html body.g31-circles-directory #page,
html body.g31-circles-directory .site,
html body.g31-circles-directory #content,
html body.g31-circles-directory .site-content,
html body.g31-circles-directory .container,
html body.g31-circles-directory .bb-grid,
html body.g31-circles-directory .bb-buddypress-content-wrap,
html body.g31-circles-directory #primary,
html body.g31-circles-directory main.site-main{
 width:100%!important;max-width:100%!important;margin-left:0!important;margin-right:0!important;
 padding-left:0!important;padding-right:0!important;border:0!important;box-shadow:none!important;transform:none!important;
}
html body.g31-circles-directory .g31-community-shell{
 box-sizing:border-box!important;width:calc(100vw - 24px)!important;max-width:none!important;
 margin:12px 12px 0!important;border:0!important;border-radius:22px!important;overflow:hidden!important;
 background:#111827!important;box-shadow:none!important;
}
html body.g31-circles-directory .g31-community-bar{
 position:relative!important;box-sizing:border-box!important;display:block!important;width:100%!important;max-width:none!important;
 min-height:250px!important;margin:0!important;padding:34px 42px 78px!important;
 background:radial-gradient(circle at 91% 12%,rgba(239,64,86,.18),transparent 28%),linear-gradient(120deg,#111827 0%,#142033 70%,#20213b 100%)!important;
}
html body.g31-circles-directory .g31-community-copy{width:min(820px,70%)!important;max-width:820px!important;}
html body.g31-circles-directory .g31-community-copy h1{font-size:clamp(31px,3vw,48px)!important;max-width:760px!important;}
html body.g31-circles-directory .g31-community-copy p{max-width:760px!important;}
html body.g31-circles-directory .g31-circles-hero-actions{display:flex!important;gap:9px!important;margin-top:20px!important;}
html body.g31-circles-directory .g31-circles-hero-actions .g31-circle-host-create{
 margin:0!important;min-height:38px!important;padding:8px 16px!important;border-radius:8px!important;
 background:#ef4056!important;color:#fff!important;box-shadow:none!important;
}
html body.g31-circles-directory .g31-circles-hero-filters{
 position:absolute!important;right:38px!important;bottom:28px!important;z-index:5!important;
 display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:8px!important;margin:0!important;
}
html body.g31-circles-directory .g31-circles-hero-select{
 position:relative!important;display:inline-flex!important;align-items:center!important;gap:6px!important;margin:0!important;padding:0!important;
 background:transparent!important;border:0!important;
}
html body.g31-circles-directory .g31-circles-hero-select:before{
 content:attr(data-g31-label)!important;color:#d5dae2!important;font-size:10px!important;font-weight:700!important;white-space:nowrap!important;
}
html body.g31-circles-directory .g31-circles-hero-select select{
 width:auto!important;min-width:125px!important;height:36px!important;min-height:36px!important;margin:0!important;
 padding:0 28px 0 11px!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:8px!important;
 background:#fff!important;color:#111827!important;font-size:10.5px!important;font-weight:700!important;
}
html body.g31-circles-directory .g31-circles-toolbar-cleaned{display:none!important;}
html body.g31-circles-directory #buddypress,
html body.g31-circles-directory .buddypress-wrap{
 box-sizing:border-box!important;width:calc(100vw - 24px)!important;max-width:none!important;margin:28px 12px 52px!important;
 padding:0!important;border:0!important;box-shadow:none!important;
}
html body.g31-circles-directory #buddypress > .bp-wrap,
html body.g31-circles-directory .buddypress-wrap > .bp-wrap,
html body.g31-circles-directory .groups-directory-wrapper,
html body.g31-circles-directory .groups-directory-container,
html body.g31-circles-directory .directory.groups{
 width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;
}
@media(min-width:1050px){
 html body.g31-circles-directory #masthead .site-header-container,
 html body.g31-circles-directory #masthead .bb-header-row{
  width:100%!important;max-width:none!important;padding-left:18px!important;padding-right:18px!important;
 }
 html body.g31-circles-directory #masthead .main-navigation,
 html body.g31-circles-directory #masthead .primary-menu,
 html body.g31-circles-directory #masthead .bb-primary-menu,
 html body.g31-circles-directory #masthead .main-navigation > ul{
  display:flex!important;flex:1 1 auto!important;align-items:center!important;flex-wrap:nowrap!important;
  width:auto!important;min-width:520px!important;max-width:none!important;overflow:visible!important;white-space:nowrap!important;
 }
 html body.g31-circles-directory #masthead .main-navigation li,
 html body.g31-circles-directory #masthead .primary-menu li,
 html body.g31-circles-directory #masthead .bb-primary-menu li{
  visibility:visible!important;opacity:1!important;
 }
 html body.g31-circles-directory #masthead .main-navigation li > a,
 html body.g31-circles-directory #masthead .primary-menu li > a,
 html body.g31-circles-directory #masthead .bb-primary-menu li > a{
  padding-left:9px!important;padding-right:9px!important;font-size:12px!important;white-space:nowrap!important;
 }
}
html body.g31-circles-directory .g31-community-nav,
html body.g31-circles-directory .g31-community-home-link,
html body.g31-circles-directory .g31-bb-create-circle-hidden{display:none!important;}
@media(max-width:700px){
 html body.g31-circles-directory .g31-community-shell,
 html body.g31-circles-directory #buddypress,
 html body.g31-circles-directory .buddypress-wrap{
  width:calc(100vw - 16px)!important;margin-left:8px!important;margin-right:8px!important;
 }
 html body.g31-circles-directory .g31-community-bar{min-height:0!important;padding:28px 22px 88px!important;}
 html body.g31-circles-directory .g31-community-copy{width:100%!important;}
 html body.g31-circles-directory .g31-circles-hero-filters{
  left:22px!important;right:22px!important;bottom:22px!important;justify-content:flex-start!important;
 }
}


/* ==========================================================
   Gathr31 v2.8.16 — Circles finishing pass
   5-column desktop grid + header/menu repair + remove Groups bar.
   ========================================================== */

/* Remove the last detached BuddyBoss directory strip ("Groups(10)"). */
html body.g31-circles-directory .groups-type-navs,
html body.g31-circles-directory .bp-navs.bp-subnavs,
html body.g31-circles-directory .item-list-tabs,
html body.g31-circles-directory .bp-navs.groups-nav{
    display:none!important;
}

/* Five Circles across on large desktop, centred across the page.
   Flex rather than CSS grid lets an incomplete final row centre naturally. */
html body.g31-circles-directory .g31-five-circle-grid{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
    align-items:stretch!important;
    gap:22px!important;
    width:100%!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:0!important;
}
html body.g31-circles-directory .g31-five-circle-grid > li,
html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card{
    flex:0 1 calc((100% - 88px) / 5)!important;
    width:calc((100% - 88px) / 5)!important;
    max-width:260px!important;
    min-width:210px!important;
    margin:0!important;
}

/* Keep the card proportions currently working; only use available page width. */
html body.g31-circles-directory .g31-five-circle-grid .g31-circle-card{
    width:100%!important;
    max-width:none!important;
}

/* Responsive fallbacks: 4 -> 3 -> 2 -> 1, all centred. */
@media(max-width:1450px){
    html body.g31-circles-directory .g31-five-circle-grid > li,
    html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card{
        flex-basis:calc((100% - 66px) / 4)!important;
        width:calc((100% - 66px) / 4)!important;
        max-width:270px!important;
    }
}
@media(max-width:1120px){
    html body.g31-circles-directory .g31-five-circle-grid > li,
    html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card{
        flex-basis:calc((100% - 44px) / 3)!important;
        width:calc((100% - 44px) / 3)!important;
        max-width:300px!important;
    }
}
@media(max-width:820px){
    html body.g31-circles-directory .g31-five-circle-grid > li,
    html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card{
        flex-basis:calc((100% - 22px) / 2)!important;
        width:calc((100% - 22px) / 2)!important;
        max-width:340px!important;
    }
}
@media(max-width:560px){
    html body.g31-circles-directory .g31-five-circle-grid > li,
    html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card{
        flex-basis:100%!important;
        width:100%!important;
        max-width:420px!important;
    }
}

/* Gathr31 v2.9.10 - secondary Founding Member recognition badge */
.g31-founding-member-badge{
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    margin:0!important;
    padding:7px 11px!important;
    border:1px solid rgba(201,151,42,.48)!important;
    border-radius:999px!important;
    background:linear-gradient(135deg,#fff9e8,#f7e8b7)!important;
    color:#7a5610!important;
    font-size:11px!important;
    font-weight:900!important;
    line-height:1!important;
    letter-spacing:.01em!important;
    white-space:nowrap!important;
    vertical-align:middle!important;
    box-shadow:0 3px 10px rgba(122,86,16,.08)!important;
}
.g31-founding-member-badge::before{
    content:"✦";
    color:#c9972a;
    font-size:10px;
}
.g31-founding-member-badge-inline{
    margin-left:6px!important;
    padding:5px 9px!important;
    font-size:10px!important;
}
.g31-founding-member-badge-small{
    margin-left:6px!important;
    padding:5px 9px!important;
    font-size:10px!important;
}
.g31-founding-member-badge-home{
    margin-left:7px!important;
    background:rgba(255,249,232,.95)!important;
}
.g31-native-profile-meta .g31-founding-member-badge-profile{
    border-color:rgba(255,221,128,.62)!important;
    background:rgba(255,248,222,.94)!important;
    color:#6b4907!important;
}

/* Gathr31 v2.8.85 — Circle members, Hosts, invitations and visibility. */
.g31-circle-host-manager{
    width:min(100% - 30px,1040px);
    margin:24px auto!important;
    padding:24px!important;
    border:1px solid #eaecf0!important;
    border-radius:16px!important;
    background:#fff!important;
    box-shadow:0 8px 24px rgba(16,24,40,.06)!important;
}
.g31-circle-host-manager-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin-bottom:14px;
}
.g31-circle-host-manager-kicker{
    color:#ef4056!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.12em!important;
}
.g31-circle-host-manager-head h2{margin:3px 0 2px!important;color:#101828!important;font-size:20px!important;}
.g31-circle-host-manager-head p{margin:0!important;color:#667085!important;font-size:11px!important;}
.g31-circle-host-manager-count{padding:6px 9px;border-radius:999px;background:#f2f4f7;color:#475467;font-size:9px;font-weight:850;white-space:nowrap;}
.g31-circle-member-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.g31-circle-visibility{display:grid;grid-template-columns:minmax(230px,1fr) minmax(240px,auto) auto;align-items:center;gap:12px;margin:0 0 14px!important;padding:12px 14px!important;border:1px solid #d0d5dd!important;border-radius:12px!important;background:#f8fafc!important;}
.g31-circle-visibility-copy{display:flex;align-items:center;gap:10px;min-width:0;}
.g31-circle-visibility-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;background:#fff;color:#ef4056;font-size:17px;font-weight:900;}
.g31-circle-visibility-copy strong,.g31-circle-visibility-copy small{display:block;}
.g31-circle-visibility-copy strong{color:#101828;font-size:11px;}
.g31-circle-visibility-copy small{margin-top:2px;color:#667085;font-size:9px;}
.g31-circle-visibility label{margin:0!important;}
.g31-circle-visibility select{width:100%!important;min-height:36px!important;margin:0!important;padding:6px 30px 6px 9px!important;border:1px solid #d0d5dd!important;border-radius:8px!important;background-color:#fff!important;color:#344054!important;font-size:9px!important;font-weight:800!important;}
.g31-circle-visibility>button{min-height:36px;padding:7px 11px;border:1px solid #101828;border-radius:8px;background:#101828;color:#fff;font-size:9px;font-weight:900;white-space:nowrap;cursor:pointer;}
.g31-circle-visibility>button:hover,.g31-circle-visibility>button:focus{background:#344054;}
.g31-circle-invite-toggle{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:34px!important;padding:7px 11px!important;border:1px solid #ef4056!important;border-radius:9px!important;background:#ef4056!important;color:#fff!important;font-size:9px!important;font-weight:900!important;line-height:1!important;cursor:pointer!important;}
.g31-circle-invite-toggle:hover,.g31-circle-invite-toggle:focus{border-color:#d92d48!important;background:#d92d48!important;color:#fff!important;}
.g31-circle-invite-panel{margin:0 0 16px;padding:16px;border:1px solid #fecdd3;border-radius:13px;background:#fff7f8;}
.g31-circle-invite-panel[hidden]{display:none!important;}
.g31-circle-invite-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px;}
.g31-circle-invite-panel-head strong,.g31-circle-invite-panel-head span{display:block;}
.g31-circle-invite-panel-head strong{color:#101828;font-size:13px;}
.g31-circle-invite-panel-head span{margin-top:2px;color:#667085;font-size:10px;}
.g31-circle-invite-panel-head button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border:0;border-radius:50%;background:#fff;color:#667085;font-size:20px;line-height:1;cursor:pointer;}
.g31-circle-invite-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:330px;overflow:auto;}
.g31-circle-invite-person{display:flex!important;align-items:center!important;gap:9px!important;margin:0!important;padding:9px!important;border:1px solid #eaecf0!important;border-radius:10px!important;background:#fff!important;cursor:pointer!important;}
.g31-circle-invite-person input{width:16px!important;height:16px!important;flex:0 0 16px!important;margin:0!important;accent-color:#ef4056;}
.g31-circle-invite-person img{width:42px!important;height:42px!important;flex:0 0 42px!important;border-radius:50%!important;object-fit:cover!important;}
.g31-circle-invite-person span{min-width:0;}
.g31-circle-invite-person strong,.g31-circle-invite-person small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.g31-circle-invite-person strong{color:#344054;font-size:10px;}
.g31-circle-invite-person small{margin-top:2px;color:#98a2b3;font-size:8px;}
.g31-circle-invite-person:has(input:checked){border-color:#ef4056!important;background:#fff1f3!important;}
.g31-circle-invite-submit{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:12px;padding-top:12px;border-top:1px solid #fecdd3;}
.g31-circle-invite-submit span{color:#667085;font-size:9px;font-weight:800;}
.g31-circle-invite-submit button{min-height:36px;padding:7px 12px;border:1px solid #101828;border-radius:9px;background:#101828;color:#fff;font-size:9px;font-weight:900;cursor:pointer;}
.g31-circle-admin-note{display:flex;align-items:center;gap:8px;margin:0 0 14px;padding:10px 12px;border:1px solid #fecdd3;border-radius:10px;background:#fff1f3;color:#9f1239;font-size:10px;}
.g31-circle-admin-note strong{font-weight:900;white-space:nowrap;}
.g31-circle-admin-note span{color:#be123c;}
.g31-circle-member-search{display:block;margin:0 0 14px!important;}
.g31-circle-member-search input{width:100%!important;min-height:42px!important;margin:0!important;padding:9px 12px!important;border:1px solid #d0d5dd!important;border-radius:10px!important;background:#fff!important;color:#344054!important;font-size:11px!important;box-shadow:none!important;}
.g31-circle-member-search input:focus{border-color:#ef4056!important;box-shadow:0 0 0 3px rgba(239,64,86,.1)!important;outline:0!important;}
.g31-circle-host-manager-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.g31-circle-host-manager-member{display:flex;align-items:center;gap:12px;min-width:0;padding:12px;border:1px solid #eaecf0;border-radius:12px;background:#fcfcfd;}
.g31-circle-member-profile{display:flex!important;align-items:center!important;gap:10px!important;min-width:0!important;flex:1!important;color:#344054!important;text-decoration:none!important;}
.g31-circle-host-manager-member img{width:48px!important;height:48px!important;flex:0 0 48px!important;border-radius:50%!important;object-fit:cover!important;}
.g31-circle-member-profile>span{display:block;min-width:0;}
.g31-circle-host-manager-member strong{display:block;overflow:hidden;color:#344054;font-size:12px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap;}
.g31-circle-role-badge{display:inline-flex;margin-top:4px;padding:4px 7px;border-radius:999px;font-size:8px;font-style:normal;font-weight:900;line-height:1;}
.g31-circle-role-badge.is-host{background:#fff1f3;color:#be123c;}
.g31-circle-role-badge.is-member{background:#f2f4f7;color:#667085;}
.g31-circle-member-actions{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;}
.g31-circle-member-action-form{display:inline-flex!important;margin:0!important;}
.g31-circle-member-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;margin:0!important;padding:6px 9px!important;border:1px solid #d0d5dd!important;border-radius:8px!important;background:#fff!important;color:#475467!important;font-size:9px!important;font-weight:900!important;line-height:1!important;cursor:pointer!important;}
.g31-circle-member-action.is-primary{border-color:#ef4056!important;background:#ef4056!important;color:#fff!important;}
.g31-circle-member-action.is-primary:hover,.g31-circle-member-action.is-primary:focus{border-color:#d92d48!important;background:#d92d48!important;}
.g31-circle-member-action.is-secondary:hover,.g31-circle-member-action.is-secondary:focus{border-color:#98a2b3!important;background:#f8fafc!important;}
.g31-circle-member-action.is-danger{border-color:#fda29b!important;color:#b42318!important;}
.g31-circle-member-action.is-danger:hover,.g31-circle-member-action.is-danger:focus{border-color:#d92d20!important;background:#fff1f3!important;}
.g31-circle-last-host{padding:5px 7px;border-radius:999px;background:#f2f4f7;color:#98a2b3;font-size:8px;font-weight:850;white-space:nowrap;}
.g31-circle-host-manager-empty{margin:0!important;padding:14px;border-radius:10px;background:#f8fafc;color:#667085!important;font-size:11px!important;}
@media(max-width:820px){.g31-circle-host-manager-list{grid-template-columns:1fr;}}
@media(max-width:560px){
    .g31-circle-host-manager{width:calc(100% - 20px);padding:15px!important;}
    .g31-circle-host-manager-head{flex-direction:column;gap:8px;}
    .g31-circle-admin-note{align-items:flex-start;flex-direction:column;}
    .g31-circle-host-manager-member{align-items:flex-start;flex-wrap:wrap;}
    .g31-circle-member-actions{width:100%;padding-left:58px;justify-content:flex-start;}
    .g31-circle-member-head-actions{width:100%;justify-content:flex-start;}
    .g31-circle-visibility{grid-template-columns:1fr;}
    .g31-circle-visibility>button{width:100%;}
    .g31-circle-invite-toggle{flex:1;}
    .g31-circle-invite-list{grid-template-columns:1fr;}
}

/* Top Gathr31 navigation: force the same five items used on Experiences.
   Do not hide BuddyBoss overflow fallback if the viewport genuinely cannot fit them. */
@media(min-width:1180px){
    html body.g31-circles-directory #masthead .site-header-container,
    html body.g31-circles-directory #masthead .bb-header-row{
        display:flex!important;
        align-items:center!important;
        width:100%!important;
        max-width:none!important;
        padding-left:18px!important;
        padding-right:18px!important;
    }

    html body.g31-circles-directory #masthead .main-navigation,
    html body.g31-circles-directory #masthead .main-navigation > ul,
    html body.g31-circles-directory #masthead .primary-menu,
    html body.g31-circles-directory #masthead .bb-primary-menu{
        display:flex!important;
        align-items:center!important;
        flex:1 1 auto!important;
        flex-wrap:nowrap!important;
        width:auto!important;
        min-width:560px!important;
        max-width:none!important;
        overflow:visible!important;
        white-space:nowrap!important;
    }

    html body.g31-circles-directory #masthead .g31-primary-nav-item{
        display:list-item!important;
        visibility:visible!important;
        opacity:1!important;
    }

    html body.g31-circles-directory #masthead .g31-primary-nav-item > a{
        display:flex!important;
        align-items:center!important;
        padding-left:10px!important;
        padding-right:10px!important;
        font-size:12px!important;
        white-space:nowrap!important;
    }
}

/* Restore overflow control as a fallback rather than suppressing access. */
html body.g31-circles-directory #masthead .more-button,
html body.g31-circles-directory #masthead .bb-more-menu,
html body.g31-circles-directory #masthead .menu-item-more,
html body.g31-circles-directory #masthead li.more,
html body.g31-circles-directory #masthead .bb-nav-more{
    display:revert!important;
    visibility:visible!important;
    opacity:1!important;
}

/* Keep the wide Circles page centred like Experiences. */
html body.g31-circles-directory #buddypress,
html body.g31-circles-directory .buddypress-wrap{
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    margin-left:12px!important;
    margin-right:12px!important;
}


/* ==========================================================
   Gathr31 v2.8.17 — Deterministic Circles shell
   Stop depending on BuddyBoss directory header/grid behaviour.
   ========================================================== */

/* Circles gets its own controlled white five-item navigation because
   BuddyBoss does not render the normal primary menu on this directory. */
html body.g31-circles-directory .g31-circles-primary-nav{
    position:relative!important;
    z-index:50!important;
    box-sizing:border-box!important;
    width:100vw!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    border-bottom:1px solid #e8ebef!important;
    box-shadow:0 3px 12px rgba(15,23,42,.035)!important;
}
html body.g31-circles-directory .g31-circles-primary-nav-inner{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    gap:2px!important;
    width:min(1500px,calc(100vw - 48px))!important;
    min-height:64px!important;
    margin:0 auto!important;
}
html body.g31-circles-directory .g31-circles-primary-nav a{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:7px!important;
    min-height:64px!important;
    padding:0 15px!important;
    color:#1f2937!important;
    text-decoration:none!important;
    font-size:13px!important;
    font-weight:700!important;
    white-space:nowrap!important;
}
html body.g31-circles-directory .g31-circles-primary-nav a:hover,
html body.g31-circles-directory .g31-circles-primary-nav a.is-active{
    color:#ef4056!important;
}
html body.g31-circles-directory .g31-circles-primary-nav a.is-active:after{
    content:""!important;
    position:absolute!important;
    left:12px!important;
    right:12px!important;
    bottom:0!important;
    height:3px!important;
    border-radius:3px 3px 0 0!important;
    background:#ef4056!important;
}
html body.g31-circles-directory .g31-circles-primary-nav-icon{
    display:inline-flex!important;
    width:16px!important;
    height:16px!important;
}
html body.g31-circles-directory .g31-circles-primary-nav-icon svg{
    width:16px!important;
    height:16px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.8!important;
}

/* Hide the empty/search-only BuddyBoss header on Circles so we do not have
   two competing top bars. Admin bar remains unaffected. */
html body.g31-circles-directory #masthead,
html body.g31-circles-directory header.site-header{
    display:none!important;
}

/* Hard-remove the residual Groups(n) bar discovered by JS. */
html body.g31-circles-directory .g31-remove-groups-bar{
    display:none!important;
}

/* Also catch common BuddyBoss directory-heading wrappers directly. */
html body.g31-circles-directory .groups-type-navs,
html body.g31-circles-directory .bp-navs.groups-nav,
html body.g31-circles-directory .bp-navs.bp-subnavs,
html body.g31-circles-directory .item-list-tabs.groups-type-navs{
    display:none!important;
}

/* Break the HERO out of every possible parent width constraint. */
html body.g31-circles-directory .g31-community-shell{
    position:relative!important;
    left:50%!important;
    box-sizing:border-box!important;
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    margin:12px 0 0 calc(-50vw + 12px)!important;
}

/* Break the directory out too — this is what v2.8.15/16 were not reaching. */
html body.g31-circles-directory #buddypress,
html body.g31-circles-directory .buddypress-wrap{
    position:relative!important;
    left:50%!important;
    box-sizing:border-box!important;
    width:calc(100vw - 48px)!important;
    max-width:none!important;
    margin:28px 0 52px calc(-50vw + 24px)!important;
    padding:0!important;
}

/* Five card columns, using the current proven card proportions.
   The cards may shrink slightly but their design/photo rules are untouched. */
html body.g31-circles-directory .g31-five-circle-grid{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,230px))!important;
    justify-content:center!important;
    align-items:stretch!important;
    column-gap:20px!important;
    row-gap:22px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
}
html body.g31-circles-directory .g31-five-circle-grid > li,
html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:230px!important;
    margin:0!important;
}

/* Override older four-column/list rules only for the marked canonical grid. */
html body.g31-circles-directory #groups-list.g31-five-circle-grid,
html body.g31-circles-directory .groups-list.g31-five-circle-grid,
html body.g31-circles-directory .bp-list.groups-list.g31-five-circle-grid{
    grid-template-columns:repeat(5,minmax(0,230px))!important;
}

/* Responsive only when five genuinely cannot fit. */
@media(max-width:1260px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid{
        grid-template-columns:repeat(4,minmax(0,230px))!important;
    }
}
@media(max-width:1010px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid{
        grid-template-columns:repeat(3,minmax(0,230px))!important;
    }
}
@media(max-width:760px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid{
        grid-template-columns:repeat(2,minmax(0,230px))!important;
    }
}
@media(max-width:520px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid{
        grid-template-columns:minmax(0,360px)!important;
    }
}

/* Keep the discovery ending on the same broad canvas. */
html body.g31-circles-directory .g31-circles-discover-more{
    width:min(1500px,100%)!important;
    margin-left:auto!important;
    margin-right:auto!important;
}


/* ==========================================================
   Gathr31 v2.8.18 — Circles card recovery
   Keep v2.8.17 hero + top navigation, restore stable cards.
   ========================================================== */

/* Do NOT use the experimental 5-column grid. Restore the stable BuddyBoss
   directory layout that was working in v2.8.15/v2.8.16. */
html body.g31-circles-directory .g31-five-circle-grid,
html body.g31-circles-directory #groups-list.g31-five-circle-grid,
html body.g31-circles-directory .groups-list.g31-five-circle-grid,
html body.g31-circles-directory .bp-list.groups-list.g31-five-circle-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:22px!important;
    width:100%!important;
    max-width:none!important;
    justify-content:stretch!important;
    align-items:stretch!important;
}

/* Restore normal card widths. */
html body.g31-circles-directory .g31-five-circle-grid > li,
html body.g31-circles-directory .g31-five-circle-grid > .g31-circle-card,
html body.g31-circles-directory #groups-list > li,
html body.g31-circles-directory .groups-list > li,
html body.g31-circles-directory .bp-list.groups-list > li{
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    flex:none!important;
    flex-basis:auto!important;
    margin:0!important;
}

/* Remove any width constraints inherited from the experimental pass. */
html body.g31-circles-directory .g31-circle-card{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
}

/* Make sure Circle text is allowed to use normal horizontal line boxes. */
html body.g31-circles-directory .g31-circle-card,
html body.g31-circles-directory .g31-circle-card .item,
html body.g31-circles-directory .g31-circle-card .item-block,
html body.g31-circles-directory .g31-circle-card .group-content,
html body.g31-circles-directory .g31-circle-card .g31-circle-title,
html body.g31-circles-directory .g31-circle-card .item-title,
html body.g31-circles-directory .g31-circle-card .group-name,
html body.g31-circles-directory .g31-circle-card .g31-circle-description,
html body.g31-circles-directory .g31-circle-card .item-desc{
    writing-mode:horizontal-tb!important;
    word-break:normal!important;
    overflow-wrap:break-word!important;
    white-space:normal!important;
}

/* Responsive stable layout. */
@media(max-width:1150px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .bp-list.groups-list.g31-five-circle-grid{
        grid-template-columns:repeat(3,minmax(0,1fr))!important;
    }
}
@media(max-width:850px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .bp-list.groups-list.g31-five-circle-grid{
        grid-template-columns:repeat(2,minmax(0,1fr))!important;
    }
}
@media(max-width:560px){
    html body.g31-circles-directory .g31-five-circle-grid,
    html body.g31-circles-directory #groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .groups-list.g31-five-circle-grid,
    html body.g31-circles-directory .bp-list.groups-list.g31-five-circle-grid{
        grid-template-columns:1fr!important;
    }
}

/* Extra direct catches for the thin BuddyBoss Groups(n) directory strip. */
html body.g31-circles-directory #groups-dir-list > .item-list-tabs,
html body.g31-circles-directory #groups-dir-list > .bp-navs,
html body.g31-circles-directory #groups-dir-list > .groups-type-navs,
html body.g31-circles-directory .g31-remove-groups-bar{
    display:none!important;
}


/* ==========================================================
   Gathr31 v2.8.21 — surgical Groups(n) strip cleanup only
   Base = stable v2.8.18.
   ========================================================== */

/* Common BuddyBoss wrappers for the redundant Groups count bar.
   Scoped tightly to the Circles directory. */
body.g31-circles-directory .groups-type-navs,
body.g31-circles-directory .bp-navs.groups-type-navs,
body.g31-circles-directory .item-list-tabs.groups-type-navs{
    display:none!important;
}

/* Do not alter grid, cards, images, header, hero or sidebars here. */


/* ==========================================================
   Gathr31 v2.8.22 — remove Groups(n) strip only
   Everything else intentionally untouched.
   ========================================================== */

body.g31-circles-directory .groups-type-navs,
body.g31-circles-directory .bp-navs.groups-type-navs,
body.g31-circles-directory .item-list-tabs.groups-type-navs{
    display:none!important;
}

/* No other Circles layout rules in this release. */


/* ==========================================================
   Gathr31 v2.8.23 — Groups(n) strip removal only
   No visual/layout changes elsewhere.
   ========================================================== */
.g31-groups-strip-removed{
    display:none!important;
}


/* ==========================================================
   Gathr31 v2.8.24 — exact BuddyBoss Groups header removal
   Based on live DOM supplied by user.
   ========================================================== */

/* Exact element generating the unwanted Groups(10) black strip. */
body.g31-circles-directory
.groups-directory-wrapper > .bb-rl-secondary-header{
    display:none!important;
}

/* If BuddyBoss outputs duplicate directory wrappers, JS keeps the first
   real one and removes later duplicates. No card/grid/hero/header changes. */


/* ==========================================================
   Gathr31 v2.8.25 — Discover more Circles button
   No other Circles layout changes.
   ========================================================== */
body.g31-circles-directory .g31-circles-discover-more a,
body.g31-circles-directory .g31-circles-discover-more button,
body.g31-circles-directory a.g31-circles-discover-more{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:44px!important;
    padding:11px 20px!important;
    border:0!important;
    border-radius:10px!important;
    background:#ef4056!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:700!important;
    line-height:1.2!important;
    text-decoration:none!important;
    box-shadow:0 5px 14px rgba(15,23,42,.10)!important;
    cursor:pointer!important;
    transition:transform .15s ease, box-shadow .15s ease, opacity .15s ease!important;
}
body.g31-circles-directory .g31-circles-discover-more a:hover,
body.g31-circles-directory .g31-circles-discover-more button:hover,
body.g31-circles-directory a.g31-circles-discover-more:hover{
    color:#fff!important;
    text-decoration:none!important;
    transform:translateY(-1px)!important;
    box-shadow:0 7px 18px rgba(15,23,42,.14)!important;
}


/* ==========================================================
   Gathr31 v2.8.26 — People directory
   Mirrors the successful Circles treatment without changing member cards.
   ========================================================== */

/* Controlled five-item Gathr31 navigation on People. */
body.g31-people-directory .g31-people-primary-nav{
    position:relative!important;z-index:50!important;width:100vw!important;
    margin:0!important;background:#fff!important;border-bottom:1px solid #e8ebef!important;
}
body.g31-people-directory .g31-people-primary-nav-inner{
    display:flex!important;align-items:center!important;gap:2px!important;
    width:min(1500px,calc(100vw - 48px))!important;min-height:64px!important;margin:0 auto!important;
}
body.g31-people-directory .g31-people-primary-nav a{
    position:relative!important;display:inline-flex!important;align-items:center!important;gap:7px!important;
    min-height:64px!important;padding:0 15px!important;color:#1f2937!important;text-decoration:none!important;
    font-size:13px!important;font-weight:700!important;white-space:nowrap!important;
}
body.g31-people-directory .g31-people-primary-nav a:hover,
body.g31-people-directory .g31-people-primary-nav a.is-active{color:#ef4056!important;}
body.g31-people-directory .g31-people-primary-nav a.is-active:after{
    content:""!important;position:absolute!important;left:12px!important;right:12px!important;bottom:0!important;
    height:3px!important;background:#ef4056!important;border-radius:3px 3px 0 0!important;
}
body.g31-people-directory .g31-people-primary-nav-icon,
body.g31-people-directory .g31-people-primary-nav-icon svg{width:16px!important;height:16px!important;}
body.g31-people-directory .g31-people-primary-nav-icon svg{
    fill:none!important;stroke:currentColor!important;stroke-width:1.8!important;
}

/* Remove the competing BuddyBoss masthead/sidebar on People only. */
body.g31-people-directory #masthead,
body.g31-people-directory header.site-header,
body.g31-people-directory .bb-rl-left-panel,
body.g31-people-directory .bb-rl-left-sidebar,
body.g31-people-directory .bb-rl-sidebar,
body.g31-people-directory .bb-rl-primary-sidebar{display:none!important;}

/* People hero: same premium rounded language as Circles. */
body.g31-people-directory .g31-community-shell{
    position:relative!important;left:50%!important;box-sizing:border-box!important;
    width:calc(100vw - 24px)!important;max-width:none!important;
    margin:12px 0 0 calc(-50vw + 12px)!important;
}
body.g31-people-directory .g31-community-bar{
    min-height:245px!important;border-radius:18px!important;padding:42px 48px!important;
    background:linear-gradient(135deg,#111827 0%,#1f2937 100%)!important;
    color:#fff!important;overflow:hidden!important;
}
body.g31-people-directory .g31-community-eyebrow{color:#ef4056!important;font-weight:800!important;letter-spacing:.08em!important;}
body.g31-people-directory .g31-community-bar h1{color:#fff!important;font-size:42px!important;line-height:1.08!important;margin:8px 0 10px!important;}
body.g31-people-directory .g31-community-bar p{color:rgba(255,255,255,.78)!important;font-size:16px!important;}
body.g31-people-directory .g31-community-home-link{color:#fff!important;}

/* The small secondary community nav inside the old banner is redundant;
   the new five-item white nav above is the page navigation. */
body.g31-people-directory .g31-community-nav{display:none!important;}

/* Hero controls. */
body.g31-people-directory .g31-people-hero-actions{
    position:absolute!important;right:48px!important;top:42px!important;display:flex!important;gap:10px!important;
}
body.g31-people-directory .g31-people-hero-filters{
    position:absolute!important;right:48px!important;bottom:34px!important;
    display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;
}
body.g31-people-directory .g31-people-hero-filters form,
body.g31-people-directory .g31-people-hero-filters > div{
    margin:0!important;
}
body.g31-people-directory .g31-people-hero-filters select,
body.g31-people-directory .g31-people-hero-filters input{
    min-height:40px!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:9px!important;
    background:rgba(255,255,255,.10)!important;color:#fff!important;padding:0 12px!important;
}
body.g31-people-directory .g31-people-invite{
    display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:42px!important;
    padding:10px 18px!important;border-radius:10px!important;background:#ef4056!important;color:#fff!important;
    font-weight:800!important;text-decoration:none!important;border:0!important;
}

/* Exact redundant ReadyLaunch Members(n) strip. */
body.g31-people-directory .members-directory-wrapper > .bb-rl-secondary-header{
    display:none!important;
}

/* White full-width directory canvas. Do not change the member-card internals. */
body.g31-people-directory{background:#fff!important;}
body.g31-people-directory #buddypress,
body.g31-people-directory .buddypress-wrap{
    position:relative!important;left:50%!important;box-sizing:border-box!important;
    width:calc(100vw - 48px)!important;max-width:none!important;
    margin:28px 0 52px calc(-50vw + 24px)!important;padding:0!important;background:#fff!important;
}

/* Keep the currently readable four-across member layout. */
body.g31-people-directory #members-list,
body.g31-people-directory ul.members-list,
body.g31-people-directory .bp-list.members-list{
    display:grid!important;grid-template-columns:repeat(4,minmax(230px,260px))!important;
    justify-content:center!important;align-items:stretch!important;gap:24px!important;
    width:100%!important;max-width:1200px!important;margin:0 auto!important;padding:0!important;
}
body.g31-people-directory #members-list > li,
body.g31-people-directory ul.members-list > li,
body.g31-people-directory .bp-list.members-list > li{
    width:100%!important;min-width:230px!important;max-width:260px!important;margin:0!important;
}

/* A clean closing CTA beneath the directory. */
body.g31-people-directory .g31-people-ending{
    width:min(1200px,100%)!important;margin:28px auto 0!important;padding:24px 28px!important;
    border:1px solid #eceff3!important;border-radius:16px!important;background:#fff!important;
}

@media(max-width:1120px){
 body.g31-people-directory #members-list,body.g31-people-directory ul.members-list,body.g31-people-directory .bp-list.members-list{
  grid-template-columns:repeat(3,minmax(230px,260px))!important;
 }
}
@media(max-width:840px){
 body.g31-people-directory #members-list,body.g31-people-directory ul.members-list,body.g31-people-directory .bp-list.members-list{
  grid-template-columns:repeat(2,minmax(230px,260px))!important;
 }
 body.g31-people-directory .g31-people-hero-filters{position:static!important;margin-top:24px!important;justify-content:flex-start!important;flex-wrap:wrap!important;}
}
@media(max-width:560px){
 body.g31-people-directory #members-list,body.g31-people-directory ul.members-list,body.g31-people-directory .bp-list.members-list{
  grid-template-columns:minmax(230px,360px)!important;
 }
 body.g31-people-directory .g31-community-bar{padding:30px 24px!important;}
 body.g31-people-directory .g31-people-hero-actions{position:static!important;margin-top:18px!important;}
}

/* Gathr31 v2.8.27 — People hero cleanup only. */
body.g31-people-directory .members-directory-wrapper .bb-rl-secondary-header,
body.g31-people-directory .members-directory-wrapper .grid-filters,
body.g31-people-directory .members-directory-wrapper [class*="view-switch"],
body.g31-people-directory .members-directory-wrapper [class*="layout-switch"]{display:none!important;}

body.g31-people-directory .g31-people-hero-filters{
 display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;
}
body.g31-people-directory .g31-people-hero-filters>*{margin:0!important;}

body.g31-people-directory .g31-people-hero-actions,
body.g31-people-directory .g31-people-hero-actions>*{
 background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;
}
body.g31-people-directory .g31-people-invite-clean,
body.g31-people-directory .g31-people-hero-actions a,
body.g31-people-directory .g31-people-hero-actions button{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-height:42px!important;padding:10px 18px!important;border:0!important;border-radius:10px!important;
 background:#ef4056!important;color:#fff!important;font-size:13px!important;font-weight:800!important;
 line-height:1.2!important;text-decoration:none!important;box-shadow:0 5px 14px rgba(0,0,0,.16)!important;
}
body.g31-people-directory .g31-people-count{
 position:absolute!important;right:48px!important;bottom:82px!important;
 color:rgba(255,255,255,.72)!important;font-size:13px!important;font-weight:700!important;
}
/* Member cards, grid, navigation and hero structure intentionally unchanged. */


/* ==========================================================
   Gathr31 v2.8.28 — People full-width alignment
   Top nav, hero and member cards preserved.
   ========================================================== */

/* Break People out of the remaining BuddyBoss/theme content column. */
html body.g31-people-directory #page,
html body.g31-people-directory .site,
html body.g31-people-directory #content,
html body.g31-people-directory .site-content,
html body.g31-people-directory .container,
html body.g31-people-directory .bb-grid,
html body.g31-people-directory .bb-buddypress-content-wrap,
html body.g31-people-directory #primary,
html body.g31-people-directory main.site-main{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    border:0!important;
    box-shadow:none!important;
}

/* Hero and directory now share the same visual width. */
html body.g31-people-directory .g31-community-shell{
    box-sizing:border-box!important;
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    margin-left:calc(-50vw + 12px)!important;
    margin-right:0!important;
    left:50%!important;
}

html body.g31-people-directory #buddypress,
html body.g31-people-directory .buddypress-wrap{
    box-sizing:border-box!important;
    position:relative!important;
    left:50%!important;
    width:calc(100vw - 24px)!important;
    max-width:none!important;
    margin:28px 0 52px calc(-50vw + 12px)!important;
    padding:0 12px!important;
}

/* Remove any narrow inner wrappers around the member directory. */
html body.g31-people-directory .members-directory-wrapper,
html body.g31-people-directory .members-directory-container,
html body.g31-people-directory .members-directory-content,
html body.g31-people-directory #members-dir-list{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
}

/* Keep four readable cards, but distribute them across a broader centred row. */
html body.g31-people-directory #members-list,
html body.g31-people-directory ul.members-list,
html body.g31-people-directory .bp-list.members-list{
    width:min(1320px,100%)!important;
    max-width:1320px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    grid-template-columns:repeat(4,minmax(240px,1fr))!important;
    gap:26px!important;
}

/* Let each existing card use the grid cell instead of being artificially narrow. */
html body.g31-people-directory #members-list > li,
html body.g31-people-directory ul.members-list > li,
html body.g31-people-directory .bp-list.members-list > li{
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
}

/* Remaining BuddyBoss directory toolbar should not form a black divider. */
html body.g31-people-directory .members-directory-wrapper > .bb-rl-secondary-header,
html body.g31-people-directory .members-directory-wrapper .bb-rl-secondary-header{
    display:none!important;
}

/* Keep the page white behind the cards. */
html body.g31-people-directory,
html body.g31-people-directory #buddypress,
html body.g31-people-directory .buddypress-wrap,
html body.g31-people-directory .members-directory-wrapper,
html body.g31-people-directory .members-directory-container{
    background:#fff!important;
}

@media(max-width:1120px){
    html body.g31-people-directory #members-list,
    html body.g31-people-directory ul.members-list,
    html body.g31-people-directory .bp-list.members-list{
        grid-template-columns:repeat(3,minmax(230px,1fr))!important;
    }
}
@media(max-width:840px){
    html body.g31-people-directory #members-list,
    html body.g31-people-directory ul.members-list,
    html body.g31-people-directory .bp-list.members-list{
        grid-template-columns:repeat(2,minmax(220px,1fr))!important;
    }
}
@media(max-width:560px){
    html body.g31-people-directory #members-list,
    html body.g31-people-directory ul.members-list,
    html body.g31-people-directory .bp-list.members-list{
        grid-template-columns:1fr!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.30 — People stable hero rebuild
   Base = working v2.8.28 member directory.
   ========================================================== */

/* Taller hero so controls are genuinely part of it. */
body.g31-people-directory .g31-community-bar{
    min-height:315px!important;
    padding:46px 50px 100px!important;
}
body.g31-people-directory .g31-community-copy{
    width:min(720px,62%)!important;
    max-width:720px!important;
}
body.g31-people-directory .g31-community-bar p{
    max-width:700px!important;
    font-size:15px!important;
    line-height:1.55!important;
}

/* Remove the unwanted white Back-to-Home lozenge. */
body.g31-people-directory .g31-community-home-link{
    display:none!important;
}

/* The BuddyBoss black toolbar is entirely redundant now. */
body.g31-people-directory .members-directory-wrapper > .bb-rl-secondary-header,
body.g31-people-directory .members-directory-wrapper .bb-rl-secondary-header{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
}

/* No Profile Search, Sort, Type, Filter, list/grid toggles in the page UI. */
body.g31-people-directory .members-directory-wrapper .layout-view,
body.g31-people-directory .members-directory-wrapper [class*="layout-view"],
body.g31-people-directory .members-directory-wrapper [class*="grid-list"],
body.g31-people-directory .members-directory-wrapper [class*="view-switch"]{
    display:none!important;
}

/* Purposeful invite action, top-right. */
body.g31-people-directory .g31-people-hero-actions{
    position:absolute!important;
    right:50px!important;
    top:48px!important;
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}
body.g31-people-directory .g31-people-invite-copy{
    color:rgba(255,255,255,.78)!important;
    font-size:12px!important;
    font-weight:700!important;
}
body.g31-people-directory .g31-people-invite-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:10px 18px!important;
    border:0!important;
    border-radius:10px!important;
    background:#ef4056!important;
    color:#fff!important;
    font-size:12px!important;
    font-weight:800!important;
    text-decoration:none!important;
    box-shadow:0 5px 14px rgba(0,0,0,.15)!important;
}

/* Gathr31-owned membership filter, bottom-right. */
body.g31-people-directory .g31-people-hero-filters{
    position:absolute!important;
    right:50px!important;
    bottom:34px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex-wrap:wrap!important;
    gap:7px!important;
    max-width:760px!important;
}
body.g31-people-directory .g31-people-filter-label{
    margin-right:3px!important;
    color:rgba(255,255,255,.68)!important;
    font-size:11px!important;
    font-weight:700!important;
}
body.g31-people-directory .g31-people-tier-button{
    min-height:34px!important;
    padding:7px 12px!important;
    border:1px solid rgba(255,255,255,.20)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;
    font-size:10.5px!important;
    font-weight:800!important;
    cursor:pointer!important;
}
body.g31-people-directory .g31-people-tier-button:hover,
body.g31-people-directory .g31-people-tier-button.is-active{
    border-color:#fff!important;
    background:#fff!important;
    color:#111827!important;
}

/* Quiet member count at lower-left. */
body.g31-people-directory .g31-people-count{
    position:absolute!important;
    left:50px!important;
    right:auto!important;
    bottom:43px!important;
    color:rgba(255,255,255,.64)!important;
    font-size:12px!important;
    font-weight:800!important;
}

/* Follow is not part of the Gathr31 relationship model; Connect remains. */
body.g31-people-directory a[href*="follow"],
body.g31-people-directory button[data-bp-btn-action*="follow"],
body.g31-people-directory [class*="follow-button"]{
    display:none!important;
}

/* Preserve v2.8.28 broad directory/card geometry. */

@media(max-width:900px){
    body.g31-people-directory .g31-community-bar{
        padding:38px 28px 170px!important;
    }
    body.g31-people-directory .g31-community-copy{
        width:100%!important;
    }
    body.g31-people-directory .g31-people-hero-actions{
        position:static!important;
        margin-top:22px!important;
        justify-content:flex-start!important;
        flex-wrap:wrap!important;
    }
    body.g31-people-directory .g31-people-hero-filters{
        left:28px!important;
        right:28px!important;
        bottom:34px!important;
        justify-content:flex-start!important;
    }
    body.g31-people-directory .g31-people-count{
        left:28px!important;
        bottom:118px!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.31 — exact People toolbar + header logo cleanup
   ========================================================== */

/* Exact live BuddyBoss ReadyLaunch wrapper for the unwanted People black bar. */
body.g31-people-directory
.bb-rl-members-directory-wrapper > .bb-rl-secondary-header,
body.g31-people-directory
.bb-rl-members-directory-wrapper .bb-rl-secondary-header{
    display:none!important;
    height:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    overflow:hidden!important;
}

/* Exact live wrapper for grid/list and filters — keep them out of Gathr31 UI. */
body.g31-people-directory .bb-rl-members-directory-wrapper .layout-view,
body.g31-people-directory .bb-rl-members-directory-wrapper [class*="layout-view"],
body.g31-people-directory .bb-rl-members-directory-wrapper [class*="grid-list"],
body.g31-people-directory .bb-rl-members-directory-wrapper [class*="view-switch"]{
    display:none!important;
}

/* Hide only the redundant square Gathr31 icon in the BuddyBoss header.
   Do NOT delete the Media Library image and do NOT hide other logos. */
#masthead img.bb-logo[src*="gathr31.me-site-icon"],
.site-header img.bb-logo[src*="gathr31.me-site-icon"],
header img.bb-logo[src*="gathr31.me-site-icon"]{
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
}

/* Collapse the logo wrapper only when it contains that exact redundant icon. */
#masthead a:has(img.bb-logo[src*="gathr31.me-site-icon"]),
.site-header a:has(img.bb-logo[src*="gathr31.me-site-icon"]){
    display:none!important;
    width:0!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
}


/* ==========================================================
   Gathr31 v2.8.32 — Header finish + Experiences hero polish
   Experience cards deliberately untouched.
   ========================================================== */

/* ---------- HEADER: make all five nav items fit ---------- */
@media(min-width:1180px){

    /* Reclaim a little space from the right-hand BuddyBoss header controls. */
    #masthead .site-header-container,
    #masthead .bb-header-row,
    .site-header .site-header-container,
    .site-header .bb-header-row{
        padding-left:14px!important;
        padding-right:12px!important;
        gap:6px!important;
    }

    #masthead .main-navigation,
    #masthead .primary-menu,
    #masthead .bb-primary-menu,
    .site-header .main-navigation,
    .site-header .primary-menu,
    .site-header .bb-primary-menu{
        flex:1 1 auto!important;
        min-width:0!important;
        max-width:none!important;
        overflow:visible!important;
        white-space:nowrap!important;
    }

    #masthead .main-navigation > ul,
    #masthead .primary-menu,
    #masthead .bb-primary-menu,
    .site-header .main-navigation > ul{
        display:flex!important;
        align-items:center!important;
        flex-wrap:nowrap!important;
        gap:0!important;
        overflow:visible!important;
    }

    #masthead .g31-primary-nav-item,
    .site-header .g31-primary-nav-item{
        display:list-item!important;
        visibility:visible!important;
        opacity:1!important;
        flex:0 0 auto!important;
    }

    #masthead .g31-primary-nav-item > a,
    .site-header .g31-primary-nav-item > a{
        padding-left:7px!important;
        padding-right:7px!important;
        font-size:11.75px!important;
        letter-spacing:-.01em!important;
        white-space:nowrap!important;
    }

    #masthead .g31-nav-icon,
    .site-header .g31-nav-icon{
        margin-right:4px!important;
    }

    /* Tighten the utility area slightly without hiding anything. */
    #masthead .header-aside,
    #masthead .bb-header-buttons,
    #masthead .site-header-right,
    .site-header .header-aside,
    .site-header .bb-header-buttons,
    .site-header .site-header-right{
        gap:7px!important;
        margin-left:8px!important;
    }
}

/* ---------- EXPERIENCES HERO: premium treatment ---------- */

/* Wider, taller, rounder, more atmospheric. */
body.page-template-default .g31-experiences-hero,
body .g31-experiences-hero,
body .g31-exp-hero{
    position:relative!important;
    overflow:hidden!important;
    min-height:320px!important;
    border-radius:22px!important;
    padding:46px 52px 48px!important;
    background:
        radial-gradient(circle at 92% 14%, rgba(239,64,86,.18), transparent 28%),
        radial-gradient(circle at 84% 72%, rgba(129,140,248,.10), transparent 34%),
        linear-gradient(135deg,#101827 0%,#162236 62%,#1e2a3d 100%)!important;
    box-shadow:0 14px 34px rgba(15,23,42,.10)!important;
}

/* Make sure generic hero containers on the Experiences page get the same treatment. */
body .g31-experience-hero,
body .g31-experiences-header,
body .g31-experiences-hero-inner{
    border-radius:22px!important;
}

/* Left copy gets more presence. */
body .g31-experiences-hero .g31-eyebrow,
body .g31-exp-hero .g31-eyebrow,
body .g31-experiences-hero [class*="eyebrow"]{
    color:#ef4056!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.11em!important;
}

body .g31-experiences-hero h1,
body .g31-exp-hero h1{
    max-width:700px!important;
    margin:8px 0 14px!important;
    font-size:clamp(38px,4vw,58px)!important;
    line-height:1.02!important;
    letter-spacing:-.035em!important;
    color:#fff!important;
}

body .g31-experiences-hero p,
body .g31-exp-hero p{
    max-width:760px!important;
    margin:0!important;
    font-size:15px!important;
    line-height:1.62!important;
    color:rgba(255,255,255,.78)!important;
}

/* Buttons: primary coral, secondary glass. */
body .g31-experiences-hero a,
body .g31-exp-hero a{
    text-decoration:none!important;
}

body .g31-experiences-hero .button,
body .g31-experiences-hero .btn,
body .g31-exp-hero .button,
body .g31-exp-hero .btn{
    min-height:42px!important;
    padding:10px 18px!important;
    border-radius:10px!important;
    font-size:12px!important;
    font-weight:800!important;
}

body .g31-experiences-hero .button-primary,
body .g31-experiences-hero .btn-primary,
body .g31-exp-hero .button-primary,
body .g31-exp-hero .btn-primary{
    background:#ef4056!important;
    border-color:#ef4056!important;
    color:#fff!important;
    box-shadow:0 6px 16px rgba(239,64,86,.20)!important;
}

body .g31-experiences-hero .button-secondary,
body .g31-experiences-hero .btn-secondary,
body .g31-exp-hero .button-secondary,
body .g31-exp-hero .btn-secondary{
    background:rgba(255,255,255,.08)!important;
    border:1px solid rgba(255,255,255,.24)!important;
    color:#fff!important;
}

/* Upcoming-count panel: cleaner and calmer. */
body .g31-experiences-hero [class*="count"],
body .g31-exp-hero [class*="count"],
body .g31-experiences-hero [class*="stat"],
body .g31-exp-hero [class*="stat"]{
    border:1px solid rgba(255,255,255,.12)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.07)!important;
    box-shadow:none!important;
    backdrop-filter:blur(8px)!important;
}

/* Tone down decorative circles/blobs if present. */
body .g31-experiences-hero [class*="orb"],
body .g31-experiences-hero [class*="circle"],
body .g31-experiences-hero [class*="blob"],
body .g31-exp-hero [class*="orb"],
body .g31-exp-hero [class*="circle"],
body .g31-exp-hero [class*="blob"]{
    opacity:.42!important;
    filter:blur(.2px)!important;
}

/* Improve the transition into the discovery section. */
body .g31-experiences-hero + *,
body .g31-exp-hero + *{
    margin-top:28px!important;
}

/* Leave Experience cards/content alone. */


/* ==========================================================
   Gathr31 v2.8.33 — Members Home header + Experiences hero top
   Tight scope: do not alter other pages.
   ========================================================== */

/* ---------- MEMBERS HOME ONLY: keep all five nav items visible ---------- */
body.page-id-0 .g31-primary-nav-item{}

/* Use URL/body-class fallbacks for Members Home without affecting other pages. */
body.home.logged-in #masthead .main-navigation,
body.home.logged-in #masthead .primary-menu,
body.home.logged-in #masthead .bb-primary-menu,
body.page-template-default.logged-in #masthead .main-navigation{
    min-width:0!important;
}

/* Specific Members Home page selectors via slug/body classes commonly emitted by WP. */
body.page-members-home #masthead .main-navigation,
body.page-members-home #masthead .primary-menu,
body.page-members-home #masthead .bb-primary-menu,
body.page-members-home #masthead .main-navigation > ul,
body.page-id-0 #masthead .main-navigation,
body.page-id-0 #masthead .primary-menu,
body.page-id-0 #masthead .bb-primary-menu{
    display:flex!important;
    flex:1 1 auto!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    min-width:0!important;
    max-width:none!important;
    overflow:visible!important;
    white-space:nowrap!important;
}

/* Gathr31 injects exactly five .g31-primary-nav-item links. Keep them visible
   on Members Home and reclaim just enough horizontal space locally. */
body.page-members-home #masthead .g31-primary-nav-item,
body.page-id-0 #masthead .g31-primary-nav-item{
    display:list-item!important;
    visibility:visible!important;
    opacity:1!important;
    flex:0 0 auto!important;
}

body.page-members-home #masthead .g31-primary-nav-item > a,
body.page-id-0 #masthead .g31-primary-nav-item > a{
    padding-left:6px!important;
    padding-right:6px!important;
    font-size:11.5px!important;
    white-space:nowrap!important;
}

/* Tighten only the Members Home utility area, not global headers. */
body.page-members-home #masthead .header-aside,
body.page-members-home #masthead .bb-header-buttons,
body.page-members-home #masthead .site-header-right,
body.page-id-0 #masthead .header-aside,
body.page-id-0 #masthead .bb-header-buttons,
body.page-id-0 #masthead .site-header-right{
    gap:5px!important;
    margin-left:5px!important;
}

/* Remove the native BuddyBoss/Theme blue active underline on Members Home.
   Keep Gathr31's coral active-state line only. */
body.page-members-home #masthead .main-navigation li.current-menu-item > a:after,
body.page-members-home #masthead .main-navigation li.current_page_item > a:after,
body.page-members-home #masthead .primary-menu li.current-menu-item > a:after,
body.page-members-home #masthead .primary-menu li.current_page_item > a:after,
body.page-id-0 #masthead .main-navigation li.current-menu-item > a:after,
body.page-id-0 #masthead .primary-menu li.current-menu-item > a:after{
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
}

/* Common BuddyBoss active nav bars/markers — Members Home only. */
body.page-members-home #masthead .current-menu-item > a,
body.page-members-home #masthead .current_page_item > a,
body.page-id-0 #masthead .current-menu-item > a,
body.page-id-0 #masthead .current_page_item > a{
    border-bottom-color:transparent!important;
}

/* ---------- EXPERIENCES ONLY: restore rounded top corners ---------- */

/* The hero was visually flush/clipped at the top. Give it a small gap and
   make sure parent wrappers do not clip its upper radius. */
body.page-experiences .g31-experiences-hero,
body.page-experiences .g31-exp-hero,
body.page-template-default .g31-experiences-hero{
    margin-top:14px!important;
    border-top-left-radius:22px!important;
    border-top-right-radius:22px!important;
    overflow:hidden!important;
}

/* Parent wrappers often caused the top-edge clipping. */
body.page-experiences .site-content,
body.page-experiences .container,
body.page-experiences .entry-content,
body.page-experiences main,
body.page-experiences #primary{
    overflow:visible!important;
}

/* Keep hero slightly inset, matching People/Circles floating-card feel. */
body.page-experiences .g31-experiences-hero,
body.page-experiences .g31-exp-hero{
    width:calc(100% - 24px)!important;
    margin-left:12px!important;
    margin-right:12px!important;
    box-sizing:border-box!important;
}


/* ==========================================================
   Gathr31 v2.8.34 — exact Members Home nav + Experiences hero fix
   ========================================================== */

/* ---------- MEMBERS HOME: deterministic five-item navigation ---------- */
body:has(.g31-dashboard.g31-home-simple) #masthead .g31-members-home-native-nav-hidden,
body:has(.g31-dashboard.g31-home-simple) header.site-header .g31-members-home-native-nav-hidden{
    display:none!important;
}

body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    justify-content:flex-start!important;
    gap:1px!important;
    min-width:0!important;
    margin:0 8px!important;
    white-space:nowrap!important;
}

body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a{
    position:relative!important;
    display:inline-flex!important;
    align-items:center!important;
    gap:5px!important;
    min-height:58px!important;
    padding:0 8px!important;
    border:0!important;
    border-bottom:0!important;
    box-shadow:none!important;
    background:transparent!important;
    color:#202735!important;
    font-size:11.5px!important;
    font-weight:750!important;
    line-height:1!important;
    text-decoration:none!important;
    white-space:nowrap!important;
}

/* Absolutely no BuddyBoss blue indicator on this custom nav. */
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a:before{
    content:none!important;
    display:none!important;
}
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a:after{
    content:""!important;
    position:absolute!important;
    left:8px!important;
    right:8px!important;
    bottom:0!important;
    height:2px!important;
    border:0!important;
    border-radius:3px!important;
    background:#ef4056!important;
    box-shadow:none!important;
    opacity:0!important;
    transform:none!important;
}
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a:hover,
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a.is-active{
    color:#ef4056!important;
}
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a:hover:after,
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav a.is-active:after{
    opacity:1!important;
}

body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:13px!important;
    height:13px!important;
    flex:0 0 13px!important;
    font-size:11px!important;
    color:currentColor!important;
}

/* Keep the native right-side header controls compact enough to coexist. */
body:has(.g31-dashboard.g31-home-simple) #masthead .header-aside,
body:has(.g31-dashboard.g31-home-simple) #masthead .site-header-right,
body:has(.g31-dashboard.g31-home-simple) #masthead .bb-header-buttons{
    flex:0 0 auto!important;
    gap:6px!important;
    margin-left:4px!important;
}

/* ---------- EXPERIENCES: beat the older global first-child rule ---------- */

/* Older code forces `.g31-dashboard > :first-child { margin-top:0!important; }`.
   This selector is deliberately more specific and comes later. */
.g31-dashboard.g31-experiences-page.g31-experiences-v2
> .g31-dashboard-hero.g31-experiences-hero.g31-xp-hero{
    box-sizing:border-box!important;
    width:calc(100% - 24px)!important;
    margin-top:14px!important;
    margin-left:12px!important;
    margin-right:12px!important;
    margin-bottom:28px!important;
    border-radius:22px!important;
    border-top-left-radius:22px!important;
    border-top-right-radius:22px!important;
    overflow:hidden!important;
}

/* Give the dashboard itself room for the floating top edge. */
.g31-dashboard.g31-experiences-page.g31-experiences-v2{
    padding-top:1px!important;
    overflow:visible!important;
}

/* Do not let WordPress/BuddyBoss ancestors clip those corners. */
body:has(.g31-experiences-page) #content,
body:has(.g31-experiences-page) .site-content,
body:has(.g31-experiences-page) .site-content-grid,
body:has(.g31-experiences-page) #primary,
body:has(.g31-experiences-page) main.site-main,
body:has(.g31-experiences-page) .entry-content{
    overflow:visible!important;
}

/* Remove native BuddyBoss blue active markers on the standard five-item
   Gathr31 menu everywhere, preserving our coral ::after indicator. */
#masthead .g31-primary-nav-item > a{
    border-bottom:0!important;
    box-shadow:none!important;
    background-image:none!important;
}
#masthead .g31-primary-nav-item > a:before{
    content:none!important;
    display:none!important;
}


/* ==========================================================
   Gathr31 v2.8.37 — Partner Centre / simplified Partner Profile
   ========================================================== */
.g31-partner-profile-form{display:grid!important;gap:22px!important}
.g31-partner-form-head,.g31-partner-submit-panel,.g31-partner-admin-review{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    gap:24px!important;padding:24px!important;border:1px solid #e7eaf0!important;
    border-radius:18px!important;background:#fff!important
}
.g31-partner-form-head h2,.g31-partner-admin-review h3{margin:4px 0 6px!important}
.g31-partner-form-head p,.g31-partner-admin-review p,.g31-partner-submit-panel p{
    margin:0!important;color:#667085!important
}
.g31-partner-status{
    flex:0 0 auto!important;padding:8px 12px!important;border-radius:999px!important;
    font-size:11px!important;font-weight:850!important;background:#f2f4f7!important;color:#344054!important
}
.g31-partner-status-approved{background:#ecfdf3!important;color:#027a48!important}
.g31-partner-status-submitted{background:#fff7e6!important;color:#9a6700!important}
.g31-partner-status-changes_requested{background:#fff1f3!important;color:#c01048!important}
.g31-partner-form-section{
    padding:26px!important;border:1px solid #e7eaf0!important;border-radius:18px!important;background:#fff!important
}
.g31-partner-form-section-title{display:flex!important;align-items:flex-start!important;gap:14px!important;margin-bottom:22px!important}
.g31-partner-form-section-title>span{
    display:flex!important;align-items:center!important;justify-content:center!important;
    width:34px!important;height:34px!important;border-radius:10px!important;background:#101828!important;
    color:#fff!important;font-size:11px!important;font-weight:900!important
}
.g31-partner-form-section-title h3{margin:1px 0 4px!important;font-size:18px!important}
.g31-partner-form-section-title p{margin:0!important;color:#667085!important;font-size:13px!important}
.g31-partner-perk-section{background:linear-gradient(180deg,#fff,#fff9fa)!important}
.g31-partner-profile-form select{
    width:100%!important;min-height:44px!important;border:1px solid #d0d5dd!important;border-radius:10px!important;
    background:#fff!important;padding:8px 12px!important
}
.g31-partner-submit-panel{background:#101828!important;color:#fff!important;border-color:#101828!important}
.g31-partner-submit-panel p{color:rgba(255,255,255,.65)!important;margin-top:4px!important}
.g31-partner-admin-review{margin-top:22px!important;background:#f8fafc!important}
.g31-partner-review-actions{display:flex!important;gap:8px!important;flex-wrap:wrap!important;justify-content:flex-end!important}
.g31-partner-review-actions form{margin:0!important}
.g31-partner-review-button{
    min-height:40px!important;padding:9px 13px!important;border-radius:9px!important;border:1px solid #d0d5dd!important;
    background:#fff!important;color:#344054!important;font-size:11px!important;font-weight:800!important;cursor:pointer!important
}
.g31-review-approved{background:#ef4056!important;border-color:#ef4056!important;color:#fff!important}
@media(max-width:760px){
    .g31-partner-form-head,.g31-partner-submit-panel,.g31-partner-admin-review{align-items:flex-start!important;flex-direction:column!important}
    .g31-partner-review-actions{justify-content:flex-start!important}
}

/* Gathr31 v2.8.38 — Partner Centre administrateur (interface française). */
.g31-partner-centre{width:min(1220px,calc(100% - 36px));margin:28px auto 60px;color:#182230}
.g31-partner-centre-hero{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:34px 38px;border-radius:22px;background:linear-gradient(135deg,#101828,#263348);color:#fff}
.g31-partner-centre-hero h1{margin:4px 0 8px;color:#fff;font-size:34px}.g31-partner-centre-hero p{max-width:680px;margin:0;color:#ffffffc2}
.g31-partner-add-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:11px 18px;border-radius:10px;background:#ef4056;color:#fff!important;font-size:12px;font-weight:850;text-decoration:none!important;white-space:nowrap}
.g31-partner-centre-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:18px 0 24px}.g31-partner-centre-stats>div{padding:18px 20px;border:1px solid #e6e9ef;border-radius:15px;background:#fff}.g31-partner-centre-stats strong{display:block;font-size:27px;color:#101828}.g31-partner-centre-stats span{font-size:11px;font-weight:750;color:#667085}
.g31-partner-create-card{display:grid;grid-template-columns:.85fr 1.15fr;gap:34px;padding:28px;border:1px solid #e6e9ef;border-radius:19px;background:#fff}.g31-partner-create-copy h2,.g31-partner-management h2{margin:4px 0 8px}.g31-partner-create-copy p{margin:0;color:#667085;line-height:1.55}
.g31-partner-create-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.g31-partner-create-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800;color:#344054}.g31-partner-create-form input[type=text],.g31-partner-create-form input[type=email]{width:100%;min-height:43px;padding:9px 11px;border:1px solid #d0d5dd;border-radius:9px;background:#fff}
.g31-partner-login-choice{grid-column:1/-1;flex-direction:row!important;align-items:flex-start!important;padding:13px;border-radius:11px;background:#f8fafc}.g31-partner-login-choice input{margin-top:3px}.g31-partner-login-choice small{display:block;margin-top:3px;color:#667085;font-weight:500;line-height:1.4}.g31-partner-create-form .g31-tb-primary-button{grid-column:1/-1;justify-self:start}
.g31-partner-management{margin-top:28px}.g31-partner-management-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:14px}.g31-partner-management-head>a{font-size:11px;font-weight:800;color:#ef4056!important;text-decoration:none!important}
.g31-partner-admin-list{display:grid;gap:12px}.g31-partner-admin-card{display:flex;gap:16px;padding:16px;border:1px solid #e6e9ef;border-radius:15px;background:#fff}.g31-partner-admin-logo{display:flex;align-items:center;justify-content:center;width:70px;height:70px;flex:0 0 70px;overflow:hidden;border-radius:13px;background:#f2f4f7;font-weight:900}.g31-partner-admin-logo img{width:100%;height:100%;object-fit:cover}
.g31-partner-admin-main{flex:1;min-width:0}.g31-partner-admin-title{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.g31-partner-admin-title h3{margin:2px 0 3px;font-size:17px}.g31-partner-admin-title p{margin:0;color:#667085;font-size:11px}.g31-partner-admin-perk{margin-top:10px;padding:9px 11px;border-radius:9px;background:#fff7f8;color:#344054;font-size:11px}.g31-partner-admin-perk.is-empty{background:#f8fafc;color:#98a2b3}
.g31-partner-admin-actions{display:flex;align-items:center;gap:9px;margin-top:11px}.g31-partner-admin-actions form{margin:0}.g31-partner-edit-link{font-size:11px;font-weight:850;color:#ef4056!important;text-decoration:none!important}.g31-partner-quick-approve{padding:7px 10px;border:0;border-radius:8px;background:#101828;color:#fff;font-size:10px;font-weight:800;cursor:pointer}
.g31-partner-empty{padding:26px;border:1px dashed #d0d5dd;border-radius:14px;background:#fff;text-align:center}.g31-partner-empty p{margin:6px 0 0;color:#667085}
@media(max-width:800px){.g31-partner-centre-hero,.g31-partner-management-head{align-items:flex-start;flex-direction:column}.g31-partner-centre-stats{grid-template-columns:repeat(2,1fr)}.g31-partner-create-card{grid-template-columns:1fr}.g31-partner-create-form{grid-template-columns:1fr}.g31-partner-login-choice,.g31-partner-create-form .g31-tb-primary-button{grid-column:auto}}


/* ==========================================================
   Gathr31 v2.8.39 — Partner Profile edit mode + admin shortcut
   ========================================================== */
.g31-home-hero-nav .g31-admin-partner-centre-link{
    padding:6px 10px!important;
    border:1px solid rgba(255,255,255,.35)!important;
    border-radius:8px!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
}
.g31-home-hero-nav .g31-admin-partner-centre-link:hover{
    background:#ef4056!important;
    border-color:#ef4056!important;
    color:#fff!important;
}


/* ==========================================================
   Gathr31 v2.8.40 — Members Home admin Partner Centre shortcut
   ========================================================== */
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav .g31-members-home-admin-link{
    margin-left:4px!important;
    padding-left:9px!important;
    padding-right:9px!important;
    border:1px solid rgba(239,64,86,.28)!important;
    border-radius:8px!important;
    color:#ef4056!important;
    background:#fff7f8!important;
}
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav .g31-members-home-admin-link:hover{
    background:#ef4056!important;
    border-color:#ef4056!important;
    color:#fff!important;
}
body:has(.g31-dashboard.g31-home-simple) .g31-members-home-fixed-nav .g31-members-home-admin-link:after{
    display:none!important;
}

/* Gathr31 v2.8.42 — aperçu instantané des images partenaire. */
.g31-upload-status{margin-top:9px!important;min-height:20px!important;font-size:11px!important;line-height:1.4!important}
.g31-upload-status span{display:inline-flex!important;align-items:center!important;gap:5px!important;font-weight:750!important}
.g31-upload-status small{display:block!important;margin-top:3px!important;color:#667085!important;font-size:10px!important;font-weight:500!important}
.g31-upload-status-ok{color:#027a48!important}
.g31-upload-status-empty{color:#98a2b3!important}
.g31-upload-status-selected{color:#ef4056!important}
.g31-upload-status-error{color:#b42318!important}
.g31-upload-live-preview{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important}
.g31-tb-logo-preview .g31-upload-live-preview{object-fit:contain!important;background:#fff!important}


/* ==========================================================
   Gathr31 v2.8.43 — Partners member directory polish
   ========================================================== */
body:has(.g31-tb-directory){
    background:#fff!important;
}
body:has(.g31-tb-directory) .site-content,
body:has(.g31-tb-directory) .container,
body:has(.g31-tb-directory) .bb-grid,
body:has(.g31-tb-directory) .content-area,
body:has(.g31-tb-directory) .entry-content{
    width:100%!important;
    max-width:none!important;
}
body:has(.g31-tb-directory) .site-content,
body:has(.g31-tb-directory) .container,
body:has(.g31-tb-directory) .bb-grid{
    padding-left:0!important;
    padding-right:0!important;
}
.g31-tb-directory{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 0 64px!important;
}
.g31-tb-directory-hero{
    width:calc(100% - 48px)!important;
    max-width:1440px!important;
    margin:22px auto 22px!important;
    padding:46px 52px!important;
    border-radius:24px!important;
    box-sizing:border-box!important;
}
.g31-tb-directory-hero h1{
    max-width:820px!important;
    font-size:clamp(34px,4vw,56px)!important;
    line-height:1.02!important;
    margin-bottom:14px!important;
}
.g31-tb-directory-hero>p{
    max-width:900px!important;
    font-size:16px!important;
    line-height:1.65!important;
}
.g31-tb-hero-benefits{
    display:flex!important;
    flex-wrap:wrap!important;
    gap:9px!important;
    margin-top:20px!important;
}
.g31-tb-hero-benefits span{
    padding:8px 12px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:800!important;
}
.g31-tb-directory-filters,
.g31-tb-directory-summary,
.g31-tb-view-toggle,
.g31-tb-map-wrap,
.g31-tb-directory-grid,
.g31-tb-directory>.g31-tb-notice{
    width:calc(100% - 48px)!important;
    max-width:1440px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
}
.g31-tb-category-strip{
    flex-wrap:wrap!important;
}
.g31-tb-directory-card-actions{
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    flex-wrap:wrap!important;
}
.g31-tb-directory-admin-edit{
    display:inline-flex!important;
    align-items:center!important;
    min-height:38px!important;
    padding:8px 11px!important;
    border:1px solid #d0d5dd!important;
    border-radius:9px!important;
    background:#fff!important;
    color:#475467!important;
    font-size:10px!important;
    font-weight:800!important;
    text-decoration:none!important;
}
.g31-tb-directory-admin-edit:hover{
    border-color:#ef4056!important;
    color:#ef4056!important;
}
@media(max-width:720px){
    .g31-tb-directory-hero,
    .g31-tb-directory-filters,
    .g31-tb-directory-summary,
    .g31-tb-view-toggle,
    .g31-tb-map-wrap,
    .g31-tb-directory-grid,
    .g31-tb-directory>.g31-tb-notice{
        width:calc(100% - 24px)!important;
    }
    .g31-tb-directory-hero{padding:32px 24px!important;border-radius:18px!important}
}


/* ==========================================================
   Gathr31 v2.8.44 — Partners true full-width breakout
   ========================================================== */

/* Break the Partners page out of every remaining BuddyBoss / WP max-width wrapper. */
html body:has(.g31-tb-directory) #page,
html body:has(.g31-tb-directory) .site,
html body:has(.g31-tb-directory) #content,
html body:has(.g31-tb-directory) .site-content,
html body:has(.g31-tb-directory) .site-content-grid,
html body:has(.g31-tb-directory) .container,
html body:has(.g31-tb-directory) .bb-grid,
html body:has(.g31-tb-directory) .content-area,
html body:has(.g31-tb-directory) #primary,
html body:has(.g31-tb-directory) main.site-main,
html body:has(.g31-tb-directory) article,
html body:has(.g31-tb-directory) .entry-content{
    width:100%!important;
    max-width:none!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;
    border:0!important;
    box-shadow:none!important;
    overflow:visible!important;
}

/* Remove the redundant WordPress page title above our own Partners hero. */
html body:has(.g31-tb-directory) .entry-header,
html body:has(.g31-tb-directory) .entry-title{
    display:none!important;
}

/* The directory itself becomes viewport-wide. */
html body:has(.g31-tb-directory) .g31-tb-directory{
    position:relative!important;
    left:50%!important;
    width:100vw!important;
    max-width:none!important;
    margin-left:-50vw!important;
    margin-right:0!important;
    padding:0 0 72px!important;
    box-sizing:border-box!important;
}

/* Hero and all directory controls share one broad canvas. */
html body:has(.g31-tb-directory) .g31-tb-directory-hero,
html body:has(.g31-tb-directory) .g31-tb-directory-filters,
html body:has(.g31-tb-directory) .g31-tb-directory-summary,
html body:has(.g31-tb-directory) .g31-tb-view-toggle,
html body:has(.g31-tb-directory) .g31-tb-map-wrap,
html body:has(.g31-tb-directory) .g31-tb-directory-grid,
html body:has(.g31-tb-directory) .g31-tb-directory>.g31-tb-notice{
    width:calc(100vw - 48px)!important;
    max-width:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
}

/* Hero now has the same expansive floating-card feel as the other member pages. */
html body:has(.g31-tb-directory) .g31-tb-directory-hero{
    margin-top:16px!important;
    margin-bottom:22px!important;
    padding:48px 54px!important;
    border-radius:24px!important;
}

/* Use the extra width: four cards across on larger desktops, retaining readable cards. */
html body:has(.g31-tb-directory) .g31-tb-directory-grid{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(240px,1fr))!important;
    gap:24px!important;
    align-items:stretch!important;
}

/* Each card fills its cell rather than keeping an old narrow max-width. */
html body:has(.g31-tb-directory) .g31-tb-directory-card{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
}

/* Keep filters/category pills visually aligned with the wider page. */
html body:has(.g31-tb-directory) .g31-tb-directory-filters{
    margin-top:0!important;
}
html body:has(.g31-tb-directory) .g31-tb-directory-summary{
    padding-left:0!important;
    padding-right:0!important;
}

@media(max-width:1180px){
    html body:has(.g31-tb-directory) .g31-tb-directory-grid{
        grid-template-columns:repeat(3,minmax(230px,1fr))!important;
    }
}

@media(max-width:860px){
    html body:has(.g31-tb-directory) .g31-tb-directory-grid{
        grid-template-columns:repeat(2,minmax(220px,1fr))!important;
    }
}

@media(max-width:580px){
    html body:has(.g31-tb-directory) .g31-tb-directory-hero,
    html body:has(.g31-tb-directory) .g31-tb-directory-filters,
    html body:has(.g31-tb-directory) .g31-tb-directory-summary,
    html body:has(.g31-tb-directory) .g31-tb-view-toggle,
    html body:has(.g31-tb-directory) .g31-tb-map-wrap,
    html body:has(.g31-tb-directory) .g31-tb-directory-grid{
        width:calc(100vw - 24px)!important;
    }

    html body:has(.g31-tb-directory) .g31-tb-directory-grid{
        grid-template-columns:1fr!important;
    }

    html body:has(.g31-tb-directory) .g31-tb-directory-hero{
        padding:32px 24px!important;
        border-radius:18px!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.45 — Member Perk Pass
   ========================================================== */
.g31-member-pass{margin:18px 0 4px;padding:20px;border:1px solid #dfe4ea;border-radius:18px;background:#fff;box-shadow:0 12px 30px rgba(16,24,40,.08);overflow:hidden}
.g31-member-pass-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.g31-member-pass-kicker{font-size:9px;font-weight:900;letter-spacing:.14em;color:#667085}
.g31-member-pass-top h3{margin:3px 0 0;font-size:23px;color:#027a48}
.g31-member-pass-live{display:flex;align-items:center;gap:6px;padding:6px 9px;border-radius:999px;background:#ecfdf3;color:#027a48;font-size:9px;font-weight:900}
.g31-member-pass-live i{display:block;width:7px;height:7px;border-radius:50%;background:#12b76a;animation:g31pulse 1.4s infinite}
@keyframes g31pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(.75)}}
.g31-member-pass-member{display:flex;align-items:center;gap:11px;margin:17px 0;padding:14px 0;border-top:1px solid #eef1f5;border-bottom:1px solid #eef1f5}
.g31-member-pass-member img{width:50px;height:50px;border-radius:50%}
.g31-member-pass-member strong,.g31-member-pass-member span{display:block}
.g31-member-pass-member strong{font-size:15px}.g31-member-pass-member span{margin-top:2px;color:#ef4056;font-size:10px;font-weight:850}
.g31-member-pass-offer span,.g31-member-pass-code span{display:block;margin-bottom:5px;color:#98a2b3;font-size:9px;font-weight:900;letter-spacing:.08em}
.g31-member-pass-offer strong{display:block;font-size:17px;line-height:1.35}.g31-member-pass-offer small{display:block;margin-top:5px;color:#667085}
.g31-member-pass-code{margin:17px 0;padding:16px;border-radius:13px;background:#101828;text-align:center;color:#fff}
.g31-member-pass-code span{color:#ffffff99}.g31-member-pass-code strong{font-size:29px;letter-spacing:.18em}
.g31-member-pass-expiry{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#667085}
.g31-member-pass-expiry strong{color:#ef4056}
.g31-perk-claim-member small{display:block;margin-top:3px;color:#667085;font-size:10px}
.g31-my-perks{width:min(1180px,calc(100% - 36px));margin:28px auto 60px}
.g31-my-perks-hero{padding:32px 36px;border-radius:20px;background:#101828;color:#fff}.g31-my-perks-hero>span{font-size:9px;font-weight:900;letter-spacing:.12em;color:#ef4056}.g31-my-perks-hero h1{margin:4px 0 5px;color:#fff}.g31-my-perks-hero p{margin:0;color:#ffffffb8}
.g31-my-perks-list{display:grid;gap:10px;margin-top:18px}.g31-my-perk-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:15px 17px;border:1px solid #e6e9ef;border-radius:12px;background:#fff;text-decoration:none!important}.g31-my-perk-row strong,.g31-my-perk-row span{display:block}.g31-my-perk-row strong{color:#101828}.g31-my-perk-row span{margin-top:3px;color:#667085;font-size:11px}.g31-my-perk-row em{font-style:normal;font-size:10px;font-weight:850}.g31-my-perk-row em.is-redeemed{color:#027a48}.g31-my-perk-row em.is-pending{color:#ef4056}.g31-my-perk-row em.is-expired{color:#98a2b3}


/* ==========================================================
   Gathr31 v2.8.46 — Admin redemption visibility
   ========================================================== */
.g31-partner-admin-redemptions{
    margin-top:24px!important;
}
.g31-partner-admin-redemptions .g31-perk-manager{
    border:1px solid #e6e9ef!important;
    border-radius:18px!important;
    background:#fff!important;
}
.g31-partner-pending-link{
    display:inline-flex!important;
    align-items:center!important;
    min-height:34px!important;
    padding:7px 10px!important;
    border-radius:999px!important;
    background:#fff7e6!important;
    color:#9a6700!important;
    font-size:10px!important;
    font-weight:850!important;
    text-decoration:none!important;
}
.g31-partner-pending-link:hover{
    background:#ffedcc!important;
    color:#7a4f00!important;
}


/* ==========================================================
   Gathr31 v2.8.47 — Focused Partner redemption view
   ========================================================== */
.g31-partner-redemption-focus{
    margin-bottom:24px!important;
    padding:22px!important;
    border:2px solid #ef4056!important;
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 14px 34px rgba(16,24,40,.10)!important;
}
.g31-partner-redemption-focus-head{
    display:flex!important;
    align-items:flex-start!important;
    justify-content:space-between!important;
    gap:20px!important;
    margin-bottom:16px!important;
}
.g31-partner-redemption-focus-head h2{
    margin:4px 0 6px!important;
    font-size:22px!important;
}
.g31-partner-redemption-focus-head p{
    margin:0!important;
    max-width:720px!important;
    color:#667085!important;
    font-size:12px!important;
    line-height:1.5!important;
}
.g31-partner-redemption-focus-head>a{
    flex:0 0 auto!important;
    color:#667085!important;
    font-size:10px!important;
    font-weight:800!important;
    text-decoration:none!important;
}
.g31-partner-redemption-focus .g31-perk-manager{
    margin:0!important;
    border:0!important;
    padding:0!important;
    box-shadow:none!important;
}
.g31-partner-redemption-focus .g31-perk-manager-head{
    margin-bottom:14px!important;
}
.g31-partner-redemption-focus .g31-perk-claim-row{
    padding:16px!important;
    border:1px solid #e6e9ef!important;
    border-radius:14px!important;
    background:#f8fafc!important;
}
.g31-perk-claim-member{
    display:flex!important;
    align-items:center!important;
    gap:12px!important;
    flex:1!important;
}
.g31-perk-claim-member>img{
    width:56px!important;
    height:56px!important;
    flex:0 0 56px!important;
    border-radius:50%!important;
}
.g31-perk-claim-identity{
    min-width:0!important;
    flex:1!important;
}
.g31-perk-claim-identity strong{
    display:block!important;
    font-size:14px!important;
    color:#101828!important;
}
.g31-perk-claim-identity span{
    display:block!important;
    margin-top:2px!important;
    color:#ef4056!important;
    font-size:10px!important;
    font-weight:850!important;
}
.g31-perk-claim-identity small{
    display:block!important;
    margin-top:5px!important;
    color:#667085!important;
    font-size:11px!important;
    line-height:1.4!important;
}
.g31-perk-claim-code{
    flex:0 0 auto!important;
    padding:10px 12px!important;
    border-radius:10px!important;
    background:#101828!important;
    color:#fff!important;
    text-align:center!important;
}
.g31-perk-claim-code span{
    display:block!important;
    color:rgba(255,255,255,.55)!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.12em!important;
}
.g31-perk-claim-code strong{
    display:block!important;
    margin-top:2px!important;
    font-size:20px!important;
    letter-spacing:.12em!important;
}
@media(max-width:760px){
    .g31-partner-redemption-focus-head{
        flex-direction:column!important;
    }
    .g31-perk-claim-member{
        flex-wrap:wrap!important;
    }
    .g31-perk-claim-code{
        width:100%!important;
    }
}


/* ==========================================================
   Gathr31 v2.8.48 — Visible validation codes + reactivation
   ========================================================== */
.g31-perk-claim-code{
    min-width:138px!important;
    padding:12px 14px!important;
    border:2px solid #101828!important;
    background:#101828!important;
    color:#fff!important;
}
.g31-perk-claim-code strong{
    display:block!important;
    color:#fff!important;
    opacity:1!important;
    visibility:visible!important;
    font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
    font-size:22px!important;
    font-weight:900!important;
    line-height:1.1!important;
    letter-spacing:.12em!important;
    text-shadow:none!important;
}
.g31-perk-claim-code span{
    color:rgba(255,255,255,.70)!important;
}
.g31-perk-claim-code.is-expired{
    background:#667085!important;
    border-color:#667085!important;
}
.g31-perk-expired-list{
    margin-top:14px!important;
}
.g31-perk-claim-row.is-expired{
    opacity:.92!important;
    background:#f8fafc!important;
}
.g31-perk-reactivate-button{
    min-height:40px!important;
    padding:9px 13px!important;
    border:0!important;
    border-radius:9px!important;
    background:#ef4056!important;
    color:#fff!important;
    font-size:11px!important;
    font-weight:850!important;
    cursor:pointer!important;
}
.g31-perk-reactivate-button:hover{
    filter:brightness(.97)!important;
}
[data-g31-countdown].is-expired{
    color:#98a2b3!important;
}


/* ==========================================================
   Gathr31 v2.8.49 — safer perk validation states
   ========================================================== */
.g31-perk-claim-row.is-expired .g31-perk-reactivate-button{
    box-shadow:0 5px 12px rgba(239,64,86,.16)!important;
}
.g31-perk-expired-list:before{
    content:"Codes expirés ou manquants — réactivez-les avant toute validation.";
    display:block!important;
    margin:0 0 8px!important;
    color:#667085!important;
    font-size:10px!important;
    font-weight:650!important;
}

/* Gathr31 v2.8.50 — clean site invitation flow. */
body:has(.g31-site-invite-page) .entry-header{display:none!important}
.g31-site-invite-page{width:min(1240px,calc(100% - 40px));margin:24px auto 64px}
.g31-site-invite-hero{display:grid;grid-template-columns:auto 1fr;gap:28px;align-items:center;padding:38px 42px;border-radius:22px;background:linear-gradient(135deg,#101828,#263348);color:#fff}
.g31-site-invite-person{display:flex;align-items:center;gap:12px;padding-right:28px;border-right:1px solid rgba(255,255,255,.16)}
.g31-site-invite-person img{width:64px;height:64px;border-radius:50%}.g31-site-invite-person strong{display:block;margin-top:3px;color:#fff}
.g31-site-invite-eyebrow{font-size:9px;font-weight:900;letter-spacing:.13em;color:#ef4056}
.g31-site-invite-copy h1{margin:5px 0 9px;color:#fff;font-size:38px}.g31-site-invite-copy p{margin:0;max-width:760px;color:#ffffffbd;line-height:1.6}
.g31-site-invite-layout{display:grid;grid-template-columns:1.35fr .65fr;gap:20px;margin-top:20px}
.g31-site-invite-card,.g31-site-invite-sent{padding:28px;border:1px solid #e6e9ef;border-radius:18px;background:#fff}
.g31-site-invite-card h2,.g31-site-invite-sent h2{margin:5px 0 18px}
.g31-site-invite-form{display:grid;grid-template-columns:1fr 1fr;gap:14px}.g31-site-invite-form label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800}.g31-site-invite-form input{min-height:45px;padding:10px 12px;border:1px solid #d0d5dd;border-radius:10px}
.g31-site-invite-preview{grid-column:1/-1;padding:16px;border-radius:12px;background:#f8fafc}.g31-site-invite-preview small,.g31-site-invite-preview strong,.g31-site-invite-preview p{display:block}.g31-site-invite-preview small{color:#98a2b3;font-size:9px;font-weight:900;letter-spacing:.1em}.g31-site-invite-preview strong{margin-top:5px}.g31-site-invite-preview p{margin:4px 0 0;color:#667085;font-size:11px}
.g31-site-invite-submit{grid-column:1/-1;justify-self:start;min-height:43px;padding:10px 17px;border:0;border-radius:10px;background:#ef4056;color:#fff;font-size:11px;font-weight:850;cursor:pointer}
.g31-site-invite-note{margin:16px 0 0;color:#667085;font-size:10px}
.g31-site-invite-list{display:grid;gap:9px}.g31-site-invite-row{display:flex;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid #eef1f5}.g31-site-invite-row strong,.g31-site-invite-row span{display:block}.g31-site-invite-row span{margin-top:2px;color:#667085;font-size:10px}.g31-site-invite-row em{font-style:normal;color:#027a48;font-size:9px;font-weight:850}.g31-site-invite-empty{padding:18px;border-radius:10px;background:#f8fafc;color:#667085;font-size:11px}
.g31-membership-inviter-banner{display:flex;align-items:center;gap:13px;width:min(760px,calc(100% - 30px));margin:0 auto 22px;padding:14px 17px;border:1px solid #ffd7dd;border-radius:14px;background:#fff7f8}.g31-membership-inviter-banner img{width:48px;height:48px;border-radius:50%}.g31-membership-inviter-banner span,.g31-membership-inviter-banner strong,.g31-membership-inviter-banner p{display:block}.g31-membership-inviter-banner span{color:#ef4056;font-size:8px;font-weight:900;letter-spacing:.1em}.g31-membership-inviter-banner strong{margin-top:2px}.g31-membership-inviter-banner p{margin:2px 0 0;color:#667085;font-size:10px}
.g31-join-invited-by{margin:0 0 14px;padding:10px 12px;border-radius:10px;background:#fff7f8;color:#475467;font-size:11px}
@media(max-width:760px){.g31-site-invite-hero{grid-template-columns:1fr;padding:28px 24px}.g31-site-invite-person{padding-right:0;padding-bottom:18px;border-right:0;border-bottom:1px solid rgba(255,255,255,.16)}.g31-site-invite-layout{grid-template-columns:1fr}.g31-site-invite-form{grid-template-columns:1fr}.g31-site-invite-preview,.g31-site-invite-submit{grid-column:auto}}


/* ==========================================================
   Gathr31 v2.8.53 — temporary free test signup code
   ========================================================== */
.g31-test-code-box{
 display:flex;align-items:center;justify-content:space-between;gap:18px;
 margin:0 0 16px;padding:14px 16px;border:1px dashed #d0d5dd;border-radius:12px;background:#f8fafc
}
.g31-test-code-box>div strong,.g31-test-code-box>div span{display:block}
.g31-test-code-box>div strong{font-size:12px}.g31-test-code-box>div span{margin-top:2px;color:#667085;font-size:10px}
.g31-test-code-box form{display:flex;gap:7px}.g31-test-code-box input{min-height:38px;padding:8px 10px;border:1px solid #d0d5dd;border-radius:8px}
.g31-test-code-box button{min-height:38px;padding:8px 12px;border:0;border-radius:8px;background:#101828;color:#fff;font-size:10px;font-weight:800}
.g31-test-code-error{display:block;color:#b42318;font-size:10px}
.g31-free-test-registration{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px;border:1px solid #ffd7dd;border-radius:14px;background:#fff7f8}
.g31-free-test-registration label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:800}
.g31-free-test-registration input{min-height:43px;padding:9px 11px;border:1px solid #d0d5dd;border-radius:9px;background:#fff}
.g31-free-test-registration button{grid-column:1/-1;justify-self:start;min-height:42px;padding:10px 15px;border:0;border-radius:9px;background:#ef4056;color:#fff;font-size:11px;font-weight:850}
.g31-free-test-registration small{grid-column:1/-1;color:#667085;font-size:10px}
@media(max-width:680px){.g31-test-code-box{align-items:flex-start;flex-direction:column}.g31-free-test-registration{grid-template-columns:1fr}.g31-free-test-registration button,.g31-free-test-registration small{grid-column:auto}}


/* ==========================================================
   Gathr31 v2.8.62 — remove raw BuddyBoss PUA glyphs
   ========================================================== */

/*
 * Safari briefly paints BuddyBoss private-use icon characters as giant
 * diamonds before the icon font resolves. On People cards we no longer need
 * those icon-font glyphs: actions are rendered as stable text instead.
 */
body.g31-people-directory #members-list .member-button::before,
body.g31-people-directory #members-list .member-button::after,
body.g31-people-directory #members-list .generic-button::before,
body.g31-people-directory #members-list .generic-button::after,
body.g31-people-directory #members-list .action::before,
body.g31-people-directory #members-list .action::after,
body.g31-people-directory #members-list a::before,
body.g31-people-directory #members-list button::before,
body.g31-people-directory #members-list i,
body.g31-people-directory #members-list [class*="bb-icon"],
body.g31-people-directory #members-list [class*="bp-icon"]{
    font-family:inherit!important;
    text-shadow:none!important;
}

/* Never paint BuddyBoss action pseudo-glyphs inside People cards. */
body.g31-people-directory #members-list .member-button::before,
body.g31-people-directory #members-list .member-button::after,
body.g31-people-directory #members-list .generic-button::before,
body.g31-people-directory #members-list .generic-button::after,
body.g31-people-directory #members-list .action a::before,
body.g31-people-directory #members-list .action button::before,
body.g31-people-directory #members-list [class*="bb-icon"]::before,
body.g31-people-directory #members-list [class*="bp-icon"]::before{
    content:none!important;
    display:none!important;
}

/* Stable People action buttons — no icon font involved. */
body.g31-people-directory #members-list .g31-stable-member-action{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:28px!important;
    padding:5px 9px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:8px!important;
    color:#fff!important;
    background:transparent!important;
    font-family:inherit!important;
    font-size:0!important;
    font-weight:800!important;
    line-height:1!important;
    text-decoration:none!important;
    margin:0!important;
    white-space:nowrap!important;
}
body.g31-people-directory #members-list .g31-stable-member-action:hover{
    border-color:#ef4056!important;
    color:#ef4056!important;
}
body.g31-people-directory #members-list .g31-stable-member-action-label{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    font-family:inherit!important;
    font-size:9px!important;
    color:inherit!important;
    line-height:1!important;
}
body.g31-people-directory #members-list .g31-stable-member-action > :not(.g31-stable-member-action-label){
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Gathr31 v2.8.87 — readable spacing between People action pills. */
body.g31-people-directory #members-list .action,
body.g31-people-directory #members-list .item-meta-wrap + .action,
body.g31-people-directory #members-list [class*="member-actions"]{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    width:100%!important;
    column-gap:20px!important;
    row-gap:12px!important;
}
body.g31-people-directory #members-list .action > .generic-button,
body.g31-people-directory #members-list .action > .member-button,
body.g31-people-directory #members-list [class*="member-actions"] > .generic-button,
body.g31-people-directory #members-list [class*="member-actions"] > .member-button{
    position:static!important;
    inset:auto!important;
    display:inline-flex!important;
    float:none!important;
    flex:0 0 auto!important;
    margin:0 4px 4px!important;
    transform:none!important;
}
body.g31-people-directory #members-list .g31-stable-member-action{
    position:relative!important;
    inset:auto!important;
    min-width:82px!important;
    min-height:32px!important;
    padding:7px 14px!important;
    transform:none!important;
}
body.g31-people-directory #members-list .g31-stable-member-action-label{
    letter-spacing:.01em!important;
}

/* Gathr31 v2.9.22 — a natural-flow, two-tier member-card footer.
   Keeping both rows in the card's flex layout prevents buttons from crossing
   the member activity text and lets every grid row find its own safe height. */
body.g31-people-directory #members-list > li.g31-has-safety-actions,
body.g31-people-directory ul.members-list > li.g31-has-safety-actions,
body.g31-people-directory .bp-list.members-list > li.g31-has-safety-actions{
    position:relative!important;
}
body.g31-people-directory #members-list > li.g31-has-safety-actions .action,
body.g31-people-directory ul.members-list > li.g31-has-safety-actions .action,
body.g31-people-directory .bp-list.members-list > li.g31-has-safety-actions .action{
    position:static!important;
    inset:auto!important;
    width:100%!important;
    margin:auto 0 0!important;
    padding-top:20px!important;
}
body.g31-people-directory #members-list > li.g31-has-safety-actions .bb-rl-member-buttons-wrap,
body.g31-people-directory ul.members-list > li.g31-has-safety-actions .bb-rl-member-buttons-wrap,
body.g31-people-directory .bp-list.members-list > li.g31-has-safety-actions .bb-rl-member-buttons-wrap{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    margin:auto 0 0!important;
    padding:20px 0 0!important;
    transform:none!important;
}
body.g31-people-directory #members-list > li.g31-has-safety-actions .bb-rl-item-actions,
body.g31-people-directory ul.members-list > li.g31-has-safety-actions .bb-rl-item-actions,
body.g31-people-directory .bp-list.members-list > li.g31-has-safety-actions .bb-rl-item-actions{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:nowrap!important;
    gap:14px!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
}
body.g31-people-directory #members-list > li.g31-has-safety-actions .bb-rl-secondary-actions,
body.g31-people-directory #members-list > li.g31-has-safety-actions .bb-rl-primary-actions,
body.g31-people-directory ul.members-list > li.g31-has-safety-actions .bb-rl-secondary-actions,
body.g31-people-directory ul.members-list > li.g31-has-safety-actions .bb-rl-primary-actions{
    flex:0 0 auto!important;
    margin:0!important;
    padding:0!important;
}
body.g31-people-directory #members-list .g31-member-safety-actions{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:4px!important;
    width:calc(100% - 24px)!important;
    margin:10px auto 0!important;
    padding:9px 0 0!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
}
body.g31-people-directory #members-list .g31-member-safety-actions > .generic-button,
body.g31-people-directory #members-list .g31-member-safety-actions > .member-button{
    position:static!important;
    inset:auto!important;
    display:inline-flex!important;
    float:none!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
}
body.g31-people-directory #members-list .g31-stable-safety-action{
    position:relative!important;
    inset:auto!important;
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:52px!important;
    min-height:24px!important;
    margin:0!important;
    padding:4px 8px!important;
    border:0!important;
    border-radius:6px!important;
    background:transparent!important;
    box-shadow:none!important;
    color:rgba(255,255,255,.72)!important;
    font-family:inherit!important;
    font-size:0!important;
    font-weight:800!important;
    line-height:1!important;
    text-decoration:none!important;
    text-shadow:none!important;
    white-space:nowrap!important;
    transform:none!important;
    transition:border-color .18s ease,background .18s ease,color .18s ease!important;
}
body.g31-people-directory #members-list .g31-stable-safety-action.is-block:hover{
    background:rgba(246,184,63,.08)!important;
    color:#f6c867!important;
}
body.g31-people-directory #members-list .g31-stable-safety-action.is-report:hover{
    background:rgba(239,64,86,.09)!important;
    color:#ff8b9a!important;
}
body.g31-people-directory #members-list .g31-stable-safety-action-label{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    color:inherit!important;
    font-family:inherit!important;
    font-size:9px!important;
    font-weight:850!important;
    letter-spacing:.035em!important;
    line-height:1!important;
}
body.g31-people-directory #members-list .g31-stable-safety-action > :not(.g31-stable-safety-action-label){
    width:0!important;
    height:0!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
    opacity:0!important;
    pointer-events:none!important;
}

/* Gathr31 v2.8.86 — keep ReadyLaunch messaging functional and glyph-safe.
   Existing-thread buttons retain their untouched BuddyBoss DOM and listeners. */
body.g31-people-directory .bb-rl-messages-container [class*="bb-icon"]::before,
body.g31-people-directory .bb-rl-messages-container [class*="bb-icon"]::after,
body.g31-people-directory .bp-messages-content [class*="bb-icon"]::before,
body.g31-people-directory .bp-messages-content [class*="bb-icon"]::after,
body.g31-people-directory [class*="message"] [class*="bp-icon"]::before,
body.g31-people-directory [class*="message"] [class*="bp-icon"]::after,
body.g31-people-directory .bb-rl-modal [class*="bb-icon"]::before,
body.g31-people-directory .bb-rl-modal [class*="bb-icon"]::after{
    content:none!important;
    display:none!important;
}
body.g31-people-directory .bb-rl-messages-container i[class*="icon"],
body.g31-people-directory .bp-messages-content i[class*="icon"],
body.g31-people-directory .bb-rl-modal i[class*="icon"]{
    display:none!important;
}

/*
 * Circles already has textual role labels ("Organizer", "Member"). Suppress
 * only the BuddyBoss icon-font glyph that precedes those labels.
 */
body.g31-circles-directory #groups-list .group-role::before,
body.g31-circles-directory #groups-list .group-role::after,
body.g31-circles-directory #groups-list .group-status::before,
body.g31-circles-directory #groups-list .group-status::after,
body.g31-circles-directory #groups-list .item-meta [class*="icon"]::before,
body.g31-circles-directory #groups-list .item-meta [class*="bb-"]::before,
body.g31-circles-directory #groups-list .item-meta [class*="bp-"]::before,
body.g31-circles-directory #groups-list [class*="organizer"]::before,
body.g31-circles-directory #groups-list [class*="member-role"]::before{
    content:none!important;
    display:none!important;
}

/* Defensive: any remaining icon-font nodes in Circle metadata stay hidden. */
body.g31-circles-directory #groups-list .item-meta i,
body.g31-circles-directory #groups-list .group-meta i,
body.g31-circles-directory #groups-list .item-meta [class*="bb-icon"],
body.g31-circles-directory #groups-list .group-meta [class*="bb-icon"]{
    display:none!important;
}


/* ==========================================================
   Gathr31 v2.8.65 — member profile stabilization
   ========================================================== */
body.g31-member-profile .bb-rl-left-panel,
body.g31-member-profile .bb-rl-left-sidebar,
body.g31-member-profile .bb-rl-sidebar,
body.g31-member-profile .bb-rl-primary-sidebar,
body.g31-member-profile .bb-left-panel,
body.g31-member-profile .buddypanel,
body.g31-member-profile .bb-mobile-panel-wrapper{
    display:none!important;
}

/* Follow is not part of the Gathr31 relationship model. */
body.g31-member-profile a[href*="follow"],
body.g31-member-profile button[data-bp-btn-action*="follow"],
body.g31-member-profile [class*="follow-button"]{
    display:none!important;
}

/* Stop ReadyLaunch private-use icon glyphs painting as huge shapes. */
body.g31-member-profile #item-header [class*="bb-icon"]::before,
body.g31-member-profile #item-header [class*="bb-icon"]::after,
body.g31-member-profile #item-header [class*="bp-icon"]::before,
body.g31-member-profile #item-header [class*="bp-icon"]::after,
body.g31-member-profile #item-header .generic-button::before,
body.g31-member-profile #item-header .generic-button::after,
body.g31-member-profile #item-header .member-button::before,
body.g31-member-profile #item-header .member-button::after{
    content:none!important;
    display:none!important;
}

body.g31-member-profile .g31-stable-profile-action{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    padding:8px 12px!important;
    border:1px solid rgba(255,255,255,.25)!important;
    border-radius:9px!important;
    background:transparent!important;
    color:#fff!important;
    font-family:inherit!important;
    font-size:11px!important;
    font-weight:800!important;
    line-height:1!important;
    text-decoration:none!important;
}
body.g31-member-profile .g31-stable-profile-action:hover{
    border-color:#ef4056!important;
    color:#ef4056!important;
}

/* Remove ReadyLaunch secondary utility/navigation chrome leaking around profile. */
body.g31-member-profile .bb-rl-secondary-header,
body.g31-member-profile .bb-rl-profile-subnav,
body.g31-member-profile .bb-rl-profile-nav-extra{
    display:none!important;
}


/* ==========================================================
   Gathr31 v2.8.66 — Native Member Profile
   ========================================================== */
body.g31-native-member-profile{
    background:#fff!important;
}
body.g31-native-member-profile .bb-rl-left-panel,
body.g31-native-member-profile .bb-rl-left-sidebar,
body.g31-native-member-profile .bb-rl-sidebar,
body.g31-native-member-profile .bb-rl-primary-sidebar{
    display:none!important;
}
.g31-native-profile-page{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0 0 60px!important;
    background:#fff!important;
}
.g31-native-profile-shell{
    width:min(1240px,calc(100% - 40px));
    margin:24px auto 0;
}
.g31-native-profile-breadcrumb{
    margin:0 0 12px;
}
.g31-native-profile-breadcrumb a{
    color:#667085!important;
    font-size:11px!important;
    font-weight:750!important;
    text-decoration:none!important;
}
.g31-native-profile-hero{
    position:relative;
    /* The shield menu extends below the banner. Clip the cover overlay using
       its own radius, not the whole section and its interactive children. */
    overflow:visible;
    z-index:2;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:28px;
    min-height:250px;
    padding:38px 44px;
    border-radius:24px;
    background:linear-gradient(135deg,#101828 0%,#1d2939 70%,#344054 100%);
    color:#fff;
    box-sizing:border-box;
}
.g31-native-profile-hero.has-cover{
    background-position:center!important;
    background-size:cover!important;
}
.g31-native-profile-hero.has-cover::before{
    content:"";
    position:absolute;
    z-index:0;
    inset:0;
    border-radius:inherit;
    background:linear-gradient(90deg,rgba(16,24,40,.9) 0%,rgba(16,24,40,.68) 54%,rgba(16,24,40,.46) 100%);
}
.g31-native-profile-hero>*{
    position:relative;
    z-index:1;
}
.g31-native-profile-hero-main{
    display:flex;
    align-items:center;
    gap:26px;
    min-width:0;
}
.g31-native-profile-avatar img{
    display:block!important;
    width:138px!important;
    height:138px!important;
    max-width:none!important;
    border:5px solid rgba(255,255,255,.18)!important;
    border-radius:50%!important;
    object-fit:cover!important;
    background:#fff!important;
}
.g31-native-profile-eyebrow{
    display:block;
    color:#ef4056!important;
    font-size:9px!important;
    font-weight:900!important;
    letter-spacing:.14em!important;
}
.g31-native-profile-identity h1{
    margin:7px 0 12px!important;
    color:#fff!important;
    font-size:42px!important;
    line-height:1.06!important;
}
.g31-native-profile-meta{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:9px;
}
.g31-native-profile-meta>span{
    color:rgba(255,255,255,.72)!important;
    font-size:11px!important;
}
.g31-native-profile-tier{
    padding:7px 10px!important;
    border:1px solid rgba(239,64,86,.45)!important;
    border-radius:999px!important;
    background:rgba(239,64,86,.13)!important;
    color:#fff!important;
    font-weight:850!important;
}
.g31-native-profile-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex:0 0 auto;
}
.g31-native-profile-button{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:42px!important;
    padding:10px 16px!important;
    border:1px solid rgba(255,255,255,.22)!important;
    border-radius:10px!important;
    color:#fff!important;
    background:transparent!important;
    font-family:inherit!important;
    font-size:11px!important;
    font-weight:850!important;
    text-decoration:none!important;
}
.g31-native-profile-connect{
    border-color:#ef4056!important;
    background:#ef4056!important;
}
.g31-native-profile-button.is-disabled{
    opacity:.65;
}
.g31-native-profile-grid{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:20px;
    margin-top:20px;
}
.g31-native-profile-card{
    padding:28px;
    border:1px solid #e6e9ef;
    border-radius:18px;
    background:#fff;
    box-shadow:0 8px 24px rgba(16,24,40,.04);
}
.g31-native-profile-card h2{
    margin:6px 0 12px!important;
    color:#101828!important;
    font-size:22px!important;
}
.g31-native-profile-card p{
    margin:0!important;
    color:#475467!important;
    font-size:13px!important;
    line-height:1.65!important;
}
.g31-native-profile-muted{
    color:#98a2b3!important;
}
.g31-native-profile-section-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
}
.g31-native-profile-section-head a{
    color:#ef4056!important;
    font-size:10px!important;
    font-weight:800!important;
    text-decoration:none!important;
}
.g31-native-profile-circles{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
    margin-top:14px;
}
.g31-native-profile-circle{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-width:0!important;
    padding:11px!important;
    border:1px solid #eaecf0!important;
    border-radius:12px!important;
    color:#344054!important;
    background:#fcfcfd!important;
    text-decoration:none!important;
}
.g31-native-profile-circle img{
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
    border-radius:50%!important;
    object-fit:cover!important;
}
.g31-native-profile-circle-placeholder{
    display:flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    flex:0 0 38px;
    border-radius:50%;
    background:#f2f4f7;
}
.g31-native-profile-circle strong{
    overflow:hidden;
    color:#344054!important;
    font-size:10px!important;
    line-height:1.25!important;
    text-overflow:ellipsis;
}
.g31-native-profile-empty{
    margin-top:15px!important;
    color:#98a2b3!important;
}
.g31-native-profile-community-note{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:30px;
    margin-top:20px;
    padding:24px 28px;
    border-radius:18px;
    background:#f8fafc;
}
.g31-native-profile-community-note strong{
    display:block;
    margin-top:5px;
    color:#101828;
    font-size:16px;
}
.g31-native-profile-community-note p{
    margin:4px 0 0;
    color:#667085;
    font-size:11px;
}
.g31-native-profile-community-note>a{
    flex:0 0 auto;
    color:#ef4056!important;
    font-size:11px!important;
    font-weight:850!important;
    text-decoration:none!important;
}
@media(max-width:850px){
    .g31-native-profile-hero{
        align-items:flex-start;
        flex-direction:column;
        padding:30px 26px;
    }
    .g31-native-profile-grid{
        grid-template-columns:1fr;
    }
    .g31-native-profile-circles{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}
@media(max-width:560px){
    .g31-native-profile-shell{
        width:min(100% - 22px,1240px);
    }
    .g31-native-profile-hero-main{
        align-items:flex-start;
        flex-direction:column;
    }
    .g31-native-profile-avatar img{
        width:100px!important;
        height:100px!important;
    }
    .g31-native-profile-identity h1{
        font-size:32px!important;
    }
    .g31-native-profile-actions{
        width:100%;
    }
    .g31-native-profile-button{
        flex:1;
    }
    .g31-native-profile-circles{
        grid-template-columns:1fr;
    }
.g31-native-profile-community-note{
        align-items:flex-start;
        flex-direction:column;
    }
}

/* Gathr31 v2.9.00 — Membership Centre and Tiime invoice copies */
.g31-membership-centre{width:min(1120px,calc(100% - 34px));margin:28px auto 56px;color:#20252d}
.g31-membership-centre *{box-sizing:border-box}
.g31-membership-centre .g31-membership-hero{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;padding:42px 46px;border-radius:24px;background:linear-gradient(135deg,#111a2c,#24344f);color:#fff;text-align:left}
.g31-membership-centre .g31-membership-hero span,.g31-membership-section-heading span,.g31-membership-plan-card>span,.g31-membership-invoice-choice>span,.g31-business-billing-head span{display:block;color:#ef7180;font-size:10px;font-weight:900;letter-spacing:.13em}
.g31-membership-centre .g31-membership-hero h1{margin:6px 0 8px;color:#fff;font-size:42px;line-height:1.05}
.g31-membership-centre .g31-membership-hero p{max-width:620px;margin:0;color:#ffffffc9;font-size:14px;line-height:1.6}
.g31-membership-centre .g31-membership-hero>a{flex:0 0 auto;padding:11px 16px;border:1px solid #ffffff36;border-radius:999px;color:#fff!important;font-size:11px;font-weight:800;text-decoration:none!important}
.g31-membership-summary-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:22px;margin-top:22px}
.g31-membership-plan-card,.g31-membership-invoice-choice,.g31-membership-invoices{padding:30px;border:1px solid #e8e2dc;border-radius:20px;background:#fff;box-shadow:0 10px 30px rgba(30,35,44,.055)}
.g31-membership-plan-card h2,.g31-membership-invoice-choice h2{margin:7px 0 14px;font-size:25px}
.g31-membership-centre .g31-membership-price{display:block;margin:0 0 20px;padding:18px;border-radius:14px;background:#f8f6f3}
.g31-membership-centre .g31-membership-price strong{display:block;font-size:27px;line-height:1.1}
.g31-membership-centre .g31-membership-price small{display:block;margin-top:5px;color:#6d7380;font-size:11px}
.g31-membership-host-note{margin:-8px 0 18px;padding:11px;border-radius:10px;background:#fff8e9;color:#77551c;font-size:10px;line-height:1.5}
.g31-membership-plan-card dl,.g31-business-billing-details dl{margin:0}
.g31-membership-plan-card dl div,.g31-business-billing-details dl div{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-top:1px solid #eeeae6}
.g31-membership-plan-card dt,.g31-business-billing-details dt{color:#727986;font-size:11px}
.g31-membership-plan-card dd,.g31-business-billing-details dd{margin:0;font-size:11px;font-weight:900;text-align:right}
.g31-membership-secondary{display:inline-flex;margin-top:19px;color:#d9374c!important;font-size:11px;font-weight:900;text-decoration:none!important}
.g31-membership-invoice-choice>p{margin:0 0 18px;color:#626a78;font-size:12px;line-height:1.55}
.g31-membership-invoice-choice form>label:not(.g31-invoice-toggle),.g31-business-billing-form>label,.g31-business-billing-form>div label{display:block;margin-top:13px}
.g31-membership-invoice-choice label>span,.g31-business-billing-form label>span{display:block;margin-bottom:5px;color:#4f5765;font-size:10px;font-weight:850}
.g31-membership-invoice-choice input[type=text],.g31-membership-invoice-choice textarea,.g31-business-billing-form input,.g31-business-billing-form textarea{width:100%;padding:10px 12px;border:1px solid #d9d9d9;border-radius:9px;background:#fff;font-size:12px}
.g31-invoice-toggle{display:flex!important;align-items:flex-start;gap:10px;padding:14px;border-radius:12px;background:#f6f9f7;cursor:pointer}
.g31-invoice-toggle input{margin-top:3px}.g31-invoice-toggle span{margin:0!important}.g31-invoice-toggle strong,.g31-invoice-toggle small{display:block}.g31-invoice-toggle small{margin-top:3px;color:#707782;font-size:10px;font-weight:500}
.g31-membership-invoice-choice button,.g31-business-billing-form button{margin-top:16px;padding:11px 17px;border:0;border-radius:10px;background:#ef4056;color:#fff;font-size:11px;font-weight:900;cursor:pointer}
.g31-membership-invoices{margin-top:22px}.g31-membership-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}
.g31-membership-section-heading h2{margin:5px 0 0;font-size:25px}.g31-membership-section-heading p{margin:0;color:#7a808b;font-size:10px}
.g31-invoice-empty{padding:23px;border:1px dashed #dad6d1;border-radius:14px;background:#fbfaf8;text-align:center}.g31-invoice-empty strong{font-size:12px}.g31-invoice-empty p{margin:5px 0 0;color:#767d88;font-size:10px}
.g31-invoice-list{display:grid;gap:9px}.g31-invoice-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:13px;padding:13px 15px;border:1px solid #ece8e4;border-radius:12px;background:#fff}
.g31-invoice-pdf{display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:9px;background:#fff0f2;color:#cf3045;font-size:9px;font-weight:950}
.g31-invoice-row strong,.g31-invoice-row small{display:block}.g31-invoice-row strong{font-size:11px}.g31-invoice-row small{margin-top:3px;color:#7b818b;font-size:9px}.g31-invoice-row>b{font-size:10px}.g31-invoice-row>a{padding:8px 11px;border-radius:8px;background:#172236;color:#fff!important;font-size:9px;font-weight:900;text-decoration:none!important}
.g31-membership-success,.g31-membership-notice{margin:0 0 16px;padding:12px 15px;border-radius:11px;background:#eaf8ef;color:#11733f;font-size:11px;font-weight:800}.g31-membership-notice{background:#fff5e7;color:#945d12}
.g31-business-billing-panel{width:min(1180px,calc(100% - 34px));margin:22px auto;padding:28px;border:1px solid #e5dfd8;border-radius:20px;background:#fff;box-shadow:0 12px 35px rgba(30,35,44,.065);box-sizing:border-box}
.g31-business-billing-panel *{box-sizing:border-box}.g31-business-billing-head{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:21px;border-bottom:1px solid #eee9e4}
.g31-business-billing-head h2{margin:5px 0 5px;font-size:25px}.g31-business-billing-head p{margin:0;color:#69717e;font-size:11px}
.g31-business-price{flex:0 0 auto;padding:15px 18px;border-radius:13px;background:#f7f4f0;text-align:right}.g31-business-price strong,.g31-business-price small{display:block}.g31-business-price strong{font-size:22px}.g31-business-price small{margin-top:4px;color:#737a84;font-size:10px}
.g31-business-billing-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:26px;padding:23px 0}.g31-business-billing-details>p{margin:17px 0 0;color:#717885;font-size:10px;line-height:1.55}
.g31-business-billing-form{padding:19px;border-radius:14px;background:#faf8f5}.g31-business-billing-form h3{margin:0 0 8px;font-size:16px}.g31-business-billing-form>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.g31-business-invoices{padding-top:20px;border-top:1px solid #eee9e4}.g31-business-invoices>h3{margin:0 0 14px;font-size:17px}
@media(max-width:760px){.g31-membership-centre .g31-membership-hero,.g31-business-billing-head{display:block;padding:30px 23px}.g31-membership-centre .g31-membership-hero>a{display:inline-flex;margin-top:18px}.g31-membership-centre .g31-membership-hero h1{font-size:34px}.g31-membership-summary-grid,.g31-business-billing-grid{grid-template-columns:1fr}.g31-membership-plan-card,.g31-membership-invoice-choice,.g31-membership-invoices,.g31-business-billing-panel{padding:21px}.g31-membership-section-heading{display:block}.g31-membership-section-heading p{margin-top:7px}.g31-invoice-row{grid-template-columns:42px 1fr}.g31-invoice-row>b{grid-column:2}.g31-invoice-row>a{grid-column:2;justify-self:start}.g31-business-price{margin-top:15px;text-align:left}.g31-business-billing-form>div{grid-template-columns:1fr}}

/* ==========================================================
   Gathr31 v2.9.07 - Circles canonical grid recovery
   ========================================================== */

/* ReadyLaunch can nest its directory wrapper for ordinary members. Treat
   those wrappers as full-width containers so the Groups list cannot inherit a
   narrow sidebar/grid track. True Circle visibility remains server-controlled. */
html body.g31-circles-directory #buddypress .groups-directory-wrapper,
html body.g31-circles-directory #buddypress .groups-directory-container,
html body.g31-circles-directory #buddypress #groups-dir-list{
    box-sizing:border-box!important;
    display:block!important;
    grid-template-columns:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
}

/* Restore the proven four-card desktop directory independently of the retired
   g31-five-circle-grid experiment. */
html body.g31-circles-directory #groups-list{
    box-sizing:border-box!important;
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    align-items:stretch!important;
    gap:22px!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:18px 0 32px!important;
    padding:0!important;
}
html body.g31-circles-directory #groups-list > li{
    box-sizing:border-box!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    margin:0!important;
}
@media(max-width:1150px){
    html body.g31-circles-directory #groups-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:850px){
    html body.g31-circles-directory #groups-list{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}
@media(max-width:560px){
    html body.g31-circles-directory #groups-list{grid-template-columns:1fr!important;}
}

/* Gathr31 v2.9.08 - centred Toulouse Unlocked Member Home CTA */
.g31-home-guide-cta-wrap{
    display:flex;
    justify-content:center;
    width:100%;
    margin:22px 0 2px;
}
.g31-home-guide-cta{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:22px!important;
    min-height:54px!important;
    padding:11px 18px 11px 20px!important;
    border:1px solid #ef4056!important;
    border-radius:14px!important;
    background:linear-gradient(135deg,#ef4056,#dc2f49)!important;
    color:#fff!important;
    text-align:left!important;
    text-decoration:none!important;
    box-shadow:0 8px 20px rgba(239,64,86,.22)!important;
    transition:transform .16s ease,box-shadow .16s ease!important;
}
.g31-home-guide-cta:hover,
.g31-home-guide-cta:focus{
    color:#fff!important;
    text-decoration:none!important;
    transform:translateY(-2px)!important;
    box-shadow:0 11px 25px rgba(239,64,86,.3)!important;
}
.g31-home-guide-cta span,
.g31-home-guide-cta small,
.g31-home-guide-cta strong{
    display:block!important;
}
.g31-home-guide-cta small{
    margin:0 0 2px!important;
    color:rgba(255,255,255,.78)!important;
    font-size:8px!important;
    font-weight:900!important;
    line-height:1.2!important;
    letter-spacing:.11em!important;
}
.g31-home-guide-cta strong{
    color:#fff!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:1.2!important;
}
.g31-home-guide-cta b{
    padding-left:18px!important;
    border-left:1px solid rgba(255,255,255,.28)!important;
    color:#fff!important;
    font-size:10px!important;
    font-weight:900!important;
    line-height:1.25!important;
    white-space:nowrap!important;
}
@media(max-width:560px){
    .g31-home-guide-cta{
        width:100%!important;
        justify-content:space-between!important;
        gap:12px!important;
        padding:11px 14px!important;
    }
    .g31-home-guide-cta b{padding-left:12px!important;white-space:normal!important;text-align:right!important;}
}

/* Gathr31 v2.9.15 - immediately distinct membership-tier badges */
.g31-member-level-badge{
    gap:5px!important;
}
.g31-member-level-badge-icon{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex:0 0 auto!important;
    font-size:15px!important;
    font-weight:900!important;
    line-height:.8!important;
}
.g31-member-level-badge-label{
    display:inline-block!important;
    line-height:1!important;
}
.g31-member-level-badge--gatherer{
    border-color:#98a2b3!important;
    background:linear-gradient(135deg,#667085,#475467)!important;
    color:#fff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 3px 9px rgba(16,24,40,.12)!important;
}
.g31-member-level-badge--gatherer .g31-member-level-badge-icon{
    color:#fff!important;
    font-size:17px!important;
}
.g31-member-level-badge--gatherer-plus{
    border-color:rgba(239,64,86,.48)!important;
    background:rgba(239,64,86,.12)!important;
    color:#ef4056!important;
    box-shadow:0 3px 10px rgba(239,64,86,.08)!important;
}
.g31-member-level-badge--gatherer-plus .g31-member-level-badge-icon{
    color:#d69e18!important;
    text-shadow:0 1px 0 rgba(255,255,255,.45)!important;
}
.g31-member-level-badge--super-gatherer-host{
    border-color:rgba(239,64,86,.48)!important;
    background:rgba(239,64,86,.12)!important;
    color:#ef4056!important;
}
.g31-member-level-badge--super-gatherer-host .g31-member-level-badge-icon{
    color:#f6b83f!important;
    font-size:17px!important;
}
.g31-connection-count{
    color:inherit!important;
}

/* Gathr31 v2.9.23 — discreet profile-only community safeguards. */
body.g31-people-directory .g31-member-safety-actions,
body.g31-people-directory [data-g31-safety-action]{
    display:none!important;
}

.g31-profile-safeguards{
    position:relative;
    z-index:30;
    flex:0 0 auto;
}
.g31-profile-safeguards-trigger{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:42px!important;
    height:42px!important;
    margin:0!important;
    padding:0!important;
    border:1px solid rgba(255,255,255,.45)!important;
    border-radius:50%!important;
    background:rgba(16,24,40,.22)!important;
    color:#fff!important;
    box-shadow:0 6px 18px rgba(16,24,40,.14)!important;
    cursor:pointer!important;
    backdrop-filter:blur(5px);
    transition:background .18s ease,border-color .18s ease,transform .18s ease!important;
}
.g31-profile-safeguards-trigger:hover,
.g31-profile-safeguards-trigger:focus,
.g31-profile-safeguards.is-open .g31-profile-safeguards-trigger{
    border-color:rgba(255,255,255,.8)!important;
    background:rgba(16,24,40,.42)!important;
    color:#fff!important;
    outline:none!important;
    transform:translateY(-1px);
}
.g31-profile-safeguards-trigger svg{
    width:20px!important;
    height:20px!important;
    fill:none!important;
    stroke:currentColor!important;
    stroke-width:1.75!important;
    stroke-linecap:round!important;
    stroke-linejoin:round!important;
}
.g31-profile-safeguards-menu{
    position:absolute;
    top:52px;
    right:0;
    width:300px;
    padding:8px;
    border:1px solid #e7e9ee;
    border-radius:16px;
    background:#fff;
    color:#101828;
    box-shadow:0 18px 50px rgba(16,24,40,.18);
    box-sizing:border-box;
    max-height:calc(100vh - 110px);
    overflow-y:auto;
}
.g31-profile-safeguards-menu[hidden]{display:none!important;}
.g31-profile-safeguards-heading{
    padding:10px 11px 12px;
    border-bottom:1px solid #eef0f3;
}
.g31-profile-safeguards-heading strong,
.g31-profile-safeguards-heading span{
    display:block;
}
.g31-profile-safeguards-heading strong{
    color:#101828!important;
    font-size:12px!important;
    font-weight:900!important;
}
.g31-profile-safeguards-heading span{
    margin-top:3px;
    color:#667085!important;
    font-size:10px!important;
    line-height:1.4!important;
}
.g31-profile-safeguard-option{
    position:relative;
    display:flex;
    align-items:flex-start;
    gap:11px;
    margin-top:5px;
    padding:10px 11px;
    border-radius:11px;
    cursor:pointer;
    transition:background .15s ease;
}
.g31-profile-safeguard-option:hover,
.g31-profile-safeguard-option:focus-within{
    background:#f8f9fb;
}
.g31-profile-safeguard-icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    width:23px;
    height:23px;
    border-radius:50%;
    background:#f2f4f7;
    color:#475467;
    font-size:13px;
    font-weight:900;
}
.g31-profile-safeguard-copy,
.g31-profile-safeguard-copy strong,
.g31-profile-safeguard-copy small{
    display:block;
}
.g31-profile-safeguard-copy strong{
    color:#1d2939!important;
    font-size:11px!important;
    font-weight:850!important;
    line-height:1.3!important;
}
.g31-profile-safeguard-copy small{
    margin-top:3px;
    color:#667085!important;
    font-size:9px!important;
    line-height:1.45!important;
}
.g31-profile-safeguard-option>.generic-button{
    position:absolute!important;
    inset:0!important;
    z-index:3!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
}
.g31-profile-safeguard-option>.generic-button>a,
.g31-profile-safeguard-option>.generic-button>button,
.g31-profile-safeguard-option>.generic-button>span>a,
.g31-profile-safeguard-option>.generic-button>span>button{
    position:absolute!important;
    inset:0!important;
    display:block!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-shadow:none!important;
    opacity:.001!important;
    cursor:pointer!important;
}
@media(max-width:560px){
    .g31-profile-safeguards{position:absolute;top:18px;right:18px;}
    .g31-profile-safeguards-menu{position:fixed;top:86px;right:14px;left:14px;width:auto;}
}

/* Gathr31 v2.9.26 - centre the friendly People-card actions as one pair. */
body.g31-people-directory #members-list .bb-rl-member-buttons-wrap,
body.g31-people-directory #members-list .bb-rl-item-actions,
body.g31-people-directory #members-list .bb-rl-primary-actions,
body.g31-people-directory #members-list .bb-rl-secondary-actions,
body.g31-people-directory #members-list .action,
body.g31-people-directory #members-list [class*="member-actions"]{
    box-sizing:border-box!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    width:100%!important;
    margin-right:auto!important;
    margin-left:auto!important;
    text-align:center!important;
}
body.g31-people-directory #members-list .bb-rl-primary-actions:empty,
body.g31-people-directory #members-list .bb-rl-secondary-actions:empty{
    display:none!important;
}
body.g31-people-directory #members-list .g31-restored-connection-action,
body.g31-people-directory #members-list .bb-rl-primary-actions>.generic-button,
body.g31-people-directory #members-list .bb-rl-secondary-actions>.generic-button{
    float:none!important;
    flex:0 0 auto!important;
    margin:0!important;
}
body.g31-people-directory #members-list .member-button-wrap.footer-button-wrap{
    display:flex!important;align-items:center!important;justify-content:center!important;
    gap:10px!important;width:100%!important;margin:0 auto!important;float:none!important;
}
.g31-profile-safeguard-option:focus-within{
    outline:2px solid #667085;
    outline-offset:-2px;
}

/* v2.9.63 — Perk schedules, upgrade paths and member perk summary */
.g31-perk-schedule-options{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:8px}.g31-perk-schedule-options label{display:inline-flex;align-items:center;gap:5px;font-weight:700}.g31-perk-availability{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:10px 0 4px;font-size:12px}.g31-perk-availability strong{color:#027a48}.g31-perk-availability span{color:#667085}.g31-perk-upgrade-button{display:inline-block;margin-top:10px;padding:9px 14px;border-radius:999px;background:#ef4056;color:#fff!important;text-decoration:none!important;font-weight:850}.g31-home-my-perks{margin:0 0 24px;padding:22px;border:1px solid #e6e9ef;border-radius:18px;background:#fff}.g31-home-my-perks .g31-my-perks-list{margin-top:12px}


/* Gathr31 v2.9.70 — native People/member profile refinement */
.g31-native-profile-actions-stacked{align-items:flex-end;flex-direction:column}
.g31-native-profile-actions-main{display:flex;align-items:center;gap:10px}
.g31-native-profile-connect.is-connected{border-color:rgba(255,255,255,.28)!important;background:rgba(255,255,255,.12)!important}
.g31-native-profile-safety{min-height:28px}
.g31-native-profile-overview{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.75fr);gap:20px;margin-top:20px;align-items:start}
.g31-native-profile-side-stack{display:grid;gap:20px}
.g31-native-profile-about-card{min-height:260px}
.g31-native-profile-about-copy{font-size:14px!important;line-height:1.75!important}
.g31-native-profile-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0 0!important;padding-top:20px;border-top:1px solid #eaecf0}
.g31-native-profile-facts div{min-width:0;padding:13px 14px;border-radius:13px;background:#f8fafc}
.g31-native-profile-facts dt{margin:0 0 5px;color:#98a2b3;font-size:9px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.g31-native-profile-facts dd{margin:0;color:#101828;font-size:13px;font-weight:800;line-height:1.35;overflow-wrap:anywhere}
.g31-native-profile-connection-avatars{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:18px}
.g31-native-profile-connection-avatars a{display:block;border-radius:50%;text-decoration:none!important}
.g31-native-profile-connection-avatars img{display:block!important;width:52px!important;height:52px!important;border:3px solid #fff!important;border-radius:50%!important;box-shadow:0 0 0 1px #e4e7ec;object-fit:cover!important}
.g31-native-profile-mini-circles{display:grid;gap:8px;margin-top:16px}
.g31-native-profile-mini-circles a{display:flex!important;align-items:center!important;gap:10px!important;padding:9px 10px!important;border:1px solid #eaecf0!important;border-radius:11px!important;color:#344054!important;background:#fcfcfd!important;text-decoration:none!important}
.g31-native-profile-mini-circles img{width:34px!important;height:34px!important;border-radius:50%!important;object-fit:cover!important}
.g31-native-profile-mini-circles span{font-size:11px;font-weight:800;line-height:1.3}
@media(max-width:900px){.g31-native-profile-overview{grid-template-columns:1fr}.g31-native-profile-facts{grid-template-columns:1fr}}
@media(max-width:560px){.g31-native-profile-actions-stacked,.g31-native-profile-actions-main{width:100%}.g31-native-profile-actions-main{flex-wrap:wrap}.g31-native-profile-actions-main .g31-native-profile-button{flex:1}.g31-native-profile-facts{margin-top:18px!important}}


/* v2.9.73 — Experience invitation RSVP */
.g31-invite-response-note{
  margin:18px 0;
  padding:18px 20px;
  border:1px solid rgba(31,45,61,.12);
  border-radius:16px;
  background:#fff8f4;
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px 16px;
}
.g31-invite-response-note strong{display:block;flex:1 1 100%;font-size:16px;line-height:1.35}
.g31-invite-response-note>span{flex:1 1 320px;line-height:1.5}
.g31-invite-decline-form{margin:0}
.g31-invite-response-note.is-declined{background:#f7f7f8}
.g31-invite-response-note.is-declined span{display:block;flex-basis:100%}
.g31-invite-declined-badge{background:#f1f2f4!important;color:#59636f!important}

/* v2.9.81 partner centre spacing */
.g31-partner-lifecycle-card{background:#fff;border:1px solid #ececf1;border-radius:16px;padding:22px;margin:18px 0;box-shadow:0 8px 24px rgba(15,23,42,.05)}
.g31-partner-lifecycle-card h3{margin:6px 0 8px}
.g31-partner-lifecycle-card p{margin:0;line-height:1.55}
.g31-partner-lifecycle-card .g31-eyebrow{font-size:11px;font-weight:700;letter-spacing:.12em;color:#ef4056}
.g31-impact-grid,.g31-business-impact-grid,.g31-metrics-grid{gap:18px!important}
.g31-impact-grid>*,.g31-business-impact-grid>*,.g31-metrics-grid>*{padding:20px!important}

/* v2.9.84 — Partner lifecycle polish */
.g31-normalised-impact [class*="metric"],
.g31-normalised-impact [class*="stat"],
.g31-normalised-impact [class*="impact"]{
    line-height:1.35!important;
}
.g31-normalised-impact strong,
.g31-normalised-impact b,
.g31-normalised-impact .value,
.g31-normalised-impact [class*="value"],
.g31-normalised-impact [class*="number"]{
    display:block!important;
    margin-bottom:6px!important;
}
.g31-normalised-impact [class*="label"]{
    display:block!important;
}

/* v2.9.84 — Partner impact metrics: explicit value/label blocks */
.g31-partner-impact .g31-partner-impact-grid .g31-partner-impact-metric {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 7px !important;
    padding: 20px !important;
}
.g31-partner-impact .g31-partner-impact-grid .g31-partner-impact-value {
    display: block !important;
    margin: 0 !important;
    line-height: 1.05 !important;
}
.g31-partner-impact .g31-partner-impact-grid .g31-partner-impact-label {
    display: block !important;
    margin: 0 !important;
    line-height: 1.35 !important;
}
