/* Preserve the template layout while accommodating the authority's longer name. */
@media (min-width: 761px) {
  html[lang="en"] body .cm-header .cm-brand { flex: 0 1 410px; }
  html[lang="en"] body .cm-header .cm-brand__text strong { font-size: 18px; line-height: 1.25; }
}
@media (max-width: 760px) {
  html body .ong-hero__image[src$="hero-services.png"] { object-position: 75% 20%; }
  html body .cm-header .cm-brand { flex: 1 1 auto; min-width: 0; max-width: calc(100% - 56px); gap: 10px; }
  html body .cm-header .cm-brand__logo { flex: 0 0 42px; width: 42px; height: 42px; }
  html body .cm-header .cm-brand__text { min-width: 0; flex: 1; }
  html body .cm-header .cm-brand__text strong { white-space: normal; font-size: 16px; line-height: 1.35; overflow-wrap: anywhere; }
  html body .cm-header .cm-brand__text small { white-space: normal; line-height: 1.5; font-size: 8px; letter-spacing: 0; }
  html body .cm-header__row { height: auto; min-height: 80px; padding-block: 9px; gap: 12px; }
  html body .cm-mobile-toggle { flex: 0 0 42px; }
}
/* Offline camera status remains readable on the dark player surface. */
html body #cctvSection .absolute.inset-0.flex.flex-col.items-center.justify-center,
html body #cctvSection .absolute.inset-0.flex.flex-col.items-center.justify-center :is(span,i,svg) {
  color: #e2e8f0 !important;
  -webkit-text-fill-color: #e2e8f0 !important;
}

/* Keep the complete hotline number visible in every footer column. */
footer a[href^="tel:"] p.whitespace-nowrap { font-size:20px !important; letter-spacing:0 !important; }

.rating-choice { border:0; background:transparent; border-radius:6px; }
.rating-choice:focus-visible { outline:2px solid var(--site-accent,#287eaa); outline-offset:2px; }
@media(max-width:480px) { #systemsSection h3 { display:block !important; } #systemsSection h3 span { display:inline; } }
