/* Shared brand surfaces: charcoal for technical work, ivory for reading. */
:root {
  --sr-night: #101722;
  --sr-on-night: #f7f6f2;
  --sr-night-muted: #b7c2d3;
  --sr-night-accent: #a4b6ff;
}
.studio-page { -webkit-font-smoothing: antialiased; }
/* The document's scroll-padding already reserves the fixed header height. */
.studio-page main [id] { scroll-margin-top: 0; }
.studio-page :is(.sr-button,.btn-primary,.btn-dark,.btn-light,.btn-ghost,.btn-outline,.btn-sector-ghost) { border-radius: 6px; }
.studio-page :is(.track-record,.rh-feature,.closing-cta,.assurance-pack-section,.evidence-travels-section,.insight-post-cta,.public-sector-hero) { background: var(--sr-night); }
.home-page #contact.sr-contact { background: var(--sr-night); }
.studio-page .track-record { font-family: var(--sr-sans); }
.studio-page .track-record-header h2 { font-family: var(--sr-sans); font-weight: 500; letter-spacing: -.045em; }
.studio-page :is(.rh-feature,.closing-cta,.assurance-pack-section,.evidence-travels-section,.insight-post-cta,.public-sector-hero,.sr-contact) :where(a,button):focus-visible { outline-color: #c4d0ff; }
.studio-interior.glm-page { --glm-navy: var(--sr-night); }
.studio-interior.glm-page .glm-shell,
.studio-interior.glm-page .breadcrumb,
.studio-interior .gov-flow { background: var(--sr-night); }
.studio-interior .gov-flow { border-color: var(--sr-night); }

/* Expertise carries the opening's technical character into the service detail. */
.services-page .breadcrumb,
.services-page .page-hero { background: var(--sr-night); border-color: #344154; color: var(--sr-on-night); }
.services-page .breadcrumb a,
.services-page .breadcrumb li { color: var(--sr-night-muted); }
.services-page .breadcrumb a:hover { color: var(--sr-on-night); }
.services-page .page-hero h1 { color: var(--sr-on-night); }
.services-page .page-hero .section-num { color: var(--sr-night-accent); }
.services-page .page-hero .hero-sub { color: var(--sr-night-muted); }
.services-page .page-hero .btn-primary { background: var(--sr-on-night); border-color: var(--sr-on-night); color: var(--sr-night); }
.services-page .page-hero .btn-primary:hover { background: #dfe6ff; border-color: #dfe6ff; }
.services-page .page-hero .btn-ghost { background: transparent; color: var(--sr-on-night); border-color: #718097; }
.services-page .page-hero .btn-ghost:hover { background: #ffffff0d; border-color: var(--sr-on-night); }
.services-page :is(.breadcrumb,.page-hero) a:focus-visible { outline-color: #c4d0ff; }
