/* Additive styles; existing brand, mobile menu and Québec watermark remain intact. */
.audit-filters-toggle { display:none; }
.audit-results-ready #server-job-fallback { display:none; }
html:not(.audit-results-ready) .home-page #audit-filters-body,html:not(.audit-results-ready) .home-page .audit-sort,html:not(.audit-results-ready) .home-page .map-panel { display:none; }
html:not(.audit-results-ready) .home-page .layout { grid-template-columns:minmax(0,1fr); }
html:not(.audit-results-ready) .home-page .list-body { height:auto; max-height:none; }
#server-job-fallback label { display:block; margin:10px 0; }
#server-job-fallback input:not([type=checkbox]),#server-job-fallback select { width:100%; min-height:44px; }
#audit-filters-body { width:100%; min-width:0; }
.audit-extra-filters { display:grid; gap:6px; padding-top:12px; }
.audit-extra-filters label,.audit-sort span { font-size:.82rem; font-weight:600; color:var(--primary); }
.audit-sort { display:flex; gap:12px; align-items:center; padding:10px 14px; border-bottom:1px solid var(--border); }
.audit-sort select { max-width:100%; min-height:44px; border:1px solid var(--border); border-radius:8px; padding:8px; color:var(--primary); background:#fff; }
.audit-load-more { display:block; margin:12px auto; min-height:44px; }
.tag-deadline-soon { color:#713c08; background:#fff3df; border:1px solid #deaa64; }
.tag-deadline { color:#334c65; background:#edf2f8; }
.landing-title .tag-deadline,.landing-title .tag-deadline-soon { font-size:12px; line-height:1.45; min-height:22px; height:auto; letter-spacing:normal; vertical-align:middle; }
.audit-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:12px; margin-top:18px; }
.audit-facts > div { border:1px solid var(--border); border-radius:12px; padding:14px; background:#f8fbfc; min-width:0; }
.audit-facts dt { font-size:.78rem; color:#536880; margin-bottom:6px; }
.audit-facts dd { margin:0; font-weight:600; overflow-wrap:anywhere; }
.audit-source { font-size:.8rem; color:#536880; }
.audit-panel { border:1px solid var(--border); border-left:4px solid var(--accent); border-radius:14px; padding:20px; margin:18px 0; background:#fff; }
.audit-panel h2,.audit-panel h3 { margin-top:0; }
.audit-panel li { margin:8px 0; }
.search-alert-extra { display:grid; gap:9px; }
.alert-preview { padding:16px; border:1px solid var(--border); border-radius:12px; background:#f2f8f8; margin:18px 0; }
.audit-form-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:18px; }
.audit-form-grid label { display:block; font-weight:600; margin-bottom:6px; }
.audit-form-grid input,.audit-form-grid select,.audit-form-grid textarea { width:100%; max-width:100%; font:inherit; padding:10px; border:1px solid var(--border); border-radius:8px; }
.audit-form-grid textarea { min-height:100px; }
.audit-table-wrap { overflow-x:auto; }
.audit-table { width:100%; border-collapse:collapse; }
.audit-table th,.audit-table td { text-align:left; vertical-align:top; border-bottom:1px solid var(--border); padding:10px; }
.audit-table caption { text-align:left; font-weight:600; padding:12px 0; }
.audit-status { display:inline-block; padding:4px 9px; border-radius:20px; background:#e4f4f2; color:#006568; font-size:.78rem; }
.audit-status-warning { background:#fff2df; color:#713c08; }
.audit-career-profile { display:grid; gap:12px; }
.audit-bilingual-note { color:#536880; font-size:.85rem; }
.audit-panel :focus-visible,.audit-sort select:focus-visible,.audit-form-grid :focus-visible { outline:3px solid #007c80; outline-offset:3px; }
@media (min-width:1280px) {
 .home-workspace { max-width:1800px; grid-template-columns:280px minmax(0,1fr); align-items:stretch; }
 .home-results { display:flex; flex-direction:column; min-width:0; }
 .home-workspace .layout { width:100%; flex:1; grid-template-columns:minmax(0,1fr) clamp(320px,23vw,380px); align-items:stretch; }
 .home-workspace .map-panel { height:auto; min-height:560px; }
 .home-workspace .list-panel { height:auto; min-height:0; max-height:none; }
 .home-workspace .list-body { height:0; min-height:0; flex:1 1 auto; max-height:none; }
 .home-workspace .layout.is-list-view { grid-template-columns:minmax(0,1fr); }
 .home-workspace .layout.is-list-view .list-body { height:auto; }
}
@media (max-width:900px) {
 .audit-enhanced .audit-filters-toggle { display:inline-flex; align-items:center; gap:8px; min-height:44px; width:100%; }
 .audit-enhanced #audit-filters-body:not(.is-filters-open) { display:none; }
 .home-page .layout { display:flex; flex-direction:column; }
 .home-page .layout .list-panel { order:0; }
 .home-page .layout .map-panel { order:1; height:240px; min-height:240px; max-height:240px; display:none; }
 .home-page .layout.audit-map-open .map-panel { display:block; order:-1; }
 .home-page .layout .list-body { height:auto; max-height:none; }
 .home-page .layout .list-panel { max-height:none; }
 .home-hero .wrap { padding-top:18px; padding-bottom:18px; }
 .home-hero .home-paths { grid-template-columns:1fr; gap:6px; }
 .home-hero .home-path { padding:10px 12px; border-radius:10px; grid-template-rows:auto; min-height:44px; }
 .home-hero .home-path-icon { width:28px; height:30px; grid-row:1; }
 .home-hero .home-path > span:not([class]) { display:none; }
 .home-hero .home-path strong { font-size:.9rem; }
 .home-hero-search { margin-bottom:12px; }
 .home-description { font-size:.85rem; line-height:1.5; margin-bottom:12px; }
 .home-filters { padding:12px; }
 .home-filters .chip { min-height:44px; }
 .home-offers-heading p { font-size:.82rem; }
 .audit-facts { grid-template-columns:1fr; }
 .audit-sort { flex-wrap:wrap; }
 .audit-sort select { width:100%; }
 .audit-panel { padding:16px; }
}
@media (prefers-reduced-motion:reduce) { .home-page * { scroll-behavior:auto !important; } }
