/* ============================================
   SHAWN SELANDERS — OPTION 3 DESIGN SYSTEM v4.2
   Works WITH theme-injection.js in head code
   body.ss-themed = injection has run, safe to style
   ============================================ */

/* ================================================
   GOOGLE FONT IMPORT
   ================================================ */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* ================================================
   ROOT VARIABLES
   ================================================ */
:root {
  --ss-navy: #0f2240;
  --ss-blue: #2E75B6;
  --ss-blue-light: #3d8fd4;
  --ss-blue-dark: #1a5a94;
  --ss-gold: #c4a030;
  --ss-gold-light: #d4b840;
  --ss-red: #c0392b;
  --ss-text: #2d3748;
  --ss-text-light: #4a5568;
  --ss-text-muted: #64748b;
  --ss-bg: #f8f9fb;
  --ss-bg-alt: #f0f4f8;
  --ss-bg-card: #ffffff;
  --ss-border: #e2e8f0;
  --ss-shadow-sm: 0 2px 8px rgba(0,0,0,0.04);
  --ss-shadow-md: 0 4px 16px rgba(0,0,0,0.07);
  --ss-shadow-lg: 0 8px 30px rgba(46,117,182,0.12);
  --ss-radius: 10px;
  --ss-transition: all 0.25s ease;
}

/* ================================================
   GLOBAL — TYPOGRAPHY & BASE
   ================================================ */
body.ss-themed {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  color: var(--ss-text) !important;
  -webkit-font-smoothing: antialiased !important;
}

body.ss-themed .et_pb_code_inner {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
  color: var(--ss-text) !important;
  line-height: 1.7 !important;
}

body.ss-themed .et_pb_code_inner > div {
  font-family: 'Inter', -apple-system, sans-serif !important;
}

/* Headings */
body.ss-themed .et_pb_code_inner h1 {
  font-size: 2.2em !important;
  font-weight: 800 !important;
  color: var(--ss-navy) !important;
  line-height: 1.2 !important;
  margin-bottom: 12px !important;
}

body.ss-themed .et_pb_code_inner h2 {
  font-size: 1.75em !important;
  font-weight: 700 !important;
  color: var(--ss-navy) !important;
  line-height: 1.25 !important;
  margin-bottom: 16px !important;
  margin-top: 1.5em !important;
}

body.ss-themed .et_pb_code_inner h3 {
  font-size: 1.35em !important;
  font-weight: 700 !important;
  color: var(--ss-navy) !important;
  line-height: 1.3 !important;
  margin-bottom: 12px !important;
}

body.ss-themed .et_pb_code_inner h4 {
  font-size: 1.15em !important;
  font-weight: 700 !important;
  color: var(--ss-blue) !important;
  line-height: 1.35 !important;
  margin-bottom: 8px !important;
}

/* Body text */
body.ss-themed .et_pb_code_inner p {
  font-size: 1.05em !important;
  color: var(--ss-text) !important;
  line-height: 1.75 !important;
}

body.ss-themed .et_pb_code_inner strong {
  color: var(--ss-navy) !important;
  font-weight: 700 !important;
}

body.ss-themed .et_pb_code_inner li {
  color: var(--ss-text) !important;
  line-height: 1.7 !important;
}

body.ss-themed .et_pb_code_inner li::marker {
  color: var(--ss-blue) !important;
}

/* Links */
body.ss-themed .et_pb_code_inner a:not([style*="inline-block"]) {
  color: var(--ss-blue) !important;
  font-weight: 600 !important;
}

/* Horizontal rules */
body.ss-themed .et_pb_code_inner hr {
  border: none !important;
  height: 2px !important;
  background: linear-gradient(to right, var(--ss-blue), var(--ss-gold), var(--ss-blue)) !important;
  margin: 2.5em auto !important;
  max-width: 200px !important;
  opacity: 0.6 !important;
}

/* ================================================
   PAGE BACKGROUND & FOOTER
   ================================================ */
body.ss-themed #page-container {
  background: var(--ss-bg) !important;
}

body.ss-themed #main-footer {
  background: var(--ss-navy) !important;
  border-top: 3px solid var(--ss-gold) !important;
  color: #cbd5e1 !important;
}

body.ss-themed #main-footer a {
  color: var(--ss-gold-light) !important;
}

body.ss-themed #footer-bottom {
  background: #0a1830 !important;
}

/* ================================================
   DARK SECTIONS — text visibility fix
   BOTH hex AND rgb() versions needed because JS
   re-serializes style attributes from hex to rgb
   ================================================ */

/* --- HEADINGS inside dark backgrounds --- */
body.ss-themed div[style*="#1a1a1a"] h1,
body.ss-themed div[style*="#1a1a1a"] h2,
body.ss-themed div[style*="#1a1a1a"] h3,
body.ss-themed div[style*="#1a1a1a"] h4,
body.ss-themed div[style*="rgb(26, 26, 26)"] h1,
body.ss-themed div[style*="rgb(26, 26, 26)"] h2,
body.ss-themed div[style*="rgb(26, 26, 26)"] h3,
body.ss-themed div[style*="rgb(26, 26, 26)"] h4,
body.ss-themed div[style*="background"][style*="#2d2d2d"] h1,
body.ss-themed div[style*="background"][style*="#2d2d2d"] h2,
body.ss-themed div[style*="background"][style*="#2d2d2d"] h3,
body.ss-themed div[style*="background"][style*="#2d2d2d"] h4,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] h1,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] h2,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] h3,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] h4,
body.ss-themed div[style*="#0f2b4a"] h1,
body.ss-themed div[style*="#0f2b4a"] h2,
body.ss-themed div[style*="#0f2b4a"] h3,
body.ss-themed div[style*="#0f2b4a"] h4,
body.ss-themed div[style*="rgb(15, 43, 74)"] h1,
body.ss-themed div[style*="rgb(15, 43, 74)"] h2,
body.ss-themed div[style*="rgb(15, 43, 74)"] h3,
body.ss-themed div[style*="rgb(15, 43, 74)"] h4,
body.ss-themed div[style*="#0f2240"] h1,
body.ss-themed div[style*="#0f2240"] h2,
body.ss-themed div[style*="#0f2240"] h3,
body.ss-themed div[style*="#0f2240"] h4,
body.ss-themed div[style*="rgb(15, 34, 64)"] h1,
body.ss-themed div[style*="rgb(15, 34, 64)"] h2,
body.ss-themed div[style*="rgb(15, 34, 64)"] h3,
body.ss-themed div[style*="rgb(15, 34, 64)"] h4 {
  color: var(--ss-gold) !important;
}

/* --- BODY TEXT inside dark backgrounds --- */
body.ss-themed div[style*="#1a1a1a"] p,
body.ss-themed div[style*="#1a1a1a"] div,
body.ss-themed div[style*="#1a1a1a"] span,
body.ss-themed div[style*="#1a1a1a"] li,
body.ss-themed div[style*="rgb(26, 26, 26)"] p,
body.ss-themed div[style*="rgb(26, 26, 26)"] div,
body.ss-themed div[style*="rgb(26, 26, 26)"] span,
body.ss-themed div[style*="rgb(26, 26, 26)"] li,
body.ss-themed div[style*="background"][style*="#2d2d2d"] p,
body.ss-themed div[style*="background"][style*="#2d2d2d"] div,
body.ss-themed div[style*="background"][style*="#2d2d2d"] span,
body.ss-themed div[style*="background"][style*="#2d2d2d"] li,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] p,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] div,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] span,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] li,
body.ss-themed div[style*="#0f2b4a"] p,
body.ss-themed div[style*="#0f2b4a"] div,
body.ss-themed div[style*="#0f2b4a"] span,
body.ss-themed div[style*="#0f2b4a"] li,
body.ss-themed div[style*="rgb(15, 43, 74)"] p,
body.ss-themed div[style*="rgb(15, 43, 74)"] div,
body.ss-themed div[style*="rgb(15, 43, 74)"] span,
body.ss-themed div[style*="rgb(15, 43, 74)"] li,
body.ss-themed div[style*="#0f2240"] p,
body.ss-themed div[style*="#0f2240"] div,
body.ss-themed div[style*="#0f2240"] span,
body.ss-themed div[style*="#0f2240"] li,
body.ss-themed div[style*="rgb(15, 34, 64)"] p,
body.ss-themed div[style*="rgb(15, 34, 64)"] div,
body.ss-themed div[style*="rgb(15, 34, 64)"] span,
body.ss-themed div[style*="rgb(15, 34, 64)"] li {
  color: #cbd5e1 !important;
}

/* --- BOLD/EMPHASIS inside dark backgrounds --- */
body.ss-themed div[style*="#1a1a1a"] strong,
body.ss-themed div[style*="#1a1a1a"] em,
body.ss-themed div[style*="rgb(26, 26, 26)"] strong,
body.ss-themed div[style*="rgb(26, 26, 26)"] em,
body.ss-themed div[style*="background"][style*="#2d2d2d"] strong,
body.ss-themed div[style*="background"][style*="#2d2d2d"] em,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] strong,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] em,
body.ss-themed div[style*="#0f2b4a"] strong,
body.ss-themed div[style*="#0f2b4a"] em,
body.ss-themed div[style*="rgb(15, 43, 74)"] strong,
body.ss-themed div[style*="rgb(15, 43, 74)"] em,
body.ss-themed div[style*="#0f2240"] strong,
body.ss-themed div[style*="#0f2240"] em,
body.ss-themed div[style*="rgb(15, 34, 64)"] strong,
body.ss-themed div[style*="rgb(15, 34, 64)"] em {
  color: #ffffff !important;
}

/* --- LINKS inside dark backgrounds --- */
body.ss-themed div[style*="#1a1a1a"] a,
body.ss-themed div[style*="rgb(26, 26, 26)"] a,
body.ss-themed div[style*="background"][style*="#2d2d2d"] a,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] a,
body.ss-themed div[style*="#0f2b4a"] a,
body.ss-themed div[style*="rgb(15, 43, 74)"] a,
body.ss-themed div[style*="#0f2240"] a,
body.ss-themed div[style*="rgb(15, 34, 64)"] a {
  color: #82caff !important;
}

body.ss-themed div[style*="#1a1a1a"] a:hover,
body.ss-themed div[style*="rgb(26, 26, 26)"] a:hover,
body.ss-themed div[style*="background"][style*="#2d2d2d"] a:hover,
body.ss-themed div[style*="background"][style*="rgb(45, 45, 45)"] a:hover,
body.ss-themed div[style*="#0f2b4a"] a:hover,
body.ss-themed div[style*="rgb(15, 43, 74)"] a:hover,
body.ss-themed div[style*="#0f2240"] a:hover,
body.ss-themed div[style*="rgb(15, 34, 64)"] a:hover {
  color: #ffffff !important;
}

/* --- LIGHT CONTAINERS INSIDE DARK — restore dark text --- */
body.ss-themed div[style*="#1a1a1a"] div[style*="#f0f4f8"] p,
body.ss-themed div[style*="#1a1a1a"] div[style*="#f0f4f8"] h3,
body.ss-themed div[style*="#1a1a1a"] div[style*="#f0f4f8"] div,
body.ss-themed div[style*="#1a1a1a"] div[style*="#f0f4f8"] a,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#f0f4f8"] p,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#f0f4f8"] h3,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#f0f4f8"] div,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#f0f4f8"] a,
body.ss-themed div[style*="#1a1a1a"] div[style*="#e6f3ff"] p,
body.ss-themed div[style*="#1a1a1a"] div[style*="#e6f3ff"] div,
body.ss-themed div[style*="#1a1a1a"] div[style*="#e6f3ff"] a,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#e6f3ff"] p,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#e6f3ff"] div,
body.ss-themed div[style*="rgb(26, 26, 26)"] div[style*="#e6f3ff"] a {
  color: #0f2b4a !important;
}

/* --- CLASS-BASED DARK BACKGROUNDS (Contact, Apply, etc.) --- */
body.ss-themed .contact-info-box h3,
body.ss-themed .contact-info-box h4 {
  color: var(--ss-gold) !important;
}
body.ss-themed .contact-info-box p,
body.ss-themed .contact-info-box div,
body.ss-themed .contact-info-box span {
  color: #cbd5e1 !important;
}
body.ss-themed .contact-info-box strong {
  color: #ffffff !important;
}
body.ss-themed .contact-info-box a {
  color: #82caff !important;
}
body.ss-themed .nl-signup-inner h3 {
  color: #ffffff !important;
}
body.ss-themed .nl-signup-inner p {
  color: #bbbbbb !important;
}

/* --- GOLD GRADIENT BACKGROUNDS — dark text --- */
body.ss-themed div[style*="#f59e0b"][style*="gradient"] h1,
body.ss-themed div[style*="#f59e0b"][style*="gradient"] h2,
body.ss-themed div[style*="#f59e0b"][style*="gradient"] h3,
body.ss-themed div[style*="#f59e0b"][style*="gradient"] p,
body.ss-themed div[style*="#f59e0b"][style*="gradient"] div,
body.ss-themed div[style*="#f59e0b"][style*="gradient"] span,
body.ss-themed div[style*="#f59e0b"][style*="gradient"] strong,
body.ss-themed div[style*="#d97706"][style*="gradient"] h1,
body.ss-themed div[style*="#d97706"][style*="gradient"] h2,
body.ss-themed div[style*="#d97706"][style*="gradient"] h3,
body.ss-themed div[style*="#d97706"][style*="gradient"] p,
body.ss-themed div[style*="#d97706"][style*="gradient"] div,
body.ss-themed div[style*="#d97706"][style*="gradient"] span,
body.ss-themed div[style*="#d97706"][style*="gradient"] strong {
  color: #0a0e1a !important;
}

/* Buttons with dark bg inside gold banners */
body.ss-themed div[style*="#f59e0b"][style*="gradient"] a[style*="#0f2b4a"],
body.ss-themed div[style*="#d97706"][style*="gradient"] a[style*="#0f2b4a"] {
  color: #ffffff !important;
}

/* ================================================
   DROPDOWN MENUS
   ================================================ */
body #top-menu .sub-menu,
body .et_pb_menu .nav li ul,
body .et_pb_menu__wrap .sub-menu,
body .et_pb_fullwidth_menu .nav li ul,
body .nav li ul,
body .et_pb_menu_1_tb_header .nav li ul,
body #main-header .nav li ul {
  background: #3B7BBF !important;
}

body #top-menu .sub-menu li a,
body .nav li ul li a {
  color: #ffffff !important;
  background: transparent !important;
}

body #top-menu .sub-menu li a:hover,
body .nav li ul li a:hover {
  background: #2E75B6 !important;
}

/* ================================================
   FORMS
   ================================================ */
body.ss-themed input[type="text"],
body.ss-themed input[type="email"],
body.ss-themed input[type="tel"],
body.ss-themed input[type="url"],
body.ss-themed textarea,
body.ss-themed select {
  border: 2px solid var(--ss-border) !important;
  border-radius: 8px !important;
  padding: 12px 16px !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 1em !important;
  transition: var(--ss-transition) !important;
}

body.ss-themed input:focus,
body.ss-themed textarea:focus,
body.ss-themed select:focus {
  border-color: var(--ss-blue) !important;
  box-shadow: 0 0 0 3px rgba(46,117,182,0.1) !important;
}

body.ss-themed input[type="submit"],
body.ss-themed button[type="submit"] {
  background: var(--ss-blue) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  padding: 14px 32px !important;
  font-weight: 700 !important;
  font-size: 1.05em !important;
  cursor: pointer !important;
  transition: var(--ss-transition) !important;
}

body.ss-themed input[type="submit"]:hover,
body.ss-themed button[type="submit"]:hover {
  background: var(--ss-blue-dark) !important;
  transform: translateY(-2px) !important;
}

/* ================================================
   TABLES
   ================================================ */
body.ss-themed table {
  width: 100% !important;
  border-collapse: collapse !important;
  border-radius: var(--ss-radius) !important;
  overflow: hidden !important;
  box-shadow: var(--ss-shadow-sm) !important;
}

body.ss-themed th {
  background: var(--ss-navy) !important;
  color: #ffffff !important;
  padding: 14px 18px !important;
  font-weight: 700 !important;
  text-align: left !important;
}

body.ss-themed td {
  padding: 12px 18px !important;
  border-bottom: 1px solid var(--ss-border) !important;
}

body.ss-themed tr:nth-child(even) {
  background: var(--ss-bg-alt) !important;
}

body.ss-themed tr:hover {
  background: rgba(46,117,182,0.04) !important;
}

/* ================================================
   STORY/GUIDE PAGES — Override Georgia with Inter
   Classes: ok-story, ok-fthb, ok-hoods, ok-market,
            hr-story, hr-fthb, hr-market
   ================================================ */
body.ss-themed .ok-story,
body.ss-themed .ok-story h1,
body.ss-themed .ok-story h2,
body.ss-themed .ok-story h3,
body.ss-themed .ok-story p,
body.ss-themed .ok-story li,
body.ss-themed .ok-story strong,
body.ss-themed .ok-story .subtitle,
body.ss-themed .ok-fthb,
body.ss-themed .ok-fthb h1,
body.ss-themed .ok-fthb h2,
body.ss-themed .ok-fthb h3,
body.ss-themed .ok-fthb p,
body.ss-themed .ok-fthb li,
body.ss-themed .ok-fthb strong,
body.ss-themed .ok-hoods,
body.ss-themed .ok-hoods h1,
body.ss-themed .ok-hoods h2,
body.ss-themed .ok-hoods h3,
body.ss-themed .ok-hoods p,
body.ss-themed .ok-hoods li,
body.ss-themed .ok-hoods strong,
body.ss-themed .ok-market,
body.ss-themed .ok-market h1,
body.ss-themed .ok-market h2,
body.ss-themed .ok-market h3,
body.ss-themed .ok-market p,
body.ss-themed .ok-market li,
body.ss-themed .ok-market strong,
body.ss-themed .hr-story,
body.ss-themed .hr-story h1,
body.ss-themed .hr-story h2,
body.ss-themed .hr-story h3,
body.ss-themed .hr-story p,
body.ss-themed .hr-story li,
body.ss-themed .hr-story strong,
body.ss-themed .hr-fthb,
body.ss-themed .hr-fthb h1,
body.ss-themed .hr-fthb h2,
body.ss-themed .hr-fthb h3,
body.ss-themed .hr-fthb p,
body.ss-themed .hr-fthb li,
body.ss-themed .hr-fthb strong,
body.ss-themed .hr-market,
body.ss-themed .hr-market h1,
body.ss-themed .hr-market h2,
body.ss-themed .hr-market h3,
body.ss-themed .hr-market p,
body.ss-themed .hr-market li,
body.ss-themed .hr-market strong {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

body.ss-themed .ok-story h1,
body.ss-themed .ok-fthb h1,
body.ss-themed .ok-hoods h1,
body.ss-themed .ok-market h1,
body.ss-themed .hr-story h1,
body.ss-themed .hr-fthb h1,
body.ss-themed .hr-market h1 {
  color: var(--ss-navy) !important;
  font-size: 2.2em !important;
  font-weight: 800 !important;
}

body.ss-themed .ok-story h2,
body.ss-themed .ok-fthb h2,
body.ss-themed .ok-hoods h2,
body.ss-themed .ok-market h2,
body.ss-themed .hr-story h2,
body.ss-themed .hr-fthb h2,
body.ss-themed .hr-market h2 {
  color: var(--ss-navy) !important;
  font-size: 1.75em !important;
  font-weight: 700 !important;
}

body.ss-themed .ok-story p,
body.ss-themed .ok-fthb p,
body.ss-themed .ok-hoods p,
body.ss-themed .ok-market p,
body.ss-themed .hr-story p,
body.ss-themed .hr-fthb p,
body.ss-themed .hr-market p {
  font-size: 1.05em !important;
  line-height: 1.75 !important;
  color: var(--ss-text) !important;
}

/* Dark CTA boxes on all story/guide pages */
body.ss-themed .ok-story .cta-box h2,
body.ss-themed .ok-fthb .cta-box h2,
body.ss-themed .ok-hoods .cta-box h2,
body.ss-themed .ok-market .cta-box h2,
body.ss-themed .hr-story .cta-box h2,
body.ss-themed .hr-fthb .cta-box h2,
body.ss-themed .hr-market .cta-box h2 {
  color: var(--ss-gold) !important;
  border: none !important;
}

body.ss-themed .ok-story .cta-box p,
body.ss-themed .ok-fthb .cta-box p,
body.ss-themed .ok-hoods .cta-box p,
body.ss-themed .ok-market .cta-box p,
body.ss-themed .hr-story .cta-box p,
body.ss-themed .hr-fthb .cta-box p,
body.ss-themed .hr-market .cta-box p {
  color: #cbd5e1 !important;
}

body.ss-themed .ok-story .cta-box a,
body.ss-themed .ok-fthb .cta-box a,
body.ss-themed .ok-hoods .cta-box a,
body.ss-themed .ok-market .cta-box a,
body.ss-themed .hr-story .cta-box a,
body.ss-themed .hr-fthb .cta-box a,
body.ss-themed .hr-market .cta-box a {
  color: #82caff !important;
}

body.ss-themed .ok-story .cta-box strong,
body.ss-themed .ok-fthb .cta-box strong,
body.ss-themed .ok-hoods .cta-box strong,
body.ss-themed .ok-market .cta-box strong,
body.ss-themed .hr-story .cta-box strong,
body.ss-themed .hr-fthb .cta-box strong,
body.ss-themed .hr-market .cta-box strong {
  color: #ffffff !important;
}

body.ss-themed .ok-story .cta-btn,
body.ss-themed .ok-fthb .cta-btn,
body.ss-themed .ok-hoods .cta-btn,
body.ss-themed .ok-market .cta-btn,
body.ss-themed .hr-story .cta-btn,
body.ss-themed .hr-fthb .cta-btn,
body.ss-themed .hr-market .cta-btn {
  color: #ffffff !important;
}

/* ================================================
   BUTTONS — White text ONLY on dark/coloured backgrounds
   ================================================ */
body.ss-themed .et_pb_code_inner a[style*="background:#c8102e"] {
  color: #ffffff !important;
}
body.ss-themed .et_pb_code_inner a[style*="background:#2d2d2d"] {
  color: #ffffff !important;
}
body.ss-themed .et_pb_code_inner a[style*="background:#1a1a1a"] {
  color: #ffffff !important;
}
body.ss-themed .et_pb_code_inner a[style*="background:linear-gradient(135deg,#0f2b4a"] {
  color: #ffffff !important;
}
body.ss-themed .et_pb_code_inner a[style*="background:linear-gradient(135deg,#d97706"] {
  color: #0a0e1a !important;
}
/* Light background buttons keep dark text */
body.ss-themed .et_pb_code_inner a[style*="background:#ffffff"],
body.ss-themed .et_pb_code_inner a[style*="background:#fff"],
body.ss-themed .et_pb_code_inner a[style*="background:#e6f3ff"],
body.ss-themed .et_pb_code_inner a[style*="background:#f8f9fb"],
body.ss-themed .et_pb_code_inner a[style*="background:white"] {
  color: #333333 !important;
}

/* ================================================
   NEWSLETTER SIGNUP BAR — Preserve white on dark
   ================================================ */
body.ss-themed .nl-signup-text h3 {
  color: #ffffff !important;
}

body.ss-themed .nl-signup-text p {
  color: #bbbbbb !important;
}

body.ss-themed .nl-signup-btn {
  color: #ffffff !important;
}

/* ================================================
   MOBILE RESPONSIVE
   ================================================ */
@media (max-width: 980px) {
  body.ss-themed .et_pb_code_inner h1 {
    font-size: 1.7em !important;
  }
  body.ss-themed .et_pb_code_inner h2 {
    font-size: 1.45em !important;
  }
  body.ss-themed .et_pb_code_inner h3 {
    font-size: 1.2em !important;
  }
}

@media (max-width: 768px) {
  body.ss-themed .et_pb_code_inner p {
    font-size: 1em !important;
  }
  body.ss-themed .et_pb_code_inner a[style*="inline-block"][style*="padding"] {
    display: block !important;
    text-align: center !important;
    margin-bottom: 10px !important;
  }
}

/* ============================================
   END OPTION 3 DESIGN SYSTEM v4.2
   ============================================ */
/* ============================================
   DARK BANNER FIX — Calculator & Tool Pages
   ============================================ */
body.ss-themed .et_pb_code_inner .hdr h1 {
  color: white !important;
  -webkit-text-fill-color: white !important;
}
body.ss-themed .et_pb_code_inner .hdr h1 span {
  color: #f59e0b !important;
  -webkit-text-fill-color: #f59e0b !important;
}
body.ss-themed .et_pb_code_inner .hdr p {
  color: rgba(255,255,255,0.7) !important;
}
body.ss-themed .et_pb_code_inner .hdr .sub {
  color: rgba(255,255,255,0.5) !important;
}
body.ss-themed .et_pb_code_inner .hdr .brand-text {
  color: white !important;
}
body.ss-themed .et_pb_code_inner .hdr .brand-sub {
  color: rgba(255,255,255,0.65) !important;
}
body.ss-themed .et_pb_code_inner .hdr .brand-dot {
  background: #f59e0b !important;
}
body.ss-themed .et_pb_code_inner .hdr .metric .num {
  color: #f59e0b !important;
}
body.ss-themed .et_pb_code_inner .hdr .metric .lbl {
  color: rgba(255,255,255,0.35) !important;
}
/* FONT SIZE FIX — Story/Guide pages to match site standard */
body.ss-themed .ok-story,
body.ss-themed .ok-fthb,
body.ss-themed .ok-hoods,
body.ss-themed .ok-market,
body.ss-themed .hr-story,
body.ss-themed .hr-fthb,
body.ss-themed .hr-market {
  font-size: 15.5px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

/* Mobile — bigger logo, tighter banner */
@media (max-width: 980px) {
  .et_pb_section_0_tb_header.et_pb_section {
    padding: 5px 0 !important;
  }
  .et_pb_image_0_tb_header .et_pb_image_wrap img {
    width: 80% !important;
    max-width: 350px !important;
    margin: 0 auto !important;
    display: block !important;
  }
}
/* Partner/For Realtors page — exempt from dark text overrides */
body.page-id-4513 .et_pb_code_inner p,
body.page-id-4513 .et_pb_code_inner h1,
body.page-id-4513 .et_pb_code_inner h2,
body.page-id-4513 .et_pb_code_inner h3,
body.page-id-4513 .et_pb_code_inner div,
body.page-id-4513 .et_pb_code_inner span,
body.page-id-4513 .et_pb_code_inner a {
  color: inherit !important;
  -webkit-text-fill-color: inherit !important;
}
body.ss-themed .et_pb_code_inner .faq-cta-bottom h3 {
    color: #f59e0b !important;
}
body.ss-themed .et_pb_code_inner .faq-cta-bottom p {
    color: #ffffff !important;
}
body.ss-themed .et_pb_code_inner .faq-cta-bottom a {
    color: #0f2b4a !important;
}

/* MOBILE MENU SPACING */
@media (max-width: 980px) {
  .et_mobile_menu li a {
    padding: 6px 20px !important;
    font-size: 13px !important;
  }
}