From 5305670f46b939fc0a0d6f155c07808d4dd2393d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mart=C3=ADn=20Lucas=20Golini?= Date: Fri, 29 May 2026 03:04:27 -0300 Subject: [PATCH] Fixes. --- .../assets/html/block_size_inf.html | 311 ++++ .../block_size_inf_files/AsahiLinux_logo.svg | 127 ++ .../AsahiLinux_logomark.svg | 60 + .../assets/html/block_size_inf_files/all.css | 9 + .../assets/html/block_size_inf_files/main.css | 1483 +++++++++++++++++ include/eepp/ui/flexlayouter.hpp | 2 - src/eepp/ui/flexlayouter.cpp | 91 +- src/tests/unit_tests/uihtml_tests.cpp | 25 + 8 files changed, 2049 insertions(+), 59 deletions(-) create mode 100644 bin/unit_tests/assets/html/block_size_inf.html create mode 100644 bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logo.svg create mode 100644 bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logomark.svg create mode 100644 bin/unit_tests/assets/html/block_size_inf_files/all.css create mode 100644 bin/unit_tests/assets/html/block_size_inf_files/main.css diff --git a/bin/unit_tests/assets/html/block_size_inf.html b/bin/unit_tests/assets/html/block_size_inf.html new file mode 100644 index 000000000..374e8edb6 --- /dev/null +++ b/bin/unit_tests/assets/html/block_size_inf.html @@ -0,0 +1,311 @@ + + + + +Progress Report: Linux 7.0 - Asahi Linux + + + + + + + + + + + + + + + + + +
+
+
+
+

Progress Report: Linux 7.0

After almost three years of 6.x series kernels, Linux 7.0 is finally here. +That means it’s also time for another Asahi progress report!

Automate Everything

Users of alternate distros and keen-eyed individuals may have noticed some +changes to the Asahi Installer. After almost two years, we finally got around +to pushing an updated version of the installer to the CDN! Two years is a long +time to go between updates, so what took so long?

Our upstream installer package is a little bit of a Rube-Goldberg machine. The +bulk of the installer is written in Python, with some small Bash scripts to +bootstrap it. When you run curl | sh, you’re actually downloading the boostrap +script, which then fetches the actual installer bundle from our CDN. This bundle +consists of a Python interpreter and very stripped down standard library, a built +m1n1 stage 1 binary, and the installer itself.

Until recently, cutting an installer release meant:

    +
  1. Tagging the installer repo
  2. Downloading a macOS Python build
  3. Building m1n1 from a blessed commit
  4. Bundling Python, m1n1 and the installer
  5. Uploading the installer bundle to the CDN
  6. Updating the CDN’s version flag file

This process was time-consuming and required administrative access to the CDN. +As a result, we neglected to push installer updated for quite some time; the +previous installer tag was from June 2024! As upstreaming work has progressed +and Devicetree bindings churned, this became rather problematic for our friends +maintaining distros.

The Asahi Installer offers a UEFI-only installation option. This option +shrinks macOS and only installs what is necessary to boot a UEFI executable, +meaning m1n1 stage 1, the Devicetrees, and U-Boot. This allows users to +boot from live media with Asahi support, such as specialised Gentoo Asahi +LiveCD images.

Since the Devicetrees on a fresh UEFI-only install come from the installer +bundle itself, a kernel will only successfully boot when the installer-bundled +Devicetrees match what that kernel expects to see. The two have gotten rather +out of sync as time has gone on due to Devicetree bindings changing +as a result of the upstreaming process. This situation finally came to a +head with kernel 6.18, which required numerous changes to both m1n1 and +the Devicetree bindings for the Apple USB subsystem. This made booting +kernel 6.18 and above from live media impossible. Oops.

Rather than go through the trouble of manually pushing out another update, +we took the opportunity to build some automation and solve this problem +permanently.

We moved the manifest of installable images into the asahi-installer-data repo, +allowing us to update it independently of the installer codebase. +On top of this, we also now deploy +the installer using GitHub workflows. Going forward, every push to the main +branch of asahi-installer will +automatically build the installer and upload it to https://alx.sh/dev. +Every tag pushed to GitHub will do the same for https://alx.sh.

The latest version, 0.8.0, bumps the bundled m1n1 stage 1 binary to +version 1.5.2, introduces installer support for the Mac Pro, and adds +a firmware update mode which ties in nicely with…

How do you overengineer a light sensor?

Basically everything with a screen now comes with some sort of light +sensor. This is usually to enable automatic brightness adjustment based +on ambient conditions. It’s a very convenient feature in devices like +smartphones, where a user may walk outside and find their display too +dim to see. The cheapest versions of this use a simple photoresistor. +This is fine if the goal is just to change brightness, but brightness +is not the only thing affected by ambient lighting conditions. What about +colour rendering?

Apple’s devices have had the True Tone display feature for quite some time. +This works by measuring both the brightness and the colour characteristics +of the environment’s ambient lighting. This data is then used to apply +brightness and colour transformations to the display to ensure that it is +always displaying content as accurately as possible. This is most noticeable +in environments with lighting fixtures that have a low Colour Rendering +Index, such as fluorescent tubes or cheap cool white LEDs. The devices that +enable this, ambient light sensors, are usually little ICs that connect +to the system over I2C or other industry-standard bus. This is +fine for basic applications, but this is Apple. There are some other considerations +to be had:

    +
  • The light sensor is doing stuff whenever the screen is on, so processing its +output should be as efficient as possible
  • The light sensor should be able to be calibrated for maximum accuracy
  • There are multiple models of light sensor in use, and the OS should not +have to care too much about that
  • The light sensor has to have a three letter acronym like every other piece +of hardware on this platform (ALS)

Naturally, this sounds like a job for the Always-On Processor1 (AOP)!

We’ve had a working AOP+ALS driver set for a while thanks to chaos_princess, +however the raw data AOP reports back from ALS is rather inaccurate without +calibration. That calibration is a binary blob that must be uploaded to the AOP +at runtime. It is essentially firmware. Since we cannot redistribute Apple’s +binaries, it must be retrieved from macOS at install time and then stored somewhere the driver +knows to look for it.

To achieve this, the Asahi Installer gathers up all +the firmware it knows we will need in Linux and stores it on the EFI System +Partition it creates. A Dracut module then mounts this to a subdirectory of +/lib/firmware/, where drivers can find it. However, issues arise when we +need to retrieve more firmware from macOS after Asahi Linux has already been +installed. To avoid a repeat of the webcam situation, where users +were required to manually do surgery on their EFI System Partition, chaos_princess +added the ability for the Asahi Installer to automatically update the firmware +package. Starting with ALS, any required firmware updates will be a simple +matter of booting into macOS or macOS Recovery, re-running the Asahi Installer, and following +the prompts.

To enable ALS support (and to do firmware upgrades in the future), follow these steps:

    +
  1. Ensure you are running version 6.19 or above of the Asahi kernel
  2. Ensure your distro ships iio-sensor-proxy as a dependency of your DE (Fedora +Asahi Remix does this)
  3. Shut down your Mac
  4. Hold the power button until “Loading startup options” appears on the display +for MacBooks, or for 5-7 seconds on the desktop machines
  5. Select Options from the Apple boot menu
  6. Log in with your macOS credentials, then do Command + Shift + T to +open a terminal
  7. Invoke the Asahi Installer by running curl https://alx.sh | sh
  8. Choose the “Rebuild vendor firmware package” option when prompted
  9. Quit the installer and reboot once this is done

Solving the energy crisis

Idle energy consumption has been an ongoing issue, especially on devices with +Pro/Max/Ultra SoCs. The power management architecture on this platform is +incredibly complex, and there are a lot of moving parts involved in making it +all work. There is Power Manager (PMGR), which is responsible for the SoC’s power +domains, but there is also the Power Management Processor (PMP), which does… stuff?

The actual low-level details of how power is managed across the SoC are quite +opaque. PMGR is responsible for powering SoC regions up or down and +is runtime-configurable. This is necessary to power up parts of the SoC on boot, +and to power them up or down on suspend and resume. PMP, however, has a more +interesting job. Many SoC blocks communicate their power states to PMP directly +in a region of shared memory. PMP also takes reports +from the application cores when PMGR power domains are powered up or down. +PMP will not read these reports if it is not booted, and certain power management functionality will not work. We are +not sure exactly what it does with this information, but it likely involves +controlling Apple Fabric power and clocking, among other things.

To support PMP, chaos_princess wrote drivers enabling it to accept reports from +the SoC blocks and PMGR. This alone is enough to save around half a Watt +on a 14" M1 Pro MacBook Pro when idle. That is around a 20% decrease in idle power +consumption! There is obviously still work to be done to reach macOS levels of +idle and suspend time, but this is a significant step forward.

Machines with the base M1 SoC have an older variant of PMP, which is not compatible +with the variant found on the M1 Pro and later SoCs. dd-dreams +is working on enabling PMP support on these machines, so stay tuned!

PMP support has not yet been validated on every machine we support, and we +do not plan to ship it enabled by default until it is merged upstream. Users +comfortable with making Devicetree changes may define APPLE_USE_PMP in their device’s +Devicetree (e.g. t8112-j415.dts) to enable it.

Bluetooth fixes!

Bluetooth and WiFi have a long history of contention and interference. Both operate +around the same 2.4 GHz frequencies and are typically both present in a given device. +If not dealt with, this can cause packet loss and dropouts. There are a number of +strategies to deal with this. In modern systems, WiFi and Bluetooth are typically +integrated into the same controller. This allows the controller to monitor active +2.4 GHz WiFi and Bluetooth connections at the same time. By default, each connection +is allocated a “fair” share of the available airtime, however this can cause issues +when latency is important, or when some connections require minimal interruption. +A connection that is actively streaming audio must be given priority over a keyboard, +or a scan for 2.4 GHz WiFi broadcasts.

Unfortunately nothing is ever simple with Broadcom, and coexistence configuration +is done using vendor-specific extensions to the Bluetooth Host Controller Interface +(HCI). These were previously not supported in the upstream Linux kernel, causing +our Bluetooth controllers to drop audio packets when, for example, KDE Connect +would trigger a Bluetooth scan. chaos_princess recently added support for these +commands to the kernel Bluetooth stack, and since BlueZ, the userspace Bluetooth daemon, +marks all audio streams as high priority, these commands can be triggered whenever +a connection is streaming audio. Bluetooth audio dropouts are now a thing of the +past!

Hiding in plain sight

Our struggles with the display controller (DCP) have been well documented at this point. +The firmware interface is enormous, unstable between versions, and frustratingly +limited in weird ways that make no sense. Once we had enough of it working to get +basic display support, attention turned to other pieces of hardware and no one really +had the time to invest in further DCP work. It is still missing a bunch of features +though, and one we constantly get questions about is Variable Refresh Rate (VRR).

VRR is a bit of a complicated thing to support. The display controller and display +must communicate using special packets, which are different between HDMI and DisplayPort. +The display controller must also be configured to “stretch” vertical blanking intervals +based on the actual presentation of frames, not the set timing mode’s nominal +refresh rate. The display must also advertise VRR as a capability, and this +all needs to be wired up to the KMS API so that userspace knows about it.

DCP’s firmware interface is very layered. Like almost every other Apple coprocessor +it runs RTKit, but sitting atop RTKit is the Endpoint Interface Client (EPIC). +EPIC exposes “services” that each expose their own API surface, comprised of functions +and callbacks. Each service also has “parameters” which are essentially a key-value store +of knobs that control various runtime behaviours. These are changed by making a call +to a “set parameter” API.

When initial DCP bringup work was being done, it was noticed that one such parameter was +being set to 0 when a DCP was powered up for an external display. This was assumed to +be part of some power on sequence. The Linux driver probe sequence was written to set +this parameter on every power on accordingly.

While toggling VRR on and off during tracing, I noticed that same parameter being flipped +between 0x300000 and 0x0. This was followed by a modeset, after which VRR would be +either enabled or disabled. The display I was testing with has a minimum refresh rate of +48 Hz. In the fixed-point decimal format DCP uses to represent refresh rates, 48 is +0x300000. What if…

After hacking some code into the Linux DCP driver to set this parameter and trigger a +modeset, I saw exactly what I wanted to see!

RTKit: syslog message: FramebufferDCP.cpp:5931: IOMFBParameter_adaptive_sync Req minRR = 0x300000, mediaTargetRate = 0x0, Fractional Rate = 0
+...
+RTKit: syslog message: PPipeDCP_H13P.cpp:12251: IOMFB: AdaptiveSync Range [48Hz, 165Hz]
+

The parameter we had been setting this entire time had nothing to do with power sequencing, +it was the minimum refresh rate toggle for VRR. Setting it to 0 before a modeset simply +tells DCP to disable VRR. Turning what is usually hundreds of lines of driver code into +effectively two function calls is one benefit of having a firmware blob as enormous as DCP’s.

I also tested this on a MacBook Pro with a ProMotion display, and found that it is activated +in the same way. This was surprising since MacBook internal displays do not advertise +an EDID/DisplayID for DCP to parse, which is the normal way we retrieve and set the +display’s VRR capabilities. While DCP’s firmware is not fully understood, we suspect +that the laptop displays receive special treatment, and DCP simply knows how to drive +them. To work around this, the Linux driver determines if the connected display is +an internal MacBook Pro LCD and statically sets the necessary properties accordingly +rather than trying to pull them from a nonexistent EDID.

Productionising all of this proved to be a bit of a challenge. Both VESA DisplayPort +specification for Adaptive Sync, and the KMS API contract expressly forbid needing +a modeset to transition between VRR states. Unfortunately for us, Apple either don’t +care about the VESA spec or could not make DCP transition VRR states without a +modeset. As such, we cannot expose VRR to userspace, and even if we did, compositors +such as Kwin would simply ignore it as it requires a modeset. For now, users will be able +to force VRR unconditionally on by setting the appledrm.force_vrr kernel module +parameter once the pull request is merged. +If your display supports VRR, DCP will enable and use it without telling KMS or the +compositor. Kwin handles this fine, however your experience with other compositors +may differ. Please do not raise bugs about this either with us or with your compositor’s +developers as it is a hack that compositors are not required to tolerate gracefully.

However, that may soon change. The HDMI specification does not forbid modesetting +between VRR transitions, and other display controllers (e.g. Intel’s) behave similarly +to DCP in this regard. Discussions are ongoing upstream on how best to deal with this; +either drivers will be expected to enable VRR modes unconditionally or modesetting between +transitions will be allowed. Once the way forward is clear upstream, we will expose +VRR in the expected way so that compositors can decide when to enable it.

More embedded audio quirks

Work is progressing on getting the entirety of the audio stack upstream. We have already +merged changes to Cirrus Logic and Texas Instruments drivers for the headphone jack +and speaker amp chips used on this platform, as well as drivers for the I2S peripheral +and Apple DMA controller.

One of the things that makes this platform special is the way in which the speakers are +prevented from destroying themselves. The Texas Instruments amps used by Apple can +communicate the voltage and current across the connected speaker back to the SoC +over I2S. These values can then be used along with a set of documented +characteristics of the connected speaker (Thiele/Small Parameters) +to work out the temperature of the voice coil at any given moment. On macOS, CoreAudio +does this. On Linux, this is speakersafetyd’s +job. No other desktop-class platform does this. This is usually either not done at all, +handled entirely in hardware, or mostly hidden from the OS by Sound Open Firmware.

But that’s not all! Each amp chip’s data transmit pin is connected in series with +other amps. All of the “left” speaker amps are grouped, and so too are the “right” +amps. Each of these lines must be combined at the receiver into one data stream, +so the lines are ORed. This only works if the amps on one side are guaranteed to +be logic low when the other side is trying to transmit data. This is not uncommon, +and the amp chips Apple use include bus keepers to assist with this. These are +small circuits designed to guarantee that a bus will be in a specific state at +any given time, usually tied to ground.

We originally had these configured entirely in the amp chip’s driver, with specific +Devicetree bindings to specify the bus keeper configuration. This was too limited +and inflexible for upstream, however. Instead, we created a generic API that allows +any ASoC component to expose that it has a configurable bus keeper, allowing the +consuming drivers (usually the “platform” driver, which ties all of the physical +audio components into a coherent “sound card”) to configure the bus keeper as required +at runtime. Bus keepers are not uncommon, and it is possible that this functionality +will be useful on other embedded-style platforms. The patch set implementing this +has been merged for 7.1.

Going beyond macOS

One of the challenges with bringing up a completely undocumented platform is that +we have no frame of reference for the hardware’s capabilities. As far as we can +possibly know, the hardware is capable of exactly what macOS does to it and nothing more. +Almost all of our m1n1 and Linux driver code is based on observing the commands macOS +sends to a given hardware block and effectively replaying them. But that is not always the case…

Apple are not afraid to use their buying power to get exactly what they want +out of third party chip vendors. Followers of certain board-level repair and +Right to Repair Internet personalities will be aware of how Apple gets CD321x +series chips from Texas Instruments. These are incompatible variants of other TI +USB-C mux chips with no publicly available datasheet, and sold exclusively to +Apple in bulk. Apple has similar arrangements for the speaker amp +chips they use, which are variants of TI’s TAS2764 and TAS2770. The same is true +of CS42L84, an Apple-specific variant of the Cirrus Logic CS42L42 headphone jack +chip. The vendors often won’t even acknowledge the existence of these variants. +Connections to their publicly available counterparts can only be deduced +through leaks and Internet sleuthing.

These variants are often similar enough to their publicly available counterparts that +information on their datasheets and drivers can be useful reference material. Any incompatibilities +are often limited to slightly different register layouts or discrete features that +do not affect the rest of the chip’s operation. In the +case of the TI speaker amps, we were able to add support for the Apple variants to +the upstream TAS2764 and TAS2770 drivers with minimal fuss.

That said, it is always beneficial to begin by tracing macOS, and to treat those traces +as the sole source of truth. CS42L84 ended up being different enough from CS42L42 +that it requires its own Linux driver, which has since been upstreamed. As mentioned, this approach +has the limitation of only allowing us to expose the functionality macOS makes use +of. Since macOS only ever programs CS42L84 to operate at either 48 or 96 kHz, we +could only add support for those two sample rates to the Linux driver. This is quite +limiting, as it forces PipeWire to waste CPU cycles (and therefore battery life) +on resampling audio streams that are not either 48 or 96 kHz. Doing so also degrades +the quality of the audio. However, CS42L42 supports all the other common sample +rates, and while the register layout and programming sequence is different, +the actual values programmed in for 48 and 96 kHz are the same across both +chips. What would happen if we simply took the values for all other sample +rates from the CS42L42 datasheet and added those to the CS42L84 driver? As +it turns out, you get support for those sample rates!

The patch to enable hardware support for 44.1, 88.2, 176.4 and 192 kHz sample +rates on both the input and output of the headphone jack was submitted +directly upstream, and has been merged for 7.1. We also backported this +to Asahi kernel 6.19.9, allowing users to take advantage of this +immediately.

More M3!

Also finding their way into the Asahi kernel tree are patches to enable more +hardware on M3 machines. This includes support for PCIe, MacBook keyboards +and trackpads support, the SMC-based RTC and reboot controller, and the NVMe +controller, courtesy once again of Michael Reeves and Alyssa Milburn. This +brings Linux support for the M3 up to roughly the same level as the first +Asahi Linux alpha for M1!

While we aren’t quite ready to enable installation on M3 machines via the Asahi +Installer, progress is being made. Stay tuned for more!

Fedora Asahi Remix 44

Despite the delays in getting Fedora Asahi Remix 43 to you all, we are still on +track to release Fedora Asahi Remix 44 either on or within a few days of Fedora +Linux 44 on 28 April! Going forward, new KDE Plasma based installs will take advantage of +a number of new features that shipped with Plasma 6.6.

Plasma Setup replaces +the previous Calamares-based setup wizard, providing a Plasma-native experience for +user account creation and system setup. Additionally, Plasma Login Manager is now +the default greeter and session manager, replacing SDDM. This applies to new +installs only; users upgrading from previous versions of Fedora Asahi Remix will not +have their configuration changed.

Fedora Asahi Remix 44 also retires our vendored Mesa and virglrenderer packages. Users +who have not already manually done so will be automatically transitioned to the +upstream Mesa and virglrenderer packages provided by the upstream Fedora repositories.

Until next time!

As always, we would like to extend our gratitude to everyone who continues to support +our work on OpenCollective and GitHub Sponsors. +We would also like to thank Bunny, who have supported us with +free CDN and hosting services since the project’s first days.

+
+
    +
  1. +

    We cannot stress enough just how misleading this name is; the Processor is not Always-On ↩︎

James Calligeros · 2026-04-26
\ No newline at end of file diff --git a/bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logo.svg b/bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logo.svg new file mode 100644 index 000000000..a068006d4 --- /dev/null +++ b/bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logo.svg @@ -0,0 +1,127 @@ + +Asahi Linux logoimage/svg+xmlAsahi Linux logo2021-01-03soundflora* / marcanFont: Bangla MN (c) 2009 Muthu Nedumaran +Used with permissionCC BY-SA 4.0 / (c) 2021 soundflora* + + diff --git a/bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logomark.svg b/bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logomark.svg new file mode 100644 index 000000000..64e394a1e --- /dev/null +++ b/bin/unit_tests/assets/html/block_size_inf_files/AsahiLinux_logomark.svg @@ -0,0 +1,60 @@ + +Asahi Linux logomarkimage/svg+xmlAsahi Linux logomark2021-01-03soundflora* / marcanCC BY-SA 4.0 / (c) 2021 soundflora* + + diff --git a/bin/unit_tests/assets/html/block_size_inf_files/all.css b/bin/unit_tests/assets/html/block_size_inf_files/all.css new file mode 100644 index 000000000..72c78b5ac --- /dev/null +++ b/bin/unit_tests/assets/html/block_size_inf_files/all.css @@ -0,0 +1,9 @@ +/*! + * Font Awesome Free 6.7.1 by @fontawesome - https://fontawesome.com + * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) + * Copyright 2024 Fonticons, Inc. + */ +.fa{font-family:var(--fa-style-family,"Font Awesome 6 Free");font-weight:var(--fa-style,900)}.fa,.fa-brands,.fa-regular,.fa-solid,.fab,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:var(--fa-display,inline-block);font-style:normal;font-variant:normal;line-height:1;text-rendering:auto}.fa-brands:before,.fa-regular:before,.fa-solid:before,.fa:before,.fab:before,.far:before,.fas:before{content:var(--fa)}.fa-classic,.fa-regular,.fa-solid,.far,.fas{font-family:"Font Awesome 6 Free"}.fa-brands,.fab{font-family:"Font Awesome 6 Brands"}.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}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin,2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(var(--fa-li-width, 2em)*-1);position:absolute;text-align:center;width:var(--fa-li-width,2em);line-height:inherit}.fa-border{border-radius:var(--fa-border-radius,.1em);border:var(--fa-border-width,.08em) var(--fa-border-style,solid) var(--fa-border-color,#eee);padding:var(--fa-border-padding,.2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin,.3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin,.3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.28,.84,.42,1))}.fa-fade{animation-name:fa-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-beat-fade,.fa-fade{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s)}.fa-beat-fade{animation-name:fa-beat-fade;animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,cubic-bezier(.4,0,.6,1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,ease-in-out)}.fa-shake{animation-name:fa-shake;animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-shake,.fa-spin{animation-delay:var(--fa-animation-delay,0s);animation-direction:var(--fa-animation-direction,normal)}.fa-spin{animation-name:fa-spin;animation-duration:var(--fa-animation-duration,2s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,linear)}.fa-spin-reverse{--fa-animation-direction:reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction,normal);animation-duration:var(--fa-animation-duration,1s);animation-iteration-count:var(--fa-animation-iteration-count,infinite);animation-timing-function:var(--fa-animation-timing,steps(8))}@media (prefers-reduced-motion:reduce){.fa-beat,.fa-beat-fade,.fa-bounce,.fa-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale,1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x,1.1),var(--fa-bounce-start-scale-y,.9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x,.9),var(--fa-bounce-jump-scale-y,1.1)) translateY(var(--fa-bounce-height,-.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x,1.05),var(--fa-bounce-land-scale-y,.95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound,-.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity,.4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity,.4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale,1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x,0),var(--fa-flip-y,1),var(--fa-flip-z,0),var(--fa-flip-angle,-180deg))}}@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%,to{transform:rotate(0deg)}}@keyframes fa-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle,0))}.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:var(--fa-stack-z-index,auto)}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:var(--fa-inverse,#fff)} + +.fa-0{--fa:"\30";--fa--fa:"\30\30"}.fa-1{--fa:"\31";--fa--fa:"\31\31"}.fa-2{--fa:"\32";--fa--fa:"\32\32"}.fa-3{--fa:"\33";--fa--fa:"\33\33"}.fa-4{--fa:"\34";--fa--fa:"\34\34"}.fa-5{--fa:"\35";--fa--fa:"\35\35"}.fa-6{--fa:"\36";--fa--fa:"\36\36"}.fa-7{--fa:"\37";--fa--fa:"\37\37"}.fa-8{--fa:"\38";--fa--fa:"\38\38"}.fa-9{--fa:"\39";--fa--fa:"\39\39"}.fa-fill-drip{--fa:"\f576";--fa--fa:"\f576\f576"}.fa-arrows-to-circle{--fa:"\e4bd";--fa--fa:"\e4bd\e4bd"}.fa-chevron-circle-right,.fa-circle-chevron-right{--fa:"\f138";--fa--fa:"\f138\f138"}.fa-at{--fa:"\40";--fa--fa:"\40\40"}.fa-trash-alt,.fa-trash-can{--fa:"\f2ed";--fa--fa:"\f2ed\f2ed"}.fa-text-height{--fa:"\f034";--fa--fa:"\f034\f034"}.fa-user-times,.fa-user-xmark{--fa:"\f235";--fa--fa:"\f235\f235"}.fa-stethoscope{--fa:"\f0f1";--fa--fa:"\f0f1\f0f1"}.fa-comment-alt,.fa-message{--fa:"\f27a";--fa--fa:"\f27a\f27a"}.fa-info{--fa:"\f129";--fa--fa:"\f129\f129"}.fa-compress-alt,.fa-down-left-and-up-right-to-center{--fa:"\f422";--fa--fa:"\f422\f422"}.fa-explosion{--fa:"\e4e9";--fa--fa:"\e4e9\e4e9"}.fa-file-alt,.fa-file-lines,.fa-file-text{--fa:"\f15c";--fa--fa:"\f15c\f15c"}.fa-wave-square{--fa:"\f83e";--fa--fa:"\f83e\f83e"}.fa-ring{--fa:"\f70b";--fa--fa:"\f70b\f70b"}.fa-building-un{--fa:"\e4d9";--fa--fa:"\e4d9\e4d9"}.fa-dice-three{--fa:"\f527";--fa--fa:"\f527\f527"}.fa-calendar-alt,.fa-calendar-days{--fa:"\f073";--fa--fa:"\f073\f073"}.fa-anchor-circle-check{--fa:"\e4aa";--fa--fa:"\e4aa\e4aa"}.fa-building-circle-arrow-right{--fa:"\e4d1";--fa--fa:"\e4d1\e4d1"}.fa-volleyball,.fa-volleyball-ball{--fa:"\f45f";--fa--fa:"\f45f\f45f"}.fa-arrows-up-to-line{--fa:"\e4c2";--fa--fa:"\e4c2\e4c2"}.fa-sort-desc,.fa-sort-down{--fa:"\f0dd";--fa--fa:"\f0dd\f0dd"}.fa-circle-minus,.fa-minus-circle{--fa:"\f056";--fa--fa:"\f056\f056"}.fa-door-open{--fa:"\f52b";--fa--fa:"\f52b\f52b"}.fa-right-from-bracket,.fa-sign-out-alt{--fa:"\f2f5";--fa--fa:"\f2f5\f2f5"}.fa-atom{--fa:"\f5d2";--fa--fa:"\f5d2\f5d2"}.fa-soap{--fa:"\e06e";--fa--fa:"\e06e\e06e"}.fa-heart-music-camera-bolt,.fa-icons{--fa:"\f86d";--fa--fa:"\f86d\f86d"}.fa-microphone-alt-slash,.fa-microphone-lines-slash{--fa:"\f539";--fa--fa:"\f539\f539"}.fa-bridge-circle-check{--fa:"\e4c9";--fa--fa:"\e4c9\e4c9"}.fa-pump-medical{--fa:"\e06a";--fa--fa:"\e06a\e06a"}.fa-fingerprint{--fa:"\f577";--fa--fa:"\f577\f577"}.fa-hand-point-right{--fa:"\f0a4";--fa--fa:"\f0a4\f0a4"}.fa-magnifying-glass-location,.fa-search-location{--fa:"\f689";--fa--fa:"\f689\f689"}.fa-forward-step,.fa-step-forward{--fa:"\f051";--fa--fa:"\f051\f051"}.fa-face-smile-beam,.fa-smile-beam{--fa:"\f5b8";--fa--fa:"\f5b8\f5b8"}.fa-flag-checkered{--fa:"\f11e";--fa--fa:"\f11e\f11e"}.fa-football,.fa-football-ball{--fa:"\f44e";--fa--fa:"\f44e\f44e"}.fa-school-circle-exclamation{--fa:"\e56c";--fa--fa:"\e56c\e56c"}.fa-crop{--fa:"\f125";--fa--fa:"\f125\f125"}.fa-angle-double-down,.fa-angles-down{--fa:"\f103";--fa--fa:"\f103\f103"}.fa-users-rectangle{--fa:"\e594";--fa--fa:"\e594\e594"}.fa-people-roof{--fa:"\e537";--fa--fa:"\e537\e537"}.fa-people-line{--fa:"\e534";--fa--fa:"\e534\e534"}.fa-beer,.fa-beer-mug-empty{--fa:"\f0fc";--fa--fa:"\f0fc\f0fc"}.fa-diagram-predecessor{--fa:"\e477";--fa--fa:"\e477\e477"}.fa-arrow-up-long,.fa-long-arrow-up{--fa:"\f176";--fa--fa:"\f176\f176"}.fa-burn,.fa-fire-flame-simple{--fa:"\f46a";--fa--fa:"\f46a\f46a"}.fa-male,.fa-person{--fa:"\f183";--fa--fa:"\f183\f183"}.fa-laptop{--fa:"\f109";--fa--fa:"\f109\f109"}.fa-file-csv{--fa:"\f6dd";--fa--fa:"\f6dd\f6dd"}.fa-menorah{--fa:"\f676";--fa--fa:"\f676\f676"}.fa-truck-plane{--fa:"\e58f";--fa--fa:"\e58f\e58f"}.fa-record-vinyl{--fa:"\f8d9";--fa--fa:"\f8d9\f8d9"}.fa-face-grin-stars,.fa-grin-stars{--fa:"\f587";--fa--fa:"\f587\f587"}.fa-bong{--fa:"\f55c";--fa--fa:"\f55c\f55c"}.fa-pastafarianism,.fa-spaghetti-monster-flying{--fa:"\f67b";--fa--fa:"\f67b\f67b"}.fa-arrow-down-up-across-line{--fa:"\e4af";--fa--fa:"\e4af\e4af"}.fa-spoon,.fa-utensil-spoon{--fa:"\f2e5";--fa--fa:"\f2e5\f2e5"}.fa-jar-wheat{--fa:"\e517";--fa--fa:"\e517\e517"}.fa-envelopes-bulk,.fa-mail-bulk{--fa:"\f674";--fa--fa:"\f674\f674"}.fa-file-circle-exclamation{--fa:"\e4eb";--fa--fa:"\e4eb\e4eb"}.fa-circle-h,.fa-hospital-symbol{--fa:"\f47e";--fa--fa:"\f47e\f47e"}.fa-pager{--fa:"\f815";--fa--fa:"\f815\f815"}.fa-address-book,.fa-contact-book{--fa:"\f2b9";--fa--fa:"\f2b9\f2b9"}.fa-strikethrough{--fa:"\f0cc";--fa--fa:"\f0cc\f0cc"}.fa-k{--fa:"\4b";--fa--fa:"\4b\4b"}.fa-landmark-flag{--fa:"\e51c";--fa--fa:"\e51c\e51c"}.fa-pencil,.fa-pencil-alt{--fa:"\f303";--fa--fa:"\f303\f303"}.fa-backward{--fa:"\f04a";--fa--fa:"\f04a\f04a"}.fa-caret-right{--fa:"\f0da";--fa--fa:"\f0da\f0da"}.fa-comments{--fa:"\f086";--fa--fa:"\f086\f086"}.fa-file-clipboard,.fa-paste{--fa:"\f0ea";--fa--fa:"\f0ea\f0ea"}.fa-code-pull-request{--fa:"\e13c";--fa--fa:"\e13c\e13c"}.fa-clipboard-list{--fa:"\f46d";--fa--fa:"\f46d\f46d"}.fa-truck-loading,.fa-truck-ramp-box{--fa:"\f4de";--fa--fa:"\f4de\f4de"}.fa-user-check{--fa:"\f4fc";--fa--fa:"\f4fc\f4fc"}.fa-vial-virus{--fa:"\e597";--fa--fa:"\e597\e597"}.fa-sheet-plastic{--fa:"\e571";--fa--fa:"\e571\e571"}.fa-blog{--fa:"\f781";--fa--fa:"\f781\f781"}.fa-user-ninja{--fa:"\f504";--fa--fa:"\f504\f504"}.fa-person-arrow-up-from-line{--fa:"\e539";--fa--fa:"\e539\e539"}.fa-scroll-torah,.fa-torah{--fa:"\f6a0";--fa--fa:"\f6a0\f6a0"}.fa-broom-ball,.fa-quidditch,.fa-quidditch-broom-ball{--fa:"\f458";--fa--fa:"\f458\f458"}.fa-toggle-off{--fa:"\f204";--fa--fa:"\f204\f204"}.fa-archive,.fa-box-archive{--fa:"\f187";--fa--fa:"\f187\f187"}.fa-person-drowning{--fa:"\e545";--fa--fa:"\e545\e545"}.fa-arrow-down-9-1,.fa-sort-numeric-desc,.fa-sort-numeric-down-alt{--fa:"\f886";--fa--fa:"\f886\f886"}.fa-face-grin-tongue-squint,.fa-grin-tongue-squint{--fa:"\f58a";--fa--fa:"\f58a\f58a"}.fa-spray-can{--fa:"\f5bd";--fa--fa:"\f5bd\f5bd"}.fa-truck-monster{--fa:"\f63b";--fa--fa:"\f63b\f63b"}.fa-w{--fa:"\57";--fa--fa:"\57\57"}.fa-earth-africa,.fa-globe-africa{--fa:"\f57c";--fa--fa:"\f57c\f57c"}.fa-rainbow{--fa:"\f75b";--fa--fa:"\f75b\f75b"}.fa-circle-notch{--fa:"\f1ce";--fa--fa:"\f1ce\f1ce"}.fa-tablet-alt,.fa-tablet-screen-button{--fa:"\f3fa";--fa--fa:"\f3fa\f3fa"}.fa-paw{--fa:"\f1b0";--fa--fa:"\f1b0\f1b0"}.fa-cloud{--fa:"\f0c2";--fa--fa:"\f0c2\f0c2"}.fa-trowel-bricks{--fa:"\e58a";--fa--fa:"\e58a\e58a"}.fa-face-flushed,.fa-flushed{--fa:"\f579";--fa--fa:"\f579\f579"}.fa-hospital-user{--fa:"\f80d";--fa--fa:"\f80d\f80d"}.fa-tent-arrow-left-right{--fa:"\e57f";--fa--fa:"\e57f\e57f"}.fa-gavel,.fa-legal{--fa:"\f0e3";--fa--fa:"\f0e3\f0e3"}.fa-binoculars{--fa:"\f1e5";--fa--fa:"\f1e5\f1e5"}.fa-microphone-slash{--fa:"\f131";--fa--fa:"\f131\f131"}.fa-box-tissue{--fa:"\e05b";--fa--fa:"\e05b\e05b"}.fa-motorcycle{--fa:"\f21c";--fa--fa:"\f21c\f21c"}.fa-bell-concierge,.fa-concierge-bell{--fa:"\f562";--fa--fa:"\f562\f562"}.fa-pen-ruler,.fa-pencil-ruler{--fa:"\f5ae";--fa--fa:"\f5ae\f5ae"}.fa-people-arrows,.fa-people-arrows-left-right{--fa:"\e068";--fa--fa:"\e068\e068"}.fa-mars-and-venus-burst{--fa:"\e523";--fa--fa:"\e523\e523"}.fa-caret-square-right,.fa-square-caret-right{--fa:"\f152";--fa--fa:"\f152\f152"}.fa-cut,.fa-scissors{--fa:"\f0c4";--fa--fa:"\f0c4\f0c4"}.fa-sun-plant-wilt{--fa:"\e57a";--fa--fa:"\e57a\e57a"}.fa-toilets-portable{--fa:"\e584";--fa--fa:"\e584\e584"}.fa-hockey-puck{--fa:"\f453";--fa--fa:"\f453\f453"}.fa-table{--fa:"\f0ce";--fa--fa:"\f0ce\f0ce"}.fa-magnifying-glass-arrow-right{--fa:"\e521";--fa--fa:"\e521\e521"}.fa-digital-tachograph,.fa-tachograph-digital{--fa:"\f566";--fa--fa:"\f566\f566"}.fa-users-slash{--fa:"\e073";--fa--fa:"\e073\e073"}.fa-clover{--fa:"\e139";--fa--fa:"\e139\e139"}.fa-mail-reply,.fa-reply{--fa:"\f3e5";--fa--fa:"\f3e5\f3e5"}.fa-star-and-crescent{--fa:"\f699";--fa--fa:"\f699\f699"}.fa-house-fire{--fa:"\e50c";--fa--fa:"\e50c\e50c"}.fa-minus-square,.fa-square-minus{--fa:"\f146";--fa--fa:"\f146\f146"}.fa-helicopter{--fa:"\f533";--fa--fa:"\f533\f533"}.fa-compass{--fa:"\f14e";--fa--fa:"\f14e\f14e"}.fa-caret-square-down,.fa-square-caret-down{--fa:"\f150";--fa--fa:"\f150\f150"}.fa-file-circle-question{--fa:"\e4ef";--fa--fa:"\e4ef\e4ef"}.fa-laptop-code{--fa:"\f5fc";--fa--fa:"\f5fc\f5fc"}.fa-swatchbook{--fa:"\f5c3";--fa--fa:"\f5c3\f5c3"}.fa-prescription-bottle{--fa:"\f485";--fa--fa:"\f485\f485"}.fa-bars,.fa-navicon{--fa:"\f0c9";--fa--fa:"\f0c9\f0c9"}.fa-people-group{--fa:"\e533";--fa--fa:"\e533\e533"}.fa-hourglass-3,.fa-hourglass-end{--fa:"\f253";--fa--fa:"\f253\f253"}.fa-heart-broken,.fa-heart-crack{--fa:"\f7a9";--fa--fa:"\f7a9\f7a9"}.fa-external-link-square-alt,.fa-square-up-right{--fa:"\f360";--fa--fa:"\f360\f360"}.fa-face-kiss-beam,.fa-kiss-beam{--fa:"\f597";--fa--fa:"\f597\f597"}.fa-film{--fa:"\f008";--fa--fa:"\f008\f008"}.fa-ruler-horizontal{--fa:"\f547";--fa--fa:"\f547\f547"}.fa-people-robbery{--fa:"\e536";--fa--fa:"\e536\e536"}.fa-lightbulb{--fa:"\f0eb";--fa--fa:"\f0eb\f0eb"}.fa-caret-left{--fa:"\f0d9";--fa--fa:"\f0d9\f0d9"}.fa-circle-exclamation,.fa-exclamation-circle{--fa:"\f06a";--fa--fa:"\f06a\f06a"}.fa-school-circle-xmark{--fa:"\e56d";--fa--fa:"\e56d\e56d"}.fa-arrow-right-from-bracket,.fa-sign-out{--fa:"\f08b";--fa--fa:"\f08b\f08b"}.fa-chevron-circle-down,.fa-circle-chevron-down{--fa:"\f13a";--fa--fa:"\f13a\f13a"}.fa-unlock-alt,.fa-unlock-keyhole{--fa:"\f13e";--fa--fa:"\f13e\f13e"}.fa-cloud-showers-heavy{--fa:"\f740";--fa--fa:"\f740\f740"}.fa-headphones-alt,.fa-headphones-simple{--fa:"\f58f";--fa--fa:"\f58f\f58f"}.fa-sitemap{--fa:"\f0e8";--fa--fa:"\f0e8\f0e8"}.fa-circle-dollar-to-slot,.fa-donate{--fa:"\f4b9";--fa--fa:"\f4b9\f4b9"}.fa-memory{--fa:"\f538";--fa--fa:"\f538\f538"}.fa-road-spikes{--fa:"\e568";--fa--fa:"\e568\e568"}.fa-fire-burner{--fa:"\e4f1";--fa--fa:"\e4f1\e4f1"}.fa-flag{--fa:"\f024";--fa--fa:"\f024\f024"}.fa-hanukiah{--fa:"\f6e6";--fa--fa:"\f6e6\f6e6"}.fa-feather{--fa:"\f52d";--fa--fa:"\f52d\f52d"}.fa-volume-down,.fa-volume-low{--fa:"\f027";--fa--fa:"\f027\f027"}.fa-comment-slash{--fa:"\f4b3";--fa--fa:"\f4b3\f4b3"}.fa-cloud-sun-rain{--fa:"\f743";--fa--fa:"\f743\f743"}.fa-compress{--fa:"\f066";--fa--fa:"\f066\f066"}.fa-wheat-alt,.fa-wheat-awn{--fa:"\e2cd";--fa--fa:"\e2cd\e2cd"}.fa-ankh{--fa:"\f644";--fa--fa:"\f644\f644"}.fa-hands-holding-child{--fa:"\e4fa";--fa--fa:"\e4fa\e4fa"}.fa-asterisk{--fa:"\2a";--fa--fa:"\2a\2a"}.fa-check-square,.fa-square-check{--fa:"\f14a";--fa--fa:"\f14a\f14a"}.fa-peseta-sign{--fa:"\e221";--fa--fa:"\e221\e221"}.fa-header,.fa-heading{--fa:"\f1dc";--fa--fa:"\f1dc\f1dc"}.fa-ghost{--fa:"\f6e2";--fa--fa:"\f6e2\f6e2"}.fa-list,.fa-list-squares{--fa:"\f03a";--fa--fa:"\f03a\f03a"}.fa-phone-square-alt,.fa-square-phone-flip{--fa:"\f87b";--fa--fa:"\f87b\f87b"}.fa-cart-plus{--fa:"\f217";--fa--fa:"\f217\f217"}.fa-gamepad{--fa:"\f11b";--fa--fa:"\f11b\f11b"}.fa-circle-dot,.fa-dot-circle{--fa:"\f192";--fa--fa:"\f192\f192"}.fa-dizzy,.fa-face-dizzy{--fa:"\f567";--fa--fa:"\f567\f567"}.fa-egg{--fa:"\f7fb";--fa--fa:"\f7fb\f7fb"}.fa-house-medical-circle-xmark{--fa:"\e513";--fa--fa:"\e513\e513"}.fa-campground{--fa:"\f6bb";--fa--fa:"\f6bb\f6bb"}.fa-folder-plus{--fa:"\f65e";--fa--fa:"\f65e\f65e"}.fa-futbol,.fa-futbol-ball,.fa-soccer-ball{--fa:"\f1e3";--fa--fa:"\f1e3\f1e3"}.fa-paint-brush,.fa-paintbrush{--fa:"\f1fc";--fa--fa:"\f1fc\f1fc"}.fa-lock{--fa:"\f023";--fa--fa:"\f023\f023"}.fa-gas-pump{--fa:"\f52f";--fa--fa:"\f52f\f52f"}.fa-hot-tub,.fa-hot-tub-person{--fa:"\f593";--fa--fa:"\f593\f593"}.fa-map-location,.fa-map-marked{--fa:"\f59f";--fa--fa:"\f59f\f59f"}.fa-house-flood-water{--fa:"\e50e";--fa--fa:"\e50e\e50e"}.fa-tree{--fa:"\f1bb";--fa--fa:"\f1bb\f1bb"}.fa-bridge-lock{--fa:"\e4cc";--fa--fa:"\e4cc\e4cc"}.fa-sack-dollar{--fa:"\f81d";--fa--fa:"\f81d\f81d"}.fa-edit,.fa-pen-to-square{--fa:"\f044";--fa--fa:"\f044\f044"}.fa-car-side{--fa:"\f5e4";--fa--fa:"\f5e4\f5e4"}.fa-share-alt,.fa-share-nodes{--fa:"\f1e0";--fa--fa:"\f1e0\f1e0"}.fa-heart-circle-minus{--fa:"\e4ff";--fa--fa:"\e4ff\e4ff"}.fa-hourglass-2,.fa-hourglass-half{--fa:"\f252";--fa--fa:"\f252\f252"}.fa-microscope{--fa:"\f610";--fa--fa:"\f610\f610"}.fa-sink{--fa:"\e06d";--fa--fa:"\e06d\e06d"}.fa-bag-shopping,.fa-shopping-bag{--fa:"\f290";--fa--fa:"\f290\f290"}.fa-arrow-down-z-a,.fa-sort-alpha-desc,.fa-sort-alpha-down-alt{--fa:"\f881";--fa--fa:"\f881\f881"}.fa-mitten{--fa:"\f7b5";--fa--fa:"\f7b5\f7b5"}.fa-person-rays{--fa:"\e54d";--fa--fa:"\e54d\e54d"}.fa-users{--fa:"\f0c0";--fa--fa:"\f0c0\f0c0"}.fa-eye-slash{--fa:"\f070";--fa--fa:"\f070\f070"}.fa-flask-vial{--fa:"\e4f3";--fa--fa:"\e4f3\e4f3"}.fa-hand,.fa-hand-paper{--fa:"\f256";--fa--fa:"\f256\f256"}.fa-om{--fa:"\f679";--fa--fa:"\f679\f679"}.fa-worm{--fa:"\e599";--fa--fa:"\e599\e599"}.fa-house-circle-xmark{--fa:"\e50b";--fa--fa:"\e50b\e50b"}.fa-plug{--fa:"\f1e6";--fa--fa:"\f1e6\f1e6"}.fa-chevron-up{--fa:"\f077";--fa--fa:"\f077\f077"}.fa-hand-spock{--fa:"\f259";--fa--fa:"\f259\f259"}.fa-stopwatch{--fa:"\f2f2";--fa--fa:"\f2f2\f2f2"}.fa-face-kiss,.fa-kiss{--fa:"\f596";--fa--fa:"\f596\f596"}.fa-bridge-circle-xmark{--fa:"\e4cb";--fa--fa:"\e4cb\e4cb"}.fa-face-grin-tongue,.fa-grin-tongue{--fa:"\f589";--fa--fa:"\f589\f589"}.fa-chess-bishop{--fa:"\f43a";--fa--fa:"\f43a\f43a"}.fa-face-grin-wink,.fa-grin-wink{--fa:"\f58c";--fa--fa:"\f58c\f58c"}.fa-deaf,.fa-deafness,.fa-ear-deaf,.fa-hard-of-hearing{--fa:"\f2a4";--fa--fa:"\f2a4\f2a4"}.fa-road-circle-check{--fa:"\e564";--fa--fa:"\e564\e564"}.fa-dice-five{--fa:"\f523";--fa--fa:"\f523\f523"}.fa-rss-square,.fa-square-rss{--fa:"\f143";--fa--fa:"\f143\f143"}.fa-land-mine-on{--fa:"\e51b";--fa--fa:"\e51b\e51b"}.fa-i-cursor{--fa:"\f246";--fa--fa:"\f246\f246"}.fa-stamp{--fa:"\f5bf";--fa--fa:"\f5bf\f5bf"}.fa-stairs{--fa:"\e289";--fa--fa:"\e289\e289"}.fa-i{--fa:"\49";--fa--fa:"\49\49"}.fa-hryvnia,.fa-hryvnia-sign{--fa:"\f6f2";--fa--fa:"\f6f2\f6f2"}.fa-pills{--fa:"\f484";--fa--fa:"\f484\f484"}.fa-face-grin-wide,.fa-grin-alt{--fa:"\f581";--fa--fa:"\f581\f581"}.fa-tooth{--fa:"\f5c9";--fa--fa:"\f5c9\f5c9"}.fa-v{--fa:"\56";--fa--fa:"\56\56"}.fa-bangladeshi-taka-sign{--fa:"\e2e6";--fa--fa:"\e2e6\e2e6"}.fa-bicycle{--fa:"\f206";--fa--fa:"\f206\f206"}.fa-rod-asclepius,.fa-rod-snake,.fa-staff-aesculapius,.fa-staff-snake{--fa:"\e579";--fa--fa:"\e579\e579"}.fa-head-side-cough-slash{--fa:"\e062";--fa--fa:"\e062\e062"}.fa-ambulance,.fa-truck-medical{--fa:"\f0f9";--fa--fa:"\f0f9\f0f9"}.fa-wheat-awn-circle-exclamation{--fa:"\e598";--fa--fa:"\e598\e598"}.fa-snowman{--fa:"\f7d0";--fa--fa:"\f7d0\f7d0"}.fa-mortar-pestle{--fa:"\f5a7";--fa--fa:"\f5a7\f5a7"}.fa-road-barrier{--fa:"\e562";--fa--fa:"\e562\e562"}.fa-school{--fa:"\f549";--fa--fa:"\f549\f549"}.fa-igloo{--fa:"\f7ae";--fa--fa:"\f7ae\f7ae"}.fa-joint{--fa:"\f595";--fa--fa:"\f595\f595"}.fa-angle-right{--fa:"\f105";--fa--fa:"\f105\f105"}.fa-horse{--fa:"\f6f0";--fa--fa:"\f6f0\f6f0"}.fa-q{--fa:"\51";--fa--fa:"\51\51"}.fa-g{--fa:"\47";--fa--fa:"\47\47"}.fa-notes-medical{--fa:"\f481";--fa--fa:"\f481\f481"}.fa-temperature-2,.fa-temperature-half,.fa-thermometer-2,.fa-thermometer-half{--fa:"\f2c9";--fa--fa:"\f2c9\f2c9"}.fa-dong-sign{--fa:"\e169";--fa--fa:"\e169\e169"}.fa-capsules{--fa:"\f46b";--fa--fa:"\f46b\f46b"}.fa-poo-bolt,.fa-poo-storm{--fa:"\f75a";--fa--fa:"\f75a\f75a"}.fa-face-frown-open,.fa-frown-open{--fa:"\f57a";--fa--fa:"\f57a\f57a"}.fa-hand-point-up{--fa:"\f0a6";--fa--fa:"\f0a6\f0a6"}.fa-money-bill{--fa:"\f0d6";--fa--fa:"\f0d6\f0d6"}.fa-bookmark{--fa:"\f02e";--fa--fa:"\f02e\f02e"}.fa-align-justify{--fa:"\f039";--fa--fa:"\f039\f039"}.fa-umbrella-beach{--fa:"\f5ca";--fa--fa:"\f5ca\f5ca"}.fa-helmet-un{--fa:"\e503";--fa--fa:"\e503\e503"}.fa-bullseye{--fa:"\f140";--fa--fa:"\f140\f140"}.fa-bacon{--fa:"\f7e5";--fa--fa:"\f7e5\f7e5"}.fa-hand-point-down{--fa:"\f0a7";--fa--fa:"\f0a7\f0a7"}.fa-arrow-up-from-bracket{--fa:"\e09a";--fa--fa:"\e09a\e09a"}.fa-folder,.fa-folder-blank{--fa:"\f07b";--fa--fa:"\f07b\f07b"}.fa-file-medical-alt,.fa-file-waveform{--fa:"\f478";--fa--fa:"\f478\f478"}.fa-radiation{--fa:"\f7b9";--fa--fa:"\f7b9\f7b9"}.fa-chart-simple{--fa:"\e473";--fa--fa:"\e473\e473"}.fa-mars-stroke{--fa:"\f229";--fa--fa:"\f229\f229"}.fa-vial{--fa:"\f492";--fa--fa:"\f492\f492"}.fa-dashboard,.fa-gauge,.fa-gauge-med,.fa-tachometer-alt-average{--fa:"\f624";--fa--fa:"\f624\f624"}.fa-magic-wand-sparkles,.fa-wand-magic-sparkles{--fa:"\e2ca";--fa--fa:"\e2ca\e2ca"}.fa-e{--fa:"\45";--fa--fa:"\45\45"}.fa-pen-alt,.fa-pen-clip{--fa:"\f305";--fa--fa:"\f305\f305"}.fa-bridge-circle-exclamation{--fa:"\e4ca";--fa--fa:"\e4ca\e4ca"}.fa-user{--fa:"\f007";--fa--fa:"\f007\f007"}.fa-school-circle-check{--fa:"\e56b";--fa--fa:"\e56b\e56b"}.fa-dumpster{--fa:"\f793";--fa--fa:"\f793\f793"}.fa-shuttle-van,.fa-van-shuttle{--fa:"\f5b6";--fa--fa:"\f5b6\f5b6"}.fa-building-user{--fa:"\e4da";--fa--fa:"\e4da\e4da"}.fa-caret-square-left,.fa-square-caret-left{--fa:"\f191";--fa--fa:"\f191\f191"}.fa-highlighter{--fa:"\f591";--fa--fa:"\f591\f591"}.fa-key{--fa:"\f084";--fa--fa:"\f084\f084"}.fa-bullhorn{--fa:"\f0a1";--fa--fa:"\f0a1\f0a1"}.fa-globe{--fa:"\f0ac";--fa--fa:"\f0ac\f0ac"}.fa-synagogue{--fa:"\f69b";--fa--fa:"\f69b\f69b"}.fa-person-half-dress{--fa:"\e548";--fa--fa:"\e548\e548"}.fa-road-bridge{--fa:"\e563";--fa--fa:"\e563\e563"}.fa-location-arrow{--fa:"\f124";--fa--fa:"\f124\f124"}.fa-c{--fa:"\43";--fa--fa:"\43\43"}.fa-tablet-button{--fa:"\f10a";--fa--fa:"\f10a\f10a"}.fa-building-lock{--fa:"\e4d6";--fa--fa:"\e4d6\e4d6"}.fa-pizza-slice{--fa:"\f818";--fa--fa:"\f818\f818"}.fa-money-bill-wave{--fa:"\f53a";--fa--fa:"\f53a\f53a"}.fa-area-chart,.fa-chart-area{--fa:"\f1fe";--fa--fa:"\f1fe\f1fe"}.fa-house-flag{--fa:"\e50d";--fa--fa:"\e50d\e50d"}.fa-person-circle-minus{--fa:"\e540";--fa--fa:"\e540\e540"}.fa-ban,.fa-cancel{--fa:"\f05e";--fa--fa:"\f05e\f05e"}.fa-camera-rotate{--fa:"\e0d8";--fa--fa:"\e0d8\e0d8"}.fa-air-freshener,.fa-spray-can-sparkles{--fa:"\f5d0";--fa--fa:"\f5d0\f5d0"}.fa-star{--fa:"\f005";--fa--fa:"\f005\f005"}.fa-repeat{--fa:"\f363";--fa--fa:"\f363\f363"}.fa-cross{--fa:"\f654";--fa--fa:"\f654\f654"}.fa-box{--fa:"\f466";--fa--fa:"\f466\f466"}.fa-venus-mars{--fa:"\f228";--fa--fa:"\f228\f228"}.fa-arrow-pointer,.fa-mouse-pointer{--fa:"\f245";--fa--fa:"\f245\f245"}.fa-expand-arrows-alt,.fa-maximize{--fa:"\f31e";--fa--fa:"\f31e\f31e"}.fa-charging-station{--fa:"\f5e7";--fa--fa:"\f5e7\f5e7"}.fa-shapes,.fa-triangle-circle-square{--fa:"\f61f";--fa--fa:"\f61f\f61f"}.fa-random,.fa-shuffle{--fa:"\f074";--fa--fa:"\f074\f074"}.fa-person-running,.fa-running{--fa:"\f70c";--fa--fa:"\f70c\f70c"}.fa-mobile-retro{--fa:"\e527";--fa--fa:"\e527\e527"}.fa-grip-lines-vertical{--fa:"\f7a5";--fa--fa:"\f7a5\f7a5"}.fa-spider{--fa:"\f717";--fa--fa:"\f717\f717"}.fa-hands-bound{--fa:"\e4f9";--fa--fa:"\e4f9\e4f9"}.fa-file-invoice-dollar{--fa:"\f571";--fa--fa:"\f571\f571"}.fa-plane-circle-exclamation{--fa:"\e556";--fa--fa:"\e556\e556"}.fa-x-ray{--fa:"\f497";--fa--fa:"\f497\f497"}.fa-spell-check{--fa:"\f891";--fa--fa:"\f891\f891"}.fa-slash{--fa:"\f715";--fa--fa:"\f715\f715"}.fa-computer-mouse,.fa-mouse{--fa:"\f8cc";--fa--fa:"\f8cc\f8cc"}.fa-arrow-right-to-bracket,.fa-sign-in{--fa:"\f090";--fa--fa:"\f090\f090"}.fa-shop-slash,.fa-store-alt-slash{--fa:"\e070";--fa--fa:"\e070\e070"}.fa-server{--fa:"\f233";--fa--fa:"\f233\f233"}.fa-virus-covid-slash{--fa:"\e4a9";--fa--fa:"\e4a9\e4a9"}.fa-shop-lock{--fa:"\e4a5";--fa--fa:"\e4a5\e4a5"}.fa-hourglass-1,.fa-hourglass-start{--fa:"\f251";--fa--fa:"\f251\f251"}.fa-blender-phone{--fa:"\f6b6";--fa--fa:"\f6b6\f6b6"}.fa-building-wheat{--fa:"\e4db";--fa--fa:"\e4db\e4db"}.fa-person-breastfeeding{--fa:"\e53a";--fa--fa:"\e53a\e53a"}.fa-right-to-bracket,.fa-sign-in-alt{--fa:"\f2f6";--fa--fa:"\f2f6\f2f6"}.fa-venus{--fa:"\f221";--fa--fa:"\f221\f221"}.fa-passport{--fa:"\f5ab";--fa--fa:"\f5ab\f5ab"}.fa-thumb-tack-slash,.fa-thumbtack-slash{--fa:"\e68f";--fa--fa:"\e68f\e68f"}.fa-heart-pulse,.fa-heartbeat{--fa:"\f21e";--fa--fa:"\f21e\f21e"}.fa-people-carry,.fa-people-carry-box{--fa:"\f4ce";--fa--fa:"\f4ce\f4ce"}.fa-temperature-high{--fa:"\f769";--fa--fa:"\f769\f769"}.fa-microchip{--fa:"\f2db";--fa--fa:"\f2db\f2db"}.fa-crown{--fa:"\f521";--fa--fa:"\f521\f521"}.fa-weight-hanging{--fa:"\f5cd";--fa--fa:"\f5cd\f5cd"}.fa-xmarks-lines{--fa:"\e59a";--fa--fa:"\e59a\e59a"}.fa-file-prescription{--fa:"\f572";--fa--fa:"\f572\f572"}.fa-weight,.fa-weight-scale{--fa:"\f496";--fa--fa:"\f496\f496"}.fa-user-friends,.fa-user-group{--fa:"\f500";--fa--fa:"\f500\f500"}.fa-arrow-up-a-z,.fa-sort-alpha-up{--fa:"\f15e";--fa--fa:"\f15e\f15e"}.fa-chess-knight{--fa:"\f441";--fa--fa:"\f441\f441"}.fa-face-laugh-squint,.fa-laugh-squint{--fa:"\f59b";--fa--fa:"\f59b\f59b"}.fa-wheelchair{--fa:"\f193";--fa--fa:"\f193\f193"}.fa-arrow-circle-up,.fa-circle-arrow-up{--fa:"\f0aa";--fa--fa:"\f0aa\f0aa"}.fa-toggle-on{--fa:"\f205";--fa--fa:"\f205\f205"}.fa-person-walking,.fa-walking{--fa:"\f554";--fa--fa:"\f554\f554"}.fa-l{--fa:"\4c";--fa--fa:"\4c\4c"}.fa-fire{--fa:"\f06d";--fa--fa:"\f06d\f06d"}.fa-bed-pulse,.fa-procedures{--fa:"\f487";--fa--fa:"\f487\f487"}.fa-shuttle-space,.fa-space-shuttle{--fa:"\f197";--fa--fa:"\f197\f197"}.fa-face-laugh,.fa-laugh{--fa:"\f599";--fa--fa:"\f599\f599"}.fa-folder-open{--fa:"\f07c";--fa--fa:"\f07c\f07c"}.fa-heart-circle-plus{--fa:"\e500";--fa--fa:"\e500\e500"}.fa-code-fork{--fa:"\e13b";--fa--fa:"\e13b\e13b"}.fa-city{--fa:"\f64f";--fa--fa:"\f64f\f64f"}.fa-microphone-alt,.fa-microphone-lines{--fa:"\f3c9";--fa--fa:"\f3c9\f3c9"}.fa-pepper-hot{--fa:"\f816";--fa--fa:"\f816\f816"}.fa-unlock{--fa:"\f09c";--fa--fa:"\f09c\f09c"}.fa-colon-sign{--fa:"\e140";--fa--fa:"\e140\e140"}.fa-headset{--fa:"\f590";--fa--fa:"\f590\f590"}.fa-store-slash{--fa:"\e071";--fa--fa:"\e071\e071"}.fa-road-circle-xmark{--fa:"\e566";--fa--fa:"\e566\e566"}.fa-user-minus{--fa:"\f503";--fa--fa:"\f503\f503"}.fa-mars-stroke-up,.fa-mars-stroke-v{--fa:"\f22a";--fa--fa:"\f22a\f22a"}.fa-champagne-glasses,.fa-glass-cheers{--fa:"\f79f";--fa--fa:"\f79f\f79f"}.fa-clipboard{--fa:"\f328";--fa--fa:"\f328\f328"}.fa-house-circle-exclamation{--fa:"\e50a";--fa--fa:"\e50a\e50a"}.fa-file-arrow-up,.fa-file-upload{--fa:"\f574";--fa--fa:"\f574\f574"}.fa-wifi,.fa-wifi-3,.fa-wifi-strong{--fa:"\f1eb";--fa--fa:"\f1eb\f1eb"}.fa-bath,.fa-bathtub{--fa:"\f2cd";--fa--fa:"\f2cd\f2cd"}.fa-underline{--fa:"\f0cd";--fa--fa:"\f0cd\f0cd"}.fa-user-edit,.fa-user-pen{--fa:"\f4ff";--fa--fa:"\f4ff\f4ff"}.fa-signature{--fa:"\f5b7";--fa--fa:"\f5b7\f5b7"}.fa-stroopwafel{--fa:"\f551";--fa--fa:"\f551\f551"}.fa-bold{--fa:"\f032";--fa--fa:"\f032\f032"}.fa-anchor-lock{--fa:"\e4ad";--fa--fa:"\e4ad\e4ad"}.fa-building-ngo{--fa:"\e4d7";--fa--fa:"\e4d7\e4d7"}.fa-manat-sign{--fa:"\e1d5";--fa--fa:"\e1d5\e1d5"}.fa-not-equal{--fa:"\f53e";--fa--fa:"\f53e\f53e"}.fa-border-style,.fa-border-top-left{--fa:"\f853";--fa--fa:"\f853\f853"}.fa-map-location-dot,.fa-map-marked-alt{--fa:"\f5a0";--fa--fa:"\f5a0\f5a0"}.fa-jedi{--fa:"\f669";--fa--fa:"\f669\f669"}.fa-poll,.fa-square-poll-vertical{--fa:"\f681";--fa--fa:"\f681\f681"}.fa-mug-hot{--fa:"\f7b6";--fa--fa:"\f7b6\f7b6"}.fa-battery-car,.fa-car-battery{--fa:"\f5df";--fa--fa:"\f5df\f5df"}.fa-gift{--fa:"\f06b";--fa--fa:"\f06b\f06b"}.fa-dice-two{--fa:"\f528";--fa--fa:"\f528\f528"}.fa-chess-queen{--fa:"\f445";--fa--fa:"\f445\f445"}.fa-glasses{--fa:"\f530";--fa--fa:"\f530\f530"}.fa-chess-board{--fa:"\f43c";--fa--fa:"\f43c\f43c"}.fa-building-circle-check{--fa:"\e4d2";--fa--fa:"\e4d2\e4d2"}.fa-person-chalkboard{--fa:"\e53d";--fa--fa:"\e53d\e53d"}.fa-mars-stroke-h,.fa-mars-stroke-right{--fa:"\f22b";--fa--fa:"\f22b\f22b"}.fa-hand-back-fist,.fa-hand-rock{--fa:"\f255";--fa--fa:"\f255\f255"}.fa-caret-square-up,.fa-square-caret-up{--fa:"\f151";--fa--fa:"\f151\f151"}.fa-cloud-showers-water{--fa:"\e4e4";--fa--fa:"\e4e4\e4e4"}.fa-bar-chart,.fa-chart-bar{--fa:"\f080";--fa--fa:"\f080\f080"}.fa-hands-bubbles,.fa-hands-wash{--fa:"\e05e";--fa--fa:"\e05e\e05e"}.fa-less-than-equal{--fa:"\f537";--fa--fa:"\f537\f537"}.fa-train{--fa:"\f238";--fa--fa:"\f238\f238"}.fa-eye-low-vision,.fa-low-vision{--fa:"\f2a8";--fa--fa:"\f2a8\f2a8"}.fa-crow{--fa:"\f520";--fa--fa:"\f520\f520"}.fa-sailboat{--fa:"\e445";--fa--fa:"\e445\e445"}.fa-window-restore{--fa:"\f2d2";--fa--fa:"\f2d2\f2d2"}.fa-plus-square,.fa-square-plus{--fa:"\f0fe";--fa--fa:"\f0fe\f0fe"}.fa-torii-gate{--fa:"\f6a1";--fa--fa:"\f6a1\f6a1"}.fa-frog{--fa:"\f52e";--fa--fa:"\f52e\f52e"}.fa-bucket{--fa:"\e4cf";--fa--fa:"\e4cf\e4cf"}.fa-image{--fa:"\f03e";--fa--fa:"\f03e\f03e"}.fa-microphone{--fa:"\f130";--fa--fa:"\f130\f130"}.fa-cow{--fa:"\f6c8";--fa--fa:"\f6c8\f6c8"}.fa-caret-up{--fa:"\f0d8";--fa--fa:"\f0d8\f0d8"}.fa-screwdriver{--fa:"\f54a";--fa--fa:"\f54a\f54a"}.fa-folder-closed{--fa:"\e185";--fa--fa:"\e185\e185"}.fa-house-tsunami{--fa:"\e515";--fa--fa:"\e515\e515"}.fa-square-nfi{--fa:"\e576";--fa--fa:"\e576\e576"}.fa-arrow-up-from-ground-water{--fa:"\e4b5";--fa--fa:"\e4b5\e4b5"}.fa-glass-martini-alt,.fa-martini-glass{--fa:"\f57b";--fa--fa:"\f57b\f57b"}.fa-square-binary{--fa:"\e69b";--fa--fa:"\e69b\e69b"}.fa-rotate-back,.fa-rotate-backward,.fa-rotate-left,.fa-undo-alt{--fa:"\f2ea";--fa--fa:"\f2ea\f2ea"}.fa-columns,.fa-table-columns{--fa:"\f0db";--fa--fa:"\f0db\f0db"}.fa-lemon{--fa:"\f094";--fa--fa:"\f094\f094"}.fa-head-side-mask{--fa:"\e063";--fa--fa:"\e063\e063"}.fa-handshake{--fa:"\f2b5";--fa--fa:"\f2b5\f2b5"}.fa-gem{--fa:"\f3a5";--fa--fa:"\f3a5\f3a5"}.fa-dolly,.fa-dolly-box{--fa:"\f472";--fa--fa:"\f472\f472"}.fa-smoking{--fa:"\f48d";--fa--fa:"\f48d\f48d"}.fa-compress-arrows-alt,.fa-minimize{--fa:"\f78c";--fa--fa:"\f78c\f78c"}.fa-monument{--fa:"\f5a6";--fa--fa:"\f5a6\f5a6"}.fa-snowplow{--fa:"\f7d2";--fa--fa:"\f7d2\f7d2"}.fa-angle-double-right,.fa-angles-right{--fa:"\f101";--fa--fa:"\f101\f101"}.fa-cannabis{--fa:"\f55f";--fa--fa:"\f55f\f55f"}.fa-circle-play,.fa-play-circle{--fa:"\f144";--fa--fa:"\f144\f144"}.fa-tablets{--fa:"\f490";--fa--fa:"\f490\f490"}.fa-ethernet{--fa:"\f796";--fa--fa:"\f796\f796"}.fa-eur,.fa-euro,.fa-euro-sign{--fa:"\f153";--fa--fa:"\f153\f153"}.fa-chair{--fa:"\f6c0";--fa--fa:"\f6c0\f6c0"}.fa-check-circle,.fa-circle-check{--fa:"\f058";--fa--fa:"\f058\f058"}.fa-circle-stop,.fa-stop-circle{--fa:"\f28d";--fa--fa:"\f28d\f28d"}.fa-compass-drafting,.fa-drafting-compass{--fa:"\f568";--fa--fa:"\f568\f568"}.fa-plate-wheat{--fa:"\e55a";--fa--fa:"\e55a\e55a"}.fa-icicles{--fa:"\f7ad";--fa--fa:"\f7ad\f7ad"}.fa-person-shelter{--fa:"\e54f";--fa--fa:"\e54f\e54f"}.fa-neuter{--fa:"\f22c";--fa--fa:"\f22c\f22c"}.fa-id-badge{--fa:"\f2c1";--fa--fa:"\f2c1\f2c1"}.fa-marker{--fa:"\f5a1";--fa--fa:"\f5a1\f5a1"}.fa-face-laugh-beam,.fa-laugh-beam{--fa:"\f59a";--fa--fa:"\f59a\f59a"}.fa-helicopter-symbol{--fa:"\e502";--fa--fa:"\e502\e502"}.fa-universal-access{--fa:"\f29a";--fa--fa:"\f29a\f29a"}.fa-chevron-circle-up,.fa-circle-chevron-up{--fa:"\f139";--fa--fa:"\f139\f139"}.fa-lari-sign{--fa:"\e1c8";--fa--fa:"\e1c8\e1c8"}.fa-volcano{--fa:"\f770";--fa--fa:"\f770\f770"}.fa-person-walking-dashed-line-arrow-right{--fa:"\e553";--fa--fa:"\e553\e553"}.fa-gbp,.fa-pound-sign,.fa-sterling-sign{--fa:"\f154";--fa--fa:"\f154\f154"}.fa-viruses{--fa:"\e076";--fa--fa:"\e076\e076"}.fa-square-person-confined{--fa:"\e577";--fa--fa:"\e577\e577"}.fa-user-tie{--fa:"\f508";--fa--fa:"\f508\f508"}.fa-arrow-down-long,.fa-long-arrow-down{--fa:"\f175";--fa--fa:"\f175\f175"}.fa-tent-arrow-down-to-line{--fa:"\e57e";--fa--fa:"\e57e\e57e"}.fa-certificate{--fa:"\f0a3";--fa--fa:"\f0a3\f0a3"}.fa-mail-reply-all,.fa-reply-all{--fa:"\f122";--fa--fa:"\f122\f122"}.fa-suitcase{--fa:"\f0f2";--fa--fa:"\f0f2\f0f2"}.fa-person-skating,.fa-skating{--fa:"\f7c5";--fa--fa:"\f7c5\f7c5"}.fa-filter-circle-dollar,.fa-funnel-dollar{--fa:"\f662";--fa--fa:"\f662\f662"}.fa-camera-retro{--fa:"\f083";--fa--fa:"\f083\f083"}.fa-arrow-circle-down,.fa-circle-arrow-down{--fa:"\f0ab";--fa--fa:"\f0ab\f0ab"}.fa-arrow-right-to-file,.fa-file-import{--fa:"\f56f";--fa--fa:"\f56f\f56f"}.fa-external-link-square,.fa-square-arrow-up-right{--fa:"\f14c";--fa--fa:"\f14c\f14c"}.fa-box-open{--fa:"\f49e";--fa--fa:"\f49e\f49e"}.fa-scroll{--fa:"\f70e";--fa--fa:"\f70e\f70e"}.fa-spa{--fa:"\f5bb";--fa--fa:"\f5bb\f5bb"}.fa-location-pin-lock{--fa:"\e51f";--fa--fa:"\e51f\e51f"}.fa-pause{--fa:"\f04c";--fa--fa:"\f04c\f04c"}.fa-hill-avalanche{--fa:"\e507";--fa--fa:"\e507\e507"}.fa-temperature-0,.fa-temperature-empty,.fa-thermometer-0,.fa-thermometer-empty{--fa:"\f2cb";--fa--fa:"\f2cb\f2cb"}.fa-bomb{--fa:"\f1e2";--fa--fa:"\f1e2\f1e2"}.fa-registered{--fa:"\f25d";--fa--fa:"\f25d\f25d"}.fa-address-card,.fa-contact-card,.fa-vcard{--fa:"\f2bb";--fa--fa:"\f2bb\f2bb"}.fa-balance-scale-right,.fa-scale-unbalanced-flip{--fa:"\f516";--fa--fa:"\f516\f516"}.fa-subscript{--fa:"\f12c";--fa--fa:"\f12c\f12c"}.fa-diamond-turn-right,.fa-directions{--fa:"\f5eb";--fa--fa:"\f5eb\f5eb"}.fa-burst{--fa:"\e4dc";--fa--fa:"\e4dc\e4dc"}.fa-house-laptop,.fa-laptop-house{--fa:"\e066";--fa--fa:"\e066\e066"}.fa-face-tired,.fa-tired{--fa:"\f5c8";--fa--fa:"\f5c8\f5c8"}.fa-money-bills{--fa:"\e1f3";--fa--fa:"\e1f3\e1f3"}.fa-smog{--fa:"\f75f";--fa--fa:"\f75f\f75f"}.fa-crutch{--fa:"\f7f7";--fa--fa:"\f7f7\f7f7"}.fa-cloud-arrow-up,.fa-cloud-upload,.fa-cloud-upload-alt{--fa:"\f0ee";--fa--fa:"\f0ee\f0ee"}.fa-palette{--fa:"\f53f";--fa--fa:"\f53f\f53f"}.fa-arrows-turn-right{--fa:"\e4c0";--fa--fa:"\e4c0\e4c0"}.fa-vest{--fa:"\e085";--fa--fa:"\e085\e085"}.fa-ferry{--fa:"\e4ea";--fa--fa:"\e4ea\e4ea"}.fa-arrows-down-to-people{--fa:"\e4b9";--fa--fa:"\e4b9\e4b9"}.fa-seedling,.fa-sprout{--fa:"\f4d8";--fa--fa:"\f4d8\f4d8"}.fa-arrows-alt-h,.fa-left-right{--fa:"\f337";--fa--fa:"\f337\f337"}.fa-boxes-packing{--fa:"\e4c7";--fa--fa:"\e4c7\e4c7"}.fa-arrow-circle-left,.fa-circle-arrow-left{--fa:"\f0a8";--fa--fa:"\f0a8\f0a8"}.fa-group-arrows-rotate{--fa:"\e4f6";--fa--fa:"\e4f6\e4f6"}.fa-bowl-food{--fa:"\e4c6";--fa--fa:"\e4c6\e4c6"}.fa-candy-cane{--fa:"\f786";--fa--fa:"\f786\f786"}.fa-arrow-down-wide-short,.fa-sort-amount-asc,.fa-sort-amount-down{--fa:"\f160";--fa--fa:"\f160\f160"}.fa-cloud-bolt,.fa-thunderstorm{--fa:"\f76c";--fa--fa:"\f76c\f76c"}.fa-remove-format,.fa-text-slash{--fa:"\f87d";--fa--fa:"\f87d\f87d"}.fa-face-smile-wink,.fa-smile-wink{--fa:"\f4da";--fa--fa:"\f4da\f4da"}.fa-file-word{--fa:"\f1c2";--fa--fa:"\f1c2\f1c2"}.fa-file-powerpoint{--fa:"\f1c4";--fa--fa:"\f1c4\f1c4"}.fa-arrows-h,.fa-arrows-left-right{--fa:"\f07e";--fa--fa:"\f07e\f07e"}.fa-house-lock{--fa:"\e510";--fa--fa:"\e510\e510"}.fa-cloud-arrow-down,.fa-cloud-download,.fa-cloud-download-alt{--fa:"\f0ed";--fa--fa:"\f0ed\f0ed"}.fa-children{--fa:"\e4e1";--fa--fa:"\e4e1\e4e1"}.fa-blackboard,.fa-chalkboard{--fa:"\f51b";--fa--fa:"\f51b\f51b"}.fa-user-alt-slash,.fa-user-large-slash{--fa:"\f4fa";--fa--fa:"\f4fa\f4fa"}.fa-envelope-open{--fa:"\f2b6";--fa--fa:"\f2b6\f2b6"}.fa-handshake-alt-slash,.fa-handshake-simple-slash{--fa:"\e05f";--fa--fa:"\e05f\e05f"}.fa-mattress-pillow{--fa:"\e525";--fa--fa:"\e525\e525"}.fa-guarani-sign{--fa:"\e19a";--fa--fa:"\e19a\e19a"}.fa-arrows-rotate,.fa-refresh,.fa-sync{--fa:"\f021";--fa--fa:"\f021\f021"}.fa-fire-extinguisher{--fa:"\f134";--fa--fa:"\f134\f134"}.fa-cruzeiro-sign{--fa:"\e152";--fa--fa:"\e152\e152"}.fa-greater-than-equal{--fa:"\f532";--fa--fa:"\f532\f532"}.fa-shield-alt,.fa-shield-halved{--fa:"\f3ed";--fa--fa:"\f3ed\f3ed"}.fa-atlas,.fa-book-atlas{--fa:"\f558";--fa--fa:"\f558\f558"}.fa-virus{--fa:"\e074";--fa--fa:"\e074\e074"}.fa-envelope-circle-check{--fa:"\e4e8";--fa--fa:"\e4e8\e4e8"}.fa-layer-group{--fa:"\f5fd";--fa--fa:"\f5fd\f5fd"}.fa-arrows-to-dot{--fa:"\e4be";--fa--fa:"\e4be\e4be"}.fa-archway{--fa:"\f557";--fa--fa:"\f557\f557"}.fa-heart-circle-check{--fa:"\e4fd";--fa--fa:"\e4fd\e4fd"}.fa-house-chimney-crack,.fa-house-damage{--fa:"\f6f1";--fa--fa:"\f6f1\f6f1"}.fa-file-archive,.fa-file-zipper{--fa:"\f1c6";--fa--fa:"\f1c6\f1c6"}.fa-square{--fa:"\f0c8";--fa--fa:"\f0c8\f0c8"}.fa-glass-martini,.fa-martini-glass-empty{--fa:"\f000";--fa--fa:"\f000\f000"}.fa-couch{--fa:"\f4b8";--fa--fa:"\f4b8\f4b8"}.fa-cedi-sign{--fa:"\e0df";--fa--fa:"\e0df\e0df"}.fa-italic{--fa:"\f033";--fa--fa:"\f033\f033"}.fa-table-cells-column-lock{--fa:"\e678";--fa--fa:"\e678\e678"}.fa-church{--fa:"\f51d";--fa--fa:"\f51d\f51d"}.fa-comments-dollar{--fa:"\f653";--fa--fa:"\f653\f653"}.fa-democrat{--fa:"\f747";--fa--fa:"\f747\f747"}.fa-z{--fa:"\5a";--fa--fa:"\5a\5a"}.fa-person-skiing,.fa-skiing{--fa:"\f7c9";--fa--fa:"\f7c9\f7c9"}.fa-road-lock{--fa:"\e567";--fa--fa:"\e567\e567"}.fa-a{--fa:"\41";--fa--fa:"\41\41"}.fa-temperature-arrow-down,.fa-temperature-down{--fa:"\e03f";--fa--fa:"\e03f\e03f"}.fa-feather-alt,.fa-feather-pointed{--fa:"\f56b";--fa--fa:"\f56b\f56b"}.fa-p{--fa:"\50";--fa--fa:"\50\50"}.fa-snowflake{--fa:"\f2dc";--fa--fa:"\f2dc\f2dc"}.fa-newspaper{--fa:"\f1ea";--fa--fa:"\f1ea\f1ea"}.fa-ad,.fa-rectangle-ad{--fa:"\f641";--fa--fa:"\f641\f641"}.fa-arrow-circle-right,.fa-circle-arrow-right{--fa:"\f0a9";--fa--fa:"\f0a9\f0a9"}.fa-filter-circle-xmark{--fa:"\e17b";--fa--fa:"\e17b\e17b"}.fa-locust{--fa:"\e520";--fa--fa:"\e520\e520"}.fa-sort,.fa-unsorted{--fa:"\f0dc";--fa--fa:"\f0dc\f0dc"}.fa-list-1-2,.fa-list-numeric,.fa-list-ol{--fa:"\f0cb";--fa--fa:"\f0cb\f0cb"}.fa-person-dress-burst{--fa:"\e544";--fa--fa:"\e544\e544"}.fa-money-check-alt,.fa-money-check-dollar{--fa:"\f53d";--fa--fa:"\f53d\f53d"}.fa-vector-square{--fa:"\f5cb";--fa--fa:"\f5cb\f5cb"}.fa-bread-slice{--fa:"\f7ec";--fa--fa:"\f7ec\f7ec"}.fa-language{--fa:"\f1ab";--fa--fa:"\f1ab\f1ab"}.fa-face-kiss-wink-heart,.fa-kiss-wink-heart{--fa:"\f598";--fa--fa:"\f598\f598"}.fa-filter{--fa:"\f0b0";--fa--fa:"\f0b0\f0b0"}.fa-question{--fa:"\3f";--fa--fa:"\3f\3f"}.fa-file-signature{--fa:"\f573";--fa--fa:"\f573\f573"}.fa-arrows-alt,.fa-up-down-left-right{--fa:"\f0b2";--fa--fa:"\f0b2\f0b2"}.fa-house-chimney-user{--fa:"\e065";--fa--fa:"\e065\e065"}.fa-hand-holding-heart{--fa:"\f4be";--fa--fa:"\f4be\f4be"}.fa-puzzle-piece{--fa:"\f12e";--fa--fa:"\f12e\f12e"}.fa-money-check{--fa:"\f53c";--fa--fa:"\f53c\f53c"}.fa-star-half-alt,.fa-star-half-stroke{--fa:"\f5c0";--fa--fa:"\f5c0\f5c0"}.fa-code{--fa:"\f121";--fa--fa:"\f121\f121"}.fa-glass-whiskey,.fa-whiskey-glass{--fa:"\f7a0";--fa--fa:"\f7a0\f7a0"}.fa-building-circle-exclamation{--fa:"\e4d3";--fa--fa:"\e4d3\e4d3"}.fa-magnifying-glass-chart{--fa:"\e522";--fa--fa:"\e522\e522"}.fa-arrow-up-right-from-square,.fa-external-link{--fa:"\f08e";--fa--fa:"\f08e\f08e"}.fa-cubes-stacked{--fa:"\e4e6";--fa--fa:"\e4e6\e4e6"}.fa-krw,.fa-won,.fa-won-sign{--fa:"\f159";--fa--fa:"\f159\f159"}.fa-virus-covid{--fa:"\e4a8";--fa--fa:"\e4a8\e4a8"}.fa-austral-sign{--fa:"\e0a9";--fa--fa:"\e0a9\e0a9"}.fa-f{--fa:"\46";--fa--fa:"\46\46"}.fa-leaf{--fa:"\f06c";--fa--fa:"\f06c\f06c"}.fa-road{--fa:"\f018";--fa--fa:"\f018\f018"}.fa-cab,.fa-taxi{--fa:"\f1ba";--fa--fa:"\f1ba\f1ba"}.fa-person-circle-plus{--fa:"\e541";--fa--fa:"\e541\e541"}.fa-chart-pie,.fa-pie-chart{--fa:"\f200";--fa--fa:"\f200\f200"}.fa-bolt-lightning{--fa:"\e0b7";--fa--fa:"\e0b7\e0b7"}.fa-sack-xmark{--fa:"\e56a";--fa--fa:"\e56a\e56a"}.fa-file-excel{--fa:"\f1c3";--fa--fa:"\f1c3\f1c3"}.fa-file-contract{--fa:"\f56c";--fa--fa:"\f56c\f56c"}.fa-fish-fins{--fa:"\e4f2";--fa--fa:"\e4f2\e4f2"}.fa-building-flag{--fa:"\e4d5";--fa--fa:"\e4d5\e4d5"}.fa-face-grin-beam,.fa-grin-beam{--fa:"\f582";--fa--fa:"\f582\f582"}.fa-object-ungroup{--fa:"\f248";--fa--fa:"\f248\f248"}.fa-poop{--fa:"\f619";--fa--fa:"\f619\f619"}.fa-location-pin,.fa-map-marker{--fa:"\f041";--fa--fa:"\f041\f041"}.fa-kaaba{--fa:"\f66b";--fa--fa:"\f66b\f66b"}.fa-toilet-paper{--fa:"\f71e";--fa--fa:"\f71e\f71e"}.fa-hard-hat,.fa-hat-hard,.fa-helmet-safety{--fa:"\f807";--fa--fa:"\f807\f807"}.fa-eject{--fa:"\f052";--fa--fa:"\f052\f052"}.fa-arrow-alt-circle-right,.fa-circle-right{--fa:"\f35a";--fa--fa:"\f35a\f35a"}.fa-plane-circle-check{--fa:"\e555";--fa--fa:"\e555\e555"}.fa-face-rolling-eyes,.fa-meh-rolling-eyes{--fa:"\f5a5";--fa--fa:"\f5a5\f5a5"}.fa-object-group{--fa:"\f247";--fa--fa:"\f247\f247"}.fa-chart-line,.fa-line-chart{--fa:"\f201";--fa--fa:"\f201\f201"}.fa-mask-ventilator{--fa:"\e524";--fa--fa:"\e524\e524"}.fa-arrow-right{--fa:"\f061";--fa--fa:"\f061\f061"}.fa-map-signs,.fa-signs-post{--fa:"\f277";--fa--fa:"\f277\f277"}.fa-cash-register{--fa:"\f788";--fa--fa:"\f788\f788"}.fa-person-circle-question{--fa:"\e542";--fa--fa:"\e542\e542"}.fa-h{--fa:"\48";--fa--fa:"\48\48"}.fa-tarp{--fa:"\e57b";--fa--fa:"\e57b\e57b"}.fa-screwdriver-wrench,.fa-tools{--fa:"\f7d9";--fa--fa:"\f7d9\f7d9"}.fa-arrows-to-eye{--fa:"\e4bf";--fa--fa:"\e4bf\e4bf"}.fa-plug-circle-bolt{--fa:"\e55b";--fa--fa:"\e55b\e55b"}.fa-heart{--fa:"\f004";--fa--fa:"\f004\f004"}.fa-mars-and-venus{--fa:"\f224";--fa--fa:"\f224\f224"}.fa-home-user,.fa-house-user{--fa:"\e1b0";--fa--fa:"\e1b0\e1b0"}.fa-dumpster-fire{--fa:"\f794";--fa--fa:"\f794\f794"}.fa-house-crack{--fa:"\e3b1";--fa--fa:"\e3b1\e3b1"}.fa-cocktail,.fa-martini-glass-citrus{--fa:"\f561";--fa--fa:"\f561\f561"}.fa-face-surprise,.fa-surprise{--fa:"\f5c2";--fa--fa:"\f5c2\f5c2"}.fa-bottle-water{--fa:"\e4c5";--fa--fa:"\e4c5\e4c5"}.fa-circle-pause,.fa-pause-circle{--fa:"\f28b";--fa--fa:"\f28b\f28b"}.fa-toilet-paper-slash{--fa:"\e072";--fa--fa:"\e072\e072"}.fa-apple-alt,.fa-apple-whole{--fa:"\f5d1";--fa--fa:"\f5d1\f5d1"}.fa-kitchen-set{--fa:"\e51a";--fa--fa:"\e51a\e51a"}.fa-r{--fa:"\52";--fa--fa:"\52\52"}.fa-temperature-1,.fa-temperature-quarter,.fa-thermometer-1,.fa-thermometer-quarter{--fa:"\f2ca";--fa--fa:"\f2ca\f2ca"}.fa-cube{--fa:"\f1b2";--fa--fa:"\f1b2\f1b2"}.fa-bitcoin-sign{--fa:"\e0b4";--fa--fa:"\e0b4\e0b4"}.fa-shield-dog{--fa:"\e573";--fa--fa:"\e573\e573"}.fa-solar-panel{--fa:"\f5ba";--fa--fa:"\f5ba\f5ba"}.fa-lock-open{--fa:"\f3c1";--fa--fa:"\f3c1\f3c1"}.fa-elevator{--fa:"\e16d";--fa--fa:"\e16d\e16d"}.fa-money-bill-transfer{--fa:"\e528";--fa--fa:"\e528\e528"}.fa-money-bill-trend-up{--fa:"\e529";--fa--fa:"\e529\e529"}.fa-house-flood-water-circle-arrow-right{--fa:"\e50f";--fa--fa:"\e50f\e50f"}.fa-poll-h,.fa-square-poll-horizontal{--fa:"\f682";--fa--fa:"\f682\f682"}.fa-circle{--fa:"\f111";--fa--fa:"\f111\f111"}.fa-backward-fast,.fa-fast-backward{--fa:"\f049";--fa--fa:"\f049\f049"}.fa-recycle{--fa:"\f1b8";--fa--fa:"\f1b8\f1b8"}.fa-user-astronaut{--fa:"\f4fb";--fa--fa:"\f4fb\f4fb"}.fa-plane-slash{--fa:"\e069";--fa--fa:"\e069\e069"}.fa-trademark{--fa:"\f25c";--fa--fa:"\f25c\f25c"}.fa-basketball,.fa-basketball-ball{--fa:"\f434";--fa--fa:"\f434\f434"}.fa-satellite-dish{--fa:"\f7c0";--fa--fa:"\f7c0\f7c0"}.fa-arrow-alt-circle-up,.fa-circle-up{--fa:"\f35b";--fa--fa:"\f35b\f35b"}.fa-mobile-alt,.fa-mobile-screen-button{--fa:"\f3cd";--fa--fa:"\f3cd\f3cd"}.fa-volume-high,.fa-volume-up{--fa:"\f028";--fa--fa:"\f028\f028"}.fa-users-rays{--fa:"\e593";--fa--fa:"\e593\e593"}.fa-wallet{--fa:"\f555";--fa--fa:"\f555\f555"}.fa-clipboard-check{--fa:"\f46c";--fa--fa:"\f46c\f46c"}.fa-file-audio{--fa:"\f1c7";--fa--fa:"\f1c7\f1c7"}.fa-burger,.fa-hamburger{--fa:"\f805";--fa--fa:"\f805\f805"}.fa-wrench{--fa:"\f0ad";--fa--fa:"\f0ad\f0ad"}.fa-bugs{--fa:"\e4d0";--fa--fa:"\e4d0\e4d0"}.fa-rupee,.fa-rupee-sign{--fa:"\f156";--fa--fa:"\f156\f156"}.fa-file-image{--fa:"\f1c5";--fa--fa:"\f1c5\f1c5"}.fa-circle-question,.fa-question-circle{--fa:"\f059";--fa--fa:"\f059\f059"}.fa-plane-departure{--fa:"\f5b0";--fa--fa:"\f5b0\f5b0"}.fa-handshake-slash{--fa:"\e060";--fa--fa:"\e060\e060"}.fa-book-bookmark{--fa:"\e0bb";--fa--fa:"\e0bb\e0bb"}.fa-code-branch{--fa:"\f126";--fa--fa:"\f126\f126"}.fa-hat-cowboy{--fa:"\f8c0";--fa--fa:"\f8c0\f8c0"}.fa-bridge{--fa:"\e4c8";--fa--fa:"\e4c8\e4c8"}.fa-phone-alt,.fa-phone-flip{--fa:"\f879";--fa--fa:"\f879\f879"}.fa-truck-front{--fa:"\e2b7";--fa--fa:"\e2b7\e2b7"}.fa-cat{--fa:"\f6be";--fa--fa:"\f6be\f6be"}.fa-anchor-circle-exclamation{--fa:"\e4ab";--fa--fa:"\e4ab\e4ab"}.fa-truck-field{--fa:"\e58d";--fa--fa:"\e58d\e58d"}.fa-route{--fa:"\f4d7";--fa--fa:"\f4d7\f4d7"}.fa-clipboard-question{--fa:"\e4e3";--fa--fa:"\e4e3\e4e3"}.fa-panorama{--fa:"\e209";--fa--fa:"\e209\e209"}.fa-comment-medical{--fa:"\f7f5";--fa--fa:"\f7f5\f7f5"}.fa-teeth-open{--fa:"\f62f";--fa--fa:"\f62f\f62f"}.fa-file-circle-minus{--fa:"\e4ed";--fa--fa:"\e4ed\e4ed"}.fa-tags{--fa:"\f02c";--fa--fa:"\f02c\f02c"}.fa-wine-glass{--fa:"\f4e3";--fa--fa:"\f4e3\f4e3"}.fa-fast-forward,.fa-forward-fast{--fa:"\f050";--fa--fa:"\f050\f050"}.fa-face-meh-blank,.fa-meh-blank{--fa:"\f5a4";--fa--fa:"\f5a4\f5a4"}.fa-parking,.fa-square-parking{--fa:"\f540";--fa--fa:"\f540\f540"}.fa-house-signal{--fa:"\e012";--fa--fa:"\e012\e012"}.fa-bars-progress,.fa-tasks-alt{--fa:"\f828";--fa--fa:"\f828\f828"}.fa-faucet-drip{--fa:"\e006";--fa--fa:"\e006\e006"}.fa-cart-flatbed,.fa-dolly-flatbed{--fa:"\f474";--fa--fa:"\f474\f474"}.fa-ban-smoking,.fa-smoking-ban{--fa:"\f54d";--fa--fa:"\f54d\f54d"}.fa-terminal{--fa:"\f120";--fa--fa:"\f120\f120"}.fa-mobile-button{--fa:"\f10b";--fa--fa:"\f10b\f10b"}.fa-house-medical-flag{--fa:"\e514";--fa--fa:"\e514\e514"}.fa-basket-shopping,.fa-shopping-basket{--fa:"\f291";--fa--fa:"\f291\f291"}.fa-tape{--fa:"\f4db";--fa--fa:"\f4db\f4db"}.fa-bus-alt,.fa-bus-simple{--fa:"\f55e";--fa--fa:"\f55e\f55e"}.fa-eye{--fa:"\f06e";--fa--fa:"\f06e\f06e"}.fa-face-sad-cry,.fa-sad-cry{--fa:"\f5b3";--fa--fa:"\f5b3\f5b3"}.fa-audio-description{--fa:"\f29e";--fa--fa:"\f29e\f29e"}.fa-person-military-to-person{--fa:"\e54c";--fa--fa:"\e54c\e54c"}.fa-file-shield{--fa:"\e4f0";--fa--fa:"\e4f0\e4f0"}.fa-user-slash{--fa:"\f506";--fa--fa:"\f506\f506"}.fa-pen{--fa:"\f304";--fa--fa:"\f304\f304"}.fa-tower-observation{--fa:"\e586";--fa--fa:"\e586\e586"}.fa-file-code{--fa:"\f1c9";--fa--fa:"\f1c9\f1c9"}.fa-signal,.fa-signal-5,.fa-signal-perfect{--fa:"\f012";--fa--fa:"\f012\f012"}.fa-bus{--fa:"\f207";--fa--fa:"\f207\f207"}.fa-heart-circle-xmark{--fa:"\e501";--fa--fa:"\e501\e501"}.fa-home-lg,.fa-house-chimney{--fa:"\e3af";--fa--fa:"\e3af\e3af"}.fa-window-maximize{--fa:"\f2d0";--fa--fa:"\f2d0\f2d0"}.fa-face-frown,.fa-frown{--fa:"\f119";--fa--fa:"\f119\f119"}.fa-prescription{--fa:"\f5b1";--fa--fa:"\f5b1\f5b1"}.fa-shop,.fa-store-alt{--fa:"\f54f";--fa--fa:"\f54f\f54f"}.fa-floppy-disk,.fa-save{--fa:"\f0c7";--fa--fa:"\f0c7\f0c7"}.fa-vihara{--fa:"\f6a7";--fa--fa:"\f6a7\f6a7"}.fa-balance-scale-left,.fa-scale-unbalanced{--fa:"\f515";--fa--fa:"\f515\f515"}.fa-sort-asc,.fa-sort-up{--fa:"\f0de";--fa--fa:"\f0de\f0de"}.fa-comment-dots,.fa-commenting{--fa:"\f4ad";--fa--fa:"\f4ad\f4ad"}.fa-plant-wilt{--fa:"\e5aa";--fa--fa:"\e5aa\e5aa"}.fa-diamond{--fa:"\f219";--fa--fa:"\f219\f219"}.fa-face-grin-squint,.fa-grin-squint{--fa:"\f585";--fa--fa:"\f585\f585"}.fa-hand-holding-dollar,.fa-hand-holding-usd{--fa:"\f4c0";--fa--fa:"\f4c0\f4c0"}.fa-chart-diagram{--fa:"\e695";--fa--fa:"\e695\e695"}.fa-bacterium{--fa:"\e05a";--fa--fa:"\e05a\e05a"}.fa-hand-pointer{--fa:"\f25a";--fa--fa:"\f25a\f25a"}.fa-drum-steelpan{--fa:"\f56a";--fa--fa:"\f56a\f56a"}.fa-hand-scissors{--fa:"\f257";--fa--fa:"\f257\f257"}.fa-hands-praying,.fa-praying-hands{--fa:"\f684";--fa--fa:"\f684\f684"}.fa-arrow-right-rotate,.fa-arrow-rotate-forward,.fa-arrow-rotate-right,.fa-redo{--fa:"\f01e";--fa--fa:"\f01e\f01e"}.fa-biohazard{--fa:"\f780";--fa--fa:"\f780\f780"}.fa-location,.fa-location-crosshairs{--fa:"\f601";--fa--fa:"\f601\f601"}.fa-mars-double{--fa:"\f227";--fa--fa:"\f227\f227"}.fa-child-dress{--fa:"\e59c";--fa--fa:"\e59c\e59c"}.fa-users-between-lines{--fa:"\e591";--fa--fa:"\e591\e591"}.fa-lungs-virus{--fa:"\e067";--fa--fa:"\e067\e067"}.fa-face-grin-tears,.fa-grin-tears{--fa:"\f588";--fa--fa:"\f588\f588"}.fa-phone{--fa:"\f095";--fa--fa:"\f095\f095"}.fa-calendar-times,.fa-calendar-xmark{--fa:"\f273";--fa--fa:"\f273\f273"}.fa-child-reaching{--fa:"\e59d";--fa--fa:"\e59d\e59d"}.fa-head-side-virus{--fa:"\e064";--fa--fa:"\e064\e064"}.fa-user-cog,.fa-user-gear{--fa:"\f4fe";--fa--fa:"\f4fe\f4fe"}.fa-arrow-up-1-9,.fa-sort-numeric-up{--fa:"\f163";--fa--fa:"\f163\f163"}.fa-door-closed{--fa:"\f52a";--fa--fa:"\f52a\f52a"}.fa-shield-virus{--fa:"\e06c";--fa--fa:"\e06c\e06c"}.fa-dice-six{--fa:"\f526";--fa--fa:"\f526\f526"}.fa-mosquito-net{--fa:"\e52c";--fa--fa:"\e52c\e52c"}.fa-file-fragment{--fa:"\e697";--fa--fa:"\e697\e697"}.fa-bridge-water{--fa:"\e4ce";--fa--fa:"\e4ce\e4ce"}.fa-person-booth{--fa:"\f756";--fa--fa:"\f756\f756"}.fa-text-width{--fa:"\f035";--fa--fa:"\f035\f035"}.fa-hat-wizard{--fa:"\f6e8";--fa--fa:"\f6e8\f6e8"}.fa-pen-fancy{--fa:"\f5ac";--fa--fa:"\f5ac\f5ac"}.fa-digging,.fa-person-digging{--fa:"\f85e";--fa--fa:"\f85e\f85e"}.fa-trash{--fa:"\f1f8";--fa--fa:"\f1f8\f1f8"}.fa-gauge-simple,.fa-gauge-simple-med,.fa-tachometer-average{--fa:"\f629";--fa--fa:"\f629\f629"}.fa-book-medical{--fa:"\f7e6";--fa--fa:"\f7e6\f7e6"}.fa-poo{--fa:"\f2fe";--fa--fa:"\f2fe\f2fe"}.fa-quote-right,.fa-quote-right-alt{--fa:"\f10e";--fa--fa:"\f10e\f10e"}.fa-shirt,.fa-t-shirt,.fa-tshirt{--fa:"\f553";--fa--fa:"\f553\f553"}.fa-cubes{--fa:"\f1b3";--fa--fa:"\f1b3\f1b3"}.fa-divide{--fa:"\f529";--fa--fa:"\f529\f529"}.fa-tenge,.fa-tenge-sign{--fa:"\f7d7";--fa--fa:"\f7d7\f7d7"}.fa-headphones{--fa:"\f025";--fa--fa:"\f025\f025"}.fa-hands-holding{--fa:"\f4c2";--fa--fa:"\f4c2\f4c2"}.fa-hands-clapping{--fa:"\e1a8";--fa--fa:"\e1a8\e1a8"}.fa-republican{--fa:"\f75e";--fa--fa:"\f75e\f75e"}.fa-arrow-left{--fa:"\f060";--fa--fa:"\f060\f060"}.fa-person-circle-xmark{--fa:"\e543";--fa--fa:"\e543\e543"}.fa-ruler{--fa:"\f545";--fa--fa:"\f545\f545"}.fa-align-left{--fa:"\f036";--fa--fa:"\f036\f036"}.fa-dice-d6{--fa:"\f6d1";--fa--fa:"\f6d1\f6d1"}.fa-restroom{--fa:"\f7bd";--fa--fa:"\f7bd\f7bd"}.fa-j{--fa:"\4a";--fa--fa:"\4a\4a"}.fa-users-viewfinder{--fa:"\e595";--fa--fa:"\e595\e595"}.fa-file-video{--fa:"\f1c8";--fa--fa:"\f1c8\f1c8"}.fa-external-link-alt,.fa-up-right-from-square{--fa:"\f35d";--fa--fa:"\f35d\f35d"}.fa-table-cells,.fa-th{--fa:"\f00a";--fa--fa:"\f00a\f00a"}.fa-file-pdf{--fa:"\f1c1";--fa--fa:"\f1c1\f1c1"}.fa-bible,.fa-book-bible{--fa:"\f647";--fa--fa:"\f647\f647"}.fa-o{--fa:"\4f";--fa--fa:"\4f\4f"}.fa-medkit,.fa-suitcase-medical{--fa:"\f0fa";--fa--fa:"\f0fa\f0fa"}.fa-user-secret{--fa:"\f21b";--fa--fa:"\f21b\f21b"}.fa-otter{--fa:"\f700";--fa--fa:"\f700\f700"}.fa-female,.fa-person-dress{--fa:"\f182";--fa--fa:"\f182\f182"}.fa-comment-dollar{--fa:"\f651";--fa--fa:"\f651\f651"}.fa-briefcase-clock,.fa-business-time{--fa:"\f64a";--fa--fa:"\f64a\f64a"}.fa-table-cells-large,.fa-th-large{--fa:"\f009";--fa--fa:"\f009\f009"}.fa-book-tanakh,.fa-tanakh{--fa:"\f827";--fa--fa:"\f827\f827"}.fa-phone-volume,.fa-volume-control-phone{--fa:"\f2a0";--fa--fa:"\f2a0\f2a0"}.fa-hat-cowboy-side{--fa:"\f8c1";--fa--fa:"\f8c1\f8c1"}.fa-clipboard-user{--fa:"\f7f3";--fa--fa:"\f7f3\f7f3"}.fa-child{--fa:"\f1ae";--fa--fa:"\f1ae\f1ae"}.fa-lira-sign{--fa:"\f195";--fa--fa:"\f195\f195"}.fa-satellite{--fa:"\f7bf";--fa--fa:"\f7bf\f7bf"}.fa-plane-lock{--fa:"\e558";--fa--fa:"\e558\e558"}.fa-tag{--fa:"\f02b";--fa--fa:"\f02b\f02b"}.fa-comment{--fa:"\f075";--fa--fa:"\f075\f075"}.fa-birthday-cake,.fa-cake,.fa-cake-candles{--fa:"\f1fd";--fa--fa:"\f1fd\f1fd"}.fa-envelope{--fa:"\f0e0";--fa--fa:"\f0e0\f0e0"}.fa-angle-double-up,.fa-angles-up{--fa:"\f102";--fa--fa:"\f102\f102"}.fa-paperclip{--fa:"\f0c6";--fa--fa:"\f0c6\f0c6"}.fa-arrow-right-to-city{--fa:"\e4b3";--fa--fa:"\e4b3\e4b3"}.fa-ribbon{--fa:"\f4d6";--fa--fa:"\f4d6\f4d6"}.fa-lungs{--fa:"\f604";--fa--fa:"\f604\f604"}.fa-arrow-up-9-1,.fa-sort-numeric-up-alt{--fa:"\f887";--fa--fa:"\f887\f887"}.fa-litecoin-sign{--fa:"\e1d3";--fa--fa:"\e1d3\e1d3"}.fa-border-none{--fa:"\f850";--fa--fa:"\f850\f850"}.fa-circle-nodes{--fa:"\e4e2";--fa--fa:"\e4e2\e4e2"}.fa-parachute-box{--fa:"\f4cd";--fa--fa:"\f4cd\f4cd"}.fa-indent{--fa:"\f03c";--fa--fa:"\f03c\f03c"}.fa-truck-field-un{--fa:"\e58e";--fa--fa:"\e58e\e58e"}.fa-hourglass,.fa-hourglass-empty{--fa:"\f254";--fa--fa:"\f254\f254"}.fa-mountain{--fa:"\f6fc";--fa--fa:"\f6fc\f6fc"}.fa-user-doctor,.fa-user-md{--fa:"\f0f0";--fa--fa:"\f0f0\f0f0"}.fa-circle-info,.fa-info-circle{--fa:"\f05a";--fa--fa:"\f05a\f05a"}.fa-cloud-meatball{--fa:"\f73b";--fa--fa:"\f73b\f73b"}.fa-camera,.fa-camera-alt{--fa:"\f030";--fa--fa:"\f030\f030"}.fa-square-virus{--fa:"\e578";--fa--fa:"\e578\e578"}.fa-meteor{--fa:"\f753";--fa--fa:"\f753\f753"}.fa-car-on{--fa:"\e4dd";--fa--fa:"\e4dd\e4dd"}.fa-sleigh{--fa:"\f7cc";--fa--fa:"\f7cc\f7cc"}.fa-arrow-down-1-9,.fa-sort-numeric-asc,.fa-sort-numeric-down{--fa:"\f162";--fa--fa:"\f162\f162"}.fa-hand-holding-droplet,.fa-hand-holding-water{--fa:"\f4c1";--fa--fa:"\f4c1\f4c1"}.fa-water{--fa:"\f773";--fa--fa:"\f773\f773"}.fa-calendar-check{--fa:"\f274";--fa--fa:"\f274\f274"}.fa-braille{--fa:"\f2a1";--fa--fa:"\f2a1\f2a1"}.fa-prescription-bottle-alt,.fa-prescription-bottle-medical{--fa:"\f486";--fa--fa:"\f486\f486"}.fa-landmark{--fa:"\f66f";--fa--fa:"\f66f\f66f"}.fa-truck{--fa:"\f0d1";--fa--fa:"\f0d1\f0d1"}.fa-crosshairs{--fa:"\f05b";--fa--fa:"\f05b\f05b"}.fa-person-cane{--fa:"\e53c";--fa--fa:"\e53c\e53c"}.fa-tent{--fa:"\e57d";--fa--fa:"\e57d\e57d"}.fa-vest-patches{--fa:"\e086";--fa--fa:"\e086\e086"}.fa-check-double{--fa:"\f560";--fa--fa:"\f560\f560"}.fa-arrow-down-a-z,.fa-sort-alpha-asc,.fa-sort-alpha-down{--fa:"\f15d";--fa--fa:"\f15d\f15d"}.fa-money-bill-wheat{--fa:"\e52a";--fa--fa:"\e52a\e52a"}.fa-cookie{--fa:"\f563";--fa--fa:"\f563\f563"}.fa-arrow-left-rotate,.fa-arrow-rotate-back,.fa-arrow-rotate-backward,.fa-arrow-rotate-left,.fa-undo{--fa:"\f0e2";--fa--fa:"\f0e2\f0e2"}.fa-hard-drive,.fa-hdd{--fa:"\f0a0";--fa--fa:"\f0a0\f0a0"}.fa-face-grin-squint-tears,.fa-grin-squint-tears{--fa:"\f586";--fa--fa:"\f586\f586"}.fa-dumbbell{--fa:"\f44b";--fa--fa:"\f44b\f44b"}.fa-list-alt,.fa-rectangle-list{--fa:"\f022";--fa--fa:"\f022\f022"}.fa-tarp-droplet{--fa:"\e57c";--fa--fa:"\e57c\e57c"}.fa-house-medical-circle-check{--fa:"\e511";--fa--fa:"\e511\e511"}.fa-person-skiing-nordic,.fa-skiing-nordic{--fa:"\f7ca";--fa--fa:"\f7ca\f7ca"}.fa-calendar-plus{--fa:"\f271";--fa--fa:"\f271\f271"}.fa-plane-arrival{--fa:"\f5af";--fa--fa:"\f5af\f5af"}.fa-arrow-alt-circle-left,.fa-circle-left{--fa:"\f359";--fa--fa:"\f359\f359"}.fa-subway,.fa-train-subway{--fa:"\f239";--fa--fa:"\f239\f239"}.fa-chart-gantt{--fa:"\e0e4";--fa--fa:"\e0e4\e0e4"}.fa-indian-rupee,.fa-indian-rupee-sign,.fa-inr{--fa:"\e1bc";--fa--fa:"\e1bc\e1bc"}.fa-crop-alt,.fa-crop-simple{--fa:"\f565";--fa--fa:"\f565\f565"}.fa-money-bill-1,.fa-money-bill-alt{--fa:"\f3d1";--fa--fa:"\f3d1\f3d1"}.fa-left-long,.fa-long-arrow-alt-left{--fa:"\f30a";--fa--fa:"\f30a\f30a"}.fa-dna{--fa:"\f471";--fa--fa:"\f471\f471"}.fa-virus-slash{--fa:"\e075";--fa--fa:"\e075\e075"}.fa-minus,.fa-subtract{--fa:"\f068";--fa--fa:"\f068\f068"}.fa-chess{--fa:"\f439";--fa--fa:"\f439\f439"}.fa-arrow-left-long,.fa-long-arrow-left{--fa:"\f177";--fa--fa:"\f177\f177"}.fa-plug-circle-check{--fa:"\e55c";--fa--fa:"\e55c\e55c"}.fa-street-view{--fa:"\f21d";--fa--fa:"\f21d\f21d"}.fa-franc-sign{--fa:"\e18f";--fa--fa:"\e18f\e18f"}.fa-volume-off{--fa:"\f026";--fa--fa:"\f026\f026"}.fa-american-sign-language-interpreting,.fa-asl-interpreting,.fa-hands-american-sign-language-interpreting,.fa-hands-asl-interpreting{--fa:"\f2a3";--fa--fa:"\f2a3\f2a3"}.fa-cog,.fa-gear{--fa:"\f013";--fa--fa:"\f013\f013"}.fa-droplet-slash,.fa-tint-slash{--fa:"\f5c7";--fa--fa:"\f5c7\f5c7"}.fa-mosque{--fa:"\f678";--fa--fa:"\f678\f678"}.fa-mosquito{--fa:"\e52b";--fa--fa:"\e52b\e52b"}.fa-star-of-david{--fa:"\f69a";--fa--fa:"\f69a\f69a"}.fa-person-military-rifle{--fa:"\e54b";--fa--fa:"\e54b\e54b"}.fa-cart-shopping,.fa-shopping-cart{--fa:"\f07a";--fa--fa:"\f07a\f07a"}.fa-vials{--fa:"\f493";--fa--fa:"\f493\f493"}.fa-plug-circle-plus{--fa:"\e55f";--fa--fa:"\e55f\e55f"}.fa-place-of-worship{--fa:"\f67f";--fa--fa:"\f67f\f67f"}.fa-grip-vertical{--fa:"\f58e";--fa--fa:"\f58e\f58e"}.fa-hexagon-nodes{--fa:"\e699";--fa--fa:"\e699\e699"}.fa-arrow-turn-up,.fa-level-up{--fa:"\f148";--fa--fa:"\f148\f148"}.fa-u{--fa:"\55";--fa--fa:"\55\55"}.fa-square-root-alt,.fa-square-root-variable{--fa:"\f698";--fa--fa:"\f698\f698"}.fa-clock,.fa-clock-four{--fa:"\f017";--fa--fa:"\f017\f017"}.fa-backward-step,.fa-step-backward{--fa:"\f048";--fa--fa:"\f048\f048"}.fa-pallet{--fa:"\f482";--fa--fa:"\f482\f482"}.fa-faucet{--fa:"\e005";--fa--fa:"\e005\e005"}.fa-baseball-bat-ball{--fa:"\f432";--fa--fa:"\f432\f432"}.fa-s{--fa:"\53";--fa--fa:"\53\53"}.fa-timeline{--fa:"\e29c";--fa--fa:"\e29c\e29c"}.fa-keyboard{--fa:"\f11c";--fa--fa:"\f11c\f11c"}.fa-caret-down{--fa:"\f0d7";--fa--fa:"\f0d7\f0d7"}.fa-clinic-medical,.fa-house-chimney-medical{--fa:"\f7f2";--fa--fa:"\f7f2\f7f2"}.fa-temperature-3,.fa-temperature-three-quarters,.fa-thermometer-3,.fa-thermometer-three-quarters{--fa:"\f2c8";--fa--fa:"\f2c8\f2c8"}.fa-mobile-android-alt,.fa-mobile-screen{--fa:"\f3cf";--fa--fa:"\f3cf\f3cf"}.fa-plane-up{--fa:"\e22d";--fa--fa:"\e22d\e22d"}.fa-piggy-bank{--fa:"\f4d3";--fa--fa:"\f4d3\f4d3"}.fa-battery-3,.fa-battery-half{--fa:"\f242";--fa--fa:"\f242\f242"}.fa-mountain-city{--fa:"\e52e";--fa--fa:"\e52e\e52e"}.fa-coins{--fa:"\f51e";--fa--fa:"\f51e\f51e"}.fa-khanda{--fa:"\f66d";--fa--fa:"\f66d\f66d"}.fa-sliders,.fa-sliders-h{--fa:"\f1de";--fa--fa:"\f1de\f1de"}.fa-folder-tree{--fa:"\f802";--fa--fa:"\f802\f802"}.fa-network-wired{--fa:"\f6ff";--fa--fa:"\f6ff\f6ff"}.fa-map-pin{--fa:"\f276";--fa--fa:"\f276\f276"}.fa-hamsa{--fa:"\f665";--fa--fa:"\f665\f665"}.fa-cent-sign{--fa:"\e3f5";--fa--fa:"\e3f5\e3f5"}.fa-flask{--fa:"\f0c3";--fa--fa:"\f0c3\f0c3"}.fa-person-pregnant{--fa:"\e31e";--fa--fa:"\e31e\e31e"}.fa-wand-sparkles{--fa:"\f72b";--fa--fa:"\f72b\f72b"}.fa-ellipsis-v,.fa-ellipsis-vertical{--fa:"\f142";--fa--fa:"\f142\f142"}.fa-ticket{--fa:"\f145";--fa--fa:"\f145\f145"}.fa-power-off{--fa:"\f011";--fa--fa:"\f011\f011"}.fa-long-arrow-alt-right,.fa-right-long{--fa:"\f30b";--fa--fa:"\f30b\f30b"}.fa-flag-usa{--fa:"\f74d";--fa--fa:"\f74d\f74d"}.fa-laptop-file{--fa:"\e51d";--fa--fa:"\e51d\e51d"}.fa-teletype,.fa-tty{--fa:"\f1e4";--fa--fa:"\f1e4\f1e4"}.fa-diagram-next{--fa:"\e476";--fa--fa:"\e476\e476"}.fa-person-rifle{--fa:"\e54e";--fa--fa:"\e54e\e54e"}.fa-house-medical-circle-exclamation{--fa:"\e512";--fa--fa:"\e512\e512"}.fa-closed-captioning{--fa:"\f20a";--fa--fa:"\f20a\f20a"}.fa-hiking,.fa-person-hiking{--fa:"\f6ec";--fa--fa:"\f6ec\f6ec"}.fa-venus-double{--fa:"\f226";--fa--fa:"\f226\f226"}.fa-images{--fa:"\f302";--fa--fa:"\f302\f302"}.fa-calculator{--fa:"\f1ec";--fa--fa:"\f1ec\f1ec"}.fa-people-pulling{--fa:"\e535";--fa--fa:"\e535\e535"}.fa-n{--fa:"\4e";--fa--fa:"\4e\4e"}.fa-cable-car,.fa-tram{--fa:"\f7da";--fa--fa:"\f7da\f7da"}.fa-cloud-rain{--fa:"\f73d";--fa--fa:"\f73d\f73d"}.fa-building-circle-xmark{--fa:"\e4d4";--fa--fa:"\e4d4\e4d4"}.fa-ship{--fa:"\f21a";--fa--fa:"\f21a\f21a"}.fa-arrows-down-to-line{--fa:"\e4b8";--fa--fa:"\e4b8\e4b8"}.fa-download{--fa:"\f019";--fa--fa:"\f019\f019"}.fa-face-grin,.fa-grin{--fa:"\f580";--fa--fa:"\f580\f580"}.fa-backspace,.fa-delete-left{--fa:"\f55a";--fa--fa:"\f55a\f55a"}.fa-eye-dropper,.fa-eye-dropper-empty,.fa-eyedropper{--fa:"\f1fb";--fa--fa:"\f1fb\f1fb"}.fa-file-circle-check{--fa:"\e5a0";--fa--fa:"\e5a0\e5a0"}.fa-forward{--fa:"\f04e";--fa--fa:"\f04e\f04e"}.fa-mobile,.fa-mobile-android,.fa-mobile-phone{--fa:"\f3ce";--fa--fa:"\f3ce\f3ce"}.fa-face-meh,.fa-meh{--fa:"\f11a";--fa--fa:"\f11a\f11a"}.fa-align-center{--fa:"\f037";--fa--fa:"\f037\f037"}.fa-book-dead,.fa-book-skull{--fa:"\f6b7";--fa--fa:"\f6b7\f6b7"}.fa-drivers-license,.fa-id-card{--fa:"\f2c2";--fa--fa:"\f2c2\f2c2"}.fa-dedent,.fa-outdent{--fa:"\f03b";--fa--fa:"\f03b\f03b"}.fa-heart-circle-exclamation{--fa:"\e4fe";--fa--fa:"\e4fe\e4fe"}.fa-home,.fa-home-alt,.fa-home-lg-alt,.fa-house{--fa:"\f015";--fa--fa:"\f015\f015"}.fa-calendar-week{--fa:"\f784";--fa--fa:"\f784\f784"}.fa-laptop-medical{--fa:"\f812";--fa--fa:"\f812\f812"}.fa-b{--fa:"\42";--fa--fa:"\42\42"}.fa-file-medical{--fa:"\f477";--fa--fa:"\f477\f477"}.fa-dice-one{--fa:"\f525";--fa--fa:"\f525\f525"}.fa-kiwi-bird{--fa:"\f535";--fa--fa:"\f535\f535"}.fa-arrow-right-arrow-left,.fa-exchange{--fa:"\f0ec";--fa--fa:"\f0ec\f0ec"}.fa-redo-alt,.fa-rotate-forward,.fa-rotate-right{--fa:"\f2f9";--fa--fa:"\f2f9\f2f9"}.fa-cutlery,.fa-utensils{--fa:"\f2e7";--fa--fa:"\f2e7\f2e7"}.fa-arrow-up-wide-short,.fa-sort-amount-up{--fa:"\f161";--fa--fa:"\f161\f161"}.fa-mill-sign{--fa:"\e1ed";--fa--fa:"\e1ed\e1ed"}.fa-bowl-rice{--fa:"\e2eb";--fa--fa:"\e2eb\e2eb"}.fa-skull{--fa:"\f54c";--fa--fa:"\f54c\f54c"}.fa-broadcast-tower,.fa-tower-broadcast{--fa:"\f519";--fa--fa:"\f519\f519"}.fa-truck-pickup{--fa:"\f63c";--fa--fa:"\f63c\f63c"}.fa-long-arrow-alt-up,.fa-up-long{--fa:"\f30c";--fa--fa:"\f30c\f30c"}.fa-stop{--fa:"\f04d";--fa--fa:"\f04d\f04d"}.fa-code-merge{--fa:"\f387";--fa--fa:"\f387\f387"}.fa-upload{--fa:"\f093";--fa--fa:"\f093\f093"}.fa-hurricane{--fa:"\f751";--fa--fa:"\f751\f751"}.fa-mound{--fa:"\e52d";--fa--fa:"\e52d\e52d"}.fa-toilet-portable{--fa:"\e583";--fa--fa:"\e583\e583"}.fa-compact-disc{--fa:"\f51f";--fa--fa:"\f51f\f51f"}.fa-file-arrow-down,.fa-file-download{--fa:"\f56d";--fa--fa:"\f56d\f56d"}.fa-caravan{--fa:"\f8ff";--fa--fa:"\f8ff\f8ff"}.fa-shield-cat{--fa:"\e572";--fa--fa:"\e572\e572"}.fa-bolt,.fa-zap{--fa:"\f0e7";--fa--fa:"\f0e7\f0e7"}.fa-glass-water{--fa:"\e4f4";--fa--fa:"\e4f4\e4f4"}.fa-oil-well{--fa:"\e532";--fa--fa:"\e532\e532"}.fa-vault{--fa:"\e2c5";--fa--fa:"\e2c5\e2c5"}.fa-mars{--fa:"\f222";--fa--fa:"\f222\f222"}.fa-toilet{--fa:"\f7d8";--fa--fa:"\f7d8\f7d8"}.fa-plane-circle-xmark{--fa:"\e557";--fa--fa:"\e557\e557"}.fa-cny,.fa-jpy,.fa-rmb,.fa-yen,.fa-yen-sign{--fa:"\f157";--fa--fa:"\f157\f157"}.fa-rouble,.fa-rub,.fa-ruble,.fa-ruble-sign{--fa:"\f158";--fa--fa:"\f158\f158"}.fa-sun{--fa:"\f185";--fa--fa:"\f185\f185"}.fa-guitar{--fa:"\f7a6";--fa--fa:"\f7a6\f7a6"}.fa-face-laugh-wink,.fa-laugh-wink{--fa:"\f59c";--fa--fa:"\f59c\f59c"}.fa-horse-head{--fa:"\f7ab";--fa--fa:"\f7ab\f7ab"}.fa-bore-hole{--fa:"\e4c3";--fa--fa:"\e4c3\e4c3"}.fa-industry{--fa:"\f275";--fa--fa:"\f275\f275"}.fa-arrow-alt-circle-down,.fa-circle-down{--fa:"\f358";--fa--fa:"\f358\f358"}.fa-arrows-turn-to-dots{--fa:"\e4c1";--fa--fa:"\e4c1\e4c1"}.fa-florin-sign{--fa:"\e184";--fa--fa:"\e184\e184"}.fa-arrow-down-short-wide,.fa-sort-amount-desc,.fa-sort-amount-down-alt{--fa:"\f884";--fa--fa:"\f884\f884"}.fa-less-than{--fa:"\3c";--fa--fa:"\3c\3c"}.fa-angle-down{--fa:"\f107";--fa--fa:"\f107\f107"}.fa-car-tunnel{--fa:"\e4de";--fa--fa:"\e4de\e4de"}.fa-head-side-cough{--fa:"\e061";--fa--fa:"\e061\e061"}.fa-grip-lines{--fa:"\f7a4";--fa--fa:"\f7a4\f7a4"}.fa-thumbs-down{--fa:"\f165";--fa--fa:"\f165\f165"}.fa-user-lock{--fa:"\f502";--fa--fa:"\f502\f502"}.fa-arrow-right-long,.fa-long-arrow-right{--fa:"\f178";--fa--fa:"\f178\f178"}.fa-anchor-circle-xmark{--fa:"\e4ac";--fa--fa:"\e4ac\e4ac"}.fa-ellipsis,.fa-ellipsis-h{--fa:"\f141";--fa--fa:"\f141\f141"}.fa-chess-pawn{--fa:"\f443";--fa--fa:"\f443\f443"}.fa-first-aid,.fa-kit-medical{--fa:"\f479";--fa--fa:"\f479\f479"}.fa-person-through-window{--fa:"\e5a9";--fa--fa:"\e5a9\e5a9"}.fa-toolbox{--fa:"\f552";--fa--fa:"\f552\f552"}.fa-hands-holding-circle{--fa:"\e4fb";--fa--fa:"\e4fb\e4fb"}.fa-bug{--fa:"\f188";--fa--fa:"\f188\f188"}.fa-credit-card,.fa-credit-card-alt{--fa:"\f09d";--fa--fa:"\f09d\f09d"}.fa-automobile,.fa-car{--fa:"\f1b9";--fa--fa:"\f1b9\f1b9"}.fa-hand-holding-hand{--fa:"\e4f7";--fa--fa:"\e4f7\e4f7"}.fa-book-open-reader,.fa-book-reader{--fa:"\f5da";--fa--fa:"\f5da\f5da"}.fa-mountain-sun{--fa:"\e52f";--fa--fa:"\e52f\e52f"}.fa-arrows-left-right-to-line{--fa:"\e4ba";--fa--fa:"\e4ba\e4ba"}.fa-dice-d20{--fa:"\f6cf";--fa--fa:"\f6cf\f6cf"}.fa-truck-droplet{--fa:"\e58c";--fa--fa:"\e58c\e58c"}.fa-file-circle-xmark{--fa:"\e5a1";--fa--fa:"\e5a1\e5a1"}.fa-temperature-arrow-up,.fa-temperature-up{--fa:"\e040";--fa--fa:"\e040\e040"}.fa-medal{--fa:"\f5a2";--fa--fa:"\f5a2\f5a2"}.fa-bed{--fa:"\f236";--fa--fa:"\f236\f236"}.fa-h-square,.fa-square-h{--fa:"\f0fd";--fa--fa:"\f0fd\f0fd"}.fa-podcast{--fa:"\f2ce";--fa--fa:"\f2ce\f2ce"}.fa-temperature-4,.fa-temperature-full,.fa-thermometer-4,.fa-thermometer-full{--fa:"\f2c7";--fa--fa:"\f2c7\f2c7"}.fa-bell{--fa:"\f0f3";--fa--fa:"\f0f3\f0f3"}.fa-superscript{--fa:"\f12b";--fa--fa:"\f12b\f12b"}.fa-plug-circle-xmark{--fa:"\e560";--fa--fa:"\e560\e560"}.fa-star-of-life{--fa:"\f621";--fa--fa:"\f621\f621"}.fa-phone-slash{--fa:"\f3dd";--fa--fa:"\f3dd\f3dd"}.fa-paint-roller{--fa:"\f5aa";--fa--fa:"\f5aa\f5aa"}.fa-hands-helping,.fa-handshake-angle{--fa:"\f4c4";--fa--fa:"\f4c4\f4c4"}.fa-location-dot,.fa-map-marker-alt{--fa:"\f3c5";--fa--fa:"\f3c5\f3c5"}.fa-file{--fa:"\f15b";--fa--fa:"\f15b\f15b"}.fa-greater-than{--fa:"\3e";--fa--fa:"\3e\3e"}.fa-person-swimming,.fa-swimmer{--fa:"\f5c4";--fa--fa:"\f5c4\f5c4"}.fa-arrow-down{--fa:"\f063";--fa--fa:"\f063\f063"}.fa-droplet,.fa-tint{--fa:"\f043";--fa--fa:"\f043\f043"}.fa-eraser{--fa:"\f12d";--fa--fa:"\f12d\f12d"}.fa-earth,.fa-earth-america,.fa-earth-americas,.fa-globe-americas{--fa:"\f57d";--fa--fa:"\f57d\f57d"}.fa-person-burst{--fa:"\e53b";--fa--fa:"\e53b\e53b"}.fa-dove{--fa:"\f4ba";--fa--fa:"\f4ba\f4ba"}.fa-battery-0,.fa-battery-empty{--fa:"\f244";--fa--fa:"\f244\f244"}.fa-socks{--fa:"\f696";--fa--fa:"\f696\f696"}.fa-inbox{--fa:"\f01c";--fa--fa:"\f01c\f01c"}.fa-section{--fa:"\e447";--fa--fa:"\e447\e447"}.fa-gauge-high,.fa-tachometer-alt,.fa-tachometer-alt-fast{--fa:"\f625";--fa--fa:"\f625\f625"}.fa-envelope-open-text{--fa:"\f658";--fa--fa:"\f658\f658"}.fa-hospital,.fa-hospital-alt,.fa-hospital-wide{--fa:"\f0f8";--fa--fa:"\f0f8\f0f8"}.fa-wine-bottle{--fa:"\f72f";--fa--fa:"\f72f\f72f"}.fa-chess-rook{--fa:"\f447";--fa--fa:"\f447\f447"}.fa-bars-staggered,.fa-reorder,.fa-stream{--fa:"\f550";--fa--fa:"\f550\f550"}.fa-dharmachakra{--fa:"\f655";--fa--fa:"\f655\f655"}.fa-hotdog{--fa:"\f80f";--fa--fa:"\f80f\f80f"}.fa-blind,.fa-person-walking-with-cane{--fa:"\f29d";--fa--fa:"\f29d\f29d"}.fa-drum{--fa:"\f569";--fa--fa:"\f569\f569"}.fa-ice-cream{--fa:"\f810";--fa--fa:"\f810\f810"}.fa-heart-circle-bolt{--fa:"\e4fc";--fa--fa:"\e4fc\e4fc"}.fa-fax{--fa:"\f1ac";--fa--fa:"\f1ac\f1ac"}.fa-paragraph{--fa:"\f1dd";--fa--fa:"\f1dd\f1dd"}.fa-check-to-slot,.fa-vote-yea{--fa:"\f772";--fa--fa:"\f772\f772"}.fa-star-half{--fa:"\f089";--fa--fa:"\f089\f089"}.fa-boxes,.fa-boxes-alt,.fa-boxes-stacked{--fa:"\f468";--fa--fa:"\f468\f468"}.fa-chain,.fa-link{--fa:"\f0c1";--fa--fa:"\f0c1\f0c1"}.fa-assistive-listening-systems,.fa-ear-listen{--fa:"\f2a2";--fa--fa:"\f2a2\f2a2"}.fa-tree-city{--fa:"\e587";--fa--fa:"\e587\e587"}.fa-play{--fa:"\f04b";--fa--fa:"\f04b\f04b"}.fa-font{--fa:"\f031";--fa--fa:"\f031\f031"}.fa-table-cells-row-lock{--fa:"\e67a";--fa--fa:"\e67a\e67a"}.fa-rupiah-sign{--fa:"\e23d";--fa--fa:"\e23d\e23d"}.fa-magnifying-glass,.fa-search{--fa:"\f002";--fa--fa:"\f002\f002"}.fa-ping-pong-paddle-ball,.fa-table-tennis,.fa-table-tennis-paddle-ball{--fa:"\f45d";--fa--fa:"\f45d\f45d"}.fa-diagnoses,.fa-person-dots-from-line{--fa:"\f470";--fa--fa:"\f470\f470"}.fa-trash-can-arrow-up,.fa-trash-restore-alt{--fa:"\f82a";--fa--fa:"\f82a\f82a"}.fa-naira-sign{--fa:"\e1f6";--fa--fa:"\e1f6\e1f6"}.fa-cart-arrow-down{--fa:"\f218";--fa--fa:"\f218\f218"}.fa-walkie-talkie{--fa:"\f8ef";--fa--fa:"\f8ef\f8ef"}.fa-file-edit,.fa-file-pen{--fa:"\f31c";--fa--fa:"\f31c\f31c"}.fa-receipt{--fa:"\f543";--fa--fa:"\f543\f543"}.fa-pen-square,.fa-pencil-square,.fa-square-pen{--fa:"\f14b";--fa--fa:"\f14b\f14b"}.fa-suitcase-rolling{--fa:"\f5c1";--fa--fa:"\f5c1\f5c1"}.fa-person-circle-exclamation{--fa:"\e53f";--fa--fa:"\e53f\e53f"}.fa-chevron-down{--fa:"\f078";--fa--fa:"\f078\f078"}.fa-battery,.fa-battery-5,.fa-battery-full{--fa:"\f240";--fa--fa:"\f240\f240"}.fa-skull-crossbones{--fa:"\f714";--fa--fa:"\f714\f714"}.fa-code-compare{--fa:"\e13a";--fa--fa:"\e13a\e13a"}.fa-list-dots,.fa-list-ul{--fa:"\f0ca";--fa--fa:"\f0ca\f0ca"}.fa-school-lock{--fa:"\e56f";--fa--fa:"\e56f\e56f"}.fa-tower-cell{--fa:"\e585";--fa--fa:"\e585\e585"}.fa-down-long,.fa-long-arrow-alt-down{--fa:"\f309";--fa--fa:"\f309\f309"}.fa-ranking-star{--fa:"\e561";--fa--fa:"\e561\e561"}.fa-chess-king{--fa:"\f43f";--fa--fa:"\f43f\f43f"}.fa-person-harassing{--fa:"\e549";--fa--fa:"\e549\e549"}.fa-brazilian-real-sign{--fa:"\e46c";--fa--fa:"\e46c\e46c"}.fa-landmark-alt,.fa-landmark-dome{--fa:"\f752";--fa--fa:"\f752\f752"}.fa-arrow-up{--fa:"\f062";--fa--fa:"\f062\f062"}.fa-television,.fa-tv,.fa-tv-alt{--fa:"\f26c";--fa--fa:"\f26c\f26c"}.fa-shrimp{--fa:"\e448";--fa--fa:"\e448\e448"}.fa-list-check,.fa-tasks{--fa:"\f0ae";--fa--fa:"\f0ae\f0ae"}.fa-jug-detergent{--fa:"\e519";--fa--fa:"\e519\e519"}.fa-circle-user,.fa-user-circle{--fa:"\f2bd";--fa--fa:"\f2bd\f2bd"}.fa-user-shield{--fa:"\f505";--fa--fa:"\f505\f505"}.fa-wind{--fa:"\f72e";--fa--fa:"\f72e\f72e"}.fa-car-burst,.fa-car-crash{--fa:"\f5e1";--fa--fa:"\f5e1\f5e1"}.fa-y{--fa:"\59";--fa--fa:"\59\59"}.fa-person-snowboarding,.fa-snowboarding{--fa:"\f7ce";--fa--fa:"\f7ce\f7ce"}.fa-shipping-fast,.fa-truck-fast{--fa:"\f48b";--fa--fa:"\f48b\f48b"}.fa-fish{--fa:"\f578";--fa--fa:"\f578\f578"}.fa-user-graduate{--fa:"\f501";--fa--fa:"\f501\f501"}.fa-adjust,.fa-circle-half-stroke{--fa:"\f042";--fa--fa:"\f042\f042"}.fa-clapperboard{--fa:"\e131";--fa--fa:"\e131\e131"}.fa-circle-radiation,.fa-radiation-alt{--fa:"\f7ba";--fa--fa:"\f7ba\f7ba"}.fa-baseball,.fa-baseball-ball{--fa:"\f433";--fa--fa:"\f433\f433"}.fa-jet-fighter-up{--fa:"\e518";--fa--fa:"\e518\e518"}.fa-diagram-project,.fa-project-diagram{--fa:"\f542";--fa--fa:"\f542\f542"}.fa-copy{--fa:"\f0c5";--fa--fa:"\f0c5\f0c5"}.fa-volume-mute,.fa-volume-times,.fa-volume-xmark{--fa:"\f6a9";--fa--fa:"\f6a9\f6a9"}.fa-hand-sparkles{--fa:"\e05d";--fa--fa:"\e05d\e05d"}.fa-grip,.fa-grip-horizontal{--fa:"\f58d";--fa--fa:"\f58d\f58d"}.fa-share-from-square,.fa-share-square{--fa:"\f14d";--fa--fa:"\f14d\f14d"}.fa-child-combatant,.fa-child-rifle{--fa:"\e4e0";--fa--fa:"\e4e0\e4e0"}.fa-gun{--fa:"\e19b";--fa--fa:"\e19b\e19b"}.fa-phone-square,.fa-square-phone{--fa:"\f098";--fa--fa:"\f098\f098"}.fa-add,.fa-plus{--fa:"\2b";--fa--fa:"\2b\2b"}.fa-expand{--fa:"\f065";--fa--fa:"\f065\f065"}.fa-computer{--fa:"\e4e5";--fa--fa:"\e4e5\e4e5"}.fa-close,.fa-multiply,.fa-remove,.fa-times,.fa-xmark{--fa:"\f00d";--fa--fa:"\f00d\f00d"}.fa-arrows,.fa-arrows-up-down-left-right{--fa:"\f047";--fa--fa:"\f047\f047"}.fa-chalkboard-teacher,.fa-chalkboard-user{--fa:"\f51c";--fa--fa:"\f51c\f51c"}.fa-peso-sign{--fa:"\e222";--fa--fa:"\e222\e222"}.fa-building-shield{--fa:"\e4d8";--fa--fa:"\e4d8\e4d8"}.fa-baby{--fa:"\f77c";--fa--fa:"\f77c\f77c"}.fa-users-line{--fa:"\e592";--fa--fa:"\e592\e592"}.fa-quote-left,.fa-quote-left-alt{--fa:"\f10d";--fa--fa:"\f10d\f10d"}.fa-tractor{--fa:"\f722";--fa--fa:"\f722\f722"}.fa-trash-arrow-up,.fa-trash-restore{--fa:"\f829";--fa--fa:"\f829\f829"}.fa-arrow-down-up-lock{--fa:"\e4b0";--fa--fa:"\e4b0\e4b0"}.fa-lines-leaning{--fa:"\e51e";--fa--fa:"\e51e\e51e"}.fa-ruler-combined{--fa:"\f546";--fa--fa:"\f546\f546"}.fa-copyright{--fa:"\f1f9";--fa--fa:"\f1f9\f1f9"}.fa-equals{--fa:"\3d";--fa--fa:"\3d\3d"}.fa-blender{--fa:"\f517";--fa--fa:"\f517\f517"}.fa-teeth{--fa:"\f62e";--fa--fa:"\f62e\f62e"}.fa-ils,.fa-shekel,.fa-shekel-sign,.fa-sheqel,.fa-sheqel-sign{--fa:"\f20b";--fa--fa:"\f20b\f20b"}.fa-map{--fa:"\f279";--fa--fa:"\f279\f279"}.fa-rocket{--fa:"\f135";--fa--fa:"\f135\f135"}.fa-photo-film,.fa-photo-video{--fa:"\f87c";--fa--fa:"\f87c\f87c"}.fa-folder-minus{--fa:"\f65d";--fa--fa:"\f65d\f65d"}.fa-hexagon-nodes-bolt{--fa:"\e69a";--fa--fa:"\e69a\e69a"}.fa-store{--fa:"\f54e";--fa--fa:"\f54e\f54e"}.fa-arrow-trend-up{--fa:"\e098";--fa--fa:"\e098\e098"}.fa-plug-circle-minus{--fa:"\e55e";--fa--fa:"\e55e\e55e"}.fa-sign,.fa-sign-hanging{--fa:"\f4d9";--fa--fa:"\f4d9\f4d9"}.fa-bezier-curve{--fa:"\f55b";--fa--fa:"\f55b\f55b"}.fa-bell-slash{--fa:"\f1f6";--fa--fa:"\f1f6\f1f6"}.fa-tablet,.fa-tablet-android{--fa:"\f3fb";--fa--fa:"\f3fb\f3fb"}.fa-school-flag{--fa:"\e56e";--fa--fa:"\e56e\e56e"}.fa-fill{--fa:"\f575";--fa--fa:"\f575\f575"}.fa-angle-up{--fa:"\f106";--fa--fa:"\f106\f106"}.fa-drumstick-bite{--fa:"\f6d7";--fa--fa:"\f6d7\f6d7"}.fa-holly-berry{--fa:"\f7aa";--fa--fa:"\f7aa\f7aa"}.fa-chevron-left{--fa:"\f053";--fa--fa:"\f053\f053"}.fa-bacteria{--fa:"\e059";--fa--fa:"\e059\e059"}.fa-hand-lizard{--fa:"\f258";--fa--fa:"\f258\f258"}.fa-notdef{--fa:"\e1fe";--fa--fa:"\e1fe\e1fe"}.fa-disease{--fa:"\f7fa";--fa--fa:"\f7fa\f7fa"}.fa-briefcase-medical{--fa:"\f469";--fa--fa:"\f469\f469"}.fa-genderless{--fa:"\f22d";--fa--fa:"\f22d\f22d"}.fa-chevron-right{--fa:"\f054";--fa--fa:"\f054\f054"}.fa-retweet{--fa:"\f079";--fa--fa:"\f079\f079"}.fa-car-alt,.fa-car-rear{--fa:"\f5de";--fa--fa:"\f5de\f5de"}.fa-pump-soap{--fa:"\e06b";--fa--fa:"\e06b\e06b"}.fa-video-slash{--fa:"\f4e2";--fa--fa:"\f4e2\f4e2"}.fa-battery-2,.fa-battery-quarter{--fa:"\f243";--fa--fa:"\f243\f243"}.fa-radio{--fa:"\f8d7";--fa--fa:"\f8d7\f8d7"}.fa-baby-carriage,.fa-carriage-baby{--fa:"\f77d";--fa--fa:"\f77d\f77d"}.fa-traffic-light{--fa:"\f637";--fa--fa:"\f637\f637"}.fa-thermometer{--fa:"\f491";--fa--fa:"\f491\f491"}.fa-vr-cardboard{--fa:"\f729";--fa--fa:"\f729\f729"}.fa-hand-middle-finger{--fa:"\f806";--fa--fa:"\f806\f806"}.fa-percent,.fa-percentage{--fa:"\25";--fa--fa:"\25\25"}.fa-truck-moving{--fa:"\f4df";--fa--fa:"\f4df\f4df"}.fa-glass-water-droplet{--fa:"\e4f5";--fa--fa:"\e4f5\e4f5"}.fa-display{--fa:"\e163";--fa--fa:"\e163\e163"}.fa-face-smile,.fa-smile{--fa:"\f118";--fa--fa:"\f118\f118"}.fa-thumb-tack,.fa-thumbtack{--fa:"\f08d";--fa--fa:"\f08d\f08d"}.fa-trophy{--fa:"\f091";--fa--fa:"\f091\f091"}.fa-person-praying,.fa-pray{--fa:"\f683";--fa--fa:"\f683\f683"}.fa-hammer{--fa:"\f6e3";--fa--fa:"\f6e3\f6e3"}.fa-hand-peace{--fa:"\f25b";--fa--fa:"\f25b\f25b"}.fa-rotate,.fa-sync-alt{--fa:"\f2f1";--fa--fa:"\f2f1\f2f1"}.fa-spinner{--fa:"\f110";--fa--fa:"\f110\f110"}.fa-robot{--fa:"\f544";--fa--fa:"\f544\f544"}.fa-peace{--fa:"\f67c";--fa--fa:"\f67c\f67c"}.fa-cogs,.fa-gears{--fa:"\f085";--fa--fa:"\f085\f085"}.fa-warehouse{--fa:"\f494";--fa--fa:"\f494\f494"}.fa-arrow-up-right-dots{--fa:"\e4b7";--fa--fa:"\e4b7\e4b7"}.fa-splotch{--fa:"\f5bc";--fa--fa:"\f5bc\f5bc"}.fa-face-grin-hearts,.fa-grin-hearts{--fa:"\f584";--fa--fa:"\f584\f584"}.fa-dice-four{--fa:"\f524";--fa--fa:"\f524\f524"}.fa-sim-card{--fa:"\f7c4";--fa--fa:"\f7c4\f7c4"}.fa-transgender,.fa-transgender-alt{--fa:"\f225";--fa--fa:"\f225\f225"}.fa-mercury{--fa:"\f223";--fa--fa:"\f223\f223"}.fa-arrow-turn-down,.fa-level-down{--fa:"\f149";--fa--fa:"\f149\f149"}.fa-person-falling-burst{--fa:"\e547";--fa--fa:"\e547\e547"}.fa-award{--fa:"\f559";--fa--fa:"\f559\f559"}.fa-ticket-alt,.fa-ticket-simple{--fa:"\f3ff";--fa--fa:"\f3ff\f3ff"}.fa-building{--fa:"\f1ad";--fa--fa:"\f1ad\f1ad"}.fa-angle-double-left,.fa-angles-left{--fa:"\f100";--fa--fa:"\f100\f100"}.fa-qrcode{--fa:"\f029";--fa--fa:"\f029\f029"}.fa-clock-rotate-left,.fa-history{--fa:"\f1da";--fa--fa:"\f1da\f1da"}.fa-face-grin-beam-sweat,.fa-grin-beam-sweat{--fa:"\f583";--fa--fa:"\f583\f583"}.fa-arrow-right-from-file,.fa-file-export{--fa:"\f56e";--fa--fa:"\f56e\f56e"}.fa-shield,.fa-shield-blank{--fa:"\f132";--fa--fa:"\f132\f132"}.fa-arrow-up-short-wide,.fa-sort-amount-up-alt{--fa:"\f885";--fa--fa:"\f885\f885"}.fa-comment-nodes{--fa:"\e696";--fa--fa:"\e696\e696"}.fa-house-medical{--fa:"\e3b2";--fa--fa:"\e3b2\e3b2"}.fa-golf-ball,.fa-golf-ball-tee{--fa:"\f450";--fa--fa:"\f450\f450"}.fa-chevron-circle-left,.fa-circle-chevron-left{--fa:"\f137";--fa--fa:"\f137\f137"}.fa-house-chimney-window{--fa:"\e00d";--fa--fa:"\e00d\e00d"}.fa-pen-nib{--fa:"\f5ad";--fa--fa:"\f5ad\f5ad"}.fa-tent-arrow-turn-left{--fa:"\e580";--fa--fa:"\e580\e580"}.fa-tents{--fa:"\e582";--fa--fa:"\e582\e582"}.fa-magic,.fa-wand-magic{--fa:"\f0d0";--fa--fa:"\f0d0\f0d0"}.fa-dog{--fa:"\f6d3";--fa--fa:"\f6d3\f6d3"}.fa-carrot{--fa:"\f787";--fa--fa:"\f787\f787"}.fa-moon{--fa:"\f186";--fa--fa:"\f186\f186"}.fa-wine-glass-alt,.fa-wine-glass-empty{--fa:"\f5ce";--fa--fa:"\f5ce\f5ce"}.fa-cheese{--fa:"\f7ef";--fa--fa:"\f7ef\f7ef"}.fa-yin-yang{--fa:"\f6ad";--fa--fa:"\f6ad\f6ad"}.fa-music{--fa:"\f001";--fa--fa:"\f001\f001"}.fa-code-commit{--fa:"\f386";--fa--fa:"\f386\f386"}.fa-temperature-low{--fa:"\f76b";--fa--fa:"\f76b\f76b"}.fa-biking,.fa-person-biking{--fa:"\f84a";--fa--fa:"\f84a\f84a"}.fa-broom{--fa:"\f51a";--fa--fa:"\f51a\f51a"}.fa-shield-heart{--fa:"\e574";--fa--fa:"\e574\e574"}.fa-gopuram{--fa:"\f664";--fa--fa:"\f664\f664"}.fa-earth-oceania,.fa-globe-oceania{--fa:"\e47b";--fa--fa:"\e47b\e47b"}.fa-square-xmark,.fa-times-square,.fa-xmark-square{--fa:"\f2d3";--fa--fa:"\f2d3\f2d3"}.fa-hashtag{--fa:"\23";--fa--fa:"\23\23"}.fa-expand-alt,.fa-up-right-and-down-left-from-center{--fa:"\f424";--fa--fa:"\f424\f424"}.fa-oil-can{--fa:"\f613";--fa--fa:"\f613\f613"}.fa-t{--fa:"\54";--fa--fa:"\54\54"}.fa-hippo{--fa:"\f6ed";--fa--fa:"\f6ed\f6ed"}.fa-chart-column{--fa:"\e0e3";--fa--fa:"\e0e3\e0e3"}.fa-infinity{--fa:"\f534";--fa--fa:"\f534\f534"}.fa-vial-circle-check{--fa:"\e596";--fa--fa:"\e596\e596"}.fa-person-arrow-down-to-line{--fa:"\e538";--fa--fa:"\e538\e538"}.fa-voicemail{--fa:"\f897";--fa--fa:"\f897\f897"}.fa-fan{--fa:"\f863";--fa--fa:"\f863\f863"}.fa-person-walking-luggage{--fa:"\e554";--fa--fa:"\e554\e554"}.fa-arrows-alt-v,.fa-up-down{--fa:"\f338";--fa--fa:"\f338\f338"}.fa-cloud-moon-rain{--fa:"\f73c";--fa--fa:"\f73c\f73c"}.fa-calendar{--fa:"\f133";--fa--fa:"\f133\f133"}.fa-trailer{--fa:"\e041";--fa--fa:"\e041\e041"}.fa-bahai,.fa-haykal{--fa:"\f666";--fa--fa:"\f666\f666"}.fa-sd-card{--fa:"\f7c2";--fa--fa:"\f7c2\f7c2"}.fa-dragon{--fa:"\f6d5";--fa--fa:"\f6d5\f6d5"}.fa-shoe-prints{--fa:"\f54b";--fa--fa:"\f54b\f54b"}.fa-circle-plus,.fa-plus-circle{--fa:"\f055";--fa--fa:"\f055\f055"}.fa-face-grin-tongue-wink,.fa-grin-tongue-wink{--fa:"\f58b";--fa--fa:"\f58b\f58b"}.fa-hand-holding{--fa:"\f4bd";--fa--fa:"\f4bd\f4bd"}.fa-plug-circle-exclamation{--fa:"\e55d";--fa--fa:"\e55d\e55d"}.fa-chain-broken,.fa-chain-slash,.fa-link-slash,.fa-unlink{--fa:"\f127";--fa--fa:"\f127\f127"}.fa-clone{--fa:"\f24d";--fa--fa:"\f24d\f24d"}.fa-person-walking-arrow-loop-left{--fa:"\e551";--fa--fa:"\e551\e551"}.fa-arrow-up-z-a,.fa-sort-alpha-up-alt{--fa:"\f882";--fa--fa:"\f882\f882"}.fa-fire-alt,.fa-fire-flame-curved{--fa:"\f7e4";--fa--fa:"\f7e4\f7e4"}.fa-tornado{--fa:"\f76f";--fa--fa:"\f76f\f76f"}.fa-file-circle-plus{--fa:"\e494";--fa--fa:"\e494\e494"}.fa-book-quran,.fa-quran{--fa:"\f687";--fa--fa:"\f687\f687"}.fa-anchor{--fa:"\f13d";--fa--fa:"\f13d\f13d"}.fa-border-all{--fa:"\f84c";--fa--fa:"\f84c\f84c"}.fa-angry,.fa-face-angry{--fa:"\f556";--fa--fa:"\f556\f556"}.fa-cookie-bite{--fa:"\f564";--fa--fa:"\f564\f564"}.fa-arrow-trend-down{--fa:"\e097";--fa--fa:"\e097\e097"}.fa-feed,.fa-rss{--fa:"\f09e";--fa--fa:"\f09e\f09e"}.fa-draw-polygon{--fa:"\f5ee";--fa--fa:"\f5ee\f5ee"}.fa-balance-scale,.fa-scale-balanced{--fa:"\f24e";--fa--fa:"\f24e\f24e"}.fa-gauge-simple-high,.fa-tachometer,.fa-tachometer-fast{--fa:"\f62a";--fa--fa:"\f62a\f62a"}.fa-shower{--fa:"\f2cc";--fa--fa:"\f2cc\f2cc"}.fa-desktop,.fa-desktop-alt{--fa:"\f390";--fa--fa:"\f390\f390"}.fa-m{--fa:"\4d";--fa--fa:"\4d\4d"}.fa-table-list,.fa-th-list{--fa:"\f00b";--fa--fa:"\f00b\f00b"}.fa-comment-sms,.fa-sms{--fa:"\f7cd";--fa--fa:"\f7cd\f7cd"}.fa-book{--fa:"\f02d";--fa--fa:"\f02d\f02d"}.fa-user-plus{--fa:"\f234";--fa--fa:"\f234\f234"}.fa-check{--fa:"\f00c";--fa--fa:"\f00c\f00c"}.fa-battery-4,.fa-battery-three-quarters{--fa:"\f241";--fa--fa:"\f241\f241"}.fa-house-circle-check{--fa:"\e509";--fa--fa:"\e509\e509"}.fa-angle-left{--fa:"\f104";--fa--fa:"\f104\f104"}.fa-diagram-successor{--fa:"\e47a";--fa--fa:"\e47a\e47a"}.fa-truck-arrow-right{--fa:"\e58b";--fa--fa:"\e58b\e58b"}.fa-arrows-split-up-and-left{--fa:"\e4bc";--fa--fa:"\e4bc\e4bc"}.fa-fist-raised,.fa-hand-fist{--fa:"\f6de";--fa--fa:"\f6de\f6de"}.fa-cloud-moon{--fa:"\f6c3";--fa--fa:"\f6c3\f6c3"}.fa-briefcase{--fa:"\f0b1";--fa--fa:"\f0b1\f0b1"}.fa-person-falling{--fa:"\e546";--fa--fa:"\e546\e546"}.fa-image-portrait,.fa-portrait{--fa:"\f3e0";--fa--fa:"\f3e0\f3e0"}.fa-user-tag{--fa:"\f507";--fa--fa:"\f507\f507"}.fa-rug{--fa:"\e569";--fa--fa:"\e569\e569"}.fa-earth-europe,.fa-globe-europe{--fa:"\f7a2";--fa--fa:"\f7a2\f7a2"}.fa-cart-flatbed-suitcase,.fa-luggage-cart{--fa:"\f59d";--fa--fa:"\f59d\f59d"}.fa-rectangle-times,.fa-rectangle-xmark,.fa-times-rectangle,.fa-window-close{--fa:"\f410";--fa--fa:"\f410\f410"}.fa-baht-sign{--fa:"\e0ac";--fa--fa:"\e0ac\e0ac"}.fa-book-open{--fa:"\f518";--fa--fa:"\f518\f518"}.fa-book-journal-whills,.fa-journal-whills{--fa:"\f66a";--fa--fa:"\f66a\f66a"}.fa-handcuffs{--fa:"\e4f8";--fa--fa:"\e4f8\e4f8"}.fa-exclamation-triangle,.fa-triangle-exclamation,.fa-warning{--fa:"\f071";--fa--fa:"\f071\f071"}.fa-database{--fa:"\f1c0";--fa--fa:"\f1c0\f1c0"}.fa-mail-forward,.fa-share{--fa:"\f064";--fa--fa:"\f064\f064"}.fa-bottle-droplet{--fa:"\e4c4";--fa--fa:"\e4c4\e4c4"}.fa-mask-face{--fa:"\e1d7";--fa--fa:"\e1d7\e1d7"}.fa-hill-rockslide{--fa:"\e508";--fa--fa:"\e508\e508"}.fa-exchange-alt,.fa-right-left{--fa:"\f362";--fa--fa:"\f362\f362"}.fa-paper-plane{--fa:"\f1d8";--fa--fa:"\f1d8\f1d8"}.fa-road-circle-exclamation{--fa:"\e565";--fa--fa:"\e565\e565"}.fa-dungeon{--fa:"\f6d9";--fa--fa:"\f6d9\f6d9"}.fa-align-right{--fa:"\f038";--fa--fa:"\f038\f038"}.fa-money-bill-1-wave,.fa-money-bill-wave-alt{--fa:"\f53b";--fa--fa:"\f53b\f53b"}.fa-life-ring{--fa:"\f1cd";--fa--fa:"\f1cd\f1cd"}.fa-hands,.fa-sign-language,.fa-signing{--fa:"\f2a7";--fa--fa:"\f2a7\f2a7"}.fa-calendar-day{--fa:"\f783";--fa--fa:"\f783\f783"}.fa-ladder-water,.fa-swimming-pool,.fa-water-ladder{--fa:"\f5c5";--fa--fa:"\f5c5\f5c5"}.fa-arrows-up-down,.fa-arrows-v{--fa:"\f07d";--fa--fa:"\f07d\f07d"}.fa-face-grimace,.fa-grimace{--fa:"\f57f";--fa--fa:"\f57f\f57f"}.fa-wheelchair-alt,.fa-wheelchair-move{--fa:"\e2ce";--fa--fa:"\e2ce\e2ce"}.fa-level-down-alt,.fa-turn-down{--fa:"\f3be";--fa--fa:"\f3be\f3be"}.fa-person-walking-arrow-right{--fa:"\e552";--fa--fa:"\e552\e552"}.fa-envelope-square,.fa-square-envelope{--fa:"\f199";--fa--fa:"\f199\f199"}.fa-dice{--fa:"\f522";--fa--fa:"\f522\f522"}.fa-bowling-ball{--fa:"\f436";--fa--fa:"\f436\f436"}.fa-brain{--fa:"\f5dc";--fa--fa:"\f5dc\f5dc"}.fa-band-aid,.fa-bandage{--fa:"\f462";--fa--fa:"\f462\f462"}.fa-calendar-minus{--fa:"\f272";--fa--fa:"\f272\f272"}.fa-circle-xmark,.fa-times-circle,.fa-xmark-circle{--fa:"\f057";--fa--fa:"\f057\f057"}.fa-gifts{--fa:"\f79c";--fa--fa:"\f79c\f79c"}.fa-hotel{--fa:"\f594";--fa--fa:"\f594\f594"}.fa-earth-asia,.fa-globe-asia{--fa:"\f57e";--fa--fa:"\f57e\f57e"}.fa-id-card-alt,.fa-id-card-clip{--fa:"\f47f";--fa--fa:"\f47f\f47f"}.fa-magnifying-glass-plus,.fa-search-plus{--fa:"\f00e";--fa--fa:"\f00e\f00e"}.fa-thumbs-up{--fa:"\f164";--fa--fa:"\f164\f164"}.fa-user-clock{--fa:"\f4fd";--fa--fa:"\f4fd\f4fd"}.fa-allergies,.fa-hand-dots{--fa:"\f461";--fa--fa:"\f461\f461"}.fa-file-invoice{--fa:"\f570";--fa--fa:"\f570\f570"}.fa-window-minimize{--fa:"\f2d1";--fa--fa:"\f2d1\f2d1"}.fa-coffee,.fa-mug-saucer{--fa:"\f0f4";--fa--fa:"\f0f4\f0f4"}.fa-brush{--fa:"\f55d";--fa--fa:"\f55d\f55d"}.fa-file-half-dashed{--fa:"\e698";--fa--fa:"\e698\e698"}.fa-mask{--fa:"\f6fa";--fa--fa:"\f6fa\f6fa"}.fa-magnifying-glass-minus,.fa-search-minus{--fa:"\f010";--fa--fa:"\f010\f010"}.fa-ruler-vertical{--fa:"\f548";--fa--fa:"\f548\f548"}.fa-user-alt,.fa-user-large{--fa:"\f406";--fa--fa:"\f406\f406"}.fa-train-tram{--fa:"\e5b4";--fa--fa:"\e5b4\e5b4"}.fa-user-nurse{--fa:"\f82f";--fa--fa:"\f82f\f82f"}.fa-syringe{--fa:"\f48e";--fa--fa:"\f48e\f48e"}.fa-cloud-sun{--fa:"\f6c4";--fa--fa:"\f6c4\f6c4"}.fa-stopwatch-20{--fa:"\e06f";--fa--fa:"\e06f\e06f"}.fa-square-full{--fa:"\f45c";--fa--fa:"\f45c\f45c"}.fa-magnet{--fa:"\f076";--fa--fa:"\f076\f076"}.fa-jar{--fa:"\e516";--fa--fa:"\e516\e516"}.fa-note-sticky,.fa-sticky-note{--fa:"\f249";--fa--fa:"\f249\f249"}.fa-bug-slash{--fa:"\e490";--fa--fa:"\e490\e490"}.fa-arrow-up-from-water-pump{--fa:"\e4b6";--fa--fa:"\e4b6\e4b6"}.fa-bone{--fa:"\f5d7";--fa--fa:"\f5d7\f5d7"}.fa-table-cells-row-unlock{--fa:"\e691";--fa--fa:"\e691\e691"}.fa-user-injured{--fa:"\f728";--fa--fa:"\f728\f728"}.fa-face-sad-tear,.fa-sad-tear{--fa:"\f5b4";--fa--fa:"\f5b4\f5b4"}.fa-plane{--fa:"\f072";--fa--fa:"\f072\f072"}.fa-tent-arrows-down{--fa:"\e581";--fa--fa:"\e581\e581"}.fa-exclamation{--fa:"\21";--fa--fa:"\21\21"}.fa-arrows-spin{--fa:"\e4bb";--fa--fa:"\e4bb\e4bb"}.fa-print{--fa:"\f02f";--fa--fa:"\f02f\f02f"}.fa-try,.fa-turkish-lira,.fa-turkish-lira-sign{--fa:"\e2bb";--fa--fa:"\e2bb\e2bb"}.fa-dollar,.fa-dollar-sign,.fa-usd{--fa:"\24";--fa--fa:"\24\24"}.fa-x{--fa:"\58";--fa--fa:"\58\58"}.fa-magnifying-glass-dollar,.fa-search-dollar{--fa:"\f688";--fa--fa:"\f688\f688"}.fa-users-cog,.fa-users-gear{--fa:"\f509";--fa--fa:"\f509\f509"}.fa-person-military-pointing{--fa:"\e54a";--fa--fa:"\e54a\e54a"}.fa-bank,.fa-building-columns,.fa-institution,.fa-museum,.fa-university{--fa:"\f19c";--fa--fa:"\f19c\f19c"}.fa-umbrella{--fa:"\f0e9";--fa--fa:"\f0e9\f0e9"}.fa-trowel{--fa:"\e589";--fa--fa:"\e589\e589"}.fa-d{--fa:"\44";--fa--fa:"\44\44"}.fa-stapler{--fa:"\e5af";--fa--fa:"\e5af\e5af"}.fa-masks-theater,.fa-theater-masks{--fa:"\f630";--fa--fa:"\f630\f630"}.fa-kip-sign{--fa:"\e1c4";--fa--fa:"\e1c4\e1c4"}.fa-hand-point-left{--fa:"\f0a5";--fa--fa:"\f0a5\f0a5"}.fa-handshake-alt,.fa-handshake-simple{--fa:"\f4c6";--fa--fa:"\f4c6\f4c6"}.fa-fighter-jet,.fa-jet-fighter{--fa:"\f0fb";--fa--fa:"\f0fb\f0fb"}.fa-share-alt-square,.fa-square-share-nodes{--fa:"\f1e1";--fa--fa:"\f1e1\f1e1"}.fa-barcode{--fa:"\f02a";--fa--fa:"\f02a\f02a"}.fa-plus-minus{--fa:"\e43c";--fa--fa:"\e43c\e43c"}.fa-video,.fa-video-camera{--fa:"\f03d";--fa--fa:"\f03d\f03d"}.fa-graduation-cap,.fa-mortar-board{--fa:"\f19d";--fa--fa:"\f19d\f19d"}.fa-hand-holding-medical{--fa:"\e05c";--fa--fa:"\e05c\e05c"}.fa-person-circle-check{--fa:"\e53e";--fa--fa:"\e53e\e53e"}.fa-level-up-alt,.fa-turn-up{--fa:"\f3bf";--fa--fa:"\f3bf\f3bf"} +.fa-sr-only,.fa-sr-only-focusable:not(:focus),.sr-only,.sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:host,:root{--fa-style-family-brands:"Font Awesome 6 Brands";--fa-font-brands:normal 400 1em/1 "Font Awesome 6 Brands"}@font-face{font-family:"Font Awesome 6 Brands";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}.fa-brands,.fab{font-weight:400}.fa-monero{--fa:"\f3d0"}.fa-hooli{--fa:"\f427"}.fa-yelp{--fa:"\f1e9"}.fa-cc-visa{--fa:"\f1f0"}.fa-lastfm{--fa:"\f202"}.fa-shopware{--fa:"\f5b5"}.fa-creative-commons-nc{--fa:"\f4e8"}.fa-aws{--fa:"\f375"}.fa-redhat{--fa:"\f7bc"}.fa-yoast{--fa:"\f2b1"}.fa-cloudflare{--fa:"\e07d"}.fa-ups{--fa:"\f7e0"}.fa-pixiv{--fa:"\e640"}.fa-wpexplorer{--fa:"\f2de"}.fa-dyalog{--fa:"\f399"}.fa-bity{--fa:"\f37a"}.fa-stackpath{--fa:"\f842"}.fa-buysellads{--fa:"\f20d"}.fa-first-order{--fa:"\f2b0"}.fa-modx{--fa:"\f285"}.fa-guilded{--fa:"\e07e"}.fa-vnv{--fa:"\f40b"}.fa-js-square,.fa-square-js{--fa:"\f3b9"}.fa-microsoft{--fa:"\f3ca"}.fa-qq{--fa:"\f1d6"}.fa-orcid{--fa:"\f8d2"}.fa-java{--fa:"\f4e4"}.fa-invision{--fa:"\f7b0"}.fa-creative-commons-pd-alt{--fa:"\f4ed"}.fa-centercode{--fa:"\f380"}.fa-glide-g{--fa:"\f2a6"}.fa-drupal{--fa:"\f1a9"}.fa-jxl{--fa:"\e67b"}.fa-dart-lang{--fa:"\e693"}.fa-hire-a-helper{--fa:"\f3b0"}.fa-creative-commons-by{--fa:"\f4e7"}.fa-unity{--fa:"\e049"}.fa-whmcs{--fa:"\f40d"}.fa-rocketchat{--fa:"\f3e8"}.fa-vk{--fa:"\f189"}.fa-untappd{--fa:"\f405"}.fa-mailchimp{--fa:"\f59e"}.fa-css3-alt{--fa:"\f38b"}.fa-reddit-square,.fa-square-reddit{--fa:"\f1a2"}.fa-vimeo-v{--fa:"\f27d"}.fa-contao{--fa:"\f26d"}.fa-square-font-awesome{--fa:"\e5ad"}.fa-deskpro{--fa:"\f38f"}.fa-brave{--fa:"\e63c"}.fa-sistrix{--fa:"\f3ee"}.fa-instagram-square,.fa-square-instagram{--fa:"\e055"}.fa-battle-net{--fa:"\f835"}.fa-the-red-yeti{--fa:"\f69d"}.fa-hacker-news-square,.fa-square-hacker-news{--fa:"\f3af"}.fa-edge{--fa:"\f282"}.fa-threads{--fa:"\e618"}.fa-napster{--fa:"\f3d2"}.fa-snapchat-square,.fa-square-snapchat{--fa:"\f2ad"}.fa-google-plus-g{--fa:"\f0d5"}.fa-artstation{--fa:"\f77a"}.fa-markdown{--fa:"\f60f"}.fa-sourcetree{--fa:"\f7d3"}.fa-google-plus{--fa:"\f2b3"}.fa-diaspora{--fa:"\f791"}.fa-foursquare{--fa:"\f180"}.fa-stack-overflow{--fa:"\f16c"}.fa-github-alt{--fa:"\f113"}.fa-phoenix-squadron{--fa:"\f511"}.fa-pagelines{--fa:"\f18c"}.fa-algolia{--fa:"\f36c"}.fa-red-river{--fa:"\f3e3"}.fa-creative-commons-sa{--fa:"\f4ef"}.fa-safari{--fa:"\f267"}.fa-google{--fa:"\f1a0"}.fa-font-awesome-alt,.fa-square-font-awesome-stroke{--fa:"\f35c"}.fa-atlassian{--fa:"\f77b"}.fa-linkedin-in{--fa:"\f0e1"}.fa-digital-ocean{--fa:"\f391"}.fa-nimblr{--fa:"\f5a8"}.fa-chromecast{--fa:"\f838"}.fa-evernote{--fa:"\f839"}.fa-hacker-news{--fa:"\f1d4"}.fa-creative-commons-sampling{--fa:"\f4f0"}.fa-adversal{--fa:"\f36a"}.fa-creative-commons{--fa:"\f25e"}.fa-watchman-monitoring{--fa:"\e087"}.fa-fonticons{--fa:"\f280"}.fa-weixin{--fa:"\f1d7"}.fa-shirtsinbulk{--fa:"\f214"}.fa-codepen{--fa:"\f1cb"}.fa-git-alt{--fa:"\f841"}.fa-lyft{--fa:"\f3c3"}.fa-rev{--fa:"\f5b2"}.fa-windows{--fa:"\f17a"}.fa-wizards-of-the-coast{--fa:"\f730"}.fa-square-viadeo,.fa-viadeo-square{--fa:"\f2aa"}.fa-meetup{--fa:"\f2e0"}.fa-centos{--fa:"\f789"}.fa-adn{--fa:"\f170"}.fa-cloudsmith{--fa:"\f384"}.fa-opensuse{--fa:"\e62b"}.fa-pied-piper-alt{--fa:"\f1a8"}.fa-dribbble-square,.fa-square-dribbble{--fa:"\f397"}.fa-codiepie{--fa:"\f284"}.fa-node{--fa:"\f419"}.fa-mix{--fa:"\f3cb"}.fa-steam{--fa:"\f1b6"}.fa-cc-apple-pay{--fa:"\f416"}.fa-scribd{--fa:"\f28a"}.fa-debian{--fa:"\e60b"}.fa-openid{--fa:"\f19b"}.fa-instalod{--fa:"\e081"}.fa-files-pinwheel{--fa:"\e69f"}.fa-expeditedssl{--fa:"\f23e"}.fa-sellcast{--fa:"\f2da"}.fa-square-twitter,.fa-twitter-square{--fa:"\f081"}.fa-r-project{--fa:"\f4f7"}.fa-delicious{--fa:"\f1a5"}.fa-freebsd{--fa:"\f3a4"}.fa-vuejs{--fa:"\f41f"}.fa-accusoft{--fa:"\f369"}.fa-ioxhost{--fa:"\f208"}.fa-fonticons-fi{--fa:"\f3a2"}.fa-app-store{--fa:"\f36f"}.fa-cc-mastercard{--fa:"\f1f1"}.fa-itunes-note{--fa:"\f3b5"}.fa-golang{--fa:"\e40f"}.fa-kickstarter,.fa-square-kickstarter{--fa:"\f3bb"}.fa-grav{--fa:"\f2d6"}.fa-weibo{--fa:"\f18a"}.fa-uncharted{--fa:"\e084"}.fa-firstdraft{--fa:"\f3a1"}.fa-square-youtube,.fa-youtube-square{--fa:"\f431"}.fa-wikipedia-w{--fa:"\f266"}.fa-rendact,.fa-wpressr{--fa:"\f3e4"}.fa-angellist{--fa:"\f209"}.fa-galactic-republic{--fa:"\f50c"}.fa-nfc-directional{--fa:"\e530"}.fa-skype{--fa:"\f17e"}.fa-joget{--fa:"\f3b7"}.fa-fedora{--fa:"\f798"}.fa-stripe-s{--fa:"\f42a"}.fa-meta{--fa:"\e49b"}.fa-laravel{--fa:"\f3bd"}.fa-hotjar{--fa:"\f3b1"}.fa-bluetooth-b{--fa:"\f294"}.fa-square-letterboxd{--fa:"\e62e"}.fa-sticker-mule{--fa:"\f3f7"}.fa-creative-commons-zero{--fa:"\f4f3"}.fa-hips{--fa:"\f452"}.fa-css{--fa:"\e6a2"}.fa-behance{--fa:"\f1b4"}.fa-reddit{--fa:"\f1a1"}.fa-discord{--fa:"\f392"}.fa-chrome{--fa:"\f268"}.fa-app-store-ios{--fa:"\f370"}.fa-cc-discover{--fa:"\f1f2"}.fa-wpbeginner{--fa:"\f297"}.fa-confluence{--fa:"\f78d"}.fa-shoelace{--fa:"\e60c"}.fa-mdb{--fa:"\f8ca"}.fa-dochub{--fa:"\f394"}.fa-accessible-icon{--fa:"\f368"}.fa-ebay{--fa:"\f4f4"}.fa-amazon{--fa:"\f270"}.fa-unsplash{--fa:"\e07c"}.fa-yarn{--fa:"\f7e3"}.fa-square-steam,.fa-steam-square{--fa:"\f1b7"}.fa-500px{--fa:"\f26e"}.fa-square-vimeo,.fa-vimeo-square{--fa:"\f194"}.fa-asymmetrik{--fa:"\f372"}.fa-font-awesome,.fa-font-awesome-flag,.fa-font-awesome-logo-full{--fa:"\f2b4"}.fa-gratipay{--fa:"\f184"}.fa-apple{--fa:"\f179"}.fa-hive{--fa:"\e07f"}.fa-gitkraken{--fa:"\f3a6"}.fa-keybase{--fa:"\f4f5"}.fa-apple-pay{--fa:"\f415"}.fa-padlet{--fa:"\e4a0"}.fa-amazon-pay{--fa:"\f42c"}.fa-github-square,.fa-square-github{--fa:"\f092"}.fa-stumbleupon{--fa:"\f1a4"}.fa-fedex{--fa:"\f797"}.fa-phoenix-framework{--fa:"\f3dc"}.fa-shopify{--fa:"\e057"}.fa-neos{--fa:"\f612"}.fa-square-threads{--fa:"\e619"}.fa-hackerrank{--fa:"\f5f7"}.fa-researchgate{--fa:"\f4f8"}.fa-swift{--fa:"\f8e1"}.fa-angular{--fa:"\f420"}.fa-speakap{--fa:"\f3f3"}.fa-angrycreative{--fa:"\f36e"}.fa-y-combinator{--fa:"\f23b"}.fa-empire{--fa:"\f1d1"}.fa-envira{--fa:"\f299"}.fa-google-scholar{--fa:"\e63b"}.fa-gitlab-square,.fa-square-gitlab{--fa:"\e5ae"}.fa-studiovinari{--fa:"\f3f8"}.fa-pied-piper{--fa:"\f2ae"}.fa-wordpress{--fa:"\f19a"}.fa-product-hunt{--fa:"\f288"}.fa-firefox{--fa:"\f269"}.fa-linode{--fa:"\f2b8"}.fa-goodreads{--fa:"\f3a8"}.fa-odnoklassniki-square,.fa-square-odnoklassniki{--fa:"\f264"}.fa-jsfiddle{--fa:"\f1cc"}.fa-sith{--fa:"\f512"}.fa-themeisle{--fa:"\f2b2"}.fa-page4{--fa:"\f3d7"}.fa-hashnode{--fa:"\e499"}.fa-react{--fa:"\f41b"}.fa-cc-paypal{--fa:"\f1f4"}.fa-squarespace{--fa:"\f5be"}.fa-cc-stripe{--fa:"\f1f5"}.fa-creative-commons-share{--fa:"\f4f2"}.fa-bitcoin{--fa:"\f379"}.fa-keycdn{--fa:"\f3ba"}.fa-opera{--fa:"\f26a"}.fa-itch-io{--fa:"\f83a"}.fa-umbraco{--fa:"\f8e8"}.fa-galactic-senate{--fa:"\f50d"}.fa-ubuntu{--fa:"\f7df"}.fa-draft2digital{--fa:"\f396"}.fa-stripe{--fa:"\f429"}.fa-houzz{--fa:"\f27c"}.fa-gg{--fa:"\f260"}.fa-dhl{--fa:"\f790"}.fa-pinterest-square,.fa-square-pinterest{--fa:"\f0d3"}.fa-xing{--fa:"\f168"}.fa-blackberry{--fa:"\f37b"}.fa-creative-commons-pd{--fa:"\f4ec"}.fa-playstation{--fa:"\f3df"}.fa-quinscape{--fa:"\f459"}.fa-less{--fa:"\f41d"}.fa-blogger-b{--fa:"\f37d"}.fa-opencart{--fa:"\f23d"}.fa-vine{--fa:"\f1ca"}.fa-signal-messenger{--fa:"\e663"}.fa-paypal{--fa:"\f1ed"}.fa-gitlab{--fa:"\f296"}.fa-typo3{--fa:"\f42b"}.fa-reddit-alien{--fa:"\f281"}.fa-yahoo{--fa:"\f19e"}.fa-dailymotion{--fa:"\e052"}.fa-affiliatetheme{--fa:"\f36b"}.fa-pied-piper-pp{--fa:"\f1a7"}.fa-bootstrap{--fa:"\f836"}.fa-odnoklassniki{--fa:"\f263"}.fa-nfc-symbol{--fa:"\e531"}.fa-mintbit{--fa:"\e62f"}.fa-ethereum{--fa:"\f42e"}.fa-speaker-deck{--fa:"\f83c"}.fa-creative-commons-nc-eu{--fa:"\f4e9"}.fa-patreon{--fa:"\f3d9"}.fa-avianex{--fa:"\f374"}.fa-ello{--fa:"\f5f1"}.fa-gofore{--fa:"\f3a7"}.fa-bimobject{--fa:"\f378"}.fa-brave-reverse{--fa:"\e63d"}.fa-facebook-f{--fa:"\f39e"}.fa-google-plus-square,.fa-square-google-plus{--fa:"\f0d4"}.fa-web-awesome{--fa:"\e682"}.fa-mandalorian{--fa:"\f50f"}.fa-first-order-alt{--fa:"\f50a"}.fa-osi{--fa:"\f41a"}.fa-google-wallet{--fa:"\f1ee"}.fa-d-and-d-beyond{--fa:"\f6ca"}.fa-periscope{--fa:"\f3da"}.fa-fulcrum{--fa:"\f50b"}.fa-cloudscale{--fa:"\f383"}.fa-forumbee{--fa:"\f211"}.fa-mizuni{--fa:"\f3cc"}.fa-schlix{--fa:"\f3ea"}.fa-square-xing,.fa-xing-square{--fa:"\f169"}.fa-bandcamp{--fa:"\f2d5"}.fa-wpforms{--fa:"\f298"}.fa-cloudversify{--fa:"\f385"}.fa-usps{--fa:"\f7e1"}.fa-megaport{--fa:"\f5a3"}.fa-magento{--fa:"\f3c4"}.fa-spotify{--fa:"\f1bc"}.fa-optin-monster{--fa:"\f23c"}.fa-fly{--fa:"\f417"}.fa-square-bluesky{--fa:"\e6a3"}.fa-aviato{--fa:"\f421"}.fa-itunes{--fa:"\f3b4"}.fa-cuttlefish{--fa:"\f38c"}.fa-blogger{--fa:"\f37c"}.fa-flickr{--fa:"\f16e"}.fa-viber{--fa:"\f409"}.fa-soundcloud{--fa:"\f1be"}.fa-digg{--fa:"\f1a6"}.fa-tencent-weibo{--fa:"\f1d5"}.fa-letterboxd{--fa:"\e62d"}.fa-symfony{--fa:"\f83d"}.fa-maxcdn{--fa:"\f136"}.fa-etsy{--fa:"\f2d7"}.fa-facebook-messenger{--fa:"\f39f"}.fa-audible{--fa:"\f373"}.fa-think-peaks{--fa:"\f731"}.fa-bilibili{--fa:"\e3d9"}.fa-erlang{--fa:"\f39d"}.fa-x-twitter{--fa:"\e61b"}.fa-cotton-bureau{--fa:"\f89e"}.fa-dashcube{--fa:"\f210"}.fa-42-group,.fa-innosoft{--fa:"\e080"}.fa-stack-exchange{--fa:"\f18d"}.fa-elementor{--fa:"\f430"}.fa-pied-piper-square,.fa-square-pied-piper{--fa:"\e01e"}.fa-creative-commons-nd{--fa:"\f4eb"}.fa-palfed{--fa:"\f3d8"}.fa-superpowers{--fa:"\f2dd"}.fa-resolving{--fa:"\f3e7"}.fa-xbox{--fa:"\f412"}.fa-square-web-awesome-stroke{--fa:"\e684"}.fa-searchengin{--fa:"\f3eb"}.fa-tiktok{--fa:"\e07b"}.fa-facebook-square,.fa-square-facebook{--fa:"\f082"}.fa-renren{--fa:"\f18b"}.fa-linux{--fa:"\f17c"}.fa-glide{--fa:"\f2a5"}.fa-linkedin{--fa:"\f08c"}.fa-hubspot{--fa:"\f3b2"}.fa-deploydog{--fa:"\f38e"}.fa-twitch{--fa:"\f1e8"}.fa-flutter{--fa:"\e694"}.fa-ravelry{--fa:"\f2d9"}.fa-mixer{--fa:"\e056"}.fa-lastfm-square,.fa-square-lastfm{--fa:"\f203"}.fa-vimeo{--fa:"\f40a"}.fa-mendeley{--fa:"\f7b3"}.fa-uniregistry{--fa:"\f404"}.fa-figma{--fa:"\f799"}.fa-creative-commons-remix{--fa:"\f4ee"}.fa-cc-amazon-pay{--fa:"\f42d"}.fa-dropbox{--fa:"\f16b"}.fa-instagram{--fa:"\f16d"}.fa-cmplid{--fa:"\e360"}.fa-upwork{--fa:"\e641"}.fa-facebook{--fa:"\f09a"}.fa-gripfire{--fa:"\f3ac"}.fa-jedi-order{--fa:"\f50e"}.fa-uikit{--fa:"\f403"}.fa-fort-awesome-alt{--fa:"\f3a3"}.fa-phabricator{--fa:"\f3db"}.fa-ussunnah{--fa:"\f407"}.fa-earlybirds{--fa:"\f39a"}.fa-trade-federation{--fa:"\f513"}.fa-autoprefixer{--fa:"\f41c"}.fa-whatsapp{--fa:"\f232"}.fa-square-upwork{--fa:"\e67c"}.fa-slideshare{--fa:"\f1e7"}.fa-google-play{--fa:"\f3ab"}.fa-viadeo{--fa:"\f2a9"}.fa-line{--fa:"\f3c0"}.fa-google-drive{--fa:"\f3aa"}.fa-servicestack{--fa:"\f3ec"}.fa-simplybuilt{--fa:"\f215"}.fa-bitbucket{--fa:"\f171"}.fa-imdb{--fa:"\f2d8"}.fa-deezer{--fa:"\e077"}.fa-raspberry-pi{--fa:"\f7bb"}.fa-jira{--fa:"\f7b1"}.fa-docker{--fa:"\f395"}.fa-screenpal{--fa:"\e570"}.fa-bluetooth{--fa:"\f293"}.fa-gitter{--fa:"\f426"}.fa-d-and-d{--fa:"\f38d"}.fa-microblog{--fa:"\e01a"}.fa-cc-diners-club{--fa:"\f24c"}.fa-gg-circle{--fa:"\f261"}.fa-pied-piper-hat{--fa:"\f4e5"}.fa-kickstarter-k{--fa:"\f3bc"}.fa-yandex{--fa:"\f413"}.fa-readme{--fa:"\f4d5"}.fa-html5{--fa:"\f13b"}.fa-sellsy{--fa:"\f213"}.fa-square-web-awesome{--fa:"\e683"}.fa-sass{--fa:"\f41e"}.fa-wirsindhandwerk,.fa-wsh{--fa:"\e2d0"}.fa-buromobelexperte{--fa:"\f37f"}.fa-salesforce{--fa:"\f83b"}.fa-octopus-deploy{--fa:"\e082"}.fa-medapps{--fa:"\f3c6"}.fa-ns8{--fa:"\f3d5"}.fa-pinterest-p{--fa:"\f231"}.fa-apper{--fa:"\f371"}.fa-fort-awesome{--fa:"\f286"}.fa-waze{--fa:"\f83f"}.fa-bluesky{--fa:"\e671"}.fa-cc-jcb{--fa:"\f24b"}.fa-snapchat,.fa-snapchat-ghost{--fa:"\f2ab"}.fa-fantasy-flight-games{--fa:"\f6dc"}.fa-rust{--fa:"\e07a"}.fa-wix{--fa:"\f5cf"}.fa-behance-square,.fa-square-behance{--fa:"\f1b5"}.fa-supple{--fa:"\f3f9"}.fa-webflow{--fa:"\e65c"}.fa-rebel{--fa:"\f1d0"}.fa-css3{--fa:"\f13c"}.fa-staylinked{--fa:"\f3f5"}.fa-kaggle{--fa:"\f5fa"}.fa-space-awesome{--fa:"\e5ac"}.fa-deviantart{--fa:"\f1bd"}.fa-cpanel{--fa:"\f388"}.fa-goodreads-g{--fa:"\f3a9"}.fa-git-square,.fa-square-git{--fa:"\f1d2"}.fa-square-tumblr,.fa-tumblr-square{--fa:"\f174"}.fa-trello{--fa:"\f181"}.fa-creative-commons-nc-jp{--fa:"\f4ea"}.fa-get-pocket{--fa:"\f265"}.fa-perbyte{--fa:"\e083"}.fa-grunt{--fa:"\f3ad"}.fa-weebly{--fa:"\f5cc"}.fa-connectdevelop{--fa:"\f20e"}.fa-leanpub{--fa:"\f212"}.fa-black-tie{--fa:"\f27e"}.fa-themeco{--fa:"\f5c6"}.fa-python{--fa:"\f3e2"}.fa-android{--fa:"\f17b"}.fa-bots{--fa:"\e340"}.fa-free-code-camp{--fa:"\f2c5"}.fa-hornbill{--fa:"\f592"}.fa-js{--fa:"\f3b8"}.fa-ideal{--fa:"\e013"}.fa-git{--fa:"\f1d3"}.fa-dev{--fa:"\f6cc"}.fa-sketch{--fa:"\f7c6"}.fa-yandex-international{--fa:"\f414"}.fa-cc-amex{--fa:"\f1f3"}.fa-uber{--fa:"\f402"}.fa-github{--fa:"\f09b"}.fa-php{--fa:"\f457"}.fa-alipay{--fa:"\f642"}.fa-youtube{--fa:"\f167"}.fa-skyatlas{--fa:"\f216"}.fa-firefox-browser{--fa:"\e007"}.fa-replyd{--fa:"\f3e6"}.fa-suse{--fa:"\f7d6"}.fa-jenkins{--fa:"\f3b6"}.fa-twitter{--fa:"\f099"}.fa-rockrms{--fa:"\f3e9"}.fa-pinterest{--fa:"\f0d2"}.fa-buffer{--fa:"\f837"}.fa-npm{--fa:"\f3d4"}.fa-yammer{--fa:"\f840"}.fa-btc{--fa:"\f15a"}.fa-dribbble{--fa:"\f17d"}.fa-stumbleupon-circle{--fa:"\f1a3"}.fa-internet-explorer{--fa:"\f26b"}.fa-stubber{--fa:"\e5c7"}.fa-telegram,.fa-telegram-plane{--fa:"\f2c6"}.fa-old-republic{--fa:"\f510"}.fa-odysee{--fa:"\e5c6"}.fa-square-whatsapp,.fa-whatsapp-square{--fa:"\f40c"}.fa-node-js{--fa:"\f3d3"}.fa-edge-legacy{--fa:"\e078"}.fa-slack,.fa-slack-hash{--fa:"\f198"}.fa-medrt{--fa:"\f3c8"}.fa-usb{--fa:"\f287"}.fa-tumblr{--fa:"\f173"}.fa-vaadin{--fa:"\f408"}.fa-quora{--fa:"\f2c4"}.fa-square-x-twitter{--fa:"\e61a"}.fa-reacteurope{--fa:"\f75d"}.fa-medium,.fa-medium-m{--fa:"\f23a"}.fa-amilia{--fa:"\f36d"}.fa-mixcloud{--fa:"\f289"}.fa-flipboard{--fa:"\f44d"}.fa-viacoin{--fa:"\f237"}.fa-critical-role{--fa:"\f6c9"}.fa-sitrox{--fa:"\e44a"}.fa-discourse{--fa:"\f393"}.fa-joomla{--fa:"\f1aa"}.fa-mastodon{--fa:"\f4f6"}.fa-airbnb{--fa:"\f834"}.fa-wolf-pack-battalion{--fa:"\f514"}.fa-buy-n-large{--fa:"\f8a6"}.fa-gulp{--fa:"\f3ae"}.fa-creative-commons-sampling-plus{--fa:"\f4f1"}.fa-strava{--fa:"\f428"}.fa-ember{--fa:"\f423"}.fa-canadian-maple-leaf{--fa:"\f785"}.fa-teamspeak{--fa:"\f4f9"}.fa-pushed{--fa:"\f3e1"}.fa-wordpress-simple{--fa:"\f411"}.fa-nutritionix{--fa:"\f3d6"}.fa-wodu{--fa:"\e088"}.fa-google-pay{--fa:"\e079"}.fa-intercom{--fa:"\f7af"}.fa-zhihu{--fa:"\f63f"}.fa-korvue{--fa:"\f42f"}.fa-pix{--fa:"\e43a"}.fa-steam-symbol{--fa:"\f3f6"}:host,:root{--fa-font-regular:normal 400 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:400;font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}.fa-regular,.far{font-weight:400}:host,:root{--fa-style-family-classic:"Font Awesome 6 Free";--fa-font-solid:normal 900 1em/1 "Font Awesome 6 Free"}@font-face{font-family:"Font Awesome 6 Free";font-style:normal;font-weight:900;font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}.fa-solid,.fas{font-weight:900}@font-face{font-family:"Font Awesome 5 Brands";font-display:block;font-weight:400;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:900;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"Font Awesome 5 Free";font-display:block;font-weight:400;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../webfonts/fa-regular-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-solid-900.woff2) format("woff2"),url(../webfonts/fa-solid-900.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-brands-400.woff2) format("woff2"),url(../webfonts/fa-brands-400.ttf) format("truetype")}@font-face{font-family:"FontAwesome";font-display:block;src:url(../webfonts/fa-regular-400.woff2) format("woff2"),url(../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(../webfonts/fa-v4compatibility.woff2) format("woff2"),url(../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} \ No newline at end of file diff --git a/bin/unit_tests/assets/html/block_size_inf_files/main.css b/bin/unit_tests/assets/html/block_size_inf_files/main.css new file mode 100644 index 000000000..2afde3106 --- /dev/null +++ b/bin/unit_tests/assets/html/block_size_inf_files/main.css @@ -0,0 +1,1483 @@ +/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */ + +/* Reset box-model and set borders */ +/* ============================================ */ + +*, +::before, +::after { + box-sizing: border-box; + border-style: solid; + border-width: 0; +} + +/* Document */ +/* ============================================ */ + +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + * 3. Remove gray overlay on links for iOS. + */ + +html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ + -webkit-tap-highlight-color: transparent; /* 3*/ +} + +/* Sections */ +/* ============================================ */ + +/** + * Remove the margin in all browsers. + */ + +body { + margin: 0; +} + +/** + * Render the `main` element consistently in IE. + */ + +main { + display: block; +} + +/* Vertical rhythm */ +/* ============================================ */ + +p, +table, +blockquote, +address, +pre, +iframe, +form, +figure, +dl { + margin: 0; +} + +/* Headings */ +/* ============================================ */ + +h1, +h2, +h3, +h4, +h5, +h6 { + font-size: inherit; + line-height: inherit; + font-weight: inherit; + margin: 0; +} + +/* Lists (enumeration) */ +/* ============================================ */ + +ul, +ol { + margin: 0; + padding: 0; + list-style: none; +} + +/* Lists (definition) */ +/* ============================================ */ + +dt { + font-weight: bold; +} + +dd { + margin-left: 0; +} + +/* Grouping content */ +/* ============================================ */ + +/** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + +hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ + border-top-width: 1px; + margin: 0; + clear: both; + color: inherit; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +pre { + font-family: monospace, monospace; /* 1 */ + font-size: inherit; /* 2 */ +} + +address { + font-style: inherit; +} + +/* Text-level semantics */ +/* ============================================ */ + +/** + * Remove the gray background on active links in IE 10. + */ + +a { + background-color: transparent; + text-decoration: none; + color: inherit; +} + +/** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + +abbr[title] { + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ +} + +/** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + +b, +strong { + font-weight: bolder; +} + +/** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + +code, +kbd, +samp { + font-family: monospace, monospace; /* 1 */ + font-size: inherit; /* 2 */ +} + +/** + * Add the correct font size in all browsers. + */ + +small { + font-size: 80%; +} + +/** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + +sub, +sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; +} + +sub { + bottom: -0.25em; +} + +sup { + top: -0.5em; +} + +/* Embedded content */ +/* ============================================ */ + +/** + * Prevent vertical alignment issues. + */ + +img, +embed, +object, +iframe { + vertical-align: bottom; +} + +/* Forms */ +/* ============================================ */ + +/** + * Reset form fields to make them styleable + */ + +button, +input, +optgroup, +select, +textarea { + -webkit-appearance: none; + appearance: none; + vertical-align: middle; + color: inherit; + font: inherit; + background: transparent; + padding: 0; + margin: 0; + outline: 0; + border-radius: 0; + text-align: inherit; +} + +/** + * Reset radio and checkbox appearance to preserve their look in iOS. + */ + +[type="checkbox"] { + -webkit-appearance: checkbox; + appearance: checkbox; +} + +[type="radio"] { + -webkit-appearance: radio; + appearance: radio; +} + +/** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + +button, +input { + /* 1 */ + overflow: visible; +} + +/** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + +button, +select { + /* 1 */ + text-transform: none; +} + +/** + * Correct the inability to style clickable types in iOS and Safari. + */ + +button, +[type="button"], +[type="reset"], +[type="submit"] { + cursor: pointer; + -webkit-appearance: none; + appearance: none; +} + +button[disabled], +[type="button"][disabled], +[type="reset"][disabled], +[type="submit"][disabled] { + cursor: default; +} + +/** + * Remove the inner border and padding in Firefox. + */ + +button::-moz-focus-inner, +[type="button"]::-moz-focus-inner, +[type="reset"]::-moz-focus-inner, +[type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; +} + +/** + * Restore the focus styles unset by the previous rule. + */ + +button:-moz-focusring, +[type="button"]:-moz-focusring, +[type="reset"]:-moz-focusring, +[type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; +} + +/** + * Remove arrow in IE10 & IE11 + */ + +select::-ms-expand { + display: none; +} + +/** + * Remove padding + */ + +option { + padding: 0; +} + +/** + * Reset to invisible + */ + +fieldset { + margin: 0; + padding: 0; + min-width: 0; +} + +/** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + +legend { + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ +} + +/** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + +progress { + vertical-align: baseline; +} + +/** + * Remove the default vertical scrollbar in IE 10+. + */ + +textarea { + overflow: auto; +} + +/** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + +[type="number"]::-webkit-inner-spin-button, +[type="number"]::-webkit-outer-spin-button { + height: auto; +} + +/** + * 1. Correct the outline style in Safari. + */ + +[type="search"] { + outline-offset: -2px; /* 1 */ +} + +/** + * Remove the inner padding in Chrome and Safari on macOS. + */ + +[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} + +/** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + +::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ +} + +/** + * Clickable labels + */ + +label[for] { + cursor: pointer; +} + +/* Interactive */ +/* ============================================ */ + +/* + * Add the correct display in Edge, IE 10+, and Firefox. + */ + +details { + display: block; +} + +/* + * Add the correct display in all browsers. + */ + +summary { + display: list-item; +} + +/* + * Remove outline for editable content. + */ + +[contenteditable] { + outline: none; +} + +/* Table */ +/* ============================================ */ + +table { + border-collapse: collapse; + border-spacing: 0; +} + +caption { + text-align: left; +} + +td, +th { + vertical-align: top; + padding: 0; +} + +th { + text-align: left; + font-weight: bold; +} + +/* Misc */ +/* ============================================ */ + +/** + * Add the correct display in IE 10+. + */ + +template { + display: none; +} + +/** + * Add the correct display in IE 10. + */ + +[hidden] { + display: none; +} +/* CSS Reset End */ + +body { + font-family: 'Noto Sans JP', sans-serif; +} + +h1 { + font-size: 200%; +} + +h2 { + font-size: 150%; +} + +p, i { + font-family: 'Noto Sans JP', sans-serif; + font-weight: 300; + line-height: 1.4em; +} + +b, strong { + font-weight: 500; +} + +.white-text { + color: white; +} + +a { + transition: opacity 0.5s; +} + +a:hover { + opacity: 0.5; + transition: opacity 0.5s; +} + +/* The above rule makes sense for linked text but not for linked images. + * + * We shouldn't change the opacity of an image, since that would distort its content. + */ +.post a:hover:has(> img) { + opacity: 1.0; +} + +a.stealth:hover { + opacity: 1.0; + cursor: default; +} + +body { + display: flex; + flex-direction: column; + min-height: 100vh; + color: #2C2C2C; +} + +body.landing h1 { + font-size: 200%; + margin-bottom: 5px; + font-weight: 700; +} + +body.landing h2 { + font-family: 'Noto Serif JP', serif; + font-size: 125%; + margin-bottom: 4px; +} + +body.landing section p { + font-size: 120%; +} + +.header-logo { + text-align: center; +} + +.header-logo img.logo { + height: 130px; + display: inline-block; + margin: 11px auto 0px auto; +} + +div.header-menu { + width: 55%; + margin: 0px auto; +} + +.menu-container { + display: flex; + justify-content: center; + margin-top: 15px; + padding: 20px 0px; + border-top: solid 1px #2C2C2C; +} + +.menu-container li { + font-family: 'Montserrat', sans-serif; + font-weight: normal; + margin: 0px 20px; +} + +header { + border-bottom: solid 1px #B8E1FF; +} + +#eye-catch { + background-color: #EFEFEF; +} + +#eye-catch > div { + display: flex; + align-items: center; + padding: 10vh 0px; + margin: 0px auto; + width: 90%; + max-width: 62em; +} + +#eye-catch > div > div { + flex-basis: 50%; + display: block; +} + +#eye-catch > div > div:nth-of-type(1) { + padding-right: 60px; + animation-name: fadein; + animation-duration: 2.5s; +} +@keyframes fadein { +from { + opacity: 0; +} +to { + opacity: 1; +} +} + +#eye-catch > div > div:nth-of-type(2) { + padding: 50px 0px 50px 60px; + border-left: solid 1px #6D6D6D; +} + +#eye-catch > div > div > img { + position: relative; + width: 100%; +} +#eye-catch h2 { + margin-top: 3em; + text-align: center; + font-family: inherit; +} + +#eye-catch pre { + text-align: center; + background: none; + font-size: 130%; + margin: 0.3em 0.3em; + padding: 0 1em; + color: inherit; +} + +#eye-catch code { + display: inline-block; + width: auto; + background-color: #43825c; + color: #fff; + margin: 0.5em 0.2em; + padding: 0.5em 1em; +} + +#eye-catch pre a { + display: inline-block; + width: 1em; +} + +#copy-button { + color: #43825c; + cursor: pointer; +} + +.more { + font-size: 135%; + position: relative; + font-family: 'Noto Sans JP', sans-serif; + color: #79D5FF; +} + +.more i { + position: relative; + top: 3px; + left: 10px; +} + +h3 .more i { + position: relative; + top: 1px; + left: 7px; +} + +#eye-catch .more { + color: #A61200; +} + +#eye-catch h3 { + text-align: center; +} +#eye-catch h3 .more { + font-size: 100%; +} + +.big-icon { + font-size: 350%; +} + +body.landing #community { + background-color: #9D2D48; +} + +div.center-title { + margin: 50px auto; +} + +div.center-title h1, div.center-title h2 { + text-align: center; +} + +.community-links { + background-color: #7A162E; +} + +.community-links div { + display: flex; + align-content: center; + margin: 0px auto; + width: 90%; + max-width: 62em; +} + +div.community-card { + flex: 1; + display: flex; + align-items: stretch; + padding: 40px 0px; +} + +div.community-card div.community-icons { + display: flex; + flex-direction: column; + flex: 1; + min-width: 80px; + justify-content: center; +} + +div.community-card div.community-icons i { + margin: 8px 0; +} + +div.community-card div.community-text { + flex: 9; + border-left: solid 1px #FFF; + font-family: 'Noto Sans JP', sans-serif; + display: flex; + padding: 30px; + flex-direction: column; + justify-content: center; +} + +div.community-card div.community-text p { + flex: 1; + flex-grow: 0; +} + +div.community-button { + flex: 1; + display: flex; + flex-direction: column; + align-items: end; + justify-content: center; +} + +div.community-button a { + flex: 1; + text-align: center; + font-family: 'Varela Round', sans-serif; + font-weight: normal; + padding: 15px; + min-width: 320px; + border-radius: 100px; + flex-grow: 0; + margin: 10px 0; +} + +div.discourse-button a { + background-color: #CC4545; +} + +div.twitter-buttons a.twitter-button { + background-color: #00B9FF; +} + +div.twitter-buttons a.mastodon-button { + background-color: #2887CE; +} + +div.mastodon-button a { + background-color: #2887CE; +} + +div.chat-button a { + background-color: #008E58; +} + +.community-card i.fa-twitter { + color: #00B9FF; +} + +.community-card i.fa-mastodon { + color: #2887CE; +} + +.community-more { + display: flex; + justify-content: center; +} + +/* Download */ +body.landing #download { + background-color: #4ecbaa; +} + +.download-card { + background-color: #057f5f; +} + +/* Contribute */ +body.landing #contribute { + background-color: #FFF; +} + +.contribute-card { + background-color: #848484; +} + +/* Documentation */ + +body.landing #documentation { + background-color: #D7EAFF; +} + +.documentation-card { + background-color: #556E8A; +} + +/* Centered cards */ + +.center-card { + display: flex; + flex-direction: column; + align-content: center; + align-items: center; + margin: 0px auto; + padding: 30px 0px 70px 0px; + font-family: 'Noto Sans JP', sans-serif; +} + +.center-card { + color: #FFF; +} + +.center-card > * { + margin-top: 40px; +} + +.center-card p { + width: 90%; + max-width: 62em; + text-align: center; +} + +.center-card .more { + color: #79D5FF; +} + +/* Single post */ + +#post-section { + background-color: #EFEFEF; + min-height: 70vh; +} + +.post { + width: 100%; +} + +.post-wrapper { + display: flex; + flex-direction: column; + align-items: center; + margin: 70px auto; + width: 90%; + max-width: 62em; +} + +.post-wrapper li { + font-weight: 300; + margin-left: 2em; + line-height: 1.4em; +} + +.post-wrapper ul li { + list-style: disc; +} + +.post-wrapper ol li { + list-style: decimal; +} + +.post h1:nth-child(1), .post h2:nth-child(1), .post h3:nth-child(1), blockquote p:nth-child(1) { + margin-top: 0px; +} + +.post h1, .post h2 { + margin-bottom: 20px; + padding-bottom: 10px; + border-bottom: 1px solid #999999; + margin-top: 30px; +} + +.post h1 { + margin-top: 45px; +} + +.post h2 { + margin-bottom: 15px; +} + +.post p, .code-box, .post ul, blockquote { + margin-bottom: 15px; + margin-top: 15px; + letter-spacing: 0.02em +} + +.post ul li { + margin-bottom: 10px; + margin-top: 10px; +} + +.post a { + color: #E20052; + text-decoration: underline; +} + +code { + color: #0D4F1A; + padding: 0 .4em; + font-weight: normal; + font-size: 85%; + background-color: rgba(6, 102, 238, 0.05); + border-radius: 6px; +} + +pre code { + padding: 0; +} + +pre { + margin: 1em 0; + padding: 1em; + border-radius: 6px; + background: #25292f; + background-color: rgba(6, 102, 238, 0.05); + color: #fff; + overflow-x: auto; +} + +pre code { + background: none; +} + +div.curlsh { + text-align: center; +} +div.curlsh pre { + color: #d3506f; + margin: 0 auto; + display: inline-block; + font-size: 120%; + font-weight: bold; +} + +blockquote { + border: solid 1px; + background-color: #e2e2e2; + padding: 15px; + padding-bottom: 5px; +} + +p img, figure img { + padding-top: 10px; + max-width: 100%; + height: auto; + margin-top: 15px; + margin-bottom: 10px; +} + +.center { + display: block; + margin-left: auto; + margin-right: auto; +} + +.twitter-tweet { + margin: 0 auto; +} + +.post figure figcaption p { + margin: 0; + text-align: center; + font-weight: 300; + font-size: 80%; +} + +.post figure { + margin-top: 20px; + margin-bottom: 20px; +} + +.post aside { + border: solid 1px; + background-color: #e2e2e2; + padding: 15px; + margin: 20px; + font-size: 90%; +} +.post aside p { + margin: 0; +} + +/* Blog */ + +.blog-header { + border-bottom: 1px solid #999999; + text-align: center; +} + +ul.blog-nav { + display: flex; + justify-content: space-between; +} + +ul.blog-nav li { + list-style: none; + margin: 0px; + padding: 5px 15px; + background-color: #dedede; +} + +ul.blog-nav li.nav-spacer { + background: none; +} + +ul.blog-nav > li > a > .fa-arrow-left { + margin-right: 10px; +} + +ul.blog-nav > li > a > .fa-arrow-right { + margin-left: 10px; +} + +.blog-header h1.entry-title { + border: none; + margin: 25px 0px; + padding: 0px; + font-size: 200%; +} + +div#breadcrumbs, div.post-bottom { + padding: 10px; + background-color: #dedede; +} + +div#breadcrumbs a { + text-decoration: none; +} + +div.post-bottom { + margin-top: 42px; + text-align: right; +} + +.publishdate { + margin-right: 15px; +} + +/* Post list */ +.post-list ul li { + background-color: #e0e0e0; + list-style: none; + margin-left: 0px; + padding: 15px; + border-radius: 10px; +} + +.post-list summary { + margin: 5px 0px; + font-size: 95%; +} + +.post-title, .meta { + font-weight: 400; + font-size: 110%; +} + +/* Fedora announcement */ + +section.topic p { + max-width: 962px; + margin: 1em auto; + padding-left: 20px; + padding-right: 20px; + line-height: 1.6; + letter-spacing: 0.045em; +} + +section.topic h2 { + font-family: inherit; + background-color: #dbeefb; + padding: 0.9em 0; + margin-top: 1.5em; + margin-bottom: 1.5em; +} + +section.topic h2 div { + font-size: 120%; + letter-spacing: 0.07em; + max-width: 962px; + padding: 0 20px; + margin-left: auto; + margin-right: auto; +} + +section.topic:nth-child(3) h2 { + margin-top: 0; +} + +section.topic p { + text-align: justify; +} + +section.topic p a { + text-decoration: underline; +} + +section.topic p img { + float: right; + margin-left: 1em; +} + +section#device-support { + padding-bottom: 3em; +} + +section#device-support div.center-title { + background-color: #ececec; + padding: 1em 0; + margin: 1.5em 0 0 0; +} + +div.devices { + display: flex; + justify-content: center; + flex-wrap: wrap; + margin: auto; +} + +div.devices a.device { + display: block; + text-align: center; + width: 130px; + height: 140px; + background-color: rgba(255,255,255,0.5); + padding: 5px; + border-radius: 1px; + margin: 0 5px; + color: inherit; + text-decoration: inherit; +} + +div.devices a.device.comingsoon { + background-color: rgba(255,255,255,0.2); + position: relative; +} +div.devices a.device:hover { + opacity: 0.7; +} + +div.devices a.device.comingsoon:hover { + opacity: 1.0; +} +div.devices a.device.comingsoon * { + opacity: 50%; +} + +div.devices a.device.comingsoon:before { + content: "Coming soon"; + position: absolute; + color: #fff; + background-color: rgba(0,0,0,0.5); + border-radius: 5px; + width: 130px; + height: 30px; + left: 0; + top: 55px; + padding: 5px; +} + +div.devices a.device.dev-selected { + background-color: #dfedfd; +} + +div.devices a.device img { + width: 100px; + height: 100px; +} + +div.devices a.device p { + margin: 0; +} + +div.device-infos { +} + +div.device-info { + max-height: 0px; + transition: max-height 0.5s; + overflow: hidden; + background-color: #556E8A; +} + +div.device-info > div { + max-width: 962px; + display: block; + color: white; + padding: 20px; + overflow: hidden; + margin: 0 auto; +} + +div.device-info.dev-selected { + max-height: 140vh; + transition: max-height 0.5s; +} + +div.device-info h3 { + text-align: center; + font-size: 150%; +} + +div.device-info div.features { + text-align: center; +} + +div.device-info div.features div { + display: inline-block; + background-color: #caffc3; + border-radius: 2px; + padding: 5px 15px; + margin: 10px; + text-align: center; + color: #111; +} + +div.device-info div.features div.unsup { + background-color: #ffc3c3; +} + +div.device-info div.features div p { + font-size: 80%; +} + +div.device-info > div > p { + text-align: center; + font-size: 85%; +} + +/* Footer */ + +footer { + margin-top: auto; +} + +.footer-menu { + display: flex; + justify-content: space-between; + width: 90%; + max-width: 62em; + margin: 40px auto; +} + +.footer-logo { + justify-content: flex-start; +} + +.footer-logo img.logo { + height: 75px; + margin-bottom: 10px; +} + +.footer-links { + display: flex; + flex-direction: column; + flex-shrink: 0; +} + +.footer-services { + display: flex; + justify-content: flex-end; +} + +ul.footer-services i { + color: #676767; + font-size: 150%; + margin-left: 15px; +} + +.footer-menu-container { + display: flex; + margin-top: auto; +} + +.footer-menu-container li { + font-family: 'Noto Sans', sans-serif; + font-size: 80%; + margin-left: 20px; +} + +.license, .disclaimer { + display: block; + font-size: 60%; + opacity: 0.8; +} + +.disclaimer a { + text-decoration: underline; +} + +/* Kawaii mode */ +html.kawaii img.logo { + content: url("/img/AsahiLinux_kawaii_logo.png"); +} + +html.kawaii img.laptop { + content: url("/img/asahilinux_kawaii_laptop.svg"); +} + +.kawaii-disclaimer { + display: none; +} + +html.kawaii .kawaii-disclaimer { + display: inline; +} + +@media screen and (max-width: 1050px) { + .community-links > div { + display: block; + } + + div.chat-button { + padding-bottom: 40px; + } + + div.community-button { + align-items: center; + } + + div.community-more { + display: flex; + } +} +@media screen and (max-width: 750px) { + .header-logo img.logo { + height: 90px; + } + + .menu-container { + flex-wrap: wrap; + } + + .menu-container li { + margin: 0px 15px; + line-height: 2em; + } + + div.header-menu { + width: 90%; + } + + .community-links > div { + width: 85%; + } + + div.community-more { + padding-bottom: 40px; + } + + .center-card p { + width: 85%; + } + + .post-wrapper { + width: 85%; + margin: 30px auto; + } + + .footer-menu { + width: 85%; + } + + #eye-catch > div > div:nth-of-type(1) { + padding-right: 0px; + } + + #eye-catch > div { + display: block; + padding: 50px 0px; + } + + #eye-catch > div > div:nth-of-type(2) { + padding: 50px 0px 50px 0px; + border-left: none; + } + + div.community-card div.community-text { + padding: 30px 0px 30px 30px; + } + + div.community-button { + flex-direction: column; + } + + div.community-button a { + width: 60%; + min-width: 200px; + } + + .footer-menu { + flex-direction: column; + margin: 20px auto; + } + + .footer-services { + justify-content: center; + } + + ul.footer-services i { + margin: 0px 10px; + } + + .footer-links ul { + justify-content: center; + margin-bottom: 20px; + } + + .footer-logo { + justify-content: center; + order: 2; + text-align: center; + } + + body.landing section.topic p { + font-size: 100%; + } + section.topic p img.w-200 { + width: 120px; + } + section.topic p img.w-150 { + width: 90px; + } + + div.features { + font-size: 90%; + } + + div.device-info h3 { + margin-top: 7px; + margin-bottom: 7px; + } + div.device-info div.features div { + margin: 7px; + } + +} diff --git a/include/eepp/ui/flexlayouter.hpp b/include/eepp/ui/flexlayouter.hpp index b8b0d327a..561ae4c28 100644 --- a/include/eepp/ui/flexlayouter.hpp +++ b/include/eepp/ui/flexlayouter.hpp @@ -111,8 +111,6 @@ class EE_API FlexLayouter : public UILayouter { const Float containerWidth, const Float containerHeight, const SizePolicy widthPolicy, const SizePolicy heightPolicy ); - void layoutSubtreeBottomUp( UIWidget* widget ); - void measureFlexItems( const Axis& mainAxis, const Axis& crossAxis, const Float containerCrossSize, const Float containerWidth, const Float containerHeight, const Rectf& containerPadding, diff --git a/src/eepp/ui/flexlayouter.cpp b/src/eepp/ui/flexlayouter.cpp index 2c4914d75..d910e1b57 100644 --- a/src/eepp/ui/flexlayouter.cpp +++ b/src/eepp/ui/flexlayouter.cpp @@ -6,7 +6,6 @@ #include #include #include -#include namespace EE { namespace UI { @@ -96,8 +95,8 @@ void FlexLayouter::readContainerStyle( CSSFlexDirection& direction, CSSFlexWrap& alignItems = widget->getAlignItems(); alignContent = widget->getAlignContent(); - columnGap = mContainer->lengthFromValue( widget->getColumnGap(), - CSS::PropertyRelativeTarget::ContainingBlockWidth, 0.f ); + columnGap = mContainer->lengthFromValue( + widget->getColumnGap(), CSS::PropertyRelativeTarget::ContainingBlockWidth, 0.f ); rowGap = mContainer->lengthFromValue( widget->getRowGap(), CSS::PropertyRelativeTarget::ContainingBlockWidth, 0.f ); } @@ -127,9 +126,8 @@ void FlexLayouter::readItemStyle( UIWidget* child, FlexItem& item ) { item.order = widget->getOrder(); } -Float FlexLayouter::resolveFlexBasis( UIWidget* child, CSSFlexDirection, - Float flexBasisValue, bool flexBasisAuto, - const Axis& mainAxis ) { +Float FlexLayouter::resolveFlexBasis( UIWidget* child, CSSFlexDirection, Float flexBasisValue, + bool flexBasisAuto, const Axis& mainAxis ) { if ( flexBasisAuto ) { Float intrinsic = 0.f; if ( mainAxis.horizontal && child->getLayoutWidthPolicy() == SizePolicy::Fixed && @@ -165,24 +163,6 @@ Float FlexLayouter::getItemCrossSize( UIWidget* child, const Axis& crossAxis ) c : child->getPixelsSize().getHeight(); } -void FlexLayouter::layoutSubtreeBottomUp( UIWidget* widget ) { - Node* child = widget->getFirstChild(); - while ( child ) { - if ( child->isWidget() && child->isType( UI_TYPE_HTML_WIDGET ) ) - layoutSubtreeBottomUp( child->asType() ); - child = child->getNextNode(); - } - - UILayouter* layouter = nullptr; - if ( widget->isType( UI_TYPE_HTML_WIDGET ) ) - layouter = widget->asType()->getLayouter(); - - if ( layouter && !layouter->isPacking() && layouter != this ) { - if ( widget->isType( UI_TYPE_HTML_WIDGET ) ) - widget->asType()->updateLayout(); - } -} - void FlexLayouter::measureFlexItems( const Axis& mainAxis, const Axis& crossAxis, const Float containerCrossSize, const Float containerWidth, const Float containerHeight, const Rectf& containerPadding, @@ -204,14 +184,15 @@ void FlexLayouter::measureFlexItems( const Axis& mainAxis, const Axis& crossAxis item.widget->setInternalPixelsHeight( tentativeCrossSize ); if ( item.widget->isType( UI_TYPE_HTML_WIDGET ) ) { - auto* layouter = item.widget->asType()->getLayouter(); + auto* childHtml = item.widget->asType(); + auto* layouter = childHtml->getLayouter(); if ( layouter && !layouter->isPacking() && layouter != this ) { - layoutSubtreeBottomUp( item.widget ); + childHtml->updateLayout(); } } item.targetMainSize = resolveFlexBasis( item.widget, mDirection, item.flexBasisValue, - item.flexBasisAuto, mainAxis ); + item.flexBasisAuto, mainAxis ); // CSS Flexbox §9.2: percentage flex-basis against indefinite main size behaves as auto if ( indefiniteMainSize && item.flexBasisIsPercentage ) { @@ -223,7 +204,8 @@ void FlexLayouter::measureFlexItems( const Axis& mainAxis, const Axis& crossAxis const auto* wprop = item.widget->getUIStyle()->getProperty( PropertyId::Width ); if ( wprop ) item.targetMainSize = item.widget->lengthFromValue( *wprop ); - } else if ( !mainAxis.horizontal && item.widget->getLayoutHeightPolicy() == SizePolicy::Fixed && + } else if ( !mainAxis.horizontal && + item.widget->getLayoutHeightPolicy() == SizePolicy::Fixed && item.widget->getUIStyle() ) { const auto* hprop = item.widget->getUIStyle()->getProperty( PropertyId::Height ); if ( hprop ) @@ -233,8 +215,7 @@ void FlexLayouter::measureFlexItems( const Axis& mainAxis, const Axis& crossAxis } void FlexLayouter::generateFlexLines( std::vector& lines, - const Float containerMainSize, - const Float columnGap ) { + const Float containerMainSize, const Float columnGap ) { lines.clear(); std::vector remaining; @@ -251,7 +232,7 @@ void FlexLayouter::generateFlexLines( std::vector& lines Float itemSize = mItems[idx].targetMainSize; Float gap = line.itemIndices.empty() ? 0.f : columnGap; - if ( mWrap == CSSFlexWrap::NoWrap || (usedMain + gap + itemSize <= containerMainSize && + if ( mWrap == CSSFlexWrap::NoWrap || ( usedMain + gap + itemSize <= containerMainSize && usedMain + gap + itemSize >= 0.f ) ) { line.itemIndices.push_back( idx ); usedMain += gap + itemSize; @@ -328,8 +309,7 @@ void FlexLayouter::resolveFlexibleLengths( FlexLine& line, const Float container Float totalScaledShrink = 0.f; for ( size_t idx : line.itemIndices ) { if ( mItems[idx].flexShrink > 0.f ) - totalScaledShrink += - mItems[idx].flexShrink * mItems[idx].targetMainSize; + totalScaledShrink += mItems[idx].flexShrink * mItems[idx].targetMainSize; } if ( totalScaledShrink > 0.f ) { @@ -338,8 +318,7 @@ void FlexLayouter::resolveFlexibleLengths( FlexLine& line, const Float container auto& item = mItems[idx]; if ( item.flexShrink > 0.f ) { Float shrink = - deficit * - ( item.flexShrink * item.targetMainSize ) / totalScaledShrink; + deficit * ( item.flexShrink * item.targetMainSize ) / totalScaledShrink; Float newMain = item.targetMainSize - shrink; if ( newMain < 0.f ) newMain = 0.f; @@ -442,8 +421,9 @@ void FlexLayouter::resolveCrossSizes( FlexLine& line, const Axis& crossAxis, line.crossSize = maxCross; } -void FlexLayouter::alignCrossAxis( const std::vector& lines, const Float containerCrossSize, - const Float rowGap, const Axis& crossAxis ) { +void FlexLayouter::alignCrossAxis( const std::vector& lines, + const Float containerCrossSize, const Float rowGap, + const Axis& crossAxis ) { if ( lines.empty() ) return; @@ -530,7 +510,6 @@ void FlexLayouter::alignCrossAxis( const std::vector& lines, const Flo item.crossPos = pos; break; } - } pos += lineCrossSize + lineGap; @@ -595,8 +574,7 @@ void FlexLayouter::applyLayout( const std::vector& lines, const Axis& if ( widthPolicy == SizePolicy::WrapContent ) totW = contentW + containerPadding.Right; else if ( widthPolicy != SizePolicy::Fixed ) - totW = mContainer->getParent() ? mContainer->getParent()->getPixelsSize().getWidth() - : totW; + totW = mContainer->getParent() ? mContainer->getParent()->getPixelsSize().getWidth() : totW; if ( heightPolicy == SizePolicy::WrapContent ) totH = contentH + containerPadding.Bottom; @@ -650,11 +628,12 @@ void FlexLayouter::updateLayout() { Axis mainAxis = getMainAxis( mDirection ); Axis crossAxis = getCrossAxis( mDirection ); - const Float totalPaddingMain = mainAxis.horizontal ? containerPadding.Left + containerPadding.Right - : containerPadding.Top + containerPadding.Bottom; - const Float totalPaddingCross = - crossAxis.horizontal ? containerPadding.Left + containerPadding.Right - : containerPadding.Top + containerPadding.Bottom; + const Float totalPaddingMain = mainAxis.horizontal + ? containerPadding.Left + containerPadding.Right + : containerPadding.Top + containerPadding.Bottom; + const Float totalPaddingCross = crossAxis.horizontal + ? containerPadding.Left + containerPadding.Right + : containerPadding.Top + containerPadding.Bottom; Float containerMainSize = mainAxis.horizontal ? containerWidth : containerHeight; Float containerCrossSize = crossAxis.horizontal ? containerWidth : containerHeight; @@ -693,20 +672,19 @@ void FlexLayouter::updateLayout() { Float textH = rt->getSize().getHeight(); if ( widthPolicy == SizePolicy::WrapContent ) - mContainer->setInternalPixelsWidth( - textW + containerPadding.Left + containerPadding.Right ); + mContainer->setInternalPixelsWidth( textW + containerPadding.Left + + containerPadding.Right ); else if ( widthPolicy == SizePolicy::Fixed ) mContainer->setInternalPixelsWidth( containerWidth ); else - mContainer->setInternalPixelsWidth( mContainer->getParent() - ? mContainer->getParent() - ->getPixelsSize() - .getWidth() - : 0 ); + mContainer->setInternalPixelsWidth( + mContainer->getParent() + ? mContainer->getParent()->getPixelsSize().getWidth() + : 0 ); if ( heightPolicy == SizePolicy::WrapContent ) - mContainer->setInternalPixelsHeight( - textH + containerPadding.Top + containerPadding.Bottom ); + mContainer->setInternalPixelsHeight( textH + containerPadding.Top + + containerPadding.Bottom ); else if ( heightPolicy == SizePolicy::Fixed ) mContainer->setInternalPixelsHeight( containerHeight ); } @@ -737,9 +715,8 @@ void FlexLayouter::updateLayout() { } // Detect indefinite main size: WrapContent in the main axis direction - bool indefiniteMainSize = - ( mainAxis.horizontal && widthPolicy == SizePolicy::WrapContent ) || - ( !mainAxis.horizontal && heightPolicy == SizePolicy::WrapContent ); + bool indefiniteMainSize = ( mainAxis.horizontal && widthPolicy == SizePolicy::WrapContent ) || + ( !mainAxis.horizontal && heightPolicy == SizePolicy::WrapContent ); measureFlexItems( mainAxis, crossAxis, containerCrossSize, containerWidth, containerHeight, containerPadding, indefiniteMainSize ); diff --git a/src/tests/unit_tests/uihtml_tests.cpp b/src/tests/unit_tests/uihtml_tests.cpp index 764520ca4..1c1f3a3f2 100644 --- a/src/tests/unit_tests/uihtml_tests.cpp +++ b/src/tests/unit_tests/uihtml_tests.cpp @@ -3194,6 +3194,31 @@ UTEST( UIHTML, FlexCenterNoTextNodeDisplacement ) { Engine::destroySingleton(); } +UTEST( UIHTML, BlockSizeInfDoesNotHang ) { + Engine::instance()->createWindow( WindowSettings( 1024, 768, "Block Size Inf Test", + WindowStyle::Default, WindowBackend::Default, + 32, {}, 1, false, true ), + ContextSettings( false, 0, 0, GLv_default, true, false ) ); + + UISceneNode* sceneNode = init_test_inline_block(); + sceneNode->setURI( "file://" + Sys::getProcessPath() + "assets/html/" ); + + std::string html; + FileSystem::fileGet( "assets/html/block_size_inf.html", html ); + sceneNode->loadLayoutFromString( HTMLFormatter::HTMLtoXML( html ) ); + + sceneNode->update( Seconds( 1 ) ); + sceneNode->updateDirtyLayouts(); + + // If we got here without hanging, the test passes. + auto body = sceneNode->getRoot()->findByTag( "body" ); + ASSERT_TRUE( body != nullptr ); + auto bodyWidget = body->asType(); + EXPECT_GT( bodyWidget->getPixelsSize().getHeight(), 0.f ); + + Engine::destroySingleton(); +} + UTEST( UIHTML, FlexFormLayout ) { Engine::instance()->createWindow( WindowSettings( 1024, 653, "Flex Form Layout Test", WindowStyle::Default, WindowBackend::Default,