
:root {
  --wp--custom--ast-content-width-size: 100% !important;
  --wp--custom--ast-wide-width-size: 100% !important;
  --ast-normal-container-width: 100% !important;
  --ast-narrow-container-width: 100% !important;
}
.ast-container, .entry-content, #primary {
  --ast-content-width: 100% !important;
}
/* === MK DHAWAN SITE — FULL WIDTH LAYOUT FIX === */

/* Dark background */
html, body { background-color:#0A0908 !important; }

/* Override ALL Astra layout containers — plain-container AND full-width-container */
.plain-container, .plain-container #page, .plain-container .site,
.full-width-container, .full-width-container #page,
.ast-container, #content > .ast-container, .site-content > .ast-container,
#page, .site, #content, .site-content, #primary.content-area,
.ast-full-width-layout, #main.site-main, #wrapper {
  max-width: 100% !important;
  width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
  float: none !important;
}

/* Hide Astra default header */
#masthead.site-header, .main-header-bar-wrap, .ast-desktop-header,
.ast-builder-grid-row-container, .ast-above-header-bar, .ast-below-header-bar,
.ast-mobile-header-wrap, .site-header { display:none !important; }

/* Hide Astra page chrome elements */
.ast-page-title-wrap, .page-header, .entry-header .page-title,
.page .entry-header, .ast-entry-meta-wrap, .entry-footer,
.ast-breadcrumbs-wrap { display:none !important; }

/* Hide legacy / Novamira panel */
#mkd-nav, #cur-dot, #cur-ring { display:none !important; }
#novamira-frontend-panel, .novamira-frontend-panel, [id*="novamira-btn"] { display:none !important; }

/* Full-width post/page content */
body.page .entry-content, body.home .entry-content,
body.single .entry-content, .ast-article-single {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
  float: none !important;
}

/* Xpro header + footer — force full stretch */
.xpro-theme-builder-header, .xpro-theme-builder-header-wrap,
.xpro-theme-builder-header-nav,
.xpro-theme-builder-footer, .xpro-theme-builder-footer-wrap {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  box-sizing: border-box !important;
}
.xpro-theme-builder-header .elementor-section,
.xpro-theme-builder-header-wrap .elementor-section,
.xpro-theme-builder-footer .elementor-section,
.xpro-theme-builder-footer-wrap .elementor-section {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}

/* Nav link contrast — crisp white */
.xpro-elementor-nav-link, .xpro-elementor-nav-link.menu-link,
.xpro-elementor-horizontal-navbar-nav a {
  color: #FFFFFF !important;
  opacity: 1 !important;
}
.xpro-elementor-nav-link:hover, .xpro-elementor-nav-link.menu-link:hover,
.xpro-elementor-horizontal-navbar-nav a:hover,
.xpro-elementor-horizontal-navbar-nav .active > a,
.xpro-elementor-horizontal-navbar-nav .current-menu-item > a {
  color: #C9A84C !important;
}

/* Single post dark content area */
body.single #content, .single #primary { background: #0A0908 !important; }

/* === SINGLE POST CONTENT STYLING === */
.mkd-post-content, .elementor-widget-xpro-post-content .elementor-widget-container {
  max-width: 760px; margin: 0 auto; color: #E8E3D9;
}
.xpro-elementor-post-content p, .elementor-widget-xpro-post-content p {
  color: #E8E3D9; font-size:18px; line-height:1.85; font-weight:300; margin-bottom:24px;
}
.xpro-elementor-post-content h2, .elementor-widget-xpro-post-content h2 {
  font-family:"Playfair Display",serif; font-size:clamp(24px,3vw,34px); font-weight:700;
  color:#F5F0E8; margin:48px 0 20px; line-height:1.2; padding-bottom:12px; border-bottom:1px solid #2A2825;
}
.xpro-elementor-post-content h3, .elementor-widget-xpro-post-content h3 {
  font-family:"Playfair Display",serif; font-size:clamp(18px,2.2vw,24px);
  font-weight:700; color:#F5F0E8; margin:36px 0 16px; line-height:1.3;
}
.xpro-elementor-post-content h4, .elementor-widget-xpro-post-content h4 {
  font-size:14px; font-weight:700; letter-spacing:0.14em; text-transform:uppercase; color:#C9A84C; margin:28px 0 12px;
}
.xpro-elementor-post-content a, .elementor-widget-xpro-post-content a {
  color:#C9A84C; text-decoration:none; border-bottom:1px solid rgba(201,168,76,0.3);
}
.xpro-elementor-post-content a:hover, .elementor-widget-xpro-post-content a:hover { border-color:#C9A84C; }
.xpro-elementor-post-content blockquote, .elementor-widget-xpro-post-content blockquote {
  border-left:3px solid #C9A84C; padding:20px 28px; margin:32px 0;
  background:rgba(201,168,76,0.04); font-family:"Playfair Display",serif;
  font-size:20px; font-style:italic; color:#F5F0E8; line-height:1.6;
}
.xpro-elementor-post-content ul, .xpro-elementor-post-content ol,
.elementor-widget-xpro-post-content ul, .elementor-widget-xpro-post-content ol {
  color:#E8E3D9; padding-left:24px; margin-bottom:24px;
}
.xpro-elementor-post-content li, .elementor-widget-xpro-post-content li { margin-bottom:8px; line-height:1.7; }
.xpro-elementor-post-content strong, .elementor-widget-xpro-post-content strong { color:#F5F0E8; font-weight:600; }
.xpro-elementor-post-content em, .elementor-widget-xpro-post-content em { color:#C9A84C; font-style:italic; }

/* Mobile adjustments */
@media(max-width:768px) {
  .xpro-theme-builder-header .elementor-container { padding:0 20px !important; }
  .mkd-post-content, .elementor-widget-xpro-post-content .elementor-widget-container { max-width:100%; }
}

/* Post content tables */
.xpro-elementor-post-content table, .elementor-widget-xpro-post-content table {
  width:100%; border-collapse:collapse; margin:28px 0; border:1px solid #3A3733;
}
.xpro-elementor-post-content th, .elementor-widget-xpro-post-content th {
  background:#1E1C19; color:#F5F0E8; padding:12px 16px; border:1px solid #3A3733; text-align:left; font-weight:600;
}
.xpro-elementor-post-content td, .elementor-widget-xpro-post-content td {
  color:#E0DBD1; padding:12px 16px; border:1px solid #3A3733;
}

/* === INSIGHTS / BLOG ARCHIVE POST GRID === */
.xpro-post-grid-item {
  background:#161514 !important; border:1px solid #2A2825 !important;
  transition:border-color .3s ease; overflow:hidden;
}
.xpro-post-grid-item:hover { border-color:#C9A84C !important; }
.xpro-post-grid-content { padding:26px 28px 30px !important; background:#161514 !important; }
.xpro-post-grid-title, .xpro-post-grid-title a {
  font-family:"Playfair Display",serif !important; color:#F5F0E8 !important;
  font-size:21px !important; font-weight:700 !important; line-height:1.35 !important;
  margin:10px 0 12px !important; text-decoration:none !important;
}
.xpro-post-grid-title a:hover { color:#C9A84C !important; }
.xpro-post-grid-excerpt, .xpro-post-grid-excerpt p {
  color:#B5AFA6 !important; font-size:15px !important; line-height:1.7 !important;
  font-weight:300 !important; margin-bottom:16px !important;
}
.xpro-post-grid-meta-list, .xpro-post-grid-meta-list li, .xpro-post-grid-meta-date {
  color:#C9A84C !important; font-size:11px !important; font-weight:600 !important;
  letter-spacing:.12em !important; text-transform:uppercase !important;
}
.xpro-post-grid-meta-list i { color:#C9A84C !important; }
.xpro-post-grid-btn {
  color:#C9A84C !important; font-size:11px !important; font-weight:700 !important;
  letter-spacing:.14em !important; text-transform:uppercase !important;
  text-decoration:none !important; border-bottom:1px solid rgba(201,168,76,.35);
  padding-bottom:2px; display:inline-block;
}
.xpro-post-grid-btn:hover { color:#E4C46E !important; border-color:#E4C46E !important; }
/* Imageless grid cards: anchor content to top instead of bottom */
.cbp-item.xpro-post-grid-item:not(:has(.xpro-post-grid-image)) .xpro-post-grid-content {
  top:0; bottom:auto; height:100%; justify-content:flex-start;
}

/* === WPFORMS DARK THEME === */
.wpforms-container .wpforms-field-label { color:#E8E3D9 !important; font-weight:500 !important; font-size:14px !important; letter-spacing:.02em; }
.wpforms-container .wpforms-field-sublabel, .wpforms-container .wpforms-field-description { color:#8B857C !important; font-size:12px !important; }
.wpforms-container .wpforms-required-label { color:#C9A84C !important; }
.wpforms-container input[type=text], .wpforms-container input[type=email], .wpforms-container input[type=tel], .wpforms-container textarea {
  background:#1A1917 !important; border:1px solid #3A3733 !important; color:#F5F0E8 !important; border-radius:0 !important;
}
.wpforms-container input:focus, .wpforms-container textarea:focus { border-color:#C9A84C !important; box-shadow:none !important; outline:none !important; }
.wpforms-container input[type=submit], .wpforms-container button[type=submit], .wpforms-container .wpforms-submit {
  background:#C9A84C !important; border:none !important; color:#0A0908 !important;
  font-weight:700 !important; letter-spacing:.12em !important; text-transform:uppercase !important;
  padding:14px 38px !important; font-size:12px !important; border-radius:0 !important; transition:background .25s;
}
.wpforms-container input[type=submit]:hover, .wpforms-container .wpforms-submit:hover { background:#E4C46E !important; }
/* === ASTRA FALLBACK PAGES (404 / SEARCH) DARK THEME === */
.error404 .page-title, .search .page-title, .ast-archive-title {
  color:#F5F0E8 !important; font-family:"Playfair Display",serif !important;
}
.error404 .page-content, .error404 .page-content p, .search-no-results .page-content { color:#B5AFA6 !important; }
.search-results .entry-title, .search-results .entry-title a { color:#F5F0E8 !important; font-family:"Playfair Display",serif !important; }
.search-results .entry-title a:hover { color:#C9A84C !important; }
.search-results .entry-content, .search-results .entry-content p, .search-results .read-more a, .search-results .ast-excerpt-container { color:#B5AFA6 !important; }
.search-results .post-content { padding:24px 0; border-bottom:1px solid #2A2825; }
.search .search-form .search-field, .error404 .search-form .search-field {
  background:#1A1917 !important; border:1px solid #3A3733 !important; color:#F5F0E8 !important;
}
.error404 #content, .search #content { padding:60px 24px !important; }