/* Police section styles. Loaded after global.css and reuses its variables. */
.police-subnav { background: var(--paper, #FBF9F1); border-bottom: 1px solid var(--line, #DDD6BE); }
.police-subnav .wrap { display: flex; gap: 6px; overflow-x: auto; padding-top: 10px; padding-bottom: 10px; }
.police-subnav a {
  white-space: nowrap; text-decoration: none; font-size: 14px; padding: 8px 14px;
  border-radius: 20px; color: var(--pine, #1F3A2B); border: 1px solid transparent;
}
.police-subnav a:hover { border-color: var(--line, #DDD6BE); }
.police-subnav a.active { background: var(--pine, #1F3A2B); color: var(--paper, #FBF9F1); }

.emergency-strip { background: var(--clay, #A8532F); color: #fff; font-size: 14.5px; }
.emergency-strip .wrap { padding-top: 10px; padding-bottom: 10px; }
.emergency-strip a { color: #fff; font-weight: 600; text-decoration: underline; }

.card-link { text-decoration: none; display: block; color: inherit; }
.card-link .card:hover { border-color: var(--clay, #A8532F); box-shadow: 0 6px 18px rgba(0,0,0,0.06); }

.police-message p { max-width: 68ch; }
.police-signature { margin-top: 18px; }
.police-callout { border-left: 4px solid var(--clay, #A8532F); }
.police-contact-card p { line-height: 1.8; }
.police-list { margin: 8px 0 0; padding-left: 20px; line-height: 1.7; }
.police-list li { margin-bottom: 6px; }

.police-formwrap { max-width: 760px; }
.police-form { display: flex; flex-direction: column; gap: 16px; }
.police-form label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 500; }
.police-form input[type="text"], .police-form input[type="email"], .police-form input[type="tel"],
.police-form input[type="date"], .police-form textarea {
  font: inherit; font-size: 15px; padding: 11px 12px; border: 1px solid var(--line, #DDD6BE);
  border-radius: 8px; background: #fff; color: inherit;
}
.police-form input:focus, .police-form textarea:focus { outline: 2px solid var(--pine, #1F3A2B); outline-offset: 1px; }
.pf-row { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
@media (max-width: 640px) { .pf-row { grid-template-columns: 1fr; } }
.police-form .pf-check { flex-direction: row; align-items: center; gap: 10px; font-weight: 400; }
.pf-note { font-size: 13px; color: rgba(23, 38, 27, 0.6); margin: 0; }
.pf-status { min-height: 1.4em; margin: 0; font-size: 14.5px; }
.pf-status.ok { color: #2d6a3e; }
.pf-status.err { color: #a12a2a; }
.pf-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
