/* Canonical public website chrome rules shared by panel and tenant sites. */
.mw-nav-wrap,
.mw-footer-wrap {
  box-sizing: border-box;
}

/* Page Builder already wraps each Section template in `.section > .container`.
   MicroERP's reusable content templates render their own semantic section and
   Bootstrap container, so keeping both layers creates doubled horizontal
   gutters and makes the Page Builder padding flags add unexpected whitespace.
   Normalize the outer, framework-owned wrapper here instead of encoding
   layout exceptions in every Web Page fixture. */
.section[data-section-template="MicroERP Hero Section"],
.section[data-section-template="MicroERP Feature Vertical"],
.section[data-section-template="MicroERP Feature Grid"],
.section[data-section-template="MicroERP How It Works"],
.section[data-section-template="MicroERP Text Content"],
.section[data-section-template="MicroERP Text Content List"],
.section[data-section-template="MicroERP FAQ"] {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.section[data-section-template="MicroERP Hero Section"] > .container,
.section[data-section-template="MicroERP Feature Vertical"] > .container,
.section[data-section-template="MicroERP Feature Grid"] > .container,
.section[data-section-template="MicroERP How It Works"] > .container,
.section[data-section-template="MicroERP Text Content"] > .container,
.section[data-section-template="MicroERP Text Content List"] > .container,
.section[data-section-template="MicroERP FAQ"] > .container {
  width: 100%;
  max-width: none;
  padding-inline: 0;
}

/* Pricing Plans and Comparison manage their own layout. The final CTA uses
   the normal Page Builder container and the shared CTA spacing below. */
#pricing2-plans.section,
#pricing2-comparison.section {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

#pricing2-plans.section > .container,
#pricing2-comparison.section > .container {
  width: 100%;
  max-width: none;
  padding-inline: 0;
}

/* CTA content is intentionally constrained by Frappe's normal container,
   but every CTA should have the same vertical breathing room on every page. */
.section[data-section-template="Section with CTA"] {
  padding-top: 1.5rem !important;
  padding-bottom: 1.5rem !important;
}

/* Frappe renders the login identity header outside `.page-card`. Keep its
   logo/title centered regardless of the page direction or host-app CSS. */
.for-login > .page-card-head,
.for-forgot > .page-card-head,
.for-login-with-email-link > .page-card-head,
.for-signup > .page-card-head,
.for-email-login > .page-card-head {
  width: 100%;
  text-align: center !important;
}

.for-login > .page-card-head h4,
.for-forgot > .page-card-head h4,
.for-login-with-email-link > .page-card-head h4,
.for-signup > .page-card-head h4,
.for-email-login > .page-card-head h4 {
  text-align: center !important;
}

.mw-nav-wrap .mw-nav {
  min-height: 68px;
  padding: 14px 0;
}

.mw-nav-wrap .mw-brand-logo {
  width: 40px !important;
  height: 40px !important;
}

.mw-footer-wrap .mw-footer-container,
.mw-footer-wrap .mw-footer-structured {
  box-sizing: border-box;
  padding-top: 48px !important;
  padding-bottom: 34px !important;
}

.mw-footer-wrap .mw-footer-structured {
  gap: 18px;
}

.mw-footer-wrap .mw-footer-brand img {
  width: 48px !important;
  height: 48px !important;
  max-width: 48px !important;
  object-fit: contain;
  flex: 0 0 48px;
}

.mw-footer-wrap .mw-footer-meta {
  padding-top: 14px !important;
  padding-bottom: 14px !important;
}

@media (max-width: 992px) {
  .mw-footer-wrap .mw-footer-container {
    padding-top: 36px !important;
    padding-bottom: 26px !important;
  }
}
