/*!
 * Font Awesome Subset - Generated 2025-11-28 05:16:41
 * Based on Font Awesome 6 Free
 * Contains only icons used in this project (226 icons)
 * Full FA6: 2016 icons | Reduction: 88.8%
 * 
 * DO NOT EDIT - Regenerate with: php tools/fa-subset-generator.php
 */

@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../fa6/webfonts/fa-brands-400.woff2") format("woff2"), url("../fa6/webfonts/fa-brands-400.ttf") format("truetype"); }

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url("../fa6/webfonts/fa-regular-400.woff2") format("woff2"), url("../fa6/webfonts/fa-regular-400.ttf") format("truetype"); }

@font-face {
  font-family: 'Font Awesome 6 Free';
  font-style: normal;
  font-weight: 900;
  font-display: block;
  src: url("../fa6/webfonts/fa-solid-900.woff2") format("woff2"), url("../fa6/webfonts/fa-solid-900.ttf") format("truetype"); }

@font-face {
  font-family: 'Font Awesome 5 Brands';
  font-display: block;
  font-weight: 400;
  src: url("../fa6/webfonts/fa-brands-400.woff2") format("woff2"), url("../fa6/webfonts/fa-brands-400.ttf") format("truetype"); }

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-display: block;
  font-weight: 900;
  src: url("../fa6/webfonts/fa-solid-900.woff2") format("woff2"), url("../fa6/webfonts/fa-solid-900.ttf") format("truetype"); }

@font-face {
  font-family: 'Font Awesome 5 Free';
  font-display: block;
  font-weight: 400;
  src: url("../fa6/webfonts/fa-regular-400.woff2") format("woff2"), url("../fa6/webfonts/fa-regular-400.ttf") format("truetype"); }

@font-face {
  font-family: 'FontAwesome';
  font-display: block;
  src: url("../fa6/webfonts/fa-solid-900.woff2") format("woff2"), url("../fa6/webfonts/fa-solid-900.ttf") format("truetype"); }

@font-face {
  font-family: 'FontAwesome';
  font-display: block;
  src: url("../fa6/webfonts/fa-brands-400.woff2") format("woff2"), url("../fa6/webfonts/fa-brands-400.ttf") format("truetype"); }

@font-face {
  font-family: 'FontAwesome';
  font-display: block;
  src: url("../fa6/webfonts/fa-regular-400.woff2") format("woff2"), url("../fa6/webfonts/fa-regular-400.ttf") format("truetype");
  unicode-range: U+F003,U+F006,U+F014,U+F016-F017,U+F01A-F01B,U+F01D,U+F022,U+F03E,U+F044,U+F046,U+F05C-F05D,U+F06E,U+F070,U+F087-F088,U+F08A,U+F094,U+F096-F097,U+F09D,U+F0A0,U+F0A2,U+F0A4-F0A7,U+F0C5,U+F0C7,U+F0E5-F0E6,U+F0EB,U+F0F6-F0F8,U+F10C,U+F114-F115,U+F118-F11A,U+F11C-F11D,U+F133,U+F147,U+F14E,U+F150-F152,U+F185-F186,U+F18E,U+F190-F192,U+F196,U+F1C1-F1C9,U+F1D9,U+F1DB,U+F1E3,U+F1EA,U+F1F7,U+F1F9,U+F20A,U+F247-F248,U+F24A,U+F24D,U+F255-F25B,U+F25D,U+F271-F274,U+F278,U+F27B,U+F28C,U+F28E,U+F29C,U+F2B5,U+F2B7,U+F2BA,U+F2BC,U+F2BE,U+F2C0-F2C1,U+F2C3,U+F2D0,U+F2D2,U+F2D4,U+F2DC; }

@font-face {
  font-family: 'FontAwesome';
  font-display: block;
  src: url("../fa6/webfonts/fa-v4compatibility.woff2") format("woff2"), url("../fa6/webfonts/fa-v4compatibility.ttf") format("truetype");
  unicode-range: U+F041,U+F047,U+F065-F066,U+F07D-F07E,U+F080,U+F08B,U+F08E,U+F090,U+F09A,U+F0AC,U+F0AE,U+F0B2,U+F0D0,U+F0D6,U+F0E4,U+F0EC,U+F10A-F10B,U+F123,U+F13E,U+F148-F149,U+F14C,U+F156,U+F15E,U+F160-F161,U+F163,U+F175-F178,U+F195,U+F1F8,U+F219,U+F27A; }

/* ===== Base Styles ===== */
.fa,
.fas,
.far,
.fab,
.fa-solid,
.fa-regular,
.fa-brands {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  display: inline-block;
  font-style: normal;
  font-variant: normal;
  line-height: 1;
  text-rendering: auto;
}

.fa-solid,
.fas {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}

.fa-regular,
.far {
  font-family: "Font Awesome 6 Free";
  font-weight: 400;
}

.fa-brands,
.fab {
  font-family: "Font Awesome 6 Brands";
  font-weight: 400;
}

/* Legacy .fa class - treat as solid (most common usage) */
.fa {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
}

/* ::before reads the --fa CSS variable for icon content */
.fas::before,
.far::before,
.fab::before,
.fa-solid::before,
.fa-regular::before,
.fa-brands::before,
.fa::before {
  content: var(--fa);
}

/* Sizing */
.fa-2xs { font-size: 0.625em; line-height: 0.1em; vertical-align: 0.225em; }
.fa-xs { font-size: 0.75em; line-height: 0.08333em; vertical-align: 0.125em; }
.fa-sm { font-size: 0.875em; line-height: 0.07143em; vertical-align: 0.05357em; }
.fa-lg { font-size: 1.25em; line-height: 0.05em; vertical-align: -0.075em; }
.fa-xl { font-size: 1.5em; line-height: 0.04167em; vertical-align: -0.125em; }
.fa-2xl { font-size: 2em; line-height: 0.03125em; vertical-align: -0.1875em; }
.fa-1x { font-size: 1em; }
.fa-2x { font-size: 2em; }
.fa-3x { font-size: 3em; }
.fa-4x { font-size: 4em; }
.fa-5x { font-size: 5em; }
.fa-6x { font-size: 6em; }
.fa-7x { font-size: 7em; }
.fa-8x { font-size: 8em; }
.fa-9x { font-size: 9em; }
.fa-10x { font-size: 10em; }

/* Fixed width */
.fa-fw { text-align: center; width: 1.25em; }

/* Animations */
.fa-spin { animation: fa-spin 2s infinite linear; }
.fa-pulse { animation: fa-spin 1s infinite steps(8); }
@keyframes fa-spin { 0% { transform: rotate(0deg); } 100% { transform: rotate(360deg); } }

.fa-beat { animation: fa-beat 1s ease infinite; }
@keyframes fa-beat { 0%, 90% { transform: scale(1); } 45% { transform: scale(1.25); } }

.fa-fade { animation: fa-fade 1s ease infinite; }
@keyframes fa-fade { 50% { opacity: 0.4; } }

.fa-bounce { animation: fa-bounce 1s ease infinite; }
@keyframes fa-bounce {
  0% { transform: scale(1,1) translateY(0); }
  10% { transform: scale(1.1,.9) translateY(0); }
  30% { transform: scale(.9,1.1) translateY(-10px); }
  50% { transform: scale(1.05,.95) translateY(0); }
  57% { transform: scale(1,1) translateY(-3px); }
  64% { transform: scale(1,1) translateY(0); }
  100% { transform: scale(1,1) translateY(0); }
}

.fa-shake { animation: fa-shake 1s ease infinite; }
@keyframes fa-shake {
  0% { transform: rotate(-15deg); }
  4% { transform: rotate(15deg); }
  8%, 24% { transform: rotate(-18deg); }
  12%, 28% { transform: rotate(18deg); }
  16% { transform: rotate(-22deg); }
  20% { transform: rotate(22deg); }
  32% { transform: rotate(-12deg); }
  36% { transform: rotate(12deg); }
  40%, 100% { transform: rotate(0deg); }
}

/* Rotation */
.fa-rotate-90 { transform: rotate(90deg); }
.fa-rotate-180 { transform: rotate(180deg); }
.fa-rotate-270 { transform: rotate(270deg); }
.fa-flip-horizontal { transform: scale(-1, 1); }
.fa-flip-vertical { transform: scale(1, -1); }
.fa-flip-both { transform: scale(-1, -1); }

/* Stacking */
.fa-stack { display: inline-block; height: 2em; line-height: 2em; position: relative; vertical-align: middle; width: 2.5em; }
.fa-stack-1x, .fa-stack-2x { left: 0; position: absolute; text-align: center; width: 100%; z-index: auto; }
.fa-stack-1x { line-height: inherit; }
.fa-stack-2x { font-size: 2em; }

/* Lists */
.fa-ul { list-style-type: none; margin-left: 2.5em; padding-left: 0; }
.fa-ul > li { position: relative; }
.fa-li { left: -2em; position: absolute; text-align: center; width: 2em; line-height: inherit; }

/* Border & Pull */
.fa-border { border: solid 0.08em #eee; border-radius: 0.1em; padding: 0.2em 0.25em 0.15em; }
.fa-pull-left { float: left; margin-right: 0.3em; }
.fa-pull-right { float: right; margin-left: 0.3em; }

/* Inverse */
.fa-inverse { color: #fff; }

/* Layers */
.fa-layers { display: inline-block; height: 1em; position: relative; text-align: center; vertical-align: -0.125em; width: 1em; }
.fa-layers svg, .fa-layers text { bottom: 0; left: 0; margin: auto; position: absolute; right: 0; top: 0; }
.fa-layers-text { left: 50%; top: 50%; transform: translate(-50%, -50%); transform-origin: center center; }
.fa-layers-counter { background-color: #ff253a; border-radius: 1em; box-sizing: border-box; color: #fff; height: 1.5em; line-height: 1; max-width: 5em; min-width: 1.5em; overflow: hidden; padding: 0.25em; right: 0; text-overflow: ellipsis; top: 0; transform: scale(0.25); transform-origin: top right; }

/* ===== Icon Definitions ===== */
.fa-angle-right { --fa: "\f105"; }
.fa-apple { --fa: "\f179"; }
.fa-arrow-down { --fa: "\f063"; }
.fa-arrow-left { --fa: "\f060"; }
.fa-arrow-right { --fa: "\f061"; }
.fa-arrow-right-arrow-left { --fa: "\f0ec"; }
.fa-arrow-up { --fa: "\f062"; }
.fa-arrow-up-right-from-square { --fa: "\f08e"; }
.fa-arrows-v { --fa: "\f07d"; }
.fa-balance-scale { --fa: "\f24e"; }
.fa-ban { --fa: "\f05e"; }
.fa-bars { --fa: "\f0c9"; }
.fa-bell { --fa: "\f0f3"; }
.fa-bolt { --fa: "\f0e7"; }
.fa-bomb { --fa: "\f1e2"; }
.fa-book { --fa: "\f02d"; }
.fa-bookmark { --fa: "\f02e"; }
.fa-broom { --fa: "\f51a"; }
.fa-calculator { --fa: "\f1ec"; }
.fa-calendar { --fa: "\f133"; }
.fa-calendar-days { --fa: "\f073"; }
.fa-camera { --fa: "\f030"; }
.fa-chart-bar { --fa: "\f080"; }
.fa-chart-line { --fa: "\f201"; }
.fa-check { --fa: "\f00c"; }
.fa-check-circle { --fa: "\f058"; }
.fa-chevron-down { --fa: "\f078"; }
.fa-chevron-left { --fa: "\f053"; }
.fa-chevron-right { --fa: "\f054"; }
.fa-chevron-up { --fa: "\f077"; }
.fa-circle { --fa: "\f111"; }
.fa-circle-check { --fa: "\f058"; }
.fa-circle-exclamation { --fa: "\f06a"; }
.fa-circle-info { --fa: "\f05a"; }
.fa-circle-minus { --fa: "\f056"; }
.fa-circle-plus { --fa: "\f055"; }
.fa-circle-question { --fa: "\f059"; }
.fa-circle-xmark { --fa: "\f057"; }
.fa-clipboard-check { --fa: "\f46c"; }
.fa-clipboard-list { --fa: "\f46d"; }
.fa-clock { --fa: "\f017"; }
.fa-clock-rotate-left { --fa: "\f1da"; }
.fa-clone { --fa: "\f24d"; }
.fa-cloud-arrow-down { --fa: "\f0ed"; }
.fa-code { --fa: "\f121"; }
.fa-cog { --fa: "\f013"; }
.fa-cogs { --fa: "\f085"; }
.fa-columns { --fa: "\f0db"; }
.fa-comments { --fa: "\f086"; }
.fa-compress { --fa: "\f066"; }
.fa-copy { --fa: "\f0c5"; }
.fa-crown { --fa: "\f521"; }
.fa-css3-alt { --fa: "\f38b"; }
.fa-cube { --fa: "\f1b2"; }
.fa-cubes { --fa: "\f1b3"; }
.fa-database { --fa: "\f1c0"; }
.fa-desktop { --fa: "\f390"; }
.fa-diamond { --fa: "\f219"; }
.fa-discord { --fa: "\f392"; }
.fa-download { --fa: "\f019"; }
.fa-edit { --fa: "\f044"; }
.fa-envelope { --fa: "\f0e0"; }
.fa-eraser { --fa: "\f12d"; }
.fa-exclamation-circle { --fa: "\f06a"; }
.fa-exclamation-triangle { --fa: "\f071"; }
.fa-external-link { --fa: "\f08e"; }
.fa-eye { --fa: "\f06e"; }
.fa-eye-slash { --fa: "\f070"; }
.fa-f { --fa: "\46"; }
.fa-facebook { --fa: "\f09a"; }
.fa-file-code { --fa: "\f1c9"; }
.fa-file-export { --fa: "\f56e"; }
.fa-file-lines { --fa: "\f15c"; }
.fa-file-text { --fa: "\f15c"; }
.fa-filter { --fa: "\f0b0"; }
.fa-filter-circle-xmark { --fa: "\e17b"; }
.fa-fire { --fa: "\f06d"; }
.fa-flag { --fa: "\f024"; }
.fa-flask { --fa: "\f0c3"; }
.fa-floppy-disk { --fa: "\f0c7"; }
.fa-folder { --fa: "\f07b"; }
.fa-folder-plus { --fa: "\f65e"; }
.fa-folder-tree { --fa: "\f802"; }
.fa-gamepad { --fa: "\f11b"; }
.fa-gauge-high { --fa: "\f625"; }
.fa-gift { --fa: "\f06b"; }
.fa-globe { --fa: "\f0ac"; }
.fa-google { --fa: "\f1a0"; }
.fa-graduation-cap { --fa: "\f19d"; }
.fa-grip { --fa: "\f58d"; }
.fa-grip-lines-vertical { --fa: "\f7a5"; }
.fa-grip-vertical { --fa: "\f58e"; }
.fa-handshake { --fa: "\f2b5"; }
.fa-hard-drive { --fa: "\f0a0"; }
.fa-header { --fa: "\f1dc"; }
.fa-heart { --fa: "\f004"; }
.fa-heartbeat { --fa: "\f21e"; }
.fa-history { --fa: "\f1da"; }
.fa-home { --fa: "\f015"; }
.fa-hourglass-half { --fa: "\f252"; }
.fa-house { --fa: "\f015"; }
.fa-house-flag { --fa: "\e50d"; }
.fa-image { --fa: "\f03e"; }
.fa-info-circle { --fa: "\f05a"; }
.fa-instagram { --fa: "\f16d"; }
.fa-key { --fa: "\f084"; }
.fa-language { --fa: "\f1ab"; }
.fa-laptop { --fa: "\f109"; }
.fa-layer-group { --fa: "\f5fd"; }
.fa-lightbulb { --fa: "\f0eb"; }
.fa-link { --fa: "\f0c1"; }
.fa-link-slash { --fa: "\f127"; }
.fa-list { --fa: "\f03a"; }
.fa-list-check { --fa: "\f0ae"; }
.fa-list-ol { --fa: "\f0cb"; }
.fa-lock { --fa: "\f023"; }
.fa-magic { --fa: "\f0d0"; }
.fa-magnifying-glass { --fa: "\f002"; }
.fa-map-marker { --fa: "\f041"; }
.fa-mars { --fa: "\f222"; }
.fa-microscope { --fa: "\f610"; }
.fa-moon { --fa: "\f186"; }
.fa-music { --fa: "\f001"; }
.fa-palette { --fa: "\f53f"; }
.fa-paper-plane { --fa: "\f1d8"; }
.fa-pen { --fa: "\f304"; }
.fa-pen-to-square { --fa: "\f044"; }
.fa-pencil { --fa: "\f303"; }
.fa-pie-chart { --fa: "\f200"; }
.fa-play { --fa: "\f04b"; }
.fa-play-circle { --fa: "\f144"; }
.fa-plug { --fa: "\f1e6"; }
.fa-plus { --fa: "\2b"; }
.fa-plus-circle { --fa: "\f055"; }
.fa-power-off { --fa: "\f011"; }
.fa-puzzle-piece { --fa: "\f12e"; }
.fa-question-circle { --fa: "\f059"; }
.fa-random { --fa: "\f074"; }
.fa-rectangle-list { --fa: "\f022"; }
.fa-reddit-alien { --fa: "\f281"; }
.fa-refresh { --fa: "\f021"; }
.fa-reply { --fa: "\f3e5"; }
.fa-right-from-bracket { --fa: "\f2f5"; }
.fa-right-left { --fa: "\f362"; }
.fa-right-to-bracket { --fa: "\f2f6"; }
.fa-robot { --fa: "\f544"; }
.fa-rocket { --fa: "\f135"; }
.fa-rotate { --fa: "\f2f1"; }
.fa-rotate-right { --fa: "\f2f9"; }
.fa-rss { --fa: "\f09e"; }
.fa-satellite-dish { --fa: "\f7c0"; }
.fa-save { --fa: "\f0c7"; }
.fa-scale-balanced { --fa: "\f24e"; }
.fa-search { --fa: "\f002"; }
.fa-server { --fa: "\f233"; }
.fa-share { --fa: "\f064"; }
.fa-share-alt { --fa: "\f1e0"; }
.fa-shield { --fa: "\f132"; }
.fa-shield-halved { --fa: "\f3ed"; }
.fa-shuffle { --fa: "\f074"; }
.fa-sign-in { --fa: "\f090"; }
.fa-sign-out { --fa: "\f08b"; }
.fa-sitemap { --fa: "\f0e8"; }
.fa-sliders { --fa: "\f1de"; }
.fa-sort-alpha-asc { --fa: "\f15d"; }
.fa-sort-amount-desc { --fa: "\f884"; }
.fa-spinner { --fa: "\f110"; }
.fa-star { --fa: "\f005"; }
.fa-sun { --fa: "\f185"; }
.fa-swatchbook { --fa: "\f5c3"; }
.fa-sync { --fa: "\f021"; }
.fa-table-columns { --fa: "\f0db"; }
.fa-tachometer-alt { --fa: "\f625"; }
.fa-tag { --fa: "\f02b"; }
.fa-tags { --fa: "\f02c"; }
.fa-telegram { --fa: "\f2c6"; }
.fa-terminal { --fa: "\f120"; }
.fa-th { --fa: "\f00a"; }
.fa-th-large { --fa: "\f009"; }
.fa-th-list { --fa: "\f00b"; }
.fa-thumbs-down { --fa: "\f165"; }
.fa-thumbs-up { --fa: "\f164"; }
.fa-times { --fa: "\f00d"; }
.fa-times-circle { --fa: "\f057"; }
.fa-toggle-off { --fa: "\f204"; }
.fa-toggle-on { --fa: "\f205"; }
.fa-traffic-light { --fa: "\f637"; }
.fa-transgender { --fa: "\f225"; }
.fa-trash { --fa: "\f1f8"; }
.fa-trash-can { --fa: "\f2ed"; }
.fa-triangle-exclamation { --fa: "\f071"; }
.fa-trophy { --fa: "\f091"; }
.fa-twitter { --fa: "\f099"; }
.fa-undo { --fa: "\f0e2"; }
.fa-unlock { --fa: "\f09c"; }
.fa-upload { --fa: "\f093"; }
.fa-user { --fa: "\f007"; }
.fa-user-check { --fa: "\f4fc"; }
.fa-user-group { --fa: "\f500"; }
.fa-user-plus { --fa: "\f234"; }
.fa-user-secret { --fa: "\f21b"; }
.fa-user-shield { --fa: "\f505"; }
.fa-user-slash { --fa: "\f506"; }
.fa-user-xmark { --fa: "\f235"; }
.fa-users { --fa: "\f0c0"; }
.fa-venus { --fa: "\f221"; }
.fa-venus-mars { --fa: "\f228"; }
.fa-video { --fa: "\f03d"; }
.fa-wrench { --fa: "\f0ad"; }
.fa-xmark { --fa: "\f00d"; }
.fa-xmark-circle { --fa: "\f057"; }
.fa-comment { --fa: "\f075"; }
.fa-js { --fa: "\f3b8"; }
.fa-linux { --fa: "\f17c"; }
.fa-windows { --fa: "\f17a"; }

/* ===== V4 Compatibility Shims ===== */
/* ONLY shims for icons NOT already in subset above */
/* Icons already in subset keep their correct FA6 values */

/* These v4 names need mapping to their FA6 equivalents */
.fa-arrows-v { --fa: "\f338"; }
.fa-check-square-o { --fa: "\f14a"; }
.fa-clock-o { --fa: "\f017"; }
.fa-comments-o { --fa: "\f086"; }
.fa-file-code-o { --fa: "\f1c9"; }
.fa-file-text-o { --fa: "\f15c"; }
.fa-lightbulb-o { --fa: "\f0eb"; }
.fa-moon-o { --fa: "\f186"; }
.fa-newspaper-o { --fa: "\f1ea"; }
.fa-sun-o { --fa: "\f185"; }
.fa-youtube-play { --fa: "\f167"; }
