/* ===== CRITICAL NAVIGATION TEXT FIX ===== */

/* FORCE navigation text to white with maximum specificity */
.menuStyleHorizontal li a,
#menu li a,
ul.menuItems > li > a,
.horizontal-navigation-bar > ul > li > a,
nav ul li a,
.menuStyleHorizontal a,
#idNavigation a,
.nav a {
    color: #FFFFFF !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

/* Navigation hover state */
.menuStyleHorizontal li a:hover,
#menu li a:hover,
ul.menuItems > li > a:hover,
.horizontal-navigation-bar > ul > li > a:hover {
    color: #FFFFFF !important;
    opacity: 0.9 !important;
}

/* ===== HEADER & NAVIGATION STYLING ===== */

/* Header background - dark blue */
.header-wrapper, 
#header,
.wa-header,
#idHeaderContainer {
    background-color: #003B7A !important;
}

/* Navigation menu bar - bright blue */
.horizontal-navigation-bar,
.main-navigation,
.menuStyleNone,
.menuStyleHorizontal,
#menu {
    background-color: #4A90E2 !important;
}

/* Navigation hover effect */
.horizontal-navigation-bar a:hover,
.main-navigation a:hover,
.menuStyleNone a:hover {
    background-color: #2B5FA6 !important;
    color: #FFFFFF !important;
}

/* ===== ADD JOIN NABA HEADING ===== */

/* Add JOIN NABA heading above the form */
.contentWrapper:before,
.WaGadgetNewMembershipApplication:before {
    content: "JOIN NABA" !important;
    display: block !important;
    font-size: 42px !important;
    font-family: Georgia, 'Times New Roman', serif !important;
    font-weight: bold !important;
    color: #003B7A !important;
    text-align: center !important;
    margin: 30px 0 40px 0 !important;
    padding: 0 !important;
}

/* ===== PAGE & FORM STYLING ===== */

/* Page background */
body,
.contentWrapper {
    background-color: #FFFFFF !important;
    font-family: Arial, Helvetica, sans-serif !important;
}

/* Form section heading */
.formSectionTitle,
h2 {
    color: #003B7A !important;
    font-family: Georgia, serif !important;
    font-size: 24px !important;
    font-weight: bold !important;
    border-bottom: 2px solid #4A90E2 !important;
    padding-bottom: 10px !important;
    margin-bottom: 20px !important;
}

/* "Select membership level" text styling */
.WaGadgetNewMembershipApplication h2,
.membershipLevelsGroup legend {
    color: #003B7A !important;
    font-size: 20px !important;
}

/* ===== MEMBERSHIP LEVEL STYLING ===== */

/* Membership level containers */
.membershipLevelBlock,
.membershipLevel {
    border: 1px solid #DDDDDD !important;
    padding: 15px !important;
    margin-bottom: 15px !important;
    border-radius: 4px !important;
    background-color: #F9F9F9 !important;
}

/* Membership level name/title */
.membershipLevelName,
.membership-level-name,
.levelName {
    color: #003B7A !important;
    font-weight: bold !important;
    font-size: 18px !important;
    margin-bottom: 8px !important;
}

/* Membership price */
.membershipLevelPrice,
.price {
    color: #C4122E !important;
    font-weight: bold !important;
    font-size: 20px !important;
}

/* Membership description text */
.membershipLevelDescription,
.description {
    color: #666666 !important;
    font-style: italic !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
}

/* ===== BUTTON STYLING ===== */

/* LOG IN button (top right) */
.loginButton,
a.loginButton {
    background-color: #4A90E2 !important;
    color: #FFFFFF !important;
    border: none !important;
    padding: 10px 25px !important;
    font-size: 14px !important;
    font-weight: bold !important;
    border-radius: 4px !important;
    text-transform: uppercase !important;
    text-decoration: none !important;
}

/* NEXT button and other primary buttons */
.wa-button,
.wa-button-primary,
input[type="submit"],
button[type="submit"],
.submitButton,
.primaryButton {
    background-color: #4A90E2 !important;
    color: #FFFFFF !important;
    border: none !important;
    padding: 12px 30px !important;
    font-size: 16px !important;
    font-weight: bold !important;
    border-radius: 4px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
}

/* Button hover effect */
.wa-button:hover,
.wa-button-primary:hover,
input[type="submit"]:hover,
button[type="submit"]:hover,
.loginButton:hover {
    background-color: #C4122E !important;
}

/* ===== FOOTER STYLING ===== */

/* Footer background */
.footer-wrapper,
#footer,
.wa-footer,
#idFooterContainer {
    background-color: #003366 !important;
    color: #FFFFFF !important;
    padding: 20px !important;
}

/* Footer text */
.footer-wrapper p,
.footer-wrapper a,
#footer p,
#footer a,
.wa-footer p,
.wa-footer a {
    color: #FFFFFF !important;
    font-size: 14px !important;
}

/* Footer links hover */
.footer-wrapper a:hover,
#footer a:hover {
    color: #4A90E2 !important;
    text-decoration: underline !important;
}

/* ===== FORM FIELDS STYLING ===== */

/* Input fields */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
textarea,
select {
    border: 1px solid #CCCCCC !important;
    padding: 10px !important;
    font-family: Arial, Helvetica, sans-serif !important;
    border-radius: 3px !important;
    font-size: 14px !important;
}

/* Radio buttons and checkboxes */
input[type="radio"],
input[type="checkbox"] {
    margin-right: 8px !important;
}

/* Form labels */
label {
    color: #333333 !important;
    font-weight: normal !important;
    font-size: 14px !important;
}

/* Required field indicator */
.required,
.requiredFieldMarker {
    color: #C4122E !important;
}

/* ===== LAYOUT & SPACING ===== */

/* Content padding */
.contentPadding,
.WaGadgetNewMembershipApplication {
    padding: 20px 40px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Logo positioning */
.logo-container,
#idLogoContainer {
    background-color: transparent !important;
    padding: 10px !important;
}

/* Remove extra margins */
.WaGadgetNewMembershipApplication form {
    margin-top: 0 !important;
}

/* ===== DIRECTORY PAGE TEXT FIX - AGGRESSIVE VERSION ===== */

/* Force directory content to be visible - multiple selector targeting */
.directoryTable,
.directoryTable td,
.directoryTable th,
.directoryTable tr,
.memberDirectoryTable,
.memberDirectoryTable td,
.memberDirectoryTable th,
.memberDirectoryTable tr,
table.directoryTable,
table.memberDirectoryTable,
.WaGadgetMemberDirectory table,
.WaGadgetMemberDirectory td,
.WaGadgetMemberDirectory th,
.WaGadgetMemberDirectory tr,
div[class*="directory"] table,
div[class*="directory"] td,
div[class*="Directory"] table,
div[class*="Directory"] td {
    color: #333333 !important;
    background-color: transparent !important;
}

/* Directory cell content */
.directoryTable td span,
.memberDirectoryTable td span,
.WaGadgetMemberDirectory td span {
    color: #333333 !important;
}

/* Directory links - make them blue and visible */
.directoryTable a,
.memberDirectoryTable a,
.WaGadgetMemberDirectory a {
    color: #0066CC !important;
    text-decoration: underline !important;
}

/* Directory links hover */
.directoryTable a:hover,
.memberDirectoryTable a:hover,
.WaGadgetMemberDirectory a:hover {
    color: #C4122E !important;
}

/* Directory headers - dark blue background with white text */
.directoryTable th,
.memberDirectoryTable th,
.WaGadgetMemberDirectory th {
    color: #FFFFFF !important;
    background-color: #003B7A !important;
    font-weight: bold !important;
    padding: 10px !important;
}

/* Alternating row colors for better readability */
.directoryTable tr:nth-child(even),
.memberDirectoryTable tr:nth-child(even) {
    background-color: #F9F9F9 !important;
}

.directoryTable tr:nth-child(odd),
.memberDirectoryTable tr:nth-child(odd) {
    background-color: #FFFFFF !important;
}

/* NUCLEAR OPTION - Force all table text to be visible on Directory page */
body table td,
body table th {
    color: #333333 !important;
}

body table a {
    color: #0066CC !important;
    text-decoration: underline !important;
}

/* ===== MEMBER DETAIL PAGE TEXT FIX ===== */

/* Member profile content - make all text visible */
.memberDetails,
.memberDetails td,
.memberDetails th,
.memberDetails p,
.memberDetails div,
.memberProfile,
.memberProfile td,
.memberProfile th,
.memberProfile p,
.memberProfile div,
.WaGadgetMemberDetails,
.WaGadgetMemberDetails td,
.WaGadgetMemberDetails div,
.contactInfo,
.contactInfo td,
.contactInfo div {
    color: #333333 !important;
}

/* Member detail links (email, website, etc.) */
.memberDetails a,
.memberProfile a,
.WaGadgetMemberDetails a,
.contactInfo a {
    color: #0066CC !important;
    text-decoration: underline !important;
}

/* Member detail links hover */
.memberDetails a:hover,
.memberProfile a:hover,
.WaGadgetMemberDetails a:hover {
    color: #C4122E !important;
}

/* Member detail section headers */
.memberDetails h2,
.memberDetails h3,
.memberProfile h2,
.memberProfile h3 {
    color: #003B7A !important;
}

/* Member detail labels */
.memberDetails label,
.memberProfile label,
.contactInfo label {
    color: #666666 !important;
    font-weight: bold !important;
}

/* ===== ADDITIONAL REFINEMENTS ===== */

/* Mandatory fields text */
.mandatoryFieldsNotice {
    color: #666666 !important;
    font-style: italic !important;
    text-align: right !important;
}

/* Powered by text in footer */
.poweredBy {
    font-size: 12px !important;
    color: #CCCCCC !important;
    text-align: right !important;
}