/* Isolated .127 sibling links: visible choices, real links, no extra accordion. */
/* .128: warm the existing navigation/offer surfaces, preserve imagery and contrast. */
body[data-zmx127][data-zmx-route^="/solutions/"]:not([data-zmx-route="/solutions/"]) .solution-switcher {
  background:linear-gradient(110deg,#e8eee5 0%,#f1e6ce 100%) !important;
}
body[data-zmx127] .zmx-dot82-dual-entry {
  background:linear-gradient(125deg,#f5eedf,#ede8d9) !important;
}
body[data-zmx127] .zmx108-res-transformations .zmx-res-service-tiles > article {
  background:#f7f0df !important;
}
body[data-zmx127] .zmx-global-sticky--residential :is(a,button)[data-zmx-sticky-target="route"] {
  background:linear-gradient(120deg,#eed293,#d9af56) !important;
  color:#173f34 !important;
  border-color:#bb9241 !important;
}
@media(max-width:1040px) {
  body[data-zmx127] .solution-switcher-inner { display:grid; justify-items:center; gap:5px; }
  body[data-zmx127] .solution-switcher-nav { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:6px; }
  body[data-zmx127][data-zmx105-release][data-zmx-route^="/solutions/"]:not([data-zmx-route="/solutions/"]) .solution-switcher-nav .all-solutions { grid-column:1 / -1; justify-self:center; width:100%; max-width:240px; margin-inline:auto !important; min-height:44px !important; padding:8px 24px !important; background:#fff5df; border:1px solid #d1bd94; color:#1f6657; }
}
@media(max-width:820px) {
  body[data-zmx127] .zmx-global-header .zmx-global-menu { background:#f0e5ce !important; border-color:#cabb9b !important; color:#173f34 !important; }
  body[data-zmx127] .zmx-global-audience-selector--header-mobile { background:#f0e5ce !important; }
  body[data-zmx127] .zmx-global-audience-selector--header-mobile a:not([aria-current="page"]) { background:transparent !important; color:#173f34 !important; }
}
body[data-zmx127] .zmx127-sibling-nav {
  display:block;
  position:relative;
  z-index:2;
  padding:8px 20px;
  background:linear-gradient(110deg,#e8eee5 0%,#f1e6ce 100%);
  border-bottom:1px solid rgba(16,41,37,.13);
  box-shadow:0 8px 24px rgba(13,48,43,.045);
}
body[data-zmx127] .zmx127-sibling-nav__inner {
  display:flex;
  align-items:center;
  gap:16px;
  max-width:1240px;
  margin-inline:auto;
}
body[data-zmx127] .zmx127-sibling-links {
  display:flex;
  flex:1;
  justify-content:flex-end;
  gap:7px;
  min-width:0;
}
body[data-zmx127] .zmx127-sibling-nav a {
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  min-width:0;
  box-sizing:border-box;
  padding:9px 14px;
  border:1px solid rgba(16,41,37,.14);
  border-radius:999px;
  background:#f6f1e7;
  color:#294d42;
  font:800 .79rem/1.25 Inter,ui-sans-serif,system-ui,sans-serif;
  text-align:center;
  text-decoration:none;
}
body[data-zmx127] .zmx127-sibling-nav .zmx127-sibling-overview {
  color:#1f6657;
  background:#fff5df;
  border-color:#d1bd94;
}
body[data-zmx127] .zmx127-sibling-nav a[aria-current="page"] {
  color:#133f32;
  background:#efdcae;
  border-color:#bd9853;
  box-shadow:0 4px 12px rgba(121,91,31,.09);
}
body[data-zmx127] .zmx127-sibling-nav a[aria-current="page"]::after {
  content:"";
  position:absolute;
  bottom:5px;
  left:20px;
  right:20px;
  height:2px;
  background:currentColor;
  opacity:.55;
}
body[data-zmx127] .zmx127-sibling-nav a:hover { border-color:#8a9e82; background:#e9efdf; }
body[data-zmx127] .zmx127-sibling-nav a:focus-visible { outline:3px solid #b18b3f; outline-offset:3px; }

/* Resources' legacy footer rule must not style the footer inside a review card.
   The accepted .110 client renders cream cards, not the older .109 dark cards. */
body[data-zmx127] .zmx109-review-card > footer {
  display:grid !important;
  gap:.55rem;
  width:auto !important;
  min-height:0 !important;
  margin:1.35rem 0 0 !important;
  padding:1rem 0 0 !important;
  border:0 !important;
  border-top:1px solid rgba(32,60,52,.2) !important;
  border-radius:0 !important;
  background:transparent !important;
  background-image:none !important;
  box-shadow:none !important;
  color:#153f34 !important;
}
body[data-zmx127] .zmx109-review-card > footer cite {
  color:#153f34 !important;
  font-size:.86rem;
  font-style:normal;
  font-weight:900;
}
body[data-zmx127] .zmx109-review-card > footer .zmx109-review-source {
  display:inline-flex !important;
  align-items:center;
  gap:.48rem;
  width:fit-content;
  max-width:100%;
  margin:0 !important;
  color:#365d4f !important;
  font-size:.7rem !important;
  line-height:1.4;
}
body[data-zmx127] .zmx109-review-card > footer .zmx109-review-source:hover,
body[data-zmx127] .zmx109-review-card > footer .zmx109-review-source:focus-visible { color:#143f34 !important; text-decoration:underline; }
body[data-zmx127] .zmx109-review-card > footer .zmx127-review-excerpt-label {
  display:block;
  color:#4b695e;
  font-size:.7rem;
  font-weight:650;
  line-height:1.4;
}

@media(max-width:1040px) {
  body[data-zmx127] .zmx127-sibling-nav { padding:6px 14px 9px; }
  body[data-zmx127] .zmx127-sibling-nav__inner { display:grid; gap:4px; }
  body[data-zmx127] .zmx127-sibling-nav .zmx127-sibling-overview { justify-self:center; padding:6px 20px; margin-bottom:4px; }
  body[data-zmx127] .zmx127-sibling-links { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:6px; }
  body[data-zmx127] .zmx127-sibling-nav[data-zmx127-sibling-count="4"] .zmx127-sibling-links { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body[data-zmx127] .zmx127-sibling-links a { padding:8px 7px; font-size:.74rem; white-space:normal; }
}
@media(max-width:820px) {
  /* Reduce empty header space, not the menu/audience touch targets. */
  body[data-zmx127]:not(.zmx107-header-compact) .zmx-global-header__inner { min-height:64px !important; padding-block:2px !important; }
  body[data-zmx127]:not(.zmx107-header-compact) .zmx-global-header .zmx-global-brand img { max-height:44px !important; }
  body[data-zmx127] .zmx-global-header .zmx-global-brand,
  body[data-zmx127] .zmx-global-header .zmx-global-menu { min-height:44px !important; }
  body[data-zmx127] .zmx-global-audience-selector--header-mobile { margin:0 auto 6px !important; }
  body[data-zmx127] .zmx-global-audience-selector--header-mobile a { min-height:44px !important; }
}
