/* One shared geometry rule for the sidebar-free legacy family. */
body #content { width: auto; margin-right: 0; float: none; }
/* One crawlable service list, shared by every Services overview. */
#content .service-links { margin: 0 0 2rem; text-align: left; }
#content .service-links h2 { text-align: left; }
#content .service-links ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: 0 1.5rem; padding: 0; margin: 0; list-style: none; }
#content .service-links li { min-width: 0; margin: 0; }
#content .service-links a { display: block; padding: .65rem 0; min-height: 44px; box-sizing: border-box; overflow-wrap: anywhere; }
#content .service-links a:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
/* Preserve the previously hidden legacy slideshow placeholder. */
#content img[name="PictureBox"][src$="/slide/01.jpg"],
#content p:has(> img[name="PictureBox"][src$="/slide/01.jpg"]) { display:none; }
/* One footer component; legacy footer paragraph/link rules do not own its layout. */
body #footer.site-footer { box-sizing:border-box; width:100%; max-width:none; margin:0; padding:2rem 1rem; background:#143d56; color:#fff; text-align:left; }
body #footer.site-footer .site-footer__inner { max-width:1168px; margin:0 auto; display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); gap:1.5rem 3rem; }
body #footer.site-footer p { margin:0 0 .75rem; padding:0; border:0; font-size:1rem; line-height:1.6; text-align:left; overflow-wrap:anywhere; }
body #footer.site-footer .site-footer__identity, body #footer.site-footer .site-footer__heading { font-weight:700; }
body #footer.site-footer a { color:#fff; overflow-wrap:anywhere; }
body #footer.site-footer a:focus-visible { outline:3px solid #fff; outline-offset:4px; }
body #footer.site-footer .site-footer__call { display:inline-block; box-sizing:border-box; min-height:44px; padding:.7rem 1.2rem; margin:.25rem .75rem .5rem 0; border:1px solid #a9c4d4; border-radius:4px; background:#245c78; color:#fff; font-weight:700; text-decoration:none; }
body #footer.site-footer .site-footer__call:hover { background:#316d8b; }
body #footer.site-footer .site-footer__secondary { display:inline-block; min-height:44px; padding:.7rem .5rem; box-sizing:border-box; }
body #footer.site-footer ul { display:flex; flex-wrap:wrap; gap:0 1.5rem; padding:0; margin:0; list-style:none; }
body #footer.site-footer li { padding:0; margin:0; background:none; }
body #footer.site-footer nav a { display:block; min-height:44px; padding:.6rem 0; box-sizing:border-box; }
body #footer.site-footer .site-footer__legal { grid-column:1/-1; margin:0; padding-top:1rem; border-top:1px solid #7694a6; font-size:.875rem; }
@media(max-width:600px) { body #footer.site-footer .site-footer__inner { grid-template-columns:minmax(0,1fr); gap:1.25rem; } }

/* Main-body polish: one identical overlay for every YAML site. */
body #content > p:not([style]):not(:has(img, iframe, video, input, button, select, textarea)) {
  font-size: 1rem;
  line-height: 1.65;
}
body #content .service-design .service-design__card:focus-within { background-color: #f5f9fa; }
@media (hover: hover) and (pointer: fine) {
  body #content .service-design .service-design__card:hover { background-color: #f5f9fa; }
}
