/* Default base — always loaded for header/footer/typography when any theme is isolated */
:root {
  --default-header-bg: #ffffff;
  --default-footer-bg: #0f172a;
  --default-text: #334155;
  --default-heading: #0f172a;
  --default-link: #4f46e5;
}
body { font-family: 'Open Sans', system-ui, -apple-system, sans-serif; color: var(--default-text); line-height: 1.6; }
h1,h2,h3,h4,h5,h6 { color: var(--default-heading); font-weight: 700; line-height: 1.2; margin: 0 0 0.5em; }
a { color: var(--default-link); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Header */
.header-area, .header-style-01, .navbar-area, .topbar-area {
  background: var(--default-header-bg);
  border-bottom: 1px solid #e2e8f0;
}
.header-area .logo img, .navbar-area .logo img { max-height: 40px; }
.navbar-area .nav-link, .header-area .nav-link { color: var(--default-heading); font-weight: 500; }
.navbar-area .nav-link:hover, .header-area .nav-link:hover { color: var(--default-link); }

/* Footer */
.footer-area, .footer-widget-area, .copyright-area {
  background: var(--default-footer-bg);
  color: #cbd5e1;
}
.footer-area a, .footer-widget-area a { color: #e2e8f0; }
.footer-area a:hover { color: #fff; }
.copyright-area { border-top: 1px solid #1e293b; padding: 14px 0; text-align: center; font-size: 13px; }

/* Typography */
.typography p { margin: 0 0 1em; }
.typography ul, .typography ol { margin: 0 0 1em 1.25em; }
.breadcrumb-area { padding: 16px 0; font-size: 13px; color: #64748b; }
.breadcrumb-area a { color: var(--default-link); }

/* Fallback for page-builder generic wrappers when theme css missing */
.dynamic-page-content-area, .dynamic-page-content-wrap { max-width: 1200px; margin: 0 auto; padding: 0 16px; }
