/* MBS Consultancy — migration overrides (keep lean; theme CSS is source of truth) */

#wpadminbar,
.rocket-lazyload {
  display: none !important;
}

body.l-body {
  margin: 0;
}

:root {
  --header-height: 80px;
}

/* Fixed header offset — header sits in .mbs-site-header wrapper */
.header_hor .mbs-site-header ~ .l-main > .l-section:first-of-type > .l-section-h,
.header_hor .mbs-site-header ~ main > .l-section:first-of-type > .l-section-h,
.header_hor .mbs-site-header ~ main.l-main > .elementor > .elementor-section:first-child,
.header_hor .mbs-site-header ~ .l-main > .elementor > .elementor-top-section:first-child {
  /* Impreza/Elementor first sections already account for padding via theme; only pad if needed */
}

/* Desktop dropdown: only hovered/opened item shows children */
.header_hor .w-nav.type_desktop .menu-item.level_1:not(:hover):not(.opened) > .w-nav-list.level_2 {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
}
.header_hor .w-nav.type_desktop .menu-item.level_1:hover > .w-nav-list.level_2,
.header_hor .w-nav.type_desktop .menu-item.level_1.opened > .w-nav-list.level_2 {
  display: block !important;
  visibility: visible !important;
  pointer-events: auto !important;
}

/*
 * Footer service/industry links are Impreza buttons (us-btn-style_3).
 * If theme-options CSS fails to load, neutralize browser/default button chrome
 * so they never render as black-bordered boxes.
 */
.l-footer a.w-btn.us-btn-style_3,
.l-footer .w-btn.us-btn-style_3 {
  background: transparent !important;
  border: 0 !important;
  border-color: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0.15em 0 !important;
  color: #1a1a1a !important;
  display: inline !important;
  line-height: 1.6 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
}
.l-footer a.w-btn.us-btn-style_3:hover,
.l-footer .w-btn.us-btn-style_3:hover {
  color: #ffa300 !important;
  background: transparent !important;
}
.l-footer a.w-btn.us-btn-style_3:before,
.l-footer a.w-btn.us-btn-style_3:after {
  display: none !important;
}

/* Cloudflare email obfuscation leftover brackets */
.l-footer .__cf_email__,
.l-footer [data-cfemail] {
  color: inherit;
}

/* Hide peer Connect licence strip leftovers if any */
.sp-licence:empty {
  display: none !important;
}

/* Smart Slider */
.n2-ss-slider {
  max-width: 100%;
}

/* Master Accordion FAQ */
.jltma-advanced-accordion .jltma-accordion-header,
.ma-advanced-accordion .jltma-accordion-header {
  cursor: pointer;
  user-select: none;
}
.jltma-advanced-accordion .jltma-accordion-tab-content {
  overflow: hidden;
}

/* Archive / insights listing cards (match live wp-custom) */
#blog-list .post,
.mbs-archive-list .post {
  margin-bottom: 2rem;
}

/* Insights / blog listing — fill fixed-height thumbs like live (wp-custom-mbs.css) */
#blog-list .articlepostthumbnailurl,
.mbs-archive-list .articlepostthumbnailurl {
  position: relative;
  overflow: hidden;
  background: #1a1a1a;
}
#blog-list .articlepostthumbnailurl img,
.mbs-archive-list .articlepostthumbnailurl img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
}
#blog-list .articlepostthumbnailurl .category_and_date_wrapper,
.mbs-archive-list .articlepostthumbnailurl .category_and_date_wrapper {
  transform: none;
  bottom: 0;
  z-index: 2;
}

/* Insights subscribe form (CF7 unit id varies; EAEL adds gradient submit) */
.elementor-850 #subscriptionsformblog .row.lab_sp2 {
  display: flex !important;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 0;
}
.elementor-850 #subscriptionsformblog .row.lab_sp2 input[type="email"],
.elementor-850 #subscriptionsformblog input.wpcf7-email {
  border: 2px solid #000 !important;
  height: 51.2px !important;
  max-width: 381px !important;
  width: min(381px, 100%) !important;
  color: #a7a7a7 !important;
  font-family: Inter, sans-serif !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.55 !important;
  background: #fff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}
.elementor-850 #subscriptionsformblog .row.lab_sp2 input[type="email"]:focus,
.elementor-850 #subscriptionsformblog input.wpcf7-email:focus {
  box-shadow: none !important;
  outline: none;
  color: #000 !important;
}
.elementor-850 #subscriptionsformblog .row.lab_sp2 input[type="submit"],
.elementor-850 #subscriptionsformblog input.wpcf7-submit {
  border-radius: 0 !important;
  background: #000 !important;
  background-image: none !important;
  color: #fff !important;
  margin-top: 7px !important;
  float: none !important;
  font-family: Inter, sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  padding: 14px 32px !important;
  min-height: 51px;
  width: auto !important;
}
.elementor-850 #subscriptionsformblog .datewrap:before,
.elementor-850 #blog-list .datewrap:before,
.mbs-archive-list .datewrap:before {
  background-image: url("/wp-content/uploads/2023/07/dateicon.svg") !important;
}

/* CF7 phone — intlTelInput flags + dial code (phone-flags.js + utils.js) */
.wpcf7 .intl-tel-input,
.wpcf7 .iti {
  display: block !important;
  width: 100%;
  position: relative;
}
.wpcf7 .intl-tel-input .selected-flag,
.wpcf7 .iti__selected-country,
.wpcf7 .iti__flag-container {
  z-index: 3;
}
.wpcf7 .intl-tel-input .iti-flag,
.wpcf7 .iti__flag {
  background-image: url("/wp-content/plugins/country-phone-field-contact-form-7/assets/img/flags.png") !important;
  background-repeat: no-repeat !important;
}
.wpcf7 .intl-tel-input.separate-dial-code .selected-flag,
.wpcf7 .iti--separate-dial-code .iti__selected-country {
  /* Allow +971 / longer dial codes — do not clip into placeholder */
  min-width: 108px !important;
  max-width: none !important;
  width: auto !important;
  padding-right: 10px !important;
  background: #fff !important;
  border-right: 1px solid #ddd !important;
  box-sizing: border-box;
}
.wpcf7 .intl-tel-input.separate-dial-code .selected-dial-code,
.wpcf7 .iti--separate-dial-code .iti__selected-dial-code {
  padding-left: 6px !important;
  white-space: nowrap !important;
}
.wpcf7 .row_r.contactpageform .intl-tel-input,
.wpcf7 .row_r.contactpageform .iti {
  width: 100% !important;
}
/*
 * Floor padding for separate dial code; phone-flags.js raises this per-country
 * via inline padding-left !important so placeholder never sits under +XXX.
 */
.wpcf7 input.wpcf7-phonetext.inside_label,
.wpcf7 input.wpcf7-validates-as-phonetext.inside_label,
.wpcf7 .intl-tel-input.separate-dial-code input,
.wpcf7 .iti--separate-dial-code input.wpcf7-phonetext,
.wpcf7 .intl-tel-input.separate-dial-code input[type="tel"],
.wpcf7 .intl-tel-input.separate-dial-code input[type="text"],
.row_r.contactpageform input.wpcf7-form-control.wpcf7-text.wpcf7-phonetext,
.separate-dial-code input.wpcf7-validates-as-phonetext,
#custom-form .wpcf7-phonetext.wpcf7-validates-as-required.wpcf7-validates-as-phonetext.inside_label {
  padding-left: 150px !important;
  box-sizing: border-box !important;
  width: 100% !important;
}
.wpcf7 .selected-flag {
  min-width: 108px !important;
}

/*
 * CF7 / bridge status messages — default success was near-black (#000202),
 * which disappears on industry hero (black) and other dark panels.
 */
.wpcf7 .wpcf7-response-output,
.wpcf7-response-output.sp-status-visible {
  display: block;
  margin-top: 0.75rem;
  padding: 0.55rem 0.85rem;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.45;
  text-align: left;
  border-width: 2px;
  border-style: solid;
  border-radius: 0;
}

.wpcf7 form.sent .wpcf7-response-output,
.wpcf7-response-output.wpcf7-mail-sent-ok,
.wpcf7-response-output.sp-status-ok {
  color: #ffa300 !important;
  border-color: #ffa300 !important;
  background: transparent !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7-response-output.wpcf7-mail-sent-ng,
.wpcf7-response-output.sp-status-err {
  color: #ff6b6b !important;
  border-color: #ff6b6b !important;
  background: transparent !important;
}

/* Light FAQ/contact panel on industry pages: dark success text */
.elementor-element-92dbb74 .wpcf7 form.sent .wpcf7-response-output,
.elementor-element-92dbb74 .wpcf7-response-output.sp-status-ok {
  color: #1a1a1a !important;
  border-color: #1a1a1a !important;
}

/*
 * Industry pages — section gaps to match full-page reference screenshots.
 * Only joints that show breathing room in the mocks (services→CTA, CTA→FAQ).
 * Keep Industries↔Benefits / Why↔Industries flush (as in the references).
 */
.elementor-1160 .elementor-element.elementor-element-00ead56,
.elementor-1165 .elementor-element.elementor-element-00ead56,
.elementor-1172 .elementor-element.elementor-element-00ead56,
.elementor-1177 .elementor-element.elementor-element-00ead56,
.elementor-1195 .elementor-element.elementor-element-00ead56,
.elementor-1200 .elementor-element.elementor-element-00ead56,
.elementor-1211 .elementor-element.elementor-element-00ead56,
.elementor-1216 .elementor-element.elementor-element-00ead56 {
  /* ~118px light band before orange CTA in reference */
  padding-bottom: 5rem !important;
}

.elementor-1160 .elementor-element.elementor-element-4232770,
.elementor-1165 .elementor-element.elementor-element-4232770,
.elementor-1172 .elementor-element.elementor-element-4232770,
.elementor-1177 .elementor-element.elementor-element-4232770,
.elementor-1195 .elementor-element.elementor-element-4232770,
.elementor-1200 .elementor-element.elementor-element-4232770,
.elementor-1211 .elementor-element.elementor-element-4232770,
.elementor-1216 .elementor-element.elementor-element-4232770 {
  /* ~38–46px light band between orange CTA and Why You Need Us */
  padding-bottom: 2.5rem !important;
}

.elementor-1160 .elementor-element.elementor-element-72747f4,
.elementor-1165 .elementor-element.elementor-element-72747f4,
.elementor-1172 .elementor-element.elementor-element-72747f4,
.elementor-1177 .elementor-element.elementor-element-72747f4,
.elementor-1195 .elementor-element.elementor-element-72747f4,
.elementor-1200 .elementor-element.elementor-element-72747f4,
.elementor-1211 .elementor-element.elementor-element-72747f4,
.elementor-1216 .elementor-element.elementor-element-72747f4 {
  /* slight inner breathing so card text isn't flush to section edge */
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}

.elementor-1160 .elementor-element.elementor-element-c33094e,
.elementor-1165 .elementor-element.elementor-element-c33094e,
.elementor-1172 .elementor-element.elementor-element-c33094e,
.elementor-1177 .elementor-element.elementor-element-c33094e,
.elementor-1195 .elementor-element.elementor-element-c33094e,
.elementor-1200 .elementor-element.elementor-element-c33094e,
.elementor-1211 .elementor-element.elementor-element-c33094e,
.elementor-1216 .elementor-element.elementor-element-c33094e {
  /* empty spacer between Benefits and lower CTA — match mock breathing room */
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

.elementor-1160 .elementor-element.elementor-element-4a69acb,
.elementor-1165 .elementor-element.elementor-element-4a69acb,
.elementor-1172 .elementor-element.elementor-element-4a69acb,
.elementor-1177 .elementor-element.elementor-element-4a69acb,
.elementor-1195 .elementor-element.elementor-element-4a69acb,
.elementor-1200 .elementor-element.elementor-element-4a69acb,
.elementor-1211 .elementor-element.elementor-element-4a69acb,
.elementor-1216 .elementor-element.elementor-element-4a69acb {
  /* ~90px light band between lower orange CTA and FAQ (reference) */
  margin-bottom: 5.5rem !important;
}

@media (max-width: 767px) {
  .elementor-1160 .elementor-element.elementor-element-00ead56,
  .elementor-1165 .elementor-element.elementor-element-00ead56,
  .elementor-1172 .elementor-element.elementor-element-00ead56,
  .elementor-1177 .elementor-element.elementor-element-00ead56,
  .elementor-1195 .elementor-element.elementor-element-00ead56,
  .elementor-1200 .elementor-element.elementor-element-00ead56,
  .elementor-1211 .elementor-element.elementor-element-00ead56,
  .elementor-1216 .elementor-element.elementor-element-00ead56 {
    padding-bottom: 3rem !important;
  }

  .elementor-1160 .elementor-element.elementor-element-4a69acb,
  .elementor-1165 .elementor-element.elementor-element-4a69acb,
  .elementor-1172 .elementor-element.elementor-element-4a69acb,
  .elementor-1177 .elementor-element.elementor-element-4a69acb,
  .elementor-1195 .elementor-element.elementor-element-4a69acb,
  .elementor-1200 .elementor-element.elementor-element-4a69acb,
  .elementor-1211 .elementor-element.elementor-element-4a69acb,
  .elementor-1216 .elementor-element.elementor-element-4a69acb {
    margin-bottom: 2.5rem !important;
  }
}

/* Mobile footer — compact © row (Impreza height_medium adds 4rem padding otherwise) */
@media (max-width: 600px) {
  .l-footer .us_custom_c0b36b58 {
    padding-bottom: 1rem !important;
  }
  .l-footer .l-section.height_medium {
    padding-top: 2rem !important;
    padding-bottom: 1rem !important;
  }
  .l-footer section.us_custom_3a69d467.height_medium {
    padding-top: 0.65rem !important;
    padding-bottom: 0.5rem !important;
  }
  .l-footer section.us_custom_3a69d467,
  .l-footer .us_custom_3a69d467 {
    padding: 0 !important;
    margin: 0 !important;
  }
  .l-footer section.us_custom_3a69d467.height_medium > .l-section-h {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  .l-footer#page-footer {
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
  }
}

/*
 * Fallback if pageCss/us-design-options fail to load: live uses
 * .us_custom_daf733d3 { font-size:1.8rem; font-weight:700 } on post titles.
 * Without it, theme h1 (~64px) + embedded line-height:50px overlaps.
 */
h1.single_wp_heading.us_custom_daf733d3,
h1.w-post-elm.post_title.us_custom_daf733d3 {
  font-size: 1.8rem !important;
  font-weight: 700 !important;
  margin-top: 1rem !important;
  line-height: 1.35 !important;
}

.singlesidebarareaheadingwrap p strong {
  line-height: 1.3 !important;
}

/*
 * Header: do NOT force position/flex — Impreza us-header.css owns pos_fixed +
 * .l-subheader-h flex (live). Earlier relative/flex overrides collapsed the bar
 * on inner pages (home looked fine because body classes / first-section pad differed).
 */
.mbs-site-header {
  /* static: do not create a containing block that traps position:fixed */
  position: static;
  z-index: 101;
  transform: none !important;
  filter: none !important;
  perspective: none !important;
  contain: none !important;
  /* reserve space when header is fixed (Impreza placeholder) */
  min-height: var(--header-height, 80px);
}
.mbs-site-header #page-header.l-header,
.mbs-site-header #page-header.l-header.pos_fixed,
.mbs-site-header #page-header.l-header.pos_static {
  position: fixed !important;
  left: 0 !important;
  right: 0 !important;
  top: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
  z-index: 111 !important;
  transform: none !important;
}
/* page-design mobile rules crush logo to 50×50 — keep live ~60px desktop size */
.mbs-site-header #page-header .w-image.ush_image_1,
.mbs-site-header #page-header .w-image.ush_image_1 a {
  display: flex;
  align-items: center;
}
.mbs-site-header #page-header .w-image.ush_image_1 img {
  width: auto !important;
  height: 60px !important;
  max-height: 60px !important;
  max-width: none !important;
  top: 0 !important;
  position: static !important;
}
.mbs-site-header .l-subheader-cell.at_right .w-image.ush_image_2 a {
  display: flex;
  align-items: center;
}

/* Phone dial code: beat inline post CSS 50px / page-design 110px floors */
.wpcf7 .intl-tel-input.separate-dial-code,
.wpcf7 .iti--separate-dial-code,
.intl-tel-input.separate-dial-code,
.customsinglepagetemplate .intl-tel-input.separate-dial-code {
  width: 100% !important;
  display: block !important;
  position: relative !important;
}
.wpcf7 .intl-tel-input.separate-dial-code .selected-flag,
.intl-tel-input.separate-dial-code .selected-flag,
.customsinglepagetemplate .intl-tel-input.separate-dial-code .selected-flag {
  width: auto !important;
  min-width: 108px !important;
  max-width: none !important;
  padding-left: 8px !important;
  padding-right: 10px !important;
  background: #fff !important;
  border-right: 1px solid #ddd !important;
  z-index: 3 !important;
}
.wpcf7 .intl-tel-input.separate-dial-code .selected-dial-code,
.intl-tel-input.separate-dial-code .selected-dial-code,
.customsinglepagetemplate .intl-tel-input.separate-dial-code .selected-dial-code {
  display: inline-block !important;
  visibility: visible !important;
  opacity: 1 !important;
  color: #1a1a1a !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  padding-left: 6px !important;
  white-space: nowrap !important;
}
.wpcf7 .intl-tel-input .iti-flag,
.intl-tel-input .iti-flag,
.country-select .flag {
  background-image: url("/wp-content/plugins/country-phone-field-contact-form-7/assets/img/flags.png") !important;
  background-repeat: no-repeat !important;
}
/* Post sidebar forms ship padding-left:50px — dial (+971) needs ~150px */
.customsinglepagetemplate .wpcf7-phonetext.wpcf7-validates-as-required.wpcf7-validates-as-phonetext.inside_label,
.customsinglepagetemplate .intl-tel-input.separate-dial-code input.wpcf7-phonetext,
.customsinglepagetemplate .intl-tel-input.separate-dial-code input[type="text"],
.customsinglepagetemplate .intl-tel-input.separate-dial-code input[type="tel"] {
  padding-left: 150px !important;
}
