/* Extracted from style2026.css without selector or declaration changes.
   Loaded conditionally by functions.php to reduce per-page CSS. */

/* ==========================================================
   Global footer presentation moved from footer.php
   ========================================================== */
/* SEO Image footer refresh */
#footer.si-site-footer {
  clear: both !important;
  position: relative !important;
  background:
    radial-gradient(circle at 18% 0%, rgba(49,87,127,.26), transparent 34%),
    linear-gradient(180deg, #172b45 0%, #111d31 38%, #0f172a 100%) !important;
  background-image:
    radial-gradient(circle at 18% 0%, rgba(49,87,127,.26), transparent 34%),
    linear-gradient(180deg, #172b45 0%, #111d31 38%, #0f172a 100%) !important;
  color: #d6deea !important;
  padding: 56px 0 40px !important;
  overflow: visible !important;
}

#footer.si-site-footer *,
#footer.si-site-footer *:before,
#footer.si-site-footer *:after {
  background-image: none !important;
  box-sizing: border-box !important;
}

#footer.si-site-footer .si-footer-inner {
  max-width: 1240px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 28px !important;
  padding-right: 28px !important;
}

#footer.si-site-footer .si-footer-main {
  display: flex !important;
  align-items: flex-start !important;
  gap: 38px !important;
}

#footer.si-site-footer .si-footer-main:before,
#footer.si-site-footer .si-footer-main:after,
#footer.si-site-footer .si-footer-link-grid:before,
#footer.si-site-footer .si-footer-link-grid:after {
  display: none !important;
}

#footer.si-site-footer .si-footer-left {
  flex: 0 0 39% !important;
  width: auto !important;
  margin-left: 0 !important;
  float: none !important;
}

#footer.si-site-footer .si-footer-about {
  flex: 1 1 35% !important;
  width: auto !important;
  margin-left: 0 !important;
  float: none !important;
  padding-left: 0 !important;
  border-left: 0 !important;
}

#footer.si-site-footer .si-footer-right {
  flex: 0 0 26% !important;
  width: auto !important;
  margin-left: 0 !important;
  float: none !important;
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 28px !important;
  padding-left: 0 !important;
  border-left: 0 !important;
}

#footer.si-site-footer .si-footer-link-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr 1fr !important;
  gap: 26px !important;
}

#footer.si-site-footer .si-footer-nav,
#footer.si-site-footer .si-footer-nav.span4 {
  width: auto !important;
  margin: 0 !important;
  float: none !important;
  text-align: left !important;
}

#footer.si-site-footer h4,
#footer.si-site-footer h4 a {
  color: #ffffff !important;
  font-size: 17px !important;
  line-height: 1.22 !important;
  font-weight: 700 !important;
  margin: 0 0 15px !important;
  text-decoration: none !important;
}

#footer.si-site-footer h5,
#footer.si-site-footer .si-footer-hiring {
  color: #f2f6fb !important;
  opacity: 1 !important;
  font-size: 15px !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  margin: 0 0 12px !important;
}

#footer.si-site-footer p,
#footer.si-site-footer li {
  color: #d6deea !important;
  opacity: 1 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

#footer.si-site-footer ul,
#footer.si-site-footer .menu {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#footer.si-site-footer li {
  margin: 0 0 8px !important;
  padding: 0 !important;
}

#footer.si-site-footer a,
#footer.si-site-footer a:link,
#footer.si-site-footer a:visited,
#footer.si-site-footer li a,
#footer.si-site-footer .menu a {
  color: #f2f6fb !important;
  opacity: 1 !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important;
  text-decoration: none !important;
  text-shadow: none !important;
  word-break: normal !important;
  overflow-wrap: normal !important;
}

#footer.si-site-footer a:hover {
  color: #ffffff !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}

#footer.si-site-footer #aboutseo,
#footer.si-site-footer #aboutseo p,
#footer.si-site-footer #aboutseo li,
#footer.si-site-footer #aboutseo a {
  color: #cbd5e1 !important;
}

#footer.si-site-footer #aboutseo h4,
#footer.si-site-footer #aboutseo h3,
#footer.si-site-footer #aboutseo h2 {
  color: #ffffff !important;
}


#footer.si-site-footer .si-footer-nav .menu a,
#footer.si-site-footer .si-footer-nav li a {
  font-weight: 600 !important;
}

#footer.si-site-footer .si-footer-phone,
#footer.si-site-footer .si-footer-phone a {
  color: #ff6a2a !important;
  font-size: 16px !important;
  line-height: 1.3 !important;
  font-weight: 800 !important;
  margin: 14px 0 12px !important;
  text-decoration: none !important;
}

#footer.si-site-footer .si-footer-contact {
  width: 100% !important;
  text-align: left !important;
}

#footer.si-site-footer .si-footer-contact a,
#footer.si-site-footer #request_quote a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 42px !important;
  padding: 12px 24px !important;
  border-radius: 8px !important;
  background: #f15a24 !important;
  color: #ffffff !important;
  font-size: 15px !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
  text-decoration: none !important;
  box-shadow: 0 10px 22px rgba(241,90,36,.18) !important;
}

#footer.si-site-footer .si-footer-contact a:hover,
#footer.si-site-footer #request_quote a:hover {
  background: #e24f1c !important;
  color: #ffffff !important;
  text-decoration: none !important;
}

#footer.si-site-footer .dmca-badge {
  display: inline-block !important;
  margin-top: 8px !important;
}

#footer.si-site-footer .dmca-badge img {
  display: block !important;
  width: 104px !important;
  max-width: 100% !important;
  height: auto !important;
  opacity: .95 !important;
}

#footer.si-site-footer .si-footer-copyright {
  margin-top: 34px !important;
  padding-top: 22px !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
  text-align: center !important;
}

#footer.si-site-footer .si-footer-copyright,
#footer.si-site-footer .si-footer-copyright p,
#footer.si-site-footer .si-footer-copyright div,
#footer.si-site-footer .si-footer-copyright a {
  color: #9aa7b8 !important;
  font-size: 13px !important;
  line-height: 1.45 !important;
}


/* Footer premium transition and contrast */

#footer.si-site-footer:before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.24), transparent) !important;
  pointer-events: none !important;
}

#footer.si-site-footer .si-footer-inner {
  position: relative !important;
  z-index: 1 !important;
}

#footer.si-site-footer h4,
#footer.si-site-footer h4 a {
  letter-spacing: -.01em !important;
}

#footer.si-site-footer a,
#footer.si-site-footer a:link,
#footer.si-site-footer a:visited,
#footer.si-site-footer li a,
#footer.si-site-footer .menu a {
  color: #dbe4ef !important;
}

#footer.si-site-footer a:hover {
  color: #ffffff !important;
}


/* Footer final polish: no duplicate vertical pipes, no cropped copyright */
#footer.si-site-footer {
  overflow: visible !important;
  padding-top: 56px !important;
  padding-bottom: 50px !important;
}

#footer.si-site-footer .si-footer-main {
  column-gap: 56px !important;
  row-gap: 0 !important;
  padding-bottom: 0 !important;
}

#footer.si-site-footer .si-footer-about,
#footer.si-site-footer .si-footer-right,
#footer.si-site-footer #aboutseo,
#footer.si-site-footer #book,
#footer.si-site-footer .span4,
#footer.si-site-footer .span5,
#footer.si-site-footer .span3,
#footer.si-site-footer nav {
  border-left: 0 !important;
  border-right: 0 !important;
}

#footer.si-site-footer #foot2,
#footer.si-site-footer .si-footer-copyright {
  clear: both !important;
  display: block !important;
  width: 100% !important;
  margin: 42px 0 0 !important;
  padding: 22px 0 0 !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
  text-align: center !important;
  background: transparent !important;
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  overflow: visible !important;
}

#footer.si-site-footer #foot2 *,
#footer.si-site-footer .si-footer-copyright * {
  background: transparent !important;
  color: #a9b5c6 !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

#footer.si-site-footer #foot2 a,
#footer.si-site-footer .si-footer-copyright a {
  color: #c8d2df !important;
  font-size: 13px !important;
}

#footer.si-site-footer:after {
  content: "" !important;
  display: table !important;
  clear: both !important;
}

@media (max-width: 979px) {
  #footer.si-site-footer .si-footer-main {
    display: block !important;
  }

  #footer.si-site-footer .si-footer-left,
  #footer.si-site-footer .si-footer-about,
  #footer.si-site-footer .si-footer-right {
    width: 100% !important;
    padding-left: 0 !important;
    border-left: 0 !important;
    margin-bottom: 30px !important;
  }

  #footer.si-site-footer .si-footer-right {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
  }
}

@media (max-width: 767px) {
  #footer.si-site-footer {
    padding: 34px 0 24px !important;
  }

  #footer.si-site-footer .si-footer-inner {
    padding-left: 22px !important;
    padding-right: 22px !important;
  }

  #footer.si-site-footer .si-footer-link-grid,
  #footer.si-site-footer .si-footer-right {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  #footer.si-site-footer h4,
  #footer.si-site-footer h4 a {
    font-size: 17px !important;
  }

  #footer.si-site-footer p,
  #footer.si-site-footer li,
  #footer.si-site-footer a,
  #footer.si-site-footer a:link,
  #footer.si-site-footer a:visited {
    font-size: 14px !important;
  }

  #footer.si-site-footer .si-footer-contact a,
  #footer.si-site-footer #request_quote a {
    width: 100% !important;
  }
}




/* Footer v10: remove center separators entirely */
#footer.si-site-footer .si-footer-about:before,
#footer.si-site-footer .si-footer-about:after,
#footer.si-site-footer .si-footer-right:before,
#footer.si-site-footer .si-footer-right:after {
  content: none !important;
  display: none !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none !important;
}

#footer.si-site-footer .si-footer-about,
#footer.si-site-footer .si-footer-right,
#footer.si-site-footer #aboutseo,
#footer.si-site-footer #book {
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
}


/* Footer v11b: remove internal vertical lines without breaking copyright/layout */
#footer.si-site-footer .si-footer-about,
#footer.si-site-footer .si-footer-right,
#footer.si-site-footer #aboutseo,
#footer.si-site-footer #book,
#footer.si-site-footer nav.link,
#footer.si-site-footer .si-footer-nav {
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

#footer.si-site-footer .si-footer-about:before,
#footer.si-site-footer .si-footer-about:after,
#footer.si-site-footer .si-footer-right:before,
#footer.si-site-footer .si-footer-right:after,
#footer.si-site-footer #aboutseo:before,
#footer.si-site-footer #aboutseo:after,
#footer.si-site-footer #book:before,
#footer.si-site-footer #book:after,
#footer.si-site-footer nav.link:before,
#footer.si-site-footer nav.link:after,
#footer.si-site-footer .si-footer-nav:before,
#footer.si-site-footer .si-footer-nav:after {
  content: none !important;
  display: none !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

/* Preserve the copyright containment/fixes */
#footer.si-site-footer {
  padding-bottom: 78px !important;
  overflow: visible !important;
}

#footer.si-site-footer #foot2,
#footer.si-site-footer .si-footer-copyright {
  clear: both !important;
  display: block !important;
  width: 100% !important;
  margin: 44px 0 0 !important;
  padding: 24px 0 18px !important;
  border-top: 1px solid rgba(255,255,255,.08) !important;
  background: transparent !important;
  text-align: center !important;
  position: relative !important;
  bottom: auto !important;
  left: auto !important;
  right: auto !important;
  transform: none !important;
  overflow: visible !important;
}

#footer.si-site-footer #foot2 *,
#footer.si-site-footer .si-footer-copyright * {
  color: #b8c4d3 !important;
  background: transparent !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
  font-weight: 500 !important;
  opacity: 1 !important;
  position: static !important;
}

#footer.si-site-footer #foot2 a,
#footer.si-site-footer .si-footer-copyright a {
  color: #d1dae6 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
}


/* Footer split treatment:
   Homepage keeps v11 footer.
   Internal pages get the heavier premium gradient. */
body:not(.home):not(.front-page) #footer.si-site-footer {
  background:
    radial-gradient(circle at 18% 0%, rgba(70,111,150,.34), transparent 30%),
    radial-gradient(circle at 82% 18%, rgba(36,71,101,.24), transparent 34%),
    linear-gradient(180deg, #1c3b5d 0%, #13243a 38%, #0f172a 100%) !important;
  background-image:
    radial-gradient(circle at 18% 0%, rgba(70,111,150,.34), transparent 30%),
    radial-gradient(circle at 82% 18%, rgba(36,71,101,.24), transparent 34%),
    linear-gradient(180deg, #1c3b5d 0%, #13243a 38%, #0f172a 100%) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12) !important;
}

/* Stronger internal-page top transition after light BBB sections */
body:not(.home):not(.front-page) #footer.si-site-footer:before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 42px !important;
  background: linear-gradient(180deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,0) 100%) !important;
  pointer-events: none !important;
  display: block !important;
}

/* Keep the homepage footer calmer, based on v11 */
body.home #footer.si-site-footer,
body.front-page #footer.si-site-footer {
  background:
    radial-gradient(circle at 18% 0%, rgba(70,111,150,.18), transparent 32%),
    linear-gradient(180deg, #172b45 0%, #111d31 38%, #0f172a 100%) !important;
  background-image:
    radial-gradient(circle at 18% 0%, rgba(70,111,150,.18), transparent 32%),
    linear-gradient(180deg, #172b45 0%, #111d31 38%, #0f172a 100%) !important;
}

body.home #footer.si-site-footer:before,
body.front-page #footer.si-site-footer:before {
  content: "" !important;
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.18), transparent) !important;
  pointer-events: none !important;
  display: block !important;
}

.si-2026-bbb-section-gradient {
  background:
    radial-gradient(circle at 10% 10%, rgba(241,90,36,.10), transparent 34%),
    linear-gradient(180deg, #f4f7fb, #eef3f8) !important;
}

.si-2026-bbb-section-gradient > .container,
.si-2026-bbb-section-gradient .container:first-child {
  background: transparent !important;
}

@media (max-width: 767px) {
  .si-2026-bbb-section-gradient {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .si-2026-bbb-section-gradient > .container,
  .si-2026-bbb-section-gradient .container:first-child,
  .si-2026-bbb-section-gradient > div:first-child {
    width: 100% !important;
    max-width: none !important;
    padding-left: 22px !important;
    padding-right: 22px !important;
    box-sizing: border-box !important;
  }
}
#footer.si-site-footer {
  height: auto !important;
}


/* ==========================================================
   Shared sticky-header layout stabilization
   Must remain at the very bottom of style2026.css
   ========================================================== */

html,
body {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: hidden !important;
}

#wrapper {
  width: 100% !important;
  max-width: 100% !important;
  overflow: visible !important;
}

/* ==========================================================
   Desktop navigation state only
   Layout, sizing, dropdown columns, and item flow remain in style.css.
   ========================================================== */

@media (min-width: 980px) {
  #main_menu #menu-mainmenu > li.current-menu-item > a,
  #main_menu #menu-mainmenu > li.current_page_item > a,
  #main_menu #menu-mainmenu > li.current-menu-ancestor > a,
  #main_menu #menu-mainmenu > li.current-menu-parent > a,
  #main_menu ul.nav > li.current-menu-item > a,
  #main_menu ul.nav > li.current_page_item > a,
  #main_menu ul.nav > li.current-menu-ancestor > a,
  #main_menu ul.nav > li.current-menu-parent > a {
    background: #2d5f9a !important;
    color: #fff !important;
  }
}

