/* Remove unwanted Almanac spacing between IMYM template rows */

#id_8CnjCq6,
#id_wn4k9gG,
#id_xf765g3,
#id_MbP7vUH {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* Keep sage divider compact */

#id_MbP7vUH p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
}
/* Breathing room below login and search */

#id_TLeQtmk,
#id_WvqqaZi {
    padding-bottom: 5px !important;
    padding-right: 10px !important;
    padding-top: 5px !important;
}
/* IMYM typography
   Replace Almanac's Verdana with Segoe UI
*/

body,
input,
textarea,
select,
button {
    font-family: "Segoe UI", Arial, sans-serif;
}
/* Pull primary menu, sage stripe and content together */

#id_79XKt3G {
    margin-bottom: 0 !important;
    padding-bottom: 0 !important;
}

#id_MbP7vUH {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

#id_HJWqtWS {
    margin-top: 0 !important;
    padding-top: 0 !important;
}
/* Footer spacing */

#id_wXZDue3,
#id_NxBVptC,
#id_LqB1LSG {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* Terracotta divider between footer rows */

#id_LqB1LSG {
    border-top: 2px solid #C7794A !important;
}
/* IMYM main site width */

.zoneContent .container_12 {
    width: calc(100% - 48px) !important;
    max-width: 1280px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.zoneContent .s1_grid_12,
.zoneContent .s2_grid_12,
.zoneContent .s3_grid_12 {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
#id_79XKt3G .menuBackground {
    width: 100% !important;
    left: 0 !important;
}
/* Compact IMYM primary menu */

#id_79XKt3G .firstLevel > li > .item > a {
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

#id_79XKt3G .firstLevel > li > .item > a > span {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
/* Hide My Community secondary menu when logged out */

body.publicContentView #id_HgKXaqp {
    display: none !important;
}
/* IMYM member secondary menu */

#id_HgKXaqp {
    background-color: #44507A !important;
    padding: 8px 16px !important;
    text-align: left;
}

#id_HgKXaqp a {
    color: #C9a85B !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: 18px !important;
    text-decoration: none !important;
    display: inline-block;
    padding: 6px 18px !important;
}

#id_HgKXaqp a:hover {
    background-color: #738363 !important;
    color: #F8F4EC !important;
}
/* Header sage divider — 10px */

#id_xpF9Ygm {
    height: 10px !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
}
/* Remove WildApricot's 12px minimum from sage layout */

#id_MbP7vUH > .WaLayoutTable {
    height: auto !important;
    min-height: 0 !important;
}
#id_xpF9Ygm .gadgetStyleBody,
#id_xpF9Ygm p {
    display: none !important;
}
#id_xpF9Ygm p {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    height: 0 !important;
}
/* Highlight current page in IMYM member secondary menu */

body#PAGEID_18274 #id_HgKXaqp a[href="/my-profile"],
body#PAGEID_18275 #id_HgKXaqp a[href="/community-directory"],
body#PAGEID_18276 #id_HgKXaqp a[href="/forums"],
body#PAGEID_18277 #id_HgKXaqp a[href="/my-service-with-imym"] {
    background-color: #C9A85D !important;
    color: #44507A !important;
}
/* Give six primary menu items a little more room */

#id_79XKt3G .firstLevel > li > .item > a {
    padding-left: 12px !important;
    padding-right: 12px !important;
}
/* Remove extra space below member secondary menu */

#id_HgKXaqp {
    margin-bottom: 0 !important;
}
/* Hide Change password from header login area */

#id_TLeQtmk .loginBoxChangePassword {
    display: none !important;
}
/* Add greeting before logged-in member name */

#id_TLeQtmk .loginBoxProfileLink a::before {
    content: "Hello ";
}
/* IMYM header text */

#id_Uxpxpym p {
    line-height: normal !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

#id_Uxpxpym p + p {
    margin-top: 2px !important;
}
/* TEST: tighten spacing between profile sections */
.captionOuterContainer {
    margin-top: 8px !important;
    margin-bottom: 8px !important;
}
/* TEST: tighten profile field spacing */
.fieldSubContainer.labeledTextContainer {
    margin-top: 6px !important;
    margin-bottom: 6px !important;
}
/* TEST: tighten only the main contact-profile field section */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section15641148
.fieldSubContainer {
    margin-top: 4px !important;
    margin-bottom: 4px !important;
}

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section15641148
.fieldContainer {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}
/* My Profile: border around generated profile form */
#idMemberProfileContainer {
    border: 1px solid #738363;
    border-radius: 10px;
    padding: 24px 28px;
    box-sizing: border-box;
}
/* My Profile: flow the main contact fields into two columns */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section15641148 .inner {
    column-count: 2;
    column-gap: 50px;
    column-fill: balance;
}

/* Keep each field together within a column */
#FunctionalBlock1_ctl00_ctl00_MemberForm_Section15641148 .fieldContainer {
    break-inside: avoid;
    -webkit-column-break-inside: avoid;
}
/* My Profile: resize label/value layout inside the two columns */

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section15641148 .fieldLabel {
    width: 42% !important;
    box-sizing: border-box;
}

#FunctionalBlock1_ctl00_ctl00_MemberForm_Section15641148 .fieldBody {
    width: 58% !important;
    box-sizing: border-box;
}
/* My Profile: hide social network login */

.WaGadgetContactProfile #socialLoginContainer,
.WaGadgetContactProfile #idSocialLoginContainer {
    display: none !important;
}
/* My Profile: subtle background for profile information */
.WaGadgetContactProfile #idMemberProfileContainer {
    background-color: #FCFAF6;
}
/* Global WildApricot action buttons */

.typeButton {
    background-color: #44507A !important;
    color: #F8F4EC !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}
/* My Profile: make the current tab obvious */

.memberDetailsTabMenu li.selected span {
    font-weight: 700 !important;
    color: #44507A !important;
    border-bottom: 3px solid #C9A85D;
    padding-bottom: 4px;
}
/* Universal IMYM content button */
a.imym-button {
    display: inline-block;
    background-color: #44507A;
    color: #C9a85B !important;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;
    padding: 10px 20px;
    border-radius: 6px;
    text-decoration: none !important;
    cursor: pointer;
}

a.imym-button:hover,
a.imym-button:focus {
    opacity: 0.88;
    color: #C9a85B !important;
    text-decoration: none !important;
}
/* =========================================================
   IMYM GLOBAL BUTTON STYLES
   ========================================================= */

/* Primary action buttons */
.typeButton,
.loginButton,
.nextButtonAutoWidth,
.functionalButton.wizardNextButton,
.nextButton[value="Next"],
input[type="submit"]:not([value="Cancel"]):not(:disabled) {
    background-color: #44507A !important;
    color: #F8F4EC !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}

/* Primary button hover */
.typeButton:hover,
.loginButton:hover,
.nextButtonAutoWidth:hover,
.functionalButton.wizardNextButton:hover,
.nextButton[value="Next"]:hover,
input[type="submit"]:not([value="Cancel"]):not(:disabled):hover {
    opacity: 0.88;
}


/* Secondary / Cancel buttons */
input[value="Cancel"],
.nextButton[value="Cancel"] {
    background-color: #F8F4EC !important;
    color: #44507A !important;
    border: 1px solid #44507A !important;
    font-size: 18px !important;
    font-weight: 700 !important;
}


/* Disabled buttons */
input[type="submit"]:disabled,
button:disabled {
    background-color: #d8d8d8 !important;
    color: #777 !important;
    border-color: #bbb !important;
    opacity: 0.7 !important;
    cursor: not-allowed !important;
}
/* Event registration – subsection headings */
#idGuestsRegistrationDivider h4,
#idIsShownOnPublicDivider h4 {
    font-size: 26px;
    line-height: 1.25;
    font-weight: 600;
}
/* Hide "Guests registration" heading when no guests have been added */
.inner:has(#idGuestsRegistrationDivider):not(:has(#membersTable))
#idGuestsRegistrationDivider {
    display: none;
}
/* Membership application – "Enter your email" heading */
.formTitleOuterContainer
.formTitleContainer .inner h3.formTitle {
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 22px;
    line-height: 1.3;
    font-weight: 600;
    color: #333333;
}
/* Membership application – hide mandatory-fields legend */
.WaGadgetMembershipApplication .mandatoryFieldsTitle {
    display: none;
}
/* Membership application – field labels */
.WaGadgetMembershipApplication .fieldLabel .mandatoryLabel {
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 18px;
    line-height: 1.3;
    font-weight: 600;
    color: #333333;
}
/* Membership application – bring navigation closer to the email field */
.WaGadgetMembershipApplication .navigationOuterContainer {
    margin-top: -80px;
}
/* Membership application – full application form only */

/* Hide WildApricot's "Fill in application form" heading */
.WaGadgetMembershipApplication:has([id*="_stepTemplate_wizardMemberForm_"])
.formTitleOuterContainer h3.formTitle {
    display: none;
}

/* Add our own introductory prompt */
.WaGadgetMembershipApplication:has([id*="_stepTemplate_wizardMemberForm_"])
.formTitleContainer .inner::before {
    content: "Please provide only the information you are comfortable sharing. You can update your profile later.";
    display: block;
    font-family: "Segoe UI", Arial, sans-serif;
    font-size: 20px;
    line-height: 1.4;
    font-weight: 600;
    color: #333333;
    margin-bottom: 18px;
}
/* Header login button – slightly smaller */
.WaGadgetLoginButton .loginBoxLinkButton {
    padding: 8px 18px !important;
    font-size: 18px !important;
    line-height: 1.2 !important;
    border-radius: 18px !important;
}
/* Header logged-out account controls */
.imym-account-actions {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
}

.imym-account-actions a {
    display: inline-block !important;
    padding: 8px 18px !important;
    border-radius: 18px !important;
    font-family: "Segoe UI", Arial, sans-serif !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
}

/* Create an account */
.imym-account-actions .imym-secondary-button {
    background-color: #738363 !important;
    color: #F8F4EC !important;
    border: 2px solid #738363 !important;
}

/* Log in */
.imym-account-actions .imym-primary-button {
    background-color: #44507A !important;
    color: #F8F4EC !important;
    border: 2px solid #44507A !important;
}
/* =========================================================
   HEADER ACCOUNT CONTROLS – LOGGED IN / LOGGED OUT STATES
   ========================================================= */

/* Logged out:
   hide WildApricot's duplicate Login button */
body:has(#id_TLeQtmk .loginBoxLinkButton) #id_TLeQtmk {
    display: none;
}

/* Logged in:
   hide our custom Create account / Log in buttons */
body:has(#id_TLeQtmk .loginBoxLogout) #id_amZrr2C {
    display: none;
}
/* Give header account buttons a little breathing room */
#id_amZrr2C {
    padding-top: 8px;
    padding-right: 8px;
}
/* Pull Search closer to the account buttons */
.WaGadgetSiteSearch {
    position: relative;
    top: -10px;
}
/* Simple section divider */
.imym-section-divider {
    width: 100%;
    border-top: 2px solid #C7794A;
    margin: 0;
    padding: 0;
}
/* Forum topic titles – slate blue */
.WaGadgetForum table.topicListTable a.topicTitle {
    color: #44507A !important;
}

.WaGadgetForum table.topicListTable a.topicTitle:hover,
.WaGadgetForum table.topicListTable a.topicTitle:focus {
    color: #738363 !important;
    text-decoration: underline;
}
/* Forum subscribe icon – replace Almanac orange image */
.forumPanelOuterContainer
.forumPanelContainer div #idSubscribe a::before {
    background: none !important;
    content: "✉";
    display: inline-block;
    width: auto;
    height: auto;
    margin-right: 9px;
    vertical-align: -2px;
    color: #C7794A;
    font-size: 28px;
    line-height: 1;
}
/* Forum topic list – remove decorative topic icon column */
.WaGadgetForum .topicListTable .threadImageTD {
    display: none !important;
}
/* Forum topic list – padding after removing icon column */
.WaGadgetForum .topicListTable .threadTD {
    padding-left: 28px !important;
}
/* Forum – new topic screen only */

/* Hide WildApricot's generic header row */
.WaGadgetForum:has(input[type="submit"][value="Create"])
.boxHeaderOuterContainer {
    display: none;
}
/* Add our H3-style heading above the form */
.WaGadgetForum:has(input[type="submit"][value="Create"])
.boxBodyOuterContainer::before {
    content: "Start a new topic";
    display: block;
    font-family: Georgia, "Times New Roman", serif;
    font-size: 28px;
    line-height: 1.2;
    font-weight: 700;
    color: #44507A;
    margin: 0 0 18px 0;
}
/* Forum – hide redundant Mandatory fields legend */
.WaGadgetForum:has(input[type="submit"][value="Create"])
.postEditLegend.mandatoryFieldsTitle {
    display: none !important;
}
/* Forum sticky-date calendar – replace Almanac orange icon */
.WaGadgetForum
.forumEditEntryBoxContainer
.boxBodyOuterContainer
.fieldContainer
.DES_CalPopup span::before {
    background: none !important;
    content: "▦";
    display: inline-block;
    width: auto;
    height: auto;
    margin-right: 6px;
    vertical-align: -1px;
    color: #C7794A;
    font-size: 20px;
    line-height: 1;
}
/* Forum message actions – remove Almanac orange icons */
.WaGadgetForumStateMessageList
.messageActionsContainer a::before {
    background: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    margin-right: 0 !important;
}
/* Forum – remove orange Back to topics icon */
.WaGadgetForum
.pageTitleOuterContainer
.pageBackContainer a::before {
    background: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    margin-right: 0 !important;
}
/* Forum – remove orange Back to top icon */
.WaGadgetForum
.forumBottomPanelOuterContainer
.forumBottomPanelContainer
a[href$="#top"]::before {
    background: none !important;
    content: none !important;
    width: 0 !important;
    height: 0 !important;
    margin-right: 0 !important;
}
/* Forum topic title – match site H2 */
.WaGadgetForum #forumTitle {
    font-family: Georgia, "Times New Roman", Times, serif !important;
    font-size: 24px !important;
    color: #44507A !important;
}