/* MortgageBazaar Full Width Styles */

/* Make the main content area full width */
.wp-site-blocks {
    max-width: 100% !important;
    width: 100% !important;
}

/* Remove theme's default max-width constraints */
.wp-block-group.alignwide,
.wp-block-group.alignfull,
.wp-block-group.is-layout-constrained {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for all group blocks */
.wp-block-group {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for columns */
.wp-block-columns {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for cover blocks */
.wp-block-cover {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for media blocks */
.wp-block-media-text {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for gallery blocks */
.wp-block-gallery {
    max-width: 100% !important;
    width: 100% !important;
}

/* Remove padding/margins that might constrain width */
.wp-block-group__inner-container {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for header and footer */
.wp-block-template-part {
    max-width: 100% !important;
    width: 100% !important;
}

/* Ensure no horizontal scrolling */
body {
    overflow-x: hidden;
}

/* Full width for specific content areas */
.entry-content,
.entry-header,
.entry-footer {
    max-width: 100%;
    /* width: 100%; */
}

/* Full width for post content */
.post-content {
    max-width: 100% !important;
    width: 100% !important;
}

/* Full width for page content */
.page-content {
    max-width: 100% !important;
    width: 100% !important;
}

#services .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
    border: 1px solid #EAF1F9;
    padding: 1.5rem;
    border-radius: 0.5rem;
}

#services .wp-font-awesome-icon {
    background-color: hsl(var(--primary) / .1);
    --primary: 0 78% 47%;
    padding: 5px 10px;
    border-radius: 6px;
}

#services .wp-font-awesome-icon .svg-inline--fa {
    color: #d51a1a;
}

footer {
    margin-block-start: 0 !important;
    margin-block-end: 0 !important;
    padding-block-start: 0 !important;
    padding-block-end: 0 !important;
}

.has-base-2-background-color {
    color: #fff;
    a {
        color: #fff;
    }
}

.top-bar {
    position: fixed;
}

/* Override heading colors - disable theme default */
h1, h2, h3, h4, h5, h6 {
    color: inherit; /* Use parent element's color instead of theme default */
}

header .header-logo {
    flex: 2;
}

header .header-menu {
    flex: 8;
}

/*Alternative: Set headings to a specific color */
/* 
h1, h2, h3, h4, h5, h6 {
    color: #333333;
}
*/

/* Alternative: Make headings inherit from body text color */
/*
h1, h2, h3, h4, h5, h6 {
    color: unset;
}

*/

.page-id-279 main .wp-block-group.alignfull,
.page-id-151 main .wp-block-group.alignfull {
    max-width: unset !important;
    width: unset !important;
}

/* Reusable: two columns on desktop, one column on mobile */
.alignfull.stack-mobile.is-layout-flex {
    display: flex !important;
    /* WP adds `is-nowrap` → kill it */
    flex-wrap: wrap !important;
    gap: var(--wp--style--block-gap, 1.5rem);
    align-items: stretch;
  }
  
  /* Some themes use `.is-horizontal` to force row; that's fine on desktop */
  .alignfull.stack-mobile.is-layout-flex.is-horizontal {
    flex-direction: row !important;
  }
  
  /* Children become fluid columns */
  .alignfull.stack-mobile.is-layout-flex > * {
    flex: 1 1 480px !important;  /* side-by-side if room, otherwise wrap */
    min-width: 0;
  }
  
  /* Mobile: force vertical stack regardless of theme styles */
  @media (max-width: 782px) {
    .alignfull.stack-mobile.is-layout-flex {
      flex-direction: column !important;
    }
    .alignfull.stack-mobile.is-layout-flex > * {
      flex: 0 0 100% !important;
      width: 100% !important;
      max-width: 100% !important;
    }
  }
  
  
  #why-choose .alignwide.is-layout-flow > .is-layout-flex:first-of-type {
    flex-wrap: wrap !important;
    gap: var(--wp--style--block-gap, 1.25rem);
  }
  
  @media (min-width: 1200px) {
    #why-choose .alignwide.is-layout-flow > .is-layout-flex:first-of-type {
      flex-wrap: nowrap !important;
    }
    #why-choose .alignwide.is-layout-flow > .is-layout-flex:first-of-type > .wp-block-group {
      flex: 0 0 calc((100% - 3 * var(--wp--style--block-gap, 1.25rem)) / 4) !important;
      max-width: calc((100% - 3 * var(--wp--style--block-gap, 1.25rem)) / 4) !important;
    }
  }
  
/* Fixed bar base */
.top-bar{
    position: fixed; top: 0; left: 0; right: 0;
    width: 100%; z-index: 1000;
    max-width: none !important; margin: 0 !important;
    overflow-x: clip;
  }
  
  /* ---------- LARGE SCREENS: keep both siblings on ONE line ---------- */
  @media (min-width: 992px) {
    /* Top row: one line, spaced left/right */
    .top-bar > .wp-block-group.is-layout-flex{
      display: flex !important;
      flex-direction: row !important;
      align-items: center;
      justify-content: space-between;
      flex-wrap: nowrap !important;         /* ← critical */
      gap: .75rem;
    }
  
    /* Left cluster (phone + email) must NOT wrap internally */
    .top-bar > .wp-block-group.is-layout-flex > .wp-block-group.is-layout-flex:first-child{
      display: flex !important;
      align-items: center;
      gap: 1rem;
      flex-wrap: nowrap !important;         /* keep phone+email on same line */
      min-width: 0;
    }
    /* Each contact item (icon + text) also stays intact */
    .top-bar > .wp-block-group.is-layout-flex
      > .wp-block-group.is-layout-flex:first-child
      > .wp-block-group.is-layout-flex{
      display: flex !important;
      align-items: center;
      gap: .5rem;
      flex-wrap: nowrap !important;
      min-width: 0;
    }
  
    /* Right sibling sits on the right */
    .top-bar > .wp-block-group.is-layout-flex > .wp-block-group:last-child{
      margin-left: auto !important;
      white-space: nowrap;                   /* no internal breaks */
    }
  }
  
  /* ---------- SMALL SCREENS: allow stacking ---------- */
  @media (max-width: 991.98px) {
    .top-bar > .wp-block-group.is-layout-flex{
      display: flex !important;
      flex-direction: column !important;
      align-items: stretch;
      gap: .5rem;
      flex-wrap: wrap !important;            /* only the TOP ROW wraps */
    }
    /* Left cluster can wrap to two lines on small screens */
    .top-bar > .wp-block-group.is-layout-flex > .wp-block-group.is-layout-flex:first-child{
      flex-wrap: wrap !important;
    }
  }
  
  /* Text & icons */
  .top-bar p{ margin: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .top-bar .wp-font-awesome-icon{ display: inline-flex; align-items: center; }
  .top-bar .wp-font-awesome-icon svg{ width: 1em; height: 1em; flex: 0 0 auto; }
  
  /* Give page room under the fixed bar (pick one) */
  body{ padding-top: 40px; scroll-padding-top: 40px; }
  @media (max-width: 782px){ body{ padding-top: 110px; } }
  /* OR use the ResizeObserver helper we shared earlier for dynamic height */

  @media (max-width: 782px) {
    .top-bar .is-content-justification-right { 
      justify-content: flex-start !important; 
    }
    .top-bar .has-text-align-right { 
      text-align: left !important; 
    }
  }
  
  
  
  
  
