/* ============================================================
   Phosphor Icons 2.1.2 — regular / bold / fill
   Self-hosted and tree-shaken to the icons this site uses
   (localized by 20_performance_sweep; re-run the sweep after
   adding an icon — unlisted glyphs render as nothing)
   ============================================================ */
/* regular */
@font-face {
  font-family: "Phosphor";
  src: url('/fonts/Phosphor.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.ph {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "Phosphor" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Enable Ligatures ================ */
  letter-spacing: 0;
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga=1";
  -moz-font-feature-settings: "liga";
  -ms-font-feature-settings: "liga" 1;
  font-feature-settings: "liga";
  -webkit-font-variant-ligatures: discretionary-ligatures;
  font-variant-ligatures: discretionary-ligatures;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.ph.ph-arrow-right:before { content: "\e06c"; }
.ph.ph-arrows-clockwise:before { content: "\e094"; }
.ph.ph-bank:before { content: "\e0b4"; }
.ph.ph-calculator:before { content: "\e538"; }
.ph.ph-calendar-blank:before { content: "\e10a"; }
.ph.ph-caret-left:before { content: "\e138"; }
.ph.ph-caret-right:before { content: "\e13a"; }
.ph.ph-certificate:before { content: "\e766"; }
.ph.ph-check:before { content: "\e182"; }
.ph.ph-clipboard-text:before { content: "\e198"; }
.ph.ph-compass:before { content: "\e1c8"; }
.ph.ph-file-text:before { content: "\e23a"; }
.ph.ph-graduation-cap:before { content: "\e62c"; }
.ph.ph-handshake:before { content: "\e582"; }
.ph.ph-hard-hat:before { content: "\ed46"; }
.ph.ph-key:before { content: "\e2d6"; }
.ph.ph-list:before { content: "\e2f0"; }
.ph.ph-magnifying-glass:before { content: "\e30c"; }
.ph.ph-map-pin:before { content: "\e316"; }
.ph.ph-medal:before { content: "\e320"; }
.ph.ph-paper-plane-right:before { content: "\e396"; }
.ph.ph-percent:before { content: "\e3b6"; }
.ph.ph-seal-check:before { content: "\e606"; }
.ph.ph-shield-check:before { content: "\e40c"; }
.ph.ph-stairs:before { content: "\e8ec"; }
.ph.ph-user:before { content: "\e4c2"; }
.ph.ph-x:before { content: "\e4f6"; }

/* bold */
@font-face {
  font-family: "Phosphor-Bold";
  src: url('/fonts/Phosphor-Bold.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.ph-bold {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "Phosphor-Bold" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Enable Ligatures ================ */
  letter-spacing: 0;
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga=1";
  -moz-font-feature-settings: "liga";
  -ms-font-feature-settings: "liga" 1;
  font-feature-settings: "liga";
  -webkit-font-variant-ligatures: discretionary-ligatures;
  font-variant-ligatures: discretionary-ligatures;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.ph-bold.ph-arrow-right:before { content: "\e06c"; }
.ph-bold.ph-arrows-clockwise:before { content: "\e094"; }
.ph-bold.ph-bank:before { content: "\e0b4"; }
.ph-bold.ph-calculator:before { content: "\e538"; }
.ph-bold.ph-calendar-blank:before { content: "\e10a"; }
.ph-bold.ph-caret-left:before { content: "\e138"; }
.ph-bold.ph-caret-right:before { content: "\e13a"; }
.ph-bold.ph-certificate:before { content: "\e766"; }
.ph-bold.ph-check:before { content: "\e182"; }
.ph-bold.ph-clipboard-text:before { content: "\e198"; }
.ph-bold.ph-compass:before { content: "\e1c8"; }
.ph-bold.ph-file-text:before { content: "\e23a"; }
.ph-bold.ph-graduation-cap:before { content: "\e62c"; }
.ph-bold.ph-handshake:before { content: "\e582"; }
.ph-bold.ph-hard-hat:before { content: "\ed46"; }
.ph-bold.ph-key:before { content: "\e2d6"; }
.ph-bold.ph-list:before { content: "\e2f0"; }
.ph-bold.ph-magnifying-glass:before { content: "\e30c"; }
.ph-bold.ph-map-pin:before { content: "\e316"; }
.ph-bold.ph-medal:before { content: "\e320"; }
.ph-bold.ph-paper-plane-right:before { content: "\e396"; }
.ph-bold.ph-percent:before { content: "\e3b6"; }
.ph-bold.ph-seal-check:before { content: "\e606"; }
.ph-bold.ph-shield-check:before { content: "\e40c"; }
.ph-bold.ph-stairs:before { content: "\e8ec"; }
.ph-bold.ph-user:before { content: "\e4c2"; }
.ph-bold.ph-x:before { content: "\e4f6"; }

/* fill */
@font-face {
  font-family: "Phosphor-Fill";
  src: url('/fonts/Phosphor-Fill.woff2') format('woff2');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
.ph-fill {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: "Phosphor-Fill" !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Enable Ligatures ================ */
  letter-spacing: 0;
  -webkit-font-feature-settings: "liga";
  -moz-font-feature-settings: "liga=1";
  -moz-font-feature-settings: "liga";
  -ms-font-feature-settings: "liga" 1;
  font-feature-settings: "liga";
  -webkit-font-variant-ligatures: discretionary-ligatures;
  font-variant-ligatures: discretionary-ligatures;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.ph-fill.ph-arrow-right:before { content: "\e06c"; }
.ph-fill.ph-arrows-clockwise:before { content: "\e094"; }
.ph-fill.ph-bank:before { content: "\e0b4"; }
.ph-fill.ph-calculator:before { content: "\e538"; }
.ph-fill.ph-calendar-blank:before { content: "\e10a"; }
.ph-fill.ph-caret-left:before { content: "\e138"; }
.ph-fill.ph-caret-right:before { content: "\e13a"; }
.ph-fill.ph-certificate:before { content: "\e766"; }
.ph-fill.ph-check:before { content: "\e182"; }
.ph-fill.ph-clipboard-text:before { content: "\e198"; }
.ph-fill.ph-compass:before { content: "\e1c8"; }
.ph-fill.ph-file-text:before { content: "\e23a"; }
.ph-fill.ph-graduation-cap:before { content: "\e62c"; }
.ph-fill.ph-handshake:before { content: "\e582"; }
.ph-fill.ph-hard-hat:before { content: "\ed46"; }
.ph-fill.ph-key:before { content: "\e2d6"; }
.ph-fill.ph-list:before { content: "\e2f0"; }
.ph-fill.ph-magnifying-glass:before { content: "\e30c"; }
.ph-fill.ph-map-pin:before { content: "\e316"; }
.ph-fill.ph-medal:before { content: "\e320"; }
.ph-fill.ph-paper-plane-right:before { content: "\e396"; }
.ph-fill.ph-percent:before { content: "\e3b6"; }
.ph-fill.ph-seal-check:before { content: "\e606"; }
.ph-fill.ph-shield-check:before { content: "\e40c"; }
.ph-fill.ph-stairs:before { content: "\e8ec"; }
.ph-fill.ph-user:before { content: "\e4c2"; }
.ph-fill.ph-x:before { content: "\e4f6"; }

/* Skip navigation link — WCAG 2.4.1 (managed by fix_ada_safe.py) */
.skip-link {
  position: absolute;
  left: -9999px;
  top: 0;
  z-index: 1000;
  padding: 0.75rem 1.25rem;
  background: var(--color-surface, #ffffff);
  color: var(--color-accent, #005fcc);
  font-weight: 600;
  text-decoration: none;
  border: 2px solid var(--color-accent, #005fcc);
  border-radius: 0 0 4px 0;
}
.skip-link:focus {
  left: 0;
}
