/* ══════════════════════════════════════════════════════════════
   THEME V7 — "Signal" design system, applied site-wide
   Remaps every legacy color/font variable used across the templates
   to the new paper / ink / signal-orange / teal palette introduced
   on the homepage.
   ══════════════════════════════════════════════════════════════ */

:root {
  --paper: #EFF0EA;
  --paper-2: #E7E8E0;
  --ink: #0b0f2a;
  --ink-2: #151934;
  --signal: #FF4B2E;
  --signal-dim: #E23F24;
  --teal: #1B6E63;
  --steel: #6F7268;
  --line: #D9D8CF;
  --mist: #E5E5DD;

  --bg: var(--paper);
  --bg-2: var(--paper-2);
  --surface: #FFFFFF;
  --surface-2: var(--paper-2);
  --panel: #FFFFFF;
  --border: var(--line);
  --border-strong: #C7C6BC;
  --border-orange: rgba(255,75,46,.35);
  --surface-tint: rgba(255,75,46,.08);

  --orange: var(--signal);
  --orange-2: #FF7A5C;
  --orange-deep: var(--signal-dim);
  --orange-glow: rgba(255,75,46,.25);
  --orange-soft: rgba(255,75,46,.10);

  --cyan: var(--teal);
  --cyan-soft: rgba(27,110,99,.08);

  --text: var(--ink);
  --muted: #4B4E45;
  --muted-2: var(--steel);

  --font-d: "Space Grotesk", ui-sans-serif, sans-serif;
  --font-b: "Inter", ui-sans-serif, sans-serif;
  --font-m: "JetBrains Mono", ui-monospace, monospace;

  --navy: var(--ink);
  --navy-light: var(--ink-2);
  --blue: var(--teal);
  --white: #FFFFFF;
  --off-white: var(--paper);
  --gray: var(--steel);
  --dark: var(--ink);
}

body {
  background: var(--paper) !important;
  font-family: var(--font-b);
  color: var(--ink);
}
h1,h2,h3,h4 {
  font-family: var(--font-d) !important;
  letter-spacing: -0.02em;
}
h5 { font-family: var(--font-m) !important; }
p, li, span, a, label, input, textarea, select, button {
  font-family: var(--font-b);
}
.mono, .eyebrow, [class*="tag"], [class*="badge"], [class*="num"] {
  font-family: var(--font-m) !important;
}

/* ══════════════════════════════════════════════════════════════
   HEADER STYLES — Consistent across ALL pages
   ══════════════════════════════════════════════════════════════ */
header, #site-header, .site-header {
  background: rgba(239,240,234,.96) !important;
  backdrop-filter: blur(14px) !important;
  -webkit-backdrop-filter: blur(14px) !important;
  border-bottom: 1px solid var(--line) !important;
}
header.scrolled, #site-header.scrolled, .site-header.scrolled {
  background: rgba(239,240,234,.99) !important;
  box-shadow: 0 4px 22px rgba(11,15,42,.09) !important;
}
header a, #site-header a, .site-header a,
.dz-nav a, .nav-links a {
  color: #6F7268 !important;
}
header a:hover, #site-header a:hover, .site-header a:hover,
.dz-nav a:hover, .nav-links a:hover,
.dz-nav a.active, .nav-links a.active {
  color: #0b0f2a !important;
}
.dz-brand, .brand, .site-header .brand {
  color: #0b0f2a !important;
}
.dz-brand .x, .brand .x, .site-header .brand .x {
  color: #FF4B2E !important;
}
.dz-nav-cta, .site-header .btn-dark, .site-header .btn-primary {
  background: #0b0f2a !important;
  color: #FFFFFF !important;
}
.dz-nav-cta:hover, .site-header .btn-dark:hover, .site-header .btn-primary:hover {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
}

/* ══════════════════════════════════════════════════════════════
   INNER PAGES — Complete Light "Paper" Restyle
   ══════════════════════════════════════════════════════════════ */
body:not(.dz-home-v7) {
  background: var(--paper) !important;
  color: var(--ink) !important;
}

/* All main sections on inner pages */
body:not(.dz-home-v7) section:not(footer),
body:not(.dz-home-v7) .section-navy,
body:not(.dz-home-v7) .page-hero,
body:not(.dz-home-v7) .dezxey-page-hero,
body:not(.dz-home-v7) .page-content,
body:not(.dz-home-v7) main {
  background: var(--paper) !important;
  color: var(--ink) !important;
}

/* Headings on inner pages — exclude dark card containers */
body:not(.dz-home-v7) h1:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) h2:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) h3:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) h4:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) h5:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) h6:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *) {
  color: var(--ink) !important;
}

/* Orange text spans */
body:not(.dz-home-v7) .text-orange,
body:not(.dz-home-v7) span.text-orange,
body:not(.dz-home-v7) h2.text-orange,
body:not(.dz-home-v7) h3.text-orange {
  color: var(--signal) !important;
}

/* Paragraphs & list items — exclude dark card containers */
body:not(.dz-home-v7) p:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) li:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) span:not(footer *):not(.badge):not(.tag):not(.x):not(.btn):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *) {
  color: #4B4E45 !important;
}

/* Strong text — exclude dark card containers */
body:not(.dz-home-v7) strong:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *),
body:not(.dz-home-v7) b:not(footer *):not(.ind-flagship-card *):not(.res-cs-card *):not(.cs-card *):not(.pf-offer-card *):not(.dark-card *):not([class*="flagship"] *):not([class*="res-cs"] *) {
  color: var(--ink) !important;
}

/* ══════════════════════════════════════════════════════════════
   CARDS & BOXES — White surface with clean borders
   ══════════════════════════════════════════════════════════════ */
/* Top-level cards ONLY (no inner child elements) */
body:not(.dz-home-v7) .ind-card,
body:not(.dz-home-v7) .dz-post-card,
body:not(.dz-home-v7) .service-card,
body:not(.dz-home-v7) .metric-card,
body:not(.dz-home-v7) .testimonial-card,
body:not(.dz-home-v7) .portfolio-card,
body:not(.dz-home-v7) .why-card,
body:not(.dz-home-v7) .step,
body:not(.dz-home-v7) .faq-item,
body:not(.dz-home-v7) .svc-detail-box,
body:not(.dz-home-v7) .svc-fw-card,
  background: #FFFFFF !important;
  border: 1px solid var(--line) !important;
  box-shadow: 0 2px 10px rgba(11,15,42,.05) !important;
}

body:not(.dz-home-v7) .ind-card:hover,
body:not(.dz-home-v7) .dz-post-card:hover,
body:not(.dz-home-v7) .service-card:hover,
body:not(.dz-home-v7) .testimonial-card:hover,
body:not(.dz-home-v7) .svc-detail-box:hover {
  border-color: var(--line-onink, #C7C6BC) !important;
  box-shadow: 0 8px 25px rgba(11,15,42,.08) !important;
}

/* Text inside cards */
/* Clean text inside cards */
.ind-card h3, .dz-post-card h3, .svc-detail-box h2, .service-card h3 {
  color: var(--ink) !important;
}
.ind-card p, .ind-card li, .dz-post-card p, .svc-detail-box p, .svc-detail-box li {
  color: #4B4E45 !important;
}

/* ══════════════════════════════════════════════════════════════
   FILTER PILLS & BUTTONS — Fixed white-on-white text
   ══════════════════════════════════════════════════════════════ */
.ind-pill, .portfolio-filter, .svc-qn-pill, .filter-btn,
[class*="-pill"], [class*="-filter"], [class*="filter-"] {
  background: var(--paper-2) !important;
  color: var(--ink) !important;
  border: 1px solid var(--line) !important;
}
.ind-pill:hover, .portfolio-filter:hover, .svc-qn-pill:hover, .filter-btn:hover,
.ind-pill.active, .portfolio-filter.active, .svc-qn-pill.active, .filter-btn.active,
[class*="-pill"]:hover, [class*="-filter"]:hover, [class*="filter-"]:hover,
[class*="-pill"].active, [class*="-filter"].active, [class*="filter-"].active {
  background: var(--signal) !important;
  color: #FFFFFF !important;
  border-color: var(--signal) !important;
}

/* ══════════════════════════════════════════════════════════════
   TABLES & RESULTS MATRIX — Fixed white-on-light text
   ══════════════════════════════════════════════════════════════ */
table, .results-table, .matrix-table, .roi-matrix,
[class*="table"], [class*="matrix"] {
  color: var(--ink) !important;
  background: #FFFFFF !important;
  border-color: var(--line) !important;
}
table th, table td,
.results-table th, .results-table td,
.matrix-table th, .matrix-table td,
[class*="table"] th, [class*="table"] td,
[class*="matrix"] th, [class*="matrix"] td {
  color: var(--ink) !important;
  border-color: var(--line) !important;
}
table p, table span:not(.badge):not(.tag), table small,
.results-table p, .results-table span:not(.badge):not(.tag),
.matrix-table p, .matrix-table span:not(.badge):not(.tag) {
  color: #4B4E45 !important;
}

/* Remove ugly background boxes and red outlines from headings, taglines, badges & tags */
.badge, .tag, [class*="badge"], [class*="tag"],
.svc-num-tag, .svc-tagline, .svc-price-badge,
.section-tag, .hero-label, .vstrip-label, .eyebrow,
.home-svc-sub, .home-svc-num, .pr-prod-num {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}
.svc-num-tag, .home-svc-num, .pr-prod-num, .section-tag, .hero-label, .eyebrow {
  color: var(--signal) !important;
  font-family: var(--font-m, monospace) !important;
  letter-spacing: .1em !important;
}
.svc-tagline, .home-svc-sub {
  color: #6F7268 !important;
  font-size: .92rem !important;
}
.svc-price-badge {
  color: var(--signal) !important;
}
.svc-price-badge strong {
  color: var(--ink) !important;
}

/* ══════════════════════════════════════════════════════════════
   FORMS & INPUTS — Clean readable fields
   ══════════════════════════════════════════════════════════════ */
body:not(.dz-home-v7) input:not([type="submit"]):not([type="button"]),
body:not(.dz-home-v7) select,
body:not(.dz-home-v7) textarea,
body:not(.dz-home-v7) .form-control {
  background: #FFFFFF !important;
  border: 1px solid var(--line) !important;
  border-radius: 8px !important;
  color: var(--ink) !important;
  box-shadow: none !important;
  padding: .65rem .9rem !important;
}
body:not(.dz-home-v7) input:not([type="submit"]):not([type="button"]):focus,
body:not(.dz-home-v7) select:focus,
body:not(.dz-home-v7) textarea:focus,
body:not(.dz-home-v7) .form-control:focus {
  border-color: var(--signal) !important;
  outline: 2px solid rgba(255,75,46,.15) !important;
}
body:not(.dz-home-v7) label {
  color: var(--ink) !important;
  font-weight: 600 !important;
}
body:not(.dz-home-v7) input::placeholder,
body:not(.dz-home-v7) textarea::placeholder {
  color: var(--steel) !important;
  opacity: 0.7 !important;
}

/* ══════════════════════════════════════════════════════════════
   FOOTER OVERRIDES — Dark Navy with soft grey links
   ══════════════════════════════════════════════════════════════ */
footer.dz-footer, .site-footer {
  background: #07091a !important;
  color: #EFF0EA !important;
}
footer.dz-footer a, .site-footer a {
  color: #94A3B8 !important;
  text-decoration: none !important;
  transition: color .2s !important;
}
footer.dz-footer a:hover, .site-footer a:hover {
  color: #FF4B2E !important;
}
footer.dz-footer h1, footer.dz-footer h2, footer.dz-footer h3,
footer.dz-footer h4, footer.dz-footer h5, footer.dz-footer h6,
.site-footer h1, .site-footer h2, .site-footer h3,
.site-footer h4, .site-footer h5, .site-footer h6 {
  color: #FFFFFF !important;
}
footer.dz-footer p, footer.dz-footer li, footer.dz-footer span,
.site-footer p, .site-footer li, .site-footer span {
  color: #94A3B8 !important;
}

/* ══════════════════════════════════════════════════════════════
   PRESERVE JS ANIMATIONS & REVEALS
   ══════════════════════════════════════════════════════════════ */
.fade-up, [class*="fade-"], [data-v7-reveal] {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  visibility: visible !important;
}

/* ══════════════════════════════════════════════════════════════
   RESOURCES / BLOG HERO & POST CARD STYLES
   ══════════════════════════════════════════════════════════════ */
.dz-blog-hero {
  background: #0b0f2a !important;
  color: #FFFFFF !important;
  padding: 80px 0 60px;
}
.dz-blog-hero h1, .dz-blog-hero h1 *,
.dz-blog-hero h2, .dz-blog-hero h3 {
  color: #FFFFFF !important;
}
.dz-blog-hero .text-orange {
  color: #FF4B2E !important;
}
.dz-blog-hero p, .dz-blog-hero-sub {
  color: #CBD5E1 !important;
}
.dz-hero-stat b {
  color: #FFFFFF !important;
}
.dz-hero-stat span {
  color: #94A3B8 !important;
}
.dz-blog-search-input {
  background: #FFFFFF !important;
  border: 1px solid #D9D8CF !important;
  color: #0b0f2a !important;
}
.dz-cat-pill {
  background: rgba(255,255,255,.14) !important;
  color: #F1F5F9 !important;
  border: 1px solid rgba(255,255,255,.25) !important;
}
.dz-cat-pill:hover, .dz-cat-pill.active {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  border-color: #FF4B2E !important;
}

/* Post Cards */
.dz-featured-post, .dz-post-card {
  background: #FFFFFF !important;
  border: 1px solid #D9D8CF !important;
  border-radius: 16px !important;
  box-shadow: 0 4px 20px rgba(11,15,42,.06) !important;
}
.dz-featured-post:hover, .dz-post-card:hover {
  border-color: #FF4B2E !important;
  box-shadow: 0 16px 40px rgba(11,15,42,.12) !important;
}
.dz-card-title, .dz-card-title a,
.dz-featured-title, .dz-featured-title a {
  color: #0b0f2a !important;
  text-decoration: none !important;
}
.dz-card-title a:hover, .dz-featured-title a:hover {
  color: #FF4B2E !important;
}
.dz-card-excerpt, .dz-featured-excerpt {
  color: #4B4E45 !important;
}
.dz-card-meta, .dz-card-meta span {
  color: #6F7268 !important;
}
.dz-card-link {
  color: #FF4B2E !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.dz-card-no-thumb, .dz-featured-no-thumb {
  background: linear-gradient(135deg, #151934, #0b0f2a) !important;
  color: #FFFFFF !important;
}

/* ══════════════════════════════════════════════════════════════
   WHATSAPP BUTTON & CONTACT FIXES
   ══════════════════════════════════════════════════════════════ */
.wa-chat-btn, a.wa-chat-btn {
  background: #25D366 !important;
  color: #FFFFFF !important;
  border-color: #25D366 !important;
  font-weight: 700 !important;
}
.wa-chat-btn:hover, a.wa-chat-btn:hover {
  background: #20BA5A !important;
  color: #FFFFFF !important;
  border-color: #20BA5A !important;
}

/* Portfolio Visuals */
.pf-hcard-visual {
  position: relative !important;
  height: 210px !important;
  width: 100% !important;
  display: block !important;
  overflow: hidden !important;
  background: #0b0f2a !important;
}
.pf-social-visual {
  height: 270px !important;
}
.pf-card-img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
}



/* Portfolio Offer Cards */
.pf-offer-card {
  background: #15254d !important;
}
.pf-offer-card h1, .pf-offer-card h2, .pf-offer-card h3,
.pf-offer-card h4, .pf-offer-card h5, .pf-offer-card h6 {
  color: #FFFFFF !important;
}
.pf-offer-card p, .pf-offer-card span, .pf-offer-card li {
  color: #CBD5E1 !important;
}




/* ══════════════════════════════════════════════════════════════
   INNER CARD ELEMENTS RESET — NO BOXES OR BORDERS AROUND INNER TEXT
   ══════════════════════════════════════════════════════════════ */
.ind-card-head, .ind-card-icon, .ind-card-tag, .ind-card-list,
.dz-card-meta, .dz-card-body, .dz-card-cat-badge,
.svc-num-tag, .svc-tagline, .svc-price-badge, .svc-title-row, .svc-col, .svc-meta-col,
.ind-card > div, .dz-post-card > div, .svc-detail-box > div {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  border-radius: 0 !important;
}

.ind-card-tag {
  color: #6F7268 !important;
  font-family: var(--font-m, monospace) !important;
  font-size: 0.78rem !important;
  display: block !important;
  margin-top: 4px !important;
}

.dz-card-meta {
  color: #6F7268 !important;
  font-size: 0.8rem !important;
  display: flex !important;
  gap: 6px !important;
  align-items: center !important;
  margin-bottom: 8px !important;
  padding: 0 !important;
}

.dz-card-cat-badge {
  color: var(--signal) !important;
  font-family: var(--font-m, monospace) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  display: inline-block !important;
  margin-bottom: 6px !important;
  padding: 0 !important;
}


/* ══════════════════════════════════════════════════════════════
   DARK CARDS & SECTIONS — White & Orange Text High-Contrast Override
   ══════════════════════════════════════════════════════════════ */
.ind-flagship-card, .res-cs-card, .pf-offer-card, .cs-card, .case-study-card,
.dz-card-dark, .dark-card, .solution-box, .svc-featured,
[class*="flagship"], [class*="res-cs"] {
  background: #0b0f2a !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}

/* Headings inside dark cards */
.ind-flagship-card h1, .ind-flagship-card h2, .ind-flagship-card h3, .ind-flagship-card h4, .ind-flagship-card h5, .ind-flagship-card h6,
.res-cs-card h1, .res-cs-card h2, .res-cs-card h3, .res-cs-card h4, .res-cs-card h5, .res-cs-card h6,
.pf-offer-card h1, .pf-offer-card h2, .pf-offer-card h3, .pf-offer-card h4, .pf-offer-card h5, .pf-offer-card h6,
.cs-card h1, .cs-card h2, .cs-card h3, .cs-card h4, .cs-card h5, .cs-card h6,
.dark-card h1, .dark-card h2, .dark-card h3, .dark-card h4, .dark-card h5, .dark-card h6,
[class*="flagship"] h1, [class*="flagship"] h2, [class*="flagship"] h3, [class*="flagship"] h4, [class*="flagship"] h5, [class*="flagship"] h6,
[class*="res-cs"] h1, [class*="res-cs"] h2, [class*="res-cs"] h3, [class*="res-cs"] h4, [class*="res-cs"] h5, [class*="res-cs"] h6 {
  color: #FFFFFF !important;
}

/* Subtitles, category tags & numbers inside dark cards */
.ind-subtitle, .ind-flagship-badge, .res-cs-cat, .res-cs-cat *,
.ind-card-tag, .svc-num-tag.orange {
  color: #FF4B2E !important;
  font-weight: 700 !important;
}

/* Paragraphs, list items, & text inside dark cards */
.ind-flagship-card p, .ind-flagship-card li,
.res-cs-card p, .res-cs-card li,
.pf-offer-card p, .pf-offer-card li,
.cs-card p, .cs-card li,
.dark-card p, .dark-card li,
[class*="flagship"] p, [class*="flagship"] li,
[class*="res-cs"] p, [class*="res-cs"] li {
  color: #CBD5E1 !important;
}

/* Stats inside Case Study cards */
.res-cs-stats strong, .res-cs-stats b {
  color: #FFFFFF !important;
  font-size: 1.15rem !important;
}
.res-cs-stats span, .res-cs-stats p {
  color: #94A3B8 !important;
  font-size: 0.75rem !important;
}

/* Real Estate Growth Engine Flow steps */
.ind-flow-step {
  background: #151934 !important;
  border: 1px solid rgba(255,255,255,0.15) !important;
}
.ind-flow-step strong {
  color: #FFFFFF !important;
}
.ind-flow-step p {
  color: #94A3B8 !important;
}
.ind-flow-step .step-num {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
}
.ind-step-highlight {
  background: rgba(255,75,46,0.18) !important;
  border: 1px solid #FF4B2E !important;
}
.ind-step-highlight strong {
  color: #FFFFFF !important;
}
.ind-step-highlight p {
  color: #CBD5E1 !important;
}
.ind-flow-arrow {
  color: #FF4B2E !important;
}


/* ══════════════════════════════════════════════════════════════
   DARK CARDS & CONTAINERS — COMPLETE 100% WHITE & ORANGE CONTRAST
   ══════════════════════════════════════════════════════════════ */
.ind-flagship-card, .res-cs-card, .pf-offer-card, .cs-card, .case-study-card,
.dz-card-dark, .dark-card, .solution-box, .svc-featured,
[class*="flagship"], [class*="res-cs"] {
  background: #0b0f2a !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
}

/* Headings inside dark cards -> Pure White */
.ind-flagship-card h1, .ind-flagship-card h2, .ind-flagship-card h3, .ind-flagship-card h4, .ind-flagship-card h5, .ind-flagship-card h6,
.res-cs-card h1, .res-cs-card h2, .res-cs-card h3, .res-cs-card h4, .res-cs-card h5, .res-cs-card h6,
.pf-offer-card h1, .pf-offer-card h2, .pf-offer-card h3, .pf-offer-card h4, .pf-offer-card h5, .pf-offer-card h6,
.cs-card h1, .cs-card h2, .cs-card h3, .cs-card h4, .cs-card h5, .cs-card h6,
.dark-card h1, .dark-card h2, .dark-card h3, .dark-card h4, .dark-card h5, .dark-card h6,
[class*="flagship"] h1, [class*="flagship"] h2, [class*="flagship"] h3, [class*="flagship"] h4, [class*="flagship"] h5, [class*="flagship"] h6,
[class*="res-cs"] h1, [class*="res-cs"] h2, [class*="res-cs"] h3, [class*="res-cs"] h4, [class*="res-cs"] h5, [class*="res-cs"] h6 {
  color: #FFFFFF !important;
}

/* Taglines, badges, category labels & numbers inside dark cards -> Signal Orange */
.ind-subtitle, .ind-flagship-badge, .res-cs-cat, .res-cs-cat *,
.ind-card-tag, .svc-num-tag.orange, .ind-flow-arrow {
  color: #FF4B2E !important;
  font-weight: 700 !important;
}

/* Paragraphs, list items, & body text inside dark cards -> Light Slate White */
.ind-flagship-card p, .ind-flagship-card li,
.res-cs-card p, .res-cs-card li,
.pf-offer-card p, .pf-offer-card li,
.cs-card p, .cs-card li,
.dark-card p, .dark-card li,
[class*="flagship"] p, [class*="flagship"] li,
[class*="res-cs"] p, [class*="res-cs"] li {
  color: #CBD5E1 !important;
}

/* Stats inside Case Study / Results cards */
.res-cs-stats strong, .res-cs-stats b, .cs-stats strong, .cs-stats b {
  color: #FFFFFF !important;
  font-size: 1.15rem !important;
}
.res-cs-stats span, .res-cs-stats p, .cs-stats span, .cs-stats p {
  color: #94A3B8 !important;
  font-size: 0.75rem !important;
}

/* Real Estate Growth Engine Flow steps */
.ind-flow-step {
  background: #151934 !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
}
.ind-flow-step strong {
  color: #FFFFFF !important;
}
.ind-flow-step p {
  color: #94A3B8 !important;
}
.ind-flow-step .step-num {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
}
.ind-step-highlight {
  background: rgba(255,75,46,0.22) !important;
  border: 1px solid #FF4B2E !important;
}
.ind-step-highlight strong {
  color: #FFFFFF !important;
}
.ind-step-highlight p {
  color: #CBD5E1 !important;
}

/* Outline / Secondary button inside dark cards */
.ind-flagship-card .btn-outline, .dark-card .btn-outline {
  background: rgba(255,255,255,0.08) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255,255,255,0.3) !important;
}
.ind-flagship-card .btn-outline:hover, .dark-card .btn-outline:hover {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  border-color: #FF4B2E !important;
}


/* ══════════════════════════════════════════════════════════════
   BEAUTIFULLY CURVED BLUE BOXES — NO WHITE LINES, SMOOTH ROUNDED CORNERS
   ══════════════════════════════════════════════════════════════ */

/* 1. Main Outer Dark Blue Cards: 24px curved corners, deep navy gradient, no harsh border */
.ind-flagship-card, .res-cs-card, .pf-offer-card, .cs-card, .case-study-card,
.dz-card-dark, .dark-card, .solution-box, .svc-featured,
[class*="flagship"], [class*="res-cs"] {
  background: linear-gradient(145deg, #0d1235 0%, #06091f 100%) !important;
  border-radius: 24px !important;
  border: 1px solid rgba(255,255,255,0.06) !important;
  box-shadow: 0 20px 60px rgba(4,7,22,0.45) !important;
  overflow: hidden !important;
}

/* 2. REMOVE ALL INNER WHITE LINES & DIVIDERS INSIDE BLUE BOXES */
.ind-flagship-card *, .res-cs-card *, .pf-offer-card *, .cs-card *, .case-study-card *,
.ind-flagship-grid, .ind-flagship-content, .ind-flagship-visual,
.res-cs-head, .res-cs-body, .res-cs-stats, .res-cs-grid,
.ind-flow-box, .ind-card-head, .ind-card-list,
[class*="flagship"] *, [class*="res-cs"] * {
  border-top: none !important;
  border-bottom: none !important;
  border-left: none !important;
  border-right: none !important;
  box-shadow: none !important;
}

/* Remove default hr or divider lines inside cards */
.res-cs-stats {
  border-top: none !important;
  padding-top: 12px !important;
  margin-top: auto !important;
}

.ind-flagship-visual {
  background: rgba(255,255,255,0.03) !important;
  border-radius: 18px !important;
  padding: 24px !important;
}

/* 3. Real Estate Growth Flow Steps — Smooth Curved Rounded Pills (No Harsh Outline) */
.ind-flow-step {
  background: rgba(255,255,255,0.04) !important;
  border-radius: 14px !important;
  padding: 12px 18px !important;
  border: none !important;
  transition: all 0.3s ease !important;
}

.ind-step-highlight {
  background: rgba(255,75,46,0.18) !important;
  border: 1.5px solid rgba(255,75,46,0.6) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px rgba(255,75,46,0.15) !important;
}

/* 4. Text Contrast inside Curved Blue Boxes */
.ind-flagship-card h2, .res-cs-card h3, .cs-card h3, .pf-offer-card h3,
.ind-feat-item h5, .ind-flow-step strong, .res-cs-stats strong {
  color: #FFFFFF !important;
}

.ind-subtitle, .ind-flagship-badge, .res-cs-cat, .ind-flow-arrow,
.ind-flow-step .step-num {
  color: #FF4B2E !important;
}

.ind-flagship-card p, .res-cs-card p, .ind-feat-item p,
.ind-flow-step p, .res-cs-stats span {
  color: #CBD5E1 !important;
}

/* Force split character spans (.char / .word) inside cta-box and ua-card to white */
.cta-box h2 .char, .cta-box h2 .word, .cta-box h2 *,
.ua-card h3 .char, .ua-card h3 .word, .ua-card h3 *,
.step-cell h3 .char, .step-cell h3 .word, .step-cell h3 * {
  color: #FFFFFF !important;
  opacity: 1 !important;
}
.cta-box .sub, .cta-box .sub *, .ua-card p, .ua-card p *, .step-cell p, .step-cell p * {
  color: #CBD5E1 !important;
  opacity: 1 !important;
}


/* ═══════════════════════════════════════════════════════
   SINGLE BLOG POST CTA BOX — PURE WHITE TEXT FIX
   ═══════════════════════════════════════════════════════ */
.dezxey-article div[style*="background"],
body.single div[style*="background"],
.dezxey-article div[style*="0b0f2a"],
body.single div[style*="0b0f2a"] {
  background: #0b0f2a !important;
  border-radius: 20px !important;
  border: 1px solid rgba(255,255,255,0.12) !important;
  padding: 44px 32px !important;
}

.dezxey-article div[style*="background"] h1,
.dezxey-article div[style*="background"] h2,
.dezxey-article div[style*="background"] h3,
.dezxey-article div[style*="background"] h4,
.dezxey-article div[style*="background"] h5,
.dezxey-article div[style*="background"] h6,
body.single div[style*="background"] h3,
body.single div[style*="background"] h2,
body:not(.dz-home-v7) .dezxey-article div[style*="background"] h3 {
  color: #FFFFFF !important;
}

.dezxey-article div[style*="background"] p,
body.single div[style*="background"] p,
body:not(.dz-home-v7) .dezxey-article div[style*="background"] p {
  color: #CBD5E1 !important;
}

.dezxey-article div[style*="background"] a,
body.single div[style*="background"] a {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  border-color: #FF4B2E !important;
}


/* ═══════════════════════════════════════════════════════
   SINGLE BLOG POST BLUE BOX — ALL TEXT 100% WHITE
   ═══════════════════════════════════════════════════════ */
.dezxey-article div[style*="background"],
.dezxey-article div[style*="background"] *,
body.single .dezxey-article div[style*="background"] *,
body.single div[style*="background"] *,
body.single [style*="background"] p,
body.single [style*="background"] h1,
body.single [style*="background"] h2,
body.single [style*="background"] h3,
body.single [style*="background"] h4,
body.single [style*="background"] span,
body:not(.dz-home-v7) .dezxey-article div p,
body:not(.dz-home-v7) .dezxey-article div h3,
body:not(.dz-home-v7) .dezxey-article div h4 {
  color: #FFFFFF !important;
}

body.single [style*="background"] p,
.dezxey-article [style*="background"] p,
body:not(.dz-home-v7) .dezxey-article div p {
  color: #E2E8F0 !important;
}

body.single [style*="background"] a,
.dezxey-article [style*="background"] a {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  border-color: #FF4B2E !important;
}


/* ═══════════════════════════════════════════════════════
   BLOG DARK BOXES — ALL TEXT 100% PURE BRIGHT WHITE
   ═══════════════════════════════════════════════════════ */
.dezxey-article div[style*="background"],
.dezxey-article div[style*="background"] *,
body.single .dezxey-article div *,
body.single .dezxey-article div p,
body.single .dezxey-article div h1,
body.single .dezxey-article div h2,
body.single .dezxey-article div h3,
body.single .dezxey-article div h4,
body.single .dezxey-article div h5,
body.single .dezxey-article div span,
body.single .dezxey-article div strong,
body:not(.dz-home-v7) .dezxey-article div p,
body:not(.dz-home-v7) .dezxey-article div h3 {
  color: #FFFFFF !important;
}

body.single .dezxey-article div a,
.dezxey-article div[style*="background"] a {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  border-color: #FF4B2E !important;
}


/* ═══════════════════════════════════════════════════════
   BLOG POST GRADIENT CTA BOXES — ALL TEXT 100% PURE WHITE
   ═══════════════════════════════════════════════════════ */
.dezxey-article div[style*="linear-gradient"],
.dezxey-article div[style*="linear-gradient"] *,
.dezxey-article div[style*="background"],
.dezxey-article div[style*="background"] *,
body.single .dezxey-article div[style*="linear-gradient"] h3,
body.single .dezxey-article div[style*="linear-gradient"] p,
body.single .dezxey-article div[style*="background"] h3,
body.single .dezxey-article div[style*="background"] p,
body.single div[style*="linear-gradient"] h3,
body.single div[style*="linear-gradient"] p,
body:not(.dz-home-v7) .dezxey-article div[style*="linear-gradient"] h3,
body:not(.dz-home-v7) .dezxey-article div[style*="linear-gradient"] p {
  color: #FFFFFF !important;
}

body.single div[style*="linear-gradient"] p,
.dezxey-article div[style*="linear-gradient"] p {
  color: #E2E8F0 !important;
}

body.single div[style*="linear-gradient"] a,
.dezxey-article div[style*="linear-gradient"] a {
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  border-color: #FF4B2E !important;
}

/* Universal Blog Post CTA Box Text Override */
.dezxey-article p, .dezxey-article h3, .dezxey-article div *,
body.single .dezxey-article p, body.single .dezxey-article h3,
body.single div[style*="gradient"] p, body.single div[style*="gradient"] h3 {
  color: #FFFFFF !important;
}

/* ═══════════════════════════════════════════════════════
   ULTRA-RESPONSIVE PREMIUM MOBILE MENU (100% VISIBLE)
   ═══════════════════════════════════════════════════════ */
@media (max-width: 900px) {
  .dz-nav { display: none !important; }
  .dz-nav-cta.desktop { display: none !important; }
  .dz-hamburger { display: flex !important; z-index: 10001 !important; position: relative !important; }
}

#mobile-menu, .dz-mobile-menu {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  height: 100vh !important;
  background: #0b0f2a !important;
  z-index: 10000 !important;
  padding: 90px 24px 40px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 18px !important;
  transform: translateY(-100%) !important;
  transition: transform 0.35s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.3s !important;
  opacity: 0 !important;
  pointer-events: none !important;
  box-sizing: border-box !important;
}

#mobile-menu.open, .dz-mobile-menu.open {
  transform: translateY(0) !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

#mobile-menu a, .dz-mobile-menu a {
  font-family: 'Space Grotesk', sans-serif !important;
  font-size: 1.45rem !important;
  font-weight: 700 !important;
  color: #FFFFFF !important;
  text-decoration: none !important;
  text-transform: uppercase !important;
  letter-spacing: .05em !important;
  transition: color 0.2s !important;
  padding: 6px 12px !important;
  text-align: center !important;
  display: block !important;
}

#mobile-menu a:hover, .dz-mobile-menu a:hover {
  color: #FF4B2E !important;
}

#mobile-menu .dz-nav-cta, .dz-mobile-menu .dz-nav-cta {
  margin-top: 14px !important;
  width: 100% !important;
  max-width: 260px !important;
  text-align: center !important;
  background: #FF4B2E !important;
  color: #FFFFFF !important;
  padding: 14px 28px !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  border-radius: 999px !important;
  box-shadow: 0 8px 24px rgba(255,75,46,0.3) !important;
}

.dz-hamburger.open span {
  background: #FFFFFF !important;
}