/* PMC Companion Toolkit — shared assets. Fonts self-hosted (no third-party calls). */
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/archivo-500.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/archivo-700.woff2') format('woff2')}
@font-face{font-family:'Archivo';font-style:normal;font-weight:900;font-display:swap;src:url('fonts/archivo-900.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/ibm-plex-mono-400.woff2') format('woff2')}
@font-face{font-family:'IBM Plex Mono';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/ibm-plex-mono-600.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/inter-400.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/inter-500.woff2') format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/inter-600.woff2') format('woff2')}

/* ---- Accessibility ---- */
:focus-visible{outline:3px solid #c0392b;outline-offset:2px;border-radius:3px}
.pmc-skip{position:fixed;left:8px;top:-60px;z-index:10000;background:#141210;color:#fff;padding:10px 16px;border-radius:8px;font:600 14px/1 system-ui,sans-serif;text-decoration:none;transition:top .15s}
.pmc-skip:focus{top:8px}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}

/* ---- Quick exit (safety) ---- */
.pmc-exit{position:fixed;top:12px;right:12px;z-index:10000;background:#c0392b;color:#fff;border:none;border-radius:8px;padding:9px 14px;font:600 13px/1 'IBM Plex Mono',ui-monospace,monospace;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.25)}
.pmc-exit:hover{background:#a93226}
.pmc-exit:focus-visible{outline:3px solid #141210;outline-offset:2px}
@media print{.pmc-exit,.pmc-skip{display:none}}

/* ---- Video cards (link-out only; no third-party thumbnails = no external calls) ---- */
.pmc-videos{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px}
.pmc-vcard{display:flex;flex-direction:column;background:#fff;border:1px solid #e5ded4;border-radius:12px;overflow:hidden;text-decoration:none;color:inherit;transition:transform .15s,border-color .15s,box-shadow .15s}
.pmc-vcard:hover{border-color:#c0392b;transform:translateY(-2px);box-shadow:0 10px 26px rgba(0,0,0,.08)}
.pmc-vthumb{position:relative;aspect-ratio:16/9;background:linear-gradient(135deg,#241a17,#3a2a24);display:flex;align-items:center;justify-content:center}
.pmc-vthumb[data-cat="online"]{background:linear-gradient(135deg,#7a1f2b,#c0392b)}
.pmc-vthumb[data-cat="trafficking"]{background:linear-gradient(135deg,#41506b,#2d3a52)}
.pmc-vthumb[data-cat="home"]{background:linear-gradient(135deg,#1f7a4d,#2e6d4a)}
.pmc-vthumb[data-cat="report"]{background:linear-gradient(135deg,#b06a00,#8a5300)}
.pmc-vthumb[data-cat="recovery"]{background:linear-gradient(135deg,#514a63,#3a3547)}
.pmc-vthumb[data-cat="howto"]{background:linear-gradient(135deg,#334155,#1e293b)}
.pmc-play{width:46px;height:46px;border-radius:50%;background:rgba(255,255,255,.94);display:flex;align-items:center;justify-content:center;color:#c0392b;font-size:17px;padding-left:3px;box-shadow:0 3px 10px rgba(0,0,0,.25)}
.pmc-vcard:hover .pmc-play{background:#fff}
.pmc-vtag{position:absolute;top:8px;left:8px;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#fff;background:rgba(0,0,0,.42);padding:2px 7px;border-radius:5px}
.pmc-vbody{padding:13px 15px 15px;display:flex;flex-direction:column;flex:1}
.pmc-vtitle{font-family:'Archivo',sans-serif;font-weight:800;font-size:15px;line-height:1.25;margin-bottom:6px}
.pmc-vdesc{font-size:12.5px;color:#5a5248;line-height:1.45;margin-bottom:12px}
.pmc-vsrc{margin-top:auto;font-family:'IBM Plex Mono',ui-monospace,monospace;font-size:11px;color:#c0392b;font-weight:600;text-transform:uppercase;letter-spacing:.04em}

/* Oswald (hub display) */
@font-face{font-family:'Oswald';font-style:normal;font-weight:300;font-display:swap;src:url('fonts/oswald-300.woff2') format('woff2')}
@font-face{font-family:'Oswald';font-style:normal;font-weight:400;font-display:swap;src:url('fonts/oswald-400.woff2') format('woff2')}
@font-face{font-family:'Oswald';font-style:normal;font-weight:500;font-display:swap;src:url('fonts/oswald-500.woff2') format('woff2')}
@font-face{font-family:'Oswald';font-style:normal;font-weight:600;font-display:swap;src:url('fonts/oswald-600.woff2') format('woff2')}
@font-face{font-family:'Oswald';font-style:normal;font-weight:700;font-display:swap;src:url('fonts/oswald-700.woff2') format('woff2')}
