/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

/* Wider logo in header */
#header-wrap #logo img {
  min-width: 180px;
  width: auto;
  max-width: 220px;
  object-fit: contain;
}

/* Hero section spacing below black nav */
#slider.slider-element {
  padding-top: 1rem;
}
@media (min-width: 992px) {
  #slider.slider-element {
    padding-top: 1.25rem;
  }
}

/* Black header color scheme (front nav) */
#header.header-black #header-wrap,
#header.header-black .header-wrap-clone {
  background: #0d0d0d !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}
#header.header-black .menu-link,
#header.header-black .menu-link > div {
  color: rgba(255, 255, 255, 0.9) !important;
}
#header.header-black .menu-link:hover,
#header.header-black .menu-link:hover > div {
  color: #fff !important;
}
#header.header-black .primary-menu-trigger .cnvs-hamburger-inner,
#header.header-black .primary-menu-trigger .cnvs-hamburger-inner::before,
#header.header-black .primary-menu-trigger .cnvs-hamburger-inner::after {
  background-color: #fff;
}
#header.header-black .header-btn-ghost {
  color: rgba(255, 255, 255, 0.9) !important;
  border-color: rgba(255, 255, 255, 0.35) !important;
}
#header.header-black .header-btn-ghost:hover {
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.6) !important;
  background: rgba(255, 255, 255, 0.08) !important;
}
#header.header-black .header-btn-outline {
  color: #fff !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  background: transparent !important;
}
#header.header-black .header-btn-outline:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
}
#header.header-black .header-btn-primary {
  background: #fff !important;
  color: #0d0d0d !important;
  border: none !important;
}
#header.header-black .header-btn-primary:hover {
  background: rgba(255, 255, 255, 0.9) !important;
  color: #0d0d0d !important;
}

/* Modern footer (dark, matches header) - override theme #footer */
#footer.footer-modern {
  background: #0d0d0d !important;
  color: #fff !important;
  border-top: 1px solid rgba(255, 255, 255, 0.08) !important;
}
#footer.footer-modern .footer-main {
  border-top: none;
}
#footer.footer-modern .footer-heading {
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.95) !important;
  margin-bottom: 1rem;
}
#footer.footer-modern .footer-links,
#footer.footer-modern .footer-contact {
  list-style: none;
  padding: 0;
  margin: 0;
}
#footer.footer-modern .footer-links li,
#footer.footer-modern .footer-contact li {
  margin-bottom: 0.5rem;
}
#footer.footer-modern .footer-links a,
#footer.footer-modern .footer-contact a {
  color: rgba(255, 255, 255, 0.7) !important;
  text-decoration: none !important;
  font-size: 0.9375rem;
  transition: color 0.2s ease;
}
#footer.footer-modern .footer-links a:hover,
#footer.footer-modern .footer-contact a:hover {
  color: #fff !important;
}
#footer.footer-modern .footer-tagline {
  line-height: 1.6;
  max-width: 280px;
  color: rgba(255, 255, 255, 0.6) !important;
}
#footer.footer-modern .footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(0, 0, 0, 0.2) !important;
}
#footer.footer-modern .footer-bottom .text-white-50,
#footer.footer-modern .footer-bottom span {
  color: rgba(255, 255, 255, 0.6) !important;
}
#footer.footer-modern .footer-bottom a {
  color: rgba(255, 255, 255, 0.6) !important;
}
#footer.footer-modern .footer-bottom a:hover {
  color: #fff !important;
}
/* Ensure all footer text is visible on dark bg */
#footer.footer-modern p,
#footer.footer-modern span,
#footer.footer-modern li {
  color: rgba(255, 255, 255, 0.75) !important;
}
#footer.footer-modern h5.footer-heading {
  color: rgba(255, 255, 255, 0.95) !important;
}

