/* =============================================================
   Global Layout & Grid Constraints (layout.css)
   ============================================================= */

body {
  margin: 0;
  padding: 0;
  overflow-x: hidden !important;
  max-width: 100% !important;
}

#page, #primary-wrapper, .site-main-wrapper, .site-content {
  overflow-x: hidden !important;
  max-width: 100% !important;
}

/* 1600px Max-Width Standard Containers */
.site-main-wrapper .container,
#home-digital-agency .container,
#primary-wrapper .container,
.solutions-container,
.support-container,
.insights-container,
.hero-container,
.v3-footer-container,
.testimonial-container,
.header-container,
.process-container,
.cases-container,
.contact-container,
.stats-container,
.stats-section,
.services-container,
.portfolio-container {
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
  box-sizing: border-box !important;
  float: none !important;
}

/* Ensure inner rows don't break centering */
.site-main-wrapper .row,
#home-digital-agency .row {
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: block !important;
}

/* Top bar alignment */
.topbar .container {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  max-width: 1600px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}

/* Top-level page content container */
#primary-wrapper .cloned-page-content .container,
#primary-wrapper .page-content-wrapper .container {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

#primary-wrapper .cloned-page-content .row.single-page-content,
#primary-wrapper .page-content-wrapper .row.single-page-content {
  margin: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

.cloned-page-content,
.page-content-wrapper {
  color: #1c1a27 !important;
  background-color: #ffffff !important;
}

/* Animations & visibility - ensures content never stays hidden at opacity 0 */
.kd-animated:not(.kd-shapes):not([class*="shape_"]),
.wpb_animate_when_almost_visible,
.kd-animated *:not(.kd-shapes):not([class*="shape_"]) {
  opacity: 1 !important;
  visibility: visible !important;
  animation: none !important;
  transform: none !important;
}
