/* =====================================
   ABA AUSTRALIA - UPDATED WILD APRICOT CSS
   Updated with new color scheme and improved specificity
   Color Scheme:
   - Primary Blue: #5d8398 (headings, emphasis)
   - Teal: #659f9f (buttons, icons, accents)
   - Light Blue/Gray: #d6e2e9 (borders, backgrounds)
   - Cream: #fffcf7 (section backgrounds)
   - Text Gray: #444444 (body text)
===================================== */




/* =====================================
   GLOBAL TYPOGRAPHY & BODY
===================================== */


.WaGadget p,
.contentBlockContainer p {
    margin-top: 0;
    line-height: 1.5em;
}


body#idContent,
#bodyTable {
    background-color: #ffffff !important;
}


.WaGadget [class*='EditableArea'] ol,
.contentBlockContainer ol {
    margin: 1em 0 1em 24px;
    padding: 0 0 0 10px;
}


.WaGadget .h1,
.WaGadget h1,
.WaGadget .gadgetStyleNone H1,
.WaGadget .h2,
.WaGadget h2,
.WaGadget .gadgetStyleNone H2,
.WaGadget .h3,
.WaGadget h3,
.WaGadget .h4,
.WaGadget h4,
.WaGadget .h5,
.WaGadget h5,
.contentBlockContainer h1,
.contentBlockContainer h2,
.contentBlockContainer h3,
.contentBlockContainer h4,
.contentBlockContainer h5 {
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}


.WaGadget .h2,
.WaGadget h2,
.WaGadget .gadgetStyleNone H2,
.WaGadget .gadgetStyle002 H2,
.WaGadget .gadgetStyle001 H2,
.contentBlockContainer h2 {
    text-transform: uppercase;
    margin-bottom: 0.3em;
}


.WaGadget H1:not(.promo),
.WaGadget .gadgetStyleNone H1:not(.promo),
.contentBlockContainer h1:not(.promo) {
    font-size: 1.50em;
    font-weight: normal;
    color: #5d8398;
}


.WaGadget H3,
.WaGadget .gadgetStyleNone H3,
.contentBlockContainer h3 {
    font-size: 1.30em !important;
    font-weight: normal !important;
    color: #5d8398 !important;
}


.WaGadget H4:not(.gadgetTitleH4),
.WaGadget .gadgetStyleNone H4:not(.gadgetTitleH4),
.contentBlockContainer h4:not(.gadgetTitleH4) {
    font-size: 1.30em !important;
    font-weight: normal !important;
    color: #444444 !important;
}


.WaGadget H5,
.WaGadget .gadgetStyleNone H5,
.contentBlockContainer h5 {
    font-size: 1.0em !important;
    color: #659f9f !important;
}


.WaGadget .title-heading,
.contentBlockContainer .title-heading {
    border-bottom: solid 2px #659f9f;
    margin-bottom: 36px;
    padding: 0;
    line-height: 1.3em;
}


.WaGadget .fieldSubContainer {
    font-size: 1em;
}


/* =====================================
   RESPONSIVE MEDIA
===================================== */


.WaGadget .video-responsive,
.contentBlockContainer .video-responsive {
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
    height: 0;
}


.WaGadget .video-responsive iframe,
.contentBlockContainer .video-responsive iframe {
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
    position: absolute;
}


.WaGadget .camera_wrap {
    position: relative;
    z-index: 0;
    float: left;
    display: none;
    width: 100%;
    background: #ffffff;
}


/* =====================================
   GENERAL BUTTONS
===================================== */


.WaGadget .functionalButton,
.WaGadget .generalFieldsContainer input.typeButton,
.WaGadget .generalFieldsContainer input[type=submit],
.WaGadget .navigationOuterContainer input.nextButton,
.WaGadget .navigationOuterContainer input.typeButton,
.WaGadget .navigationOuterContainer input[type=submit] {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    min-width: 120px;
    margin: 0;
    padding: 14px 18px 15px;
    background: #659f9f;
    border: 0;
    outline: 0;
    color: white;
    font: normal 18px/1.22 -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-appearance: none;
    border-radius: 0 12px;
}


.WaGadget .navigationOuterContainer input.nextButton,
.WaGadget .navigationOuterContainer input.typeButton,
.WaGadget .navigationOuterContainer input[type=submit] {
    border-radius: 0 16px;
    margin: 0 10px 10px 0;
    background: #659f9f;
}


.WaGadget .functionalButton:hover,
.WaGadget .generalFieldsContainer input.typeButton:hover,
.WaGadget .generalFieldsContainer input[type=submit]:hover,
.WaGadget .navigationOuterContainer input.nextButton:hover,
.WaGadget .navigationOuterContainer input.typeButton:hover,
.WaGadget .navigationOuterContainer input[type=submit]:hover {
    background: #4d7e7e;
    color: white;
}


.WaGadget a.buttonStyle001,
.WaGadget a:link.buttonStyle001 {
    position: relative;
    display: inline-block;
    min-width: 60px;
    margin: 0;
    padding: 14px 18px;
    border-radius: 0 12px;
    color: white;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: normal;
    line-height: 1.22;
    white-space: nowrap;
    text-align: center;
    text-decoration: none;
    background: #659f9f;
}


.WaGadget a.stylizedButton.buttonStyle001:hover {
    background-color: #4d7e7e;
}


.WaGadget a.buttonStyle002,
.WaGadget a:link.buttonStyle002 {
    position: relative;
    display: inline-block;
    min-width: 60px;
    margin: 0;
    padding: 12px 16px;
    background: #ffffff;
    color: #659f9f;
    border: solid 2px #659f9f;
    border-radius: 0 16px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: normal;
    line-height: 1.22;
    white-space: nowrap;
    text-align: center;
    text-decoration: none;
}


.WaGadget a.stylizedButton.buttonStyle002:hover {
    background-color: #659f9f;
    color: white;
}


.WaGadget a.buttonStyle008,
.WaGadget a:link.buttonStyle008 {
    padding: 12px 16px;
    border: 2px solid white !important;
    border-radius: 0 16px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-size: 20px !important;
}


.WaGadget .buttonw {
    background: none;
    border: 2px solid #fff;
    border-radius: 0;
    font-size: 25px !important;
    font-weight: bold;
    line-height: 1;
    text-decoration: none !important;
    padding: 8px 20px;
    color: #fff;
}


.WaGadget .buttonb {
    background: none;
    border: 2px solid #444444;
    color: #444444;
    border-radius: 0;
    font-size: 25px !important;
    text-decoration: none !important;
    font-weight: bold;
    line-height: 1;
    padding: 8px 20px;
}


.WaGadget a.buttonw:hover,
.WaGadget a.buttonb:hover {
    color: #659f9f !important;
    border-color: #659f9f !important;
}


/* =====================================
   LOGIN / PROFILE / FORM BUTTONS
===================================== */


.WaGadgetLoginForm .loginButton {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    width: 100%;
    min-width: 60px;
    margin: 0;
    padding: 10px 14px;
    background: #659f9f;
    border: 0;
    border-radius: 0 12px;
    color: white;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-weight: normal;
    white-space: nowrap;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    font-size: 18px;
    line-height: 1.22;
}


.WaGadgetAuthorizationRequired .loginPageTable input.loginButton,
.WaGadgetMobilePanel .mobilePanel .loginInner .loginContainerForm .loginAction input.loginButton,
.WaGadgetContactProfile .topButtonsOuterContainer input.typeButton {
    background: #659f9f;
    color: white;
    border-radius: 0 16px;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}


.WaGadgetLoginForm .loginButton:hover,
.WaGadgetAuthorizationRequired .loginPageTable input.loginButton:hover,
.WaGadgetMobilePanel .mobilePanel .loginInner .loginContainerForm .loginAction input.loginButton:hover,
.WaGadgetContactProfile .topButtonsOuterContainer input.typeButton:hover {
    background: #4d7e7e;
    color: white;
}


.WaGadgetLoginForm .authenticated .loginPanel a,
.WaGadgetLoginForm .authenticated .loginPanel .loginBoxLogout {
    color: #5d8398;
    text-decoration: none;
}


.WaGadgetLoginForm .authenticated .loginPanel a:hover,
.WaGadgetLoginForm .authenticated .loginPanel .loginBoxLogout:hover {
    color: #659f9f;
    text-decoration: none;
}


.WaGadgetUnsubscribeFromEmails form input[type=submit],
.WaGadgetTermsOfUse .login-role-actions input[type='submit'] {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    min-width: 120px;
    margin: 0;
    padding: 14px 18px 15px;
    background: #659f9f;
    border: 0;
    outline: 0;
    color: white;
    font: normal 18px/1.22 -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-appearance: none;
    margin-right: 10px;
    border-radius: 0 12px;
}


.WaGadgetUnsubscribeFromEmails form input[type=submit]:hover,
.WaGadgetTermsOfUse .login-role-actions input[type='submit']:hover {
    background: #4d7e7e;
    color: white;
}


/* =====================================
   EVENT / BLOG / STORE / FORUM BUTTONS
===================================== */


.WaGadgetEventsStateList .boxOuterContainer .boxBodyOuterContainer .boxBodyInfoOuterContainer .boxActionContainer input.typeButton,
.WaGadgetEventsStateDetails .boxOuterContainer .boxBodyInfoOuterContainer .boxBodyInfoContainer .boxActionContainer input.typeButton,
.WaGadgetOnlineStoreProduct .OnlineStoreProduct_aside .OnlineStoreButton input.typeButton,
.forumPanelOuterContainer .forumPanelContainer input.typeButton,
.WaGadgetMemberPublicProfileStateMain .profileHeaderContainer input.typeButton,
.WaGadgetBlogStateList #idAddNewPostButtonContainer input[type=submit],
.WaGadgetBlogStateAddPost .boxFooterOuterContainer input,
.WaGadgetBlogStateEditPost .boxFooterOuterContainer input,
.WaGadgetContactProfileStatePhotoGallery #idMemberPhotoAlbumContainer #idPhotoAlbumHeaderContainer .buttonsInTitleContainer input.typeButton,
.WaGadgetContactProfileStatePhotoGallery .emptyGalleryPanelInnerDiv .addAlbumButton {
    position: relative;
    display: inline-block;
    box-sizing: border-box;
    min-width: 120px;
    margin: 0;
    padding: 14px 18px 15px;
    background: #659f9f;
    border: 0;
    outline: 0;
    color: white;
    font: normal 18px/1.22 -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    white-space: nowrap;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    -webkit-appearance: none;
    border-radius: 0 12px;
}


.WaGadgetEventsStateList .boxOuterContainer .boxBodyOuterContainer .boxBodyInfoOuterContainer .boxActionContainer input.typeButton:hover,
.WaGadgetEventsStateDetails .boxOuterContainer .boxBodyInfoOuterContainer .boxBodyInfoContainer .boxActionContainer input.typeButton:hover,
.WaGadgetOnlineStoreProduct .OnlineStoreProduct_aside .OnlineStoreButton input.typeButton:hover,
.forumPanelOuterContainer .forumPanelContainer input.typeButton:hover,
.WaGadgetMemberPublicProfileStateMain .profileHeaderContainer input.typeButton:hover,
.WaGadgetBlogStateList #idAddNewPostButtonContainer input[type=submit]:hover,
.WaGadgetBlogStateAddPost .boxFooterOuterContainer input:hover,
.WaGadgetBlogStateEditPost .boxFooterOuterContainer input:hover,
.WaGadgetContactProfileStatePhotoGallery #idMemberPhotoAlbumContainer #idPhotoAlbumHeaderContainer .buttonsInTitleContainer input.typeButton:hover,
.WaGadgetContactProfileStatePhotoGallery .emptyGalleryPanelInnerDiv .addAlbumButton:hover {
    background: #4d7e7e;
    color: white;
}


.WaGadgetContactProfileStatePhotoGallery #idMemberPhotoAlbumContainer #idPhotoAlbumHeaderContainer .buttonsInTitleContainer input.typeButton {
    margin-left: 10px;
}


.forumPanelOuterContainer .forumPanelContainer input.typeButton {
    margin: 0 20px 0 0;
}


.WaGadgetBlog .controlPanel .toggleButton {
    position: relative;
    z-index: 5;
    display: inline-block;
    width: 50px;
    height: 50px;
    background: #659f9f;
    color: white;
    vertical-align: top;
    cursor: pointer;
    border-radius: 0 12px;
}


.WaGadgetBlog .controlPanel .toggleButton:hover {
    background: #4d7e7e;
    color: white;
}


/* =====================================
   NAVIGATION - DESKTOP
===================================== */


.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li > .item > a {
    position: relative;
    display: block;
    height: 26px;
    padding: 10px 13px 10px;
    background: inherit;
    color: #444444;
    font: normal 18px/26px -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    white-space: nowrap;
    vertical-align: top;
    text-align: center;
    text-decoration: none;
    text-transform: capitalize;
}


.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li > .item:hover > a {
    color: #444444;
}


.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li.sel > .item > a,
.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li.sel > .item:hover > a {
    color: #659f9f;
}


.WaGadgetMenuHorizontal .menuInner ul ul li > .item > a {
    color: #444444;
    font: normal 16px/21px -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    white-space: nowrap;
    text-align: left;
    text-transform: capitalize;
}


.WaGadgetMenuHorizontal .menuInner ul ul li > .item:hover > a {
    background: #659f9f;
    color: white;
}


.WaGadgetMenuHorizontal .menuInner ul ul li.sel > .item > a {
    color: #5d8398;
}


/* =====================================
   NAVIGATION - MOBILE
===================================== */


.WaGadgetMobilePanel .mobilePanel {
    position: relative;
    height: 50px;
    background: #659f9f;
    color: white;
    margin-bottom: 4px;
}


.WaGadgetMobilePanel .mobilePanel .menuInner {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 40000;
    display: none;
    font: 18px/1em -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    text-transform: capitalize;
}


.WaGadgetMobilePanel .mobilePanel .menuInner ul ul li.sel > .item > a {
    color: #5d8398;
}


.WaGadgetMobilePanel .mobilePanel .mobilePanelButton:hover {
    background: 0;
    color: #ffffff;
}


/* =====================================
   BLOG / SOCIAL / STORE / FOOTER
===================================== */


.WaGadgetRecentBlogPosts.gadgetStyleNone ul li .author a,
.WaGadgetRecentBlogPosts.gadgetStyleNone ul li .author span,
.WaGadgetForumUpdates.gadgetStyleNone ul li .author span,
.WaGadgetForumUpdates.gadgetStyleNone ul li .author a {
    color: #659f9f;
}


.WaGadgetBlog a {
    font-size: 24px !important;
}


.WaGadgetEventsStateList h3.sectionTitle,
.WaGadgetEventsStateCalendar .sectionTitle {
    background-color: transparent;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    font-style: normal;
    font-weight: 400;
    text-decoration: none;
    color: #5d8398;
    font-size: 1.4em;
    line-height: 1.167;
    text-transform: uppercase;
    float: left;
    margin: 0 10px 0 0;
}


.WaGadgetOnlineStoreCatalog .OnlineStoreCatalog_list .OnlineStoreCatalog_list_item,
.WaGadgetOnlineStoreCatalog .OnlineStoreCatalog_list .OnlineStoreCatalog_list_item_outOfStock {
    position: relative;
    display: inline-block;
    width: 210px;
    margin: 0 10px 40px 10px;
    padding: 0;
    list-style: none outside;
    vertical-align: top;
    border-top: #659f9f solid 10px;
}


.WaGadgetOnlineStoreCatalog .OnlineStoreCatalog_list {
    position: relative;
    margin: 0;
    padding: 0;
}


.WaGadgetSocialProfile.gadgetThemeStyle2 li a:hover {
    background: #fffcf7;
    color: #5d8398;
}


.WaGadget .foot-links ul li {
    background: url(https://afbaa.wildapricot.org/resources/Pictures/footer-path.png) no-repeat left 5px;
    padding-bottom: 20px;
    margin-bottom: 0;
    padding-left: 40px;
}


.WaGadget .foot-links ul li a {
    color: #fff !important;
    font-size: 18px;
    line-height: 26px;
    text-decoration: none !important;
}


.zonePlace.zoneFooter2 {
    background: #444444 !important;
}


#idFooterPoweredByContainer {
    height: 25px !important;
    text-align: center !important;
    padding-bottom: 20px !important;
}


/* =====================================
   LOGIN LINK / HOVER TABLES / MISC
===================================== */


.WaGadget a#id_MoBw3nY_loginLink {
    background: #659f9f !important;
    color: #fff;
    border-radius: 0 12px;
}


.WaGadget .genericListTable tr.hover td,
.WaGadget .membersTable tr.hover td {
    color: #444444;
    background-color: #d6e2e9;
    cursor: pointer;
}


.WaGadget .wa-authenticateLoginLink .authenticateLoginText {
    padding-left: 5px;
    color: #ffffff;
    border-radius: 0 12px;
}


/* =====================================
   POSSIBLY ACTIVE CUSTOM COMPONENTS
   Review before removing
===================================== */


@media screen and (min-width: 1200px) {
    .WaGadget .two-col-left:before {
        background: url(https://afbaa.wildapricot.org/resources/Pictures/leaf-image.png) no-repeat;
        content: "";
        height: 108px;
        width: 108px;
        position: absolute;
        bottom: -30px;
        left: 500px;
        z-index: 999;
    }


    .WaGadget .two-col-right:before {
        background: url(https://afbaa.wildapricot.org/resources/Pictures/leaf-image.png) no-repeat;
        content: "";
        height: 108px;
        width: 108px;
        position: absolute;
        bottom: -30px;
        right: -30px;
        z-index: 999;
    }
}


.WaGadget .tech-slideshow {
    height: 150px;
    max-width: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}


.WaGadget .mover-1 {
    height: 150px;
    width: 10000px;
    position: absolute;
    overflow-x: hidden;
    top: 0;
    left: 0;
    animation: moveSlideshow 50s linear infinite;
}


.WaGadget .mover-1 img {
    display: inline-block;
    vertical-align: middle;
    width: 350px;
    margin: 0;
}


@keyframes moveSlideshow {
    100% {
        transform: translateX(-4400px);
    }
}


/* =====================================
   PAGE-SPECIFIC RULES TO REVIEW
   Remove if pages no longer exist
===================================== */


#PAGEID_18113 li ol {
    margin-bottom: 22px !important;
}


@media only all and (max-width: 480px) {
    #PAGEID_18113 ol li {
        font-size: 15.4px !important;
    }


    #PAGEID_18113 ol li p font {
        font-size: 15.4px !important;
    }


    #PAGEID_18155 table.contStyleExcSimpleTable td a:link.buttonStyle008 {
        font-size: 17px !important;
    }
}


@media only all and (max-width: 620px) {
    #PAGEID_18155 table.contStyleExcSimpleTable td {
        float: left;
        width: 98%;
    }


    #PAGEID_18155 table.contStyleExcSimpleTable td a:link.buttonStyle008 {
        padding: 12px 0;
        width: 100%;
    }


    #PAGEID_18155 table.contStyleExcSimpleTable,
    #PAGEID_18155 table.contStyleExcSimpleTable tbody,
    #PAGEID_18155 table.contStyleExcSimpleTable tbody tr {
        display: block;
    }
}


/* ============================================
   ABA AUSTRALIA - MEMBER DIRECTORY STYLING
   Paste this into Wild Apricot Custom CSS
   ============================================ */


/* HERO SECTION - Add above the member directory widget */
.WaGadget .memberDirectoryContainer::before {
    content: "Find Your Specialist";
    display: block;
    background: linear-gradient(to right, #5d8398, #659f9f);
    color: white;
    padding: 60px 20px;
    border-radius: 16px;
    margin-bottom: 40px;
    text-align: center;
    font-size: 2.5rem;
    font-weight: bold;
}


/* CONTAINER STYLING */
.WaGadget .memberDirectoryContainer {
    background: linear-gradient(to bottom right, #fffcf7, #ffffff, #d6e2e9);
    padding: 40px 20px;
    border-radius: 16px;
    margin: 20px 0;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}


/* SEARCH FORM STYLING */
.WaGadget .memberDirectorySearchForm,
.WaGadget .advancedSearch {
    background: white;
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    margin-bottom: 32px;
}


/* FORM FIELD LAYOUT */
.WaGadget .memberDirectorySearchForm table,
.WaGadget .advancedSearch table {
    width: 100%;
    border: none !important;
}


.WaGadget .memberDirectorySearchForm tr,
.WaGadget .advancedSearch tr {
    display: grid;
    grid-template-columns: 200px 1fr;
    gap: 16px;
    margin-bottom: 16px;
    align-items: center;
}


.WaGadget .memberDirectorySearchForm td,
.WaGadget .advancedSearch td {
    border: none !important;
    padding: 0 !important;
}


/* LABELS */
.WaGadget .memberDirectorySearchForm td:first-child,
.WaGadget .advancedSearch td:first-child {
    font-weight: 600;
    color: #444444;
    font-size: 0.875rem;
    text-align: right;
    padding-right: 16px !important;
}


/* INPUT FIELDS & DROPDOWNS */
.WaGadget .memberDirectorySearchForm input[type="text"],
.WaGadget .memberDirectorySearchForm select,
.WaGadget .advancedSearch input[type="text"],
.WaGadget .advancedSearch select {
    width: 100%;
    padding: 10px 16px;
    border: 1px solid #d6e2e9;
    border-radius: 8px;
    outline: none;
    font-size: 1rem;
    background: white;
    transition: border-color 0.3s;
}


.WaGadget .memberDirectorySearchForm input[type="text"]:focus,
.WaGadget .memberDirectorySearchForm select:focus,
.WaGadget .advancedSearch input[type="text"]:focus,
.WaGadget .advancedSearch select:focus {
    border-color: #659f9f;
    box-shadow: 0 0 0 3px rgba(101, 159, 159, 0.1);
}


/* SEARCH BUTTON */
.WaGadget .memberDirectorySearchForm input[type="submit"],
.WaGadget .advancedSearch input[type="submit"],
.WaGadget .memberDirectorySearchForm button,
.WaGadget .advancedSearch button {
    background: #659f9f !important;
    color: white !important;
    border: none !important;
    padding: 12px 32px !important;
    border-radius: 8px !important;
    cursor: pointer;
    font-weight: 600 !important;
    font-size: 1rem !important;
    transition: background 0.3s;
    margin-top: 16px;
}


.WaGadget .memberDirectorySearchForm input[type="submit"]:hover,
.WaGadget .advancedSearch input[type="submit"]:hover,
.WaGadget .memberDirectorySearchForm button:hover,
.WaGadget .advancedSearch button:hover {
    background: #4d7e7e !important;
}


/* "GO TO SIMPLE SEARCH" LINK */
.WaGadget .memberDirectorySearchForm a,
.WaGadget .advancedSearch a {
    color: #5d8398;
    text-decoration: none;
    font-weight: 600;
    margin-left: 16px;
}


.WaGadget .memberDirectorySearchForm a:hover,
.WaGadget .advancedSearch a:hover {
    text-decoration: underline;
}


/* ============================================
   RESULTS SECTION - CARD GRID LAYOUT
   ============================================ */


/* RESULTS CONTAINER */
.WaGadget .searchResults,
.WaGadget .memberDirectoryResults {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 24px;
    margin-top: 32px;
}


/* INDIVIDUAL MEMBER CARDS */
.WaGadget .searchResult,
.WaGadget .memberDirectoryItem,
.WaGadget .contactDetails {
    background: white !important;
    border-radius: 12px !important;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1) !important;
    padding: 24px !important;
    transition: all 0.3s;
    cursor: pointer;
    border: 1px solid #d6e2e9 !important;
    display: block !important;
}


.WaGadget .searchResult:hover,
.WaGadget .memberDirectoryItem:hover,
.WaGadget .contactDetails:hover {
    box-shadow: 0 20px 25px -5px rgba(0, 0, 0, 0.1) !important;
    border-color: #659f9f !important;
    transform: translateY(-2px);
}


/* MEMBER NAME */
.WaGadget .searchResult .name,
.WaGadget .memberDirectoryItem .name,
.WaGadget .contactDetails .name,
.WaGadget .searchResult h3,
.WaGadget .memberDirectoryItem h3,
.WaGadget .contactDetails h3 {
    font-size: 1.25rem !important;
    font-weight: bold !important;
    color: #444444 !important;
    margin-bottom: 8px !important;
    margin-top: 0 !important;
}


/* JOB TITLE */
.WaGadget .searchResult .jobTitle,
.WaGadget .memberDirectoryItem .jobTitle,
.WaGadget .contactDetails .jobTitle {
    color: #5d8398 !important;
    font-weight: 600 !important;
    font-size: 0.875rem !important;
    margin-bottom: 12px !important;
    display: block;
}


/* FIELD LABELS */
.WaGadget .searchResult .fieldLabel,
.WaGadget .memberDirectoryItem .fieldLabel,
.WaGadget .contactDetails .fieldLabel {
    font-weight: 600 !important;
    color: #444444 !important;
    font-size: 0.75rem !important;
    margin-bottom: 4px !important;
    display: block;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}


/* FIELD VALUES */
.WaGadget .searchResult .fieldValue,
.WaGadget .memberDirectoryItem .fieldValue,
.WaGadget .contactDetails .fieldValue {
    color: #6b7280 !important;
    font-size: 0.875rem !important;
    margin-bottom: 12px !important;
    display: block;
}


/* STATE/TERRITORY */
.WaGadget .searchResult .state,
.WaGadget .memberDirectoryItem .state,
.WaGadget .contactDetails .state {
    color: #6b7280 !important;
    font-size: 0.875rem !important;
    margin-bottom: 12px !important;
}


.WaGadget .searchResult .state::before,
.WaGadget .memberDirectoryItem .state::before,
.WaGadget .contactDetails .state::before {
    content: "📍 ";
}


/* BADGES (for certifications, membership type, etc.) */
.WaGadget .searchResult .badge,
.WaGadget .memberDirectoryItem .badge,
.WaGadget .contactDetails .badge,
.WaGadget .searchResult .certification,
.WaGadget .memberDirectoryItem .certification,
.WaGadget .contactDetails .certification {
    display: inline-flex !important;
    align-items: center;
    gap: 4px;
    padding: 4px 12px !important;
    border-radius: 6px !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    background: #d6e2e9 !important;
    color: #5d8398 !important;
    margin-right: 8px !important;
    margin-bottom: 8px !important;
}


/* BACB CERTIFICATION BADGE */
.WaGadget .searchResult .bacbCert,
.WaGadget .memberDirectoryItem .bacbCert,
.WaGadget .contactDetails .bacbCert {
    background: #d6e2e9 !important;
    color: #5d8398 !important;
}


.WaGadget .searchResult .bacbCert::before,
.WaGadget .memberDirectoryItem .bacbCert::before,
.WaGadget .contactDetails .bacbCert::before {
    content: "🏆 ";
}


/* MEMBERSHIP TYPE */
.WaGadget .searchResult .membership,
.WaGadget .memberDirectoryItem .membership,
.WaGadget .contactDetails .membership {
    background: #fffcf7 !important;
    color: #444444 !important;
}


/* NDIS REGISTRATION */
.WaGadget .searchResult .ndis,
.WaGadget .memberDirectoryItem .ndis,
.WaGadget .contactDetails .ndis {
    background: #d1fae5 !important;
    color: #659f9f !important;
}


.WaGadget .searchResult .ndis::before,
.WaGadget .memberDirectoryItem .ndis::before,
.WaGadget .contactDetails .ndis::before {
    content: "✓ ";
}


/* SUPERVISION */
.WaGadget .searchResult .supervision,
.WaGadget .memberDirectoryItem .supervision,
.WaGadget .contactDetails .supervision {
    background: #e9d5ff !important;
    color: #6b21a8 !important;
}


.WaGadget .searchResult .supervision::before,
.WaGadget .memberDirectoryItem .supervision::before,
.WaGadget .contactDetails .supervision::before {
    content: "👥 ";
}


/* REFERRALS */
.WaGadget .searchResult .referrals,
.WaGadget .memberDirectoryItem .referrals,
.WaGadget .contactDetails .referrals {
    background: #d6e2e9 !important;
    color: #5d8398 !important;
}


.WaGadget .searchResult .referrals::before,
.WaGadget .memberDirectoryItem .referrals::before,
.WaGadget .contactDetails .referrals::before {
    content: "✓ ";
}


/* EXPERTISE TAGS */
.WaGadget .searchResult .expertise,
.WaGadget .memberDirectoryItem .expertise,
.WaGadget .contactDetails .expertise {
    margin-top: 12px !important;
    padding-top: 12px !important;
    border-top: 1px solid #d6e2e9 !important;
}


.WaGadget .searchResult .expertise .tag,
.WaGadget .memberDirectoryItem .expertise .tag,
.WaGadget .contactDetails .expertise .tag {
    display: inline-block;
    background: #fffcf7 !important;
    color: #444444 !important;
    padding: 4px 8px !important;
    border-radius: 4px !important;
    font-size: 0.75rem !important;
    margin-right: 4px !important;
    margin-bottom: 4px !important;
}


/* QUALIFICATION TEXT */
.WaGadget .searchResult .qualification,
.WaGadget .memberDirectoryItem .qualification,
.WaGadget .contactDetails .qualification {
    font-size: 0.75rem !important;
    color: #6b7280 !important;
    margin-bottom: 8px !important;
    font-style: italic;
}


/* REMOVE TABLE LAYOUT FROM RESULTS */
.WaGadget .searchResults table,
.WaGadget .memberDirectoryResults table {
    display: block !important;
}


.WaGadget .searchResults tr,
.WaGadget .memberDirectoryResults tr {
    display: grid !important;
    grid-template-columns: 1fr !important;
}


.WaGadget .searchResults td,
.WaGadget .memberDirectoryResults td {
    display: block !important;
    border: none !important;
}


/* RESULTS COUNT */
.WaGadget .resultsCount,
.WaGadget .searchResultsCount {
    color: #444444;
    font-size: 1rem;
    margin: 24px 0;
    text-align: center;
}


.WaGadget .resultsCount strong,
.WaGadget .searchResultsCount strong {
    color: #5d8398;
    font-size: 1.25rem;
}


/* NO RESULTS MESSAGE */
.WaGadget .noResults,
.WaGadget .noSearchResults {
    text-align: center;
    padding: 60px 20px;
    color: #6b7280;
}


.WaGadget .noResults::before,
.WaGadget .noSearchResults::before {
    content: "🔍";
    display: block;
    font-size: 4rem;
    margin-bottom: 16px;
}


/* =========================================
   MEMBER DIRECTORY – SEARCH RESULTS
   ========================================= */

/* Centre and constrain the results gadget */
#id_OZgd2P2 {
    width: calc(100% - 48px) !important;
    max-width: 1250px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Results table */
#id_OZgd2P2 table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
}

/* Bring Membership column closer to Name */
#id_OZgd2P2 table th:first-child,
#id_OZgd2P2 table td:first-child {
    width: 40% !important;
    text-align: left !important;
    padding-left: 12px !important;
    padding-right: 12px !important;
}

#id_OZgd2P2 table th:nth-child(2),
#id_OZgd2P2 table td:nth-child(2) {
    width: 60% !important;
    text-align: left !important;
    padding-left: 12px !important;
}

/* Remove button appearance from member names only */
#id_OZgd2P2 table td:first-child a {
    display: inline !important;
    min-height: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: #52798f !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    text-transform: capitalize !important;
}

/* Name hover */
#id_OZgd2P2 table td:first-child a:hover {
    color: #659f9f !important;
    background: transparent !important;
    text-decoration: underline !important;
}

/* Compact result rows */
#id_OZgd2P2 table th,
#id_OZgd2P2 table td {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
    vertical-align: middle !important;
}

/* Consistent font */
#id_OZgd2P2 table {
    font-family: Arial, Helvetica, sans-serif !important;
}


/* =========================================
   MEMBER DIRECTORY – CONSISTENT TYPOGRAPHY
   ========================================= */

/* Sans-serif font throughout directory */
#id_OZgd2P2,
#id_OZgd2P2 * {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Column headings */
#id_OZgd2P2 table th {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #52798f !important;
    text-transform: none !important;
}

/* Member names */
#id_OZgd2P2 table td:first-child a {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #52798f !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
}

/* Membership categories */
#id_OZgd2P2 table td:nth-child(2) {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #34495e !important;
    text-transform: none !important;
}

/* Consistent row alignment */
#id_OZgd2P2 table th,
#id_OZgd2P2 table td {
    vertical-align: middle !important;
    line-height: 1.5 !important;
}

/* Member name hover */
#id_OZgd2P2 table td:first-child a:hover {
    color: #659f9f !important;
}


/
/* Member Directory – match reference section width */
#id_OZgd2P2 {
    width: 100% !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Keep all directory content within the gadget */
#id_OZgd2P2 .WaGadgetMemberDirectory,
#id_OZgd2P2 table {
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Prevent results table from overflowing */
#id_OZgd2P2 table {
    width: 100% !important;
    table-layout: fixed !important;
}


/* =========================================
   MEMBER DIRECTORY – SEARCH RESULTS TABLE
   ========================================= */

/* Sans-serif typography throughout results */
#id_OZgd2P2,
#id_OZgd2P2 * {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Evenly distribute all three columns */
#id_OZgd2P2 table {
    width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
}

/* Equal column widths */
#id_OZgd2P2 table th,
#id_OZgd2P2 table td {
    width: 33.333% !important;
    padding: 12px !important;
    text-align: left !important;
    vertical-align: middle !important;
    box-sizing: border-box !important;
}

/* Column headings */
#id_OZgd2P2 table th {
    font-size: 14px !important;
    font-weight: 700 !important;
    color: #52798f !important;
    text-transform: none !important;
}

/* Member names */
#id_OZgd2P2 table td:first-child a {
    display: inline !important;
    background: transparent !important;
    border: none !important;
    border-radius: 0 !important;
    padding: 0 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #52798f !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
}

/* Certification and membership values */
#id_OZgd2P2 table td:nth-child(2),
#id_OZgd2P2 table td:nth-child(3) {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #34495e !important;
}

/* Consistent row dividers */
#id_OZgd2P2 table tr {
    border-bottom: 1px solid #d6e0e5 !important;
}

/* Hover on member names */
#id_OZgd2P2 table td:first-child a:hover {
    color: #659f9f !important;
}


/* =========================================================
   ABA AUSTRALIA - MEMBER DIRECTORY SEARCH REDESIGN
   ========================================================= */

/* Search gadget typography */
#id_OZgd2P2,
#id_OZgd2P2 * {
    font-family: Arial, Helvetica, sans-serif !important;
    box-sizing: border-box !important;
}

/* Main search form card */
#id_OZgd2P2 .WaGadgetMemberDirectory,
#id_OZgd2P2 .generalFormOuterContainer {
    background: #ffffff !important;
}

/* Search criteria layout */
#id_OZgd2P2 #FunctionalBlock1_ctl00_ctl00_criteriaList {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px 24px !important;
    width: 100% !important;
}

/* Individual search fields */
#id_OZgd2P2 .fieldContainer {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Labels */
#id_OZgd2P2 .fieldLabel,
#id_OZgd2P2 .fieldLabel span {
    display: block !important;
    width: 100% !important;
    margin: 0 0 7px !important;
    padding: 0 !important;
    color: #52798f !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
}


/* Dropdowns and text inputs */
#id_OZgd2P2 select,
#id_OZgd2P2 input[type="text"] {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 44px !important;
    padding: 9px 12px !important;
    background: #ffffff !important;
    border: 1px solid #cbdbe4 !important;
    border-radius: 6px !important;
    color: #34495e !important;
    font-size: 14px !important;
    box-shadow: none !important;
}

/* Focus state */
#id_OZgd2P2 select:focus,
#id_OZgd2P2 input[type="text"]:focus {
    border-color: #659f9f !important;
    outline: none !important;
    box-shadow: 0 0 0 2px rgba(101,159,159,0.15) !important;
}

/* Search and clear buttons */
#id_OZgd2P2 input[type="submit"],
#id_OZgd2P2 input[type="button"],
#id_OZgd2P2 button {
    min-height: 44px !important;
    padding: 12px 25px !important;
    background: #659f9f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    cursor: pointer !important;
}

#id_OZgd2P2 input[type="submit"]:hover,
#id_OZgd2P2 input[type="button"]:hover,
#id_OZgd2P2 button:hover {
    background: #52798f !important;
}

/* Search form spacing */
#id_OZgd2P2 .generalFormContainer {
    margin: 0 !important;
    padding: 0 !important;
}

/* Responsive layout */
@media (max-width: 700px) {
    #id_OZgd2P2 #FunctionalBlock1_ctl00_ctl00_criteriaList {
        grid-template-columns: 1fr !important;
        gap: 14px !important;
    }
}


/* ============================================
   MOBILE RESPONSIVE
   ============================================ */


@media (max-width: 768px) {
    .WaGadget .memberDirectoryContainer::before {
        font-size: 2rem;
        padding: 40px 20px;
    }


    .WaGadget .memberDirectorySearchForm tr,
    .WaGadget .advancedSearch tr {
        grid-template-columns: 1fr;
        gap: 8px;
    }


    .WaGadget .memberDirectorySearchForm td:first-child,
    .WaGadget .advancedSearch td:first-child {
        text-align: left;
        padding-right: 0 !important;
    }


    .WaGadget .searchResults,
    .WaGadget .memberDirectoryResults {
        grid-template-columns: 1fr;
    }
}


/* ============================================
   WILD APRICOT SPECIFIC OVERRIDES
   ============================================ */


/* Remove Wild Apricot default borders */
.WaGadget table,
.WaGadget tr,
.WaGadget td {
    border: none !important;
}


/* Override Wild Apricot's default padding */
.WaGadget .memberDirectorySearchForm td,
.WaGadget .advancedSearch td {
    padding: 0 !important;
}


/* Fix Wild Apricot's default button styling */
.WaGadget input[type="submit"] {
    -webkit-appearance: none;
    appearance: none;
}


/* Ensure proper spacing in Wild Apricot context */
.WaGadget .memberDirectoryContainer {
    max-width: 1200px;
    margin: 0 auto;
}


/* ============================================
   GLOBAL FIX: Prevent header overlap on ALL pages
   ============================================ */


/* Push all page content below fixed/sticky header */
body,
.WaLayoutContainer,
.WaContentContainer,
.WaPageBody {
    padding-top: 60px !important;
}


/* Ensure header stays above content visually */
header,
.WaGadgetMenu,
.WaGadgetNavigationBar {
    position: relative;
    z-index: 9999;
}


/* =========================================
   ABA MEMBER DIRECTORY – BUTTON STYLING
   ========================================= */

/* Search button */
#id_OZgd2P2 input[type="submit"],
#id_OZgd2P2 input[type="button"],
#id_OZgd2P2 button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 14px 25px !important;
    background: #659f9f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
}

/* Go to simple search and Clear values links */
#id_OZgd2P2 a {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 14px 25px !important;
    background: #659f9f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

/* Hover effects */
#id_OZgd2P2 input[type="submit"]:hover,
#id_OZgd2P2 input[type="button"]:hover,
#id_OZgd2P2 button:hover,
#id_OZgd2P2 a:hover {
    background: #52798f !important;
    color: #ffffff !important;
    text-decoration: none !important;
}





/* ============================================
   ABA AUSTRALIA - CONTENT WIDTH NAVIGATION BAR
   ============================================ */


/* Match navigation bar to website content width */
.WaGadgetMenuHorizontal {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    left: auto !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    box-sizing: border-box !important;


    border-top: 2px solid #efefef !important;
    border-bottom: 2px solid #efefef !important;


    background-color: #ffffff !important;
}


/* Keep navigation links centred */
.WaGadgetMenuHorizontal .menuInner {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}


/* Preserve menu layout */
.WaGadgetMenuHorizontal ul.firstLevel {
    box-sizing: border-box !important;
}


/* Mobile responsiveness */
@media (max-width: 768px) {
    .WaGadgetMenuHorizontal {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: 0 !important;
        left: auto !important;
    }
}


/* Centre main navigation options across the menu bar */
.WaGadgetMenuHorizontal .menuInner ul.firstLevel {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    width: 100% !important;
}


/* Keep main menu items evenly spaced */
.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li {
    float: none !important;
}


/* Keep dropdown options left-aligned */
.WaGadgetMenuHorizontal .menuInner ul ul,
.WaGadgetMenuHorizontal .menuInner ul ul li,
.WaGadgetMenuHorizontal .menuInner ul ul li a {
    text-align: left !important;
}


/* ============================================
   ABA AUSTRALIA - FULL WIDTH PAGE CONTENT
   ============================================ */


/* Expand main page containers */
.WaLayoutContainer,
.WaContentContainer,
.WaPageBody,
.WaPlaceHolder,
.WaPlaceHolderContent {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}


/* Allow content sections to use the available width */
.WaContentContainer .container,
.WaPageBody .container {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}


/* Maintain consistent spacing at page edges */
.WaContentContainer,
.WaPageBody {
    padding-left: 30px !important;
    padding-right: 30px !important;
}


/* Mobile spacing */
@media (max-width: 768px) {
    .WaContentContainer,
    .WaPageBody {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}


/* Reduce main navigation menu font size */
.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li > .item > a {
    font-size: 15px !important;
}


/* ============================================
   ABA AUSTRALIA - NAVIGATION MENU FORMATTING
   ============================================ */


/* ============================================
   REMOVE MAIN MENU DROPDOWN TRIANGLES
   ============================================ */


.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li.dir > .item > a > span:after {
    display: none !important;
    content: none !important;
    border: none !important;
}


/* ============================================
   MATCH DROPDOWN FONT SIZE TO MAIN MENU
   ============================================ */


/* Main navigation */
.WaGadgetMenuHorizontal ul.firstLevel > li > .item > a {
    font-size: 15px !important;
}


/* Dropdown navigation */
.WaGadgetMenuHorizontal ul.secondLevel > li > .item > a,
.WaGadgetMenuHorizontal ul.secondLevel > li > .item > a > span {
    font-size: 15px !important;
}


/* Match dropdown font size to main navigation */
.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li > .item > a,
.WaGadgetMenuHorizontal .menuInner ul ul > li > .item > a {
    font-size: 15px !important;
}


/* Increase spacing between main navigation sections */
.WaGadgetMenuHorizontal .menuInner ul.firstLevel > li > .item > a {
    padding-left: 16px !important;
    padding-right: 16px !important;
}


/* Fit navigation borders to the menu items */
.WaGadgetMenuHorizontal {
    width: fit-content !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    border-top: 2px solid #efefef !important;
    border-bottom: 2px solid #efefef !important;
}


/* Keep menu items in one horizontal row */
.WaGadgetMenuHorizontal ul.firstLevel {
    display: flex !important;
    justify-content: center !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
}


/* Remove borders above and below navigation menu */
.WaGadgetMenuHorizontal {
    border-top: none !important;
    border-bottom: none !important;
}


.WaGadgetMenuHorizontal .menuInner {
    border-top: none !important;
    border-bottom: none !important;
}


/* Increase main navigation font size */
.WaGadgetMenuHorizontal ul.firstLevel > li > .item > a,
.WaGadgetMenuHorizontal ul.firstLevel > li > .item > a > span {
    font-size: 17px !important;
}


/* Keep dropdown font size unchanged */
.WaGadgetMenuHorizontal ul.secondLevel > li > .item > a,
.WaGadgetMenuHorizontal ul.secondLevel > li > .item > a > span {
    font-size: 15px !important;
}


/* ============================================
   ABA AUSTRALIA - GLOBAL WEBSITE TYPOGRAPHY
   ============================================ */


/* Load Lato font */
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@400;500;600;700;800;900&display=swap');


/* Main website font */
body,
.WaLayoutContainer,
.WaContentContainer,
.WaPageBody,
.WaGadget,
.WaGadget p,
.WaGadget li,
.WaGadget td,
.WaGadget th,
.WaGadget label,
.WaGadget input,
.WaGadget select,
.WaGadget textarea,
.WaGadget button {
    font-family: 'Lato', sans-serif !important;
}


/* Headings */
h1, h2, h3, h4, h5, h6,
.WaContentContainer h1,
.WaContentContainer h2,
.WaContentContainer h3,
.WaGadget h1,
.WaGadget h2,
.WaGadget h3 {
    font-family: 'Lato', sans-serif !important;
    font-weight: 800 !important;
}


/* Main navigation */
.WaGadgetMenuHorizontal {
    font-family: 'Lato', sans-serif !important;
}


/* ============================================
   ABA AUSTRALIA - HEADER SEARCH & MEMBER ICON
   ============================================ */


:root {
    --aba-icon-blue: #3D6579;
    --aba-icon-light: #EAF1F4;
}


/* ============================================
   ABA AUSTRALIA - MINIMAL SEARCH BAR
   ============================================ */


/* Remove excessive shadows and outlines */
.WaGadgetSiteSearch * {
    box-shadow: none;
}


/* Member login icon - remove bright background */
.WaGadgetLoginForm .loginLink,
.WaGadgetLoginForm .loginLink a {
    background: transparent !important;
    color: var(--aba-icon-blue) !important;
    border: none !important;
    box-shadow: none !important;
}


/* Member icon */
.WaGadgetLoginForm svg,
.WaGadgetLoginForm .icon {
    color: var(--aba-icon-blue) !important;
    fill: var(--aba-icon-blue) !important;
}


/* Subtle hover effects */
.WaGadgetSiteSearch .searchBox button:hover,
.WaGadgetSiteSearch .searchBox .button:hover {
    background: #2F5265 !important;
}


.WaGadgetLoginForm .loginLink:hover {
    opacity: 0.75;
}


/* ABA AUSTRALIA - SEARCH FIELD */
input.searchBoxField {
    width: 100% !important;
    height: 42px !important;
    padding: 0 14px !important;
    border: 1px solid #3D6579 !important;
    border-radius: 6px !important;
    background: #ffffff !important;
    color: #3D6579 !important;
    font-family: 'Lato', sans-serif !important;
    font-size: 14px !important;
    box-shadow: none !important;
    outline: none !important;
}


/* Search field when selected */
input.searchBoxField:focus {
    border-color: #3D6579 !important;
    box-shadow: 0 0 0 2px rgba(61,101,121,0.10) !important;
}

/* Add spacing between the mobile header and page content */
@media screen and (max-width: 768px) {
    #id_Header1 {
        padding-top: 55px !important;
    }
}

/* Change active mobile menu item to site teal */
.WaGadgetMobilePanel .mobilePanel .menuInner ul.firstLevel > li.sel > .item > a,
.WaGadgetMobilePanel .mobilePanel .menuInner ul.firstLevel > li.sel > .item > a > span {
    color: #659f9f !important;
}



/* ============================================
   ABA AUSTRALIA - SWITCH TO MOBILE HEADER
   At narrower desktop and split-screen widths
   ============================================ */

@media screen and (max-width: 1600px) {

    /* Hide the complete desktop header layout */
    #id_iIPIcEY {
        display: none !important;
    }

    /* Display the mobile header panel */
    .WaGadgetMobilePanel {
        display: block !important;
        width: 100% !important;
    }

}


/* ============================================
   ABA AUSTRALIA - MOBILE LOGO AND SEARCH
   ============================================ */

@media screen and (max-width: 768px) {

    /* Restore the header layout */
    #id_iIPIcEY {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 15px 15px 20px !important;
        box-sizing: border-box !important;
    }

    /* Hide desktop navigation */
    #id_svVLY2a {
        display: none !important;
    }

    /* Hide duplicate desktop member icon */
    #id_MoBw3nY {
        display: none !important;
    }

    /* Display association logo */
    #id_ySJhfMZ {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto 15px !important;
        text-align: center !important;
        box-sizing: border-box !important;
    }

    #id_ySJhfMZ img {
        max-width: 190px !important;
        width: 100% !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    /* Display mobile search bar */
    #id_3ZXJ3NL {
        display: block !important;
        width: 100% !important;
        max-width: 400px !important;
        margin: 0 auto !important;
        box-sizing: border-box !important;
    }

    #id_3ZXJ3NL input.searchBoxField {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

}



/* =====================================================
   ABA AUSTRALIA - AUTHORIZATION REQUIRED LOGIN PAGE
   Corrected four-column layout
   EMPTY | STANDARD LOGIN | SOCIAL LOGIN | EMPTY
   ===================================================== */


/* -----------------------------------------------------
   1. MAIN LOGIN CARD AND FOUR-COLUMN GRID
   ----------------------------------------------------- */

#id_3N2d1fd {
    display: grid !important;

    grid-template-columns:
        minmax(20px, 0.12fr)
        minmax(0, 1fr)
        minmax(0, 1fr)
        minmax(20px, 0.12fr) !important;

    column-gap: 24px !important;
    row-gap: 20px !important;

    width: calc(100% - 40px) !important;
    max-width: 1000px !important;
    margin: 40px auto !important;
    padding: 0 0 35px !important;

    background: #ffffff !important;
    border: 1px solid #d6e2e9 !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 22px rgba(93,131,152,0.12) !important;

    box-sizing: border-box !important;
    overflow: hidden !important;

    font-family: Arial, sans-serif !important;
}


/* -----------------------------------------------------
   2. LOGIN HEADING
   ----------------------------------------------------- */

#id_3N2d1fd::before {
    content: "ABA Australia Login" !important;
    display: block !important;

    grid-column: 1 / -1 !important;
    grid-row: 1 !important;

    width: 100% !important;
    padding: 30px 20px !important;

    background: linear-gradient(135deg, #52798f, #659f9f) !important;
    color: #ffffff !important;

    font-family: Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 650 !important;
    text-align: center !important;
    letter-spacing: -0.5px !important;

    box-sizing: border-box !important;
}


/* -----------------------------------------------------
   3. ERROR MESSAGES
   ----------------------------------------------------- */

#id_3N2d1fd > p {
    grid-column: 1 / -1 !important;
    margin: 0 20px !important;
    box-sizing: border-box !important;
}

#id_3N2d1fd > p:first-of-type {
    margin-top: 5px !important;
}

#id_3N2d1fd .mandatorySymbol {
    color: #c65d5d !important;
}


/* -----------------------------------------------------
   4. STANDARD EMAIL LOGIN - COLUMN 2
   ----------------------------------------------------- */

#id_3N2d1fd > .authFormContainer {
    grid-column: 2 !important;
    grid-row: 3 !important;

    display: block !important;
    float: none !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* -----------------------------------------------------
   5. ALTERNATIVE LOGIN - COLUMN 3
   ----------------------------------------------------- */

#id_3N2d1fd > .openAuthFormContainer {
    grid-column: 3 !important;
    grid-row: 3 !important;

    display: block !important;
    float: none !important;

    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    border: none !important;

    box-sizing: border-box !important;
}


/* -----------------------------------------------------
   6. STANDARD LOGIN FORM AND TABLE
   ----------------------------------------------------- */

#id_3N2d1fd #idLoginForm,
#id_3N2d1fd table.loginPageTable {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}

#id_3N2d1fd table.loginPageTable {
    table-layout: fixed !important;
    border-collapse: collapse !important;
}

#id_3N2d1fd table.loginPageTable td {
    width: 100% !important;
    padding: 0 !important;
    vertical-align: top !important;
    box-sizing: border-box !important;
}


/* -----------------------------------------------------
   7. EMAIL AND PASSWORD LABELS
   ----------------------------------------------------- */

#id_3N2d1fd #idLoginBox .mandatory,
#id_3N2d1fd #idPasswordBox .mandatory {
    display: inline-block !important;
    margin-bottom: 7px !important;

    color: #5d8398 !important;
    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
}


/* -----------------------------------------------------
   8. EMAIL AND PASSWORD INPUT FIELDS
   ----------------------------------------------------- */

#id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_userName,
#id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_Password {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    height: 42px !important;
    min-height: 42px !important;

    padding: 8px 12px !important;
    margin: 0 0 12px 0 !important;

    background: #ffffff !important;
    border: 1px solid #cbd9df !important;
    border-radius: 7px !important;

    color: #444444 !important;
    font-family: Arial, sans-serif !important;
    font-size: 14px !important;

    box-sizing: border-box !important;
}

/* Password wrapper */

#id_3N2d1fd .password-wrapper {
    position: relative !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Input focus */

#id_3N2d1fd #idLoginForm input:focus {
    border-color: #659f9f !important;
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(101,159,159,0.12) !important;
}

/* Password visibility toggle */

#id_3N2d1fd .toggle-password {
    cursor: pointer !important;
}


/* -----------------------------------------------------
   9. REMEMBER ME
   ----------------------------------------------------- */

#id_3N2d1fd #idRememberMe {
    margin: 5px 0 18px 0 !important;
    color: #555555 !important;
    font-size: 13px !important;
}

#id_3N2d1fd #idRememberMe input[type="checkbox"] {
    accent-color: #659f9f !important;
    margin-right: 5px !important;
}


/* -----------------------------------------------------
   10. STANDARD LOGIN BUTTON
   ----------------------------------------------------- */

#id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_Login {
    display: inline-block !important;

    background: #659f9f !important;
    color: #ffffff !important;

    border: none !important;
    border-radius: 25px !important;

    padding: 12px 30px !important;
    min-height: 46px !important;

    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    cursor: pointer !important;
    transition: background 0.2s ease !important;

    box-sizing: border-box !important;
}

#id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_Login:hover {
    background: #5d8398 !important;
}


/* -----------------------------------------------------
   11. FORGOTTEN PASSWORD LINK
   ----------------------------------------------------- */

#id_3N2d1fd #idForgotLinkBox {
    margin-top: 12px !important;
    font-size: 13px !important;
}


/* -----------------------------------------------------
   12. SOCIAL LOGIN BUTTONS
   GOOGLE / MICROSOFT / APPLE
   ----------------------------------------------------- */

#id_3N2d1fd .oAuthButtonsContainer {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#id_3N2d1fd .oAuthButtonsContainer a.wa-authenticateLoginLink {
    display: flex !important;

    align-items: center !important;
    justify-content: flex-start !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;

    height: 42px !important;
    min-height: 42px !important;

    margin: 0 0 14px 0 !important;
    padding: 8px 14px !important;

    background: #ffffff !important;
    color: #444444 !important;

    border: 1px solid #cbd9df !important;
    border-radius: 7px !important;

    box-shadow: 0 2px 5px rgba(93,131,152,0.07) !important;

    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;

    text-align: left !important;
    text-decoration: none !important;

    box-sizing: border-box !important;
    cursor: pointer !important;

    transition: all 0.2s ease !important;
}

/* Social button hover */

#id_3N2d1fd .oAuthButtonsContainer a.wa-authenticateLoginLink:hover {
    background: #fffcf7 !important;
    border-color: #659f9f !important;
    color: #5d8398 !important;
    box-shadow: 0 3px 9px rgba(93,131,152,0.12) !important;
}

/* Social login text */

#id_3N2d1fd .authenticateLoginText {
    color: #444444 !important;
    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
}

/* Social login icons */

#id_3N2d1fd .authenticateLoginIcon {
    display: inline-block !important;
    flex: 0 0 21px !important;
    width: 21px !important;
    height: 21px !important;
    margin-right: 12px !important;
}


/* -----------------------------------------------------
   13. GENERAL LINKS
   ----------------------------------------------------- */

#id_3N2d1fd a {
    color: #5d8398 !important;
}

#id_3N2d1fd a:hover {
    color: #659f9f !important;
}

#id_3N2d1fd .oAuthButtonsContainer a:hover .authenticateLoginText {
    color: #5d8398 !important;
}


/* -----------------------------------------------------
   14. MOBILE RESPONSIVE LAYOUT
   STACK LOGIN SECTIONS
   ----------------------------------------------------- */

@media (max-width: 768px) {

    /* Main card */

    #id_3N2d1fd {
        display: grid !important;

        grid-template-columns:
            20px
            minmax(0, 1fr)
            20px !important;

        column-gap: 0 !important;
        row-gap: 20px !important;

        width: calc(100% - 24px) !important;
        max-width: 100% !important;

        margin: 24px 12px !important;
        padding: 0 0 30px !important;
    }

    /* Heading */

    #id_3N2d1fd::before {
        grid-column: 1 / -1 !important;
        grid-row: 1 !important;

        font-size: 25px !important;
        padding: 24px 16px !important;
    }

    /* Error messages */

    #id_3N2d1fd > p {
        grid-column: 1 / -1 !important;
        margin-left: 15px !important;
        margin-right: 15px !important;
    }

    /* Standard login */

    #id_3N2d1fd > .authFormContainer {
        grid-column: 2 !important;
        grid-row: auto !important;

        width: 100% !important;
        max-width: 100% !important;
        padding: 0 !important;
    }

    /* Alternative login below standard login */

    #id_3N2d1fd > .openAuthFormContainer {
        grid-column: 2 !important;
        grid-row: auto !important;

        width: 100% !important;
        max-width: 100% !important;

        margin: 0 !important;
        padding: 24px 0 0 !important;

        border: none !important;
        border-top: 1px solid #d6e2e9 !important;
    }

    /* Inputs */

    #id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_userName,
    #id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_Password,
    #id_3N2d1fd .password-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Social buttons */

    #id_3N2d1fd .oAuthButtonsContainer a.wa-authenticateLoginLink {
        width: 100% !important;
        max-width: 100% !important;
    }
}


/* -----------------------------------------------------
   15. SMALL MOBILE SCREENS
   ----------------------------------------------------- */

@media (max-width: 480px) {

    #id_3N2d1fd {
        width: calc(100% - 20px) !important;
        margin: 15px 10px !important;

        grid-template-columns:
            16px
            minmax(0, 1fr)
            16px !important;
    }

    #id_3N2d1fd::before {
        font-size: 22px !important;
        padding: 22px 12px !important;
    }
}


/* =====================================================
   FINAL LOGIN LAYOUT CORRECTIONS
   ===================================================== */

/* Restore native table structure */

#id_3N2d1fd #idLoginForm table.loginPageTable {
    display: table !important;
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
}

#id_3N2d1fd #idLoginForm table.loginPageTable tbody {
    display: table-row-group !important;
}

#id_3N2d1fd #idLoginForm table.loginPageTable tr {
    display: table-row !important;
}

#id_3N2d1fd #idLoginForm table.loginPageTable td {
    display: table-cell !important;
    width: 100% !important;
    padding: 0 !important;
    vertical-align: top !important;
}

/* Make email and password fields fill their column */

#id_3N2d1fd #idLoginBox > div,
#id_3N2d1fd #idPasswordBox > div {
    width: 100% !important;
    box-sizing: border-box !important;
}

#id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_userName,
#id_3N2d1fd #ctl00_ContentArea_loginViewControl_loginControl_Password {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

/* Correct password visibility icon positioning */

#id_3N2d1fd .password-wrapper {
    position: relative !important;
}

#id_3N2d1fd .password-wrapper .toggle-password {
    position: absolute !important;
    right: 12px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    z-index: 2 !important;
    cursor: pointer !important;
}

/* Keep the empty left gutter white */

#id_3N2d1fd {
    background: #ffffff !important;
}

#id_3N2d1fd > .authFormContainer {
    background: transparent !important;
}

/* Preserve the two-column alignment */

#id_3N2d1fd > .authFormContainer {
    grid-column: 2 !important;
}

#id_3N2d1fd > .openAuthFormContainer {
    grid-column: 3 !important;
}


/* =====================================================
   LOGIN PAGE - FINAL LAYOUT REFINEMENTS
   ===================================================== */


/* -----------------------------------------------------
   1. REMOVE UNWANTED BLUE SECTION AND VERTICAL LINES
   ----------------------------------------------------- */

#id_3N2d1fd,
#id_3N2d1fd > .authFormContainer,
#id_3N2d1fd > .openAuthFormContainer,
#id_3N2d1fd #idLoginForm,
#id_3N2d1fd table.loginPageTable,
#id_3N2d1fd table.loginPageTable td {
    background-color: #ffffff !important;
    border-left: none !important;
    border-right: none !important;
    box-shadow: none !important;
}

/* Remove any decorative pseudo-elements */

#id_3N2d1fd > .authFormContainer::before,
#id_3N2d1fd > .authFormContainer::after,
#id_3N2d1fd > .openAuthFormContainer::after {
    content: none !important;
    display: none !important;
}

/* Remove vertical divider from standard login section */

#id_3N2d1fd > .authFormContainer {
    border: none !important;
    padding-left: 0 !important;
}


/* -----------------------------------------------------
   2. OTHER HEADING - MATCH EMAIL HEADING
   ----------------------------------------------------- */

#id_3N2d1fd > .openAuthFormContainer::before {
    content: "Other" !important;
    display: block !important;

    margin: 0 0 7px 0 !important;
    padding: 0 !important;

    color: #5d8398 !important;
    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: normal !important;
}


/* -----------------------------------------------------
   3. ALIGN GOOGLE BUTTON WITH EMAIL INPUT
   ----------------------------------------------------- */

#id_3N2d1fd > .openAuthFormContainer {
    padding-top: 0 !important;
    margin-top: 0 !important;
    border: none !important;
}

/* Social buttons */

#id_3N2d1fd .oAuthButtonsContainer a.wa-authenticateLoginLink {
    margin-top: 0 !important;
    margin-bottom: 14px !important;
}

/* Keep the standard Email heading and input spacing */

#id_3N2d1fd #idLoginBox .mandatory {
    display: inline-block !important;
    margin-bottom: 7px !important;
    line-height: normal !important;
}


/* -----------------------------------------------------
   4. MOBILE ADJUSTMENTS
   ----------------------------------------------------- */

@media (max-width: 768px) {

    #id_3N2d1fd > .openAuthFormContainer::before {
        margin-bottom: 7px !important;
    }

    #id_3N2d1fd > .openAuthFormContainer {
        padding-top: 20px !important;
        border-top: 1px solid #d6e2e9 !important;
    }
}


/* =====================================================
   FINAL VISUAL CORRECTIONS
   ===================================================== */

/* 1. Remove blue background from first column */

#id_3N2d1fd {
    background: #ffffff !important;
}

#id_3N2d1fd > .authFormContainer,
#id_3N2d1fd > .openAuthFormContainer {
    background: transparent !important;
}

/* Remove background from empty left gutter and its
   possible decorative elements */

#id_3N2d1fd::after,
#id_3N2d1fd > .authFormContainer::before,
#id_3N2d1fd > .authFormContainer::after {
    background: transparent !important;
    box-shadow: none !important;
}

/* 2. Restore a visible Apple logo */

#id_3N2d1fd .wa-authenticateLoginLink.apple
.authenticateLoginIcon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    width: 21px !important;
    height: 21px !important;
    min-width: 21px !important;

    background-image: none !important;
    color: #222222 !important;
}

/* Apple logo using an inline SVG */

#id_3N2d1fd .wa-authenticateLoginLink.apple
.authenticateLoginIcon::before {
    content: "" !important;
    display: block !important;

    width: 19px !important;
    height: 19px !important;

    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23222222' d='M19.7 12.6c0-2.7 2.2-4 2.3-4.1-1.3-1.9-3.3-2.1-4-2.2-1.7-.2-3.3 1-4.2 1s-2.2-1-3.6-.9c-1.9 0-3.6 1.1-4.5 2.7-1.9 3.3-.5 8.2 1.4 10.9.9 1.3 2 2.8 3.4 2.7 1.4-.1 1.9-.9 3.5-.9s2.1.9 3.6.9c1.5-.1 2.4-1.3 3.3-2.7 1-1.5 1.5-3 1.5-3.1-.1 0-2.8-1.1-2.7-4.3zM16.9 4.8c.7-.9 1.2-2.1 1.1-3.3-1.1.1-2.4.7-3.2 1.6-.7.8-1.3 2-1.1 3.2 1.2.1 2.5-.6 3.2-1.5z'/%3E%3C/svg%3E") !important;

    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
}


/* =====================================================
   ABA AUSTRALIA - CHANGE PASSWORD PAGE
   Matching Authorization Required Login Design
   ===================================================== */


/* -----------------------------------------------------
   1. PAGE HEADING CONTAINER
   ----------------------------------------------------- */

#id_UEgkztL {
    width: calc(100% - 40px) !important;
    max-width: 1000px !important;
    margin: 40px auto 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Gradient heading */

#id_UEgkztL h1 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 30px 20px !important;

    background: linear-gradient(135deg, #52798f, #659f9f) !important;
    color: #ffffff !important;

    font-family: Arial, sans-serif !important;
    font-size: 30px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    letter-spacing: -0.5px !important;
    text-align: center !important;

    border-radius: 14px 14px 0 0 !important;
    box-sizing: border-box !important;
}


/* -----------------------------------------------------
   2. MAIN CHANGE PASSWORD CARD
   ----------------------------------------------------- */

#id_GxzIkeM {
    display: block !important;

    width: calc(100% - 40px) !important;
    max-width: 1000px !important;

    margin: 0 auto 40px !important;
    padding: 30px 40px 40px !important;

    background: #ffffff !important;

    border: 1px solid #d6e2e9 !important;
    border-top: none !important;
    border-radius: 0 0 14px 14px !important;

    box-shadow: 0 6px 22px rgba(93,131,152,0.12) !important;

    box-sizing: border-box !important;
    font-family: Arial, sans-serif !important;
}

/* Remove Wild Apricot decorative corners */

#id_GxzIkeM .cornersContainer {
    display: none !important;
}


/* -----------------------------------------------------
   3. INTRODUCTION TEXT
   CHANGE PASSWORD FOR ABA AUSTRALIA
   ----------------------------------------------------- */

#id_GxzIkeM .introContainer {
    display: block !important;

    margin: 0 0 30px 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;

    color: #5d8398 !important;

    font-family: Arial, sans-serif !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}

/* Replace original Wild Apricot introduction text */

#id_GxzIkeM .introContainer .inner {
    font-size: 0 !important;
}

#id_GxzIkeM .introContainer .inner::before {
    content: "Change Password for ABA Australia" !important;
    display: block !important;

    font-size: 17px !important;
    color: #5d8398 !important;

    font-family: Arial, sans-serif !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
}

/* Remove decorative nested backgrounds */

#id_GxzIkeM .introContainer .inner,
#id_GxzIkeM .introContainer .d1,
#id_GxzIkeM .introContainer .d2,
#id_GxzIkeM .introContainer .d3,
#id_GxzIkeM .introContainer .d4,
#id_GxzIkeM .introContainer .d5,
#id_GxzIkeM .introContainer .d6,
#id_GxzIkeM .introContainer .d7,
#id_GxzIkeM .introContainer .d8,
#id_GxzIkeM .introContainer .d9 {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}


/* -----------------------------------------------------
   4. FORM CONTAINER
   ----------------------------------------------------- */

#id_GxzIkeM .formOuterContainer,
#id_GxzIkeM .formContainer,
#id_GxzIkeM .generalFieldsOuterContainer,
#id_GxzIkeM .generalFieldsContainer {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: none !important;

    box-sizing: border-box !important;
}

/* Remove decorative nested form backgrounds */

#id_GxzIkeM .formContainer .inner,
#id_GxzIkeM .generalFieldsContainer .inner,
#id_GxzIkeM .formContainer .d1,
#id_GxzIkeM .formContainer .d2,
#id_GxzIkeM .formContainer .d3,
#id_GxzIkeM .formContainer .d4,
#id_GxzIkeM .formContainer .d5,
#id_GxzIkeM .formContainer .d6,
#id_GxzIkeM .formContainer .d7,
#id_GxzIkeM .formContainer .d8,
#id_GxzIkeM .formContainer .d9 {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}


/* -----------------------------------------------------
   5. PASSWORD FORM
   ----------------------------------------------------- */

#id_GxzIkeM #idRequestForm {
    display: block !important;

    width: 100% !important;
    max-width: 100% !important;

    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}

/* Individual password field sections */

#id_GxzIkeM #idRequestForm .fieldContainer {
    width: 100% !important;
    margin: 0 0 18px 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}

/* Field tables */

#id_GxzIkeM #idRequestForm .fieldContainer table {
    width: 100% !important;
    max-width: 100% !important;

    border: none !important;
    border-collapse: collapse !important;
    table-layout: fixed !important;

    box-sizing: border-box !important;
}

/* Label column */

#id_GxzIkeM #idRequestForm td.left {
    width: 35% !important;
    padding: 8px 20px 8px 0 !important;

    text-align: right !important;
    vertical-align: middle !important;

    box-sizing: border-box !important;
}

/* Input column */

#id_GxzIkeM #idRequestForm td.right {
    width: 65% !important;
    padding: 8px 0 !important;

    text-align: left !important;
    vertical-align: middle !important;

    box-sizing: border-box !important;
}


/* -----------------------------------------------------
   6. PASSWORD FIELD LABELS
   ----------------------------------------------------- */

#id_GxzIkeM #idRequestForm .fieldLabel label {
    color: #5d8398 !important;

    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    line-height: 1.4 !important;
}

#id_GxzIkeM #idRequestForm .mandatorySymbol {
    color: #c65d5d !important;
}


/* -----------------------------------------------------
   7. PASSWORD INPUT FIELDS
   ----------------------------------------------------- */

#id_GxzIkeM #idRequestForm input.typeText {
    display: block !important;

    width: 100% !important;
    max-width: 400px !important;
    min-width: 0 !important;

    height: 42px !important;
    min-height: 42px !important;

    padding: 8px 38px 8px 12px !important;
    margin: 0 !important;

    background: #ffffff !important;

    border: 1px solid #cbd9df !important;
    border-radius: 7px !important;

    color: #444444 !important;

    font-family: Arial, sans-serif !important;
    font-size: 14px !important;

    box-shadow: none !important;
    box-sizing: border-box !important;
}

/* Password field focus */

#id_GxzIkeM #idRequestForm input.typeText:focus {
    border-color: #659f9f !important;
    outline: none !important;

    box-shadow: 0 0 0 3px rgba(101,159,159,0.12) !important;
}

/* Password wrapper */

#id_GxzIkeM #idRequestForm .password-wrapper {
    position: relative !important;

    width: 100% !important;
    max-width: 400px !important;

    box-sizing: border-box !important;
}

/* Password visibility icon */

#id_GxzIkeM #idRequestForm .toggle-password {
    position: absolute !important;

    right: 12px !important;
    top: 50% !important;

    transform: translateY(-50%) !important;

    color: #5d8398 !important;

    cursor: pointer !important;
    z-index: 2 !important;
}


/* -----------------------------------------------------
   8. PASSWORD STRENGTH METER
   ----------------------------------------------------- */

#id_GxzIkeM #passwordMeterContainer {
    width: 100% !important;
    max-width: 400px !important;

    margin-top: 8px !important;
}

#id_GxzIkeM #pswmeter-message {
    color: #5d8398 !important;

    font-family: Arial, sans-serif !important;
    font-size: 12px !important;

    margin-top: 5px !important;
}


/* -----------------------------------------------------
   9. VALIDATION MESSAGES
   ----------------------------------------------------- */

#id_GxzIkeM .validationError {
    display: block !important;

    margin-top: 5px !important;

    color: #c65d5d !important;

    font-family: Arial, sans-serif !important;
    font-size: 12px !important;
}


/* -----------------------------------------------------
   10. SAVE AND CANCEL BUTTONS
   ----------------------------------------------------- */

/* Button container */

#id_GxzIkeM #idActionButtonsContainer td.left {
    width: 35% !important;
}

#id_GxzIkeM #idActionButtonsContainer td.right {
    padding-top: 25px !important;
}

/* Save button */

#id_GxzIkeM #ctl00_ContentArea_SubmitNewPasswordBtn {
    display: inline-block !important;

    min-width: 120px !important;
    min-height: 46px !important;

    padding: 12px 28px !important;
    margin: 0 10px 0 0 !important;

    background: #659f9f !important;
    color: #ffffff !important;

    border: none !important;
    border-radius: 25px !important;

    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    text-transform: uppercase !important;

    cursor: pointer !important;
    transition: background 0.2s ease !important;

    box-sizing: border-box !important;
}

/* Save hover */

#id_GxzIkeM #ctl00_ContentArea_SubmitNewPasswordBtn:hover {
    background: #5d8398 !important;
}

/* Cancel button */

#id_GxzIkeM #ctl00_ContentArea_CancelBtn {
    display: inline-block !important;

    min-width: 120px !important;
    min-height: 46px !important;

    padding: 12px 28px !important;
    margin: 0 !important;

    background: #ffffff !important;
    color: #5d8398 !important;

    border: 1px solid #659f9f !important;
    border-radius: 25px !important;

    font-family: Arial, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;

    text-transform: uppercase !important;

    cursor: pointer !important;
    transition: all 0.2s ease !important;

    box-sizing: border-box !important;
}

/* Cancel hover */

#id_GxzIkeM #ctl00_ContentArea_CancelBtn:hover {
    background: #f0f7f8 !important;
    border-color: #5d8398 !important;
}


/* -----------------------------------------------------
   11. MOBILE RESPONSIVE LAYOUT
   ----------------------------------------------------- */

@media (max-width: 768px) {

    /* Heading container */

    #id_UEgkztL {
        width: calc(100% - 24px) !important;
        margin: 24px auto 0 !important;
    }

    /* Heading */

    #id_UEgkztL h1 {
        font-size: 25px !important;
        padding: 24px 16px !important;
    }

    /* Main card */

    #id_GxzIkeM {
        width: calc(100% - 24px) !important;

        margin: 0 auto 25px !important;
        padding: 25px 22px 35px !important;
    }

    /* Intro */

    #id_GxzIkeM .introContainer {
        font-size: 15px !important;
        margin-bottom: 22px !important;
    }

    #id_GxzIkeM .introContainer .inner::before {
        font-size: 15px !important;
    }

    /* Stack labels and inputs */

    #id_GxzIkeM #idRequestForm table,
    #id_GxzIkeM #idRequestForm tbody,
    #id_GxzIkeM #idRequestForm tr,
    #id_GxzIkeM #idRequestForm td {
        display: block !important;
        width: 100% !important;

        box-sizing: border-box !important;
    }

    #id_GxzIkeM #idRequestForm td.left {
        padding: 5px 0 6px !important;
        text-align: left !important;
    }

    #id_GxzIkeM #idRequestForm td.right {
        padding: 0 0 12px !important;
    }

    /* Full-width password fields */

    #id_GxzIkeM #idRequestForm input.typeText,
    #id_GxzIkeM #idRequestForm .password-wrapper {
        width: 100% !important;
        max-width: 100% !important;
    }

    /* Button alignment */

    #id_GxzIkeM #idActionButtonsContainer td.right {
        padding-top: 15px !important;
    }

    #id_GxzIkeM #ctl00_ContentArea_SubmitNewPasswordBtn,
    #id_GxzIkeM #ctl00_ContentArea_CancelBtn {
        min-width: 110px !important;
        margin-bottom: 8px !important;
    }
}


/* -----------------------------------------------------
   12. SMALL MOBILE SCREENS
   ----------------------------------------------------- */

@media (max-width: 480px) {

    #id_UEgkztL {
        width: calc(100% - 20px) !important;
        margin-top: 15px !important;
    }

    #id_UEgkztL h1 {
        font-size: 22px !important;
        padding: 22px 12px !important;
    }

    #id_GxzIkeM {
        width: calc(100% - 20px) !important;
        padding: 22px 18px 30px !important;
    }

    #id_GxzIkeM #ctl00_ContentArea_SubmitNewPasswordBtn,
    #id_GxzIkeM #ctl00_ContentArea_CancelBtn {
        min-width: 105px !important;
        padding: 11px 20px !important;
    }
}



/* =========================================================
   ABA AUSTRALIA - CONTACT PROFILE
   CONSOLIDATED STYLING
   ========================================================= */

/* 1. MAIN PROFILE CONTAINER */

#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel {
    display: block !important;
    width: calc(100% - 50px) !important;
    max-width: 1000px !important;
    margin: 40px auto !important;
    padding: 0 0 30px 0 !important;
    background: #ffffff !important;
    border: 1px solid #d6e2e9 !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 22px rgba(93,131,152,0.12) !important;
    box-sizing: border-box !important;
    font-family: Arial, Helvetica, sans-serif !important;
    overflow: hidden !important;
}

/* 2. GRADIENT HEADER */

#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel::before {
    content: "Contact Profile" !important;
    display: block !important;
    width: 100% !important;
    padding: 28px 20px !important;
    background: linear-gradient(135deg, #52798f, #659f9f) !important;
    color: #ffffff !important;
    font-size: 30px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}

/* 3. EDIT PROFILE BUTTON */

#idTopButtonsContainer {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 22px 35px 12px !important;
    background: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

#idTopButtonsContainer .cornersContainer,
#idTopButtonsContainer .topCorners,
#idTopButtonsContainer .bottomCorners {
    display: none !important;
}

input#FunctionalBlock1_ctl00_ctl00_editButtonTop {
    display: inline-block !important;
    min-width: 135px !important;
    min-height: 46px !important;
    padding: 12px 25px !important;
    margin: 0 !important;
    background: #659f9f !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 25px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

input#FunctionalBlock1_ctl00_ctl00_editButtonTop:hover {
    background: #52798f !important;
    color: #ffffff !important;
}

/* 4. PROFILE NAVIGATION */

#idMemberDetailsTabsContainer {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 35px 20px !important;
    background: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

#idMemberDetailsTabsContainer .cornersContainer {
    display: none !important;
}

#idMemberDetailsTabsContainer .memberDetailsTabMenu {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    border-bottom: 1px solid #d6e2e9 !important;
}

#idMemberDetailsTabsContainer .memberDetailsTabMenu li {
    display: inline-block !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

#idMemberDetailsTabsContainer .memberDetailsTabMenu li a,
#idMemberDetailsTabsContainer .memberDetailsTabMenu li span {
    display: inline-block !important;
    padding: 11px 14px !important;
    color: #5d8398 !important;
    background: transparent !important;
    border: none !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 6px 6px 0 0 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
}

#idMemberDetailsTabsContainer .memberDetailsTabMenu li a:hover {
    color: #52798f !important;
    background: #f0f7f8 !important;
    border-bottom-color: #659f9f !important;
}

#idMemberDetailsTabsContainer .memberDetailsTabMenu li.selected span,
#idMemberDetailsTabsContainer .memberDetailsTabMenu li.selected a {
    color: #52798f !important;
    background: #edf5f7 !important;
    border-bottom: 3px solid #659f9f !important;
}

/* 5. PROFILE CONTENT WIDTH AND SPACING */

#idMemberProfileContainer {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 10px 35px 30px !important;
    background: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

#idMemberProfileContainer .cornersContainer {
    display: none !important;
}

#idProfileMainContainer {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Remove decorative containers */

#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d1,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d2,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d3,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d4,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d5,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d6,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d7,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d8,
#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .d9 {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

/* 6. SECTION HEADINGS */

#idProfileMainContainer > .captionOuterContainer {
    display: block !important;
    width: 100% !important;
    margin: 28px 0 14px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

#idProfileMainContainer > .captionOuterContainer h4 {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 0 12px !important;
    color: #263b4b !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 18px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    border-bottom: 1px solid #d6e2e9 !important;
}

/* 7. PERSONAL INFORMATION - FOUR EQUAL COLUMNS */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552 .inner {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px 18px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Hide empty spacer fields */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:not(:has(.fieldLabel span)) {
    display: none !important;
}

/* Position the four confirmed fields */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl01_titleLabel),
#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl02_titleLabel),
#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl03_titleLabel),
#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl04_titleLabel) {
    grid-column: auto !important;
    width: 100% !important;
    min-width: 0 !important;
}

/* Personal Information field cards */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(.fieldLabel span) {
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f8fafb !important;
    border: 1px solid #dce7ed !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
}

/* 8. CONTACT DETAILS */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153 {
    padding-left: 20px !important;
    padding-right: 20px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Contact fields arranged in one full-width column */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153 .inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:not(:has(.fieldLabel span)) {
    display: none !important;
}

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has(.fieldLabel span) {
    display: block !important;
    float: none !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: #f8fafb !important;
    border: 1px solid #dce7ed !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
}

/* Contact Details label and answer share one box */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldSubContainer {
    display: grid !important;
    grid-template-columns: 220px minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 15px !important;
    width: 100% !important;
    padding: 13px 16px !important;
    box-sizing: border-box !important;
}

/* 9. GENERAL FIELD APPEARANCE */

#idProfileMainContainer .fieldSubContainer,
#idProfileMainContainer .fieldLabel,
#idProfileMainContainer .fieldBody {
    background: transparent !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

#idProfileMainContainer .fieldLabel {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #5d8398 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    text-align: left !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

#idProfileMainContainer .fieldBody {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    color: #333333 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    text-align: left !important;
    text-transform: none !important;
    line-height: 1.5 !important;
    overflow-wrap: anywhere !important;
}

#idProfileMainContainer .fieldBody a {
    color: #52798f !important;
    text-decoration: none !important;
}

#idProfileMainContainer .fieldBody a:hover {
    color: #659f9f !important;
    text-decoration: underline !important;
}

/* 10. ADDITIONAL QUESTION AND ANSWER FIELDS */

#idProfileMainContainer .sectionContainer
.fieldContainer.textFieldContainer {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
}

#idProfileMainContainer .sectionContainer
.fieldContainer table {
    width: 100% !important;
    max-width: 100% !important;
    table-layout: fixed !important;
}

#idProfileMainContainer .sectionContainer
.fieldContainer td.left {
    width: 30% !important;
    text-align: left !important;
    vertical-align: top !important;
}

#idProfileMainContainer .sectionContainer
.fieldContainer td.right {
    width: 70% !important;
    text-align: left !important;
    vertical-align: top !important;
}

/* 11. REMOVE SOCIAL NETWORK CONNECTIONS */

#idSocialLoginContainer,
#socialLoginContainer {
    display: none !important;
}

/* Remove empty decorative elements */

#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel .clearEndContainer {
    display: none !important;
}

/* 12. MOBILE RESPONSIVE */

@media (max-width: 768px) {
    #FunctionalBlock1_ctl00_ctl00_memberDetailsPanel {
        width: calc(100% - 24px) !important;
        margin: 20px auto !important;
    }

    #FunctionalBlock1_ctl00_ctl00_memberDetailsPanel::before {
        font-size: 25px !important;
        padding: 24px 16px !important;
    }

    #idTopButtonsContainer {
        padding: 18px 20px 10px !important;
    }

    #idMemberDetailsTabsContainer {
        padding: 10px 20px 15px !important;
    }

    #idMemberProfileContainer {
        padding: 10px 20px 25px !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552 .inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
}

@media (max-width: 480px) {
    #FunctionalBlock1_ctl00_ctl00_memberDetailsPanel {
        width: calc(100% - 20px) !important;
        margin: 15px auto !important;
    }

    #FunctionalBlock1_ctl00_ctl00_memberDetailsPanel::before {
        font-size: 22px !important;
        padding: 22px 12px !important;
    }

    #idTopButtonsContainer,
    #idMemberDetailsTabsContainer {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    #idMemberProfileContainer {
        padding: 10px 15px 20px !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552 .inner {
        grid-template-columns: 1fr !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153 {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
    .fieldSubContainer {
        grid-template-columns: 1fr !important;
        gap: 5px !important;
    }

    #idProfileMainContainer .sectionContainer
    .fieldContainer td.left,
    #idProfileMainContainer .sectionContainer
    .fieldContainer td.right {
        width: 100% !important;
    }
}


/* =========================================================
   CONTACT PROFILE - FINAL LAYOUT ADJUSTMENTS
   ========================================================= */

/* 2. MEMBERSHIP DETAILS - RESTORE BLUE-GREY FIELD BOXES */

#idProfileMainContainer .fieldContainer:has(.fieldLabel span) {
    background: #f8fafb !important;
    border: 1px solid #dce7ed !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
}

/* Consistent spacing inside all field boxes */

#idProfileMainContainer .fieldContainer:has(.fieldLabel span)
.fieldSubContainer {
    padding: 12px 14px !important;
    box-sizing: border-box !important;
}

/* Membership detail tables */

#idProfileMainContainer .fieldContainer:has(table) {
    background: #f8fafb !important;
    border: 1px solid #dce7ed !important;
    border-radius: 7px !important;
    overflow: hidden !important;
}

#idProfileMainContainer .fieldContainer table {
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

#idProfileMainContainer .fieldContainer table td {
    padding: 12px 14px !important;
    vertical-align: top !important;
}

/* 3. PERSONAL INFORMATION - THREE FIELDS TOP, DOB BELOW */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552 .inner {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px 18px !important;
}

/* Title */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl01_titleLabel) {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* First name */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl02_titleLabel) {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Last name */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl03_titleLabel) {
    grid-column: 3 !important;
    grid-row: 1 !important;
}

/* Date of Birth */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(#FunctionalBlock1_ctl00_ctl00_MemberForm_memberFormRepeater_ctl04_titleLabel) {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

/* Match spacing and height of other field boxes */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldSubContainer {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
    width: 100% !important;
    min-height: 64px !important;
    padding: 12px 14px !important;
    box-sizing: border-box !important;
}

/* 4. CONTACT DETAILS - TWO COLUMN GRID */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153 .inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px 18px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Reset all contact field positions */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has(.fieldLabel span) {
    grid-column: auto !important;
    grid-row: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

/* LEFT COLUMN */

/* Email */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11454153 {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Phone */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11454159 {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

/* Organisation */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11454156 {
    grid-column: 1 !important;
    grid-row: 3 !important;
}

/* Street Address */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11470689 {
    grid-column: 1 !important;
    grid-row: 4 !important;
}

/* City */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11470690 {
    grid-column: 1 !important;
    grid-row: 5 !important;
}

/* Post Code */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11470691 {
    grid-column: 1 !important;
    grid-row: 6 !important;
}

/* State/Territory */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11470692 {
    grid-column: 1 !important;
    grid-row: 7 !important;
}

/* Country */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11470693 {
    grid-column: 1 !important;
    grid-row: 8 !important;
}

/* RIGHT COLUMN */

/* Avatar */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11454157 {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Certification Number */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has([id$="ctl15_titleLabel"]) {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

/* Membership Number */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has([id$="ctl16_titleLabel"]) {
    grid-column: 2 !important;
    grid-row: 3 !important;
}

/* Status */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has([id$="ctl17_titleLabel"]) {
    grid-column: 2 !important;
    grid-row: 4 !important;
}

/* Original Certification Date */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has([id$="ctl18_titleLabel"]) {
    grid-column: 2 !important;
    grid-row: 5 !important;
}

/* Recertification Date */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has([id$="ctl19_titleLabel"]) {
    grid-column: 2 !important;
    grid-row: 6 !important;
}

/* Contact field spacing */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldSubContainer {
    display: grid !important;
    grid-template-columns: minmax(110px, 40%) minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 10px !important;
    width: 100% !important;
    min-height: 64px !important;
    padding: 12px 14px !important;
    box-sizing: border-box !important;
}

/* Avatar field */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
#idContainer11454157 .fieldSubContainer {
    display: flex !important;
    align-items: center !important;
}

/* 5. ALL LOWER QUESTION AND ANSWER FIELDS - BLUE BOXES */

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer:has(.fieldLabel span) {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 12px 0 !important;
    padding: 0 !important;
    background: #f8fafb !important;
    border: 1px solid #dce7ed !important;
    border-radius: 7px !important;
    box-sizing: border-box !important;
}

/* Inner question and answer spacing */

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer .fieldSubContainer {
    padding: 13px 16px !important;
    box-sizing: border-box !important;
}

/* Question and answer tables */

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer table {
    width: 100% !important;
    table-layout: fixed !important;
}

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer td {
    padding: 12px 14px !important;
    vertical-align: top !important;
}

/* 6. MOBILE RESPONSIVE */

@media (max-width: 768px) {
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153 .inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552 .inner {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 480px) {
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153 .inner,
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552 .inner {
        grid-template-columns: 1fr !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
    .fieldContainer,
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
    .fieldContainer {
        grid-column: 1 !important;
        grid-row: auto !important;
    }

    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
    .fieldSubContainer {
        grid-template-columns: 1fr !important;
        gap: 5px !important;
    }
}


/* =========================================================
   CONTACT PROFILE - CONSISTENT FIELD SPACING
   Apply consistent padding, heights and gaps throughout
   ========================================================= */

/* 1. CONSISTENT FIELD BOX SPACING */

#idProfileMainContainer .fieldContainer:has(.fieldLabel span) {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    box-sizing: border-box !important;
}

/* 2. CONSISTENT INTERNAL PADDING */

#idProfileMainContainer .fieldContainer:has(.fieldLabel span)
.fieldSubContainer {
    padding: 12px 14px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* 3. CONSISTENT LABEL SPACING */

#idProfileMainContainer .fieldLabel {
    margin: 0 0 6px 0 !important;
    padding: 0 !important;
    line-height: 1.4 !important;
}

/* 4. CONSISTENT ANSWER SPACING */

#idProfileMainContainer .fieldBody {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.5 !important;
}

/* 5. MEMBERSHIP DETAILS - NORMALISE TABLE FIELDS */

#idProfileMainContainer .fieldContainer table {
    margin: 0 !important;
    border-spacing: 0 !important;
    border-collapse: separate !important;
}

#idProfileMainContainer .fieldContainer table td {
    padding: 12px 14px !important;
    line-height: 1.5 !important;
    vertical-align: top !important;
}

/* Membership Details labels and values */

#idProfileMainContainer .fieldContainer td.left,
#idProfileMainContainer .fieldContainer td.right {
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

/* 6. EDUCATION PATHWAY AND ALL SUBSEQUENT SECTIONS */

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer:has(.fieldLabel span) {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Consistent spacing inside question boxes */

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer .fieldSubContainer {
    padding: 12px 14px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Question and answer table spacing */

#idProfileMainContainer .sectionContainer:not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
):not(
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
) .fieldContainer table td {
    padding: 12px 14px !important;
    line-height: 1.5 !important;
}

/* 7. CONSISTENT SECTION SPACING */

#idProfileMainContainer > .captionOuterContainer {
    margin-top: 28px !important;
    margin-bottom: 14px !important;
}

/* 8. REMOVE EXTRA SPACING FROM EMPTY FIELDS */

#idProfileMainContainer .fieldContainer:not(:has(.fieldLabel span)) {
    display: none !important;
}


/* =========================================================
   PERSONAL AND CONTACT DETAILS - COMPACT FIELD BOXES
   Match Membership Details spacing
   ========================================================= */

/* Personal Information and Contact Details */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer:has(.fieldLabel span),

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldContainer:has(.fieldLabel span) {
    margin-bottom: 0 !important;
}

/* Reduce internal padding and remove excessive height */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldSubContainer,

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldSubContainer {
    min-height: 0 !important;
    height: auto !important;
    padding: 8px 12px !important;
    gap: 3px !important;
    box-sizing: border-box !important;
}

/* Compact labels */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldLabel,

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldLabel {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
}

/* Compact answers */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldBody,

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldBody {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 1.35 !important;
}

/* Keep contact labels and answers horizontally aligned */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
.fieldSubContainer {
    grid-template-columns: minmax(110px, 40%) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Keep Personal Information boxes compact and consistent */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section14696552
.fieldContainer {
    min-height: 0 !important;
    height: auto !important;
}

/* Ensure mobile layout remains compact */

@media (max-width: 480px) {
    #FunctionalBlock1_ctl00_ctl00_MemberForm_Section11454153
    .fieldSubContainer {
        grid-template-columns: 1fr !important;
        gap: 3px !important;
    }
}

/* Prevent duplicate tab labels displaying alongside tab links */
#idMemberDetailsTabsContainer #FunctionalBlock1_ctl00_ctl00_profileTabLabel,
#idMemberDetailsTabsContainer #FunctionalBlock1_ctl00_ctl00_privacyTabLabel,
#idMemberDetailsTabsContainer #FunctionalBlock1_ctl00_ctl00_subscriptionsTabLabel,
#idMemberDetailsTabsContainer #FunctionalBlock1_ctl00_ctl00_photoGalleryTabLabel {
    display: none !important;
}


/* My Directory Profile button */
#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    padding: 15px 25px !important;
    min-height: 46px;
    box-sizing: border-box;
    background: #659f9f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: capitalize;
    text-decoration: none !important;
    line-height: 1.2;
    transition: background 0.2s ease;
}

/* Hover effect */
#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink:hover {
    background: #52798f !important;
    color: #ffffff !important;
    text-decoration: none !important;
}




/* =========================================
   DIRECTORY PROFILE – TARGETED STYLING
   ========================================= */

/* Section headings */
#idCaptionContainer14696551,
#idCaptionContainer14696554,
#idCaptionContainer17021713 {
    margin: 25px 0 12px !important;
    border: none !important;
    background: transparent !important;
}

#idCaptionContainer14696551 h4,
#idCaptionContainer14696554 h4,
#idCaptionContainer17021713 h4 {
    color: #34495e !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    text-transform: uppercase;
}

/* Main information panels */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    background: #f7f9fa !important;
    border: 1px solid #d6e4eb !important;
    border-radius: 7px !important;
    padding: 15px !important;
    margin-bottom: 22px !important;
    box-sizing: border-box !important;
}

/* Individual information boxes */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldContainer.simpleTextContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldContainer.simpleTextContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldContainer.simpleTextContainer {
    display: block !important;
    float: none !important;
    width: auto !important;
    margin: 0 !important;
    padding: 12px 14px !important;
    background: #ffffff !important;
    border: 1px solid #e0e9ee !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
}

/* Remove empty spacer fields */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldContainer:not(.simpleTextContainer),
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldContainer:not(.simpleTextContainer),
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldContainer:not(.simpleTextContainer) {
    display: none !important;
}

/* Field labels */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldLabel,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldLabel,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldLabel {
    color: #52798f !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-bottom: 5px !important;
    text-align: left !important;
}

/* Field answers */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldBody,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldBody,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldBody {
    color: #34495e !important;
    font-size: 14px !important;
    text-align: left !important;
}

/* Membership level */
#idMembershipLevelSection {
    background: #f7f9fa !important;
    border: 1px solid #d6e4eb !important;
    border-radius: 7px !important;
    padding: 15px !important;
    margin-bottom: 22px !important;
}

#idMembershipLevelContainer .fieldSubContainer {
    background: #ffffff !important;
    border: 1px solid #e0e9ee !important;
    border-radius: 5px !important;
    padding: 12px 14px !important;
}

#idMembershipLevelContainer .fieldLabel {
    color: #52798f !important;
    font-weight: 600 !important;
    margin-bottom: 5px !important;
}

#idMembershipLevelContainer .fieldBody {
    color: #34495e !important;
    font-size: 14px !important;
}

/* Mobile */
@media screen and (max-width: 650px) {
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================
   DIRECTORY PROFILE – FINAL LAYOUT
   ========================================= */

/* Bring all information panels in from page edges */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728,
#idMembershipLevelSection {
    width: calc(100% - 48px) !important;
    max-width: 1250px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    padding: 18px !important;
}

/* Remove previous grid from outer section */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 {
    display: block !important;
}

/* PERSONAL INFORMATION – three columns */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .inner {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
}

/* CONTACT DETAILS – two columns */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
}

/* PUBLIC REGISTRY – single column */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .inner {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    width: 100% !important;
}

/* Individual field boxes */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldContainer.simpleTextContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldContainer.simpleTextContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldContainer.simpleTextContainer {
    width: 100% !important;
    min-width: 0 !important;
    float: none !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Consistent label and answer alignment */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldSubContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldSubContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldSubContainer {
    display: grid !important;
    grid-template-columns: minmax(125px, 35%) minmax(0, 1fr) !important;
    align-items: center !important;
    gap: 10px !important;
}

/* Remove empty spacer fields */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldContainer:not(.simpleTextContainer),
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldContainer:not(.simpleTextContainer),
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldContainer:not(.simpleTextContainer) {
    display: none !important;
}

/* Mobile layout */
@media screen and (max-width: 650px) {
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .inner,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .inner,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .inner {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================
   DIRECTORY PROFILE – ALIGNMENT & FINISHING
   ========================================= */

/* Consistent width and alignment for all sections */
#idMembershipDetailsContainer,
#idMembershipLevelSection,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728,
#idCaptionContainer14696551,
#idCaptionContainer14696554,
#idCaptionContainer17021713 {
    width: calc(100% - 48px) !important;
    max-width: 1250px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

/* Centre the member's name */
.profileHeaderContainer {
    width: 100% !important;
    text-align: center !important;
}

.profileHeaderContainer .memberDirectoryDetailsHeaderContainer {
    text-align: center !important;
}

.profileHeaderContainer .memberDirectoryDetailsHeaderContainer h2 {
    text-align: center !important;
    color: #52798f !important;
    font-size: 26px !important;
    font-weight: 700 !important;
    margin: 20px auto 28px !important;
}

/* Align all section headings with information panels */
#idCaptionContainer14696551,
#idCaptionContainer14696554,
#idCaptionContainer17021713 {
    padding: 0 !important;
    margin-top: 26px !important;
    margin-bottom: 12px !important;
    background: transparent !important;
    border: none !important;
}

#idMembershipDetailsContainer {
    margin-top: 0 !important;
}

#idCaptionContainer14696551 h4,
#idCaptionContainer14696554 h4,
#idCaptionContainer17021713 h4 {
    margin: 0 !important;
    padding: 0 !important;
    text-align: left !important;
}

/* Membership level – restore a proper information card */
#idMembershipLevelSection {
    padding: 18px !important;
    min-height: 0 !important;
}

#idMembershipLevelContainer {
    width: 100% !important;
    margin: 0 !important;
}

#idMembershipLevelContainer .fieldSubContainer {
    display: block !important;
    width: 100% !important;
    padding: 14px 16px !important;
    background: #ffffff !important;
    border: 1px solid #d6e4eb !important;
    border-radius: 5px !important;
    box-sizing: border-box !important;
}

#idMembershipLevelContainer .fieldLabel,
#idMembershipLevelContainer .fieldBody {
    display: block !important;
    width: 100% !important;
    float: none !important;
    text-align: left !important;
    margin: 0 !important;
}

#idMembershipLevelContainer .fieldLabel {
    color: #52798f !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    margin-bottom: 6px !important;
}

#idMembershipLevelContainer .fieldBody {
    color: #34495e !important;
    font-size: 14px !important;
}

/* Field questions above their answers */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldSubContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldSubContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldSubContainer {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
}

/* Keep question/label text on one line */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldLabel,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldLabel,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldLabel {
    width: 100% !important;
    white-space: nowrap !important;
    margin: 0 !important;
    color: #52798f !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-align: left !important;
}

/* Answers directly below labels */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldBody,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldBody,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldBody {
    width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
    color: #34495e !important;
    font-size: 14px !important;
}

/* Consistent field box padding */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 .fieldContainer.simpleTextContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldContainer.simpleTextContainer,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 .fieldContainer.simpleTextContainer {
    padding: 13px 15px !important;
    min-height: 0 !important;
}

/* Maintain mobile spacing */
@media screen and (max-width: 650px) {
    #idMembershipDetailsContainer,
    #idMembershipLevelSection,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728,
    #idCaptionContainer14696551,
    #idCaptionContainer14696554,
    #idCaptionContainer17021713 {
        width: calc(100% - 24px) !important;
    }
}


/* =========================================
   DIRECTORY PROFILE – FINAL REFINEMENTS
   ========================================= */

/* Consistent sans-serif font throughout */
.profileHeaderContainer,
#membershipDetailsContainer,
#idMembershipLevelSection,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 {
    font-family: Arial, Helvetica, sans-serif !important;
}

.profileHeaderContainer *,
#membershipDetailsContainer *,
#idMembershipLevelSection *,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section14696552 *,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 *,
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section17021728 * {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Align Member Profile Details heading and panel */
#membershipDetailsContainer {
    width: calc(100% - 48px) !important;
    max-width: 1250px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
    text-align: left !important;
}

/* All section headings: normal title case */
#membershipDetailsContainer h4,
#idCaptionContainer14696551 h4,
#idCaptionContainer14696554 h4,
#idCaptionContainer17021713 h4 {
    text-transform: none !important;
    text-align: left !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 19px !important;
    font-weight: 700 !important;
    color: #34495e !important;
}

/* Contact Details: two-column layout */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .inner {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 10px !important;
    width: 100% !important;
}

/* Left column – State/Territory */
#idContainer11470692 {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

/* Left column – Status */
#idContainer15725304 {
    grid-column: 1 !important;
    grid-row: 2 !important;
}

/* Left column – Membership Number */
#idContainer15093724 {
    grid-column: 1 !important;
    grid-row: 3 !important;
}

/* Right column – Original Certification Date */
#idContainer15725118 {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Right column – Recertification Date */
#idContainer15725305 {
    grid-column: 2 !important;
    grid-row: 2 !important;
}

/* Keep labels above answers and on one line */
#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldSubContainer {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 6px !important;
}

#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldLabel {
    white-space: nowrap !important;
    width: 100% !important;
    margin: 0 !important;
}

#FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .fieldBody {
    width: 100% !important;
    margin: 0 !important;
}

/* Mobile: stack Contact Details fields */
@media screen and (max-width: 650px) {
    #FunctionalBlock1_ctl00_ctl00_memberProfile_MemberForm_Section11470692 .inner {
        grid-template-columns: 1fr !important;
    }

    #idContainer11470692,
    #idContainer15725304,
    #idContainer15093724,
    #idContainer15725118,
    #idContainer15725305 {
        grid-column: 1 !important;
        grid-row: auto !important;
    }
}


/* =========================================
   CONTACT PROFILE – EDIT FORM CORRECTIONS
   ========================================= */

/* Consistent sans-serif font throughout */
#id_q6TbpuR,
#id_q6TbpuR * {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Field layout – label and input side by side */
#id_q6TbpuR .fieldSubContainer {
    display: grid !important;
    grid-template-columns: minmax(90px, 30%) minmax(0, 1fr) !important;
    align-items: start !important;
    column-gap: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Field labels */
#id_q6TbpuR .fieldLabel {
    width: auto !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 3px 0 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow-wrap: break-word !important;
    color: #52798f !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

/* Input field container */
#id_q6TbpuR .fieldBody {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Text inputs, dropdowns and date fields */
#id_q6TbpuR input[type="text"],
#id_q6TbpuR input[type="email"],
#id_q6TbpuR input[type="tel"],
#id_q6TbpuR input[type="number"],
#id_q6TbpuR input[type="date"],
#id_q6TbpuR select,
#id_q6TbpuR textarea {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
}

/* Checkbox and radio groups */
#id_q6TbpuR .fieldBody input[type="checkbox"],
#id_q6TbpuR .fieldBody input[type="radio"] {
    width: auto !important;
    max-width: none !important;
}

/* Allow checkbox lists to display vertically */
#id_q6TbpuR .fieldBody ul,
#id_q6TbpuR .fieldBody .list {
    margin: 0 !important;
    padding: 0 !important;
}

/* Keep longer labels from colliding with inputs */
#id_q6TbpuR .fieldSubContainer .fieldLabel span {
    display: inline-block;
    max-width: 100%;
}

/* =========================================
   SAVE AND CANCEL BUTTONS
   ========================================= */

#id_q6TbpuR input[type="submit"],
#id_q6TbpuR input[type="button"],
#id_q6TbpuR button {
    min-height: 46px !important;
    padding: 14px 25px !important;
    background: #659f9f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: none !important;
    text-decoration: none !important;
    cursor: pointer !important;
    box-sizing: border-box !important;
    transition: background 0.2s ease !important;
}

/* Hover */
#id_q6TbpuR input[type="submit"]:hover,
#id_q6TbpuR input[type="button"]:hover,
#id_q6TbpuR button:hover {
    background: #52798f !important;
    color: #ffffff !important;
}


/* =========================================
   CONTACT PROFILE – FIX EDIT FORM OVERLAP
   ========================================= */

/* Restore proper label and input alignment */
#id_q6TbpuR .fieldSubContainer {
    display: flex !important;
    flex-direction: row !important;
    align-items: flex-start !important;
    gap: 12px !important;
    width: 100% !important;
    box-sizing: border-box !important;
    grid-template-columns: none !important;
}

/* Give labels sufficient room */
#id_q6TbpuR .fieldSubContainer > .fieldLabel {
    display: block !important;
    flex: 0 0 30% !important;
    width: 30% !important;
    min-width: 0 !important;
    max-width: 30% !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    text-align: left !important;
    line-height: 1.4 !important;
    padding: 3px 0 !important;
    box-sizing: border-box !important;
}

/* Give input fields the remaining space */
#id_q6TbpuR .fieldSubContainer > .fieldBody {
    display: block !important;
    flex: 1 1 70% !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: 70% !important;
    box-sizing: border-box !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Restore normal input widths */
#id_q6TbpuR .fieldBody input[type="text"],
#id_q6TbpuR .fieldBody input[type="email"],
#id_q6TbpuR .fieldBody input[type="tel"],
#id_q6TbpuR .fieldBody input[type="number"],
#id_q6TbpuR .fieldBody input[type="date"],
#id_q6TbpuR .fieldBody select,
#id_q6TbpuR .fieldBody textarea {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Keep checkbox and radio controls their natural size */
#id_q6TbpuR .fieldBody input[type="checkbox"],
#id_q6TbpuR .fieldBody input[type="radio"] {
    width: auto !important;
    min-width: auto !important;
    display: inline-block !important;
}

/* Prevent checkbox labels from being compressed */
#id_q6TbpuR .fieldBody li,
#id_q6TbpuR .fieldBody .label {
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
}

/* Ensure all form text remains sans-serif */
#id_q6TbpuR,
#id_q6TbpuR * {
    font-family: Arial, Helvetica, sans-serif !important;
}


/* =========================================
   CONTACT PROFILE – PRIVACY TAB
   Match Profile and Directory typography
   ========================================= */

#id_q6TbpuR .profileDetailsContainer,
#id_q6TbpuR .profileDetailsContainer * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* Privacy section heading */
#id_q6TbpuR .profileDetailsContainer
#accessByOthersContainer h4:first-child {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #52798f !important;
}

/* Explanatory text below heading */
#id_q6TbpuR .profileDetailsContainer
#accessByOthersContainer .explanation {
    font-size: 12px !important;
    color: #8799a5 !important;
}

/* Anybody / Members / No access headings */
#id_q6TbpuR .profileDetailsContainer
.memberFieldHeadingTitle {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #34495e !important;
}

/* Privacy field names */
#id_q6TbpuR .profileDetailsContainer
.memberFieldTitle,
#id_q6TbpuR .profileDetailsContainer
.memberFieldTitle span {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #34495e !important;
}

/* Radio buttons and profile visibility text */
#id_q6TbpuR .profileDetailsContainer
input,
#id_q6TbpuR .profileDetailsContainer label {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
}

/* Keep table content consistent */
#id_q6TbpuR #memberFieldTable,
#id_q6TbpuR #memberFieldTable th,
#id_q6TbpuR #memberFieldTable td {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
}


/* =========================================
   CONTACT PROFILE – ADDITIONAL TABS
   ========================================= */

/* Consistent sans-serif typography throughout */
#id_q6TbpuR,
#id_q6TbpuR * {
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Event Registrations, Invoices and Donations content */
#FunctionalBlock1_ctl00_ctl00_eventRegistrationsTabDiv,
#FunctionalBlock1_ctl00_ctl00_invoicesTabDiv,
#FunctionalBlock1_ctl00_ctl00_donationsTabDiv,
#FunctionalBlock1_ctl00_ctl00_eventRegistrationsTabDiv *,
#FunctionalBlock1_ctl00_ctl00_invoicesTabDiv *,
#FunctionalBlock1_ctl00_ctl00_donationsTabDiv * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* Consistent typography for the three navigation tabs */
#FunctionalBlock1_ctl00_ctl00_eventRegistrationsTabLink,
#FunctionalBlock1_ctl00_ctl00_invoicesTabLink,
#FunctionalBlock1_ctl00_ctl00_donationsTabLink {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    text-transform: capitalize !important;
}

/* My Directory Profile – match Edit Profile button */
#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 14px 25px !important;
    background: #659f9f !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

/* Directory Profile button hover */
#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink:hover {
    background: #52798f !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Keep Edit Profile button consistent */
#FunctionalBlock1_ctl00_ctl00_editButtonTop {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    text-transform: capitalize !important;
}


/* =========================================
   CONTACT PROFILE – INVOICES & DONATIONS
   ========================================= */

/* Consistent sans-serif font and 14px sizing */
#id_q6TbpuR,
#id_q6TbpuR * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* All content headings – same size as body text */
#id_q6TbpuR h1,
#id_q6TbpuR h2,
#id_q6TbpuR h3,
#id_q6TbpuR h4,
#id_q6TbpuR th,
#id_q6TbpuR .genericListHeader,
#id_q6TbpuR .captionOuterContainer {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}

/* Transaction and invoice details */
#id_q6TbpuR table td,
#id_q6TbpuR table th,
#id_q6TbpuR table a,
#id_q6TbpuR .genericListTable,
#id_q6TbpuR .genericListTable * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    line-height: 1.5 !important;
}

/* My Directory Profile – force teal button styling */
#id_q6TbpuR a#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink,
a#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink,
#id_q6TbpuR .memberDirectoryDetailsLink {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 46px !important;
    padding: 14px 25px !important;
    background: #659f9f !important;
    background-image: none !important;
    color: #ffffff !important;
    border: none !important;
    border-radius: 30px !important;
    box-shadow: none !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: capitalize !important;
    text-decoration: none !important;
    line-height: 1.3 !important;
    box-sizing: border-box !important;
    cursor: pointer !important;
}

/* Button hover */
#id_q6TbpuR a#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink:hover,
a#FunctionalBlock1_ctl00_ctl00_memberDirectoryDetailsLink:hover {
    background: #52798f !important;
    color: #ffffff !important;
    text-decoration: none !important;
}

/* Keep the balance display readable */
#id_q6TbpuR .balance,
#id_q6TbpuR .balance * {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
}


/* =========================================================
   CONTACT PROFILE - ADDITIONAL TAB HEADER AND OUTER CARD
   Only applies where the original memberDetailsPanel is absent
   ========================================================= */

/* Restore the outer card on additional tabs */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel)) {
    display: block !important;
    width: calc(100% - 50px) !important;
    max-width: 1000px !important;
    margin: 40px auto !important;
    padding: 0 !important;
    background: #ffffff !important;
    border: 1px solid #d6e2e9 !important;
    border-radius: 14px !important;
    box-shadow: 0 6px 22px rgba(93,131,152,0.12) !important;
    box-sizing: border-box !important;
    overflow: hidden !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Restore Contact Profile gradient heading */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer::before {
    content: "Contact Profile" !important;
    display: block !important;
    width: 100% !important;
    box-sizing: border-box !important;
    padding: 28px 20px !important;
    margin: 0 !important;
    background: linear-gradient(135deg, #52798f, #659f9f) !important;
    color: #ffffff !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 30px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    text-align: center !important;
    border-radius: 0 !important;
}

/* Keep the additional tab content within the card */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer,
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idMemberDetailsTabsContainer,
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idMemberProfileContainer {
    width: 100% !important;
    box-sizing: border-box !important;
    background: #ffffff !important;
    border: none !important;
    box-shadow: none !important;
}

/* Maintain consistent content padding */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idMemberProfileContainer {
    padding: 10px 35px 30px !important;
}

/* Mobile adjustments */
@media (max-width: 768px) {
    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel)) {
        width: calc(100% - 24px) !important;
        margin: 20px auto !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idTopButtonsContainer::before {
        font-size: 25px !important;
        padding: 24px 16px !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idMemberProfileContainer {
        padding: 10px 20px 25px !important;
    }
}

@media (max-width: 480px) {
    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel)) {
        width: calc(100% - 20px) !important;
        margin: 15px auto !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idTopButtonsContainer::before {
        font-size: 22px !important;
        padding: 22px 12px !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idMemberProfileContainer {
        padding: 10px 15px 20px !important;
    }
}


/* =========================================================
   ADDITIONAL CONTACT PROFILE TABS - ALIGN WITH MAIN PROFILE
   ========================================================= */

/* Position the heading flush with the outer card */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer::before {
    width: calc(100% + 70px) !important;
    margin: -22px -35px 9px !important;
    padding: 28px 20px !important;
    border-radius: 12px 12px 0 0 !important;
    box-sizing: border-box !important;
}

/* Match the working Profile button spacing */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer {
    padding: 22px 35px 12px !important;
    box-sizing: border-box !important;
}

/* Match the working navigation spacing */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idMemberDetailsTabsContainer {
    padding: 10px 35px 20px !important;
    box-sizing: border-box !important;
}

/* Match the working content spacing */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idMemberProfileContainer {
    padding: 10px 35px 30px !important;
    box-sizing: border-box !important;
}

/* Mobile spacing */
@media (max-width: 768px) {
    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idTopButtonsContainer::before {
        width: calc(100% + 40px) !important;
        margin: -18px -20px 9px !important;
        padding: 24px 16px !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idTopButtonsContainer {
        padding: 18px 20px 10px !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idMemberDetailsTabsContainer,
    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idMemberProfileContainer {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
}

@media (max-width: 480px) {
    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idTopButtonsContainer::before {
        width: calc(100% + 30px) !important;
        margin: -18px -15px 9px !important;
        padding: 22px 12px !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idTopButtonsContainer {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }

    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idMemberDetailsTabsContainer,
    #id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
    #idMemberProfileContainer {
        padding-left: 15px !important;
        padding-right: 15px !important;
    }
}


/* FINAL ALIGNMENT - ADDITIONAL CONTACT PROFILE TABS */

/* Extend teal heading to the full outer card edges */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer::before {
    position: relative !important;
    left: -35px !important;
    width: calc(100% + 70px) !important;
    margin-top: -33px !important;
    margin-bottom: 18px !important;
    padding: 28px 20px !important;
    border-radius: 12px 12px 0 0 !important;
    box-sizing: border-box !important;
}

/* Preserve button positioning and add breathing room */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer {
    padding-top: 33px !important;
    padding-left: 35px !important;
    padding-right: 35px !important;
}


/* CONTACT PROFILE - FINAL HEADER ALIGNMENT */

/* Full-width heading, aligned with outer card */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer::before {
    display: block !important;
    position: relative !important;
    left: -35px !important;
    width: calc(100% + 70px) !important;
    margin: -44px 0 18px !important;
    padding: 28px 20px !important;
    box-sizing: border-box !important;
    background: linear-gradient(135deg, #52798f, #659f9f) !important;
    color: #ffffff !important;
    text-align: center !important;
    font-size: 30px !important;
    font-weight: 650 !important;
    line-height: 1.3 !important;
    border-radius: 12px 12px 0 0 !important;
}

/* Buttons retain their 35px alignment */
#id_q6TbpuR:not(:has(#FunctionalBlock1_ctl00_ctl00_memberDetailsPanel))
#idTopButtonsContainer {
    padding: 33px 35px 12px !important;
    box-sizing: border-box !important;
}


/* MEMBER DIRECTORY - ALIGN DROPDOWN AND TEXT INPUT */

/* Each search criterion uses two columns */
#id_OZgd2P2 .criteriaListItem {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: end !important;
    column-gap: 14px !important;
    row-gap: 0 !important;
    width: 100% !important;
    margin-bottom: 18px !important;
}

/* Both controls fill their respective columns */
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer,
#id_OZgd2P2 .criteriaListItem .textFieldContainer {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

/* Restore the dropdown's original table layout */
#id_OZgd2P2 .criteriaListItem table {
    display: table !important;
    width: 100% !important;
}

#id_OZgd2P2 .criteriaListItem tbody {
    display: table-row-group !important;
}

#id_OZgd2P2 .criteriaListItem tr {
    display: table-row !important;
}

#id_OZgd2P2 .criteriaListItem td {
    display: table-cell !important;
}

/* Consistent control dimensions */
#id_OZgd2P2 .criteriaListItem select,
#id_OZgd2P2 .criteriaListItem input[type="text"] {
    width: 100% !important;
    height: 44px !important;
    margin: 0 !important;
}

/* Stack controls on smaller screens */
@media (max-width: 600px) {
    #id_OZgd2P2 .criteriaListItem {
        grid-template-columns: 1fr !important;
        row-gap: 10px !important;
    }
}


/* MEMBER DIRECTORY - TWO COLUMN SEARCH LAYOUT */

#id_OZgd2P2 .criteriaListItem {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 24px !important;
    align-items: end !important;
    width: 100% !important;
    margin: 0 0 22px !important;
}

/* LEFT COLUMN: question above dropdown */
#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer {
    grid-column: 1 !important;
    grid-row: 1 !important;
    width: 100% !important;
    margin: 0 !important;
}

/* Stack label and dropdown */
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer table,
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer tbody,
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer tr,
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer td {
    display: block !important;
    width: 100% !important;
}

#id_OZgd2P2 .criteriaListItem .fieldLabel {
    display: block !important;
    margin-bottom: 7px !important;
}

/* RIGHT COLUMN: text input */
#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > 
.generalFormContainer > .inner > .valueContainer {
    grid-column: 2 !important;
    grid-row: 1 !important;
}

/* Correct value container placement */
#id_OZgd2P2 .criteriaListItem .valueContainer {
    position: absolute !important;
}

/* Reset positioning and use grid placement */
#id_OZgd2P2 .criteriaListItem {
    position: relative !important;
}

#id_OZgd2P2 .criteriaListItem .valueContainer {
    position: static !important;
    grid-column: 2 !important;
    grid-row: 1 !important;
    width: 100% !important;
    align-self: end !important;
    margin: 0 !important;
}

/* Consistent control sizing */
#id_OZgd2P2 .criteriaListItem select,
#id_OZgd2P2 .criteriaListItem input[type="text"] {
    width: 100% !important;
    max-width: 100% !important;
    height: 44px !important;
    box-sizing: border-box !important;
}

/* Mobile */
@media (max-width: 700px) {
    #id_OZgd2P2 .criteriaListItem {
        grid-template-columns: 1fr !important;
        row-gap: 10px !important;
    }

    #id_OZgd2P2 .criteriaListItem .valueContainer {
        grid-column: 1 !important;
        grid-row: 2 !important;
    }
}

/* MEMBER DIRECTORY - TWO COLUMN SEARCH FIELD LAYOUT */

#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 24px !important;
    align-items: end !important;
}

/* LEFT COLUMN - QUESTION AND CONTAINS DROPDOWN */
#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner > .dropdownFieldContainer {
    grid-column: 1 !important;
    width: 100% !important;
    margin: 0 !important;
}

#id_OZgd2P2 .dropdownFieldContainer table,
#id_OZgd2P2 .dropdownFieldContainer tbody,
#id_OZgd2P2 .dropdownFieldContainer tr,
#id_OZgd2P2 .dropdownFieldContainer td {
    display: block !important;
    width: 100% !important;
}

#id_OZgd2P2 .dropdownFieldContainer td.left {
    padding-bottom: 8px !important;
}

#id_OZgd2P2 .dropdownFieldContainer td.right {
    padding: 0 !important;
}

#id_OZgd2P2 .dropdownFieldContainer select {
    width: 100% !important;
}

/* RIGHT COLUMN - TEXT INPUT */
#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner > .valueContainer {
    grid-column: 2 !important;
    align-self: end !important;
    width: 100% !important;
    margin: 0 !important;
}

#id_OZgd2P2 .valueContainer input.typeText {
    width: 100% !important;
    box-sizing: border-box !important;
}

/* MOBILE - STACK THE TWO COLUMNS */
@media (max-width: 767px) {
    #id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner {
        grid-template-columns: 1fr !important;
        row-gap: 10px !important;
    }

    #id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner > .dropdownFieldContainer,
    #id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner > .valueContainer {
        grid-column: 1 !important;
    }
}

/* MEMBER DIRECTORY - CENTRE SEARCH AND REDUCE VERTICAL SPACING */

/* Centre the search criteria area */
#id_OZgd2P2 #FunctionalBlock1_ctl00_ctl00_criteriaList {
    width: 100% !important;
    max-width: 1100px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* Reduce spacing between each question */
#id_OZgd2P2 .criteriaListItem {
    margin-bottom: 12px !important;
    padding-bottom: 0 !important;
}

/* Reduce internal spacing within each question */
#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner {
    column-gap: 24px !important;
    row-gap: 4px !important;
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* Remove excess spacing around the field containers */
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer,
#id_OZgd2P2 .criteriaListItem .valueContainer {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

/* MEMBER DIRECTORY - CENTRED AND COMPACT SEARCH FIELDS */

/* Centre the individual search criteria */
#id_OZgd2P2 #FunctionalBlock1_ctl00_ctl00_criteriaList {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    width: 100% !important;
}

/* Set consistent width and centre each question */
#id_OZgd2P2 .criteriaListItem {
    width: 100% !important;
    max-width: 1050px !important;
    margin: 0 auto 6px auto !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

/* Keep the two-column layout and reduce spacing */
#id_OZgd2P2 .criteriaListItem > .generalFormOuterContainer > .generalFormContainer > .inner {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    column-gap: 24px !important;
    row-gap: 0 !important;
    align-items: end !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Reduce height of dropdowns */
#id_OZgd2P2 .dropdownFieldContainer select {
    height: 36px !important;
    min-height: 36px !important;
    padding: 4px 10px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Reduce height of text inputs */
#id_OZgd2P2 .valueContainer input.typeText {
    height: 36px !important;
    min-height: 36px !important;
    padding: 4px 10px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* Tighten label spacing */
#id_OZgd2P2 .dropdownFieldContainer td.left {
    padding-bottom: 3px !important;
}

#id_OZgd2P2 .dropdownFieldContainer .fieldLabel {
    margin-bottom: 2px !important;
}

/* Remove excess spacing around fields */
#id_OZgd2P2 .criteriaListItem .dropdownFieldContainer,
#id_OZgd2P2 .criteriaListItem .valueContainer {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}