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

/* ── Logo & Site Title ── */
.ast-site-title-wrap .site-title,
.ast-site-title-wrap .site-title a,
.ast-site-title-wrap .site-description { display: none !important; }
.custom-logo-link { padding: 8px 0 !important; }
.custom-logo, .site-logo-img img { max-height: 44px !important; width: auto !important; }

/* ── Header ── */
.site-header,
.ast-primary-header-bar,
.main-header-bar { background-color: #0a0a0a !important; border-bottom: 1px solid #1c1c1c !important; }

/* ── Navigation ── */
.main-navigation a,
.ast-header-break-point .main-navigation a,
#ast-mobile-header .main-navigation a { color: #ffffff !important; font-family: 'Inter', sans-serif !important; font-size: 14px !important; font-weight: 500 !important; letter-spacing: 0.04em !important; text-transform: uppercase !important; }
.main-navigation a:hover,
.main-navigation .current-menu-item > a { color: #C9A84C !important; }

/* ── Body & Content ── */
body { background-color: #f9f9f9 !important; font-family: 'Inter', sans-serif !important; color: #1a1a1a !important; }
.ast-container, .entry-content, .content-area { background: transparent !important; }

/* ── Typography ── */
h1, h2, h3, h4, h5, h6,
.entry-title, .page-title { font-family: 'Montserrat', sans-serif !important; font-weight: 700 !important; color: #0a0a0a !important; }
.entry-title a { color: #0a0a0a !important; }
.entry-title a:hover { color: #C9A84C !important; }

/* ── Footer ── */
#colophon,
.site-footer,
.ast-footer-below-section,
.ast-footer-below { background-color: #0a0a0a !important; }
.ast-footer-copyright,
.ast-footer-copyright p,
.ast-footer-copyright span { color: #555555 !important; font-size: 13px !important; font-family: 'Inter', sans-serif !important; }
.ast-footer-copyright a[href*=wpastra.com],
.ast-footer-copyright a[href*=wordpress.org],
.ast-footer-copyright .sep,
span.ast-footer-powered-by { display: none !important; }

/* ── Blog Cards ── */
.ast-article-post, .post-grid-entry {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 2px 16px rgba(0,0,0,0.07);
  transition: transform 0.25s, box-shadow 0.25s;
  background: #ffffff;
}
.ast-article-post:hover { transform: translateY(-4px); box-shadow: 0 8px 28px rgba(0,0,0,0.12); }

/* ── Buttons ── */
.ast-button, .ast-btn,
.wp-block-button__link,
input[type=submit],
button[type=submit] {
  background: #C9A84C !important;
  color: #0a0a0a !important;
  font-weight: 700 !important;
  border-radius: 4px !important;
  border: none !important;
  letter-spacing: 0.03em !important;
}

/* ── Category pills ── */
.ast-blog-header-meta .category-style-1 a,
.cat-links a { background: #C9A84C !important; color: #0a0a0a !important; border-radius: 3px; padding: 2px 8px; font-size: 12px; font-weight: 700; text-transform: uppercase; }

/* ── About page avatar ── */
.author-bio-page img { box-shadow: 0 4px 24px rgba(201,168,76,0.25) !important; }

/* ── Mobile Menu Fix ── */
/* Hamburger icon */
.ast-header-break-point .ast-mobile-header-wrap button.menu-toggle,
button.menu-toggle { color: #ffffff !important; }
button.menu-toggle .menu-toggle-icon span,
button.menu-toggle .screen-reader-text { color: #ffffff !important; }
.ast-header-break-point .ast-mobile-menu-buttons .menu-toggle { color: #ffffff !important; }

/* Mobile dropdown panel */
.ast-header-break-point .main-header-bar-navigation,
.ast-header-break-point .main-navigation,
.ast-header-break-point #ast-mobile-menu { background-color: #0a0a0a !important; border-top: 1px solid #2a2a2a !important; }

/* Mobile menu links */
.ast-header-break-point .main-navigation a,
.ast-header-break-point #ast-mobile-menu a,
.ast-header-break-point .main-navigation li a { color: #ffffff !important; padding: 12px 20px !important; border-bottom: 1px solid #1a1a1a !important; display: block !important; }

.ast-header-break-point .main-navigation a:hover,
.ast-header-break-point #ast-mobile-menu a:hover { color: #C9A84C !important; background: #111111 !important; }

/* Hamburger bar color */
.ast-mobile-menu-buttons .ast-button-wrap .menu-toggle .ast-menu-toggle-icon,
.ast-mobile-menu-buttons .ast-button-wrap .menu-toggle span.screen-reader-text ~ span { background: #ffffff !important; }

/* Mobile toggle button */
.ast-mobile-header-wrap .ast-button-wrap .menu-toggle { background: transparent !important; border: none !important; }

/* ═══════════════════════════════════════════════════
   MOBILE MENU — full fix
   Body gets .ast-header-break-point on mobile
   ═══════════════════════════════════════════════════ */

/* Wrap header to allow nav to drop below on mobile */
.ast-header-break-point .site-primary-header-wrap.ast-container,
.ast-header-break-point .ast-primary-header-bar { flex-wrap: wrap !important; }

/* The nav wrapper — dark background full width */
.ast-header-break-point .ast-builder-menu-1,
.ast-header-break-point .main-header-bar-navigation {
  width: 100% !important;
  background-color: #0a0a0a !important;
  order: 99 !important;
}

/* The inner nav and ul */
.ast-header-break-point .site-navigation,
.ast-header-break-point #primary-site-navigation-desktop,
.ast-header-break-point .main-navigation,
.ast-header-break-point .main-navigation ul,
.ast-header-break-point .main-navigation ul li { background-color: #0a0a0a !important; }

/* Menu links */
.ast-header-break-point .main-navigation a,
.ast-header-break-point .main-navigation ul a {
  color: #ffffff !important;
  display: block !important;
  padding: 14px 24px !important;
  border-bottom: 1px solid #1e1e1e !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  background-color: #0a0a0a !important;
}
.ast-header-break-point .main-navigation a:hover,
.ast-header-break-point .main-navigation ul a:hover {
  color: #C9A84C !important;
  background-color: #111111 !important;
  padding-left: 30px !important;
}

/* Hamburger icon — white bars */
.ast-header-break-point .menu-toggle,
.ast-header-break-point button.menu-toggle {
  color: #ffffff !important;
  background: transparent !important;
  border: none !important;
}
.ast-header-break-point .menu-toggle .svg-iconset,
.ast-header-break-point .menu-toggle svg { fill: #ffffff !important; stroke: #ffffff !important; }

/* ═══════════════════════════════════════════════════
   MOBILE MENU — FINAL FIX (body.ast-header-break-point required)
   ═══════════════════════════════════════════════════ */
body.ast-header-break-point .main-header-bar-navigation,
body.ast-header-break-point .ast-builder-menu-1 {
  background-color: #0a0a0a !important;
  width: 100% !important;
}
body.ast-header-break-point .main-navigation,
body.ast-header-break-point .site-navigation,
body.ast-header-break-point .main-navigation ul,
body.ast-header-break-point .main-navigation ul li {
  background-color: #0a0a0a !important;
}
body.ast-header-break-point .main-header-bar-navigation a,
body.ast-header-break-point .main-navigation a,
body.ast-header-break-point .main-navigation ul a {
  color: #ffffff !important;
  background-color: #0a0a0a !important;
  display: block !important;
  padding: 14px 24px !important;
  border-bottom: 1px solid #1e1e1e !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
}
body.ast-header-break-point .main-navigation a:hover,
body.ast-header-break-point .main-navigation ul a:hover {
  color: #C9A84C !important;
  background-color: #111111 !important;
  padding-left: 30px !important;
}
