/* HMNPblock checker page. Base styles copied from technologies.html (no inline
   styles: the page CSP allows only this file and the checker's hashed shadow style). */
:root {
  --ink: #050607; --panel: #101419; --steel: #cbd0d5; --steel-bright: #f4f6f7; --muted: #929aa3;
  --cyan: #00c7f2; --cyan-bright: #33ddff; --line: rgba(203, 208, 213, .15); --line-cyan: rgba(0, 199, 242, .34);
  --display: "Barlow Condensed", sans-serif; --body: "Barlow", sans-serif; --max: 1180px;
}
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; color: var(--steel); background: var(--ink); font-family: var(--body); font-size: 16px; line-height: 1.55; overflow-x: hidden; }
body::before { content: ""; position: fixed; inset: 0; z-index: -2;
  background: radial-gradient(circle at 70% 3%, rgba(0,199,242,.08), transparent 26rem),
    linear-gradient(135deg, transparent 0 49.8%, rgba(255,255,255,.018) 50%, transparent 50.2%), var(--ink);
  background-size: auto, 46px 46px, auto; }
a { color: inherit; }
.skip-link { position: fixed; left: 1rem; top: -4rem; z-index: 999; background: var(--cyan); color: #001219; padding: .7rem 1rem; font-weight: 700; }
.skip-link:focus { top: 1rem; }
.shell { width: min(calc(100% - 40px), var(--max)); margin-inline: auto; }
.eyebrow { display: inline-flex; align-items: center; gap: .65rem; margin: 0 0 1rem; color: var(--cyan-bright); font: 700 .78rem/1 var(--display); letter-spacing: .19em; text-transform: uppercase; }
.eyebrow::before { content: ""; width: 24px; height: 2px; background: var(--cyan); box-shadow: 0 0 12px var(--cyan); }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-family: var(--display); }
h1 { margin-bottom: 1rem; color: var(--steel-bright); font-size: clamp(2.6rem, 5.8vw, 5.4rem); line-height: .94; letter-spacing: -.035em; }
.section-copy { max-width: 590px; color: var(--muted); font-size: 1.05rem; }
.site-header { position: sticky; top: 0; z-index: 100; border-bottom: 1px solid rgba(255,255,255,.08); background: rgba(5,6,7,.88); backdrop-filter: blur(18px); }
.nav { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.brand { display: flex; align-items: center; gap: .8rem; text-decoration: none; }
.brand-mark { width: 92px; height: 46px; overflow: hidden; background: #020303; border-radius: 12px; }
.brand-mark img { display: block; width: 142%; height: 142%; margin: -10% 0 0 -21%; object-fit: cover; }
.brand-name { color: var(--steel-bright); font: 800 1.08rem/1 var(--display); letter-spacing: .11em; text-transform: uppercase; }
.brand-name span { display: block; margin-top: .25rem; color: var(--muted); font-size: .68rem; font-weight: 500; letter-spacing: .18em; }
.site-footer { border-top: 1px solid var(--line); padding: 2.2rem 0; }
.footer-row { display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.footer-brand { color: var(--steel-bright); font: 800 1rem/1 var(--display); letter-spacing: .12em; text-transform: uppercase; }
.footer-brand span { color: var(--cyan); }
.footer-links { display: flex; flex-wrap: wrap; justify-content: flex-end; gap: 1.2rem; }
.footer-links a, .copyright { color: var(--muted); font-size: .8rem; text-decoration: none; }
.footer-links a:hover { color: var(--cyan-bright); }
.page-intro { padding: clamp(4rem, 8vw, 7rem) 0 2.4rem; }
@media (max-width: 620px) {
  .shell { width: min(calc(100% - 28px), var(--max)); }
  .nav { min-height: 68px; }
  .brand-mark { width: 70px; height: 38px; }
  .brand-name { font-size: .92rem; }
  .footer-row { align-items: flex-start; flex-direction: column; }
  .footer-links { justify-content: flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { transition-duration: .01ms !important; }
}
.page-intro .section-copy + .section-copy { margin-top: -.2rem; }
.hmnp-notice { max-width: 590px; margin: 0 0 1.2rem; padding: .8rem 1rem; border: 1px solid var(--line-cyan); border-radius: 12px; color: var(--steel-bright); font-weight: 500; }
.back-link { color: var(--cyan-bright); font-weight: 600; text-decoration: none; }
.back-link:hover { text-decoration: underline; }
.checker-section { padding-bottom: clamp(4rem, 8vw, 7rem); }
hmnpblock-checker { margin-inline: auto; }
hmnpblock-checker:not(:defined) { display: none; }
.checker-noscript { color: var(--muted); }
