/*
Theme Name: JCS Realty
Theme URI: https://www.jcsrealty.com
Author: Flex360
Description: Custom WordPress theme for JCS Realty — modern 2026 build, conservative real-estate brand. Built with Tailwind Play CDN + Bunny Fonts + ACF.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 8.0
License: Proprietary
Text Domain: jcs
*/

:root {
  --color-primary: #555;
  --color-primary-hover: #222;
  --color-accent: #ea1d25;
  --color-accent-hover: #c4161d;
  --color-neutral-50: #fafafa;
  --color-neutral-100: #f4f4f4;
  --color-neutral-200: #e4e4e4;
  --color-neutral-300: #d4d4d4;
  --color-neutral-700: #404040;
  --color-text: #1f1f1f;
  --color-text-muted: #6b6b6b;
  --color-bg: #ffffff;
  --color-bg-soft: #f8f7f4;
  --color-bg-dark: #1a1a1a;
  --font-sans: 'Montserrat', system-ui, -apple-system, sans-serif;
  --font-serif: 'EB Garamond', Georgia, serif;
  --font-display: 'EB Garamond', Georgia, serif;
  --header-height: 4rem;
  --sidebar-width: 18rem;
}

html { scroll-behavior: smooth; }
body {
  font-family: var(--font-sans);
  color: var(--color-text);
  background: var(--color-bg);
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased;
}

/* Legacy normalization for imported HTML body content from Laravel */
.legacy-body h1, .legacy-body h2, .legacy-body h3, .legacy-body h4 {
  font-family: var(--font-display);
  color: var(--color-text);
  margin-top: 1.5em;
  margin-bottom: 0.5em;
  line-height: 1.2;
}
.legacy-body h1 { font-size: 2.25rem; }
.legacy-body h2 { font-size: 1.875rem; font-weight: 500; }
.legacy-body h3 { font-size: 1.5rem; }
.legacy-body h4 { font-size: 1.25rem; }
.legacy-body p { margin: 0 0 1.25rem; }
.legacy-body a { color: var(--color-accent); text-decoration: underline; text-underline-offset: 2px; }
.legacy-body a:hover { color: var(--color-accent-hover); }
.legacy-body ul, .legacy-body ol { margin: 0 0 1.25rem 1.25rem; }
.legacy-body li { margin-bottom: 0.5rem; }
.legacy-body img { max-width: 100%; height: auto; border-radius: 0.5rem; }
.legacy-body table { width: 100%; border-collapse: collapse; margin: 1.5rem 0; }
.legacy-body th, .legacy-body td { padding: 0.75rem; border-bottom: 1px solid var(--color-neutral-200); text-align: left; }
.legacy-body blockquote { border-left: 4px solid var(--color-accent); padding-left: 1.25rem; font-style: italic; color: var(--color-text-muted); margin: 1.5rem 0; }
.legacy-body iframe { max-width: 100%; }

/* IDX widget wrappers */
.idx-wrap { min-height: 600px; }
.idx-wrap script { display: none; }

/* Accent classes for utility */
.text-accent { color: var(--color-accent); }
.bg-soft { background-color: var(--color-bg-soft); }

/* Desktop top-nav utility bar links (dark background) */
#desktop-header .util-menu { list-style: none; margin: 0; padding: 0; }
#desktop-header .util-menu a {
  font-size: 0.72rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: var(--color-neutral-300, #d4d4d4);
  transition: color 0.2s ease;
}
#desktop-header .util-menu a:hover { color: var(--color-accent); }
