diff options
author | Simon <gevhaz@tutanota.com> | 2020-06-16 23:52:55 +0300 |
---|---|---|
committer | Simon <gevhaz@tutanota.com> | 2020-06-16 23:52:55 +0300 |
commit | 80916c2ddf43d98c7df2299ae8d6cbd2d488306b (patch) | |
tree | cc07b6794da667886b1005fc278991d96c370399 | |
parent | fcddd552e1a4936d54389b918d114235f9363407 (diff) |
Removed copy of theme from exampleSite
69 files changed, 0 insertions, 8449 deletions
diff --git a/exampleSite/themes/notrack/LICENSE.md b/exampleSite/themes/notrack/LICENSE.md deleted file mode 100644 index f288702..0000000 --- a/exampleSite/themes/notrack/LICENSE.md +++ /dev/null @@ -1,674 +0,0 @@ - GNU GENERAL PUBLIC LICENSE - Version 3, 29 June 2007 - - Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/> - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - Preamble - - The GNU General Public License is a free, copyleft license for -software and other kinds of works. - - The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom to -share and change all versions of a program--to make sure it remains free -software for all its users. We, the Free Software Foundation, use the -GNU General Public License for most of our software; it applies also to -any other work released this way by its authors. You can apply it to -your programs, too. - - When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge for -them if you wish), that you receive source code or can get it if you -want it, that you can change the software or use pieces of it in new -free programs, and that you know you can do these things. - - To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you have -certain responsibilities if you distribute copies of the software, or if -you modify it: responsibilities to respect the freedom of others. - - For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, receive -or can get the source code. And you must show them these terms so they -know their rights. - - Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - - For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - - Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the manufacturer -can do so. This is fundamentally incompatible with the aim of -protecting users' freedom to change the software. The systematic -pattern of such abuse occurs in the area of products for individuals to -use, which is precisely where it is most unacceptable. Therefore, we -have designed this version of the GPL to prohibit the practice for those -products. If such problems arise substantially in other domains, we -stand ready to extend this provision to those domains in future versions -of the GPL, as needed to protect the freedom of users. - - Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish to -avoid the special danger that patents applied to a free program could -make it effectively proprietary. To prevent this, the GPL assures that -patents cannot be used to render the program non-free. - - The precise terms and conditions for copying, distribution and -modification follow. - - TERMS AND CONDITIONS - - 0. Definitions. - - "This License" refers to version 3 of the GNU General Public License. - - "Copyright" also means copyright-like laws that apply to other kinds of -works, such as semiconductor masks. - - "The Program" refers to any copyrightable work licensed under this -License. Each licensee is addressed as "you". "Licensees" and -"recipients" may be individuals or organizations. - - To "modify" a work means to copy from or adapt all or part of the work -in a fashion requiring copyright permission, other than the making of an -exact copy. The resulting work is called a "modified version" of the -earlier work or a work "based on" the earlier work. - - A "covered work" means either the unmodified Program or a work based -on the Program. - - To "propagate" a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - - To "convey" a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user through -a computer network, with no transfer of a copy, is not conveying. - - An interactive user interface displays "Appropriate Legal Notices" -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - - 1. Source Code. - - The "source code" for a work means the preferred form of the work -for making modifications to it. "Object code" means any non-source -form of a work. - - A "Standard Interface" means an interface that either is an official -standard defined by a recognized standards body, or, in the case of -interfaces specified for a particular programming language, one that -is widely used among developers working in that language. - - The "System Libraries" of an executable work include anything, other -than the work as a whole, that (a) is included in the normal form of -packaging a Major Component, but which is not part of that Major -Component, and (b) serves only to enable use of the work with that -Major Component, or to implement a Standard Interface for which an -implementation is available to the public in source code form. A -"Major Component", in this context, means a major essential component -(kernel, window system, and so on) of the specific operating system -(if any) on which the executable work runs, or a compiler used to -produce the work, or an object code interpreter used to run it. - - The "Corresponding Source" for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts to -control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available free -programs which are used unmodified in performing those activities but -which are not part of the work. For example, Corresponding Source -includes interface definition files associated with source files for -the work, and the source code for shared libraries and dynamically -linked subprograms that the work is specifically designed to require, -such as by intimate data communication or control flow between those -subprograms and other parts of the work. - - The Corresponding Source need not include anything that users -can regenerate automatically from other parts of the Corresponding -Source. - - The Corresponding Source for a work in source code form is that -same work. - - 2. Basic Permissions. - - All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - - You may make, run and propagate covered works that you do not -convey, without conditions so long as your license otherwise remains -in force. You may convey covered works to others for the sole purpose -of having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply with -the terms of this License in conveying all material for which you do -not control copyright. Those thus making or running the covered works -for you must do so exclusively on your behalf, under your direction -and control, on terms that prohibit them from making any copies of -your copyrighted material outside their relationship with you. - - Conveying under any other circumstances is permitted solely under -the conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - - 3. Protecting Users' Legal Rights From Anti-Circumvention Law. - - No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such -measures. - - When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such circumvention -is effected by exercising rights under this License with respect to -the covered work, and you disclaim any intention to limit operation or -modification of the work as a means of enforcing, against the work's -users, your or third parties' legal rights to forbid circumvention of -technological measures. - - 4. Conveying Verbatim Copies. - - You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the code; -keep intact all notices of the absence of any warranty; and give all -recipients a copy of this License along with the Program. - - You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - - 5. Conveying Modified Source Versions. - - You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these conditions: - - a) The work must carry prominent notices stating that you modified - it, and giving a relevant date. - - b) The work must carry prominent notices stating that it is - released under this License and any conditions added under section - 7. This requirement modifies the requirement in section 4 to - "keep intact all notices". - - c) You must license the entire work, as a whole, under this - License to anyone who comes into possession of a copy. This - License will therefore apply, along with any applicable section 7 - additional terms, to the whole of the work, and all its parts, - regardless of how they are packaged. This License gives no - permission to license the work in any other way, but it does not - invalidate such permission if you have separately received it. - - d) If the work has interactive user interfaces, each must display - Appropriate Legal Notices; however, if the Program has interactive - interfaces that do not display Appropriate Legal Notices, your - work need not make them do so. - - A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -"aggregate" if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - - 6. Conveying Non-Source Forms. - - You may convey a covered work in object code form under the terms -of sections 4 and 5, provided that you also convey the -machine-readable Corresponding Source under the terms of this License, -in one of these ways: - - a) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by the - Corresponding Source fixed on a durable physical medium - customarily used for software interchange. - - b) Convey the object code in, or embodied in, a physical product - (including a physical distribution medium), accompanied by a - written offer, valid for at least three years and valid for as - long as you offer spare parts or customer support for that product - model, to give anyone who possesses the object code either (1) a - copy of the Corresponding Source for all the software in the - product that is covered by this License, on a durable physical - medium customarily used for software interchange, for a price no - more than your reasonable cost of physically performing this - conveying of source, or (2) access to copy the - Corresponding Source from a network server at no charge. - - c) Convey individual copies of the object code with a copy of the - written offer to provide the Corresponding Source. This - alternative is allowed only occasionally and noncommercially, and - only if you received the object code with such an offer, in accord - with subsection 6b. - - d) Convey the object code by offering access from a designated - place (gratis or for a charge), and offer equivalent access to the - Corresponding Source in the same way through the same place at no - further charge. You need not require recipients to copy the - Corresponding Source along with the object code. If the place to - copy the object code is a network server, the Corresponding Source - may be on a different server (operated by you or a third party) - that supports equivalent copying facilities, provided you maintain - clear directions next to the object code saying where to find the - Corresponding Source. Regardless of what server hosts the - Corresponding Source, you remain obligated to ensure that it is - available for as long as needed to satisfy these requirements. - - e) Convey the object code using peer-to-peer transmission, provided - you inform other peers where the object code and Corresponding - Source of the work are being offered to the general public at no - charge under subsection 6d. - - A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - - A "User Product" is either (1) a "consumer product", which means any -tangible personal property which is normally used for personal, family, -or household purposes, or (2) anything designed or sold for incorporation -into a dwelling. In determining whether a product is a consumer product, -doubtful cases shall be resolved in favor of coverage. For a particular -product received by a particular user, "normally used" refers to a -typical or common use of that class of product, regardless of the status -of the particular user or of the way in which the particular user -actually uses, or expects or is expected to use, the product. A product -is a consumer product regardless of whether the product has substantial -commercial, industrial or non-consumer uses, unless such uses represent -the only significant mode of use of the product. - - "Installation Information" for a User Product means any methods, -procedures, authorization keys, or other information required to install -and execute modified versions of a covered work in that User Product from -a modified version of its Corresponding Source. The information must -suffice to ensure that the continued functioning of the modified object -code is in no case prevented or interfered with solely because -modification has been made. - - If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - - The requirement to provide Installation Information does not include a -requirement to continue to provide support service, warranty, or updates -for a work that has been modified or installed by the recipient, or for -the User Product in which it has been modified or installed. Access to a -network may be denied when the modification itself materially and -adversely affects the operation of the network or violates the rules and -protocols for communication across the network. - - Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - - 7. Additional Terms. - - "Additional permissions" are terms that supplement the terms of this -License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program shall -be treated as though they were included in this License, to the extent -that they are valid under applicable law. If additional permissions -apply only to part of the Program, that part may be used separately -under those permissions, but the entire Program remains governed by -this License without regard to the additional permissions. - - When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - - Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright holders of -that material) supplement the terms of this License with terms: - - a) Disclaiming warranty or limiting liability differently from the - terms of sections 15 and 16 of this License; or - - b) Requiring preservation of specified reasonable legal notices or - author attributions in that material or in the Appropriate Legal - Notices displayed by works containing it; or - - c) Prohibiting misrepresentation of the origin of that material, or - requiring that modified versions of such material be marked in - reasonable ways as different from the original version; or - - d) Limiting the use for publicity purposes of names of licensors or - authors of the material; or - - e) Declining to grant rights under trademark law for use of some - trade names, trademarks, or service marks; or - - f) Requiring indemnification of licensors and authors of that - material by anyone who conveys the material (or modified versions of - it) with contractual assumptions of liability to the recipient, for - any liability that these contractual assumptions directly impose on - those licensors and authors. - - All other non-permissive additional terms are considered "further -restrictions" within the meaning of section 10. If the Program as you -received it, or any part of it, contains a notice stating that it is -governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - - If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - - Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; -the above requirements apply either way. - - 8. Termination. - - You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - - However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the copyright -holder fails to notify you of the violation by some reasonable means -prior to 60 days after the cessation. - - Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - - Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - - 9. Acceptance Not Required for Having Copies. - - You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - - 10. Automatic Licensing of Downstream Recipients. - - Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - - An "entity transaction" is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - - You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate litigation -(including a cross-claim or counterclaim in a lawsuit) alleging that -any patent claim is infringed by making, using, selling, offering for -sale, or importing the Program or any portion of it. - - 11. Patents. - - A "contributor" is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's "contributor version". - - A contributor's "essential patent claims" are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor version, -but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, "control" includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - - Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - - In the following three paragraphs, a "patent license" is any express -agreement or commitment, however denominated, not to enforce a patent -(such as an express permission to practice a patent or covenant not to -sue for patent infringement). To "grant" such a patent license to a -party means to make such an agreement or commitment not to enforce a -patent against the party. - - If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through a -publicly available network server or other readily accessible means, -then you must either (1) cause the Corresponding Source to be so -available, or (2) arrange to deprive yourself of the benefit of the -patent license for this particular work, or (3) arrange, in a manner -consistent with the requirements of this License, to extend the patent -license to downstream recipients. "Knowingly relying" means you have -actual knowledge that, but for the patent license, your conveying the -covered work in a country, or your recipient's use of the covered work -in a country, would infringe one or more identifiable patents in that -country that you have reason to believe are valid. - - If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent license -you grant is automatically extended to all recipients of the covered -work and works based on it. - - A patent license is "discriminatory" if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make payment -to the third party based on the extent of your activity of conveying -the work, and under which the third party grants, to any of the -parties who would receive the covered work from you, a discriminatory -patent license (a) in connection with copies of the covered work -conveyed by you (or copies made from those copies), or (b) primarily -for and in connection with specific products or compilations that -contain the covered work, unless you entered into that arrangement, -or that patent license was granted, prior to 28 March 2007. - - Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - - 12. No Surrender of Others' Freedom. - - If conditions are imposed on you (whether by court order, agreement or -otherwise) that contradict the conditions of this License, they do not -excuse you from the conditions of this License. If you cannot convey a -covered work so as to satisfy simultaneously your obligations under this -License and any other pertinent obligations, then as a consequence you may -not convey it at all. For example, if you agree to terms that obligate you -to collect a royalty for further conveying from those to whom you convey -the Program, the only way you could satisfy both those terms and this -License would be to refrain entirely from conveying the Program. - - 13. Use with the GNU Affero General Public License. - - Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a single -combined work, and to convey the resulting work. The terms of this -License will continue to apply to the part which is the covered work, -but the special requirements of the GNU Affero General Public License, -section 13, concerning interaction through a network will apply to the -combination as such. - - 14. Revised Versions of this License. - - The Free Software Foundation may publish revised and/or new versions of -the GNU General Public License from time to time. Such new versions will -be similar in spirit to the present version, but may differ in detail to -address new problems or concerns. - - Each version is given a distinguishing version number. If the -Program specifies that a certain numbered version of the GNU General -Public License "or any later version" applies to it, you have the -option of following the terms and conditions either of that numbered -version or of any later version published by the Free Software -Foundation. If the Program does not specify a version number of the -GNU General Public License, you may choose any version ever published -by the Free Software Foundation. - - If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes you -to choose that version for the Program. - - Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - - 15. Disclaimer of Warranty. - - THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY -OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, -THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR -PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM -IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF -ALL NECESSARY SERVICING, REPAIR OR CORRECTION. - - 16. Limitation of Liability. - - IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS -THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY -GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE -USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF -DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD -PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), -EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF -SUCH DAMAGES. - - 17. Interpretation of Sections 15 and 16. - - If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - - END OF TERMS AND CONDITIONS - - How to Apply These Terms to Your New Programs - - If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make it -free software which everyone can redistribute and change under these terms. - - To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the "copyright" line and a pointer to where the full notice is found. - - <one line to give the program's name and a brief idea of what it does.> - Copyright (C) <year> <name of author> - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see <https://www.gnu.org/licenses/>. - -Also add information on how to contact you by electronic and paper mail. - - If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - - <program> Copyright (C) <year> <name of author> - This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. - This is free software, and you are welcome to redistribute it - under certain conditions; type `show c' for details. - -The hypothetical commands `show w' and `show c' should show the appropriate -parts of the General Public License. Of course, your program's commands -might be different; for a GUI interface, you would use an "about box". - - You should also get your employer (if you work as a programmer) or school, -if any, to sign a "copyright disclaimer" for the program, if necessary. -For more information on this, and how to apply and follow the GNU GPL, see -<https://www.gnu.org/licenses/>. - - The GNU General Public License does not permit incorporating your program -into proprietary programs. If your program is a subroutine library, you -may consider it more useful to permit linking proprietary applications with -the library. If this is what you want to do, use the GNU Lesser General -Public License instead of this License. But first, please read -<https://www.gnu.org/licenses/why-not-lgpl.html>. diff --git a/exampleSite/themes/notrack/README.md b/exampleSite/themes/notrack/README.md deleted file mode 100644 index 0dc1919..0000000 --- a/exampleSite/themes/notrack/README.md +++ /dev/null @@ -1,486 +0,0 @@ -# Notrack - -An original, minimal theme with a focus on self-sufficiency and -decentralization. By default, Notrack does not rely on any third parties -to serve your website. The only exception is Disqus comments, which are -not used by default (see [Adding -comments](#user-content-adding-comments) below). - -# Table of contents - -* [Notrack](#user-content-notrack) -* [Table of contents](#user-content-table-of-contents) -* [Screenshot](#user-content-screenshot) -* [Example site `config`](#user-content-example-site-config) -* [Shortcodes](#user-content-shortcodes) -* [User CSS](#user-content-user-css) -* [Navigation bar](#user-content-navigation-bar) - * [How to add a page to the navigation bar](#user-content-how-to-add-a-page-to-the-navigation-bar) - * [How to add a page to drop down menu](#user-content-how-to-add-a-page-to-drop-down-menu) -* [How tos](#user-content-how-tos) - * [How to create a home page](#user-content-how-to-create-a-home-page) - * [How to create a blog](#user-content-how-to-create-a-blog) - * [Adding comments](#user-content-adding-comments) - * [How to create a gallery](#user-content-how-to-create-a-gallery) - * [How to create a resume](#user-content-how-to-create-a-resume) - * [How to display social links](#user-content-how-to-display-social-links) - * [Other projects used in this theme](#user-content-other-projects-used-in-this-theme) -* [Contribution](#user-content-contribution) - -# Screenshot - -![Screenshot of the -theme](https://raw.githubusercontent.com/gevhaz/hugo-theme-notrack/master/images/screenshot.png) - -# Example site `config` - -Here is a working `config.yaml`: - -``` -baseURL = "http://example.org/" -languageCode = "en-us" -title = "Lawyer Hugo Grotius" -theme = "notrack" -newContentEditor = "nvim" -mainSections = ["blog"] -# disqusShortname = "example" -paginate = 4 - -[params] - author = "Hugo de Groot" - siteHeading = "Hugo Grotius" # defaults to author - showBlogLatest = true - mainSections = ["blog"] - showTaxonomyLinks = false - nBlogLatest = 4 # number of blog post om the home page - blogLatestHeading = "My writing" - - [params.social] - github = "example" - linkedin = "example" - email = "example@example.com" - mastodon = "example" - medium = "example" - keybase = "example" - -[taxonomies] - year = "year" - month = "month" - tags = "tags" - categories = "categories" - -[permalinks] - blog = "/blog/:year/:month/:slug" -``` - -# Shortcodes - -| Category | Shortcode | Description | -| :--- | :--- | :--- | -| **Contact info** | contact-box | Displays contact info set in params.social | -| | social | Displays contact info set in params.social | -| **Photo Gallery** | gallery-category | Container for gallery-photo shortcodes | -| | gallery-modal | HTML to allow for full page view of gallery photos | -| | gallery-photo | Include a photo in a gallery | -| | gallery-script | Script to allow for full page view of gallery photos | -| **General** | image | Image for use in any page. See example in [How to create a blog](#user-content-how-to-create-a-blog) | -| | video | Similar to an ordinary <video> html tag but with a CSS class to make it look good in posts | -| | rawhtml | For including raw html without the global unsafe option for Goldmark | -| **Resume** | container | Container for resume shortcodes | -| | resume-entry | One entry in a resume (e.g. a university degree) | -| | resume-section | One section in resume (e.g. "Education") | -| | resume-subcategory | Creates a heading within a section of the resume | - -Most of the shortcodes are explained in more detail in their respective -sections below. I explain the other two here. - -`rawhtml` can be used like this: - -``` -{{< rawhtml >}}<p>A paragraph</p>{{< /rawhtml >}} -``` - -This allows you to use html to create elements that you can't create -with just markdown without allowing unsafe html in the site `config`. -I'm not a security expert, and there might be a good reason why unsafe HTML -is disabled by default. If you think this shortcode shouldn't be part of -the theme, feel free to open an issue and say why. - -The `video` shortcode basically just creates a HTML `<video>` tag with a -class that I've added some styling for. Use it like this: - -``` -{{< video src="your_video.mp4" type="video/mp4" preload="auto" >}} -``` - -Your video needs to be in the `static` folder or a subfolder of it such -as "video" (in which case you'd add the subfolder in the `src` -parameter. - -## User CSS - -You can add your own CSS by creating a file `assets/css/userstyles.css`. The -theme will automatically pick it up. - -## Navigation bar - -### How to add a page to the navigation bar - -Add it to `main` menu in the front matter of the page: - -``` ---- -menu: - main: - title: "Contact" - weight: 100 ---- -``` - -Don't use the site `config` to add menus because then the highlighting -of active tabs might not work (at least not if drop-down menus are involved). - -### How to add a page to drop down menu - -Quick instruction: Set it's `parent` parameter to one of the menus in -`main`. - -Instructions with example: - -1. Create the top-level menu in config.yaml or your equivalent. An - example where the top-level menu doesn't correspond to a real page - (url is #) and is just there to hold the drop-down menu: - - ``` - menu: - main: - - identifier: "about-me" - name: "About Me" - url: "#" - weight: 50 - ``` - - If you want to add pages to an already existing menu item, you can skip this - step and just use that page as a parent in step 2. - -2. In the front matter of the page you want to add, put the following: - - ``` - menu: - main: - title: <What you want the name of the menu to be> - parent: "about-me" - weight: <Lower numbers will appear higher up> - ``` - -# How tos - -## How to create a home page - -The first thing you will want to do is set up the home page of the website. -Create `/content/_index.md` (`hugo new _index.md`). This could contain a short -introduction of what is on the website or of yourself. A shortcode that can be -useful here is `image`, which adds an image with an optional frame. You can set -the width with the `width` option. Example usage: - -``` -{{< image frame="true" width="11em" src="/img/profile-picture.jpg" -alt="Picture of me" >}} -``` - -`frame="true"` adds a frame around the picture. You can also add a caption. See -further instructions in [How to create a -blog](#user-content-how-to-create-a-blog). - -At this point you should also set the title for the web site, your name -and the text in the header, if you want it to be different from your -name. Example entries in `config.yaml`: - -``` -title: "My New Hugo Site" -params: - author: "John Doe" - siteHeading: "a header title" -``` - -If you don't want to show the latest posts from your blog at the bottom -of the home page, set `showBlogLatest` to false in your site `config`. -You may also want to change the number of posts shown (default: 3) and -the heading above it (default "Latest from the blog") In config.yaml, it -would look like this: - -``` -params: - showBlogLatest: true - blogLatestHeading: "Latests posts" - nBlogLatest: 6 -``` - -## How to create a blog - -1. Add some posts with e.g. `hugo new blog/post-1.md` etc. - -2. `hugo new blog/_index.md` and create the blog menu item in the front - matter: - - ``` - --- - menu: - main: - identifier: "blog" - name: "Blog" - weight: <lower number than your other menus for more leftward - placement> - --- - ``` - -3. (Optional) Create a drop-down menu with links to tags, categories - and archive by creating pages in the style of `hugo new - tags/_index.md`. It doesn't need any content at all, just create a - front matter where you add it to the main menu with the `identifier` - of your blog menu entry as parent: - - ``` - --- - menu: - main: - name: "All Tags" - parent: "blog" - weight: <lower number than your other menus for more upward - placement> - --- - ``` - - In the case of archive, you may also need to set the layout to - archives in `_index.md`'s front matter: `layout: archives`. - -For those of you who do the third step, there is an option available to -remove the buttons with links to the archive (if you have an archives -page, see step 3), tags and category pages from the top of the blog list -page. Just set the following in your site `config`: - -``` -params: - showTaxonomyLinks: false -``` - -Menus in Hugo are a mess to program for a theme but this should work. -It's the method that gives you, the user, the most freedom to choose the -structure of your content folder. There are [other -methods](https://discourse.gohugo.io/t/another-way-to-make-a-menu-item-active/17029) -for theme developers but they would force the user to put all posts in a -folder with a specific name. - -If you don't want a drop-down menu for listing categories or tags, just -skip step 3. You can still disable the links to the taxonomy pages. Your -readers can list all posts from a specific category or a tag by clicking -on that category or tag in any post instead, and you can link to -`yourpage.com/categories` from other places too. - -You can add images just as for the home page. Available options are those of the -built in `figure` shortcode of Hugo, and additionally: - -| Parameter name | Allowed Values | -| :--- | :--- | -| `float` | right/left | -| `frame` | true/false/leave out | -| `wide` | true/false | -| `width` | e.g. 10em, 50%, 70px | -| `height` | e.g. 10em, 50%, 70px | - -A difference from the built in shortcode is that width and height are for the -outer `<figure>` element. This allows text to wrap around the picture if you set -the float parameter. - -You can also use Hugo's built in short code -[figure](https://gohugo.io/content-management/shortcodes/#figure) (an -example: `{{< figure src="/img/picture.jpg" width="100%" >}}`) - -### Adding comments - -This theme supports Disqus comments. It goes against the philosophy of -the theme in some sense because it relies on external resources but you -can enable it if you want. - -Disqus is implemented the [default Hugo -way](https://gohugo.io/content-management/comments/#add-disqus) so just -add your Disqus Shortname in the site `config` and all blog posts will -have a comments section. - -## How to create a gallery - -There are four shortcodes for creating a gallery: - -* `gallery-category` -* `gallery-photo` -* `gallery-modal` -* `gallery-script` - -The first two are used in combination to create the actual gallery. Do -something like the following in one of your pages: - -``` -{{< gallery-category >}} - {{< gallery-photo fn="<filename of first picture>" caption="<your caption>">}} - {{< gallery-photo fn="<filename of second picture>" caption="<your caption>">}} - {{< gallery-photo fn="<filename of third picture>" caption="<your caption>">}} - {{< gallery-photo fn="<filename of fourth picture>" caption="<your caption>">}} -{{< /gallery-category >}} -``` - -The pictures should be under `static/img/thumbnails` in your project. - -If you want a modal to pop up with a zoomed in version, add the other -two shortcodes at the bottom of your page: - -``` -{{< gallery-modal >}} -{{< gallery-script >}} -``` - -And place corresponding full-size images under `static/img/fullsize`. -The file names need to be the same as for the thumbnails. - -Thumbnails should of course be small so that your page loads fast and -fullsize should be large enough that they don't look pixelated when -covering the full space of a web browser. One way to resize images is -with (graphicsmagick)[http://www.graphicsmagick.org/]: `gm mogrify --resize 1920x1920 *.jpg`, which will resize all images in the current -folder to a maximum width/height of 1920 pixels (while maintaining the -aspect ratio). - -## How to create a resume - -There are some shortcodes that can help you create a resume. These are: - -* `container` -* `resume-section` -* `resume-category` -* `resume-entry` - -`Container` just creates a <div> element with a specific class. -`resume-section` needs a title which will be shown to the left of it's -content (if it can fit on the screen, otherwise it's on top). Within -this, you put one or more `resume-entry` shortcodes. This -shortcode takes the three parameters `what`, `where` and `when` (see -example usage below). It also takes raw HTML within the shortcode tags. -There is styling for `<p>`s, links, and unordered and ordered lists. -Apart from that, site-wide CSS is used. Example usage: - -``` -{{< container >}} - {{< resume-section title="About Me" >}} - {{< resume-entry >}} - <p> - Some info about you. - </p> - {{< /resume-entry >}} - {{< /resume-section >}} - - {{< resume-section title="Education" >}} - {{< resume-entry what="Bachelor's program of Computer Science" - where="Sidney University" - when="2010–2013">}} - <ol> - <li> Some comment on what skills you learned</li> - <li> Some other comment </li> - </ol> - {{< /resume-entry >}} - {{< /resume-section >}} -{{< /container >}} -``` - -A tip is that you can also use the `resume-entry` shortcode with -markdown. Just switch use % instead of < and make sure that your -markdown doesn't have any white space in front of it (or all of it will -be interpreted as code): - -``` - {{% resume-entry what="Bachelor's program of Computer Science" - where="Sidney University" - when="2010–2013" %}} -* Some comment on what skills you learned -* Some other comment - {{% /resume-entry %}} -``` - -## How to display social links - -There is a shortcode for creating a framed area with links to your -profiles called `contact-box`. The thing it does is to put a frame with -links to your social media or other contact info on the rights side of the page, and, if you -want, some text on the left side of the box, outside the frame. Put this -text within the shortcode tags. - -You decide what social media to include in your site `config` under -social under params, like this: - -``` -params: - social: - github: <your github username> - email: <email address> -``` - -For all available social icons, see the `data/notrack/social.yaml` file. There -are 64 of them. Then, to display the links somewhere on your page, use either -`{{< contact-box >}}` or, for an alternative design, use `{{< social }}`. -Here is a screenshot with `contact-box` to the right and `social` -at the bottom: - -<img src="https://raw.githubusercontent.com/gevhaz/hugo-theme-notrack/master/images/social-links.png" width="40%" alt="Example of social link shortcodes"> - -For `contact-box`, there are three optional parameters, `float`, `width` -and `height`. This is similar to the `image` shortcode. `Float` makes -text wrap around the box (can be `right` or `left`), and the other two -naturally set the dimensions of the `<div>`, using inline CSS. The -parameters defaults to floating to the right, the width defaults to -`12em`, and the height defaults to `auto`. - -## Other projects used in this theme - -The theme does not secretly download any resources from other websites -or CDNs. It does, however, make use of a few other projects. These are -included in the theme files, so you'll homepage will serve the -resources. - -Some of the fonts under `static/fonts` are parts of the project [GNU -FreeFont](https://www.gnu.org/software/freefont/). They are licenced -under "GPLv3 or later". Licenses are also supposed to be included in the -.woff files themselves. Some of the fonts are edited by me to take up -less space by including fewer characters. - -The monospace font in the same directory, used for code in the theme, is -[Mononoki](https://github.com/madmalik/mononoki). It is licensed under -SIL OFL 1.1 -([https://scripts.sil.org/OFL](https://scripts.sil.org/OFL)). - -The icons used for the `contact-box` and `social` shortcodes are from -[Font Awesome](https://github.com/FortAwesome/Font-Awesome) project. -It's licence is SIL OFL 1.1 -([https://scripts.sil.org/OFL](https://scripts.sil.org/OFL)). A HTML -comment is included in the contact-box shortcode to show the licence and -source. - -For matching the icons from Font Awesome with names for various social -networking services, I use the -[`social.yml`](https://github.com/dillonzq/LoveIt/blob/master/assets/data/social.yml) -file from the (LoveIt)[https://github.com/dillonzq/LoveIt] theme, which -uses the MIT license. I modified it to use the *Font Awesome Solid* font -for the email icon, because the one in the original file was using the -*Font Awesome Regular* font, which it seems only Pro users of Font -Awesome [can use](https://fontawesome.com/plans). The solid one also -looks better. - -# Contribution - -I have tried to test the theme on mobile as well as different screen -sizes. If you find a situation where fonts don't have an appropriate -size or something else looks off, such as styles completely missing or a -page that seems to have the wrong layout, please open an issue. It's -difficult to support every possible scenario, but I will see what I can -do. - -If some change could be made or something could be added that is in line -with the style and philosophy of the theme, and it doesn't break anything, -feel free to make a pull request. diff --git a/exampleSite/themes/notrack/archetypes/archive.md b/exampleSite/themes/notrack/archetypes/archive.md deleted file mode 100644 index 40890e4..0000000 --- a/exampleSite/themes/notrack/archetypes/archive.md +++ /dev/null @@ -1,4 +0,0 @@ ---- -title: '{{ replace .Name "-" " " | title }}' -menu: "main" ---- diff --git a/exampleSite/themes/notrack/archetypes/blog.md b/exampleSite/themes/notrack/archetypes/blog.md deleted file mode 100644 index 117568f..0000000 --- a/exampleSite/themes/notrack/archetypes/blog.md +++ /dev/null @@ -1,9 +0,0 @@ ---- -title: '{{ replace .Name "-" " " | title }}' -date: {{ .Date }} -Tags: [] -Categories: [] -draft: true ---- - - diff --git a/exampleSite/themes/notrack/archetypes/default.md b/exampleSite/themes/notrack/archetypes/default.md deleted file mode 100644 index 3ab1173..0000000 --- a/exampleSite/themes/notrack/archetypes/default.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -title: '{{ replace .Name "-" " " | title }}' -date: {{ .Date }} -menu: - main: - name: - weight: ---- diff --git a/exampleSite/themes/notrack/data/notrack/social.yaml b/exampleSite/themes/notrack/data/notrack/social.yaml deleted file mode 100644 index 67a694b..0000000 --- a/exampleSite/themes/notrack/data/notrack/social.yaml +++ /dev/null @@ -1,511 +0,0 @@ -# 001: Github -github: - weight: 1 - prefix: https://github.com/ - title: GitHub - icon: - class: fab fa-github-alt fa-fw - -# 002: LinkedIn -linkedin: - weight: 2 - prefix: https://linkedin.com/in/ - title: LinkedIn - icon: - class: fab fa-linkedin fa-fw - -# 003: Twitter -twitter: - weight: 3 - prefix: https://twitter.com/ - title: Twitter - icon: - class: fab fa-twitter fa-fw - -# 004: Instagram -instagram: - weight: 4 - prefix: https://www.instagram.com/ - title: Instagram - icon: - class: fab fa-instagram fa-fw - -# 005: facebook -facebook: - weight: 5 - prefix: https://facebook.com/ - title: Facebook - icon: - class: fab fa-facebook fa-fw - -# 006: Telegram -telegram: - weight: 6 - prefix: https://t.me/ - title: Telegram - icon: - class: fab fa-telegram-plane fa-fw - -# 007: Medium -medium: - weight: 7 - prefix: https://medium.com/ - title: Medium - icon: - class: fab fa-medium fa-fw - -# 008: GitLab -gitlab: - weight: 8 - prefix: https://gitlab.com/ - title: GitLab - icon: - class: fab fa-gitlab fa-fw - -# 009: YouTube Legacy -youtubelegacy: - weight: 9 - prefix: https://www.youtube.com/user/ - title: YouTube - icon: - class: fab fa-youtube fa-fw - -# 010: YouTube Custom -youtubecustom: - weight: 10 - prefix: https://www.youtube.com/c/ - title: YouTube - icon: - class: fab fa-youtube fa-fw - -# 011: YouTube Channel -youtubechannel: - weight: 11 - prefix: https://www.youtube.com/channel/ - title: YouTube - icon: - class: fab fa-youtube fa-fw - -# 012: Tumblr -tumblr: - weight: 12 - template: https://%v.tumblr.com/ - title: Tumblr - icon: - class: fab fa-tumblr fa-fw - -# 013: Quora -quora: - weight: 13 - prefix: https://www.quora.com/profile/ - title: Quora - icon: - class: fab fa-quora fa-fw - -# 014: Keybase -keybase: - weight: 14 - prefix: https://keybase.io/ - title: Keybase - icon: - class: fab fa-keybase fa-fw - -# 015: Pinterest -pinterest: - weight: 15 - prefix: https://www.pinterest.com/ - title: Pinterest - icon: - class: fab fa-pinterest fa-fw - -# 016: Reddit -reddit: - weight: 16 - prefix: https://www.reddit.com/user/ - title: Reddit - icon: - class: fab fa-reddit fa-fw - -# 017: CodePen -codepen: - weight: 17 - prefix: https://codepen.io/ - title: CodePen - icon: - class: fab fa-codepen fa-fw - -# 018: freeCodeCamp -freecodecamp: - weight: 18 - prefix: https://freecodecamp.org/ - title: freeCodeCamp - icon: - class: fab fa-free-code-camp fa-fw - -# 019: Bitbucket -bitbucket: - weight: 19 - prefix: https://bitbucket.org/ - title: Bitbucket - icon: - class: fab fa-bitbucket fa-fw - -# 020: Stack Overflow -stackoverflow: - weight: 20 - prefix: https://stackoverflow.com/users/ - title: Stack Overflow - icon: - class: fab fa-codepen fa-fw - -# 021: 微博 -weibo: - weight: 21 - prefix: https://weibo.com/ - title: 微博 - icon: - class: fab fa-weibo fa-fw - -# 022: OK.RU -odnoklassniki: - weight: 22 - prefix: https://ok.ru/ - title: OK.RU - icon: - class: fab fa-odnoklassniki fa-fw - -# 023: VK -vk: - weight: 23 - prefix: https://vk.com/ - title: VK - icon: - class: fab fa-vk fa-fw - -# 024: Flickr -flickr: - weight: 24 - prefix: https://www.flickr.com/photos/ - title: Flickr - icon: - class: fab fa-flickr fa-fw - -# 025: Xing -xing: - weight: 25 - prefix: https://www.xing.com/profile/ - title: Xing - icon: - class: fab fa-xing fa-fw - -# 026: Snapchat -snapchat: - weight: 26 - prefix: https://www.snapchat.com/add/ - title: Snapchat - icon: - class: fab fa-snapchat fa-fw - -# 027: SoundCloud -soundcloud: - weight: 27 - prefix: https://soundcloud.com/ - title: SoundCloud - icon: - class: fab fa-soundcloud fa-fw - -# 028: Spotify -spotify: - weight: 28 - prefix: https://open.spotify.com/user/ - title: Spotify - icon: - class: fab fa-spotify fa-fw - -# 029: Bandcamp -bandcamp: - weight: 29 - template: https://%v.bandcamp.com/ - title: Bandcamp - icon: - class: fab fa-bandcamp fa-fw - -# 030: PayPal -paypal: - weight: 30 - prefix: https://paypal.me/ - title: PayPal - icon: - class: fab fa-paypal fa-fw - -# 031: 500px -fivehundredpx: - weight: 31 - prefix: https://500px.com/ - title: 500px - icon: - class: fab fa-500px fa-fw - -# 032: Mix -mix: - weight: 32 - prefix: https://mix.com/ - title: Mix - icon: - class: fab fa-mix fa-fw - -# 033: Goodreads -goodreads: - weight: 33 - prefix: https://www.goodreads.com/user/show/ - title: Goodreads - icon: - class: fab fa-goodreads fa-fw - -# 034: Last.fm -lastfm: - weight: 34 - prefix: https://www.last.fm/user/ - title: Last.fm - icon: - class: fab fa-lastfm fa-fw - -# 035: Foursquare -foursquare: - weight: 35 - prefix: https://foursquare.com/ - title: Foursquare - icon: - class: fab fa-foursquare fa-fw - -# 036: Hacker News -hackernews: - weight: 36 - template: https://news.ycombinator.com/user?id=%v - title: Hacker News - icon: - class: fab fa-hacker-news fa-fw - -# 037: Kickstarter -kickstarter: - weight: 37 - prefix: https://kickstarter.com/profile/ - title: Kickstarter - icon: - class: fab fa-kickstarter fa-fw - -# 038: Patreon -patreon: - weight: 38 - prefix: https://patreon.com/ - title: Patreon - icon: - class: fab fa-patreon fa-fw - -# 039: Steam -steam: - weight: 39 - prefix: https://steamcommunity.com/id/ - title: Steam - icon: - class: fab fa-steam fa-fw - -# 040: Twitch -twitch: - weight: 40 - prefix: https://www.twitch.tv/ - title: Twitch - icon: - class: fab fa-twitch fa-fw - -# 041: Strava -strava: - weight: 41 - prefix: https://www.strava.com/athletes/ - title: Strava - icon: - class: fab fa-strava fa-fw - -# 042: Skype -skype: - weight: 42 - template: "skype:" - title: Skype - icon: - class: fab fa-skype fa-fw - -# 043: WhatsApp -whatsapp: - weight: 43 - prefix: https://wa.me/ - title: WhatsApp - icon: - class: fab fa-whatsapp fa-fw - -# 044: 知乎 -zhihu: - weight: 44 - prefix: https://www.zhihu.com/people/ - title: 知乎 - icon: - simpleicons: zhihu - -# 045: 豆瓣 -douban: - weight: 45 - prefix: https://www.douban.com/people/ - title: 豆瓣 - icon: - simpleicons: douban - -# 046: Angellist -angellist: - weight: 46 - prefix: https://angel.co/ - title: Angellist - icon: - class: fab fa-angellist fa-fw - -# 047: SlideShare -slideshare: - weight: 47 - prefix: https://slideshare.com/ - title: SlideShare - icon: - class: fab fa-slideshare fa-fw - -# 048: JSFiddle -jsfiddle: - weight: 48 - prefix: https://jsfiddle.com/ - title: JSFiddle - icon: - class: fab fa-jsfiddle fa-fw - -# 049: DeviantArt -deviantart: - weight: 49 - template: https://%v.deviantart.com/ - title: DeviantArt - icon: - class: fab fa-deviantart fa-fw - -# 050: Behance -behance: - weight: 50 - prefix: https://behance.net/ - title: Behance - icon: - class: fab fa-behance fa-fw - -# 051: Dribbble -dribbble: - weight: 51 - prefix: https://dribbble.com/ - title: Dribbble - icon: - class: fab fa-dribbble fa-fw - -# 052: WordPress -wordpress: - weight: 52 - template: https://%v.wordpress.com/ - title: WordPress - icon: - class: fab fa-wordpress fa-fw - -# 053: Vine -vine: - weight: 53 - prefix: https://vine.co/ - title: Vine - icon: - class: fab fa-vine fa-fw - -# 054: Google Scholar -googlescholar: - weight: 54 - template: https://scholar.google.com/citations?%v - title: Google Scholar - icon: - simpleicons: googlescholar - -# 055: ResearchGate -researchgate: - weight: 55 - prefix: https://www.researchgate.net/profile/ - title: ResearchGate - icon: - class: fab fa-researchgate fa-fw - -# 056: Mastodon -mastodon: - weight: 56 - prefix: https://mastodon.social/ - title: Mastodon - icon: - class: fab fa-mastodon fa-fw - -# 057: Thingiverse -thingiverse: - weight: 57 - prefix: https://www.thingiverse.com/ - title: Thingiverse - icon: - src: svg/icons/thingiverse.svg - -# 058: Dev.To -devto: - weight: 58 - prefix: https://dev.to/ - title: Dev.To - icon: - class: fab fa-dev fa-fw - -# 059: Gitea -gitea: - weight: 59 - title: Gitea - icon: - simpleicons: gitea - -# 060: XMPP -xmpp: - weight: 60 - template: xmpp:%v - title: XMPP - icon: - simpleicons: xmpp - -# 061: Matrix -matrix: - weight: 61 - prefix: https://matrix.to/#/ - title: Matrix - icon: - simpleicons: matrix - -# 062: bilibili -bilibili: - weight: 62 - prefix: https://space.bilibili.com/ - title: bilibili - icon: - src: svg/icons/bilibili.svg - -# 063: Email -email: - weight: 63 - template: mailto:%v - title: Email - icon: - class: fas fa-envelope fa-fw - -# 064: RSS -rss: - weight: 64 - url: /index.xml - title: RSS - newtab: true - icon: - class: fas fa-rss fa-fw diff --git a/exampleSite/themes/notrack/images/screenshot.png b/exampleSite/themes/notrack/images/screenshot.png Binary files differdeleted file mode 100644 index 8423563..0000000 --- a/exampleSite/themes/notrack/images/screenshot.png +++ /dev/null diff --git a/exampleSite/themes/notrack/images/social-links.png b/exampleSite/themes/notrack/images/social-links.png Binary files differdeleted file mode 100644 index bca3e70..0000000 --- a/exampleSite/themes/notrack/images/social-links.png +++ /dev/null diff --git a/exampleSite/themes/notrack/images/tn.png b/exampleSite/themes/notrack/images/tn.png Binary files differdeleted file mode 100644 index d6515c4..0000000 --- a/exampleSite/themes/notrack/images/tn.png +++ /dev/null diff --git a/exampleSite/themes/notrack/layouts/404.html b/exampleSite/themes/notrack/layouts/404.html deleted file mode 100644 index dc4b95a..0000000 --- a/exampleSite/themes/notrack/layouts/404.html +++ /dev/null @@ -1,5 +0,0 @@ -{{ define "main" }} - <main> - <p>404: not found</p> - </main> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/_default/archives.html b/exampleSite/themes/notrack/layouts/_default/archives.html deleted file mode 100644 index b6d3375..0000000 --- a/exampleSite/themes/notrack/layouts/_default/archives.html +++ /dev/null @@ -1,29 +0,0 @@ - -{{ define "main" }} -<main> - - {{- with .Title }} - <h1 class="page-title">{{ . }}</h1> - {{- end }} - - {{ with (where site.RegularPages "Type" "in" site.Params.mainSections) }} - {{- $byyear := (where . ".Draft" false).GroupByDate "2006" -}} - - {{- range $byyear -}} - <h2>{{ .Key }}</h2> - - <ul> - {{ range.Pages }} - <li> <time>{{ .Date.Format "2/1" }}</time> - <span> - </span> - <a href="{{ .Permalink }}"> - <span>{{ .Title }}</span> - </a> - </li> - {{ end }} - </ul> - {{- end -}} - {{ end }} - -</main> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/_default/baseof.html b/exampleSite/themes/notrack/layouts/_default/baseof.html deleted file mode 100644 index 6f991dd..0000000 --- a/exampleSite/themes/notrack/layouts/_default/baseof.html +++ /dev/null @@ -1,10 +0,0 @@ -<!DOCTYPE html> -<html> - {{- partial "head.html" . -}} - <body> - {{- partial "header.html" . -}} - <div id="content"> - {{- block "main" . }}{{- end }} - </div> - </body> -</html> diff --git a/exampleSite/themes/notrack/layouts/_default/list.html b/exampleSite/themes/notrack/layouts/_default/list.html deleted file mode 100644 index 8b4bb0a..0000000 --- a/exampleSite/themes/notrack/layouts/_default/list.html +++ /dev/null @@ -1,52 +0,0 @@ -{{ define "main" }} -<main> - - <h1 class="page-title">{{ .Title }}</h1> - - {{ if default true .Site.Params.showTaxonomyLinks }} - <div class="taxonomy-links"> - <ul> - {{- /* code for figuring out where to archives page is, if anywhere */ -}} - {{ $archivesExists := false }} - {{ $archivesPageTitle := "" }} - {{ $archivesPagePermalink := "" }} - {{ range .Site.AllPages }} - {{ if eq .Layout "archives" }} - {{ $archivesExists = true }} - {{ $archivesPagePermalink = .Permalink }} - {{ with .Title }} - {{ $archivesPageTitle = . }} - {{ end }} - {{ end }} - {{ end }} - {{ if $archivesExists }} - <li><a href="{{ $archivesPagePermalink }}">{{ default "Archives" $archivesPageTitle }}</a></li> - {{ end }} - - {{ range $taxonomyName, $taxonomy := .Site.Taxonomies }} - {{ if or (in $taxonomyName "categ") (in $taxonomyName "tag") }} - <li><a href="{{ $taxonomyName | absURL }}">{{ $taxonomyName }}</a></li> - {{ end }} - {{ end }} - </ul> - </div> - {{ end }} - - {{- if .Pages -}} - {{- $pages := (where .Pages ".Draft" false) -}} - - {{- /* Use site config params for posts per page if available, otherwise default */ -}} - {{- with .Site.Params.list.paginate | default .Site.Params.paginate -}} - {{- $pages = $.Paginate $pages . -}} - {{- else -}} - {{- $pages = .Paginate $pages -}} - {{- end -}} - - {{- range $pages.Pages -}} - {{ partial "blog-entry-summary.html" . }} - {{- end -}} - - {{ partial "pagination.html" . }} - {{- end -}} -</main> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/_default/rss.xml b/exampleSite/themes/notrack/layouts/_default/rss.xml deleted file mode 100644 index 1a9f458..0000000 --- a/exampleSite/themes/notrack/layouts/_default/rss.xml +++ /dev/null @@ -1,48 +0,0 @@ -{{- printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\"?>" | safeHTML }} -<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"> - <channel> - <title>{{ with .Site.Title }}{{.}}{{ end }}</title> - <link>{{ .Permalink }}</link> - <description>Latest blog posts from {{ .Site.Title }}</description> - - {{ with .Site.LanguageCode }} - <language>{{.}}</language> - {{end}} - - {{ with .Site.Author.email }} - <managingEditor>{{.}} - {{ with $.Site.Author.name }} ({{.}}){{end}} - </managingEditor> - {{end}} - - {{ with .Site.Author.email }} - <webMaster>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}} - </webMaster> - {{end}} - - {{ with .Site.Copyright }} - <copyright>{{.}}</copyright> - {{end}} - - {{ if not .Date.IsZero }} - <lastBuildDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</lastBuildDate> - {{ end }} - - {{ with .OutputFormats.Get "RSS" }} - {{ printf "<atom:link href=%q rel=\"self\" type=%q />" .Permalink .MediaType | safeHTML }} - {{ end }} - - {{ with (where site.RegularPages "Type" "in" site.Params.mainSections) }} - {{ range . }} - <item> - <title>{{ .Title }}</title> - <link>{{ .Permalink }}</link> - <pubDate>{{ .Date.Format "Mon, 02 Jan 2006 15:04:05 -0700" | safeHTML }}</pubDate> - {{ with .Site.Author.email }}<author>{{.}}{{ with $.Site.Author.name }} ({{.}}){{end}}</author>{{end}} - <guid>{{ .Permalink }}</guid> - <description>{{ .Summary | markdownify }}</description> - </item> - {{ end }} - {{ end }} - </channel> -</rss> diff --git a/exampleSite/themes/notrack/layouts/_default/single.html b/exampleSite/themes/notrack/layouts/_default/single.html deleted file mode 100644 index d9e5f4b..0000000 --- a/exampleSite/themes/notrack/layouts/_default/single.html +++ /dev/null @@ -1,24 +0,0 @@ -{{ define "main" }} - <main> - <article> - {{ if in site.Params.mainSections .Page.Section }} - <h1 class="page-title blog">{{ .Title }}</h1> - {{ else }} - <h1 class="page-title">{{ .Title }}</h1> - {{ end }} - - {{- /* Show post information if it's a post, otherwise just the content */ -}} - {{ if in site.Params.mainSections .Page.Section }} - <p class="blog-post-info">Posted: <time>{{ .Date.Format "2006-01-02" }}</time> - {{ partial "blog-taxonomy-info" . }}</p> - - <div class="blog-post-content"> - {{ .Content }} - </div> - {{ template "_internal/disqus.html" . }} - {{ else }} - {{ .Content }} - {{ end }} - </article> - </main> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/home.html b/exampleSite/themes/notrack/layouts/home.html deleted file mode 100644 index f9f9986..0000000 --- a/exampleSite/themes/notrack/layouts/home.html +++ /dev/null @@ -1,41 +0,0 @@ -{{ define "main" }} - <main> - {{ $contentExists := gt (len .Content) 0 }} - {{ $blogPages := where .Site.RegularPages.ByDate.Reverse ".Type" "in" .Site.Params.mainSections }} - {{ $blogPages = where $blogPages ".Params.draft" "!=" true }} - {{ $showLatest := and (default true site.Params.showBlogLatest) $blogPages }} - {{ $headlessExists := false }} - - {{ if $contentExists }} - {{ .Content }} - {{ else }} - {{ with .Site.GetPage "/homepage" }} - {{ $headlessExists = true }} - <div class="headless-homepage"> - {{ range .Resources }} - <h2> - {{ .Title }} - </h2> - <p>{{ .Content }}</p> - {{ end }} - </div> - {{ end }} - {{ end }} - - {{ if and (or $headlessExists $contentExists) $showLatest }} - <p class="delimiter">♦ ♦ ♦</p> - - {{ $blogLatest := default "Latest Blog Posts" site.Params.blogLatestHeading }} - <h2 id="latest-blog-home">{{- $blogLatest -}}</h2> - {{ end }} - - {{ if $showLatest }} - {{ with $blogPages }} - {{ range first (default 3 site.Params.nBlogLatest) . }} - {{- partial "blog-entry-summary" . -}} - {{ end }} - {{ end }} - {{ end }} - - </main> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/partials/blog-entry-summary.html b/exampleSite/themes/notrack/layouts/partials/blog-entry-summary.html deleted file mode 100644 index 3d44a2c..0000000 --- a/exampleSite/themes/notrack/layouts/partials/blog-entry-summary.html +++ /dev/null @@ -1,10 +0,0 @@ -<article class="blog-post-summary"> - <h3 class="blog-post-title"><a href="{{ .Permalink }}">{{.Title}}</a></h3> - - <p class="blog-post-info">Posted: <time>{{ .Date.Format "2006-01-02"}}</time> - {{ partial "blog-taxonomy-info" . }}</p> - <p> - {{- .Summary -}} - <span> <a href="{{ .Permalink }}">Read more...</a></span> - </p> -</article> diff --git a/exampleSite/themes/notrack/layouts/partials/blog-taxonomy-info.html b/exampleSite/themes/notrack/layouts/partials/blog-taxonomy-info.html deleted file mode 100644 index 570d0d0..0000000 --- a/exampleSite/themes/notrack/layouts/partials/blog-taxonomy-info.html +++ /dev/null @@ -1,17 +0,0 @@ -{{ with .Params.Categories }} - <span class="blog-taxonomy-info"> | Categories: - {{ $sort := sort . }} - {{ $links := apply $sort "partial" "post-category-link" "." }} - {{ $clean := apply $links "chomp" "." }} - {{ delimit $clean ", " }} - </span> -{{ end }} - -{{ with .Params.Tags }} - <span class="blog-taxonomy-info"> | Tags: - {{ $sort := sort . }} - {{ $links := apply $sort "partial" "post-tag-link" "." }} - {{ $clean := apply $links "chomp" "." }} - {{ delimit $clean ", " }} - </span> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/partials/footer.html b/exampleSite/themes/notrack/layouts/partials/footer.html deleted file mode 100644 index 308b1d0..0000000 --- a/exampleSite/themes/notrack/layouts/partials/footer.html +++ /dev/null @@ -1,2 +0,0 @@ -</body> -</html> diff --git a/exampleSite/themes/notrack/layouts/partials/head.html b/exampleSite/themes/notrack/layouts/partials/head.html deleted file mode 100644 index ad56e1b..0000000 --- a/exampleSite/themes/notrack/layouts/partials/head.html +++ /dev/null @@ -1,17 +0,0 @@ - -<head> - <title>{{ .Site.Title }} {{ with .Title }}- {{ . }} {{ end }}</title> - <link rel="stylesheet" type="text/css" href="{{ "css/fonts.css" | absURL }}"> - <link rel="stylesheet" type="text/css" href="{{ "css/fontawesome.css" | absURL }}"> - <link rel="stylesheet" type="text/css" href="{{ "css/styles.css" | absURL }}"> - {{ with resources.Get "css/userstyles.css" }} - <link rel="stylesheet" type="text/css" href="{{ .Permalink }}"> - {{ end }} - <link rel="icon" href={{ "img/icon.png" | absURL }}> - <meta charset="UTF-8"> - <meta name="author" content="{{ .Site.Params.Author }}"> - <meta name="viewport" content="width=device-width, initial-scale=1.0"> - {{ range .AlternativeOutputFormats -}} - {{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }} - {{ end -}} -</head> diff --git a/exampleSite/themes/notrack/layouts/partials/header.html b/exampleSite/themes/notrack/layouts/partials/header.html deleted file mode 100644 index 48b7154..0000000 --- a/exampleSite/themes/notrack/layouts/partials/header.html +++ /dev/null @@ -1,78 +0,0 @@ - -<header class="page-header"> - <div class="myname"> - <h2><a href="{{ default .Site.Home .Site.BaseURL }}">{{ default .Site.Params.Author .Site.Params.siteHeading }}</a></h2> - </div> - <nav> - <ul class="navbar"> - {{- /* info about current page */ -}} - {{- $currentPage := . -}} - {{- $currentPagesParent := $currentPage.Parent -}} - {{- $currentPageInTags := eq $currentPage.Section "tags" -}} - {{- $currentPageInCategories := eq $currentPage.Section "categories" -}} - {{- $currentPageNotHome := ne $currentPage.IsHome true -}} - - {{- range .Site.Menus.main -}} - {{- if .HasChildren -}} - - {{- /* info about current menu */ -}} - {{- $currentMenusPage := .Page -}} - - {{- $currentMenuHasTags := false -}} - {{- $currentMenuHasCategories := false -}} - {{- range .Children -}} - {{- $childMenuSection := .Page.Section -}} - {{- if eq $childMenuSection "categories" -}}{{- $currentMenuHasCategories = true -}}{{- end -}} - {{- if eq $childMenuSection "tags" -}}{{- $currentMenuHasTags = true -}}{{- end -}} - {{- end -}} - - {{- /* comparison of current menu and current page */ -}} - {{- $active := eq $currentMenusPage $currentPagesParent -}} - {{- $active = and $active $currentPageNotHome -}} - {{- $active = or $active (and $currentMenuHasTags $currentPageInTags) -}} - {{- $active = or $active (and $currentMenuHasCategories $currentPageInCategories) }} - <li class="dropdown {{ if or $active ($currentPage.IsMenuCurrent "main" . ) ($currentPage.HasMenuCurrent "main" .)}}activetab{{ end }}"> - <a href ="{{ .URL }}"> - {{- .Pre }} - <span>{{ .Name }}</span> - </a> - <div class=sub-menu> - {{- range .Children }} - {{- $currentMenuSection := .Page.Section }} - {{- $active := and $currentPageInTags (eq $currentMenuSection "tags") }} - {{- $active = or $active (and $currentPageInCategories (eq $currentMenuSection "categories") ) }} - {{- $active = or $active ($currentPage.IsMenuCurrent "main" . ) }} - <a class="{{- if $active -}}activetab{{- end -}}" href="{{- .URL -}}">{{ .Name }}</a> - {{- end }} - </div> - </li> - {{- else -}} - {{- $currentMenusPage := .Page }} - {{- $currentPageIsTaxonomy := or (eq $currentPage.Kind "taxonomyTerm") (eq $currentPage.Kind "taxonomy") }} - {{- $currentMenuInMainSections := false }} - {{- with $currentMenusPage }} - {{- $currentMenuInMainSections = in site.Params.mainSections .Type }} - {{- end }} - - {{- $active := eq $currentMenusPage $currentPagesParent }} - {{- with $currentMenusPage }} - {{- $active = and $active (ne $currentMenusPage.IsHome true) }} - {{- end }} - {{ with $currentPage.File }} - {{- $active = and $active (ne .Dir "{{ .Site.BaseURL }}" ) }} - {{ end }} - {{- $active = or $active (eq $currentPage.Title .Name ) }} - {{- $active = or $active (eq $currentPage.RelPermalink .URL ) }} - {{- $active = or $active (and $currentPageIsTaxonomy $currentMenuInMainSections) }} - {{- $active = or $active ($currentPage.IsMenuCurrent "main" . ) }} - <li class="{{- if $active -}} activetab {{- end -}}"> - <a href="{{ .URL }}"> - {{- .Pre }} - <span>{{ .Name }}</span> - </a> - </li> - {{- end }} - {{- end }} - </ul> - </nav> -</header> diff --git a/exampleSite/themes/notrack/layouts/partials/pagination.html b/exampleSite/themes/notrack/layouts/partials/pagination.html deleted file mode 100644 index f4eb6fc..0000000 --- a/exampleSite/themes/notrack/layouts/partials/pagination.html +++ /dev/null @@ -1,43 +0,0 @@ -{{ $pag := $.Paginator }} -{{ if gt $pag.TotalPages 1 }} -<ul class="pagination"> - {{ with $pag.First }} - <li class="page-item"> - <a href="{{ .URL }}" class="page-link" aria-label="First"><span - aria-hidden="true">«</span></a> - </li> - {{ end }} - <li class="page-item{{ if not $pag.HasPrev }} disabled{{ end }}"> - <a {{ if $pag.HasPrev }}href="{{ $pag.Prev.URL }}"{{ end }} - class="page-link" aria-label="Previous"><span aria-hidden="true">‹</span></a> - </li> - {{ $ellipsed := false }} - {{ $shouldEllipse := false }} - {{ range $pag.Pagers }} - {{ $right := sub .TotalPages .PageNumber }} - {{ $showNumber := or (le .PageNumber 3) (eq $right 0) }} - {{ $showNumber := or $showNumber (and (gt .PageNumber (sub $pag.PageNumber 2)) (lt .PageNumber (add $pag.PageNumber 2))) }} - {{ if $showNumber }} - {{ $ellipsed = false }} - {{ $shouldEllipse = false }} - {{ else }} - {{ $shouldEllipse = not $ellipsed }} - {{ $ellipsed = true }} - {{ end }} - {{ if $showNumber }} - <li class="page-item{{ if eq . $pag }} active{{ end }}"><a class="page-link" href="{{ .URL }}">{{ .PageNumber }}</a></li> - {{ else if $shouldEllipse }} - <li class="page-item disabled"><span aria-hidden="true"> … </span></li> - {{ end }} - {{ end }} - <li class="page-item{{ if not $pag.HasNext }} disabled{{ end }}"> - <a {{ if $pag.HasNext }}href="{{ $pag.Next.URL }}"{{ end }} - class="page-link" aria-label="Next"><span aria-hidden="true">›</span></a> - </li> - {{ with $pag.Last }} - <li class="page-item"> - <a href="{{ .URL }}" class="page-link" aria-label="Last"><span aria-hidden="true">»</span></a> - </li> - {{ end }} -</ul> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/partials/post-category-link.html b/exampleSite/themes/notrack/layouts/partials/post-category-link.html deleted file mode 100644 index bd55c51..0000000 --- a/exampleSite/themes/notrack/layouts/partials/post-category-link.html +++ /dev/null @@ -1 +0,0 @@ -<a class="blog-taxonomy-info" href="/categories/{{ . | urlize }}">{{ . }}</a> diff --git a/exampleSite/themes/notrack/layouts/partials/post-tag-link.html b/exampleSite/themes/notrack/layouts/partials/post-tag-link.html deleted file mode 100644 index 5867f59..0000000 --- a/exampleSite/themes/notrack/layouts/partials/post-tag-link.html +++ /dev/null @@ -1 +0,0 @@ -<a class="blog-taxonomy-info" href="/tags/{{ . | urlize }}">{{ . }}</a> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/contact-box.html b/exampleSite/themes/notrack/layouts/shortcodes/contact-box.html deleted file mode 100644 index 4e84b0b..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/contact-box.html +++ /dev/null @@ -1,25 +0,0 @@ -{{ with $.Page.Site.Params.social }} -{{ $socialMap := $.Page.Site.Data.notrack.social }} -{{ $width := default "12em" (.Get "width") }} -{{ $height := default "auto" (.Get "height") }} -{{ $float := default "right" (.Get "float") }} -<div class="contactbox {{ $float }}" style="width: {{ $width }}; height: {{ $height }}"> - <ul> - {{- $socialArray := slice -}} - {{ range $website, $user := $.Site.Params.social }} - {{- $social := $website | lower | index $socialMap | default dict -}} - {{- $social := dict "user" $user | merge $social -}} - {{- $socialArray = $socialArray | append $social -}} - {{ end }} - - {{ range sort $socialArray "weight" -}} - {{- if .prefix -}} - <li><a href="{{- .prefix -}}{{ .user }}"><i class="{{- .icon.class -}}"></i>{{ .title }}</a></li> - {{- else if .template -}} - <li><a href="{{- printf .template .user -}}"><i class="{{- .icon.class -}}"></i>{{ .title }}</a></li> - {{- end -}} - {{- end -}} - </ul> - {{ printf "<!-- Icons are from Awesome Font, licenced under SIL OFL 1.1 (https://scripts.sil.org/OFL) -->" | safeHTML }} -</div> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/shortcodes/container.html b/exampleSite/themes/notrack/layouts/shortcodes/container.html deleted file mode 100644 index de8a6c6..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/container.html +++ /dev/null @@ -1,3 +0,0 @@ -<div class="{{ default "resume-content" (.Get "class") }}"> - {{ .Inner }} -</div> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/gallery-category.html b/exampleSite/themes/notrack/layouts/shortcodes/gallery-category.html deleted file mode 100644 index f6fe0c8..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/gallery-category.html +++ /dev/null @@ -1,4 +0,0 @@ -<ul class="gallery-category"> - {{ .Inner }} - <li class="gallery-photo"></li> -</ul> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/gallery-modal.html b/exampleSite/themes/notrack/layouts/shortcodes/gallery-modal.html deleted file mode 100644 index 5a9cde6..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/gallery-modal.html +++ /dev/null @@ -1,8 +0,0 @@ -<!-- Modal for gallery images --> -<div id="myModal" class="modal"> - <span class="close">×</span> - <img class="modal-content" id="modal-img"> - <div id="caption"></div> - <div id="loader"></div> -</div> - diff --git a/exampleSite/themes/notrack/layouts/shortcodes/gallery-photo.html b/exampleSite/themes/notrack/layouts/shortcodes/gallery-photo.html deleted file mode 100644 index 9a1a26a..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/gallery-photo.html +++ /dev/null @@ -1,4 +0,0 @@ -<li class="gallery-photo"> - <img src="{{ ( printf "/img/thumbnails/%s" (.Get "fn")) | absURL }}" }} - alt="{{ .Get "caption" }}"> -</li> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/gallery-script.html b/exampleSite/themes/notrack/layouts/shortcodes/gallery-script.html deleted file mode 100644 index b7a0d25..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/gallery-script.html +++ /dev/null @@ -1 +0,0 @@ -<script src="/js/gallery.js"></script> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/image.html b/exampleSite/themes/notrack/layouts/shortcodes/image.html deleted file mode 100644 index 2ee0834..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/image.html +++ /dev/null @@ -1,32 +0,0 @@ -<figure class="image-shortcode{{ with .Get "class" }} {{ . }}{{ end }} - {{- with .Get "wide" }}{{- if eq . "true" }} wide{{ end -}}{{ end -}} - {{- with .Get "frame" }}{{- if eq . "true" }} frame{{ end -}}{{ end -}} - {{- with .Get "float" }} {{ . }}{{ end -}}" - style=" - {{- with .Get "width" }}width: {{ . }};{{ end -}} - {{- with .Get "height" }}height: {{ . }};{{ end -}}"> - {{- if .Get "link" -}} - <a href="{{ .Get "link" }}"{{ with .Get "target" }} target="{{ . }}"{{ end }}{{ with .Get "rel" }} rel="{{ . }}"{{ end }}> - {{- end }} - <img src="{{ .Get "src" | absURL }}" - {{- if or (.Get "alt") (.Get "caption") }} - alt="{{ with .Get "alt" }}{{ . }}{{ else }}{{ .Get "caption" | markdownify| plainify }}{{ end }}" - {{- end -}} - /> <!-- Closing img tag --> - {{- if .Get "link" }}</a>{{ end -}} - {{- if or (or (.Get "title") (.Get "caption")) (.Get "attr") -}} - <figcaption> - {{ with (.Get "title") -}} - <h4>{{ . }}</h4> - {{- end -}} - {{- if or (.Get "caption") (.Get "attr") -}}<p> - {{- .Get "caption" | markdownify -}} - {{- with .Get "attrlink" }} - <a href="{{ . }}"> - {{- end -}} - {{- .Get "attr" | markdownify -}} - {{- if .Get "attrlink" }}</a>{{ end }}</p> - {{- end }} - </figcaption> - {{- end }} -</figure> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/rawhtml.html b/exampleSite/themes/notrack/layouts/shortcodes/rawhtml.html deleted file mode 100644 index 59448a1..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/rawhtml.html +++ /dev/null @@ -1 +0,0 @@ -{{ .Inner }} diff --git a/exampleSite/themes/notrack/layouts/shortcodes/resume-category.html b/exampleSite/themes/notrack/layouts/shortcodes/resume-category.html deleted file mode 100644 index f1ba02a..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/resume-category.html +++ /dev/null @@ -1 +0,0 @@ -<p class="resume-subcategory">{{ .Get "title" }}</p> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/resume-entry.html b/exampleSite/themes/notrack/layouts/shortcodes/resume-entry.html deleted file mode 100644 index eeac024..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/resume-entry.html +++ /dev/null @@ -1,31 +0,0 @@ -<div class="resume-entry"> - <!-- What the resume entry is about (degree program, work, etc.) --> - {{ with .Get "what" }} - <p class="what">{{ . }}</p> - {{ end }} - - {{ $where := false }} - {{ $when := false }} - - {{/* Where was the thing you did? (e.g. Mozilla) */}} - {{ with .Get "where" }}{{ $where = . }}{{ end }} - - {{/* When did you do it? (e.g. 2020) */}} - {{- with .Get "when" }}{{ $when = . }}{{ end }} - - {{ if and $where $when }} - <p class="resume-entry-data"><span class="where">{{ $where }}</span> | - <span class="when">{{ $when }}</span></p> - {{ else if $where }} - <p class="resume-entry-data"><span class="where">{{ $where }}</span></p> - {{ else if $when }} - <p class="resume-entry-data"><span class="when">{{ $when }}</span></p> - {{ end }} - - {{/* additional HTML under or as the entry */}} - {{ if gt (len .Inner) 0 }} - <div class="resume-inner"> - {{ .Inner }} - </div> - {{ end }} -</div> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/resume-section.html b/exampleSite/themes/notrack/layouts/shortcodes/resume-section.html deleted file mode 100644 index 9e932d1..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/resume-section.html +++ /dev/null @@ -1,6 +0,0 @@ -<div class="category-title"> - <h4>{{ .Get "title" }}</h4> -</div> -<div class="category-content"> - {{ .Inner }} -</div> diff --git a/exampleSite/themes/notrack/layouts/shortcodes/social.html b/exampleSite/themes/notrack/layouts/shortcodes/social.html deleted file mode 100644 index fef88ec..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/social.html +++ /dev/null @@ -1,26 +0,0 @@ -{{ $socialMap := .Site.Data.notrack.social }} - -{{ with $.Site.Params.social }} - <div class="social"> - <ul> - {{- $socialArray := slice -}} - {{ range $website, $user := $.Site.Params.social }} - {{- $social := $website | lower | index $socialMap | default dict -}} - {{- $social := dict "user" $user | merge $social -}} - - {{- $data := index $socialMap $website -}} - - {{- $socialArray = $socialArray | append $social -}} - {{ end }} - {{ range sort $socialArray "weight" -}} - {{- if .prefix -}} - <li><a href="{{- .prefix -}}{{ .user }}"><i class="{{- .icon.class -}}"></i>{{ .title }}</a></li> - {{- else if .template -}} - <li><a href="{{- printf .template .user -}}"><i class="{{- .icon.class -}}"></i>{{ .title }}</a></li> - {{- end -}} - {{- end -}} - </ul> - </div> -{{ end }} - -{{ printf "<!-- Icons are from Awesome Font, licenced under SIL OFL 1.1 (https://scripts.sil.org/OFL) -->" | safeHTML }} diff --git a/exampleSite/themes/notrack/layouts/shortcodes/video.html b/exampleSite/themes/notrack/layouts/shortcodes/video.html deleted file mode 100644 index eba4d66..0000000 --- a/exampleSite/themes/notrack/layouts/shortcodes/video.html +++ /dev/null @@ -1,5 +0,0 @@ -<video class="video-shortcode" preload="{{ .Get "preload" }}" controls> - <source src="{{ .Get "src" }}" type="{{ .Get "type" }}"> - There should have been a video here but your browser does not seem - to support it. -</video> diff --git a/exampleSite/themes/notrack/layouts/taxonomy/list.html b/exampleSite/themes/notrack/layouts/taxonomy/list.html deleted file mode 100644 index f11ce58..0000000 --- a/exampleSite/themes/notrack/layouts/taxonomy/list.html +++ /dev/null @@ -1,28 +0,0 @@ -{{ define "main" }} -<main> - {{- /* Hardcoded values for identifying whether we're looking at a tag or category */ -}} - {{ if or (eq .Data.Plural "categories") (eq .Data.Singular "category") }} - <h1>Category: {{ .Title }}</h1> - {{ else if or (eq .Data.Plural "tags") (eq .Data.Singular "tag") }} - <h1>Tag: {{ .Title }}</h1> - {{ end }} - - {{- if .Pages -}} - {{- $pages := (where .Pages ".Draft" false) -}} - - {{- with .Site.Params.list.paginate | default .Site.Params.paginate -}} - {{- $pages = $.Paginate $pages . -}} - {{- else -}} - {{- $pages = .Paginate $pages -}} - {{- end -}} - - {{- range $pages.Pages -}} - <article class="archive-item"> - {{ partial "blog-entry-summary.html" . }} - </article> - {{- end -}} - - {{ partial "pagination.html" . }} - {{- end -}} - </main> -{{ end }} diff --git a/exampleSite/themes/notrack/layouts/taxonomy/terms.html b/exampleSite/themes/notrack/layouts/taxonomy/terms.html deleted file mode 100644 index e7974b7..0000000 --- a/exampleSite/themes/notrack/layouts/taxonomy/terms.html +++ /dev/null @@ -1,11 +0,0 @@ -{{ define "main" }} -<main> - <h1>All {{ .Title }}</h1> - - <ul> - {{ range .Data.Terms.Alphabetical }} - <li><a href="{{ .Page.Permalink }}">{{ .Page.Title }}</a> ({{ .Count }})</li> - {{ end }} - </ul> -</main> -{{ end }} diff --git a/exampleSite/themes/notrack/static/css/fontawesome.css b/exampleSite/themes/notrack/static/css/fontawesome.css deleted file mode 100644 index c73d7c0..0000000 --- a/exampleSite/themes/notrack/static/css/fontawesome.css +++ /dev/null @@ -1,4522 +0,0 @@ -/*! - * Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ -.fa, -.fas, -.far, -.fal, -.fad, -.fab { - -moz-osx-font-smoothing: grayscale; - -webkit-font-smoothing: antialiased; - display: inline-block; - font-style: normal; - font-variant: normal; - text-rendering: auto; - line-height: 1; } - -.fa-lg { - font-size: 1.33333em; - line-height: 0.75em; - vertical-align: -.0667em; } - -.fa-xs { - font-size: .75em; } - -.fa-sm { - font-size: .875em; } - -.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-fw { - text-align: center; - width: 1.25em; } - -.fa-ul { - list-style-type: none; - margin-left: 2.5em; - padding-left: 0; } - .fa-ul > li { - position: relative; } - -.fa-li { - left: -2em; - position: absolute; - text-align: center; - width: 2em; - line-height: inherit; } - -.fa-border { - border: solid 0.08em #eee; - border-radius: .1em; - padding: .2em .25em .15em; } - -.fa-pull-left { - float: left; } - -.fa-pull-right { - float: right; } - -.fa.fa-pull-left, -.fas.fa-pull-left, -.far.fa-pull-left, -.fal.fa-pull-left, -.fab.fa-pull-left { - margin-right: .3em; } - -.fa.fa-pull-right, -.fas.fa-pull-right, -.far.fa-pull-right, -.fal.fa-pull-right, -.fab.fa-pull-right { - margin-left: .3em; } - -.fa-spin { - -webkit-animation: fa-spin 2s infinite linear; - animation: fa-spin 2s infinite linear; } - -.fa-pulse { - -webkit-animation: fa-spin 1s infinite steps(8); - animation: fa-spin 1s infinite steps(8); } - -@-webkit-keyframes fa-spin { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -@keyframes fa-spin { - 0% { - -webkit-transform: rotate(0deg); - transform: rotate(0deg); } - 100% { - -webkit-transform: rotate(360deg); - transform: rotate(360deg); } } - -.fa-rotate-90 { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)"; - -webkit-transform: rotate(90deg); - transform: rotate(90deg); } - -.fa-rotate-180 { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)"; - -webkit-transform: rotate(180deg); - transform: rotate(180deg); } - -.fa-rotate-270 { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)"; - -webkit-transform: rotate(270deg); - transform: rotate(270deg); } - -.fa-flip-horizontal { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)"; - -webkit-transform: scale(-1, 1); - transform: scale(-1, 1); } - -.fa-flip-vertical { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; - -webkit-transform: scale(1, -1); - transform: scale(1, -1); } - -.fa-flip-both, .fa-flip-horizontal.fa-flip-vertical { - -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"; - -webkit-transform: scale(-1, -1); - transform: scale(-1, -1); } - -:root .fa-rotate-90, -:root .fa-rotate-180, -:root .fa-rotate-270, -:root .fa-flip-horizontal, -:root .fa-flip-vertical, -:root .fa-flip-both { - -webkit-filter: none; - filter: none; } - -.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%; } - -.fa-stack-1x { - line-height: inherit; } - -.fa-stack-2x { - font-size: 2em; } - -.fa-inverse { - color: #fff; } - -/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen -readers do not read off random characters that represent icons */ -.fa-500px:before { - content: "\f26e"; } - -.fa-accessible-icon:before { - content: "\f368"; } - -.fa-accusoft:before { - content: "\f369"; } - -.fa-acquisitions-incorporated:before { - content: "\f6af"; } - -.fa-ad:before { - content: "\f641"; } - -.fa-address-book:before { - content: "\f2b9"; } - -.fa-address-card:before { - content: "\f2bb"; } - -.fa-adjust:before { - content: "\f042"; } - -.fa-adn:before { - content: "\f170"; } - -.fa-adobe:before { - content: "\f778"; } - -.fa-adversal:before { - content: "\f36a"; } - -.fa-affiliatetheme:before { - content: "\f36b"; } - -.fa-air-freshener:before { - content: "\f5d0"; } - -.fa-airbnb:before { - content: "\f834"; } - -.fa-algolia:before { - content: "\f36c"; } - -.fa-align-center:before { - content: "\f037"; } - -.fa-align-justify:before { - content: "\f039"; } - -.fa-align-left:before { - content: "\f036"; } - -.fa-align-right:before { - content: "\f038"; } - -.fa-alipay:before { - content: "\f642"; } - -.fa-allergies:before { - content: "\f461"; } - -.fa-amazon:before { - content: "\f270"; } - -.fa-amazon-pay:before { - content: "\f42c"; } - -.fa-ambulance:before { - content: "\f0f9"; } - -.fa-american-sign-language-interpreting:before { - content: "\f2a3"; } - -.fa-amilia:before { - content: "\f36d"; } - -.fa-anchor:before { - content: "\f13d"; } - -.fa-android:before { - content: "\f17b"; } - -.fa-angellist:before { - content: "\f209"; } - -.fa-angle-double-down:before { - content: "\f103"; } - -.fa-angle-double-left:before { - content: "\f100"; } - -.fa-angle-double-right:before { - content: "\f101"; } - -.fa-angle-double-up:before { - content: "\f102"; } - -.fa-angle-down:before { - content: "\f107"; } - -.fa-angle-left:before { - content: "\f104"; } - -.fa-angle-right:before { - content: "\f105"; } - -.fa-angle-up:before { - content: "\f106"; } - -.fa-angry:before { - content: "\f556"; } - -.fa-angrycreative:before { - content: "\f36e"; } - -.fa-angular:before { - content: "\f420"; } - -.fa-ankh:before { - content: "\f644"; } - -.fa-app-store:before { - content: "\f36f"; } - -.fa-app-store-ios:before { - content: "\f370"; } - -.fa-apper:before { - content: "\f371"; } - -.fa-apple:before { - content: "\f179"; } - -.fa-apple-alt:before { - content: "\f5d1"; } - -.fa-apple-pay:before { - content: "\f415"; } - -.fa-archive:before { - content: "\f187"; } - -.fa-archway:before { - content: "\f557"; } - -.fa-arrow-alt-circle-down:before { - content: "\f358"; } - -.fa-arrow-alt-circle-left:before { - content: "\f359"; } - -.fa-arrow-alt-circle-right:before { - content: "\f35a"; } - -.fa-arrow-alt-circle-up:before { - content: "\f35b"; } - -.fa-arrow-circle-down:before { - content: "\f0ab"; } - -.fa-arrow-circle-left:before { - content: "\f0a8"; } - -.fa-arrow-circle-right:before { - content: "\f0a9"; } - -.fa-arrow-circle-up:before { - content: "\f0aa"; } - -.fa-arrow-down:before { - content: "\f063"; } - -.fa-arrow-left:before { - content: "\f060"; } - -.fa-arrow-right:before { - content: "\f061"; } - -.fa-arrow-up:before { - content: "\f062"; } - -.fa-arrows-alt:before { - content: "\f0b2"; } - -.fa-arrows-alt-h:before { - content: "\f337"; } - -.fa-arrows-alt-v:before { - content: "\f338"; } - -.fa-artstation:before { - content: "\f77a"; } - -.fa-assistive-listening-systems:before { - content: "\f2a2"; } - -.fa-asterisk:before { - content: "\f069"; } - -.fa-asymmetrik:before { - content: "\f372"; } - -.fa-at:before { - content: "\f1fa"; } - -.fa-atlas:before { - content: "\f558"; } - -.fa-atlassian:before { - content: "\f77b"; } - -.fa-atom:before { - content: "\f5d2"; } - -.fa-audible:before { - content: "\f373"; } - -.fa-audio-description:before { - content: "\f29e"; } - -.fa-autoprefixer:before { - content: "\f41c"; } - -.fa-avianex:before { - content: "\f374"; } - -.fa-aviato:before { - content: "\f421"; } - -.fa-award:before { - content: "\f559"; } - -.fa-aws:before { - content: "\f375"; } - -.fa-baby:before { - content: "\f77c"; } - -.fa-baby-carriage:before { - content: "\f77d"; } - -.fa-backspace:before { - content: "\f55a"; } - -.fa-backward:before { - content: "\f04a"; } - -.fa-bacon:before { - content: "\f7e5"; } - -.fa-bahai:before { - content: "\f666"; } - -.fa-balance-scale:before { - content: "\f24e"; } - -.fa-balance-scale-left:before { - content: "\f515"; } - -.fa-balance-scale-right:before { - content: "\f516"; } - -.fa-ban:before { - content: "\f05e"; } - -.fa-band-aid:before { - content: "\f462"; } - -.fa-bandcamp:before { - content: "\f2d5"; } - -.fa-barcode:before { - content: "\f02a"; } - -.fa-bars:before { - content: "\f0c9"; } - -.fa-baseball-ball:before { - content: "\f433"; } - -.fa-basketball-ball:before { - content: "\f434"; } - -.fa-bath:before { - content: "\f2cd"; } - -.fa-battery-empty:before { - content: "\f244"; } - -.fa-battery-full:before { - content: "\f240"; } - -.fa-battery-half:before { - content: "\f242"; } - -.fa-battery-quarter:before { - content: "\f243"; } - -.fa-battery-three-quarters:before { - content: "\f241"; } - -.fa-battle-net:before { - content: "\f835"; } - -.fa-bed:before { - content: "\f236"; } - -.fa-beer:before { - content: "\f0fc"; } - -.fa-behance:before { - content: "\f1b4"; } - -.fa-behance-square:before { - content: "\f1b5"; } - -.fa-bell:before { - content: "\f0f3"; } - -.fa-bell-slash:before { - content: "\f1f6"; } - -.fa-bezier-curve:before { - content: "\f55b"; } - -.fa-bible:before { - content: "\f647"; } - -.fa-bicycle:before { - content: "\f206"; } - -.fa-biking:before { - content: "\f84a"; } - -.fa-bimobject:before { - content: "\f378"; } - -.fa-binoculars:before { - content: "\f1e5"; } - -.fa-biohazard:before { - content: "\f780"; } - -.fa-birthday-cake:before { - content: "\f1fd"; } - -.fa-bitbucket:before { - content: "\f171"; } - -.fa-bitcoin:before { - content: "\f379"; } - -.fa-bity:before { - content: "\f37a"; } - -.fa-black-tie:before { - content: "\f27e"; } - -.fa-blackberry:before { - content: "\f37b"; } - -.fa-blender:before { - content: "\f517"; } - -.fa-blender-phone:before { - content: "\f6b6"; } - -.fa-blind:before { - content: "\f29d"; } - -.fa-blog:before { - content: "\f781"; } - -.fa-blogger:before { - content: "\f37c"; } - -.fa-blogger-b:before { - content: "\f37d"; } - -.fa-bluetooth:before { - content: "\f293"; } - -.fa-bluetooth-b:before { - content: "\f294"; } - -.fa-bold:before { - content: "\f032"; } - -.fa-bolt:before { - content: "\f0e7"; } - -.fa-bomb:before { - content: "\f1e2"; } - -.fa-bone:before { - content: "\f5d7"; } - -.fa-bong:before { - content: "\f55c"; } - -.fa-book:before { - content: "\f02d"; } - -.fa-book-dead:before { - content: "\f6b7"; } - -.fa-book-medical:before { - content: "\f7e6"; } - -.fa-book-open:before { - content: "\f518"; } - -.fa-book-reader:before { - content: "\f5da"; } - -.fa-bookmark:before { - content: "\f02e"; } - -.fa-bootstrap:before { - content: "\f836"; } - -.fa-border-all:before { - content: "\f84c"; } - -.fa-border-none:before { - content: "\f850"; } - -.fa-border-style:before { - content: "\f853"; } - -.fa-bowling-ball:before { - content: "\f436"; } - -.fa-box:before { - content: "\f466"; } - -.fa-box-open:before { - content: "\f49e"; } - -.fa-box-tissue:before { - content: "\f95b"; } - -.fa-boxes:before { - content: "\f468"; } - -.fa-braille:before { - content: "\f2a1"; } - -.fa-brain:before { - content: "\f5dc"; } - -.fa-bread-slice:before { - content: "\f7ec"; } - -.fa-briefcase:before { - content: "\f0b1"; } - -.fa-briefcase-medical:before { - content: "\f469"; } - -.fa-broadcast-tower:before { - content: "\f519"; } - -.fa-broom:before { - content: "\f51a"; } - -.fa-brush:before { - content: "\f55d"; } - -.fa-btc:before { - content: "\f15a"; } - -.fa-buffer:before { - content: "\f837"; } - -.fa-bug:before { - content: "\f188"; } - -.fa-building:before { - content: "\f1ad"; } - -.fa-bullhorn:before { - content: "\f0a1"; } - -.fa-bullseye:before { - content: "\f140"; } - -.fa-burn:before { - content: "\f46a"; } - -.fa-buromobelexperte:before { - content: "\f37f"; } - -.fa-bus:before { - content: "\f207"; } - -.fa-bus-alt:before { - content: "\f55e"; } - -.fa-business-time:before { - content: "\f64a"; } - -.fa-buy-n-large:before { - content: "\f8a6"; } - -.fa-buysellads:before { - content: "\f20d"; } - -.fa-calculator:before { - content: "\f1ec"; } - -.fa-calendar:before { - content: "\f133"; } - -.fa-calendar-alt:before { - content: "\f073"; } - -.fa-calendar-check:before { - content: "\f274"; } - -.fa-calendar-day:before { - content: "\f783"; } - -.fa-calendar-minus:before { - content: "\f272"; } - -.fa-calendar-plus:before { - content: "\f271"; } - -.fa-calendar-times:before { - content: "\f273"; } - -.fa-calendar-week:before { - content: "\f784"; } - -.fa-camera:before { - content: "\f030"; } - -.fa-camera-retro:before { - content: "\f083"; } - -.fa-campground:before { - content: "\f6bb"; } - -.fa-canadian-maple-leaf:before { - content: "\f785"; } - -.fa-candy-cane:before { - content: "\f786"; } - -.fa-cannabis:before { - content: "\f55f"; } - -.fa-capsules:before { - content: "\f46b"; } - -.fa-car:before { - content: "\f1b9"; } - -.fa-car-alt:before { - content: "\f5de"; } - -.fa-car-battery:before { - content: "\f5df"; } - -.fa-car-crash:before { - content: "\f5e1"; } - -.fa-car-side:before { - content: "\f5e4"; } - -.fa-caravan:before { - content: "\f8ff"; } - -.fa-caret-down:before { - content: "\f0d7"; } - -.fa-caret-left:before { - content: "\f0d9"; } - -.fa-caret-right:before { - content: "\f0da"; } - -.fa-caret-square-down:before { - content: "\f150"; } - -.fa-caret-square-left:before { - content: "\f191"; } - -.fa-caret-square-right:before { - content: "\f152"; } - -.fa-caret-square-up:before { - content: "\f151"; } - -.fa-caret-up:before { - content: "\f0d8"; } - -.fa-carrot:before { - content: "\f787"; } - -.fa-cart-arrow-down:before { - content: "\f218"; } - -.fa-cart-plus:before { - content: "\f217"; } - -.fa-cash-register:before { - content: "\f788"; } - -.fa-cat:before { - content: "\f6be"; } - -.fa-cc-amazon-pay:before { - content: "\f42d"; } - -.fa-cc-amex:before { - content: "\f1f3"; } - -.fa-cc-apple-pay:before { - content: "\f416"; } - -.fa-cc-diners-club:before { - content: "\f24c"; } - -.fa-cc-discover:before { - content: "\f1f2"; } - -.fa-cc-jcb:before { - content: "\f24b"; } - -.fa-cc-mastercard:before { - content: "\f1f1"; } - -.fa-cc-paypal:before { - content: "\f1f4"; } - -.fa-cc-stripe:before { - content: "\f1f5"; } - -.fa-cc-visa:before { - content: "\f1f0"; } - -.fa-centercode:before { - content: "\f380"; } - -.fa-centos:before { - content: "\f789"; } - -.fa-certificate:before { - content: "\f0a3"; } - -.fa-chair:before { - content: "\f6c0"; } - -.fa-chalkboard:before { - content: "\f51b"; } - -.fa-chalkboard-teacher:before { - content: "\f51c"; } - -.fa-charging-station:before { - content: "\f5e7"; } - -.fa-chart-area:before { - content: "\f1fe"; } - -.fa-chart-bar:before { - content: "\f080"; } - -.fa-chart-line:before { - content: "\f201"; } - -.fa-chart-pie:before { - content: "\f200"; } - -.fa-check:before { - content: "\f00c"; } - -.fa-check-circle:before { - content: "\f058"; } - -.fa-check-double:before { - content: "\f560"; } - -.fa-check-square:before { - content: "\f14a"; } - -.fa-cheese:before { - content: "\f7ef"; } - -.fa-chess:before { - content: "\f439"; } - -.fa-chess-bishop:before { - content: "\f43a"; } - -.fa-chess-board:before { - content: "\f43c"; } - -.fa-chess-king:before { - content: "\f43f"; } - -.fa-chess-knight:before { - content: "\f441"; } - -.fa-chess-pawn:before { - content: "\f443"; } - -.fa-chess-queen:before { - content: "\f445"; } - -.fa-chess-rook:before { - content: "\f447"; } - -.fa-chevron-circle-down:before { - content: "\f13a"; } - -.fa-chevron-circle-left:before { - content: "\f137"; } - -.fa-chevron-circle-right:before { - content: "\f138"; } - -.fa-chevron-circle-up:before { - content: "\f139"; } - -.fa-chevron-down:before { - content: "\f078"; } - -.fa-chevron-left:before { - content: "\f053"; } - -.fa-chevron-right:before { - content: "\f054"; } - -.fa-chevron-up:before { - content: "\f077"; } - -.fa-child:before { - content: "\f1ae"; } - -.fa-chrome:before { - content: "\f268"; } - -.fa-chromecast:before { - content: "\f838"; } - -.fa-church:before { - content: "\f51d"; } - -.fa-circle:before { - content: "\f111"; } - -.fa-circle-notch:before { - content: "\f1ce"; } - -.fa-city:before { - content: "\f64f"; } - -.fa-clinic-medical:before { - content: "\f7f2"; } - -.fa-clipboard:before { - content: "\f328"; } - -.fa-clipboard-check:before { - content: "\f46c"; } - -.fa-clipboard-list:before { - content: "\f46d"; } - -.fa-clock:before { - content: "\f017"; } - -.fa-clone:before { - content: "\f24d"; } - -.fa-closed-captioning:before { - content: "\f20a"; } - -.fa-cloud:before { - content: "\f0c2"; } - -.fa-cloud-download-alt:before { - content: "\f381"; } - -.fa-cloud-meatball:before { - content: "\f73b"; } - -.fa-cloud-moon:before { - content: "\f6c3"; } - -.fa-cloud-moon-rain:before { - content: "\f73c"; } - -.fa-cloud-rain:before { - content: "\f73d"; } - -.fa-cloud-showers-heavy:before { - content: "\f740"; } - -.fa-cloud-sun:before { - content: "\f6c4"; } - -.fa-cloud-sun-rain:before { - content: "\f743"; } - -.fa-cloud-upload-alt:before { - content: "\f382"; } - -.fa-cloudscale:before { - content: "\f383"; } - -.fa-cloudsmith:before { - content: "\f384"; } - -.fa-cloudversify:before { - content: "\f385"; } - -.fa-cocktail:before { - content: "\f561"; } - -.fa-code:before { - content: "\f121"; } - -.fa-code-branch:before { - content: "\f126"; } - -.fa-codepen:before { - content: "\f1cb"; } - -.fa-codiepie:before { - content: "\f284"; } - -.fa-coffee:before { - content: "\f0f4"; } - -.fa-cog:before { - content: "\f013"; } - -.fa-cogs:before { - content: "\f085"; } - -.fa-coins:before { - content: "\f51e"; } - -.fa-columns:before { - content: "\f0db"; } - -.fa-comment:before { - content: "\f075"; } - -.fa-comment-alt:before { - content: "\f27a"; } - -.fa-comment-dollar:before { - content: "\f651"; } - -.fa-comment-dots:before { - content: "\f4ad"; } - -.fa-comment-medical:before { - content: "\f7f5"; } - -.fa-comment-slash:before { - content: "\f4b3"; } - -.fa-comments:before { - content: "\f086"; } - -.fa-comments-dollar:before { - content: "\f653"; } - -.fa-compact-disc:before { - content: "\f51f"; } - -.fa-compass:before { - content: "\f14e"; } - -.fa-compress:before { - content: "\f066"; } - -.fa-compress-alt:before { - content: "\f422"; } - -.fa-compress-arrows-alt:before { - content: "\f78c"; } - -.fa-concierge-bell:before { - content: "\f562"; } - -.fa-confluence:before { - content: "\f78d"; } - -.fa-connectdevelop:before { - content: "\f20e"; } - -.fa-contao:before { - content: "\f26d"; } - -.fa-cookie:before { - content: "\f563"; } - -.fa-cookie-bite:before { - content: "\f564"; } - -.fa-copy:before { - content: "\f0c5"; } - -.fa-copyright:before { - content: "\f1f9"; } - -.fa-cotton-bureau:before { - content: "\f89e"; } - -.fa-couch:before { - content: "\f4b8"; } - -.fa-cpanel:before { - content: "\f388"; } - -.fa-creative-commons:before { - content: "\f25e"; } - -.fa-creative-commons-by:before { - content: "\f4e7"; } - -.fa-creative-commons-nc:before { - content: "\f4e8"; } - -.fa-creative-commons-nc-eu:before { - content: "\f4e9"; } - -.fa-creative-commons-nc-jp:before { - content: "\f4ea"; } - -.fa-creative-commons-nd:before { - content: "\f4eb"; } - -.fa-creative-commons-pd:before { - content: "\f4ec"; } - -.fa-creative-commons-pd-alt:before { - content: "\f4ed"; } - -.fa-creative-commons-remix:before { - content: "\f4ee"; } - -.fa-creative-commons-sa:before { - content: "\f4ef"; } - -.fa-creative-commons-sampling:before { - content: "\f4f0"; } - -.fa-creative-commons-sampling-plus:before { - content: "\f4f1"; } - -.fa-creative-commons-share:before { - content: "\f4f2"; } - -.fa-creative-commons-zero:before { - content: "\f4f3"; } - -.fa-credit-card:before { - content: "\f09d"; } - -.fa-critical-role:before { - content: "\f6c9"; } - -.fa-crop:before { - content: "\f125"; } - -.fa-crop-alt:before { - content: "\f565"; } - -.fa-cross:before { - content: "\f654"; } - -.fa-crosshairs:before { - content: "\f05b"; } - -.fa-crow:before { - content: "\f520"; } - -.fa-crown:before { - content: "\f521"; } - -.fa-crutch:before { - content: "\f7f7"; } - -.fa-css3:before { - content: "\f13c"; } - -.fa-css3-alt:before { - content: "\f38b"; } - -.fa-cube:before { - content: "\f1b2"; } - -.fa-cubes:before { - content: "\f1b3"; } - -.fa-cut:before { - content: "\f0c4"; } - -.fa-cuttlefish:before { - content: "\f38c"; } - -.fa-d-and-d:before { - content: "\f38d"; } - -.fa-d-and-d-beyond:before { - content: "\f6ca"; } - -.fa-dailymotion:before { - content: "\f952"; } - -.fa-dashcube:before { - content: "\f210"; } - -.fa-database:before { - content: "\f1c0"; } - -.fa-deaf:before { - content: "\f2a4"; } - -.fa-delicious:before { - content: "\f1a5"; } - -.fa-democrat:before { - content: "\f747"; } - -.fa-deploydog:before { - content: "\f38e"; } - -.fa-deskpro:before { - content: "\f38f"; } - -.fa-desktop:before { - content: "\f108"; } - -.fa-dev:before { - content: "\f6cc"; } - -.fa-deviantart:before { - content: "\f1bd"; } - -.fa-dharmachakra:before { - content: "\f655"; } - -.fa-dhl:before { - content: "\f790"; } - -.fa-diagnoses:before { - content: "\f470"; } - -.fa-diaspora:before { - content: "\f791"; } - -.fa-dice:before { - content: "\f522"; } - -.fa-dice-d20:before { - content: "\f6cf"; } - -.fa-dice-d6:before { - content: "\f6d1"; } - -.fa-dice-five:before { - content: "\f523"; } - -.fa-dice-four:before { - content: "\f524"; } - -.fa-dice-one:before { - content: "\f525"; } - -.fa-dice-six:before { - content: "\f526"; } - -.fa-dice-three:before { - content: "\f527"; } - -.fa-dice-two:before { - content: "\f528"; } - -.fa-digg:before { - content: "\f1a6"; } - -.fa-digital-ocean:before { - content: "\f391"; } - -.fa-digital-tachograph:before { - content: "\f566"; } - -.fa-directions:before { - content: "\f5eb"; } - -.fa-discord:before { - content: "\f392"; } - -.fa-discourse:before { - content: "\f393"; } - -.fa-disease:before { - content: "\f7fa"; } - -.fa-divide:before { - content: "\f529"; } - -.fa-dizzy:before { - content: "\f567"; } - -.fa-dna:before { - content: "\f471"; } - -.fa-dochub:before { - content: "\f394"; } - -.fa-docker:before { - content: "\f395"; } - -.fa-dog:before { - content: "\f6d3"; } - -.fa-dollar-sign:before { - content: "\f155"; } - -.fa-dolly:before { - content: "\f472"; } - -.fa-dolly-flatbed:before { - content: "\f474"; } - -.fa-donate:before { - content: "\f4b9"; } - -.fa-door-closed:before { - content: "\f52a"; } - -.fa-door-open:before { - content: "\f52b"; } - -.fa-dot-circle:before { - content: "\f192"; } - -.fa-dove:before { - content: "\f4ba"; } - -.fa-download:before { - content: "\f019"; } - -.fa-draft2digital:before { - content: "\f396"; } - -.fa-drafting-compass:before { - content: "\f568"; } - -.fa-dragon:before { - content: "\f6d5"; } - -.fa-draw-polygon:before { - content: "\f5ee"; } - -.fa-dribbble:before { - content: "\f17d"; } - -.fa-dribbble-square:before { - content: "\f397"; } - -.fa-dropbox:before { - content: "\f16b"; } - -.fa-drum:before { - content: "\f569"; } - -.fa-drum-steelpan:before { - content: "\f56a"; } - -.fa-drumstick-bite:before { - content: "\f6d7"; } - -.fa-drupal:before { - content: "\f1a9"; } - -.fa-dumbbell:before { - content: "\f44b"; } - -.fa-dumpster:before { - content: "\f793"; } - -.fa-dumpster-fire:before { - content: "\f794"; } - -.fa-dungeon:before { - content: "\f6d9"; } - -.fa-dyalog:before { - content: "\f399"; } - -.fa-earlybirds:before { - content: "\f39a"; } - -.fa-ebay:before { - content: "\f4f4"; } - -.fa-edge:before { - content: "\f282"; } - -.fa-edit:before { - content: "\f044"; } - -.fa-egg:before { - content: "\f7fb"; } - -.fa-eject:before { - content: "\f052"; } - -.fa-elementor:before { - content: "\f430"; } - -.fa-ellipsis-h:before { - content: "\f141"; } - -.fa-ellipsis-v:before { - content: "\f142"; } - -.fa-ello:before { - content: "\f5f1"; } - -.fa-ember:before { - content: "\f423"; } - -.fa-empire:before { - content: "\f1d1"; } - -.fa-envelope:before { - content: "\f0e0"; } - -.fa-envelope-open:before { - content: "\f2b6"; } - -.fa-envelope-open-text:before { - content: "\f658"; } - -.fa-envelope-square:before { - content: "\f199"; } - -.fa-envira:before { - content: "\f299"; } - -.fa-equals:before { - content: "\f52c"; } - -.fa-eraser:before { - content: "\f12d"; } - -.fa-erlang:before { - content: "\f39d"; } - -.fa-ethereum:before { - content: "\f42e"; } - -.fa-ethernet:before { - content: "\f796"; } - -.fa-etsy:before { - content: "\f2d7"; } - -.fa-euro-sign:before { - content: "\f153"; } - -.fa-evernote:before { - content: "\f839"; } - -.fa-exchange-alt:before { - content: "\f362"; } - -.fa-exclamation:before { - content: "\f12a"; } - -.fa-exclamation-circle:before { - content: "\f06a"; } - -.fa-exclamation-triangle:before { - content: "\f071"; } - -.fa-expand:before { - content: "\f065"; } - -.fa-expand-alt:before { - content: "\f424"; } - -.fa-expand-arrows-alt:before { - content: "\f31e"; } - -.fa-expeditedssl:before { - content: "\f23e"; } - -.fa-external-link-alt:before { - content: "\f35d"; } - -.fa-external-link-square-alt:before { - content: "\f360"; } - -.fa-eye:before { - content: "\f06e"; } - -.fa-eye-dropper:before { - content: "\f1fb"; } - -.fa-eye-slash:before { - content: "\f070"; } - -.fa-facebook:before { - content: "\f09a"; } - -.fa-facebook-f:before { - content: "\f39e"; } - -.fa-facebook-messenger:before { - content: "\f39f"; } - -.fa-facebook-square:before { - content: "\f082"; } - -.fa-fan:before { - content: "\f863"; } - -.fa-fantasy-flight-games:before { - content: "\f6dc"; } - -.fa-fast-backward:before { - content: "\f049"; } - -.fa-fast-forward:before { - content: "\f050"; } - -.fa-faucet:before { - content: "\f905"; } - -.fa-fax:before { - content: "\f1ac"; } - -.fa-feather:before { - content: "\f52d"; } - -.fa-feather-alt:before { - content: "\f56b"; } - -.fa-fedex:before { - content: "\f797"; } - -.fa-fedora:before { - content: "\f798"; } - -.fa-female:before { - content: "\f182"; } - -.fa-fighter-jet:before { - content: "\f0fb"; } - -.fa-figma:before { - content: "\f799"; } - -.fa-file:before { - content: "\f15b"; } - -.fa-file-alt:before { - content: "\f15c"; } - -.fa-file-archive:before { - content: "\f1c6"; } - -.fa-file-audio:before { - content: "\f1c7"; } - -.fa-file-code:before { - content: "\f1c9"; } - -.fa-file-contract:before { - content: "\f56c"; } - -.fa-file-csv:before { - content: "\f6dd"; } - -.fa-file-download:before { - content: "\f56d"; } - -.fa-file-excel:before { - content: "\f1c3"; } - -.fa-file-export:before { - content: "\f56e"; } - -.fa-file-image:before { - content: "\f1c5"; } - -.fa-file-import:before { - content: "\f56f"; } - -.fa-file-invoice:before { - content: "\f570"; } - -.fa-file-invoice-dollar:before { - content: "\f571"; } - -.fa-file-medical:before { - content: "\f477"; } - -.fa-file-medical-alt:before { - content: "\f478"; } - -.fa-file-pdf:before { - content: "\f1c1"; } - -.fa-file-powerpoint:before { - content: "\f1c4"; } - -.fa-file-prescription:before { - content: "\f572"; } - -.fa-file-signature:before { - content: "\f573"; } - -.fa-file-upload:before { - content: "\f574"; } - -.fa-file-video:before { - content: "\f1c8"; } - -.fa-file-word:before { - content: "\f1c2"; } - -.fa-fill:before { - content: "\f575"; } - -.fa-fill-drip:before { - content: "\f576"; } - -.fa-film:before { - content: "\f008"; } - -.fa-filter:before { - content: "\f0b0"; } - -.fa-fingerprint:before { - content: "\f577"; } - -.fa-fire:before { - content: "\f06d"; } - -.fa-fire-alt:before { - content: "\f7e4"; } - -.fa-fire-extinguisher:before { - content: "\f134"; } - -.fa-firefox:before { - content: "\f269"; } - -.fa-firefox-browser:before { - content: "\f907"; } - -.fa-first-aid:before { - content: "\f479"; } - -.fa-first-order:before { - content: "\f2b0"; } - -.fa-first-order-alt:before { - content: "\f50a"; } - -.fa-firstdraft:before { - content: "\f3a1"; } - -.fa-fish:before { - content: "\f578"; } - -.fa-fist-raised:before { - content: "\f6de"; } - -.fa-flag:before { - content: "\f024"; } - -.fa-flag-checkered:before { - content: "\f11e"; } - -.fa-flag-usa:before { - content: "\f74d"; } - -.fa-flask:before { - content: "\f0c3"; } - -.fa-flickr:before { - content: "\f16e"; } - -.fa-flipboard:before { - content: "\f44d"; } - -.fa-flushed:before { - content: "\f579"; } - -.fa-fly:before { - content: "\f417"; } - -.fa-folder:before { - content: "\f07b"; } - -.fa-folder-minus:before { - content: "\f65d"; } - -.fa-folder-open:before { - content: "\f07c"; } - -.fa-folder-plus:before { - content: "\f65e"; } - -.fa-font:before { - content: "\f031"; } - -.fa-font-awesome:before { - content: "\f2b4"; } - -.fa-font-awesome-alt:before { - content: "\f35c"; } - -.fa-font-awesome-flag:before { - content: "\f425"; } - -.fa-font-awesome-logo-full:before { - content: "\f4e6"; } - -.fa-fonticons:before { - content: "\f280"; } - -.fa-fonticons-fi:before { - content: "\f3a2"; } - -.fa-football-ball:before { - content: "\f44e"; } - -.fa-fort-awesome:before { - content: "\f286"; } - -.fa-fort-awesome-alt:before { - content: "\f3a3"; } - -.fa-forumbee:before { - content: "\f211"; } - -.fa-forward:before { - content: "\f04e"; } - -.fa-foursquare:before { - content: "\f180"; } - -.fa-free-code-camp:before { - content: "\f2c5"; } - -.fa-freebsd:before { - content: "\f3a4"; } - -.fa-frog:before { - content: "\f52e"; } - -.fa-frown:before { - content: "\f119"; } - -.fa-frown-open:before { - content: "\f57a"; } - -.fa-fulcrum:before { - content: "\f50b"; } - -.fa-funnel-dollar:before { - content: "\f662"; } - -.fa-futbol:before { - content: "\f1e3"; } - -.fa-galactic-republic:before { - content: "\f50c"; } - -.fa-galactic-senate:before { - content: "\f50d"; } - -.fa-gamepad:before { - content: "\f11b"; } - -.fa-gas-pump:before { - content: "\f52f"; } - -.fa-gavel:before { - content: "\f0e3"; } - -.fa-gem:before { - content: "\f3a5"; } - -.fa-genderless:before { - content: "\f22d"; } - -.fa-get-pocket:before { - content: "\f265"; } - -.fa-gg:before { - content: "\f260"; } - -.fa-gg-circle:before { - content: "\f261"; } - -.fa-ghost:before { - content: "\f6e2"; } - -.fa-gift:before { - content: "\f06b"; } - -.fa-gifts:before { - content: "\f79c"; } - -.fa-git:before { - content: "\f1d3"; } - -.fa-git-alt:before { - content: "\f841"; } - -.fa-git-square:before { - content: "\f1d2"; } - -.fa-github:before { - content: "\f09b"; } - -.fa-github-alt:before { - content: "\f113"; } - -.fa-github-square:before { - content: "\f092"; } - -.fa-gitkraken:before { - content: "\f3a6"; } - -.fa-gitlab:before { - content: "\f296"; } - -.fa-gitter:before { - content: "\f426"; } - -.fa-glass-cheers:before { - content: "\f79f"; } - -.fa-glass-martini:before { - content: "\f000"; } - -.fa-glass-martini-alt:before { - content: "\f57b"; } - -.fa-glass-whiskey:before { - content: "\f7a0"; } - -.fa-glasses:before { - content: "\f530"; } - -.fa-glide:before { - content: "\f2a5"; } - -.fa-glide-g:before { - content: "\f2a6"; } - -.fa-globe:before { - content: "\f0ac"; } - -.fa-globe-africa:before { - content: "\f57c"; } - -.fa-globe-americas:before { - content: "\f57d"; } - -.fa-globe-asia:before { - content: "\f57e"; } - -.fa-globe-europe:before { - content: "\f7a2"; } - -.fa-gofore:before { - content: "\f3a7"; } - -.fa-golf-ball:before { - content: "\f450"; } - -.fa-goodreads:before { - content: "\f3a8"; } - -.fa-goodreads-g:before { - content: "\f3a9"; } - -.fa-google:before { - content: "\f1a0"; } - -.fa-google-drive:before { - content: "\f3aa"; } - -.fa-google-play:before { - content: "\f3ab"; } - -.fa-google-plus:before { - content: "\f2b3"; } - -.fa-google-plus-g:before { - content: "\f0d5"; } - -.fa-google-plus-square:before { - content: "\f0d4"; } - -.fa-google-wallet:before { - content: "\f1ee"; } - -.fa-gopuram:before { - content: "\f664"; } - -.fa-graduation-cap:before { - content: "\f19d"; } - -.fa-gratipay:before { - content: "\f184"; } - -.fa-grav:before { - content: "\f2d6"; } - -.fa-greater-than:before { - content: "\f531"; } - -.fa-greater-than-equal:before { - content: "\f532"; } - -.fa-grimace:before { - content: "\f57f"; } - -.fa-grin:before { - content: "\f580"; } - -.fa-grin-alt:before { - content: "\f581"; } - -.fa-grin-beam:before { - content: "\f582"; } - -.fa-grin-beam-sweat:before { - content: "\f583"; } - -.fa-grin-hearts:before { - content: "\f584"; } - -.fa-grin-squint:before { - content: "\f585"; } - -.fa-grin-squint-tears:before { - content: "\f586"; } - -.fa-grin-stars:before { - content: "\f587"; } - -.fa-grin-tears:before { - content: "\f588"; } - -.fa-grin-tongue:before { - content: "\f589"; } - -.fa-grin-tongue-squint:before { - content: "\f58a"; } - -.fa-grin-tongue-wink:before { - content: "\f58b"; } - -.fa-grin-wink:before { - content: "\f58c"; } - -.fa-grip-horizontal:before { - content: "\f58d"; } - -.fa-grip-lines:before { - content: "\f7a4"; } - -.fa-grip-lines-vertical:before { - content: "\f7a5"; } - -.fa-grip-vertical:before { - content: "\f58e"; } - -.fa-gripfire:before { - content: "\f3ac"; } - -.fa-grunt:before { - content: "\f3ad"; } - -.fa-guitar:before { - content: "\f7a6"; } - -.fa-gulp:before { - content: "\f3ae"; } - -.fa-h-square:before { - content: "\f0fd"; } - -.fa-hacker-news:before { - content: "\f1d4"; } - -.fa-hacker-news-square:before { - content: "\f3af"; } - -.fa-hackerrank:before { - content: "\f5f7"; } - -.fa-hamburger:before { - content: "\f805"; } - -.fa-hammer:before { - content: "\f6e3"; } - -.fa-hamsa:before { - content: "\f665"; } - -.fa-hand-holding:before { - content: "\f4bd"; } - -.fa-hand-holding-heart:before { - content: "\f4be"; } - -.fa-hand-holding-medical:before { - content: "\f95c"; } - -.fa-hand-holding-usd:before { - content: "\f4c0"; } - -.fa-hand-holding-water:before { - content: "\f4c1"; } - -.fa-hand-lizard:before { - content: "\f258"; } - -.fa-hand-middle-finger:before { - content: "\f806"; } - -.fa-hand-paper:before { - content: "\f256"; } - -.fa-hand-peace:before { - content: "\f25b"; } - -.fa-hand-point-down:before { - content: "\f0a7"; } - -.fa-hand-point-left:before { - content: "\f0a5"; } - -.fa-hand-point-right:before { - content: "\f0a4"; } - -.fa-hand-point-up:before { - content: "\f0a6"; } - -.fa-hand-pointer:before { - content: "\f25a"; } - -.fa-hand-rock:before { - content: "\f255"; } - -.fa-hand-scissors:before { - content: "\f257"; } - -.fa-hand-sparkles:before { - content: "\f95d"; } - -.fa-hand-spock:before { - content: "\f259"; } - -.fa-hands:before { - content: "\f4c2"; } - -.fa-hands-helping:before { - content: "\f4c4"; } - -.fa-hands-wash:before { - content: "\f95e"; } - -.fa-handshake:before { - content: "\f2b5"; } - -.fa-handshake-alt-slash:before { - content: "\f95f"; } - -.fa-handshake-slash:before { - content: "\f960"; } - -.fa-hanukiah:before { - content: "\f6e6"; } - -.fa-hard-hat:before { - content: "\f807"; } - -.fa-hashtag:before { - content: "\f292"; } - -.fa-hat-cowboy:before { - content: "\f8c0"; } - -.fa-hat-cowboy-side:before { - content: "\f8c1"; } - -.fa-hat-wizard:before { - content: "\f6e8"; } - -.fa-hdd:before { - content: "\f0a0"; } - -.fa-head-side-cough:before { - content: "\f961"; } - -.fa-head-side-cough-slash:before { - content: "\f962"; } - -.fa-head-side-mask:before { - content: "\f963"; } - -.fa-head-side-virus:before { - content: "\f964"; } - -.fa-heading:before { - content: "\f1dc"; } - -.fa-headphones:before { - content: "\f025"; } - -.fa-headphones-alt:before { - content: "\f58f"; } - -.fa-headset:before { - content: "\f590"; } - -.fa-heart:before { - content: "\f004"; } - -.fa-heart-broken:before { - content: "\f7a9"; } - -.fa-heartbeat:before { - content: "\f21e"; } - -.fa-helicopter:before { - content: "\f533"; } - -.fa-highlighter:before { - content: "\f591"; } - -.fa-hiking:before { - content: "\f6ec"; } - -.fa-hippo:before { - content: "\f6ed"; } - -.fa-hips:before { - content: "\f452"; } - -.fa-hire-a-helper:before { - content: "\f3b0"; } - -.fa-history:before { - content: "\f1da"; } - -.fa-hockey-puck:before { - content: "\f453"; } - -.fa-holly-berry:before { - content: "\f7aa"; } - -.fa-home:before { - content: "\f015"; } - -.fa-hooli:before { - content: "\f427"; } - -.fa-hornbill:before { - content: "\f592"; } - -.fa-horse:before { - content: "\f6f0"; } - -.fa-horse-head:before { - content: "\f7ab"; } - -.fa-hospital:before { - content: "\f0f8"; } - -.fa-hospital-alt:before { - content: "\f47d"; } - -.fa-hospital-symbol:before { - content: "\f47e"; } - -.fa-hospital-user:before { - content: "\f80d"; } - -.fa-hot-tub:before { - content: "\f593"; } - -.fa-hotdog:before { - content: "\f80f"; } - -.fa-hotel:before { - content: "\f594"; } - -.fa-hotjar:before { - content: "\f3b1"; } - -.fa-hourglass:before { - content: "\f254"; } - -.fa-hourglass-end:before { - content: "\f253"; } - -.fa-hourglass-half:before { - content: "\f252"; } - -.fa-hourglass-start:before { - content: "\f251"; } - -.fa-house-damage:before { - content: "\f6f1"; } - -.fa-house-user:before { - content: "\f965"; } - -.fa-houzz:before { - content: "\f27c"; } - -.fa-hryvnia:before { - content: "\f6f2"; } - -.fa-html5:before { - content: "\f13b"; } - -.fa-hubspot:before { - content: "\f3b2"; } - -.fa-i-cursor:before { - content: "\f246"; } - -.fa-ice-cream:before { - content: "\f810"; } - -.fa-icicles:before { - content: "\f7ad"; } - -.fa-icons:before { - content: "\f86d"; } - -.fa-id-badge:before { - content: "\f2c1"; } - -.fa-id-card:before { - content: "\f2c2"; } - -.fa-id-card-alt:before { - content: "\f47f"; } - -.fa-ideal:before { - content: "\f913"; } - -.fa-igloo:before { - content: "\f7ae"; } - -.fa-image:before { - content: "\f03e"; } - -.fa-images:before { - content: "\f302"; } - -.fa-imdb:before { - content: "\f2d8"; } - -.fa-inbox:before { - content: "\f01c"; } - -.fa-indent:before { - content: "\f03c"; } - -.fa-industry:before { - content: "\f275"; } - -.fa-infinity:before { - content: "\f534"; } - -.fa-info:before { - content: "\f129"; } - -.fa-info-circle:before { - content: "\f05a"; } - -.fa-instagram:before { - content: "\f16d"; } - -.fa-instagram-square:before { - content: "\f955"; } - -.fa-intercom:before { - content: "\f7af"; } - -.fa-internet-explorer:before { - content: "\f26b"; } - -.fa-invision:before { - content: "\f7b0"; } - -.fa-ioxhost:before { - content: "\f208"; } - -.fa-italic:before { - content: "\f033"; } - -.fa-itch-io:before { - content: "\f83a"; } - -.fa-itunes:before { - content: "\f3b4"; } - -.fa-itunes-note:before { - content: "\f3b5"; } - -.fa-java:before { - content: "\f4e4"; } - -.fa-jedi:before { - content: "\f669"; } - -.fa-jedi-order:before { - content: "\f50e"; } - -.fa-jenkins:before { - content: "\f3b6"; } - -.fa-jira:before { - content: "\f7b1"; } - -.fa-joget:before { - content: "\f3b7"; } - -.fa-joint:before { - content: "\f595"; } - -.fa-joomla:before { - content: "\f1aa"; } - -.fa-journal-whills:before { - content: "\f66a"; } - -.fa-js:before { - content: "\f3b8"; } - -.fa-js-square:before { - content: "\f3b9"; } - -.fa-jsfiddle:before { - content: "\f1cc"; } - -.fa-kaaba:before { - content: "\f66b"; } - -.fa-kaggle:before { - content: "\f5fa"; } - -.fa-key:before { - content: "\f084"; } - -.fa-keybase:before { - content: "\f4f5"; } - -.fa-keyboard:before { - content: "\f11c"; } - -.fa-keycdn:before { - content: "\f3ba"; } - -.fa-khanda:before { - content: "\f66d"; } - -.fa-kickstarter:before { - content: "\f3bb"; } - -.fa-kickstarter-k:before { - content: "\f3bc"; } - -.fa-kiss:before { - content: "\f596"; } - -.fa-kiss-beam:before { - content: "\f597"; } - -.fa-kiss-wink-heart:before { - content: "\f598"; } - -.fa-kiwi-bird:before { - content: "\f535"; } - -.fa-korvue:before { - content: "\f42f"; } - -.fa-landmark:before { - content: "\f66f"; } - -.fa-language:before { - content: "\f1ab"; } - -.fa-laptop:before { - content: "\f109"; } - -.fa-laptop-code:before { - content: "\f5fc"; } - -.fa-laptop-house:before { - content: "\f966"; } - -.fa-laptop-medical:before { - content: "\f812"; } - -.fa-laravel:before { - content: "\f3bd"; } - -.fa-lastfm:before { - content: "\f202"; } - -.fa-lastfm-square:before { - content: "\f203"; } - -.fa-laugh:before { - content: "\f599"; } - -.fa-laugh-beam:before { - content: "\f59a"; } - -.fa-laugh-squint:before { - content: "\f59b"; } - -.fa-laugh-wink:before { - content: "\f59c"; } - -.fa-layer-group:before { - content: "\f5fd"; } - -.fa-leaf:before { - content: "\f06c"; } - -.fa-leanpub:before { - content: "\f212"; } - -.fa-lemon:before { - content: "\f094"; } - -.fa-less:before { - content: "\f41d"; } - -.fa-less-than:before { - content: "\f536"; } - -.fa-less-than-equal:before { - content: "\f537"; } - -.fa-level-down-alt:before { - content: "\f3be"; } - -.fa-level-up-alt:before { - content: "\f3bf"; } - -.fa-life-ring:before { - content: "\f1cd"; } - -.fa-lightbulb:before { - content: "\f0eb"; } - -.fa-line:before { - content: "\f3c0"; } - -.fa-link:before { - content: "\f0c1"; } - -.fa-linkedin:before { - content: "\f08c"; } - -.fa-linkedin-in:before { - content: "\f0e1"; } - -.fa-linode:before { - content: "\f2b8"; } - -.fa-linux:before { - content: "\f17c"; } - -.fa-lira-sign:before { - content: "\f195"; } - -.fa-list:before { - content: "\f03a"; } - -.fa-list-alt:before { - content: "\f022"; } - -.fa-list-ol:before { - content: "\f0cb"; } - -.fa-list-ul:before { - content: "\f0ca"; } - -.fa-location-arrow:before { - content: "\f124"; } - -.fa-lock:before { - content: "\f023"; } - -.fa-lock-open:before { - content: "\f3c1"; } - -.fa-long-arrow-alt-down:before { - content: "\f309"; } - -.fa-long-arrow-alt-left:before { - content: "\f30a"; } - -.fa-long-arrow-alt-right:before { - content: "\f30b"; } - -.fa-long-arrow-alt-up:before { - content: "\f30c"; } - -.fa-low-vision:before { - content: "\f2a8"; } - -.fa-luggage-cart:before { - content: "\f59d"; } - -.fa-lungs:before { - content: "\f604"; } - -.fa-lungs-virus:before { - content: "\f967"; } - -.fa-lyft:before { - content: "\f3c3"; } - -.fa-magento:before { - content: "\f3c4"; } - -.fa-magic:before { - content: "\f0d0"; } - -.fa-magnet:before { - content: "\f076"; } - -.fa-mail-bulk:before { - content: "\f674"; } - -.fa-mailchimp:before { - content: "\f59e"; } - -.fa-male:before { - content: "\f183"; } - -.fa-mandalorian:before { - content: "\f50f"; } - -.fa-map:before { - content: "\f279"; } - -.fa-map-marked:before { - content: "\f59f"; } - -.fa-map-marked-alt:before { - content: "\f5a0"; } - -.fa-map-marker:before { - content: "\f041"; } - -.fa-map-marker-alt:before { - content: "\f3c5"; } - -.fa-map-pin:before { - content: "\f276"; } - -.fa-map-signs:before { - content: "\f277"; } - -.fa-markdown:before { - content: "\f60f"; } - -.fa-marker:before { - content: "\f5a1"; } - -.fa-mars:before { - content: "\f222"; } - -.fa-mars-double:before { - content: "\f227"; } - -.fa-mars-stroke:before { - content: "\f229"; } - -.fa-mars-stroke-h:before { - content: "\f22b"; } - -.fa-mars-stroke-v:before { - content: "\f22a"; } - -.fa-mask:before { - content: "\f6fa"; } - -.fa-mastodon:before { - content: "\f4f6"; } - -.fa-maxcdn:before { - content: "\f136"; } - -.fa-mdb:before { - content: "\f8ca"; } - -.fa-medal:before { - content: "\f5a2"; } - -.fa-medapps:before { - content: "\f3c6"; } - -.fa-medium:before { - content: "\f23a"; } - -.fa-medium-m:before { - content: "\f3c7"; } - -.fa-medkit:before { - content: "\f0fa"; } - -.fa-medrt:before { - content: "\f3c8"; } - -.fa-meetup:before { - content: "\f2e0"; } - -.fa-megaport:before { - content: "\f5a3"; } - -.fa-meh:before { - content: "\f11a"; } - -.fa-meh-blank:before { - content: "\f5a4"; } - -.fa-meh-rolling-eyes:before { - content: "\f5a5"; } - -.fa-memory:before { - content: "\f538"; } - -.fa-mendeley:before { - content: "\f7b3"; } - -.fa-menorah:before { - content: "\f676"; } - -.fa-mercury:before { - content: "\f223"; } - -.fa-meteor:before { - content: "\f753"; } - -.fa-microblog:before { - content: "\f91a"; } - -.fa-microchip:before { - content: "\f2db"; } - -.fa-microphone:before { - content: "\f130"; } - -.fa-microphone-alt:before { - content: "\f3c9"; } - -.fa-microphone-alt-slash:before { - content: "\f539"; } - -.fa-microphone-slash:before { - content: "\f131"; } - -.fa-microscope:before { - content: "\f610"; } - -.fa-microsoft:before { - content: "\f3ca"; } - -.fa-minus:before { - content: "\f068"; } - -.fa-minus-circle:before { - content: "\f056"; } - -.fa-minus-square:before { - content: "\f146"; } - -.fa-mitten:before { - content: "\f7b5"; } - -.fa-mix:before { - content: "\f3cb"; } - -.fa-mixcloud:before { - content: "\f289"; } - -.fa-mixer:before { - content: "\f956"; } - -.fa-mizuni:before { - content: "\f3cc"; } - -.fa-mobile:before { - content: "\f10b"; } - -.fa-mobile-alt:before { - content: "\f3cd"; } - -.fa-modx:before { - content: "\f285"; } - -.fa-monero:before { - content: "\f3d0"; } - -.fa-money-bill:before { - content: "\f0d6"; } - -.fa-money-bill-alt:before { - content: "\f3d1"; } - -.fa-money-bill-wave:before { - content: "\f53a"; } - -.fa-money-bill-wave-alt:before { - content: "\f53b"; } - -.fa-money-check:before { - content: "\f53c"; } - -.fa-money-check-alt:before { - content: "\f53d"; } - -.fa-monument:before { - content: "\f5a6"; } - -.fa-moon:before { - content: "\f186"; } - -.fa-mortar-pestle:before { - content: "\f5a7"; } - -.fa-mosque:before { - content: "\f678"; } - -.fa-motorcycle:before { - content: "\f21c"; } - -.fa-mountain:before { - content: "\f6fc"; } - -.fa-mouse:before { - content: "\f8cc"; } - -.fa-mouse-pointer:before { - content: "\f245"; } - -.fa-mug-hot:before { - content: "\f7b6"; } - -.fa-music:before { - content: "\f001"; } - -.fa-napster:before { - content: "\f3d2"; } - -.fa-neos:before { - content: "\f612"; } - -.fa-network-wired:before { - content: "\f6ff"; } - -.fa-neuter:before { - content: "\f22c"; } - -.fa-newspaper:before { - content: "\f1ea"; } - -.fa-nimblr:before { - content: "\f5a8"; } - -.fa-node:before { - content: "\f419"; } - -.fa-node-js:before { - content: "\f3d3"; } - -.fa-not-equal:before { - content: "\f53e"; } - -.fa-notes-medical:before { - content: "\f481"; } - -.fa-npm:before { - content: "\f3d4"; } - -.fa-ns8:before { - content: "\f3d5"; } - -.fa-nutritionix:before { - content: "\f3d6"; } - -.fa-object-group:before { - content: "\f247"; } - -.fa-object-ungroup:before { - content: "\f248"; } - -.fa-odnoklassniki:before { - content: "\f263"; } - -.fa-odnoklassniki-square:before { - content: "\f264"; } - -.fa-oil-can:before { - content: "\f613"; } - -.fa-old-republic:before { - content: "\f510"; } - -.fa-om:before { - content: "\f679"; } - -.fa-opencart:before { - content: "\f23d"; } - -.fa-openid:before { - content: "\f19b"; } - -.fa-opera:before { - content: "\f26a"; } - -.fa-optin-monster:before { - content: "\f23c"; } - -.fa-orcid:before { - content: "\f8d2"; } - -.fa-osi:before { - content: "\f41a"; } - -.fa-otter:before { - content: "\f700"; } - -.fa-outdent:before { - content: "\f03b"; } - -.fa-page4:before { - content: "\f3d7"; } - -.fa-pagelines:before { - content: "\f18c"; } - -.fa-pager:before { - content: "\f815"; } - -.fa-paint-brush:before { - content: "\f1fc"; } - -.fa-paint-roller:before { - content: "\f5aa"; } - -.fa-palette:before { - content: "\f53f"; } - -.fa-palfed:before { - content: "\f3d8"; } - -.fa-pallet:before { - content: "\f482"; } - -.fa-paper-plane:before { - content: "\f1d8"; } - -.fa-paperclip:before { - content: "\f0c6"; } - -.fa-parachute-box:before { - content: "\f4cd"; } - -.fa-paragraph:before { - content: "\f1dd"; } - -.fa-parking:before { - content: "\f540"; } - -.fa-passport:before { - content: "\f5ab"; } - -.fa-pastafarianism:before { - content: "\f67b"; } - -.fa-paste:before { - content: "\f0ea"; } - -.fa-patreon:before { - content: "\f3d9"; } - -.fa-pause:before { - content: "\f04c"; } - -.fa-pause-circle:before { - content: "\f28b"; } - -.fa-paw:before { - content: "\f1b0"; } - -.fa-paypal:before { - content: "\f1ed"; } - -.fa-peace:before { - content: "\f67c"; } - -.fa-pen:before { - content: "\f304"; } - -.fa-pen-alt:before { - content: "\f305"; } - -.fa-pen-fancy:before { - content: "\f5ac"; } - -.fa-pen-nib:before { - content: "\f5ad"; } - -.fa-pen-square:before { - content: "\f14b"; } - -.fa-pencil-alt:before { - content: "\f303"; } - -.fa-pencil-ruler:before { - content: "\f5ae"; } - -.fa-penny-arcade:before { - content: "\f704"; } - -.fa-people-arrows:before { - content: "\f968"; } - -.fa-people-carry:before { - content: "\f4ce"; } - -.fa-pepper-hot:before { - content: "\f816"; } - -.fa-percent:before { - content: "\f295"; } - -.fa-percentage:before { - content: "\f541"; } - -.fa-periscope:before { - content: "\f3da"; } - -.fa-person-booth:before { - content: "\f756"; } - -.fa-phabricator:before { - content: "\f3db"; } - -.fa-phoenix-framework:before { - content: "\f3dc"; } - -.fa-phoenix-squadron:before { - content: "\f511"; } - -.fa-phone:before { - content: "\f095"; } - -.fa-phone-alt:before { - content: "\f879"; } - -.fa-phone-slash:before { - content: "\f3dd"; } - -.fa-phone-square:before { - content: "\f098"; } - -.fa-phone-square-alt:before { - content: "\f87b"; } - -.fa-phone-volume:before { - content: "\f2a0"; } - -.fa-photo-video:before { - content: "\f87c"; } - -.fa-php:before { - content: "\f457"; } - -.fa-pied-piper:before { - content: "\f2ae"; } - -.fa-pied-piper-alt:before { - content: "\f1a8"; } - -.fa-pied-piper-hat:before { - content: "\f4e5"; } - -.fa-pied-piper-pp:before { - content: "\f1a7"; } - -.fa-pied-piper-square:before { - content: "\f91e"; } - -.fa-piggy-bank:before { - content: "\f4d3"; } - -.fa-pills:before { - content: "\f484"; } - -.fa-pinterest:before { - content: "\f0d2"; } - -.fa-pinterest-p:before { - content: "\f231"; } - -.fa-pinterest-square:before { - content: "\f0d3"; } - -.fa-pizza-slice:before { - content: "\f818"; } - -.fa-place-of-worship:before { - content: "\f67f"; } - -.fa-plane:before { - content: "\f072"; } - -.fa-plane-arrival:before { - content: "\f5af"; } - -.fa-plane-departure:before { - content: "\f5b0"; } - -.fa-plane-slash:before { - content: "\f969"; } - -.fa-play:before { - content: "\f04b"; } - -.fa-play-circle:before { - content: "\f144"; } - -.fa-playstation:before { - content: "\f3df"; } - -.fa-plug:before { - content: "\f1e6"; } - -.fa-plus:before { - content: "\f067"; } - -.fa-plus-circle:before { - content: "\f055"; } - -.fa-plus-square:before { - content: "\f0fe"; } - -.fa-podcast:before { - content: "\f2ce"; } - -.fa-poll:before { - content: "\f681"; } - -.fa-poll-h:before { - content: "\f682"; } - -.fa-poo:before { - content: "\f2fe"; } - -.fa-poo-storm:before { - content: "\f75a"; } - -.fa-poop:before { - content: "\f619"; } - -.fa-portrait:before { - content: "\f3e0"; } - -.fa-pound-sign:before { - content: "\f154"; } - -.fa-power-off:before { - content: "\f011"; } - -.fa-pray:before { - content: "\f683"; } - -.fa-praying-hands:before { - content: "\f684"; } - -.fa-prescription:before { - content: "\f5b1"; } - -.fa-prescription-bottle:before { - content: "\f485"; } - -.fa-prescription-bottle-alt:before { - content: "\f486"; } - -.fa-print:before { - content: "\f02f"; } - -.fa-procedures:before { - content: "\f487"; } - -.fa-product-hunt:before { - content: "\f288"; } - -.fa-project-diagram:before { - content: "\f542"; } - -.fa-pump-medical:before { - content: "\f96a"; } - -.fa-pump-soap:before { - content: "\f96b"; } - -.fa-pushed:before { - content: "\f3e1"; } - -.fa-puzzle-piece:before { - content: "\f12e"; } - -.fa-python:before { - content: "\f3e2"; } - -.fa-qq:before { - content: "\f1d6"; } - -.fa-qrcode:before { - content: "\f029"; } - -.fa-question:before { - content: "\f128"; } - -.fa-question-circle:before { - content: "\f059"; } - -.fa-quidditch:before { - content: "\f458"; } - -.fa-quinscape:before { - content: "\f459"; } - -.fa-quora:before { - content: "\f2c4"; } - -.fa-quote-left:before { - content: "\f10d"; } - -.fa-quote-right:before { - content: "\f10e"; } - -.fa-quran:before { - content: "\f687"; } - -.fa-r-project:before { - content: "\f4f7"; } - -.fa-radiation:before { - content: "\f7b9"; } - -.fa-radiation-alt:before { - content: "\f7ba"; } - -.fa-rainbow:before { - content: "\f75b"; } - -.fa-random:before { - content: "\f074"; } - -.fa-raspberry-pi:before { - content: "\f7bb"; } - -.fa-ravelry:before { - content: "\f2d9"; } - -.fa-react:before { - content: "\f41b"; } - -.fa-reacteurope:before { - content: "\f75d"; } - -.fa-readme:before { - content: "\f4d5"; } - -.fa-rebel:before { - content: "\f1d0"; } - -.fa-receipt:before { - content: "\f543"; } - -.fa-record-vinyl:before { - content: "\f8d9"; } - -.fa-recycle:before { - content: "\f1b8"; } - -.fa-red-river:before { - content: "\f3e3"; } - -.fa-reddit:before { - content: "\f1a1"; } - -.fa-reddit-alien:before { - content: "\f281"; } - -.fa-reddit-square:before { - content: "\f1a2"; } - -.fa-redhat:before { - content: "\f7bc"; } - -.fa-redo:before { - content: "\f01e"; } - -.fa-redo-alt:before { - content: "\f2f9"; } - -.fa-registered:before { - content: "\f25d"; } - -.fa-remove-format:before { - content: "\f87d"; } - -.fa-renren:before { - content: "\f18b"; } - -.fa-reply:before { - content: "\f3e5"; } - -.fa-reply-all:before { - content: "\f122"; } - -.fa-replyd:before { - content: "\f3e6"; } - -.fa-republican:before { - content: "\f75e"; } - -.fa-researchgate:before { - content: "\f4f8"; } - -.fa-resolving:before { - content: "\f3e7"; } - -.fa-restroom:before { - content: "\f7bd"; } - -.fa-retweet:before { - content: "\f079"; } - -.fa-rev:before { - content: "\f5b2"; } - -.fa-ribbon:before { - content: "\f4d6"; } - -.fa-ring:before { - content: "\f70b"; } - -.fa-road:before { - content: "\f018"; } - -.fa-robot:before { - content: "\f544"; } - -.fa-rocket:before { - content: "\f135"; } - -.fa-rocketchat:before { - content: "\f3e8"; } - -.fa-rockrms:before { - content: "\f3e9"; } - -.fa-route:before { - content: "\f4d7"; } - -.fa-rss:before { - content: "\f09e"; } - -.fa-rss-square:before { - content: "\f143"; } - -.fa-ruble-sign:before { - content: "\f158"; } - -.fa-ruler:before { - content: "\f545"; } - -.fa-ruler-combined:before { - content: "\f546"; } - -.fa-ruler-horizontal:before { - content: "\f547"; } - -.fa-ruler-vertical:before { - content: "\f548"; } - -.fa-running:before { - content: "\f70c"; } - -.fa-rupee-sign:before { - content: "\f156"; } - -.fa-sad-cry:before { - content: "\f5b3"; } - -.fa-sad-tear:before { - content: "\f5b4"; } - -.fa-safari:before { - content: "\f267"; } - -.fa-salesforce:before { - content: "\f83b"; } - -.fa-sass:before { - content: "\f41e"; } - -.fa-satellite:before { - content: "\f7bf"; } - -.fa-satellite-dish:before { - content: "\f7c0"; } - -.fa-save:before { - content: "\f0c7"; } - -.fa-schlix:before { - content: "\f3ea"; } - -.fa-school:before { - content: "\f549"; } - -.fa-screwdriver:before { - content: "\f54a"; } - -.fa-scribd:before { - content: "\f28a"; } - -.fa-scroll:before { - content: "\f70e"; } - -.fa-sd-card:before { - content: "\f7c2"; } - -.fa-search:before { - content: "\f002"; } - -.fa-search-dollar:before { - content: "\f688"; } - -.fa-search-location:before { - content: "\f689"; } - -.fa-search-minus:before { - content: "\f010"; } - -.fa-search-plus:before { - content: "\f00e"; } - -.fa-searchengin:before { - content: "\f3eb"; } - -.fa-seedling:before { - content: "\f4d8"; } - -.fa-sellcast:before { - content: "\f2da"; } - -.fa-sellsy:before { - content: "\f213"; } - -.fa-server:before { - content: "\f233"; } - -.fa-servicestack:before { - content: "\f3ec"; } - -.fa-shapes:before { - content: "\f61f"; } - -.fa-share:before { - content: "\f064"; } - -.fa-share-alt:before { - content: "\f1e0"; } - -.fa-share-alt-square:before { - content: "\f1e1"; } - -.fa-share-square:before { - content: "\f14d"; } - -.fa-shekel-sign:before { - content: "\f20b"; } - -.fa-shield-alt:before { - content: "\f3ed"; } - -.fa-shield-virus:before { - content: "\f96c"; } - -.fa-ship:before { - content: "\f21a"; } - -.fa-shipping-fast:before { - content: "\f48b"; } - -.fa-shirtsinbulk:before { - content: "\f214"; } - -.fa-shoe-prints:before { - content: "\f54b"; } - -.fa-shopify:before { - content: "\f957"; } - -.fa-shopping-bag:before { - content: "\f290"; } - -.fa-shopping-basket:before { - content: "\f291"; } - -.fa-shopping-cart:before { - content: "\f07a"; } - -.fa-shopware:before { - content: "\f5b5"; } - -.fa-shower:before { - content: "\f2cc"; } - -.fa-shuttle-van:before { - content: "\f5b6"; } - -.fa-sign:before { - content: "\f4d9"; } - -.fa-sign-in-alt:before { - content: "\f2f6"; } - -.fa-sign-language:before { - content: "\f2a7"; } - -.fa-sign-out-alt:before { - content: "\f2f5"; } - -.fa-signal:before { - content: "\f012"; } - -.fa-signature:before { - content: "\f5b7"; } - -.fa-sim-card:before { - content: "\f7c4"; } - -.fa-simplybuilt:before { - content: "\f215"; } - -.fa-sistrix:before { - content: "\f3ee"; } - -.fa-sitemap:before { - content: "\f0e8"; } - -.fa-sith:before { - content: "\f512"; } - -.fa-skating:before { - content: "\f7c5"; } - -.fa-sketch:before { - content: "\f7c6"; } - -.fa-skiing:before { - content: "\f7c9"; } - -.fa-skiing-nordic:before { - content: "\f7ca"; } - -.fa-skull:before { - content: "\f54c"; } - -.fa-skull-crossbones:before { - content: "\f714"; } - -.fa-skyatlas:before { - content: "\f216"; } - -.fa-skype:before { - content: "\f17e"; } - -.fa-slack:before { - content: "\f198"; } - -.fa-slack-hash:before { - content: "\f3ef"; } - -.fa-slash:before { - content: "\f715"; } - -.fa-sleigh:before { - content: "\f7cc"; } - -.fa-sliders-h:before { - content: "\f1de"; } - -.fa-slideshare:before { - content: "\f1e7"; } - -.fa-smile:before { - content: "\f118"; } - -.fa-smile-beam:before { - content: "\f5b8"; } - -.fa-smile-wink:before { - content: "\f4da"; } - -.fa-smog:before { - content: "\f75f"; } - -.fa-smoking:before { - content: "\f48d"; } - -.fa-smoking-ban:before { - content: "\f54d"; } - -.fa-sms:before { - content: "\f7cd"; } - -.fa-snapchat:before { - content: "\f2ab"; } - -.fa-snapchat-ghost:before { - content: "\f2ac"; } - -.fa-snapchat-square:before { - content: "\f2ad"; } - -.fa-snowboarding:before { - content: "\f7ce"; } - -.fa-snowflake:before { - content: "\f2dc"; } - -.fa-snowman:before { - content: "\f7d0"; } - -.fa-snowplow:before { - content: "\f7d2"; } - -.fa-soap:before { - content: "\f96e"; } - -.fa-socks:before { - content: "\f696"; } - -.fa-solar-panel:before { - content: "\f5ba"; } - -.fa-sort:before { - content: "\f0dc"; } - -.fa-sort-alpha-down:before { - content: "\f15d"; } - -.fa-sort-alpha-down-alt:before { - content: "\f881"; } - -.fa-sort-alpha-up:before { - content: "\f15e"; } - -.fa-sort-alpha-up-alt:before { - content: "\f882"; } - -.fa-sort-amount-down:before { - content: "\f160"; } - -.fa-sort-amount-down-alt:before { - content: "\f884"; } - -.fa-sort-amount-up:before { - content: "\f161"; } - -.fa-sort-amount-up-alt:before { - content: "\f885"; } - -.fa-sort-down:before { - content: "\f0dd"; } - -.fa-sort-numeric-down:before { - content: "\f162"; } - -.fa-sort-numeric-down-alt:before { - content: "\f886"; } - -.fa-sort-numeric-up:before { - content: "\f163"; } - -.fa-sort-numeric-up-alt:before { - content: "\f887"; } - -.fa-sort-up:before { - content: "\f0de"; } - -.fa-soundcloud:before { - content: "\f1be"; } - -.fa-sourcetree:before { - content: "\f7d3"; } - -.fa-spa:before { - content: "\f5bb"; } - -.fa-space-shuttle:before { - content: "\f197"; } - -.fa-speakap:before { - content: "\f3f3"; } - -.fa-speaker-deck:before { - content: "\f83c"; } - -.fa-spell-check:before { - content: "\f891"; } - -.fa-spider:before { - content: "\f717"; } - -.fa-spinner:before { - content: "\f110"; } - -.fa-splotch:before { - content: "\f5bc"; } - -.fa-spotify:before { - content: "\f1bc"; } - -.fa-spray-can:before { - content: "\f5bd"; } - -.fa-square:before { - content: "\f0c8"; } - -.fa-square-full:before { - content: "\f45c"; } - -.fa-square-root-alt:before { - content: "\f698"; } - -.fa-squarespace:before { - content: "\f5be"; } - -.fa-stack-exchange:before { - content: "\f18d"; } - -.fa-stack-overflow:before { - content: "\f16c"; } - -.fa-stackpath:before { - content: "\f842"; } - -.fa-stamp:before { - content: "\f5bf"; } - -.fa-star:before { - content: "\f005"; } - -.fa-star-and-crescent:before { - content: "\f699"; } - -.fa-star-half:before { - content: "\f089"; } - -.fa-star-half-alt:before { - content: "\f5c0"; } - -.fa-star-of-david:before { - content: "\f69a"; } - -.fa-star-of-life:before { - content: "\f621"; } - -.fa-staylinked:before { - content: "\f3f5"; } - -.fa-steam:before { - content: "\f1b6"; } - -.fa-steam-square:before { - content: "\f1b7"; } - -.fa-steam-symbol:before { - content: "\f3f6"; } - -.fa-step-backward:before { - content: "\f048"; } - -.fa-step-forward:before { - content: "\f051"; } - -.fa-stethoscope:before { - content: "\f0f1"; } - -.fa-sticker-mule:before { - content: "\f3f7"; } - -.fa-sticky-note:before { - content: "\f249"; } - -.fa-stop:before { - content: "\f04d"; } - -.fa-stop-circle:before { - content: "\f28d"; } - -.fa-stopwatch:before { - content: "\f2f2"; } - -.fa-stopwatch-20:before { - content: "\f96f"; } - -.fa-store:before { - content: "\f54e"; } - -.fa-store-alt:before { - content: "\f54f"; } - -.fa-store-alt-slash:before { - content: "\f970"; } - -.fa-store-slash:before { - content: "\f971"; } - -.fa-strava:before { - content: "\f428"; } - -.fa-stream:before { - content: "\f550"; } - -.fa-street-view:before { - content: "\f21d"; } - -.fa-strikethrough:before { - content: "\f0cc"; } - -.fa-stripe:before { - content: "\f429"; } - -.fa-stripe-s:before { - content: "\f42a"; } - -.fa-stroopwafel:before { - content: "\f551"; } - -.fa-studiovinari:before { - content: "\f3f8"; } - -.fa-stumbleupon:before { - content: "\f1a4"; } - -.fa-stumbleupon-circle:before { - content: "\f1a3"; } - -.fa-subscript:before { - content: "\f12c"; } - -.fa-subway:before { - content: "\f239"; } - -.fa-suitcase:before { - content: "\f0f2"; } - -.fa-suitcase-rolling:before { - content: "\f5c1"; } - -.fa-sun:before { - content: "\f185"; } - -.fa-superpowers:before { - content: "\f2dd"; } - -.fa-superscript:before { - content: "\f12b"; } - -.fa-supple:before { - content: "\f3f9"; } - -.fa-surprise:before { - content: "\f5c2"; } - -.fa-suse:before { - content: "\f7d6"; } - -.fa-swatchbook:before { - content: "\f5c3"; } - -.fa-swift:before { - content: "\f8e1"; } - -.fa-swimmer:before { - content: "\f5c4"; } - -.fa-swimming-pool:before { - content: "\f5c5"; } - -.fa-symfony:before { - content: "\f83d"; } - -.fa-synagogue:before { - content: "\f69b"; } - -.fa-sync:before { - content: "\f021"; } - -.fa-sync-alt:before { - content: "\f2f1"; } - -.fa-syringe:before { - content: "\f48e"; } - -.fa-table:before { - content: "\f0ce"; } - -.fa-table-tennis:before { - content: "\f45d"; } - -.fa-tablet:before { - content: "\f10a"; } - -.fa-tablet-alt:before { - content: "\f3fa"; } - -.fa-tablets:before { - content: "\f490"; } - -.fa-tachometer-alt:before { - content: "\f3fd"; } - -.fa-tag:before { - content: "\f02b"; } - -.fa-tags:before { - content: "\f02c"; } - -.fa-tape:before { - content: "\f4db"; } - -.fa-tasks:before { - content: "\f0ae"; } - -.fa-taxi:before { - content: "\f1ba"; } - -.fa-teamspeak:before { - content: "\f4f9"; } - -.fa-teeth:before { - content: "\f62e"; } - -.fa-teeth-open:before { - content: "\f62f"; } - -.fa-telegram:before { - content: "\f2c6"; } - -.fa-telegram-plane:before { - content: "\f3fe"; } - -.fa-temperature-high:before { - content: "\f769"; } - -.fa-temperature-low:before { - content: "\f76b"; } - -.fa-tencent-weibo:before { - content: "\f1d5"; } - -.fa-tenge:before { - content: "\f7d7"; } - -.fa-terminal:before { - content: "\f120"; } - -.fa-text-height:before { - content: "\f034"; } - -.fa-text-width:before { - content: "\f035"; } - -.fa-th:before { - content: "\f00a"; } - -.fa-th-large:before { - content: "\f009"; } - -.fa-th-list:before { - content: "\f00b"; } - -.fa-the-red-yeti:before { - content: "\f69d"; } - -.fa-theater-masks:before { - content: "\f630"; } - -.fa-themeco:before { - content: "\f5c6"; } - -.fa-themeisle:before { - content: "\f2b2"; } - -.fa-thermometer:before { - content: "\f491"; } - -.fa-thermometer-empty:before { - content: "\f2cb"; } - -.fa-thermometer-full:before { - content: "\f2c7"; } - -.fa-thermometer-half:before { - content: "\f2c9"; } - -.fa-thermometer-quarter:before { - content: "\f2ca"; } - -.fa-thermometer-three-quarters:before { - content: "\f2c8"; } - -.fa-think-peaks:before { - content: "\f731"; } - -.fa-thumbs-down:before { - content: "\f165"; } - -.fa-thumbs-up:before { - content: "\f164"; } - -.fa-thumbtack:before { - content: "\f08d"; } - -.fa-ticket-alt:before { - content: "\f3ff"; } - -.fa-times:before { - content: "\f00d"; } - -.fa-times-circle:before { - content: "\f057"; } - -.fa-tint:before { - content: "\f043"; } - -.fa-tint-slash:before { - content: "\f5c7"; } - -.fa-tired:before { - content: "\f5c8"; } - -.fa-toggle-off:before { - content: "\f204"; } - -.fa-toggle-on:before { - content: "\f205"; } - -.fa-toilet:before { - content: "\f7d8"; } - -.fa-toilet-paper:before { - content: "\f71e"; } - -.fa-toilet-paper-slash:before { - content: "\f972"; } - -.fa-toolbox:before { - content: "\f552"; } - -.fa-tools:before { - content: "\f7d9"; } - -.fa-tooth:before { - content: "\f5c9"; } - -.fa-torah:before { - content: "\f6a0"; } - -.fa-torii-gate:before { - content: "\f6a1"; } - -.fa-tractor:before { - content: "\f722"; } - -.fa-trade-federation:before { - content: "\f513"; } - -.fa-trademark:before { - content: "\f25c"; } - -.fa-traffic-light:before { - content: "\f637"; } - -.fa-trailer:before { - content: "\f941"; } - -.fa-train:before { - content: "\f238"; } - -.fa-tram:before { - content: "\f7da"; } - -.fa-transgender:before { - content: "\f224"; } - -.fa-transgender-alt:before { - content: "\f225"; } - -.fa-trash:before { - content: "\f1f8"; } - -.fa-trash-alt:before { - content: "\f2ed"; } - -.fa-trash-restore:before { - content: "\f829"; } - -.fa-trash-restore-alt:before { - content: "\f82a"; } - -.fa-tree:before { - content: "\f1bb"; } - -.fa-trello:before { - content: "\f181"; } - -.fa-tripadvisor:before { - content: "\f262"; } - -.fa-trophy:before { - content: "\f091"; } - -.fa-truck:before { - content: "\f0d1"; } - -.fa-truck-loading:before { - content: "\f4de"; } - -.fa-truck-monster:before { - content: "\f63b"; } - -.fa-truck-moving:before { - content: "\f4df"; } - -.fa-truck-pickup:before { - content: "\f63c"; } - -.fa-tshirt:before { - content: "\f553"; } - -.fa-tty:before { - content: "\f1e4"; } - -.fa-tumblr:before { - content: "\f173"; } - -.fa-tumblr-square:before { - content: "\f174"; } - -.fa-tv:before { - content: "\f26c"; } - -.fa-twitch:before { - content: "\f1e8"; } - -.fa-twitter:before { - content: "\f099"; } - -.fa-twitter-square:before { - content: "\f081"; } - -.fa-typo3:before { - content: "\f42b"; } - -.fa-uber:before { - content: "\f402"; } - -.fa-ubuntu:before { - content: "\f7df"; } - -.fa-uikit:before { - content: "\f403"; } - -.fa-umbraco:before { - content: "\f8e8"; } - -.fa-umbrella:before { - content: "\f0e9"; } - -.fa-umbrella-beach:before { - content: "\f5ca"; } - -.fa-underline:before { - content: "\f0cd"; } - -.fa-undo:before { - content: "\f0e2"; } - -.fa-undo-alt:before { - content: "\f2ea"; } - -.fa-uniregistry:before { - content: "\f404"; } - -.fa-unity:before { - content: "\f949"; } - -.fa-universal-access:before { - content: "\f29a"; } - -.fa-university:before { - content: "\f19c"; } - -.fa-unlink:before { - content: "\f127"; } - -.fa-unlock:before { - content: "\f09c"; } - -.fa-unlock-alt:before { - content: "\f13e"; } - -.fa-untappd:before { - content: "\f405"; } - -.fa-upload:before { - content: "\f093"; } - -.fa-ups:before { - content: "\f7e0"; } - -.fa-usb:before { - content: "\f287"; } - -.fa-user:before { - content: "\f007"; } - -.fa-user-alt:before { - content: "\f406"; } - -.fa-user-alt-slash:before { - content: "\f4fa"; } - -.fa-user-astronaut:before { - content: "\f4fb"; } - -.fa-user-check:before { - content: "\f4fc"; } - -.fa-user-circle:before { - content: "\f2bd"; } - -.fa-user-clock:before { - content: "\f4fd"; } - -.fa-user-cog:before { - content: "\f4fe"; } - -.fa-user-edit:before { - content: "\f4ff"; } - -.fa-user-friends:before { - content: "\f500"; } - -.fa-user-graduate:before { - content: "\f501"; } - -.fa-user-injured:before { - content: "\f728"; } - -.fa-user-lock:before { - content: "\f502"; } - -.fa-user-md:before { - content: "\f0f0"; } - -.fa-user-minus:before { - content: "\f503"; } - -.fa-user-ninja:before { - content: "\f504"; } - -.fa-user-nurse:before { - content: "\f82f"; } - -.fa-user-plus:before { - content: "\f234"; } - -.fa-user-secret:before { - content: "\f21b"; } - -.fa-user-shield:before { - content: "\f505"; } - -.fa-user-slash:before { - content: "\f506"; } - -.fa-user-tag:before { - content: "\f507"; } - -.fa-user-tie:before { - content: "\f508"; } - -.fa-user-times:before { - content: "\f235"; } - -.fa-users:before { - content: "\f0c0"; } - -.fa-users-cog:before { - content: "\f509"; } - -.fa-usps:before { - content: "\f7e1"; } - -.fa-ussunnah:before { - content: "\f407"; } - -.fa-utensil-spoon:before { - content: "\f2e5"; } - -.fa-utensils:before { - content: "\f2e7"; } - -.fa-vaadin:before { - content: "\f408"; } - -.fa-vector-square:before { - content: "\f5cb"; } - -.fa-venus:before { - content: "\f221"; } - -.fa-venus-double:before { - content: "\f226"; } - -.fa-venus-mars:before { - content: "\f228"; } - -.fa-viacoin:before { - content: "\f237"; } - -.fa-viadeo:before { - content: "\f2a9"; } - -.fa-viadeo-square:before { - content: "\f2aa"; } - -.fa-vial:before { - content: "\f492"; } - -.fa-vials:before { - content: "\f493"; } - -.fa-viber:before { - content: "\f409"; } - -.fa-video:before { - content: "\f03d"; } - -.fa-video-slash:before { - content: "\f4e2"; } - -.fa-vihara:before { - content: "\f6a7"; } - -.fa-vimeo:before { - content: "\f40a"; } - -.fa-vimeo-square:before { - content: "\f194"; } - -.fa-vimeo-v:before { - content: "\f27d"; } - -.fa-vine:before { - content: "\f1ca"; } - -.fa-virus:before { - content: "\f974"; } - -.fa-virus-slash:before { - content: "\f975"; } - -.fa-viruses:before { - content: "\f976"; } - -.fa-vk:before { - content: "\f189"; } - -.fa-vnv:before { - content: "\f40b"; } - -.fa-voicemail:before { - content: "\f897"; } - -.fa-volleyball-ball:before { - content: "\f45f"; } - -.fa-volume-down:before { - content: "\f027"; } - -.fa-volume-mute:before { - content: "\f6a9"; } - -.fa-volume-off:before { - content: "\f026"; } - -.fa-volume-up:before { - content: "\f028"; } - -.fa-vote-yea:before { - content: "\f772"; } - -.fa-vr-cardboard:before { - content: "\f729"; } - -.fa-vuejs:before { - content: "\f41f"; } - -.fa-walking:before { - content: "\f554"; } - -.fa-wallet:before { - content: "\f555"; } - -.fa-warehouse:before { - content: "\f494"; } - -.fa-water:before { - content: "\f773"; } - -.fa-wave-square:before { - content: "\f83e"; } - -.fa-waze:before { - content: "\f83f"; } - -.fa-weebly:before { - content: "\f5cc"; } - -.fa-weibo:before { - content: "\f18a"; } - -.fa-weight:before { - content: "\f496"; } - -.fa-weight-hanging:before { - content: "\f5cd"; } - -.fa-weixin:before { - content: "\f1d7"; } - -.fa-whatsapp:before { - content: "\f232"; } - -.fa-whatsapp-square:before { - content: "\f40c"; } - -.fa-wheelchair:before { - content: "\f193"; } - -.fa-whmcs:before { - content: "\f40d"; } - -.fa-wifi:before { - content: "\f1eb"; } - -.fa-wikipedia-w:before { - content: "\f266"; } - -.fa-wind:before { - content: "\f72e"; } - -.fa-window-close:before { - content: "\f410"; } - -.fa-window-maximize:before { - content: "\f2d0"; } - -.fa-window-minimize:before { - content: "\f2d1"; } - -.fa-window-restore:before { - content: "\f2d2"; } - -.fa-windows:before { - content: "\f17a"; } - -.fa-wine-bottle:before { - content: "\f72f"; } - -.fa-wine-glass:before { - content: "\f4e3"; } - -.fa-wine-glass-alt:before { - content: "\f5ce"; } - -.fa-wix:before { - content: "\f5cf"; } - -.fa-wizards-of-the-coast:before { - content: "\f730"; } - -.fa-wolf-pack-battalion:before { - content: "\f514"; } - -.fa-won-sign:before { - content: "\f159"; } - -.fa-wordpress:before { - content: "\f19a"; } - -.fa-wordpress-simple:before { - content: "\f411"; } - -.fa-wpbeginner:before { - content: "\f297"; } - -.fa-wpexplorer:before { - content: "\f2de"; } - -.fa-wpforms:before { - content: "\f298"; } - -.fa-wpressr:before { - content: "\f3e4"; } - -.fa-wrench:before { - content: "\f0ad"; } - -.fa-x-ray:before { - content: "\f497"; } - -.fa-xbox:before { - content: "\f412"; } - -.fa-xing:before { - content: "\f168"; } - -.fa-xing-square:before { - content: "\f169"; } - -.fa-y-combinator:before { - content: "\f23b"; } - -.fa-yahoo:before { - content: "\f19e"; } - -.fa-yammer:before { - content: "\f840"; } - -.fa-yandex:before { - content: "\f413"; } - -.fa-yandex-international:before { - content: "\f414"; } - -.fa-yarn:before { - content: "\f7e3"; } - -.fa-yelp:before { - content: "\f1e9"; } - -.fa-yen-sign:before { - content: "\f157"; } - -.fa-yin-yang:before { - content: "\f6ad"; } - -.fa-yoast:before { - content: "\f2b1"; } - -.fa-youtube:before { - content: "\f167"; } - -.fa-youtube-square:before { - content: "\f431"; } - -.fa-zhihu:before { - content: "\f63f"; } - -.sr-only { - border: 0; - clip: rect(0, 0, 0, 0); - height: 1px; - margin: -1px; - overflow: hidden; - padding: 0; - position: absolute; - width: 1px; } - -.sr-only-focusable:active, .sr-only-focusable:focus { - clip: auto; - height: auto; - margin: 0; - overflow: visible; - position: static; - width: auto; } diff --git a/exampleSite/themes/notrack/static/css/fonts.css b/exampleSite/themes/notrack/static/css/fonts.css deleted file mode 100644 index 48df2dd..0000000 --- a/exampleSite/themes/notrack/static/css/fonts.css +++ /dev/null @@ -1,99 +0,0 @@ -@font-face -{ - font-family: FreeSans; - src: url(/fonts/FreeSans-small.woff); -} - -@font-face -{ - font-family: FreeSans; - src: url(/fonts/FreeSansBoldOblique.woff); - font-weight: bold; - font-style: oblique; -} - -@font-face -{ - font-family: FreeSans; - src: url(/fonts/FreeSansBold-small.woff); - font-weight: bold; -} - -@font-face -{ - font-family: FreeSans; - src: url(/fonts/FreeSansOblique.woff); - font-style: oblique; -} - -@font-face -{ - font-family: FreeSerif; - src: url(/fonts/FreeSerif-small.woff); -} - -@font-face -{ - font-family: FreeSerif; - src: url(/fonts/FreeSerifItalic-small.woff); - font-style: italic; -} - -@font-face -{ - font-family: FreeSerif; - src: url(/fonts/FreeSerifBoldItalic-small.woff); - font-style: italic; - font-weight: bold; -} - -@font-face -{ - font-family: FreeSerif; - src: url(/fonts/FreeSerifBold-small.woff); - font-weight: bold; -} - -@font-face -{ - font-family: Mononoki; - src: url(/fonts/mononoki-Regular.woff2); -} - -/* Copied from Font Awesome and modified for filepath and filetype*/ - -/*! - * Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ -@font-face -{ - font-family: 'Font Awesome 5 Brands'; - font-style: normal; - font-weight: 400; - font-display: block; - src: url("/fonts/fa-brands-400.woff2") format("woff2"); -} - -.fab -{ - font-family: 'Font Awesome 5 Brands'; - font-weight: 400; -} - -/*! - * Font Awesome Free 5.13.0 by @fontawesome - https://fontawesome.com - * License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) - */ -@font-face { - font-family: 'Font Awesome 5 Free'; - font-style: normal; - font-weight: 900; - font-display: block; - src: url("/fonts/fa-solid-900.woff2") format("woff2"); -} - -.fa, -.fas { - font-family: 'Font Awesome 5 Free'; - font-weight: 900; } diff --git a/exampleSite/themes/notrack/static/css/styles.css b/exampleSite/themes/notrack/static/css/styles.css deleted file mode 100644 index dab983c..0000000 --- a/exampleSite/themes/notrack/static/css/styles.css +++ /dev/null @@ -1,617 +0,0 @@ -@charset "UTF-8"; -body { - margin: 0; - overflow-y: scroll; - font-size: 1.21em; - line-height: 1.21; - font-family: FreeSerif, serif; } - @media (min-width: 64em) { - body { - font-size: 1.32em; - line-height: 1.32; } } - @media (min-width: 85.375em) { - body { - font-size: 1.43em; } } - @media (min-width: 120em) { - body { - font-size: 1.54em; } } - @media (min-width: 160em) { - body { - font-size: 1.76em; } } -/*largest screens*/ -main { - display: block; - margin: 0; - padding: 1em 1em; - background-color: white; } - @media (min-width: 48em) { - main { - margin: 0 15%; } } - @media (min-width: 64em) { - main { - margin: 0 17%; } } - @media (min-width: 85.375em) { - main { - margin: 0 21%; } } - @media (min-width: 120em) { - main { - margin: 0 24%; } } - @media (min-width: 160em) { - main { - margin: 0 27%; } } -a { - font-family: FreeSerif, serif; - color: #07608f; - text-decoration: none; } - -h1, h2, h3, h4, h5, h6 { - font-family: FreeSans, sans-serif; - font-weight: bold; - font-style: normal; - color: #333; } - -p, li { - color: #444; - font-family: FreeSerif, serif; - text-align: justify; } - -strong { - font-style: normal; - font-family: FreeSerif, serif; - font-weight: bold; } - -em { - font-style: normal; - font-family: FreeSerif, serif; - font-style: italic; } - -kbd, code { - font-family: Mononoki, monospace; - color: #444; - background-color: #f3f3f3; - font-size: 0.9em; } - -pre { - background-color: #f6f8fa; - padding: 0.5em; } - pre code { - background-color: transparent; } - -th { - font-family: FreeSerif, serif; - font-weight: bold; - color: #444; } - -td { - font-family: FreeSerif, serif; - color: #444; } - -.footnotes ol li { - font-family: FreeSerif, serif; - font-size: 0.8em; } - -figure.image-shortcode { - margin: 1em auto; } - figure.image-shortcode img { - width: 100%; } - @media (max-width: 28em) { - figure.image-shortcode { - width: 100% !important; } } -figure.wide { - display: flex; - flex-direction: column; - align-items: center; } - figure.wide img { - width: 90vw; - padding-bottom: 0.5em; } - -figure.right, .right { - float: right; - margin: 0 0 0.5em 1em; } - @media (max-width: 28em) { - figure.right, .right { - margin-bottom: 1.0em; } } -figure.right:first-child, .right:first-child { - margin-top: 1em; } - -figure.left, .left { - float: left; - margin: 0 1em 0.5em 0; } - @media (max-width: 28em) { - figure.left, .left { - margin-bottom: 1.0em; } } -figure.left:first-child, .left:first-child { - margin-top: 1em; - color: blue; } - -figure.frame { - background-color: #f7f7f7; - border: 1px solid #bbb; - border-radius: 0.2em; - padding: 0.5em; - box-sizing: border-box; } - figure.frame img { - border: 1px solid #bbb; } - figure.frame figcaption { - border: none; } - -figcaption { - font-size: 0.8em; - padding: 0; - width: 100%; - margin: 0 0 0.5em 0; - border-bottom: 1px solid #666674; } - figcaption p { - margin-top: 0em; - color: #666674; - text-align: left; } - figcaption h4 { - margin: 0.3em 0; - color: #444; - text-align: left; } - -.page-title { - text-align: center; - font-size: 1.9em; } - -.page-title.blog { - text-align: left; - margin-bottom: 0.5em; } - -nav { - display: flex; - justify-content: flex-end; - flex-flow: row wrap; - overflow: hidden; - margin: auto 2% .6em auto; - padding-left: 2em; } - -nav ul { - list-style-type: none; - margin: 0; } - -nav li { - background-color: inherit; - float: left; - cursor: pointer; - padding: 0; - margin: 0; - border-width: 0 0 .3em 0; - border-color: transparent; - border-style: solid; - display: inline-block; } - -nav a { - color: #444; - padding: .25em .63em; - font-family: FreeSans, sans-serif; - font-size: 1.2em; - display: block; } - -nav li:hover { - border-color: #ddd; } - -.dropdown .sub-menu { - display: none; - position: absolute; - background-color: #f9f9f9; - color: #444; - cursor: pointer; - border-width: 0 0 .3em 0; - min-width: 6em; - margin-top: .3em; - box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2); - z-index: 1; } - -.dropdown:hover .sub-menu { - display: block; } - -.sub-menu a:hover { - background-color: #474a4f; - color: white; } - -.sub-menu a { - display: block; - text-align: left; - padding: .2em .63em; - color: #444; } - -.dropdown.activetab, .activetab, li.activetab { - background-color: #474a4f; - border-color: white; } - -.activetab > a, a.activetab { - color: white; } - -.page-header { - border-bottom: 1px solid black; - text-align: center; - display: flex; - flex-flow: row wrap; - margin: 1em 1em 0 1em; } - -.myname { - margin: 0 auto 0 0; - padding: 0 0 .25em .25em; - font-size: 2em; } - -.myname a { - color: black; - text-decoration: none; - font-family: FreeSerif, serif; - font-style: italic; - font-weight: bold; } - -.myname h2 { - margin: 0; } - -.blog-post-summary { - margin: 0; } - @media (min-width: 28em) { - .blog-post-summary { - margin: 2em; } } -#latest-blog-home { - text-align: center; - font-size: 2em; } - -.delimiter { - font-size: 2em; - text-align: center; } - -.blog-post-title { - margin-bottom: 0.2em; - padding-bottom: 0; - font-size: 1.6em; } - .blog-post-title a { - color: #333; - font-family: FreeSans, sans-serif; } - -.blog-post-info { - margin: 0.2em 0; - font-size: 0.8em; - color: #5f5a6f; - margin-left: 1em; - text-align: left; } - .blog-post-info a { - text-transform: capitalize; } - -em.taxonomy-emph { - font-family: FreeSans, sans-serif; - font-style: oblique; } - -.blog-post-content h1 { - font-size: 1.4em; } - -.blog-post-content h2 { - font-size: 1.3em; } - -.blog-post-content h3 { - font-size: 1.2em; } - -.blog-post-content h4 { - font-size: 1.1em; } - -.taxonomy-links ul { - list-style-type: none; - display: flex; - justify-content: center; - margin: 0; - padding: 0; - border-bottom: 2px solid #444; } - .taxonomy-links ul li { - flex-grow: 1; - margin: 1em 0.5em; - width: 100%; - display: flex; } - .taxonomy-links ul li a { - display: inline-block; - background-color: #ddd; - font-size: 1.5em; - text-align: center; - color: #444; - padding: .5em; - flex-grow: 1; - text-transform: capitalize; } - -.pagination { - list-style-type: none; - font-family: FreeSans, sans-serif; - display: flex; - justify-content: center; - margin: 1em; - padding: 0; } - -.page-item { - color: #444; - display: inline-block; - padding: .2em .6em; } - .page-item a { - color: #444; } - -.page-item.active { - background-color: #474a4f; } - .page-item.active a { - background-color: #474a4f; - color: white; } - -.resume-content { - display: flex; - flex-flow: row wrap; } - -.category-title { - text-align: left; - width: 8em; - padding: .5em; - flex: 1 3 auto; } - .category-title h4 { - margin: 0 0.5em 0 0; - font-size: 1.3em; } - -.category-content { - flex: 2 1 65%; - padding: .5em; } - .category-content a { - color: #4c7e99; } - .category-content p { - margin: 0; - font-size: 0.9em; - color: #5f5a6f; } - .category-content ul { - list-style-type: "– "; } - .category-content ul, .category-content ol { - font-family: FreeSans, sans-serif; - margin-top: 0; } - .category-content li { - font-size: 0.9em; - color: #5f5a6f; } - -.resume-entry { - margin: 0 0 1em 0; } - .resume-entry .what { - font-family: FreeSans, serif; - text-align: left; - font-size: 1.0em; - color: #444; } - .resume-entry .resume-entry-data { - font-family: FreeSans, serif; - text-align: left; - font-size: 0.8em; - color: #767676; - margin-left: 0.9rem; } - .resume-entry .resume-inner { - line-height: 1; - margin-top: 0.2em; - margin-left: 0.9rem; } - .resume-entry p, .resume-entry ul, .resume-entry ol, .resume-entry li { - font-family: FreeSerif, serif; - color: #5f5a6f; - text-align: left; - font-size: 0.9em; } - -p.resume-subcategory { - font-family: FreeSans, sans-serif; - font-size: 1.4em; - text-decoration: underline; - padding: 0 0 .3em 0; } - -#contactinformation { - display: flex; - flex-direction: row; - flex-wrap: wrap; } - -.social { - display: flex; - justify-content: center; } - .social ul { - list-style-type: none; - display: flex; - justify-content: space-around; - flex-wrap: wrap; - width: 100%; - padding: 0; } - .social ul li { - display: inline-block; - padding: 0.5em; } - .social ul li a { - white-space: nowrap; - color: #3f444d; - font-size: 1em; - font-family: FreeSans, sans-serif; } - .social ul li a i { - font-size: 2em; - vertical-align: middle; } - -.contactbox { - padding: 0 1.0em 0 1.0em; - box-sizing: border-box; } - @media (max-width: 28em) { - .contactbox { - width: 100% !important; } } - .contactbox ul { - list-style-type: none; - background-color: #eee; - border-radius: 0.5em; - box-shadow: 0.025em 0.1em 0.2em 0.1em #333; - box-shadow: 0.025em 0.1em 0.2em 0.1em rgba(0, 0, 0, 0.3); - padding: 10%; - margin: auto; } - .contactbox i { - padding-right: 0.3em; } - .contactbox a { - font-family: FreeSans, sans-serif; - font-weight: bold; - font-size: 1em; - color: #524e59; - white-space: nowrap; } - .contactbox img { - height: .7em; - padding-right: .5em; - filter: opacity(80%); } - -.p5js { - width: 100%; - border: none; - display: block; - padding: 0; - margin: 0; - overflow-y: none; } - -.video-shortcode { - width: 100%; - height: auto; - padding: 1em 0; } - -#ethos { - text-align: justify; } - -blockquote { - font-family: FreeSerif, serif; - font-size: .9em; - color: #444; } - -cite { - font-family: FreeSerif, serif; - font-style: italic; } - -#gallery h3 { - font-size: 1.7em; } - -.gallery-category { - display: flex; - flex-flow: row wrap; - justify-content: space-between; - list-style-type: none; - padding: 0; - margin: 0; } - -.gallery-photo { - flex-grow: 1; - height: 10.5em; - padding: .2em; } - .gallery-photo img { - min-width: 100%; - max-height: 100%; - object-fit: cover; - vertical-align: bottom; - border-radius: .2em; } - .gallery-photo img:hover { - opacity: 0.7; - transition: 0.3s; - cursor: pointer; } - -.gallery-photo:last-child { - flex-grow: 10; } - -/* The Modal (background) */ -.modal { - display: none; - /* Hidden by default */ - position: fixed; - /* Stay in place */ - z-index: 1; - /* Sit on top */ - padding-top: 5vh; - /* Location of the box */ - left: 0; - top: 0; - width: 100%; - /* Full width */ - height: 100%; - /* Full height */ - overflow: auto; - /* Enable scroll if needed */ - background-color: black; - /* Fallback color */ - background-color: rgba(0, 0, 0, 0.9); - /* Black w/ opacity */ } - -/* Modal Content (image) */ -.modal-content { - margin: 4vh auto; - padding: 4vh 3%; - display: block; - width: auto; - height: auto; - max-height: 69vh; - max-width: 94%; - pointer-events: none; - user-select: none; } - -#loader { - display: none; - position: absolute; - left: 50%; - top: 50%; - z-index: 1; - width: 150px; - height: 150px; - margin: -75px 0 0 -75px; - border: 16px solid #f3f3f3; - border-radius: 50%; - border-top: 16px solid #3498db; - width: 120px; - height: 120px; - -webkit-animation: fadein 1s, spin 2s linear infinite; - animation: fadein 1s, spin 2s linear infinite; } - -@keyframes fadein { - from { - opacity: 0; } - to { - opacity: 1; } } - -/* Firefox < 16 */ -@-moz-keyframes fadein { - from { - opacity: 0; } - to { - opacity: 1; } } - -@-webkit-keyframes spin { - 0% { - -webkit-transform: rotate(0deg); } - 100% { - -webkit-transform: rotate(360deg); } } - -@keyframes spin { - 0% { - transform: rotate(0deg); } - 100% { - transform: rotate(360deg); } } - -/* Caption of Modal Image */ -#caption { - margin: auto; - display: block; - width: 80%; - max-width: 30em; - text-align: center; - color: #ccc; - padding: 1vh 0; - height: 8vh; } - -/* Add Animation */ -.modal-content, #caption { - animation-name: zoom; - animation-duration: 0.4s; } - -@keyframes zoom { - from { - transform: scale(0.4); } - to { - transform: scale(1); } } - -/* The Close Button */ -.close { - position: absolute; - top: 2vh; - right: 3vh; - color: #f1f1f1; - font-size: 6vh; - font-weight: bold; - transition: 0.3s; } - -.close:hover, .close:focus { - color: #bbb; - text-decoration: none; - cursor: pointer; } diff --git a/exampleSite/themes/notrack/static/css/styles.scss b/exampleSite/themes/notrack/static/css/styles.scss deleted file mode 100644 index af12b2a..0000000 --- a/exampleSite/themes/notrack/static/css/styles.scss +++ /dev/null @@ -1,804 +0,0 @@ -// Colors -$midnight-blue: #07608f; -$midnight-matte: #4c7e99; -$text-color: #444; -$tab-border-color: #ddd; -$tab-active-color: #474a4f; -$heading-gray: #333; -$caption-color: #ccc; -$close-button-gray: #f1f1f1; -$close-hover-gray: #bbb; -$contactlinks-color: #eee; -$contactlinks-text-color: #524e59; -$cv-red: #b25347; -$light-text: #5f5a6f; -$very-light-text: #767676; -$medium-light-text: #4f4a5f; -$code-background: #f3f3f3; -$codeblock-background: #f6f8fa; -$code-text: #f8f8f2; - -// Breakpoints -$bp-mini: 28em; // 288px -$bp-small: 48em; // 768px -$bp-medium: 64em; // 1024px -$bp-large: 85.375em; // 1366px -$bp-xlarge: 120em; // 1920px -$bp-xxlarge: 160em; // 2560px - -// Media Queries -$mq-mini: "(min-width: #{$bp-mini})"; -$mq-mini-reverse: "(max-width: #{$bp-mini})"; -$mq-small: "(min-width: #{$bp-small})"; -$mq-medium: "(min-width: #{$bp-medium})"; -$mq-large: "(min-width: #{$bp-large})"; -$mq-xlarge: "(min-width: #{$bp-xlarge})"; -$mq-xxlarge: "(min-width: #{$bp-xxlarge})"; -$mq-retina: "(-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi)"; - -// Font-Size -$base-font-size: 1.1em; - -// Line-Height -$base-line-height: 1.1; -$header-line-height: 1.25; - -// HUGO - -body { - margin: 0; - overflow-y: scroll; - font-size: $base-font-size * 1.1; - line-height: $base-line-height * 1.1; - font-family: FreeSerif, serif; - - @media #{$mq-medium} { - font-size: $base-font-size*1.2; - line-height: $base-line-height*1.2; - } - - @media #{$mq-large} { - font-size: $base-font-size*1.3; - } - - @media #{$mq-xlarge} { - font-size: $base-font-size*1.4; - } - - @media #{$mq-xxlarge} { - font-size: $base-font-size*1.6; - } -} - -/*largest screens*/ -main { - display: block; - margin: 0; - padding: 1em 1em; - background-color: white; - - @media #{$mq-small} { - margin: 0 15%; - } - - @media #{$mq-medium} { - margin: 0 17%; - } - - @media #{$mq-large} { - margin: 0 21%; - } - - @media #{$mq-xlarge} { - margin: 0 24%; - } - - @media #{$mq-xxlarge} { - margin: 0 27%; - } -} - -a { - font-family: FreeSerif, serif; - color: $midnight-blue; - text-decoration: none; -} - -h1, h2, h3, h4, h5, h6 { - font-family: FreeSans, sans-serif; - font-weight: bold; - font-style: normal; - color: $heading-gray; -} - -p, li { - color: $text-color; - font-family: FreeSerif, serif; - text-align: justify; -} - -strong { - font-style: normal; - font-family: FreeSerif, serif; - font-weight: bold; -} - -em { - font-style: normal; - font-family: FreeSerif, serif; - font-style: italic; -} - -kbd, code { - font-family: Mononoki, monospace; - color: $text-color; - background-color: $code-background; - font-size: 0.9em; -} - -pre { - background-color: $codeblock-background; - padding: 0.5em; - code { - background-color: transparent; - } -} - -th { - font-family: FreeSerif, serif; - font-weight: bold; - color: $text-color; -} - -td { - font-family: FreeSerif, serif; - color: $text-color; -} - -.footnotes ol li { - font-family: FreeSerif, serif; - font-size: 0.8em; -} - -figure.image-shortcode { - margin: 1em auto; - img { - width: 100%; - } - @media #{$mq-mini-reverse} { - width: 100% !important; - } - -} - -figure.wide { - display: flex; - flex-direction: column; - align-items: center; - img { - width: 90vw; - padding-bottom: 0.5em; - } -} - -figure.right, .right { - float: right; - margin: 0 0 0.5em 1em; - - @media #{$mq-mini-reverse} { - margin-bottom: 1.0em; - } -} - -figure.right:first-child, .right:first-child { - margin-top: 1em; -} - -figure.left, .left { - float: left; - margin: 0 1em 0.5em 0; - - @media #{$mq-mini-reverse} { - margin-bottom: 1.0em; - } -} - -figure.left:first-child, .left:first-child { - margin-top: 1em; - color: blue; -} - -figure.frame { - background-color: #f7f7f7; - border: 1px solid #bbb; - border-radius: 0.2em; - padding: 0.5em; - box-sizing: border-box; - - img { border: 1px solid #bbb; } - - figcaption { border: none; } - -} - -figcaption { - font-size: 0.8em; - padding: 0; - width: 100%; - margin: 0 0 0.5em 0; - border-bottom: 1px solid #666674; - p { - margin-top: 0em; - color: #666674; - text-align: left; - } - h4 { - margin: 0.3em 0; - color: $text-color; - text-align: left; - } -} - -.page-title { - text-align: center; - font-size: 1.9em; -} - -.page-title.blog { - text-align: left; - margin-bottom: 0.5em; -} - -// NAVBAR - -nav { - display: flex; - justify-content: flex-end; - flex-flow: row wrap; - overflow: hidden; - margin: auto 2% .6em auto; - padding-left: 2em; -} - -nav ul { - list-style-type: none; - margin: 0; -} - -nav li { - background-color: inherit; - float: left; - cursor: pointer; - padding: 0; - margin: 0; - border-width: 0 0 .3em 0; - border-color: transparent; - border-style: solid; - display: inline-block; -} - -nav a { - color: $text-color; - padding: .25em .63em; - font-family: FreeSans, sans-serif; - font-size: 1.2em; - display: block; -} - -nav li:hover { - border-color: $tab-border-color; -} - -.dropdown .sub-menu { - display: none; - position: absolute; - background-color: #f9f9f9; - color: $text-color; - cursor: pointer; - border-width: 0 0 .3em 0; - min-width: 6em; - margin-top: .3em; - box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2); - z-index: 1; -} - -.dropdown:hover .sub-menu { - display: block; -} - -.sub-menu a:hover { - background-color: $tab-active-color; - color: white; -} - -.sub-menu a { - display: block; - text-align: left; - padding: .2em .63em; - color: $text-color; -} - -.dropdown.activetab, .activetab, li.activetab { - background-color: $tab-active-color; - border-color: white; -} - -.activetab > a, a.activetab { - color: white; -} - -.page-header { - border-bottom: 1px solid black; - text-align: center; - display: flex; - flex-flow: row wrap; - margin: 1em 1em 0 1em; -} - -.myname { - margin: 0 auto 0 0; - padding: 0 0 .25em .25em; - font-size: 2em; -} - -.myname a { - color: black; - text-decoration: none; - font-family: FreeSerif, serif; - font-style: italic; - font-weight: bold; -} - -.myname h2 { - margin: 0; -} - -// HOME - -.blog-post-summary { - margin: 0; - @media #{$mq-mini} { - margin: 2em; - } -} - -#latest-blog-home { - text-align: center; - font-size: 2em; -} - -.delimiter { - font-size: 2em; - text-align: center; -} - -// BLOG - -.blog-post-title { - margin-bottom: 0.2em; - padding-bottom: 0; - font-size: 1.6em; - - a { - color: $heading-gray; - font-family: FreeSans, sans-serif; - } -} - -.blog-post-info { - margin: 0.2em 0; - font-size: 0.8em; - color: $light-text; - margin-left: 1em; - text-align: left; - - a { text-transform: capitalize; } -} - -em.taxonomy-emph { - font-family: FreeSans, sans-serif; - font-style: oblique; -} - -.blog-post-content { - h1 { font-size: 1.4em; } - h2 { font-size: 1.3em; } - h3 { font-size: 1.2em; } - h4 { font-size: 1.1em; } -} - -.taxonomy-links ul { - list-style-type: none; - display: flex; - justify-content: center; - margin: 0; - padding: 0; - border-bottom: 2px solid $text-color; - - li { - flex-grow: 1; - margin: 1em 0.5em; - width: 100%; - display: flex; - } - - li a { - display: inline-block; - background-color: $tab-border-color; - font-size: 1.5em; - text-align: center; - color: $text-color; - padding: .5em; - flex-grow: 1; - text-transform: capitalize; - } -} - -.pagination { - list-style-type: none; - font-family: FreeSans, sans-serif; - display: flex; - justify-content: center; - margin: 1em; - padding: 0; -} - -.page-item { - color: $text-color; - display: inline-block; - padding: .2em .6em; - - a { - color: $text-color; - } -} - -.page-item.active { - background-color: $tab-active-color; - - a { - background-color: $tab-active-color; - color: white; - } -} - -// RESUME - -.resume-content { - display: flex; - flex-flow: row wrap; -} - -.category-title { - text-align: left; - width: 8em; - padding: .5em; - flex: 1 3 auto; - - h4 { - margin: 0 0.5em 0 0; - font-size: 1.3em; - } -} - -.category-content { - flex: 2 1 65%; - padding: .5em; - - a { - color: $midnight-matte; - } - - p { - margin: 0; - font-size: 0.9em; - color: $light-text; - } - - ul { - list-style-type: "– "; - } - - ul, ol { - font-family: FreeSans, sans-serif; - margin-top: 0; - } - li { - font-size: 0.9em; - color: $light-text; - } -} - -.resume-entry { - margin: 0 0 1em 0; - - .what { - font-family: FreeSans, serif; - text-align: left; - font-size: 1.0em; - color: $text-color; - } - - .resume-entry-data { - font-family: FreeSans, serif; - text-align: left; - font-size: 0.8em; - color: $very-light-text; - margin-left: 0.9rem; - } - - .resume-inner { - line-height: 1; - margin-top: 0.2em; - margin-left: 0.9rem; - } - - p, ul, ol, li { - font-family: FreeSerif, serif; - color: $light-text; - text-align: left; - font-size: 0.9em; - } -} - -p.resume-subcategory { - font-family: FreeSans, sans-serif; - font-size: 1.4em; - text-decoration: underline; - padding: 0 0 .3em 0; -} - -// CONTACT - -#contactinformation { - display: flex; - flex-direction: row; - flex-wrap: wrap; -} - -.social { - display: flex; - justify-content: center; - - ul { - list-style-type: none; - display:flex; - justify-content: space-around; - flex-wrap: wrap; - width: 100%; - padding: 0; - - li { - display: inline-block; - padding: 0.5em; - - a { - white-space: nowrap; - color: #3f444d; - font-size: 1em; - font-family: FreeSans, sans-serif; - - i { - font-size: 2em; - vertical-align: middle; - } - } - } - } -} - -.contactbox { - padding: 0 1.0em 0 1.0em; - box-sizing: border-box; - - @media #{$mq-mini-reverse} { - width: 100% !important; - } - - ul { - list-style-type: none; - background-color: $contactlinks-color; - border-radius: 0.5em; - box-shadow: 0.025em 0.1em 0.2em 0.1em #333; - box-shadow: 0.025em 0.1em 0.2em 0.1em rgba(0, 0, 0, 0.3); - padding: 10%; - margin: auto; - } - - i { - padding-right: 0.3em; - } - - - a { - font-family: FreeSans, sans-serif; - font-weight: bold; - font-size: 1em; - color: $contactlinks-text-color; - white-space: nowrap; - } - - img { - height:.7em; - padding-right: .5em; - filter: opacity(80%); - } -} - -// Projects tab - -.p5js { - width: 100%; - border: none; - display: block; - padding: 0; - margin: 0; - overflow-y: none; -} - -.video-shortcode { - width: 100%; - height: auto; - padding: 1em 0; -} - -// Ethos tab - -#ethos { - text-align: justify; -} - -// General - -blockquote { - font-family: FreeSerif, serif; - font-size: .9em; - color: $text-color; -} - -cite { - font-family: FreeSerif, serif; - font-style: italic; -} - -// GALLERY - -#gallery h3 { font-size: 1.7em; } - -.gallery-category { - display: flex; - flex-flow: row wrap; - justify-content: space-between; - list-style-type: none; - padding: 0; - margin: 0; -} - -.gallery-photo { - flex-grow: 1; - height: 10.5em; - padding: .2em; - - img { - min-width: 100%; - max-height: 100%; - object-fit: cover; - vertical-align: bottom; - border-radius: .2em; - } - - img:hover { - opacity: 0.7; - transition: 0.3s; - cursor: pointer; - } -} - -.gallery-photo:last-child { flex-grow: 10; } - -/* The Modal (background) */ -.modal { - display: none; /* Hidden by default */ - position: fixed; /* Stay in place */ - z-index: 1; /* Sit on top */ - padding-top: 5vh; /* Location of the box */ - left: 0; - top: 0; - width: 100%; /* Full width */ - height: 100%; /* Full height */ - overflow: auto; /* Enable scroll if needed */ - background-color: rgb(0,0,0); /* Fallback color */ - background-color: rgba(0,0,0,0.9); /* Black w/ opacity */ -} - -/* Modal Content (image) */ -.modal-content { - margin: 4vh auto; - padding: 4vh 3%; - display: block; - width: auto; - height: auto; - max-height: 69vh; - max-width: 94%; - pointer-events: none; - user-select: none; -} - -#loader { - display: none; - position: absolute; - left: 50%; - top: 50%; - z-index: 1; - width: 150px; - height: 150px; - margin: -75px 0 0 -75px; - border: 16px solid #f3f3f3; - border-radius: 50%; - border-top: 16px solid #3498db; - width: 120px; - height: 120px; - -webkit-animation: fadein 1s, spin 2s linear infinite; - animation: fadein 1s, spin 2s linear infinite; -} - -@keyframes fadein { - from { opacity: 0; } - to { opacity: 1; } -} - -/* Firefox < 16 */ -@-moz-keyframes fadein { - from { opacity: 0; } - to { opacity: 1; } -} - -@-webkit-keyframes spin { - 0% { -webkit-transform: rotate(0deg); } - 100% { -webkit-transform: rotate(360deg); } -} - -@keyframes spin { - 0% { transform: rotate(0deg); } - 100% { transform: rotate(360deg); } -} - -/* Caption of Modal Image */ -#caption { - margin: auto; - display: block; - width: 80%; - max-width: 30em; - text-align: center; - color: $caption-color; - padding: 1vh 0; - height: 8vh; -} - -/* Add Animation */ -.modal-content, #caption { - animation-name: zoom; - animation-duration: 0.4s; -} - -@keyframes zoom { - from {transform: scale(0.4)} - to {transform: scale(1)} -} - -/* The Close Button */ -.close { - position: absolute; - top: 2vh; - right: 3vh; - color: $close-button-gray; - font-size: 6vh; - font-weight: bold; - transition: 0.3s; -} - -.close:hover, .close:focus { - color: $close-hover-gray; - text-decoration: none; - cursor: pointer; -} diff --git a/exampleSite/themes/notrack/static/fonts/FreeMono.woff b/exampleSite/themes/notrack/static/fonts/FreeMono.woff Binary files differdeleted file mode 100644 index ca44c05..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeMono.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeMonoBold.woff b/exampleSite/themes/notrack/static/fonts/FreeMonoBold.woff Binary files differdeleted file mode 100644 index 4c4b783..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeMonoBold.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeMonoBoldOblique.woff b/exampleSite/themes/notrack/static/fonts/FreeMonoBoldOblique.woff Binary files differdeleted file mode 100644 index b31c2da..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeMonoBoldOblique.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeMonoOblique.woff b/exampleSite/themes/notrack/static/fonts/FreeMonoOblique.woff Binary files differdeleted file mode 100644 index 81fc1d2..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeMonoOblique.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSans-small.woff b/exampleSite/themes/notrack/static/fonts/FreeSans-small.woff Binary files differdeleted file mode 100644 index a3b7dcc..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSans-small.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSans.woff b/exampleSite/themes/notrack/static/fonts/FreeSans.woff Binary files differdeleted file mode 100644 index 71e4a85..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSans.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSansBold-small.woff b/exampleSite/themes/notrack/static/fonts/FreeSansBold-small.woff Binary files differdeleted file mode 100644 index 18086ec..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSansBold-small.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSansBold.woff b/exampleSite/themes/notrack/static/fonts/FreeSansBold.woff Binary files differdeleted file mode 100644 index 4d604fa..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSansBold.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSansBoldOblique.woff b/exampleSite/themes/notrack/static/fonts/FreeSansBoldOblique.woff Binary files differdeleted file mode 100644 index c8b6146..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSansBoldOblique.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSansOblique.woff b/exampleSite/themes/notrack/static/fonts/FreeSansOblique.woff Binary files differdeleted file mode 100644 index db5a94a..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSansOblique.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerif-small.woff b/exampleSite/themes/notrack/static/fonts/FreeSerif-small.woff Binary files differdeleted file mode 100644 index a85c2e7..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerif-small.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerif.woff b/exampleSite/themes/notrack/static/fonts/FreeSerif.woff Binary files differdeleted file mode 100644 index 0113fe5..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerif.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerifBold-small.woff b/exampleSite/themes/notrack/static/fonts/FreeSerifBold-small.woff Binary files differdeleted file mode 100644 index e7da7b0..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerifBold-small.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerifBold.woff b/exampleSite/themes/notrack/static/fonts/FreeSerifBold.woff Binary files differdeleted file mode 100644 index 3e7562e..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerifBold.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerifBoldItalic-small.woff b/exampleSite/themes/notrack/static/fonts/FreeSerifBoldItalic-small.woff Binary files differdeleted file mode 100644 index 54021c3..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerifBoldItalic-small.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerifBoldItalic.woff b/exampleSite/themes/notrack/static/fonts/FreeSerifBoldItalic.woff Binary files differdeleted file mode 100644 index 639404e..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerifBoldItalic.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerifItalic-small.woff b/exampleSite/themes/notrack/static/fonts/FreeSerifItalic-small.woff Binary files differdeleted file mode 100644 index a5c8cc0..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerifItalic-small.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/FreeSerifItalic.woff b/exampleSite/themes/notrack/static/fonts/FreeSerifItalic.woff Binary files differdeleted file mode 100644 index f73a320..0000000 --- a/exampleSite/themes/notrack/static/fonts/FreeSerifItalic.woff +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/fa-brands-400.woff2 b/exampleSite/themes/notrack/static/fonts/fa-brands-400.woff2 Binary files differdeleted file mode 100644 index dd9ad0d..0000000 --- a/exampleSite/themes/notrack/static/fonts/fa-brands-400.woff2 +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/fa-solid-900.woff2 b/exampleSite/themes/notrack/static/fonts/fa-solid-900.woff2 Binary files differdeleted file mode 100644 index 3cbec71..0000000 --- a/exampleSite/themes/notrack/static/fonts/fa-solid-900.woff2 +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/mononoki-Bold.woff2 b/exampleSite/themes/notrack/static/fonts/mononoki-Bold.woff2 Binary files differdeleted file mode 100644 index adb5b15..0000000 --- a/exampleSite/themes/notrack/static/fonts/mononoki-Bold.woff2 +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/mononoki-BoldItalic.woff2 b/exampleSite/themes/notrack/static/fonts/mononoki-BoldItalic.woff2 Binary files differdeleted file mode 100644 index 3cc80cd..0000000 --- a/exampleSite/themes/notrack/static/fonts/mononoki-BoldItalic.woff2 +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/mononoki-Italic.woff2 b/exampleSite/themes/notrack/static/fonts/mononoki-Italic.woff2 Binary files differdeleted file mode 100644 index 30cbd0d..0000000 --- a/exampleSite/themes/notrack/static/fonts/mononoki-Italic.woff2 +++ /dev/null diff --git a/exampleSite/themes/notrack/static/fonts/mononoki-Regular.woff2 b/exampleSite/themes/notrack/static/fonts/mononoki-Regular.woff2 Binary files differdeleted file mode 100644 index 2c23a36..0000000 --- a/exampleSite/themes/notrack/static/fonts/mononoki-Regular.woff2 +++ /dev/null diff --git a/exampleSite/themes/notrack/static/js/gallery.js b/exampleSite/themes/notrack/static/js/gallery.js deleted file mode 100644 index 2965212..0000000 --- a/exampleSite/themes/notrack/static/js/gallery.js +++ /dev/null @@ -1,139 +0,0 @@ -// MODALS FOR PHOTO GALLERY - -// Get the modal -var modal = document.getElementById("myModal"); -var modalImg = document.getElementById("modal-img"); -var captionText = document.getElementById("caption"); -var loader = document.getElementById("loader"); - -// Get the <span> element that closes the modal -var span = document.getElementsByClassName("close")[0]; - -// Array of all images in gallery -const imgs = [...document.querySelectorAll('.gallery-photo > img')]; - -// Add index and event listener to all gallery images -imgs.forEach((img, i) => { - img.dataset.index = i; - img.addEventListener('click', e => { openModal(e.target); }); -}); - -preloadModalImage = index => { - let loadingImg = new Image(); - loadingImg.src = imgs[index].src.replace("thumbnails", "fullsize"); -} - -// Returns indices of current and surrounding images -getSurroundingIndices = img => { - let i = parseInt(img.dataset.index); - let prevIndex = i != 0 ? (i - 1) % imgs.length : imgs.length - 1; - let nextIndex = (i + 1) % imgs.length; - return {prev: prevIndex, current: i, next: nextIndex}; -}; - -// Image currently shown in modal -let currentImage; - -openModal = img => { - // Get the image and insert it inside the modal - use - // its "alt" text as a caption - currentImage = img; - modalImg.src = currentImage.src.replace("thumbnails", "fullsize"); - captionText.innerHTML = img.alt; - - // While loading, show loader and hide image and text - modal.style.display = 'block'; - loader.style.display = 'block'; - modalImg.style.display = 'none'; - captionText.style.display = 'none'; - - // After image is loaded, show image and text and hide loader - modalImg.addEventListener('load', () => { - console.log("loaded image"); - captionText.style.display = 'block'; - modalImg.style.display = 'block'; - loader.style.display = 'none'; - }); - - // Preload for faster display of images - const indices = getSurroundingIndices(currentImage); - preloadModalImage(indices.next); - preloadModalImage(indices.prev); -}; - -closeModal = () => { - modal.style.display = "none"; - modalImg.src = ""; - - // Image get selected upon closing on mobile so deselect - if(window.getSelection) { - window.getSelection().removeAllRanges(); - } - if (document.selection) { - document.selection.empty(); - } -}; - -changeModalImage = direction => { - if (modal.style.display == "block") { - const indices = getSurroundingIndices(currentImage); - switch (direction) { - case 'ArrowRight': - openModal(imgs[indices.next]); - break; - case 'ArrowLeft': - openModal(imgs[indices.prev]); - break; - } - } -}; - - -// CLOSING MODAL - -// When <span> (x) is clicked, close the modal -span.onclick = function() { - closeModal(); -}; - -// Pressing escape closes modal -document.onkeydown = event => { - switch (event.key) { - case 'Escape': closeModal(); break; - case 'ArrowRight': changeModalImage(event.key); break; - case 'ArrowLeft': changeModalImage(event.key); break; - } -}; - -// Close modal when it is clicked -modal.addEventListener('click', closeModal, false); - - -// SWITCH IMAGE BY SWIPING OR MOUSE DRAG - -// Unify touch and click cases -unify = e => { return e.changedTouches ? e.changedTouches[0] : e }; - -// Where swipe or mousedown starts -let x0 = null; - -lock = event => { x0 = unify(event).clientX }; - -move = event => { - if (x0 || x0 === 0) { - let dx = unify(event).clientX - x0; - sign = Math.sign(dx); - - switch (sign) { - case -1: changeModalImage('ArrowRight'); break; - case 1: changeModalImage('ArrowLeft'); break; - } - } -}; - -modal.addEventListener('mousedown', lock, false); -modal.addEventListener('touchstart', lock, false); -modal.addEventListener('mouseup', move, false); -modal.addEventListener('touchend', move, false); -modal.addEventListener('touchmove', e => {e.preventDefault()}, false); -modal.addEventListener('mousemove', e => {e.preventDefault()}, false); diff --git a/exampleSite/themes/notrack/theme.toml b/exampleSite/themes/notrack/theme.toml deleted file mode 100644 index b79138d..0000000 --- a/exampleSite/themes/notrack/theme.toml +++ /dev/null @@ -1,12 +0,0 @@ -name = "Notrack" -license = "GPLv3" -licenselink = "https://github.com/gevhaz/hugo-theme-notrack/blob/master/LICENSE" -description = "A libre hugo personal webpage theme without reliance on third parties and no tracking." -homepage = "https://github.com/gevhaz/hugo-theme-notrack" -tags = ["minimal", "personal", "responsive", "libre", "flexbox"] -features = ["gallery", "blog", "resume", "drop-down menu"] -min_version = "0.70.0" - -[author] - name = "Simon Bengtsson" - homepage = "https://github.com/gevhaz" |