/* CHANGE LOG
   File: static/css/state_updates.css
   Purpose: Styles for the state update articles (/peo/state-updates/...) and the PEO contact forms they share
            with the PEO page (the .peo-cta form and the .peo-rr risk-review accordion).
   2026-10-16 - a.peo-rr__book: its own class for the report's booking button (white on blue). Placed after the
                .state-update link rule so it wins; replaces a contextual override (Michael: one class, no fiddling).
   2026-10-16 - Risk-review form on the PEO page: radio groups (.peo-rr__choices) and a larger accordion heading,
                same colors as the .peo-cta form.
   2026-09-13 - Readable state reports within the shared site shell. */
.state-update { max-width: 860px; margin: 0 auto; padding: 28px 24px 48px; color: #172b40; font-size: 1.0625rem; line-height: 1.75; }
.state-update header { border-bottom: 3px solid #315f82; padding-bottom: 20px; margin-bottom: 26px; }
.state-update h1 { font-size: clamp(1.8rem, 3vw, 2.6rem); line-height: 1.2; color: #132d46; }
.state-update h2 { font-size: 1.4rem; line-height: 1.35; margin-top: 32px; color: #132d46; }
.state-update a { color: #155681; text-decoration: underline; overflow-wrap: anywhere; }
.state-update__eyebrow { font-weight: 700; color: #315f82; }
.state-update__contact { border-top: 1px solid #b7c7d2; margin-top: 32px; }
@media (max-width: 600px) { .state-update { padding: 20px 14px 32px; } }

/* CHANGE LOG: 2026-09-16 — Discrete Paychex assessment CTA + inquiry form (Opus). */
.peo-cta { border-top: 1px solid #b7c7d2; margin-top: 32px; padding-top: 24px; }
.peo-cta h2 { margin-top: 0; }
.peo-cta__form { display: flex; flex-wrap: wrap; gap: 14px 18px; align-items: flex-end; margin: 20px 0 14px; }
.peo-cta__field { display: flex; flex-direction: column; font-weight: 600; color: #315f82; flex: 1 1 200px; gap: 6px; }
.peo-cta__field input { font: inherit; padding: 10px 12px; border: 1px solid #9db2c2; border-radius: 6px; color: #172b40; background: #fff; }
.peo-cta__field input:focus { outline: 2px solid #315f82; outline-offset: 1px; border-color: #315f82; }
.peo-cta__send { font: inherit; font-weight: 700; padding: 11px 30px; border: 0; border-radius: 6px; background: #315f82; color: #fff; cursor: pointer; flex: 0 0 auto; }
.peo-cta__send:hover { background: #244a67; }
.peo-cta__hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.peo-cta__micro { font-size: 0.95rem; color: #4a5f72; }
.peo-cta__disclose { font-size: 0.85rem; color: #6b7a89; }
.peo-cta__error { color: #9a2a1e; font-weight: 600; }
@media (max-width: 600px) { .peo-cta__form { flex-direction: column; align-items: stretch; gap: 12px; } .peo-cta__field { flex: 0 0 auto; } .peo-cta__send { width: 100%; } }

/* CHANGE LOG: 2026-09-17 — Comparison table styling for state reports (Florida driver-pay table first). */
.state-update__table { width: 100%; border-collapse: collapse; margin: 22px 0; font-size: 0.98rem; }
.state-update__table th, .state-update__table td { text-align: left; vertical-align: top; padding: 10px 14px; border-bottom: 1px solid #d3dde5; }
.state-update__table thead th { color: #132d46; border-bottom: 2px solid #315f82; }
.state-update__table tbody tr:last-child td { border-bottom: 1px solid #b7c7d2; }
@media (max-width: 600px) { .state-update__table { display: block; overflow-x: auto; } }
.peo-rr summary { font-size: 1.35rem; }
.peo-rr__form { align-items: stretch; }
.peo-rr__choices { flex: 1 1 100%; border: 1px solid #b7c7d2; border-radius: 6px; padding: 10px 14px 12px; margin: 0; display: flex; flex-wrap: wrap; gap: 8px 20px; }
.peo-rr__choices legend { font-weight: 600; color: #315f82; padding: 0 6px; }
.peo-rr__choices label { display: flex; align-items: center; gap: 6px; min-height: 44px; color: #172b40; }
.peo-rr__choices input { width: 18px; height: 18px; accent-color: #315f82; }
a.peo-rr__book { display: inline-block; font-weight: 700; padding: 11px 30px; border-radius: 6px; background: #315f82; color: #fff; text-decoration: none; }
a.peo-rr__book:hover, a.peo-rr__book:focus { background: #244a67; color: #fff; }
