Browse Source

1st commit

master
rdrew 7 months ago
commit
58a5a488fa
  1. 6
      .gitignore
  2. 339
      LICENSE.txt
  3. 1
      README.txt
  4. 14
      bs.js
  5. 77
      changelog.txt
  6. 24
      config/optional/block.block.vre2024_account_menu.yml
  7. 22
      config/optional/block.block.vre2024_branding.yml
  8. 19
      config/optional/block.block.vre2024_breadcrumbs.yml
  9. 19
      config/optional/block.block.vre2024_content.yml
  10. 24
      config/optional/block.block.vre2024_footer.yml
  11. 19
      config/optional/block.block.vre2024_help.yml
  12. 17
      config/optional/block.block.vre2024_local_actions.yml
  13. 19
      config/optional/block.block.vre2024_local_tasks.yml
  14. 24
      config/optional/block.block.vre2024_main_menu.yml
  15. 19
      config/optional/block.block.vre2024_messages.yml
  16. 17
      config/optional/block.block.vre2024_page_title.yml
  17. 19
      config/optional/block.block.vre2024_powered.yml
  18. 20
      config/optional/block.block.vre2024_search.yml
  19. 24
      config/optional/block.block.vre2024_tools.yml
  20. 5
      config/schema/vre2024.schema.yml
  21. 10
      credit.txt
  22. 546
      css/base.css
  23. 6
      css/block.css
  24. 0
      css/book.css
  25. 5
      css/bootstrap-icons.css
  26. 11
      css/clear.css
  27. 83
      css/comments.css
  28. 217
      css/components.css
  29. 32
      css/core.css
  30. 0
      css/elements.css
  31. 70
      css/extra.css
  32. 2337
      css/font-awesome.css
  33. 4619
      css/font-awesome5.css
  34. 166
      css/font-icon.css
  35. 4614
      css/fontawesome5.css
  36. 87
      css/footer.css
  37. 418
      css/header.css
  38. 24
      css/highlighted.css
  39. 11
      css/homepage.css
  40. 73
      css/layout.css
  41. 41
      css/maintenance.css
  42. 20
      css/node.css
  43. 272
      css/responsive.css
  44. 28
      css/search.css
  45. 330
      css/shortcodes.css
  46. 43
      css/sidebar.css
  47. BIN
      favicon.ico
  48. BIN
      fonts/bootstrap-icons.woff
  49. BIN
      fonts/bootstrap-icons.woff2
  50. BIN
      fonts/fontawesome-webfont.eot
  51. 2671
      fonts/fontawesome-webfont.svg
  52. BIN
      fonts/fontawesome-webfont.ttf
  53. BIN
      fonts/fontawesome-webfont.woff
  54. BIN
      fonts/fontawesome-webfont.woff2
  55. BIN
      fonts/vre2024.woff2
  56. 5
      images/icons/message/error.svg
  57. 4
      images/icons/message/success.svg
  58. 5
      images/icons/message/warning.svg
  59. 1
      images/icons/search.svg
  60. 11
      images/maintenance.svg
  61. 48
      js/vre2024.js
  62. 284
      logo.svg
  63. 16
      package.json
  64. BIN
      screenshot.png
  65. 38
      templates/block/block--system-branding-block.html.twig
  66. 48
      templates/block/block--system-menu-block.html.twig
  67. 39
      templates/block/block.html.twig
  68. 18
      templates/content-edit/filter-caption.html.twig
  69. 99
      templates/content/comment.html.twig
  70. 103
      templates/content/node.html.twig
  71. 21
      templates/content/page-title.html.twig
  72. 29
      templates/dataset/item-list--search-results.html.twig
  73. 44
      templates/field/field--comment.html.twig
  74. 32
      templates/field/field--entity-reference.html.twig
  75. 80
      templates/field/field.html.twig
  76. 13
      templates/field/image.html.twig
  77. 43
      templates/form/details.html.twig
  78. 59
      templates/layout/html.html.twig
  79. 46
      templates/layout/maintenance-page.html.twig
  80. 35
      templates/layout/page.html.twig
  81. 25
      templates/layout/region.html.twig
  82. 53
      templates/misc/status-messages.html.twig
  83. 56
      templates/navigation/book-navigation.html.twig
  84. 47
      templates/navigation/book-tree.html.twig
  85. 24
      templates/navigation/breadcrumb.html.twig
  86. 57
      templates/navigation/links--node.html.twig
  87. 17
      templates/navigation/menu-local-task.html.twig
  88. 21
      templates/navigation/menu-local-tasks.html.twig
  89. 57
      templates/navigation/menu.html.twig
  90. 1
      templates/template-parts/components/scrolltotop.html.twig
  91. 3
      templates/template-parts/content-parts/content_bottom.html.twig
  92. 3
      templates/template-parts/content-parts/content_home_bottom.html.twig
  93. 3
      templates/template-parts/content-parts/content_home_top.html.twig
  94. 3
      templates/template-parts/content-parts/content_top.html.twig
  95. 26
      templates/template-parts/footer/footer-blocks.html.twig
  96. 16
      templates/template-parts/footer/footer-bottom-blocks.html.twig
  97. 5
      templates/template-parts/footer/footer-bottom-last.html.twig
  98. 14
      templates/template-parts/footer/footer-bottom.html.twig
  99. 3
      templates/template-parts/footer/footer-copyright.html.twig
  100. 7
      templates/template-parts/footer/footer-top.html.twig
  101. Some files were not shown because too many files have changed in this diff Show More

6
.gitignore vendored

@ -0,0 +1,6 @@
*.swp
*.swo
node_modules
do-not-upload
.tmp.drivedownload
.tmp.driveupload

339
LICENSE.txt

@ -0,0 +1,339 @@
GNU GENERAL PUBLIC LICENSE
Version 2, June 1991
Copyright (C) 1989, 1991 Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
Preamble
The licenses for most software are designed to take away your
freedom to share and change it. By contrast, the GNU General Public
License is intended to guarantee your freedom to share and change free
software--to make sure the software is free for all its users. This
General Public License applies to most of the Free Software
Foundation's software and to any other program whose authors commit to
using it. (Some other Free Software Foundation software is covered by
the GNU Lesser General Public License instead.) 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
this service 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 make restrictions that forbid
anyone to deny you these rights or to ask you to surrender the rights.
These restrictions translate to certain responsibilities for you if you
distribute copies of the software, or if you modify it.
For example, if you distribute copies of such a program, whether
gratis or for a fee, you must give the recipients all the rights that
you have. 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.
We protect your rights with two steps: (1) copyright the software, and
(2) offer you this license which gives you legal permission to copy,
distribute and/or modify the software.
Also, for each author's protection and ours, we want to make certain
that everyone understands that there is no warranty for this free
software. If the software is modified by someone else and passed on, we
want its recipients to know that what they have is not the original, so
that any problems introduced by others will not reflect on the original
authors' reputations.
Finally, any free program is threatened constantly by software
patents. We wish to avoid the danger that redistributors of a free
program will individually obtain patent licenses, in effect making the
program proprietary. To prevent this, we have made it clear that any
patent must be licensed for everyone's free use or not licensed at all.
The precise terms and conditions for copying, distribution and
modification follow.
GNU GENERAL PUBLIC LICENSE
TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
0. This License applies to any program or other work which contains
a notice placed by the copyright holder saying it may be distributed
under the terms of this General Public License. The "Program", below,
refers to any such program or work, and a "work based on the Program"
means either the Program or any derivative work under copyright law:
that is to say, a work containing the Program or a portion of it,
either verbatim or with modifications and/or translated into another
language. (Hereinafter, translation is included without limitation in
the term "modification".) Each licensee is addressed as "you".
Activities other than copying, distribution and modification are not
covered by this License; they are outside its scope. The act of
running the Program is not restricted, and the output from the Program
is covered only if its contents constitute a work based on the
Program (independent of having been made by running the Program).
Whether that is true depends on what the Program does.
1. You may copy and distribute 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 and disclaimer of warranty; keep intact all the
notices that refer to this License and to the absence of any warranty;
and give any other recipients of the Program a copy of this License
along with the Program.
You may charge a fee for the physical act of transferring a copy, and
you may at your option offer warranty protection in exchange for a fee.
2. You may modify your copy or copies of the Program or any portion
of it, thus forming a work based on the Program, and copy and
distribute such modifications or work under the terms of Section 1
above, provided that you also meet all of these conditions:
a) You must cause the modified files to carry prominent notices
stating that you changed the files and the date of any change.
b) You must cause any work that you distribute or publish, that in
whole or in part contains or is derived from the Program or any
part thereof, to be licensed as a whole at no charge to all third
parties under the terms of this License.
c) If the modified program normally reads commands interactively
when run, you must cause it, when started running for such
interactive use in the most ordinary way, to print or display an
announcement including an appropriate copyright notice and a
notice that there is no warranty (or else, saying that you provide
a warranty) and that users may redistribute the program under
these conditions, and telling the user how to view a copy of this
License. (Exception: if the Program itself is interactive but
does not normally print such an announcement, your work based on
the Program is not required to print an announcement.)
These requirements apply to the modified work as a whole. If
identifiable sections of that work are not derived from the Program,
and can be reasonably considered independent and separate works in
themselves, then this License, and its terms, do not apply to those
sections when you distribute them as separate works. But when you
distribute the same sections as part of a whole which is a work based
on the Program, the distribution of the whole must be on the terms of
this License, whose permissions for other licensees extend to the
entire whole, and thus to each and every part regardless of who wrote it.
Thus, it is not the intent of this section to claim rights or contest
your rights to work written entirely by you; rather, the intent is to
exercise the right to control the distribution of derivative or
collective works based on the Program.
In addition, mere aggregation of another work not based on the Program
with the Program (or with a work based on the Program) on a volume of
a storage or distribution medium does not bring the other work under
the scope of this License.
3. You may copy and distribute the Program (or a work based on it,
under Section 2) in object code or executable form under the terms of
Sections 1 and 2 above provided that you also do one of the following:
a) Accompany it with the complete corresponding machine-readable
source code, which must be distributed under the terms of Sections
1 and 2 above on a medium customarily used for software interchange; or,
b) Accompany it with a written offer, valid for at least three
years, to give any third party, for a charge no more than your
cost of physically performing source distribution, a complete
machine-readable copy of the corresponding source code, to be
distributed under the terms of Sections 1 and 2 above on a medium
customarily used for software interchange; or,
c) Accompany it with the information you received as to the offer
to distribute corresponding source code. (This alternative is
allowed only for noncommercial distribution and only if you
received the program in object code or executable form with such
an offer, in accord with Subsection b above.)
The source code for a work means the preferred form of the work for
making modifications to it. For an executable work, complete source
code means all the source code for all modules it contains, plus any
associated interface definition files, plus the scripts used to
control compilation and installation of the executable. However, as a
special exception, the source code distributed need not include
anything that is normally distributed (in either source or binary
form) with the major components (compiler, kernel, and so on) of the
operating system on which the executable runs, unless that component
itself accompanies the executable.
If distribution of executable or object code is made by offering
access to copy from a designated place, then offering equivalent
access to copy the source code from the same place counts as
distribution of the source code, even though third parties are not
compelled to copy the source along with the object code.
4. You may not copy, modify, sublicense, or distribute the Program
except as expressly provided under this License. Any attempt
otherwise to copy, modify, sublicense or distribute the Program is
void, and will automatically terminate your rights under this License.
However, parties who have received copies, or rights, from you under
this License will not have their licenses terminated so long as such
parties remain in full compliance.
5. You are not required to accept this License, since you have not
signed it. However, nothing else grants you permission to modify or
distribute the Program or its derivative works. These actions are
prohibited by law if you do not accept this License. Therefore, by
modifying or distributing the Program (or any work based on the
Program), you indicate your acceptance of this License to do so, and
all its terms and conditions for copying, distributing or modifying
the Program or works based on it.
6. Each time you redistribute the Program (or any work based on the
Program), the recipient automatically receives a license from the
original licensor to copy, distribute or modify the Program subject to
these terms and conditions. You may not impose any further
restrictions on the recipients' exercise of the rights granted herein.
You are not responsible for enforcing compliance by third parties to
this License.
7. If, as a consequence of a court judgment or allegation of patent
infringement or for any other reason (not limited to patent issues),
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
distribute so as to satisfy simultaneously your obligations under this
License and any other pertinent obligations, then as a consequence you
may not distribute the Program at all. For example, if a patent
license would not permit royalty-free redistribution of the Program by
all those who receive copies directly or indirectly through you, then
the only way you could satisfy both it and this License would be to
refrain entirely from distribution of the Program.
If any portion of this section is held invalid or unenforceable under
any particular circumstance, the balance of the section is intended to
apply and the section as a whole is intended to apply in other
circumstances.
It is not the purpose of this section to induce you to infringe any
patents or other property right claims or to contest validity of any
such claims; this section has the sole purpose of protecting the
integrity of the free software distribution system, which is
implemented by public license practices. Many people have made
generous contributions to the wide range of software distributed
through that system in reliance on consistent application of that
system; it is up to the author/donor to decide if he or she is willing
to distribute software through any other system and a licensee cannot
impose that choice.
This section is intended to make thoroughly clear what is believed to
be a consequence of the rest of this License.
8. If the distribution and/or use of the Program is restricted in
certain countries either by patents or by copyrighted interfaces, the
original copyright holder who places the Program under this License
may add an explicit geographical distribution limitation excluding
those countries, so that distribution is permitted only in or among
countries not thus excluded. In such case, this License incorporates
the limitation as if written in the body of this License.
9. The Free Software Foundation may publish revised and/or new versions
of the 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 a version number of this License which applies to it and "any
later version", you have the option of following the terms and conditions
either of that version or of any later version published by the Free
Software Foundation. If the Program does not specify a version number of
this License, you may choose any version ever published by the Free Software
Foundation.
10. If you wish to incorporate parts of the Program into other free
programs whose distribution conditions are different, write to the author
to ask for permission. For software which is copyrighted by the Free
Software Foundation, write to the Free Software Foundation; we sometimes
make exceptions for this. Our decision will be guided by the two goals
of preserving the free status of all derivatives of our free software and
of promoting the sharing and reuse of software generally.
NO WARRANTY
11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, 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.
12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
REDISTRIBUTE 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.
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
convey 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 2 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, write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
Also add information on how to contact you by electronic and paper mail.
If the program is interactive, make it output a short notice like this
when it starts in an interactive mode:
Gnomovision version 69, Copyright (C) year name of author
Gnomovision 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, the commands you use may
be called something other than `show w' and `show c'; they could even be
mouse-clicks or menu items--whatever suits your program.
You should also get your employer (if you work as a programmer) or your
school, if any, to sign a "copyright disclaimer" for the program, if
necessary. Here is a sample; alter the names:
Yoyodyne, Inc., hereby disclaims all copyright interest in the program
`Gnomovision' (which makes passes at compilers) written by James Hacker.
<signature of Ty Coon>, 1 April 1989
Ty Coon, President of Vice
This 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.

1
README.txt

@ -0,0 +1 @@
vre2024 - Drupal 8 and 9 Base Theme.

14
bs.js

@ -0,0 +1,14 @@
var browserSync = require('browser-sync');
browserSync({
proxy: 'https://islandlives2023.lndo.site',
files: 'css/**/*.css',
plugins: ['bs-rewrite-rules'],
serveStatic: ['.'],
rewriteRules: [
{
match: /\/themes\/custom\/robertsonlibrary_v1/g,
replace: ''
}
]
});

77
changelog.txt

@ -0,0 +1,77 @@
version 9.1.0
15 Dec 2021
+-----------------------------+
# Initial release of series 9.x.x
version 9.1.1
15 Dec 2021
+-----------------------------+
# Minor improvements
version 9.1.2
23 Dec 2021
+-----------------------------+
# Fixed minor known bugs.
version 9.1.3
08 Feb 2022
+-----------------------------+
- Added two new css variables --color-text, --color-heading
- Added new shortcode for light background "bg-light"
- Changed scroll to top arrow icon path.
version 9.2.0
29 August 2022
+-----------------------------+
- Theme now supports Drupal 10
- Added shortcode for text color - dark, light
- Added shortcode section-small
- Other minor changes and improvements.
version 10.0.0
30 August 2023
+-----------------------------+
- Initial release of 10.x.x series
- Minor improvements.
version 10.0.1
30 August 2023
+-----------------------------+
- Add custom font icon library. https://drupar.com/node/2875/
- Updated Bootstrap Font Icons to version 1.10.5
- Updated FontAwesome 5 Font Icons to version 5.15.4
- Added styling for EU Cookie Compliance module.
- Minor improvements.
version 10.0.2
31 August 2023
+-----------------------------+
- Removed menu--main.html.twig template file.
- Theme now uses menu.html.twig
- New animated mobile menu icon.
- Minor improvements.
version 10.0.3
01 September 2023
+-----------------------------+
- New template file: header-primary-menu.html.twig
- Minor improvements of main menu.
version 10.0.4
05 September 2023
+-----------------------------+
- Removed padding from sidebar.
- Removed margin-bottom from sidebar block.
- Removed margin bottom from main.
- Fixed display of contextual-links in header-top region.
- Added a default background color for footer.
- Added a default background color for sidebar blocks.

24
config/optional/block.block.vre2024_account_menu.yml

@ -0,0 +1,24 @@
langcode: en
status: true
dependencies:
config:
- system.menu.account
module:
- system
theme:
- vre2024
id: vre2024_account_menu
theme: vre2024
region: hidden
weight: -7
provider: null
plugin: 'system_menu_block:account'
settings:
id: 'system_menu_block:account'
label: 'User account menu'
provider: system
label_display: '0'
level: 1
depth: 1
expand_all_items: false
visibility: { }

22
config/optional/block.block.vre2024_branding.yml

@ -0,0 +1,22 @@
langcode: en
status: true
dependencies:
module:
- system
theme:
- vre2024
id: vre2024_branding
theme: vre2024
region: header
weight: 0
provider: null
plugin: system_branding_block
settings:
id: system_branding_block
label: 'Site branding'
provider: system
label_display: '0'
use_site_logo: true
use_site_name: true
use_site_slogan: true
visibility: { }

19
config/optional/block.block.vre2024_breadcrumbs.yml

@ -0,0 +1,19 @@
langcode: en
status: true
dependencies:
module:
- system
theme:
- vre2024
id: vre2024_breadcrumbs
theme: vre2024
region: page_header
weight: -7
provider: null
plugin: system_breadcrumb_block
settings:
id: system_breadcrumb_block
label: Breadcrumbs
provider: system
label_display: '0'
visibility: { }

19
config/optional/block.block.vre2024_content.yml

@ -0,0 +1,19 @@
langcode: en
status: true
dependencies:
module:
- system
theme:
- vre2024
id: vre2024_content
theme: vre2024
region: content
weight: 0
provider: null
plugin: system_main_block
settings:
id: system_main_block
label: 'Main page content'
provider: system
label_display: '0'
visibility: { }

24
config/optional/block.block.vre2024_footer.yml

@ -0,0 +1,24 @@
langcode: en
status: true
dependencies:
config:
- system.menu.footer
module:
- system
theme:
- vre2024
id: vre2024_footer
theme: vre2024
region: footer_four
weight: -11
provider: null
plugin: 'system_menu_block:footer'
settings:
id: 'system_menu_block:footer'
label: 'Footer menu'
provider: system
label_display: '0'
level: 1
depth: 0
expand_all_items: false
visibility: { }

19
config/optional/block.block.vre2024_help.yml

@ -0,0 +1,19 @@
langcode: en
status: true
dependencies:
module:
- help
theme:
- vre2024
id: vre2024_help
theme: vre2024
region: content
weight: -30
provider: null
plugin: help_block
settings:
id: help_block
label: Help
provider: help
label_display: '0'
visibility: { }

17
config/optional/block.block.vre2024_local_actions.yml

@ -0,0 +1,17 @@
langcode: en
status: true
dependencies:
theme:
- vre2024
id: vre2024_local_actions
theme: vre2024
region: content
weight: -20
provider: null
plugin: local_actions_block
settings:
id: local_actions_block
label: 'Primary admin actions'
provider: core
label_display: '0'
visibility: { }

19
config/optional/block.block.vre2024_local_tasks.yml

@ -0,0 +1,19 @@
langcode: en
status: true
dependencies:
theme:
- vre2024
id: vre2024_local_tasks
theme: vre2024
region: content
weight: -40
provider: null
plugin: local_tasks_block
settings:
id: local_tasks_block
label: Tabs
provider: core
label_display: '0'
primary: true
secondary: true
visibility: { }

24
config/optional/block.block.vre2024_main_menu.yml

@ -0,0 +1,24 @@
langcode: en
status: true
dependencies:
config:
- system.menu.main
module:
- system
theme:
- vre2024
id: vre2024_main_menu
theme: vre2024
region: hidden
weight: -8
provider: null
plugin: 'system_menu_block:main'
settings:
id: 'system_menu_block:main'
label: 'Main navigation'
provider: system
label_display: '0'
level: 1
depth: 1
expand_all_items: false
visibility: { }

19
config/optional/block.block.vre2024_messages.yml

@ -0,0 +1,19 @@
langcode: en
status: true
dependencies:
module:
- system
theme:
- vre2024
id: vre2024_messages
theme: vre2024
region: highlighted
weight: 0
provider: null
plugin: system_messages_block
settings:
id: system_messages_block
label: 'Status messages'
provider: system
label_display: '0'
visibility: { }

17
config/optional/block.block.vre2024_page_title.yml

@ -0,0 +1,17 @@
langcode: en
status: true
dependencies:
theme:
- vre2024
id: vre2024_page_title
theme: vre2024
region: page_header
weight: -6
provider: null
plugin: page_title_block
settings:
id: page_title_block
label: 'Page title'
provider: core
label_display: '0'
visibility: { }

19
config/optional/block.block.vre2024_powered.yml

@ -0,0 +1,19 @@
langcode: en
status: true
dependencies:
module:
- system
theme:
- vre2024
id: vre2024_powered
theme: vre2024
region: footer_bottom_left
weight: -7
provider: null
plugin: system_powered_by_block
settings:
id: system_powered_by_block
label: 'Powered by Drupal'
provider: system
label_display: '0'
visibility: { }

20
config/optional/block.block.vre2024_search.yml

@ -0,0 +1,20 @@
langcode: en
status: true
dependencies:
module:
- search
theme:
- vre2024
id: vre2024_search
theme: vre2024
region: search_box
weight: -8
provider: null
plugin: search_form_block
settings:
id: search_form_block
label: Search
provider: search
label_display: visible
page_id: node_search
visibility: { }

24
config/optional/block.block.vre2024_tools.yml

@ -0,0 +1,24 @@
langcode: en
status: true
dependencies:
config:
- system.menu.tools
module:
- system
theme:
- vre2024
id: vre2024_tools
theme: vre2024
region: hidden
weight: -6
provider: null
plugin: 'system_menu_block:tools'
settings:
id: 'system_menu_block:tools'
label: Tools
provider: system
label_display: visible
level: 1
depth: 0
expand_all_items: false
visibility: { }

5
config/schema/vre2024.schema.yml

@ -0,0 +1,5 @@
# Schema for the configuration files of vre2024 theme.
vre2024.settings:
type: theme_settings
label: 'vre2024 Settings'

10
credit.txt

@ -0,0 +1,10 @@
FontAwesome font icons
+---------------------------+
https://fontawesome.com
Bootstrap Icons
+---------------------------+
https://icons.getbootstrap.com/

546
css/base.css

@ -0,0 +1,546 @@
/* Font info
---------------------------------------- */
/* Variables
---------------------------------------- */
:root {
--upei-red: #8c2004;
--upei-green: #5C8727;
--upei-yellow: #fbb040;
--primary: #365AB5;
--secondary: #D05700;
--dark: #232742;
--light: #D5DCEE;
--border: #99A4C1;
--color-text: #444444;
--color-heading: #111111;
}
/* Default box sizing.
---------------------------------------- */
*,
*::before,
*::after {
box-sizing: border-box;
}
/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
h6,
figure,
blockquote,
dl,
dd {
margin: 0;
}
/* HTML and Body
---------------------------------------- */
html:focus-within {
scroll-behavior: smooth;
}
html {
font-size: 16px;
scroll-behavior: smooth;
}
html,
body {
height: 100%;
}
body {
color: var(--color-text);
font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
font-size: 1rem;
font-weight: 400;
min-height: 100vh;
margin: 0;
padding: 0;
line-height: 1.6;
text-rendering: optimizeSpeed;
overflow-x: hidden;
-webkit-font-smoothing: subpixel-antialiased;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
/* Regions
---------------------------------------- */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
display: block;
}
summary {
display: list-item;
cursor: pointer;
}
details {
padding: 1rem;
margin-bottom: 1rem;
border: 1px solid var(--border);
}
template,
[hidden] {
display: none;
}
/* Typography
---------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
color: var(--color-heading);
font-weight: 700;
font-style: normal;
line-height: 1.6;
}
h1 {
font-size: 2.2rem;
}
h2 {
font-size: 1.9rem;
}
h3 {
font-size: 1.6rem;
}
h4 {
font-size: 1.3rem;
}
h5 {
font-size: 1.1rem;
}
h6 {
font-size: 1.1rem;
}
p {
margin: 0 0 1.2rem 0;
}
b,
strong {
font-weight: bolder;
}
dfn,
cite {
font-style: italic;
}
del {
text-decoration: line-through;
}
small {
font-size: 80%;
}
big {
font-size: 125%;
}
em {
font-style: normal;
}
a {
background-color: transparent;
text-decoration: none;
color: var(--primary);
}
a:active,
a:focus {
text-decoration: none;
border: 0;
outline: 0;
}
a:hover {
color: var(--secondary);
}
a:not([class]) {
text-decoration-skip-ink: auto;
}
/* Typography-> code tags */
code,
kbd,
pre,
samp {
font-family: monospace, monospace;
font-size: 1rem;
}
kbd,
samp {
display: inline-block;
margin: 0;
padding: 0 5px;
}
pre {
overflow: auto;
margin: 1rem 0;
padding: 1rem;
tab-size: 2;
}
sub,
sup {
position: relative;
font-size: 75%;
line-height: 0;
vertical-align: baseline;
}
sub {
bottom: -0.25em;
}
sup {
top: -0.5em;
}
tt,
var {
font-family: monospace, monospace;
font-style: italic;
}
mark {
background: var(--primary);
}
acronym[title], abbr[title] {
border-bottom: none;
text-decoration: underline;
-webkit-text-decoration: underline dotted;
text-decoration: underline dotted;
}
abbr,
acronym {
cursor: help;
}
/* Media
---------------------------------------- */
audio,
canvas,
progress,
video {
vertical-align: baseline;
max-width:100%;
}
audio:not([controls]) {
display: none;
height: 0;
}
img,
picture,
svg {
max-width: 100% !important;
height: auto;
margin: 0;
padding: 0;
border: 0;
border-style: none;
vertical-align: middle;
}
svg:not(:root) {
overflow: hidden;
}
figure {
max-width: 100%;
height: auto;
margin: 1rem 0;
border: 0;
}
.align-left {
margin: 0 1rem 0 0;
}
.align-right {
margin: 0 0 0 1rem;
}
.align-center {
margin-top: 1rem;
margin-bottom: 1rem;
}
figcaption {
padding: 4px;
font-size: 0.8rem;
text-align: center;
}
.image-field {
margin: 0 0 1rem 0;
}
/* Form
---------------------------------------- */
form {
margin-bottom: 1rem;
}
button,
input,
optgroup,
select,
textarea {
font-family: inherit;
font-size: 100%;
line-height: 1.6;
margin: 0;
}
button,
input {
overflow: visible;
}
button,
select {
text-transform: none;
}
.button {
display:inline-block;
}
.button,
button,
[type="button"],
[type="reset"],
[type="submit"] {
position: relative;
cursor: pointer;
border: 0;
padding: 8px 10px;
line-height: 1.6;
-webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
border-style: none;
padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
outline: 0;
}
button[disabled],
html input[disabled] {
cursor: not-allowed;
opacity: 0.7;
}
::-webkit-file-upload-button {
-webkit-appearance: button;
font: inherit;
}
input,
button,
textarea,
select {
font: inherit;
}
input {
line-height: normal;
}
input,
textarea {
max-width: 100%;
}
input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
textarea {
padding: 10px;
}
input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
textarea:focus {
outline: 0;
}
textarea {
width: 100%;
overflow: auto;
}
[type="checkbox"],
[type="radio"] {
padding: 0;
cursor: pointer;
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
height: auto;
}
[type="search"] {
-webkit-appearance: textfield;
outline-offset: -2px;
-webkit-appearance: textfield;
-moz-appearance: textfield;
}
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
[type="file"] {
cursor: pointer;
}
fieldset {
margin: 0 0 20px 0;
padding: 1rem;
}
fieldset > :last-child {
margin-bottom: 0;
}
legend {
box-sizing: border-box;
color: inherit;
display: table;
max-width: 100%;
padding: 0;
white-space: normal;
}
optgroup {
font-weight: bold;
}
select {
padding: 6px;
cursor: pointer;
}
label[for] {
cursor: pointer;
}
/* Form */
.form-item {
margin-bottom: 1rem;
}
.form-required:after {
content: "*";
display: inline-block;
padding-left: 4px;
color: red;
}
.form-item label {
display: block;
}
label.option {
display: inline;
font-weight: normal;
}
::-webkit-input-placeholder {
color: var(--border);
}
:-moz-placeholder {
color: var(--border);
}
::-moz-placeholder {
color: var(--border);
opacity: 1;
}
:-ms-input-placeholder {
color: var(--border);
}
.field--name-body input[type="text"],
.field--name-body input[type="email"],
.field--name-body input[type="url"],
.field--name-body input[type="password"],
.field--name-body input[type="search"],
.field--name-body textarea {
display: block;
margin-bottom: 0.8rem;
}
/* Common HTML Elements
---------------------------------------- */
hr {
background-color: var(--border);
clear: both;
width: 100%;
max-width: 100%;
height: 2px;
border: 0;
-webkit-box-sizing: content-box;
box-sizing: content-box;
overflow: visible;
}
address {
margin: 0 0 1rem 0;
font-style: italic;
}
/* Definition Lists */
dt {
font-weight: 700;
}
dd {
margin: 0 0 1.2rem 0;
}
blockquote {
position: relative;
background-color: var(--light);
margin: 1rem 0;
padding: 1rem;
}
blockquote > :last-child {
margin-bottom: 0;
}
/* List
---------------------------------------- */
ul,
ol {
margin: 0;
padding: 0 0 0.25rem 1rem;
}
[dir="rtl"] ul,
[dir="rtl"] ol {
padding: 0 1rem 0.25rem 0;
}
ol ol,
ul ul {
margin: 0;
padding: 0 0 0.25rem 1rem;
}
[dir="rtl"] ol ol,
[dir="rtl"] ul ul {
padding: 0 1rem 0.25rem 0;
}
ul {
list-style: disc;
}
li > ul,
li > ol {
margin-bottom: 0;
}
[dir="rtl"] ul,
[dir="rtl"] ol {
padding: 0 1rem 0.25rem 0;
}
li {
padding: 4px 0;
}
/* Table
---------------------------------------- */
table {
width: 100%;
margin-bottom: 1.2rem;
border-spacing: 0;
border-collapse: collapse;
}
th,
tr,
td {
vertical-align: middle;
}
th {
margin: 0;
padding: 5px;
text-align: left;
}
td {
padding: 5px;
}

6
css/block.css

@ -0,0 +1,6 @@
/* Common for all blocks */
.block,
.block-title,
.block-content {
position: relative;
}

0
css/book.css

5
css/bootstrap-icons.css vendored

File diff suppressed because one or more lines are too long

11
css/clear.css

@ -0,0 +1,11 @@
/* Clearing
--------------------------------------*/
.clear {
position: relative;
}
.clear::before,
.clear::after {
content: '';
display: table;
clear: both;
}

83
css/comments.css

@ -0,0 +1,83 @@
#comments {
position: relative;
margin: 0;
}
.comments-title i,
.add-comment-title i {
font-size: 1em;
}
/* Comment -> comment form */
.comment-form-wrap {
position: relative;
margin: 2rem 0 1rem 0;
}
.add-comment-title {
margin: 0;
}
.comment-form label {
display: block;
}
/* Comments -> single comment */
.comment {
position: relative;
background-color: var(--light);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
flex-direction: column;
width: 100%;
margin-bottom: 1rem;
padding: 1rem;
}
.comment-header {
position: relative;
display: flex;
width: 100%;
border-bottom: 2px solid var(--border);
padding: 1rem;
margin-bottom: 1rem;
}
.comment-user-picture {
position: relative;
text-align: center;
align-self: center;
}
.comment-user-picture img {
max-width: 100px;
height: auto;
}
.comment-user-picture .image-field {
margin: 0;
}
.comment-meta {
padding-left: 1rem;
}
h3.comment-title {
font-size: 1.2rem;
margin: 0.1rem 0;
}
.comment-meta p {
margin: 0
}
.comment-body {
position: relative;
width: 100%;
-webkit-box-flex: 1;
-ms-flex: 1 1;
flex: 1 1;
}
#comments .indented {
margin-left: 3rem;
}
.comment-body .links {
display: flex;
gap: 1rem;
}
.comment-body .links a {
padding: 4px 12px;
border: 2px solid var(--border);
border-radius: 4px;
}
.comment-body .links a:hover {
background-color: #ffffff;
}

217
css/components.css

@ -0,0 +1,217 @@
/* Admin Toolbar */
button.toolbar-item,
button.toolbar-icon {
background: none;
}
/* Drupal system message */
.message {
position: relative;
margin: 1rem 0;
padding: 1rem 1rem 1rem 4rem;
color: #ffffff;
}
.message a,
.message a:visited {
color: #ffffff;
text-decoration: underline;
}
.message p:last-child {
margin: 0;
}
.message em {
font-style: italic;
}
.message-status {
background: #89ad32;
}
.message-status::before {
content: url(../images/icons/message/success.svg);
background: #759625;
}
.message-error {
background: #c94d1c;
}
.message-error::before {
content: url(../images/icons/message/error.svg);
background-color: #b3461b;
}
.message-warning {
background: #cd5a0a;
}
.message-warning::before {
content: url(../images/icons/message/warning.svg);
background-color: #a44707;
}
.message::before {
position: absolute;
top: 0;
left: 0;
width: 3.6rem;
height: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
line-height: 0;
}
/* Main -> Admin Tabs */
ul.page-tabs {
margin: 0 0 0.6rem 0;
padding: 0;
list-style: none;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
border-bottom: 2px solid var(--primary);
}
.page-tabs li {
display: -webkit-inline-box;
display: -ms-inline-flexbox;
display: inline-flex;
padding: 0;
}
.page-tabs li a {
background-color: var(--dark);
color: #ffffff;
padding: 0.5rem 1rem;
border-right: 2px solid var(--border);
}
.page-tabs li.active-page-tab a,
.page-tabs li a:hover {
color: var(--primary);
}
/* Node submitted details */
.node-submitted-details {
position: relative;
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
}
.node-submitted-details {
-webkit-flex: 1 1 auto;
-ms-flex: 1 1 auto;
flex: 1 1 auto;
}
/* Entity reference */
.node-taxonomy-container, .node-links-container {
position: relative;
display: block;
width: 100%;
margin: 0;
padding: 1rem 0;
}
h3.term-title {
font-size: 1.2em;
}
ul.taxonomy-terms {
margin: 10px 0;
padding: 0;
list-style: none;
list-style-type: none;
}
li.taxonomy-term {
position: relative;
display: inline-block;
padding: 0;
word-break: break-all;
}
li.taxonomy-term:not(:last-child) {
margin-right: 1rem;
}
.taxonomy-term a {
padding: 6px 14px;
border: 2px solid var(--border);
}
/* Node Links */
.node-links-container ul.links {
position: relative;
margin: 0;
padding: 0;
list-style: none;
list-style-type: none;
}
.node-links-container .links {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
ul.inline,
ul.links.inline {
padding-left: 0;
}
ul.inline li {
position: relative;
display: inline-block;
list-style-type: none;
}
ul.inline li a {
display: inline-block;
}
/* Pager */
.pager {
position: relative;
}
.pager ul.pager__items {
position: relative;
margin: 0;
padding: 1rem 0;
list-style: none;
list-style-type: none;
}
.pager__items {
clear: both;
text-align: center;
}
.pager__item {
display: inline-block;
padding: 12px 0;
}
.pager__item a {
padding: 8px 14px;
color: #fff;
background: var(--dark);
}
.pager__item a:hover,
.pager__item.is-active a {
background: var(--primary);
color: #fff;
}
/* vertical Tabs */
.vertical-tabs__panes {
padding: 1rem;
}
/* components -> Scroll To Top. */
.scrolltop {
position: fixed;
display: none;
bottom: 10px;
right: 10px;
width: 50px;
height: 50px;
border-radius: 50%;
background: var(--primary);
color: #ffffff;
font-size: 20px;
z-index: 20;
cursor: pointer;
text-align: center;
padding: 4px;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.scrolltop:hover {
background: var(--secondary);
}

32
css/core.css

@ -0,0 +1,32 @@
/**
* Drupal core
*/
/* Core -> contextual-links */
.header-top .contextual-links {
display: none;
}
/* Core -> Fields */
[dir] .field:not(:last-child){
margin-bottom:36px;
}
.field__label {
font-weight: bold;
}
.field--label-inline .field__label,
.field--label-inline .field__items {
float: left; /* LTR */
}
.field--label-inline .field__label,
.field--label-inline > .field__item,
.field--label-inline .field__items {
padding-right: 0.5rem;
}
[dir="rtl"] .field--label-inline .field__label,
[dir="rtl"] .field--label-inline .field__items {
padding-right: 0;
padding-left: 0.5rem;
}
.field--label-inline .field__label::after {
content: ":";
}

0
css/elements.css

70
css/extra.css

@ -0,0 +1,70 @@
/* EU Cookie Compliance module */
div#sliding-popup, div#sliding-popup .eu-cookie-withdraw-banner, .eu-cookie-withdraw-tab {
background-color: #ffffff;
box-shadow: 0 0 6px 2px var(--border);
left: 0;
}
#sliding-popup {
padding: 2rem;
max-width: 540px;
}
#sliding-popup .popup-content {
display: flex;
flex-direction: column;
gap: 1rem;
}
.eu-cookie-compliance-content {
max-width: 100%;
}
.eu-cookie-compliance-message {
float: none;
margin: 0;
max-width: 100%;
}
#sliding-popup div,
#sliding-popup h2 {
color: var( --color-heading);
}
#sliding-popup h2 {
font-size: 1.2rem;
}
#sliding-popup p {
display: block;
color: var(--color-text);
font-size: 1rem;
font-weight: 400;
}
.eu-cookie-compliance-message button {
background-color: transparent;
color: var(--primary);
margin: 0;
padding: 0;
border: 0;
}
.eu-cookie-compliance-message button:hover {
background-color: transparent;
color: var( --color-heading);
}
.eu-cookie-compliance-buttons {
display: flex;
gap: 1rem;
float: none;
margin: 0;
max-width: 100%;
}
.eu-cookie-compliance-buttons .button {
background-color: transparent;
background-image: none;
color: var(--primary);
font-weight: 400;
margin: 0;
padding: 8px 1rem;
border: 2px solid var( --color-heading);
text-shadow: none;
box-shadow: none;
border-radius: 0;
}
.eu-cookie-compliance-buttons .button:hover {
background-color: var( --color-heading);
color: #ffffff;
}

2337
css/font-awesome.css vendored

File diff suppressed because it is too large Load Diff

4619
css/font-awesome5.css

File diff suppressed because it is too large Load Diff

166
css/font-icon.css

@ -0,0 +1,166 @@
/*!
* The-X icon font. Generated by Iconly: https://iconly.io/
*/
@font-face {
font-display: auto;
font-family: "vre2024";
font-style: normal;
font-weight: 400;
src: url("../fonts/vre2024.woff2") format("woff2");
}
[class="icon"], [class^="icon-"], [class*=" icon-"] {
display: inline-block;
font-family: "vre2024" !important;
font-weight: 400;
font-style: normal;
font-variant: normal;
text-rendering: auto;
line-height: 1;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
}
.icon-close:before {
content: "\e000";
}
.icon-search:before {
content: "\e001";
}
.icon-user:before {
content: "\e002";
}
.icon-calendar:before {
content: "\e003";
}
.icon-twitter:before {
content: "\e004";
}
.icon-facebook:before {
content: "\e005";
}
.icon-github:before {
content: "\e006";
}
.icon-linkedin:before {
content: "\e007";
}
.icon-comments:before {
content: "\e008";
}
.icon-file:before {
content: "\e009";
}
.icon-youtube:before {
content: "\e00a";
}
.icon-instagram:before {
content: "\e00b";
}
.icon-vk:before {
content: "\e00c";
}
.icon-whatsapp:before {
content: "\e00d";
}
.icon-vimeo:before {
content: "\e00e";
}
.icon-hashtag:before {
content: "\e00f";
}
.icon-telegram:before {
content: "\e010";
}
.icon-share:before {
content: "\e011";
}
.icon-mail:before {
content: "\e012";
}
.icon-map:before {
content: "\e013";
}
.icon-phone:before {
content: "\e014";
}
.icon-arrow-up:before {
content: "\e015";
}
.icon-horn:before {
content: "\e016";
}
.icon-bell:before {
content: "\e017";
}
.icon-info:before {
content: "\e018";
}
.icon-comment:before {
content: "\e019";
}
.icon-angle-left:before {
content: "\e01a";
}
.icon-angle-right:before {
content: "\e01b";
}
.icon-arrow-right:before {
content: "\e01c";
}
.icon-arrow-left:before {
content: "\e01d";
}
.icon-quote:before {
content: "\e01e";
}
.icon-clock:before {
content: "\e01f";
}
.icon-alert-circle:before {
content: "\e020";
}
.icon-alert:before {
content: "\e021";
}
.icon-check:before {
content: "\e022";
}
.icon-comment-add:before {
content: "\e024";
}

4614
css/fontawesome5.css

File diff suppressed because it is too large Load Diff

87
css/footer.css

@ -0,0 +1,87 @@
/**
* footer
*/
/* Footer */
.footer {
position: relative;
background-color: var(--light);
width: 100%;
margin: 0;
padding: 0;
}
.footer ul {
list-style: none;
padding: 0;
}
.footer .block p:last-of-type {
margin: 0;
}
/* Footer -> Footer Top */
.footer-top-container {
position: relative;
padding: 1rem 0;
}
.region-footer-top {
display: flex;
flex-direction: column;
gap: 1.5rem;
}
/* Footer -> 4 Column blocks */
.footer-blocks-container {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
padding: 2rem 0;
gap: 1.5rem;
}
.footer-block {
-webkit-box-flex: 1;
-ms-flex: 1 1 250px;
flex: 1 1 250px;
}
.footer-block li {
border-bottom: 1px solid var(--border);
}
/* Footer -> Footer Bottom */
.footer-bottom-blocks-container {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
padding: 1rem 0;
gap: 2rem;
}
.footer-bottom-block {
flex: 1;
}
.footer-bottom-container {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
padding: 1rem 0;
gap: 2rem;
}
.footer-bottom-container p:last-child {
margin: 0;
}
.footer-bottom-last-menu {
margin: 0;
padding: 0;
list-style: none;
}
.footer-bottom-last-menu li {
display: inline-block;
padding-left: 1rem;
}

418
css/header.css

@ -0,0 +1,418 @@
/*
* Header main
*/
/* Header -> Header top */
.header-top,
.header {
position: relative;
width: 100%;
margin: 0;
padding: 0.5rem 0;
}
.header-top-container {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 1rem;
flex-wrap: wrap;
}
.region-header-top-left,
.region-header-top-right {
display: flex;
gap: 1rem;
flex-wrap: wrap;
}
.header-top-block p:last-of-type {
margin: 0;
}
.header-top ul {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin: 0;
padding: 0;
list-style: none;
list-style-type: none;
}
.header-top-block .block-title {
font-size: 1.2rem;
}
/* Header -> Header main */
.header-main {
position: relative;
width: 100%;
margin: 0;
padding: 0;
}
.header-container {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 1rem;
}
/* Header -> Site branding */
.site-branding {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
padding-right: 1rem;
}
.site-logo {
padding-right: 5px;
}
.site-logo img {
display: block;
}
.site-name-slogan {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
.site-name,
.site-slogan {
line-height: 1.1;
}
/* Header -> header right */
.header-right {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
gap: 0.5rem;
}
.menu-wrap {
position: fixed;
background-color: var(--dark);
color: #ffffff;
top: 0;
bottom: 0;
left: 0;
margin: 0;
width: 100%;
max-width: 320px;
box-shadow: none;
z-index: 25;
-webkit-transform: translateX(-100%);
-ms-transform: translateX(-100%);
transform: translateX(-100%);
-webkit-transition: all 0.4s linear;
-o-transition: all 0.4s linear;
transition: all 0.4s linear;
}
.menu-wrap .menu {
position: relative;
display: flex;
flex-direction: column;
gap: 1rem;
flex-wrap: wrap;
margin: 0;
padding: 0;
font-size: 1rem;
font-weight: 400;
z-index: 30;
list-style: none;
list-style-type: none;
}
.menu-wrap .menu li {
position: relative;
padding: 0;
}
.menu-wrap a {
display: block;
color: #ffffff;
padding: 0.5rem 0;
}
.menu-wrap .menu > li a::after {
content: none;
}
.menu-wrap .submenu {
position: relative;
display: flex;
flex-direction: column;
font-weight: 400;
margin: 0;
padding: 0;
z-index: 30;
list-style: none;
list-style-type: none;
}
.menu-wrap .submenu li a,
.menu-wrap .submenu li > span {
display: flex;
width: 100%;
padding: 0.5rem;
}
.menu-wrap .menu-item a,
.menu-wrap .menu-item > span {
border-bottom: 1px solid var(--border);
}
.menu-wrap .submenu li > a,
.menu-wrap .submenu li > span {
padding-left: 1.5rem;
}
.menu-wrap .submenu .submenu .menu-item > a,
.menu-wrap .submenu .submenu .menu-item > span {
padding-left: 3rem;
}
/* Mobile Menu */
.mobile-menu {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
justify-content: space-between;
width: 36px;
height: 28px;
overflow: hidden;
cursor: pointer;
}
.mobile-menu span {
width: 100%;
height: 2px;
background-color: var(--primary);
transform-origin: left;
transition: all 0.5s ease;
}
.mobile-menu span:nth-child(2) {
background-color: var(--secondary);
}
.menu-icon-active span:first-child {
transform: rotate(45deg);
}
.menu-icon-active span:last-child {
transform: rotate(-45deg);
}
.menu-icon-active span:nth-child(2) {
display: none;
}
.close-mobile-menu {
display: grid;
place-content: center;
position: absolute;
top: 4px;
right: 4px;
width: 34px;
height: 34px;
color: #ffffff;
border: 2px solid var(--primary);
border-radius: 50%;
z-index: 48;
cursor: pointer;
}
.active-menu .menu-wrap {
overflow-y: scroll;
-webkit-transform: translateX(0);
-ms-transform: translateX(0);
transform: translateX(0);
-webkit-transition: all 0.4s linear;
-o-transition: all 0.4s linear;
transition: all 0.4s linear;
padding: 1rem;
box-shadow: 6px 0 1rem #111111;
}
.active-menu .menu {
display: block;
}
/*slide up */
@-webkit-keyframes slideUp {
0% {
-webkit-transform: translateY(20px);
transform: translateY(20px);
opacity: 0;
}
100% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
opacity: 1;
}
}
@keyframes slideUp {
0% {
-webkit-transform: translateY(20px);
transform: translateY(20px);
opacity: 0;
}
100% {
-webkit-transform: translateY(0px);
transform: translateY(0px);
opacity: 1;
}
}
/* Header -> header search form */
.full-page-search {
position: relative;
margin: 0;
padding: 0;
}
.search-icon {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
cursor: pointer;
width: 34px;
height: 34px;
border-radius: 50%;
}
.search-icon i {
font-size: 24px;
}
.search-box {
position: fixed;
background-color: var(--light);
top: 0;
right: 0;
left: 0;
width: 100%;
z-index: 50;
-webkit-transform: translate(0, -100%);
-ms-transform: translate(0, -100%);
transform: translate(0, -100%);
-webkit-transition: -webkit-transform 0.5s;
transition: -webkit-transform 0.5s;
-o-transition: transform 0.5s;
transition: transform 0.5s;
transition: transform 0.5s, -webkit-transform 0.5s;
}
.search-box.open {
-webkit-transform: translate(0, 0);
-ms-transform: translate(0, 0);
transform: translate(0, 0);
}
.search-box-content {
position: relative;
padding: 2rem 0;
text-align: center;
z-index: 60;
}
.search-box-content form {
margin: 0;
}
.header-search-close {
position: absolute;
top: 1rem;
right: 0;
width: 34px;
height: 34px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
color: var(--dark);
border: 3px solid var(--dark);
border-radius: 50%;
cursor: pointer;
font-weight: 700;
line-height: 1;
}
.search-box-content .block {
width: 100%;
margin: 0;
}
.search-box-content .block-title,
.search-box-content form label {
display: none;
color: #000000;
}
.search-box-content input[type="search"] {
width: 100%;
margin: 2rem 0;
padding: 0 2rem 4px 0;
font-size: 1.4rem;
background: url("../images/icons/search.svg") center right no-repeat;
background-size: contain;
border: 0;
border-bottom: 2px solid var(--border);
border-radius: 0;
outline: 0;
}
.search-box-content input[type="submit"] {
display: block;
margin: 0 auto;
padding: 0.5rem 1.5rem;
border-radius: 50px;
}
/* Header -> Page Header */
.page-header {
position: relative;
width: 100%;
margin: 0;
padding: 2rem 0 1rem 0;
}
.region-page-header {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
/* Header -> Page Header-> breadcrumb */
.breadcrumb {
position: relative;
width: 100%;
}
.breadcrumb-items {
display: flex;
flex-wrap: wrap;
margin: 0;
padding: 0;
list-style: none;
}
.breadcrumb-item {
padding: 0;
}
.breadcrumb-item span {
font-size: 14px;
margin: 0 5px;
}

24
css/highlighted.css

@ -0,0 +1,24 @@
/* Highlighted Block Region */
.highlighted {
position: relative;
width: 100%;
margin: 0;
padding: 0;
}
.region-highlighted {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.highlighted .block {
position: relative;
margin: 0;
padding: 1em 0;
}
.highlighted p:last-child {
margin: 0;
}

11
css/homepage.css

@ -0,0 +1,11 @@
.region-content-home-top,
.region-content-home-bottom {
display: flex;
flex-direction: column;
width: 100%;
margin: 0;
padding: 0;
}
.region-content-home-top {
margin-bottom: 2rem;
}

73
css/layout.css

@ -0,0 +1,73 @@
/*
* Layout
*/
/* Layout -> containers */
.container {
position: relative;
width: 100%;
max-width: 1170px;
margin: 0 auto;
padding: 0 10px;
}
/* Layout -> Main wrapper (Main + Sidebar) */
.main-wrapper {
position: relative;
display: block;
padding: 2rem 0;
}
.main-container {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
gap: 1.5rem;
}
/* Main
--------------------------------*/
#main {
position: relative;
-webkit-box-ordinal-group: 1;
-ms-flex-order: 0;
order: 0;
}
#sidebar-left {
-webkit-box-ordinal-group: 2;
-ms-flex-order: 1;
order: 1;
}
#sidebar-right {
-webkit-box-ordinal-group: 3;
-ms-flex-order: 2;
order: 2;
}
/* No sidebar + main */
.no-sidebar #main,
.sidebar-left #main,
.sidebar-right #main,
.two-sidebar #main,
#sidebar-left,
#sidebar-right {
-webkit-box-flex: 1;
-ms-flex: 1 1 100%;
flex: 1 1 100%;
width: 100%;
}
#front-main {
-webkit-box-flex: 1;
-ms-flex: 1 1 100%;
flex: 1 1 100%;
width: 100%;
margin: 0;
}
/* Frontpage with Sidebar
--------------------------------*/
.front-content-with-sidebar {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

41
css/maintenance.css

@ -0,0 +1,41 @@
#maintenance-page {
position: relative;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
width: 100%;
min-height: 100vh;
background: #ffffff;
color: #2d3436;
}
.maintenance-header {
position: relative;
width: 100%;
padding: 1rem 0;
}
.site-name h4 {
color: #f0932b;
line-height: 1;
font-weight: 700;
}
#maintenance {
position: relative;
margin: 0 auto;
padding: 1rem 0;
}
.maintenance {
text-align: center;
}
.maintenance-title {
color: #fff;
}
.maintenance-icon {
padding: 2rem 0;
}
.maintenance-icon img {
max-height: 50vh;
}

20
css/node.css

@ -0,0 +1,20 @@
/* Nodes */
.node,
.node-promoted,
.node-sticky,
.node-view-mode-full,
.node-unpublished {
position: relative;
}
.node-view-mode-teaser {
position: relative;
margin-bottom: 4rem;
border-bottom: 4px double var(--border);
}
.node-view-mode-teaser.node-sticky {
border: 2px solid var(--border);
padding: 1rem;
}
.node-view-mode-full .node-taxonomy-container {
margin: 0;
}

272
css/responsive.css

@ -0,0 +1,272 @@
@media (min-width: 576px) {
.w10,
.w20,
.w30,
.w40,
.w50,
.w60,
.w70,
.w80,
.w90 {
flex-basis: calc(50% - 5px);
}
}
@media (min-width: 768px) {
html {
font-size: 18px;
}
/* Header */
.header-top-container {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
gap: 1rem;
}
/* Header -> Search form */
.header-search-close {
top: 2rem;
}
.search-box-content .block-title {
display: block;
}
.breadcrumb-item span {
margin: 0 10px;
}
/* Main */
.main-container {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
}
#main {
-webkit-box-ordinal-group: 2;
-ms-flex-order: 1;
order: 1;
}
#sidebar-left {
-webkit-box-ordinal-group: 1;
-ms-flex-order: 0;
order: 0;
}
#sidebar-right {
-webkit-box-ordinal-group: 3;
-ms-flex-order: 2;
order: 2;
}
/* one sidebar + main */
.sidebar-left #main,
.sidebar-right #main {
-webkit-box-flex: 1;
-ms-flex: 1 1 70%;
flex: 1 1 70%;
}
/* Both sidebar + main */
.two-sidebar #main {
-webkit-box-flex: 1;
-ms-flex: 1 1 40%;
flex: 1 1 40%;
}
/* Sidebar
--------------------------------*/
#sidebar-left {
-webkit-box-flex: 0;
-ms-flex: 0 1 30%;
flex: 0 1 30%;
}
#sidebar-right {
-webkit-box-flex: 0;
-ms-flex: 0 1 30%;
flex: 0 1 30%;
}
/* Footer */
.footer-container {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
}
.footer-bottom-blocks-container {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.footer-bottom-container {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.footer-bottom-last {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.copyright {
margin-bottom: 0;
}
/* shortcodes -> content width */
.width30 {
width: 30%;
}
.width40 {
width: 40%;
}
.width50 {
width: 50%;
}
.width60 {
width: 60%;
}
.width70 {
width: 70%;
}
.width80 {
width: 80%;
}
.width90 {
width: 90%;
}
/* shortcodes -> responsive column */
.w10 {
flex-basis: calc(10% - 10px);
}
.w20 {
flex-basis: calc(20% - 10px);
}
.w30 {
flex-basis: calc(30% - 10px);
}
.w40 {
flex-basis: calc(40% - 10px);
}
.w50 {
flex-basis: calc(50% - 10px);
}
.w60 {
flex-basis: calc(60% - 10px);
}
.w70 {
flex-basis: calc(70% - 10px);
}
.w80 {
flex-basis: calc(80% - 10px);
}
.w90 {
flex-basis: calc(90% - 10px);
}
/* Shortcodes -> responsive view */
.view-in-mobile {
display: none;
}
.view-in-desktop {
display: block;
}
}
@media (min-width: 992px) {
th {
padding: 10px;
}
td {
padding: 5px 10px;
}
/* Header */
.header-right {
gap: 1rem;
}
.menu-wrap {
position: relative;
background-color: transparent;
max-width: 100%;
-webkit-transform: translateX(0);
-ms-transform: translateX(0);
transform: translateX(0);
-webkit-transition: none;
-o-transition: none;
transition: none;
}
.menu-wrap .menu {
flex-direction: row;
}
.menu-wrap .menu,
.menu-wrap .menu a {
color: var(--primary);
}
.menu-wrap .menu-item a,
.menu-wrap .menu-item > span {
border-bottom: 0;
}
.menu-wrap .menu > li,
.menu-wrap .collapsed,
.menu-wrap .expanded,
.menu-wrap .menu-item-has-children {
display: inline-flex;
align-items: center;
}
.menu-wrap .collapsed:hover,
.menu-wrap .expanded:hover,
.menu-wrap .menu-item-has-children:hover {
background-color: var(--light);
}
.menu-wrap .collapsed::after,
.menu-wrap .expanded::after,
.menu-wrap .menu-item-has-children::after {
content: '+';
}
.menu-wrap .submenu {
position: absolute;
display: none;
background-color: var(--light);
font-size: 0.9rem;
top: 100%;
min-width: 180px;
max-width: 200px;
opacity: 0;
}
.collapsed:hover > .submenu,
.expanded:hover > .submenu,
.menu-item-has-children:hover > .submenu {
display: flex;
-webkit-animation: slideUp 0.5s forwards;
animation: slideUp 0.5s forwards;
}
.menu-wrap .submenu li {
border-bottom: 1px solid var(--border);
}
.menu-wrap .submenu .submenu {
top: 0;
left: 100%;
}
.menu-wrap .submenu li > a,
.menu-wrap .submenu li > span {
padding: 0.5rem;
}
.menu-wrap .submenu .submenu .menu-item > a,
.menu-wrap .submenu .submenu .menu-item > span {
padding: 0.5rem;
}
.mobile-menu,
.close-mobile-menu {
display: none;
}
}

28
css/search.css

@ -0,0 +1,28 @@
/* Search result page
--------------------------------------*/
.page-content input[type="search"] {
width: 80%;
}
ol.search-results {
margin: 1em 0;
padding: 0;
list-style: none;
list-style-type: none;
}
ol.search-results li {
margin: 0 0 1em 0;
padding: 1rem;
background: var(--light);
}
.search-advanced summary {
margin: 10px 0;
cursor: pointer;
}
.search-advanced .form-details-wrapper {
padding: 0.5em 1.4em;
border: 1px solid var(--border);
}
.search-advanced .form-wrapper {
padding: 0.5em 1.4em;
border: 1px solid var(--border);
}

330
css/shortcodes.css

@ -0,0 +1,330 @@
/* Mobile and desktop display
================================= */
.view-in-mobile {
display: block;
}
.view-in-desktop {
display: none;
}
/* Color and background
================================= */
.primary {
color: var(--primary);
}
.secondary {
color: var(--secondary);
}
.dark {
color: var(--dark);
}
.light {
color: var(--light);
}
.bg-light {
background-color: var(--light);
}
/* Text Alignment
================================= */
.text-left {
text-align: left;
}
.text-right {
text-align: right;
}
.text-center {
text-align: center;
}
.text-justify {
text-align: justify;
}
.center {
margin: 0 auto;
}
/* Inline content
================================= */
.inline {
display: inline-block;
}
.inline:not(:last-child) {
padding-right: 1rem;
}
/* Direction
================================= */
.rtl {
direction: rtl;
}
.ltr {
direction: ltr;
}
/* Font Size
================================= */
.font-small {
font-size: 0.75rem;
}
.font-medium {
font-size: 1.25rem;
}
.font-large {
font-size: 1.5rem;
}
.font-2x {
font-size: 2rem;
}
.font-3x {
font-size: 2.5rem;
}
.font-4x {
font-size: 3rem;
}
.font-5x {
font-size: 4rem;
}
.font-6x {
font-size: 5rem;
}
.font-7x {
font-size: 6rem;
}
.font-8x {
font-size: 7rem;
}
/* Font Icon Size
================================= */
.size-xs {
font-size: 0.5em;
}
.size-small {
font-size: 0.75em;
}
.size-medium {
font-size: 1.25em;
}
.size-large {
font-size: 1.5em;
}
.size-2x {
font-size: 2em;
}
.size-3x {
font-size: 3em;
}
.size-4x {
font-size: 4em;
}
.size-5x {
font-size: 5em;
}
.size-6x {
font-size: 6em;
}
.size-7x {
font-size: 7em;
}
.size-8x {
font-size: 8em;
}
.size-9x {
font-size: 9em;
}
.size-10x {
font-size: 10em;
}
/* image icons size
================================= */
.icon-s {
max-height: 1rem;
}
.icon-m {
max-height: 1.5rem;
}
.icon-l {
max-height: 2rem;
}
.icon-xl {
max-height: 3rem;
}
.icon-x2 {
max-height: 4rem;
}
.icon-x3 {
max-height: 5rem;
}
.icon-x4 {
max-height: 6rem;
}
.icon-x5 {
max-height: 7rem;
}
.icon-x6 {
max-height: 8rem;
}
.icon-x7 {
max-height: 9rem;
}
.icon-x8 {
max-height: 10rem;
}
/* Content width
================================= */
.width30,
.width40,
.width50,
.width60,
.width70,
.width80,
.width90 {
width: 100%;
clear: both;
display: block;
}
/* Empty width and height
================================= */
.w20px {
display: inline-block;
width: 20px;
}
.w30px {
display: inline-block;
width: 30px;
}
.w40px {
display: inline-block;
width: 40px;
}
.w50px {
display: inline-block;
width: 50px;
}
.w70px {
display: inline-block;
width: 70px;
}
.w100px {
display: inline-block;
width: 100px;
}
.empty,
.spacer,
.spacer-x2,
.spacer-x3 {
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.empty,
.spacer {
padding: 1rem 0;
}
.spacer-x2 {
padding: 2rem 0;
}
.spacer-x3 {
padding: 3rem 0;
}
/* Responsive Columns
================================= */
.section {
position: relative;
display: block;
width: 100%;
padding: 3rem 0;
}
.section-small {
position: relative;
display: block;
width: 100%;
padding: 1rem 0;
}
.items {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
grid-gap: 1rem;
gap: 1rem;
}
.item img {
display: block;
}
.columns {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
/* Create Equal width columns with no gap */
.column {
flex: 1 1 230px;
margin: 0;
padding: 0;
}
/* flex-items width */
.w10,
.w20,
.w30,
.w40,
.w50,
.w60,
.w70,
.w80,
.w90 {
flex-basis: 100%;
}
/* Flex - Common for all
================================= */
.space-between {
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}
.v-center {
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
.h-center {
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}
.vh-center {
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}
/* Shortcodes -> box, icon box
================================= */
.box,
.icon-box {
position: relative;
display: block;
padding: 1rem;
margin-bottom: 1rem;
}
.box p:last-child,
.icon-box p:last-child {
margin: 0;
}
/* Shortcodes -> grid column
================================= */
.grid-row {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
grid-gap: 1rem;
gap: 1rem;
}

43
css/sidebar.css

@ -0,0 +1,43 @@
/* Sidebar
--------------------------------*/
.sidebar {
position: relative;
width: 100%;
}
.region-sidebar-first,
.region-sidebar-second {
display: flex;
flex-direction: column;
gap: 2rem;
}
.sidebar .block {
background-color: var(--light);
padding: 1rem;
}
.sidebar ul,
.sidebar ol {
margin: 0;
padding: 0;
list-style-position: inside;
}
.sidebar ul {
list-style: none;
}
.sidebar li {
padding: 6px 0;
border-bottom: 1px solid var(--border);
}
.sidebar .block p:last-of-type {
margin: 0;
}
/* Sidebr -> Form */
.sidebar input[type="text"],
.sidebar input[type="email"],
.sidebar input[type="url"],
.sidebar input[type="password"],
.sidebar input[type="search"],
.sidebar textarea {
width: 100%;
max-width: 100%;
border: 1px solid var(--border);
}

BIN
favicon.ico

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

BIN
fonts/bootstrap-icons.woff

Binary file not shown.

BIN
fonts/bootstrap-icons.woff2

Binary file not shown.

BIN
fonts/fontawesome-webfont.eot

Binary file not shown.

2671
fonts/fontawesome-webfont.svg

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 434 KiB

BIN
fonts/fontawesome-webfont.ttf

Binary file not shown.

BIN
fonts/fontawesome-webfont.woff

Binary file not shown.

BIN
fonts/fontawesome-webfont.woff2

Binary file not shown.

BIN
fonts/vre2024.woff2

Binary file not shown.

5
images/icons/message/error.svg

@ -0,0 +1,5 @@
<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M15 28.5C22.4558 28.5 28.5 22.4558 28.5 15C28.5 7.54416 22.4558 1.5 15 1.5C7.54416 1.5 1.5 7.54416 1.5 15C1.5 22.4558 7.54416 28.5 15 28.5Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M15 10V17" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M15 21H15.0125" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 541 B

4
images/icons/message/success.svg

@ -0,0 +1,4 @@
<svg width="33" height="33" viewBox="0 0 33 33" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M29.8333 15.2733V16.5C29.8317 19.3752 28.9007 22.1729 27.1791 24.4758C25.4576 26.7786 23.0377 28.4633 20.2805 29.2785C17.5232 30.0938 14.5763 29.9959 11.8793 28.9994C9.18223 28.003 6.87953 26.1615 5.31461 23.7494C3.74968 21.3374 3.00638 18.4841 3.19556 15.6151C3.38474 12.7461 4.49627 10.0151 6.36437 7.82943C8.23246 5.64376 10.757 4.12051 13.5616 3.48686C16.3661 2.85321 19.3004 3.14312 21.9267 4.31333" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M29.8333 5.83333L16.5 19.18L12.5 15.18" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 728 B

5
images/icons/message/warning.svg

@ -0,0 +1,5 @@
<svg width="34" height="30" viewBox="0 0 34 30" fill="none" xmlns="http://www.w3.org/2000/svg">
<path d="M14.435 2.79L1.73 24C1.46805 24.4536 1.32945 24.9679 1.32798 25.4918C1.32652 26.0156 1.46224 26.5307 1.72164 26.9858C1.98104 27.4409 2.35509 27.8201 2.80656 28.0858C3.25804 28.3514 3.7712 28.4942 4.295 28.5H29.705C30.2288 28.4942 30.742 28.3514 31.1934 28.0858C31.6449 27.8201 32.019 27.4409 32.2784 26.9858C32.5378 26.5307 32.6735 26.0156 32.672 25.4918C32.6706 24.9679 32.532 24.4536 32.27 24L19.565 2.79C19.2976 2.34916 18.9211 1.98468 18.4718 1.73172C18.0225 1.47877 17.5156 1.34588 17 1.34588C16.4844 1.34588 15.9775 1.47877 15.5282 1.73172C15.0789 1.98468 14.7024 2.34916 14.435 2.79V2.79Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M17 10.5V16.5" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M17 22.5H17.0139" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 1003 B

1
images/icons/search.svg

@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21.71,20.29,18,16.61A9,9,0,1,0,16.61,18l3.68,3.68a1,1,0,0,0,1.42,0A1,1,0,0,0,21.71,20.29ZM11,18a7,7,0,1,1,7-7A7,7,0,0,1,11,18Z"/></svg>

After

Width:  |  Height:  |  Size: 206 B

11
images/maintenance.svg

@ -0,0 +1,11 @@
<svg width="524" height="372" viewBox="0 0 524 372" fill="none" xmlns="http://www.w3.org/2000/svg">
<rect width="524" height="372" fill="white"/>
<rect width="474" height="257" rx="10" fill="#8BB5AD"/>
<rect x="229" y="257" width="10" height="92" fill="#2D6057"/>
<rect x="108" y="349" width="259" height="10" fill="#2D6057"/>
<path d="M234 148C245.03 148 254 139.03 254 128C254 116.97 245.03 108 234 108C222.97 108 214 116.97 214 128C214 139.03 222.97 148 234 148ZM234 118C239.42 118 244 122.58 244 128C244 133.42 239.42 138 234 138C228.58 138 224 133.42 224 128C224 122.58 228.58 118 234 118Z" fill="#53847B"/>
<path d="M188.225 148.68L193.225 157.33C195.88 161.915 202.27 163.635 206.875 160.98L209.52 159.45C212.413 161.725 215.602 163.596 219 165.01V168C219 173.515 223.485 178 229 178H239C244.515 178 249 173.515 249 168V165.01C252.397 163.596 255.586 161.727 258.48 159.455L261.125 160.985C265.74 163.635 272.115 161.925 274.78 157.33L279.775 148.685C281.1 146.388 281.459 143.66 280.774 141.099C280.089 138.537 278.415 136.353 276.12 135.025L273.595 133.565C274.132 129.878 274.132 126.132 273.595 122.445L276.12 120.985C278.414 119.656 280.087 117.472 280.772 114.911C281.457 112.35 281.099 109.622 279.775 107.325L274.78 98.68C272.125 94.08 265.74 92.355 261.125 95.02L258.48 96.55C255.587 94.2745 252.398 92.404 249 90.99V88C249 82.485 244.515 78 239 78H229C223.485 78 219 82.485 219 88V90.99C215.603 92.4042 212.414 94.2729 209.52 96.545L206.875 95.015C202.255 92.36 195.875 94.08 193.22 98.675L188.225 107.32C186.9 109.616 186.541 112.345 187.226 114.906C187.911 117.468 189.585 119.652 191.88 120.98L194.405 122.44C193.866 126.125 193.866 129.87 194.405 133.555L191.88 135.015C189.586 136.345 187.913 138.53 187.227 141.092C186.542 143.654 186.901 146.382 188.225 148.68V148.68ZM204.855 134.89C204.29 132.637 204.003 130.323 204 128C204 125.69 204.29 123.37 204.85 121.11C205.114 120.057 205.027 118.946 204.603 117.946C204.179 116.947 203.441 116.112 202.5 115.57L196.885 112.32L201.875 103.675L207.6 106.985C208.534 107.525 209.617 107.748 210.688 107.62C211.759 107.492 212.76 107.02 213.54 106.275C216.923 103.058 221.002 100.664 225.46 99.28C226.484 98.9673 227.381 98.3341 228.018 97.4736C228.655 96.6131 229 95.5708 229 94.5V88H239V94.5C239 95.5708 239.345 96.6131 239.982 97.4736C240.619 98.3341 241.516 98.9673 242.54 99.28C246.997 100.666 251.076 103.06 254.46 106.275C255.241 107.019 256.241 107.49 257.312 107.618C258.383 107.746 259.466 107.524 260.4 106.985L266.12 103.68L271.12 112.325L265.5 115.57C264.56 116.113 263.822 116.947 263.398 117.947C262.974 118.946 262.887 120.057 263.15 121.11C263.71 123.37 264 125.69 264 128C264 130.305 263.71 132.625 263.145 134.89C262.883 135.944 262.97 137.055 263.395 138.054C263.82 139.054 264.559 139.888 265.5 140.43L271.115 143.675L266.125 152.32L260.4 149.015C259.467 148.474 258.383 148.251 257.312 148.379C256.24 148.507 255.24 148.979 254.46 149.725C251.077 152.942 246.998 155.336 242.54 156.72C241.516 157.033 240.619 157.666 239.982 158.526C239.345 159.387 239 160.429 239 161.5L239.01 168H229V161.5C229 160.429 228.655 159.387 228.018 158.526C227.381 157.666 226.484 157.033 225.46 156.72C221.003 155.334 216.924 152.94 213.54 149.725C212.762 148.977 211.76 148.504 210.688 148.376C209.616 148.249 208.532 148.475 207.6 149.02L201.88 152.33L196.88 143.685L202.5 140.43C203.441 139.888 204.18 139.054 204.605 138.054C205.03 137.055 205.117 135.944 204.855 134.89V134.89Z" fill="#2D6057"/>
<path d="M437.806 245.191C439.87 243.968 442.535 244.649 443.758 246.713L466.521 285.125H507.988C510.434 285.125 512.417 287.108 512.417 289.554V302.5C512.417 323.285 501.469 341.512 485.024 351.729H502.281C504.68 351.729 506.625 353.674 506.625 356.073C506.625 358.472 504.68 360.417 502.281 360.417H406.719C404.32 360.417 402.375 358.472 402.375 356.073C402.375 353.674 404.32 351.729 406.719 351.729H423.975C407.531 341.512 396.583 323.285 396.583 302.5V289.554C396.583 287.108 398.566 285.125 401.012 285.125H433.256L413.117 251.142C411.894 249.078 412.576 246.414 414.64 245.191C416.704 243.968 419.368 244.649 420.591 246.713L443.354 285.125H456.422L436.284 251.142C435.061 249.078 435.743 246.414 437.806 245.191ZM405.271 293.813V302.5C405.271 304.46 405.385 306.392 405.608 308.292H503.392C503.614 306.392 503.729 304.46 503.729 302.5V293.813H405.271ZM407.435 316.979C413.618 337.102 432.351 351.729 454.5 351.729C476.65 351.729 495.382 337.102 501.565 316.979H407.435Z" fill="#53847B"/>
<path d="M142.667 48L61.9167 129L142.667 210" stroke="#2D6057" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
<path d="M330.333 210L411.083 129L330.333 48" stroke="#2D6057" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 4.6 KiB

48
js/vre2024.js

@ -0,0 +1,48 @@
/* Load jQuery.
--------------------------*/
jQuery(document).ready(function ($) {
// Mobile menu.
$('.mobile-menu').click(function () {
$(this).toggleClass('menu-icon-active');
$(this).next('.primary-menu-wrapper').toggleClass('active-menu');
});
$('.close-mobile-menu').click(function () {
$(this).closest('.primary-menu-wrapper').toggleClass('active-menu');
$('.mobile-menu').removeClass('menu-icon-active');
});
// Header search form
$('.search-icon').on('click', function() {
$('.search-box').toggleClass('open');
$('.search-box-content .form-search').focus();
return false;
});
$('.search-box-content input[type="search"]').attr("placeholder", "Type your search");
$('.header-search-close').on('click', function() {
$('.search-box').removeClass('open');
return false;
});
$('.search-box').on( 'keydown', function(e) {
if ( e.keyCode === 27 ) {
$('.search-box.open').removeClass('open');
}
});
$(document).on('click', function(event) {
if(!$(event.target).closest(".search-box-content").length) {
$('.search-box').removeClass('open');
}
})
// Scroll To Top.
$(window).scroll(function () {
if ($(this).scrollTop() > 80) {
$('.scrolltop').css('display', 'flex');
} else {
$('.scrolltop').fadeOut('slow');
}
});
$('.scrolltop').click(function () {
$('html, body').scrollTop(0);
});
/* End document
--------------------------*/
});

284
logo.svg

@ -0,0 +1,284 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- Generator: Adobe Illustrator 19.1.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 403.7 160.2" style="enable-background:new 0 0 403.7 160.2;" xml:space="preserve">
<style type="text/css">
.st0{fill:#8C2004;}
.st1{fill:#5C8727;}
.st2{fill:#FFFFFF;}
.st3{fill:#FBB040;}
.st4{fill:#EC008C;}
</style>
<path class="st0" d="M123.3,94.9c0.3-0.9,0.6-1.8,0.9-2.7V1.3H62.7H1.2v90.9c0.3,0.9,0.6,1.8,0.9,2.7l60.6-41L123.3,94.9z"/>
<path class="st1" d="M4.3,101.1c16.1,43.1,31.1,41.6,58.4,57.7c27.2-16.1,42.3-14.6,58.4-57.7L62.8,61.8L4.3,101.1z"/>
<g>
<path class="st2" d="M61.4,89.1c0,0,0-0.7-0.6-0.8c0,0-3.3-2-9.8-2c-6.6,0-12,3-12,3s-0.6,0.3-0.6,1v35.5c0,0,0,0.7,0.6,0.5
c0,0,6.6-2.9,13.3-2.6c6.7,0.2,8.6,1.4,8.6,1.4s0.6,0.4,0.6-0.3V89.1z"/>
<path class="st2" d="M64,89.1c0,0,0-0.7,0.6-0.8c0,0,3.3-2,9.8-2c6.6,0,12,3,12,3s0.6,0.3,0.6,1v35.5c0,0,0,0.7-0.6,0.5
c0,0-6.6-2.9-13.3-2.6c-6.7,0.2-8.6,1.4-8.6,1.4s-0.6,0.4-0.6-0.3V89.1z"/>
<path class="st3" d="M93,95.4c0,0,0-0.7-0.6-1l-2.9-1.8c0,0-0.1,0-0.2-0.1v35c0,0,0,0.7-0.7,1.1c-0.7,0.4-1.5,0.1-1.5,0.1
s-9.3-4.1-15.9-2.9c-5.3,1-7.8,2.2-8.6,2.7c-0.8-0.4-3.3-1.7-8.6-2.7c-6.6-1.3-15.9,2.9-15.9,2.9s-0.8,0.3-1.5-0.1
c-0.7-0.4-0.7-1.1-0.7-1.1v-35c-0.1,0-0.2,0.1-0.2,0.1l-2.9,1.8c-0.6,0.4-0.6,1-0.6,1l0,37.6c0,0.7,0.6,0.9,0.6,0.9l2.6-0.1
c0,0,3.3-3.9,15.9-3.9c5.6,0,8.6,3,8.6,3h0.6h4.3h0.6c0,0,3-3,8.5-3c12.6,0,15.9,3.9,15.9,3.9l2.6,0.1c0,0,0.6-0.3,0.6-0.9L93,95.4
z"/>
</g>
<g>
<path class="st3" d="M110.1,38.8l-1.8-1.4l-0.3,2.4l-1.1-2.1l-1.8,3l2,0.3c0,0-1.7,2-3.8,1.2c-0.5-0.2-0.9-0.6-1.2-1
c0.2,0.1,0.8,0.1,1.1-0.3c0.5-0.5-0.2-1.1-0.2-1.1s-0.1,0.4-0.6,0.5c-0.5,0-0.5-0.7-0.5-0.7s0.4-0.1,0.4-0.4c0-0.2-0.3-0.5-0.3-0.5
s0.6-1.4,1.5-1c0.9,0.4,0,1.3,0,1.3s1.2-0.2,1.7-0.6c0.5-0.5,0.4-1.5-0.8-1.8c-1.2-0.3-2.1,0.7-2.1,0.7s0.5-1,0.7-1.9
c0.1-0.9-0.5-1.8-0.5-1.8s-1.1,0.6-1.4,1.1c-0.2,0.5-0.2,2.4-0.2,2.4s-1-1.4-1.6-1.6c-0.4-0.1-1.2-0.1-1.4,0.9
c-0.1,0.9,0.9,1.7,0.9,1.7s0-0.5,0.3-0.9c0.3-0.3,0.7-0.1,1,0.3c0.3,0.3,0.3,0.9,0.3,0.9s-0.4,0.3-0.4,0.5c0,0.2,0.2,0.5,0.2,0.5
s-0.2,0.5-0.7,0.3c-0.4-0.1-0.2-1-0.2-1s-0.5,0.3-0.8,0.6c-0.3,0.2-0.1,0.7,0.3,1.1c0,0,0,0,0,0c-0.6,0.2-1.3,0.4-2,0.3
c-1-0.2-1.7-0.8-2.1-1.3l-0.5-1.9l1.8,1.4l0.4-3.7l-2.3,1.4l1.1-2.5h-3.2l0.9,2.5L90.6,35l0.3,3.8l1.9-1.3l-0.6,1.8
c-0.5,0.6-1.3,1.3-2.9,1.3c-0.7,0-1.2,0-1.6-0.2c0.2-0.1,0.4-0.2,0.5-0.3c0.4-0.3,0.7-0.8,0.4-1.1c-0.3-0.2-0.8-0.6-0.8-0.6
s0.2,0.8-0.2,0.9c-0.4,0.1-0.6-0.4-0.6-0.4s0.2-0.4,0.2-0.5c0-0.2-0.4-0.5-0.4-0.5s0-0.5,0.3-0.9c0.3-0.4,0.7-0.6,1-0.2
c0.3,0.4,0.2,0.9,0.2,0.9s1.1-0.8,0.9-1.7c-0.1-0.9-1-1-1.4-0.9c-0.6,0.2-1.6,1.6-1.6,1.6s0.1-1.8-0.2-2.4
c-0.2-0.5-1.4-1.1-1.4-1.1s-0.7,0.8-0.5,1.8c0.1,0.9,0.7,2,0.7,2s-0.9-0.9-2.1-0.7c-1.2,0.2-1.4,1.3-0.9,1.8
c0.5,0.5,1.7,0.6,1.7,0.6s-0.8-0.9,0.1-1.3c0.9-0.4,1.5,1,1.5,1s-0.4,0.3-0.4,0.5c0.1,0.3,0.4,0.4,0.4,0.4s0,0.7-0.5,0.7
c-0.5-0.1-0.5-0.5-0.5-0.5s-0.7,0.6-0.2,1.1c0.5,0.5,1.1,0.3,1.2,0.2c-0.4,0.4-0.9,0.8-1.8,0.9c-2.5,0.4-3.6-1.5-3.6-1.5l2,0
l-1.4-3L79.1,39l-0.3-2.2L77,37.6l4.9,9.5h0.9c1.5-1.3,5.2-2.5,10.5-2.5c5.3,0,9.1,1.3,10.6,2.5h0.9L110.1,38.8z"/>
<g>
<path class="st4" d="M112.4,25.4"/>
</g>
<g>
<g>
<path class="st2" d="M107.1,31.1c-0.1-0.1-0.1-0.2-0.2-0.2c-0.2-0.1-0.4-0.3-0.4-0.6c0-0.3-0.3-0.9-0.7-0.9c-0.1,0-0.6,0.3-1.8,2
l0,0.1c-0.2,0.3-0.3,0.4-0.4,0.5l0.8,0.2c0.2,0.2,0.8,1.1,0.9,2.3c0.2,0.1,0.5,0.2,0.7,0.3c0.2-0.3,0.4-0.6,0.6-0.9
c0.1-0.3,0.4-0.6,0.5-0.8c0.1-0.2,0.2-0.2,0.3-0.4c0.2-0.2,0.2-0.2,0.2-0.3C107.7,32,107.3,31.5,107.1,31.1L107.1,31.1z"/>
<path class="st2" d="M82.1,29.4c-0.4-0.1-0.6,0.2-0.9,0.6c0,0.1-0.1,0.1-0.1,0.2c-0.4,0.5-1,1.7-1,2c0,0.3,0.1,0.6,0.2,0.9
c0.2,0.2,0.3,0.5,0.5,0.7c0.1,0.1,0.3,0.3,0.4,0.4c0.1,0.1,0.1,0.3,0.1,0.4c0.2-0.1,0.4-0.2,0.7-0.2c0.2-1.2,0.8-2.1,1-2.3
l0.5-0.1C83.1,30.9,82.6,29.6,82.1,29.4z"/>
<path class="st2" d="M88.8,18.5c0.1,0,0.1,0.1,0.2,0.1c-0.1-0.2-0.2-0.7,0-1.3c0.1-0.1,0.1-0.3,0.3-0.3c0.2,0,0.2,0.2,0.3,0.4
c0.1,0.5,0.2,1.5,1.2,1.9c0.6,0.2,1,0.3,1.3,0.4c0.6,0.2,0.9,0.3,1.2,0.6c0.2,0.2,0.4,0.5,0.5,0.8c0.1,0.1,0.2,0.3,0.3,0.4
c0.1-0.1,0.2-0.2,0.3-0.3c0.4-0.4,1-0.9,1.7-1.2c1.4-0.5,2.3-1,2.6-1.4c0.6-1,0.2-2,0-2.5l0-0.1c0-0.1-0.1-0.2,0-0.3
c0-0.1,0.1-0.1,0.2-0.1c0.1,0,0.1,0,1,1.6c0,0,0.1,0,0.2,0c0.2,0,0.3-0.1,0.5-0.2c0.3-0.2,0.1-0.7,0.1-0.7c0-0.1,0-0.2,0.1-0.2
c0.1-0.1,0.2,0,0.2,0c0.1,0.1,0.4,0.4,0.5,0.4c0.1,0,0.5-0.4,0.8-0.8c0.1-0.1,0.2-0.1,0.2,0c0.1,0.1,0.1,0.2,0.1,0.2
c-0.1,0.2-0.9,1.5-1.5,1.8c-0.4,0.2-1,0.4-1.2,0.5c-0.1,0.3-0.7,1.5-1.9,2c-1.2,0.5-2.2,1-2.7,1.7c-0.2,0.3-0.5,0.8-0.6,0.9
c0,1.4,0.1,4.6-0.3,5C94.1,28,94.1,28,94,28c-0.3,0-0.4-0.4-0.5-1.8c0-0.7-0.1-1.5-0.2-1.8c-0.2-0.4-0.2-1-0.2-1.4
c-0.1-0.7-0.1-1.4-0.5-1.9C92,20.3,91.3,20,91.1,20c-0.1,0-0.1,0-0.1,0c0,0.4,0,0.6,0,0.6c0,0.1,0,0.1-0.1,0.2
c-0.1,0-0.1,0-0.2,0c0,0-1-1.1-1.5-1.4c-0.3-0.2-0.9-0.6-1.5-0.9c0,0.3,0.1,0.6,0.1,0.9c0.1,0.4,0.1,0.8,0.1,1.1
c0.1,0.6,0.3,1.2,0.4,1.7c0.1,0.2,0.1,0.4,0.2,0.6c0.1,0.1,0.2,0.2,0.2,0.4c0.1,0.1,1.6,0.9,1.5,1.2c-0.3,0.2-1.9-0.7-1.7-0.2
c0,0.3,0,0.2,0.1,0.5l0.1,0.6c0,0.4,0.2,0.7,0.2,1c0,0.2,0.1,0.4,0.1,0.6c0.1,0.4,0.2,0.7,0.3,1.1c0.1,0.3,0.1,0.7,0.1,1
c0,0.4,0,0.8,0.1,1.1c0,0.3,0.1,0.6,0.1,0.9c0,0.1,0,0.1,0,0.2c0,0.2,0,0.5,0.1,0.7c0.1,0.2,0.1,0.5,0.2,0.7
c0,0.2,0.1,0.4,0.1,0.6c0.2,0.1,0.3,0.2,0.5,0.4l1.5-2.2h3.2l1.5,2.3c0.1-0.1,0.3-0.2,0.5-0.4c0-0.1,0-0.2,0.1-0.3
c0.3-1.2,0.5-2.4,0.7-3.6l1.1-4.8c0,0,0.1-0.2,0.2-0.4c0-0.1,0.1-0.2,0.1-0.3c0-0.1,0.1-0.1,0.1-0.2c0.1-0.2,0.1-0.4,0.2-0.5
c0.1-0.4,0.4-2.6,0.4-2.6s-0.9,0.3-0.9-0.1c0-0.1,0.8-0.6,1-0.8c0.1-0.2,0.2-0.9,0.2-0.9l2-2.4c0,0,1-2,1-2.6
c0-1.2-0.4-2.6-0.4-2.6c-0.2-0.4-0.4-0.8-0.5-1.1c-0.1-0.2-0.2-0.5-0.4-0.6c-0.2-0.2-0.5-0.3-0.7-0.5c-0.3-0.2-0.7-0.4-1-0.5
c-0.2-0.1-0.3-0.1-0.5-0.1c-0.2,0-0.4,0-0.6,0c-0.4,0-0.8,0-1.1,0.1c-0.1,0-0.3,0.1-0.4,0.2c-0.7,0.3-1.5,0.7-2.2,1
c-0.3,0.4-0.4,0.6-0.4,1.9c-0.1,1.5-0.4,4-0.4,4s-0.3,0.3-0.4-0.2c-0.2-1-0.5-2.6-0.5-3.5c0-1-0.5-1.9-0.7-2.3
c-0.4-0.2-1-0.7-1.3-0.9c-0.5-0.3-2.2-0.4-2.7-0.2c-0.4,0.1-0.8,0.2-1.2,0.4c-0.2,0.1-0.4,0.2-0.5,0.4c-0.2,0.2-0.4,0.3-0.6,0.5
c-0.1,0.2-0.3,0.3-0.4,0.5c-0.1,0.2-0.2,0.5-0.2,0.7c0,0.2,0,0.2,0,0.4c0,0.4-0.4,0.6-0.5,1.1c-0.1,0.4-0.1,0.9-0.1,1.3
c0,1.3,0.6,2.6,1.5,3.5C87.6,17.7,88.5,18.3,88.8,18.5z"/>
<path class="st2" d="M93.3,46.8c-1,0-1.9,0.1-2.7,0.1c0.1,0.7,0.2,1.6,0.3,1.8c0,0.5,0,1.1,0.1,1.6c0.1,1,0,2.1,0,3.2
c0,0.5,0,1,0.1,1.6c0.1,0.5,0.1,1.1,0.4,1.5c0.1,0.2,0.3,0.3,0.5,0.5c0.1,0.1,0.2,0.2,0.4,0.4c0.1,0,0.2,0.1,0.3,0.2
c0.1,0.1,0.1,0.4,0.1,0.6c0.1,0.5,0.1,1,0.1,1.4c0,0.5,0,1-0.1,1.5c0,0.4-0.1,1,0.2,1.4c0.4,0.6,0.6-1,0.6-1.2
c0-0.9-0.1-1.8,0.1-2.7c0.1-0.4,0-1,0.3-1.4c0.1-0.2,0.4-0.3,0.6-0.4c0.2-0.1,0.4-0.3,0.6-0.5c0.2-0.2,0.4-0.5,0.4-0.8
c0.1-0.3,0.2-0.7,0.3-1c0-0.1,0.1-0.3,0.1-0.4c0-0.3,0-0.6,0-0.9c0-0.3,0-0.6,0-0.9c0-0.2,0-0.4,0-0.6c0-0.1,0-0.3,0-0.4
c0,0,0,0-0.1,0c0.5-0.9,0.5-2,0.6-3c0-0.2,0-0.5,0.1-0.6c0-0.1,0.1-0.5,0.2-0.8C95.7,46.9,94.6,46.8,93.3,46.8z"/>
<path class="st2" d="M118.5,23.3c-0.3-0.3-0.7-0.4-1-0.7c-0.4-0.3-1-0.3-1.5-0.3c-0.1,0-0.1,0-0.2,0c-0.3,0.1-0.5,0.3-0.5,0.6
c0,0.4-0.9,3.4-1.9,4.1c-0.9,0.6-0.7,0.2-0.4-0.2c0.3-0.4,1-2.3,1.1-3.5c0.1-0.9-0.5-2.2-0.9-2.9c0,0,0,0,0,0
c-0.1-0.1-0.2-0.2-0.3-0.4c-0.1-0.2-0.1-0.3-0.3-0.3c-0.2-0.1-0.3-0.2-0.5-0.3c-0.2-0.1-0.4-0.2-0.5-0.3
c-0.3-0.2-0.8-0.4-1.2-0.4c-0.4,0-0.9-0.1-1.4-0.1c-0.1,0-0.2,0-0.4,0c-0.1,0-0.2,0.1-0.3,0.1c-0.4,0-0.8,0-1.2,0.1
c-0.2,0-0.4,0.1-0.6,0.2c-0.2,0.1-0.3,0.3-0.5,0.4c-0.2,0.1-0.3,0.3-0.6,0.3c-0.2,0.1-0.3,0.2-0.5,0.3c-0.3,0.2-0.5,0.5-0.7,0.8
c-0.1,0.2-0.3,0.4-0.4,0.7c0,0.2-0.1,0.4-0.2,0.6c-0.1,0.1-0.1,0.2-0.1,0.2c-0.1,0.1-0.2,0.1-0.2,0.2c-0.1,0.1-0.2,0.3-0.3,0.5
c-0.4,0.5-0.9,0.9-1.3,1.4c-0.1,0.1-0.1,0.3-0.2,0.4c0,0.1,0,0.2-0.1,0.3c-0.1,0.2-0.2,0.5-0.3,0.6c-0.1,0.2-0.3,0.4-0.4,0.6
c-0.1,0.3-0.3,0.5-0.3,0.8c-0.1,0.3-0.2,0.5-0.3,0.8c-0.3,0.6-0.5,1.3-0.8,1.9c-0.1,0.3,0,0.6-0.1,0.9c-0.1,0.3-0.4,0.5-0.5,0.7
c-0.1,0.2-0.1,0.4-0.2,0.5c-0.1,0.2-0.1,0.5-0.2,0.7c-0.1,0.2-0.1,0.4-0.1,0.5c0.4-0.1,0.8-0.2,1.3-0.1c0.6-0.7,1.4-1.2,2-1.6
l1.6,0.4c0-0.1,0-0.1,0.1-0.2c0.3-0.5,1.7-3.5,1.8-3.8c0-0.1,0-0.3-0.1-0.5c-0.2-0.8-0.3-1.6,0-1.9c0.2-0.3,0.3-1.2,0.3-1.7
c0,0,0-1.1,0.2-1.8c0.2-1,0.4-1,0.5-1c0.1,0,0.1,0,0.1,0.1c0.1,0.1,0.1,0.1-0.2,1c-0.1,0.3,0.1,0.9,0.2,1.2
c0.2-0.2,0.7-0.5,1.2-0.9c0,0,0.1,0,0.1,0c0,0,0,0,0.1,0c0.3,0,0.4,0.1,0.4,0.2c0.1,0.2-0.1,0.4-0.3,0.5
c-0.4,0.3-1.1,0.9-1.5,1.7c-0.2,0.4-0.1,1.3,0,1.9c0,0.2,0,0.3,0,0.4c0,0.3,0.3,1.5,0.6,1.6c0,0,0.1-0.2,0.2-0.6
c0.1-0.5,0.8-1.1,0.8-1.1c0.1,0,0.1-0.1,0.2,0c0.1,0,0.1,0.1,0.1,0.2c0,0.1-0.2,0.6-0.4,0.9c-0.2,0.1-0.3,1.2,0.3,2.5
c0.3,0.6,0.8,1.3,1.2,1.8c0.1,0.1,0.2,0.2,0.3,0.3c0.1,0.2,0.3,0.4,0.5,0.5c0.2,0.1,0.5,0.3,0.7,0.4c0.2,0.1,0.3,0.1,0.5,0.2
c0.2,0.1,1.1,0.4,1.1,0c0-0.1-0.3-0.3-0.3-0.3c-0.1-0.3,0.1-0.4,0.2-0.5c0.1-0.2,0.3-0.2,0.5-0.2c0.2-0.1,0.5-0.2,0.7-0.3
c0.4-0.1,0.8-0.4,1.2-0.6c0.3-0.3,0.5-0.5,0.7-0.8c0.1-0.3,0.4-1.2,0.2-1.8c-0.2-0.5-0.1-0.6-0.1-0.6c0,0,0.1-0.1,0.2-0.1
c0.1,0,0.2,0,0.4,0.7c0,0.1,0,0.2,0,0.3c0.1,0.4,0.1,0.7,0.4,0.8c0.2,0,0.4,0,0.6-0.1c0.3-0.1,0.6-0.3,0.8-0.5
c0.2-0.2,0.4-0.3,0.5-0.5c0.1-0.1,0.2-0.3,0.3-0.4c0.1-0.1,0.1-0.1,0.2-0.2c0.3-0.4,0.3-1,0.3-1.5c0-0.1,0-0.1,0-0.2
c0-0.1,0-0.2-0.1-0.3c-0.1-0.2-0.2-0.4-0.4-0.6c-0.1-0.1-0.2-0.1-0.2-0.2l-0.4-0.2c-0.1-0.1-0.2-0.1-0.3-0.1l0,0
c-0.1,0-0.3-0.1-0.3-0.2c0-0.1,0.1-0.2,0.2-0.2c0.1,0,0.2,0,0.2,0.1c0.2,0,0.4,0.2,0.5,0.3c0.2,0.1,0.3,0.2,0.4,0.3
c0.1,0.1,0.2,0.1,0.3,0.1c0.3,0.1,0.5-0.2,0.5-0.2c0,0,0,0,0,0c0-0.1,0.1-0.2,0.1-0.2c0.1-0.2,0.1-0.5,0.1-0.7
C119.3,24.3,118.9,23.6,118.5,23.3z"/>
<path class="st2" d="M104.7,59.2c0,0-1-2.4-1.1-2.4c-0.1-0.2-0.2-0.5-0.3-0.7c-0.1-0.3,0.2-0.5,0.3-0.7c0.1-0.3,0.3-0.7,0.3-1.1
c0-0.2,0-0.5,0-0.8c0-0.2-0.1-0.5-0.2-0.7c0-0.2,0-0.3-0.1-0.5c-0.1-0.3-0.2-0.7-0.2-1c-0.1-0.5-0.3-1.1-0.4-1.6
c-0.1-0.2-0.1-0.5-0.2-0.8l-0.4-0.1c-0.6-0.5-2.2-1.3-5-1.7c0.1,0.4,0.1,0.8,0.2,0.9c0.1,0.2,0.2,0.4,0.3,0.6
c0.1,0.3,0.4,0.5,0.5,0.8c0.1,0.3,0.1,0.6,0.2,0.9c0.1,0.4,0.2,0.7,0.4,1c0.1,0.2,0.3,0.4,0.3,0.6c0,0.2-0.1,0.5,0,0.7
c0,0.2,0.2,0.3,0.2,0.5c0.1,0.2,0.1,0.4,0.3,0.5c0.4,0.5,0.7,1,1.2,1.4c0.3,0.3,0.7,0.6,1,0.8c0.2,0.1,0.4,0.2,0.5,0.4
c0.1,0.2,0.1,0.5,0.2,0.7c0.1,0.2,0.4,0.5,0.3,0.8c0.2-0.1,0.4,0.4,0.4,0.6c0.1,0.2,0.2,0.5,0.3,0.7c0.2,0.2,0.4,0.6,0.6,0.8
c0.1,0.1,0.2,0.1,0.3,0.1c0.2,0,0.1-0.1,0.1-0.3C104.8,59.6,104.7,59.4,104.7,59.2z"/>
<path class="st2" d="M75.8,31.7c0.2,0.1,0.5,0.1,0.7,0.3c0.1,0.1,0.2,0.3,0.3,0.5c0,0.1,0,0.3,0.1,0.3c0.1,0.1,0.4,0.1,0.5,0
c0.2-0.1,0.2-0.2,0.4-0.3c0.1-0.1,0.2-0.1,0.2-0.1c0,0,0-0.1,0-0.1c0,0,2.2-1.4,2.4-3.1c0.2-1.7,0-2.4,0-2.4c0-0.1,0-0.2,0.1-0.2
c0.1,0,0.2,0,0.2,0.1c0,0,0.3,0.4,0.4,1.1c0.1,0.3,0.1,0.5,0.2,0.6c0.3-0.4,0.8-1.3,0.8-2.1c0-0.3,0-0.6,0-0.9
c0-0.7,0.1-1.2-0.2-1.8c-0.4-0.8-0.6-1-0.6-1c-0.1-0.1-0.1-0.2,0-0.2c0.1-0.1,0.2-0.1,0.2,0c0.1,0.1,1.4,1.1,1.6,1.7
c0.1,0.4,0.1,1.7,0,3c0,0.3,0,0.5,0,0.6c0,0.3,0.4,2,0.8,2.7c0.1,0.3,0.3,0.8,0.5,1.3l1.5-0.3c0.7,0.3,1.5,0.9,2,1.6
c0.4,0,0.8,0,1.2,0.1c0,0,0,0,0-0.1c0-0.1,0.1-0.2,0.1-0.3c0-0.2-0.1-0.4-0.2-0.6c-0.1-0.3-0.2-0.6-0.4-0.9
c-0.1-0.1-0.1-0.3-0.1-0.4c0-0.1-0.1-0.1-0.1-0.2c-0.1-0.2-0.1-0.4-0.1-0.6c0-0.4-0.1-0.7-0.2-1.1c-0.1-0.3-0.2-0.5-0.2-0.8
c-0.1-0.2-0.1-0.4-0.2-0.6c-0.1-0.1-0.1-0.3-0.2-0.4c-0.1-0.2-0.3-0.1-0.4-0.4c-0.1-0.2,0-0.5-0.2-0.7c-0.2-0.4-0.5-0.7-0.7-1.2
c-0.1-0.3-0.2-0.7-0.3-1c-0.1-0.3-0.2-0.5-0.4-0.8c-0.2-0.2-0.2-0.4-0.2-0.7c0-0.1,0-0.2-0.1-0.3c-0.1-0.2-0.1-0.4-0.3-0.5
c-0.1,0-0.1,0-0.2-0.1c-0.1-0.1-0.2-0.2-0.2-0.3c-0.2-0.3-0.3-0.6-0.4-0.9c-0.1-0.4-0.4-0.6-0.7-0.9c-0.1-0.1-0.3-0.2-0.4-0.3
c-0.1-0.1-0.2-0.2-0.3-0.2c-0.1-0.1-0.2-0.1-0.3-0.2c-0.4-0.3-0.8-0.6-1.2-0.7c-0.2,0-0.3-0.1-0.5-0.2c-0.3-0.1-0.6-0.2-0.9-0.2
c-0.3,0-0.6-0.1-0.9-0.1c-0.2,0-0.4,0-0.6,0c-0.2,0-0.5,0-0.7,0c-0.3,0.1-0.6,0.2-0.9,0.2c-0.4,0.1-0.7,0.4-1,0.7
c-0.3,0.2-0.6,0.4-0.9,0.7c-0.7,0.8-1,1.7-1,2.8c0,1.5,0.6,3,1.1,3.9c0.2,0.4,0.1,0.8,0.1,0.8s-0.3-0.6-0.7-1.2
c-0.4-0.6-0.5-0.2-1.2-1.8c-0.5-1-0.2-2.3,0.1-3.1c-0.1,0.1-0.2,0.1-0.3,0.1c-0.1,0-0.2,0-0.3,0c-0.4,0.1-0.8,0.2-1.2,0.3
c-0.3,0.1-0.6,0.2-0.9,0.3c-0.5,0.2-0.8,0.6-1.1,0.9c-0.3,0.4-0.5,1-0.6,1.5c0,0.2,0,0.3,0,0.5c0,0.3,0.2,0.6,0.2,0.9
c0,0.1,0.1,0.2,0.2,0.3c0.1,0.2,0.1,0.5,0.1,0.7c0.1,0.9,0.3,1.9,1.1,2.6c0.2,0.2,0.4,0.2,0.7,0.3c0.3,0.2,0.6,0.4,1,0.5
c0.5,0.2,1,0.1,1.4,0.4c0.2,0.2,0.3,0.5,0.6,0.7c0.1,0.1,0.3,0.2,0.4,0.2c0.2,0.1,0.4,0.3,0.6,0.4C75.2,31.5,75.5,31.6,75.8,31.7
z"/>
<path class="st2" d="M84.2,48.9L84,49c0,0.2,0,0.3-0.1,0.5c-0.2,0.8-0.5,1.5-0.6,2.3c-0.1,0.3-0.2,0.5-0.3,0.8
c-0.2,0.5-0.2,1,0,1.5c0.1,0.7,0.6,1.6,0.4,2.4c-0.1,0.2-0.2,0.4-0.3,0.7c-0.2,0.3-0.4,0.7-0.6,1c-0.2,0.3-0.3,0.6-0.5,0.8
c-0.1,0.2-0.4,0.6,0,0.7c0.3,0,0.4-0.2,0.5-0.3c0.1-0.2,0.3-0.3,0.4-0.5c0.1-0.2,0.3-0.4,0.4-0.5c0.1-0.2,0.2-0.4,0.3-0.6
c0.1-0.3,0.4-0.6,0.5-0.9c0.1-0.2,0.3-0.5,0.5-0.6c0.3-0.2,0.6-0.3,1-0.4c0.4-0.2,0.7-0.5,0.9-0.9c0.2-0.3,0.4-0.6,0.6-0.9
c0.2-0.4,0.5-0.8,0.6-1.2c0.1-0.3,0.3-0.7,0.4-1c0-0.2,0.1-0.5,0.2-0.7c0.2-0.6,0.3-1.2,0.5-1.8c0.1-0.2,0.2-0.5,0.3-0.7
c0.1-0.2,0.1-0.5,0.3-0.8c0.1-0.1,0.2-0.4,0.3-0.7C86.6,47.5,84.8,48.4,84.2,48.9z"/>
</g>
</g>
</g>
<g>
<path class="st2" d="M25.9,20c-1.8,1.4-4.8,3.5-4.8,4.4c-0.2,2.3,0.3,5,0.5,6.4c0.1,0.4,0.2,1.7,0.4,3.3c1.1-0.1,2.4-0.1,3.7-0.2
c-0.1-2.1-0.2-3.8-0.2-3.8s-0.1-2.1,0-2.8c0.1-0.7,1.4-2,1.4-2s1-1,1.9-2l0.5-0.7c0,0-0.1,0-0.1,0c0,0-0.6-0.3-0.5-0.6
c0-0.1,0.1-0.2,0.2-0.2c0.1,0,0.4,0.1,0.4,0.1c0.9,0,1.3-0.4,1.5-1c0.1-0.2,0.1-0.6,0.1-0.7l0-0.1c0-0.1,0-0.2,0-0.2
c0.1-0.1,0.1-0.1,0.2-0.1c0.1,0,0.7,0.3,0.4,1.8c-0.1,0.6-1.2,1.5-2.1,2.1c0.8,0.9,1.6,1.6,1.6,1.6s1.3,1.3,1.4,2
c0.1,0.7,0,2.8,0,2.8s-0.1,1.8-0.2,3.8c1.3,0,2.5,0.1,3.7,0.2c0.2-1.6,0.4-2.9,0.4-3.3c0.2-1.4,0.7-4.1,0.5-6.4
c-0.1-0.9-3-3-4.8-4.4c1.6-1.7,4-4.4,4.3-5.9c0.4-2.1-0.7-3.7-3.1-4.7c-2.3-0.9-3.7-0.3-4.2,0c-0.5-0.3-1.9-0.9-4.2,0
c-2.4,1-3.5,2.6-3.1,4.7C21.9,15.5,24.3,18.3,25.9,20z M25.9,11.7c0.5-0.7,1.5-1.4,2.1-1.7c0.2-0.1,0.7-0.3,1-0.4
c0.3,0.1,0.7,0.3,1,0.4c0.6,0.3,1.6,1,2.1,1.7c0.6,0.8,0.2,2.7-0.7,3.7c-0.3,0.4-1.3,1.2-2.3,2l-0.4,0.4c0.3,0,0.4,0,0.6,0.1
c0.6,0.3,0.9,0.8,0.9,1c0,0.1-0.1,0.2-0.2,0.2c-0.1,0-0.2-0.1-0.3-0.1c0,0-0.3-0.1-0.7-0.1c-0.3,0-1,0.1-1.2,0.7
c-0.2,0.6,0.2,1.3,0.3,1.4c0,0,0.1,0.1,0.1,0.2c0,0.1-0.1,0.2-0.2,0.2c0,0,0,0,0,0c0,0-0.1,0-0.1,0l-0.2-0.1c0,0-1.4-0.4-1.1-2.1
c0.1-0.6,1.1-1.4,1.9-2.1c-0.8-0.7-1.6-1.3-1.8-1.6C25.7,14.3,25.3,12.5,25.9,11.7z"/>
<path class="st2" d="M16.1,46.7c-1.4,0.2-2.5,0.5-3.3,0.8v6.7c0,0-0.1,2.1,1.7,2.1c1.8,0,1.6-2.1,1.6-2.1V46.7z"/>
<path class="st2" d="M47.7,14.5h-7c-1.1,0-1.9,0.8-1.9,0.8l-2.7,2.9c-0.8,0.8-0.8,1.7-0.8,1.7v0.9h4.9c1.1,0,1.1,1.1,1.1,1.1v8.5
v4.2c1.3,0.2,2.4,0.4,3.3,0.7V21.9c0-1.1,1.1-1.1,1.1-1.1h3v-5.2C48.8,14.5,47.7,14.5,47.7,14.5z"/>
<path class="st2" d="M12.8,21.9v13.3c0.9-0.2,2-0.5,3.3-0.7v-4.1v-8.5c0,0,0-1.1,1.1-1.1h4.9v-0.9c0,0,0-0.9-0.8-1.7l-2.7-2.9
c0,0-0.8-0.8-1.9-0.8h-7c0,0-1.1,0-1.1,1.1v5.2h3C11.7,20.8,12.8,20.8,12.8,21.9z"/>
<path class="st2" d="M41.4,46.7v7.4c0,0-0.2,2.1,1.6,2.1c1.8,0,1.7-2.1,1.7-2.1v-6.7C43.9,47.2,42.8,46.9,41.4,46.7z"/>
<path class="st2" d="M26.4,45.8c-1,0-1.9,0-2.8,0.1c0.3,2.5,1,9.2,1,10.6c0,1.5-0.5,2.9-0.6,3.3c-0.1,0.7-0.3,1.8,0.4,2
c0.7,0.1,1.2-0.5,1.4-0.9c0.2-0.4,0.7-1.6,0.9-3.3c0.1-0.8-0.4-8.9-0.4-9.5C26.5,47.8,26.5,46.9,26.4,45.8z"/>
<path class="st2" d="M33.2,56.5c0-1.3,0.7-8,1-10.6c-0.9,0-1.8-0.1-2.7-0.1c-0.1,1.1-0.1,2-0.1,2.2c0,0.6-0.5,8.7-0.4,9.5
c0.2,1.8,0.8,2.9,0.9,3.3c0.2,0.4,0.7,1,1.4,0.9c0.7-0.1,0.6-1.3,0.4-2C33.7,59.4,33.2,58,33.2,56.5z"/>
</g>
<path class="st3" d="M28.7,36.4c-16,0-19.2,2.8-19.2,2.8l0.3,7c0,0,2.9-2.9,18.9-2.9c16,0,19,2.9,19,2.9l0.3-7
C48,39.2,44.8,36.4,28.7,36.4z M31.3,41.3l-1.7-0.7l0.7,1.7h-3l0.7-1.7l-1.7,0.7v-3l1.7,0.7l-0.7-1.7h3L29.5,39l1.7-0.7V41.3z"/>
<g>
<path class="st0" d="M168.3,15.1l0.5,0c3.3,0.3,3.5,0.8,3.7,2.2c0.2,1.3,0.3,3.3,0.3,7V28c0,5.8-1,12.4-8.5,12.4
c-5.7,0-8.6-3.6-8.6-10.8V19.4c0-4,0.3-4,3.4-4.2l0.5,0v-1.6h-12.6v1.6l0.5,0c3.3,0.3,3.3,0.3,3.3,4.2v11.3c0,5.1,1.4,8.4,4.4,10.5
c1.8,1.3,4.5,2.1,7.5,2.1c3.6,0,6.6-1.1,8.7-3.1c2.5-2.5,3.6-5.9,3.6-11.4v-4.3c0-3.8,0.1-5.7,0.2-6.8c0.2-1.6,0.6-2.1,3.4-2.4
l0.5-0.1v-1.6h-11V15.1z"/>
<path class="st0" d="M202.3,15.2l0.5,0c3.3,0.2,3.8,0.7,4,2.5c0.2,1.4,0.2,3.5,0.2,6.9v10.5l-19.7-21.5H180v1.6l0.5,0
c2.4,0.2,2.8,0.5,3.8,1.6c0.7,0.8,0.9,1.1,0.9,4.4v10c0,3.9-0.2,5.9-0.3,7.2l0,0.2c-0.2,2-0.8,2.5-3.5,2.7l-0.5,0v1.6h11.2v-1.6
l-0.5,0c-3.1-0.3-3.6-0.6-3.8-2.7c-0.2-1.6-0.3-4-0.3-7.3V20.6l20.1,22.5l0.2,0.2h1.6V24.6c0-3.8,0.1-5.6,0.2-7
c0.2-1.8,0.7-2.2,3.2-2.4l0.5,0v-1.6h-10.9V15.2z"/>
<path class="st0" d="M214.1,15.2l0.5,0c3.5,0.2,3.6,0.4,3.6,3.8v18.3c0,3.4-0.1,3.6-3.6,3.8l-0.5,0v1.6h13.2v-1.6l-0.5,0
c-3.5-0.2-3.7-0.4-3.7-3.8V19c0-3.4,0.1-3.6,3.7-3.8l0.5,0v-1.6h-13.2V15.2z"/>
<path class="st0" d="M260.2,13.6h-11v1.6l0.5,0.1c1.4,0.2,2.8,0.4,3.1,0.8c0.2,0.3-0.1,1.1-0.3,1.9c-2,5.8-5.4,13.8-7.3,18
c-3.2-7.6-6.5-15.6-7.7-18.7c-0.2-0.5-0.4-1.1-0.2-1.3c0.2-0.4,1.9-0.6,2.6-0.6l0.5-0.1v-1.6h-12.2v1.6l0.5,0
c2.5,0.2,2.9,0.4,4.4,4c3.1,7.3,6.5,15.6,9.7,23.9l0.1,0.3h1.5l0.1-0.3c3.7-9.4,8.7-20.5,10.1-23.6c1.7-3.8,2.1-4,5-4.3l0.5-0.1
V13.6z"/>
<path class="st0" d="M282.6,35.5c-0.7,1.6-1.4,3-2.1,3.8c-0.9,1-1.5,1.5-6,1.5c-2.2,0-3.8,0-4.6-0.6c-0.5-0.3-0.8-0.9-0.8-3v-8.4
h4.3c4,0,4.1,0.4,4.5,3l0.1,0.5h1.6v-9H278l-0.1,0.4c-0.5,2.5-0.6,2.8-4.6,2.8h-4.2V16.4c0-0.2,0-0.6,0-0.7c0,0,0.2-0.1,0.8-0.1
h3.2c3.7,0,4.9,0.2,5.7,1.2c0.6,0.7,1,1.7,1.4,3.3l0.1,0.5l1.7-0.3l0-0.5c-0.1-1.4-0.3-4.2-0.3-5.6v-0.6h-21.3v1.6l0.5,0
c3.3,0.3,3.3,0.3,3.3,4.1v18c0,3.4-0.2,3.5-4.1,3.8l-0.5,0v1.6h22.9l0.1-0.4c0.5-1.6,1.4-5,1.6-6.4l0.1-0.5l-1.7-0.3L282.6,35.5z"
/>
<path class="st0" d="M309.7,39.5c-1.2-1.3-2.6-2.9-4-4.9c-1.3-1.7-3.1-4.2-4-5.8c4-1.7,6-4.3,6-7.6c0-2.6-1.1-4.7-3.2-6
c-1.8-1.1-4.1-1.6-7.9-1.6h-11.8v1.6l0.5,0c3.3,0.3,3.4,0.3,3.4,3.7v18.5c0,3.4-0.1,3.6-3.6,3.8l-0.5,0v1.6h13v-1.6l-0.5,0
c-3.4-0.2-3.5-0.4-3.5-3.8v-7.3h0.7c2.2,0,2.8,0.5,3.6,1.7c0.6,0.8,1.2,1.7,1.8,2.6c1.1,1.6,2.1,3.2,3.2,4.6
c2.2,2.9,4.3,3.9,8.3,4.1c0.4,0,0.9,0,1.3,0h0.4l0.3-1.4l-0.5-0.1C311.8,41.3,311.1,40.9,309.7,39.5z M293.6,17.3
c0-1.4,0.2-1.5,0.2-1.5c0.1-0.1,1-0.2,2.4-0.2c3.9,0,6.2,2.4,6.2,6.3c0,2.4-0.8,4.1-2.4,5.3c-1.1,0.8-2.4,1.1-4.9,1.1h-1.5V17.3z"
/>
<path class="st0" d="M324.2,25.9l-0.3-0.2c-4.1-2-5.9-3.4-5.9-6.3c0-2.8,1.9-4.6,4.9-4.6c3,0,5,1.7,6.2,5.4l0.2,0.5l1.6-0.3
l-0.2-1.2c-0.3-2-0.6-3.5-0.7-4.9l0-0.4l-0.4-0.1c-0.2-0.1-0.5-0.1-0.7-0.2c-1.2-0.3-2.9-0.7-5.2-0.7c-6.6,0-10.1,4.1-10.1,8.1
c0,4.8,4.6,7.2,7.4,8.7l0.7,0.4c3.5,1.9,5.9,3.3,5.9,6.2c0,3.1-2.1,5-5.4,5c-5.9,0-7.5-6.1-7.7-6.8l-0.1-0.6l-1.6,0.6l0,0.4
c0.1,1.1,0.8,5.9,1.2,6.7l0.1,0.2l0.2,0.1c0.5,0.2,1.3,0.5,2.6,0.9l0.2,0.1c1,0.3,2.5,0.6,4.4,0.6c6.1,0,10.8-3.6,10.8-8.5
C332.2,29.9,327.9,27.8,324.2,25.9z"/>
<path class="st0" d="M333.4,15.2l0.5,0c3.5,0.2,3.6,0.4,3.6,3.8v18.3c0,3.4-0.1,3.6-3.6,3.8l-0.5,0v1.6h13.2v-1.6l-0.5,0
c-3.5-0.2-3.7-0.4-3.7-3.8V19c0-3.4,0.1-3.6,3.7-3.8l0.5,0v-1.6h-13.2V15.2z"/>
<path class="st0" d="M392.9,13.6v1.6l0.5,0c0.9,0.1,2.6,0.3,2.8,0.6c0.1,0.3-0.3,1.2-0.5,1.6c-1.3,2.5-3.9,7-5.7,9.8l-0.5-0.9
c-1.8-3-3.9-6.5-5.7-9.8c-0.3-0.5-0.3-0.7-0.3-0.7c0-0.1,0.3-0.3,2.4-0.6l0.5-0.1v-1.6h-11.6c0-0.2,0-0.4,0-0.5v-0.6h-1.3l-0.2,0.2
c-0.6,0.7-0.9,0.9-2,0.9h-19c-1.3,0-1.7-0.1-2.1-0.8l-0.2-0.3h-1.3l0,0.5c-0.1,2.6-0.3,5.3-0.6,7.4l-0.1,0.6h1.7l0.1-0.4
c0.4-1.7,0.9-2.8,1.3-3.6c0.5-0.9,1.3-1.4,6-1.4h2v21.8c0,3-0.1,3.5-3.9,3.7l-0.5,0v1.6h13.8v-1.6l-0.5,0c-4-0.2-4-0.7-4-3.7V15.6
h2.7c4.1,0,4.8,0.4,5.4,1.3c0.4,0.6,0.8,1.6,1.3,3.6l0.1,0.5l1.7-0.2l-0.1-0.5c-0.2-1.6-0.3-3.4-0.4-5.1l0.3,0
c2.5,0.1,2.6,0.3,4.6,3.6c2.4,3.8,4.3,7,5.8,9.8c0.7,1.3,0.8,1.7,0.8,2.4v6.3c0,3.5-0.1,3.6-3.8,3.9l-0.5,0v1.6h13.6v-1.6l-0.5,0
c-3.8-0.2-3.9-0.4-3.9-3.9v-6.3c0-1.1,0-1.6,0.8-2.8c2.2-3.8,3.9-6.6,6.6-10.4l0.1-0.2c1.2-1.7,1.5-2,4.4-2.4l0.5-0.1v-1.6H392.9z"
/>
</g>
<g>
<path class="st0" d="M161.7,62.1c0-2.7-1.7-4.3-4.4-4.3c-0.8,0-2.1,0.3-3.2,0.8c-2.6,1.1-5.1,3.9-5.1,7.8c0,2.8,1.6,4.4,4.3,4.4
c1.5,0,3.3-0.6,4.9-1.8C160.3,67.5,161.7,64.8,161.7,62.1z M155.2,69.2c-0.3,0.1-0.5,0.1-0.8,0.1c-1.4,0-2.3-1.2-2.3-3.1
c0-4.4,2.3-6.5,3.4-6.9c0.3-0.1,0.6-0.2,1-0.2h0c1.3,0,2.1,1.2,2.1,3.1C158.6,65.8,156.8,68.7,155.2,69.2z"/>
<path class="st0" d="M172.8,50c-1.4,0-3.4,1-4.8,2.3c-1.3,1.2-2.2,3-2.9,5.9h-1.8l-1.2,0.8l0.1,0.7h2.5c-0.4,1.7-0.7,3.2-1.1,5.2
l-0.8,3.7c-0.8,4-1.5,6.2-2.1,6.8c-0.3,0.3-0.8,0.5-1.3,0.5c-0.5,0-1.5-0.3-2-0.6c-0.3-0.2-0.6-0.2-0.9,0c-0.5,0.3-1,0.8-1,1.3
c0,0.8,1.2,1.4,2.3,1.4c1.2,0,2.6-0.6,3.8-1.7c2.2-1.9,3-3.6,4.1-8.3c0.9-3.5,1.2-5.2,1.8-8.1l0-0.1l3-0.3l1.4-1.2H168
c0.9-4.6,1.8-6.5,3.1-6.5c0.6,0,1.2,0.3,1.7,0.8c0.3,0.3,0.7,0.4,1.1,0.1c0.2-0.2,0.9-0.7,0.9-1.3c0-0.2-0.1-0.5-0.3-0.8
C174.1,50.4,173.5,50,172.8,50z"/>
<path class="st0" d="M197.4,53.2c-1.5-1-3.9-1.4-7.1-1.4h-10.2v1.1l0.3,0c2.8,0.2,2.9,0.3,2.9,3.1v14.8c0,2.8-0.1,2.9-3.2,3.1
l-0.3,0v1.1h11.2V74l-0.3,0c-3.2-0.2-3.4-0.4-3.4-3.1v-5.7l2.7,0.6c0.4,0.1,1.2,0.1,1.7,0c4.1-0.4,8.4-2.6,8.4-7.4
C200.2,56.2,199.3,54.4,197.4,53.2z M190,64.1c-1.1,0-2-0.1-2.6-0.3v-8.8c0-1,0.1-1.5,0.3-1.7c0.1-0.1,0.8-0.3,2-0.3
c3.8,0,6,1.9,6,5.3C195.8,63.6,191.7,64.1,190,64.1z"/>
<path class="st0" d="M212,59c-2,0-3.7,1.9-4.7,3.1v-3.4l-0.5,0.2c-2,0.7-3.6,1.2-5.5,1.4l-0.3,0v0.9l0.3,0c2.2,0.3,2.2,0.3,2.2,2.4
v7.6c0,2.2-0.1,2.3-2.4,2.5l-0.3,0v1.1h9.9V74l-0.3,0c-3.1-0.2-3.1-0.4-3.1-2.5v-7c0.9-1.6,1.9-2.5,2.8-2.5c0.6,0,1,0.2,1.6,0.7
c0.3,0.3,0.8,0.3,1.4,0.1c0.9-0.4,1.4-1.1,1.4-1.7C214.6,60.1,213.5,59,212,59z"/>
<path class="st0" d="M219.7,55.6c1.1,0,2.1-0.8,2.1-1.8c0-1-0.9-1.8-2.1-1.8c-1.1,0-2,0.8-2,1.8C217.6,54.8,218.6,55.6,219.7,55.6z
"/>
<path class="st0" d="M221.7,71.4V58.8l-0.5,0.2c-1.6,0.6-3.4,1.1-5.4,1.3l-0.3,0v1l0.3,0c2.1,0.4,2.2,0.4,2.2,2.4v7.6
c0,2.2-0.1,2.3-2.5,2.5l-0.3,0v1.1h9.5V74l-0.3,0C221.9,73.8,221.7,73.6,221.7,71.4z"/>
<path class="st0" d="M243.5,71.4v-6.9c0-3.4-2.1-5.4-5.6-5.4c-1.3,0-2.2,0.4-3.4,1.1c-0.9,0.5-1.8,1-2.5,1.4v-2.7l-0.5,0.2
c-1.6,0.6-3.3,1.1-5.4,1.4l-0.3,0v0.9l0.3,0.1c2.1,0.4,2.1,0.4,2.1,2.4v7.6c0,2.2-0.2,2.4-2.8,2.6l-0.3,0v1.1h9.5V74l-0.3,0
c-2.2-0.2-2.4-0.3-2.4-2.5V63c1.1-0.8,2.7-1.6,4.2-1.6c2.4,0,3.5,1.2,3.5,3.7v5.9c0,2.6-0.2,2.7-2.6,2.9l-0.3,0v1.1h9.2V74l-0.3,0
C243.6,73.8,243.5,73.7,243.5,71.4z"/>
<path class="st0" d="M260.2,70.9c-1.9,1.5-3.2,1.8-4.9,1.8c-2.4,0-6.1-1.7-6.1-6.4c0-3.3,1.8-5.3,4.9-5.3c1.5,0,2.9,0.4,3.9,1.3
c0.5,0.4,0.7,0.5,1.1,0.5c0.6,0,1.5-0.7,1.5-1.6c0-0.5-0.2-0.8-0.8-1.3c-0.7-0.5-2.1-1-3.8-1c-1.6,0-4.1,0.6-6.2,2
c-2.9,1.9-4.3,4.3-4.3,7.1c0,3.6,3,7.4,8.4,7.4c2.3,0,4.9-1.4,7.1-3.7l0.2-0.2l-0.8-0.9L260.2,70.9z"/>
<path class="st0" d="M277.6,64.2c0-2.4-2.6-5.2-6.3-5.2c-2,0-4.4,1-6.2,2.6c-1.8,1.7-2.8,3.8-2.8,6.2c0,3.7,2.6,7.6,8.3,7.6
c1.3,0,4.3-0.8,6.7-3.6l0.2-0.2l-0.8-0.8l-0.2,0.2c-1.4,1.1-2.9,1.7-4.4,1.7c-1.7,0-3.3-0.6-4.4-1.8c-1.2-1.2-1.8-2.9-1.8-5
c5-0.1,9.8-0.4,10.5-0.6C277.2,65.3,277.6,65,277.6,64.2z M273.2,64.3c-2.3,0.1-4.6,0.1-6.9,0.1c0.6-2.5,2.4-3.7,3.9-3.7h0
c1,0,1.9,0.3,2.5,1c0.6,0.6,0.9,1.5,0.9,2.4C273.6,64.1,273.6,64.3,273.2,64.3z"/>
<path class="st0" d="M304.9,69.3c-0.4,1-1.1,2.3-1.8,3.1c-0.9,0.9-1.6,1.2-5.4,1.2c-2,0-3.4,0-4.1-0.5c-0.5-0.3-0.8-0.8-0.8-2.5
v-6.9h3.9c3.7,0,3.7,0.4,4.2,2.5l0.1,0.3h1.1v-7h-1.1l-0.1,0.3c-0.4,2-0.5,2.4-4.2,2.4h-3.8v-8.4c0-0.7,0-0.7,0.9-0.7h2.8
c3.4,0,4.4,0.2,5.1,1c0.5,0.6,0.9,1.4,1.3,2.7l0.1,0.3l1.2-0.2l0-0.3c-0.1-1.2-0.3-3.4-0.3-4.5v-0.3h-18.5v1.1l0.3,0
c2.9,0.3,3.1,0.3,3.1,3.4v14.5c0,2.7-0.1,2.9-3.7,3.2l-0.3,0v1.1h19.9l0.1-0.2c0.4-1.2,1.2-4,1.5-5.2l0.1-0.4l-1.2-0.2L304.9,69.3z
"/>
<path class="st0" d="M323.8,71.1v-22l-0.4,0.1c-1.4,0.4-4,1-6.1,1.2l-0.3,0v0.9l0.3,0c2.8,0.2,2.8,0.3,2.8,2.3v5.6
c-0.9-0.2-1.9-0.2-2.5-0.2c-5.9,0-10.8,4-10.8,8.8c0,5.2,4.7,7.6,7.8,7.6c0.8,0,2-0.4,3.5-1.1l2-1v2.3l0.5-0.2
c1.5-0.5,3.5-0.9,6-1.3l0.3,0v-1l-1.6-0.2C323.9,72.9,323.8,72.8,323.8,71.1z M320.1,71.9c-0.9,0.5-2.3,1.1-3.6,1.1
c-2.8,0-5.5-2.1-5.5-6c0-5,3.3-6.3,5.2-6.3c1.7,0,3.1,0.6,4,1.7V71.9z"/>
<path class="st0" d="M353.2,60.5v-1.1h-7.7v1.1l0.3,0c1.2,0.2,2.2,0.3,2.4,0.7c0.1,0.2,0.1,0.7-0.1,1.3c-0.7,2.4-1.6,4.8-2.4,7.1
l-0.3,0.8c-1.9-3.9-3.4-7.2-4.9-10.5l-0.1-0.2h-1l-0.1,0.2c-1.5,3.7-3,7.1-4.5,10.3c-1.3-3-2.3-5.6-3.2-7.9c-0.2-0.5-0.3-1-0.2-1.1
c0.2-0.3,1.2-0.4,2.2-0.6l0.3,0v-1.1h-8.9v1.1l0.3,0c1.8,0.2,2,0.3,2.6,2c1.7,4.3,3.4,8.5,5,12.7l0.1,0.2h1.1l0.1-0.2
c1.2-2.9,2.4-5.6,3.7-8.4c0.3-0.6,0.6-1.3,0.9-1.9c0.5,1,1,2,1.4,3c1.2,2.5,2.4,4.9,3.5,7.4l0.1,0.2h1.1l1-2.5
c1.6-4,3.2-8.1,4.1-10.1c0.8-1.7,0.9-2.1,2.9-2.3L353.2,60.5z"/>
<path class="st0" d="M368.2,72.6c-0.3,0.2-0.8,0.3-1.2,0.3c-0.7,0-1.2-0.6-1.2-1.6v-6.7c0-2.2-0.6-3.6-2-4.6
c-0.9-0.6-2.1-0.9-3.4-0.9c-2.1,0.4-4.9,1.7-6.2,2.5c-0.7,0.4-1.4,0.9-1.4,1.5c0,0.9,1.1,1.7,2,1.7c0.7,0,1.1-0.3,1.3-1
c0.4-1.1,0.7-1.8,1.2-2.2c0.4-0.4,0.9-0.6,1.6-0.6c2.1,0,3.2,1.4,3.2,3.9v0.7c-1.2,0.7-3.8,1.5-6.1,2.1c-2.4,0.7-3.4,1.8-3.4,3.5
c0,2.1,2.1,4.3,5.2,4.3c0.9,0,2.6-1,4.5-2.1c0.2,0.5,0.5,1,0.9,1.3c0.5,0.5,1.5,0.8,2.3,0.8h0.1l3.5-2l-0.6-1.1L368.2,72.6z
M362.1,72c-0.8,0.7-2,1-2.8,1c-1.1,0-2.7-0.8-2.7-2.5c0-1,0.6-1.6,2.3-2.3c0.3-0.1,0.8-0.3,1.3-0.5c0.7-0.3,1.4-0.5,1.9-0.8V72z"
/>
<path class="st0" d="M383.1,61c0-0.9-1-2-2.5-2c-1.9,0-3.7,1.9-4.6,3.1v-3.4l-0.5,0.2c-2,0.7-3.6,1.2-5.5,1.4l-0.3,0v0.9l0.3,0
c2.2,0.3,2.2,0.3,2.2,2.4v7.6c0,2.2-0.1,2.3-2.4,2.5l-0.3,0v1.1h9.9V74l-0.3,0c-3.1-0.2-3.1-0.4-3.1-2.5v-7
c0.9-1.6,1.9-2.5,2.8-2.5c0.6,0,1,0.2,1.6,0.7c0.3,0.3,0.8,0.3,1.4,0.1C382.5,62.3,383.1,61.7,383.1,61z"/>
<path class="st0" d="M400.1,73c-1.4-0.2-1.4-0.3-1.4-1.9v-22l-0.4,0.1c-1.4,0.4-4,1-6.1,1.2l-0.3,0v0.9l0.3,0
c2.8,0.2,2.8,0.3,2.8,2.3v5.6c-0.9-0.2-1.9-0.2-2.5-0.2c-5.9,0-10.8,4-10.8,8.8c0,5.2,4.7,7.6,7.8,7.6c0.8,0,2-0.4,3.5-1.1l2-1v2.3
l0.5-0.2c1.5-0.5,3.5-0.9,6-1.3l0.3,0v-1L400.1,73z M394.9,71.9c-0.9,0.5-2.3,1.1-3.6,1.1c-2.8,0-5.5-2.1-5.5-6
c0-5,3.3-6.3,5.2-6.3c1.7,0,3.1,0.6,4,1.7V71.9z"/>
</g>
<g>
<path class="st0" d="M149,86.4l0.4,0c6.1,0.5,6.6,1,6.6,7.7v33.7c0,6.6-0.5,7.2-6.6,7.7l-0.4,0v1.8h21.3v-1.8l-0.4,0
c-6.2-0.5-6.7-1-6.7-7.7V94.1c0-6.6,0.5-7.2,6.7-7.7l0.4,0v-1.8H149V86.4z"/>
<path class="st0" d="M192,107.4l-0.6-0.3c-6.2-3.4-10.3-6.1-10.3-12.1c0-4.2,2.3-9,8.9-9c5.4,0,8.9,3.3,10.9,10.3l0.1,0.4l1.8-0.4
l-0.2-1.2c-0.6-3.9-1-6.7-1.3-9.4l0-0.3l-0.3-0.1c-0.4-0.1-0.8-0.2-1.2-0.3c-2.1-0.6-4.9-1.4-8.8-1.4c-10.9,0-16.6,7.2-16.6,14.3
c0,8.5,7.4,12.7,12.3,15.4c0.4,0.2,0.8,0.4,1.2,0.7c6.2,3.6,10.2,6.3,10.2,11.9c0,6-3.7,9.8-9.6,9.8c-7.9,0-12.2-7-13.5-13
l-0.1-0.5l-1.8,0.7l0,0.3c0.2,2.2,1.4,10.7,2,12.1l0.1,0.1l0.1,0.1c0.9,0.5,2.2,1,4.3,1.6l0.4,0.1c1.8,0.5,4.2,1.1,7.3,1.1
c11.6,0,17.8-7.7,17.8-15C205.2,114.5,198.2,110.7,192,107.4z"/>
<path class="st0" d="M245.5,125.1l0.1-0.4l-1.9-0.4l-0.1,0.4c-1,3.2-2.3,5.8-3.9,7.7c-1.6,1.8-3.9,2.4-9.5,2.4
c-3.7,0-6.3-0.2-7.7-1c-1.2-0.7-1.5-2.3-1.5-6.8V94c0-6.9,0.5-7.1,6.1-7.6l0.4,0v-1.8h-20.2v1.8l0.4,0c5.9,0.5,6.1,0.7,6.1,7.6
v33.6c0,6.8-0.5,7.3-6.6,7.8l-0.4,0v1.8h35.8l0.1-0.3c0.5-1.6,1.1-4.4,1.7-7C244.8,127.9,245.2,126,245.5,125.1z"/>
<path class="st0" d="M287.6,127.4c-5.6-15-10.9-29.7-15.8-43.6l-0.1-0.4l-1.9,0.7l-17.3,43.1c-2.8,7.1-3.9,7.8-8.4,8.2l-0.4,0v1.7
h17.1v-1.7l-0.4,0c-2.9-0.3-4.7-0.6-5.3-1.5c-0.6-0.9-0.2-2.4,0.6-4.7l0.5-1.4c1-3.2,2.2-6.7,3.8-10.9H276l1.2,3.2
c1.8,4.8,3.2,8.6,4,11.3c0.4,1.3,0.4,2.1,0.1,2.6c-0.5,0.8-2,1.1-4.5,1.5l-0.4,0v1.7h19.9v-1.7l-0.4,0
C291.3,135,290.2,134.3,287.6,127.4z M275.1,113.9H261l1.2-3.2c2-5.3,4-10.7,6.2-16L275.1,113.9z"/>
<path class="st0" d="M396.1,91.5c-4.8-4.6-12.2-6.8-22.8-6.8h-22h-0.5h-17.1v1.8l0.4,0c5.5,0.4,6.8,1.3,7.2,5.1
c0.3,2.7,0.4,6.5,0.4,12.7v20.9l-34-40.4l-0.1-0.1h-11.7v1.7l0.4,0c4.2,0.4,4.9,1.1,6.7,3.1c1.4,1.7,1.6,2.4,1.6,8.4v18.4
c0,7.3-0.3,11-0.5,13.3l0,0.3c-0.4,4.3-1.9,5.1-6.5,5.5l-0.4,0v1.8h18v-1.8l-0.4,0c-5.2-0.5-6.6-1.2-7-5.5
c-0.3-2.9-0.5-7.3-0.5-13.6V95.5l35.1,42.5l0.1,0.1h1.9v-33.8c0-7,0.2-10.3,0.3-12.9c0.3-3.9,1.7-4.7,6-5l0.4,0v0
c5.7,0.5,6.2,0.7,6.2,7.7v33.7c0,6.6-0.5,7.2-7,7.7l-0.4,0v1.8h18.8c10.1,0,18.5-2.3,24.3-6.8c6.5-4.9,9.9-12.4,9.9-21.5
C403,101.8,400.6,95.8,396.1,91.5z M364.7,92.3c0-3.9,0.4-4.5,0.9-4.7c0.8-0.3,2.4-0.6,5.4-0.6c5.5,0,10,0.9,13.3,2.8
c6.6,3.6,10.3,10.8,10.3,20.3c0,11.8-5.8,24.4-22.2,24.4c-5.1,0-7.8-1.2-7.8-7.2V92.3z"/>
</g>
</svg>

After

Width:  |  Height:  |  Size: 28 KiB

16
package.json

@ -0,0 +1,16 @@
{
"name": "vre2024",
"version": "1.0.0",
"description": "vre2024 - Drupal 8 and 9 Base Theme.",
"main": "bs.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"bs": "node bs.js"
},
"author": "",
"license": "ISC",
"devDependencies": {
"browser-sync": "^3.0.2",
"bs-rewrite-rules": "^2.1.2"
}
}

BIN
screenshot.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

38
templates/block/block--system-branding-block.html.twig

@ -0,0 +1,38 @@
{% extends "block.html.twig" %}
{#
/**
* @file
* Theme override for a branding block.
*
* Each branding element variable (logo, name, slogan) is only available if
* enabled in the block configuration.
*
* Available variables:
* - site_logo: Logo for site as defined in Appearance or theme settings.
* - site_name: Name for site as defined in Site information settings.
* - site_slogan: Slogan for site as defined in Site information settings.
*/
#}
{% block content %}
<div class="site-branding">
{% if site_logo %}
<div class="site-logo">
<a href="{{ path('<front>') }}" rel="home">
<img src="{{ site_logo }}" alt="{{ 'Home'|t }}" />
</a>
</div><!-- site-logo -->
{% endif %}
{% if site_name or site_slogan %}
<div class="site-name-slogan">
{% if site_name %}
<div class="site-name">
<a href="{{ path('<front>') }}" title="{{ 'Home'|t }}" rel="home">{{ site_name }}</a>
</div>
{% endif %}
{% if site_slogan %}
<div class="site-slogan">{{ site_slogan }}</div>
{% endif %}
</div><!-- site-name-slogan -->
{% endif %}
</div><!-- site-branding -->
{% endblock %}

48
templates/block/block--system-menu-block.html.twig

@ -0,0 +1,48 @@
{#
/**
* @file
* Theme override for a menu block.
*
* Available variables:
* - plugin_id: The ID of the block implementation.
* - label: The configured label of the block if visible.
* - configuration: A list of the block's configuration values.
* - label: The configured label for the block.
* - label_display: The display settings for the label.
* - provider: The module or other provider that provided this block plugin.
* - Block plugin specific settings will also be stored here.
* - content: The content of this block.
* - attributes: HTML attributes for the containing element.
* - id: A valid HTML ID and guaranteed unique.
* - title_attributes: HTML attributes for the title element.
* - content_attributes: HTML attributes for the content element.
* - title_prefix: Additional output populated by modules, intended to be
* displayed in front of the main title tag that appears in the template.
* - title_suffix: Additional output populated by modules, intended to be
* displayed after the main title tag that appears in the template.
*
* Headings should be used on navigation menus that consistently appear on
* multiple pages. When this menu block's label is configured to not be
* displayed, it is automatically made invisible using the 'visually-hidden' CSS
* class, which still keeps it visible for screen-readers and assistive
* technology. Headings allow screen-reader and keyboard only users to navigate
* to or skip the links.
* See http://juicystudio.com/article/screen-readers-display-none.php and
* http://www.w3.org/TR/WCAG-TECHS/H42.html for more information.
*/
#}
{% set heading_id = attributes.id ~ '-menu'|clean_id %}
<nav role="navigation" aria-labelledby="{{ heading_id }}"{{ attributes.addClass('block block-menu')|without('role', 'aria-labelledby') }}>
{# Label. If not displayed, we still provide it for screen readers. #}
{% if not configuration.label_display %}
{% set title_attributes = title_attributes.addClass('visually-hidden') %}
{% endif %}
{{ title_prefix }}
<h2{{ title_attributes.addClass('block-title').setAttribute('id', heading_id) }}>{{ configuration.label }}</h2>
{{ title_suffix }}
{# Menu. #}
{% block content %}
{{ content }}
{% endblock %}
</nav>

39
templates/block/block.html.twig

@ -0,0 +1,39 @@
{#
/**
* @file
* Theme override to display a block.
*
* Available variables:
* - plugin_id: The ID of the block implementation.
* - label: The configured label of the block if visible.
* - configuration: A list of the block's configuration values.
* - label: The configured label for the block.
* - label_display: The display settings for the label.
* - provider: The module or other provider that provided this block plugin.
* - Block plugin specific settings will also be stored here.
* - content: The content of this block.
* - attributes: array of HTML attributes populated by modules, intended to
* be added to the main container tag of this template.
* - id: A valid HTML ID and guaranteed unique.
* - title_attributes: Same as attributes, except applied to the main title
* tag that appears in the template.
* - title_prefix: Additional output populated by modules, intended to be
* displayed in front of the main title tag that appears in the template.
* - title_suffix: Additional output populated by modules, intended to be
* displayed after the main title tag that appears in the template.
*
* @see template_preprocess_block()
*/
#}
<div{{ attributes.addClass('block') }}>
{{ title_prefix }}
{% if label %}
<h2{{ title_attributes.addClass('block-title') }}>{{ label }}</h2>
{% endif %}
{{ title_suffix }}
<div class="block-content">
{% block content %}
{{ content }}
{% endblock %}
</div><!--/.block-content -->
</div><!--/.block -->

18
templates/content-edit/filter-caption.html.twig

@ -0,0 +1,18 @@
{#
/**
* @file
* Theme override for a filter caption.
*
* Returns HTML for a captioned image, audio, video or other tag.
*
* Available variables
* - string node: The complete HTML tag whose contents are being captioned.
* - string tag: The name of the HTML tag whose contents are being captioned.
* - string caption: The caption text.
* - string classes: The classes of the captioned HTML tag.
*/
#}
<figure role="group" class="caption {%- if classes %} {{ classes }}{%- endif %}">
{{ node }}
<figcaption>{{ caption }}</figcaption>
</figure>

99
templates/content/comment.html.twig

@ -0,0 +1,99 @@
{#
/**
* @file
* Theme implementation for comments.
*
* Available variables:
* - author: Comment author. Can be a link or plain text.
* - content: The content-related items for the comment display. Use
* {{ content }} to print them all, or print a subset such as
* {{ content.field_example }}. Use the following code to temporarily suppress
* the printing of a given child element:
* @code
* {{ content|without('field_example') }}
* @endcode
* - created: Formatted date and time for when the comment was created.
* Preprocess functions can reformat it by calling format_date() with the
* desired parameters on the 'comment.created' variable.
* - changed: Formatted date and time for when the comment was last changed.
* Preprocess functions can reformat it by calling format_date() with the
* desired parameters on the 'comment.changed' variable.
* - permalink: Comment permalink.
* - submitted: Submission information created from author and created
* during template_preprocess_comment().
* - user_picture: The comment author's profile picture.
* - status: Comment status. Possible values are:
* unpublished, published, or preview.
* - title: Comment title, linked to the comment.
* - attributes: HTML attributes for the containing element.
* The attributes.class may contain one or more of the following classes:
* - comment: The current template type; e.g., 'theming hook'.
* - by-anonymous: Comment by an unregistered user.
* - by-{entity-type}-author: Comment by the author of the parent entity,
* eg. by-node-author.
* - preview: When previewing a new or edited comment.
* The following applies only to viewers who are registered users:
* - unpublished: An unpublished comment visible only to administrators.
* - title_prefix: Additional output populated by modules, intended to be
* displayed in front of the main title tag that appears in the template.
* - title_suffix: Additional output populated by modules, intended to be
* displayed after the main title tag that appears in the template.
* - content_attributes: List of classes for the styling of the comment content.
* - title_attributes: Same as attributes, except applied to the main title
* tag that appears in the template.
* - threaded: A flag indicating whether the comments are threaded or not.
*
* These variables are provided to give context about the parent comment (if
* any):
* - comment_parent: Full parent comment entity (if any).
* - parent_author: Equivalent to author for the parent comment.
* - parent_created: Equivalent to created for the parent comment.
* - parent_changed: Equivalent to changed for the parent comment.
* - parent_title: Equivalent to title for the parent comment.
* - parent_permalink: Equivalent to permalink for the parent comment.
* - parent: A text string of parent comment submission information created from
* 'parent_author' and 'parent_created' during template_preprocess_comment().
* This information is presented to help screen readers follow lengthy
* discussion threads. You can hide this from sighted users using the class
* visually-hidden.
*
* These two variables are provided for context:
* - comment: Full comment object.
* - entity: Entity the comments are attached to.
*
* @see template_preprocess_comment()
*/
#}
{%
set classes = [
status != 'published' ? status,
comment.owner.anonymous ? 'comment-by-anonymous',
author_id and author_id == commented_entity.getOwnerId() ? 'comment-by-author',
]
%}
<article{{ attributes.addClass('js-comment comment', classes) }}>
{#
Hide the "new" indicator by default, let a piece of JavaScript ask the
server which comments are new for the user. Rendering the final "new"
indicator here would break the render cache.
#}
<header class="comment-header">
<div class="comment-user-picture">
{{ user_picture }}
</div><!-- /comment-user-picture -->
<div class="comment-meta">
{% if title %}
{{ title_prefix }}
<h3{{ title_attributes.addClass('comment-title') }}>{{ title }}</h3>
{{ title_suffix }}
{% endif %}
<p>{{ author }} {{ created }} <mark class="hidden" data-comment-timestamp="{{ new_indicator_timestamp }}"></mark></p>
{% if parent %}
<p class="visually-hidden">{{ parent }}</p>
{% endif %}
</div><!-- /comment-meta -->
</header>
<div{{ content_attributes.addClass('comment-body') }}>
{{ content }}
</div> <!-- /.comment-body -->
</article>

103
templates/content/node.html.twig

@ -0,0 +1,103 @@
{#
/**
* @file
* Theme implementation to display a node.
*
* Available variables:
* - node: The node entity with limited access to object properties and methods.
* Only method names starting with "get", "has", or "is" and a few common
* methods such as "id", "label", and "bundle" are available. For example:
* - node.getCreatedTime() will return the node creation timestamp.
* - node.hasField('field_example') returns TRUE if the node bundle includes
* field_example. (This does not indicate the presence of a value in this
* field.)
* - node.isPublished() will return whether the node is published or not.
* Calling other methods, such as node.delete(), will result in an exception.
* See \Drupal\node\Entity\Node for a full list of public properties and
* methods for the node object.
* - label: The title of the node.
* - content: All node items. Use {{ content }} to print them all,
* or print a subset such as {{ content.field_example }}. Use
* {{ content|without('field_example') }} to temporarily suppress the printing
* of a given child element.
* - author_picture: The node author user entity, rendered using the "compact"
* view mode.
* - metadata: Metadata for this node.
* - date: Themed creation date field.
* - author_name: Themed author name field.
* - url: Direct URL of the current node.
* - display_submitted: Whether submission information should be displayed.
* - attributes: HTML attributes for the containing element.
* The attributes.class element may contain one or more of the following
* classes:
* - node: The current template type (also known as a "theming hook").
* - node--type-[type]: The current node type. For example, if the node is an
* "Article" it would result in "node--type-article". Note that the machine
* name will often be in a short form of the human readable label.
* - node--view-mode-[view_mode]: The View Mode of the node; for example, a
* teaser would result in: "node--view-mode-teaser", and
* full: "node--view-mode-full".
* The following are controlled through the node publishing options.
* - node--promoted: Appears on nodes promoted to the front page.
* - node--sticky: Appears on nodes ordered above other non-sticky nodes in
* teaser listings.
* - node--unpublished: Appears on unpublished nodes visible only to site
* admins.
* - title_attributes: Same as attributes, except applied to the main title
* tag that appears in the template.
* - content_attributes: Same as attributes, except applied to the main
* content tag that appears in the template.
* - author_attributes: Same as attributes, except applied to the author of
* the node tag that appears in the template.
* - title_prefix: Additional output populated by modules, intended to be
* displayed in front of the main title tag that appears in the template.
* - title_suffix: Additional output populated by modules, intended to be
* displayed after the main title tag that appears in the template.
* - view_mode: View mode; for example, "teaser" or "full".
* - teaser: Flag for the teaser state. Will be true if view_mode is 'teaser'.
* - page: Flag for the full page state. Will be true if view_mode is 'full'.
* - readmore: Flag for more state. Will be true if the teaser content of the
* node cannot hold the main body content.
* - logged_in: Flag for authenticated user status. Will be true when the
* current user is a logged-in member.
* - is_admin: Flag for admin user status. Will be true when the current user
* is an administrator.
*
* @see template_preprocess_node()
*/
#}
{%
set node_classes = [
'node',
'node-type-' ~ node.bundle|clean_class,
node.isPromoted() ? 'node-promoted',
node.isSticky() ? 'node-sticky',
not node.isPublished() ? 'node-unpublished',
view_mode ? 'node-view-mode-' ~ view_mode|clean_class,
]
%}
<article{{ attributes.addClass(node_classes) }}>
{{ title_prefix }}
{% if not page %}
<h2{{ title_attributes.addClass('node-title') }}>
<a href="{{ url }}" rel="bookmark">{{ label }}</a>
</h2>
{% endif %}
{{ title_suffix }}
{% if display_submitted %}
<header class="node-header clear">
{% if node_author_pic %}
<div class="author-picture">{{ author_picture }}</div>
{% endif %}
<div{{ author_attributes.addClass('node-submitted-details') }}>
{% set createdDate = node.getCreatedTime|date('j F Y') %}
{% trans %}<span>{{ author_name }}</span> <span>{{ createdDate }}</span>{% endtrans %}
{{ metadata }}
</div>
</header>
{% endif %}
<div{{ content_attributes.addClass('node-content clear') }}>
{{ content }}
</div>
</article>

21
templates/content/page-title.html.twig

@ -0,0 +1,21 @@
{#
/**
* @file
* Theme override for page titles.
*
* Available variables:
* - title_attributes: HTML attributes for the page title element.
* - title_prefix: Additional output populated by modules, intended to be
* displayed in front of the main title tag that appears in the template.
* - title: The page title, for use in the actual content.
* - title_suffix: Additional output populated by modules, intended to be
* displayed after the main title tag that appears in the template.
*/
#}
<div class="page-title-wrap">
{{ title_prefix }}
{% if title %}
<h1{{ title_attributes.addClass('page-title') }}>{{ title }}</h1>
{% endif %}
{{ title_suffix }}
</div> <!--/.page-title-wrap -->

29
templates/dataset/item-list--search-results.html.twig

@ -0,0 +1,29 @@
{% extends "item-list.html.twig" %}
{#
/**
* @file
* Theme override for an item list of search results.
*
* Available variables:
* - items: A list of items. Each item contains:
* - attributes: HTML attributes to be applied to each list item.
* - value: The content of the list element.
* - title: The title of the list.
* - list_type: The tag for list element ("ul" or "ol").
* - attributes: HTML attributes to be applied to the list.
* - empty: A message to display when there are no items. Allowed value is a
* string or render array.
* - context: An list of contextual data associated with the list. For search
* results, the following data is set:
* - plugin: The search plugin ID, for example "node_search".
*
* @see template_preprocess_item_list()
*/
#}
{%
set classes = [
'search-results',
context.plugin ~ '-results',
]
%}
{% set attributes = attributes.addClass(classes) %}

44
templates/field/field--comment.html.twig

@ -0,0 +1,44 @@
{#
/**
* @file
* Theme override for comment fields.
*
* Available variables:
* - attributes: HTML attributes for the containing element.
* - label_hidden: Whether to show the field label or not.
* - title_attributes: HTML attributes for the title.
* - label: The label for the field.
* - title_prefix: Additional output populated by modules, intended to be
* displayed in front of the main title tag that appears in the template.
* - title_suffix: Additional title output populated by modules, intended to
* be displayed after the main title tag that appears in the template.
* - comments: List of comments rendered through comment.html.twig.
* - content_attributes: HTML attributes for the form title.
* - comment_form: The 'Add new comment' form.
* - comment_display_mode: Is the comments are threaded.
* - comment_type: The comment type bundle ID for the comment field.
* - entity_type: The entity type to which the field belongs.
* - field_name: The name of the field.
* - field_type: The type of the field.
* - label_display: The display settings for the label.
*
* @see template_preprocess_field()
* @see comment_preprocess_field()
*/
#}
<section{{ attributes }} id="comments">
{% if comments and not label_hidden %}
{{ title_prefix }}
<h2{{ title_attributes.addClass('comments-title') }}>{{ label }}</h2>
{{ title_suffix }}
{% endif %}
{{ comments }}
{% if comment_form %}
<div class="comment-form-wrap">
<h2{{ content_attributes.addClass('add-comment-title') }}>{{ 'Add new comment'|t }}</h2>
{{ comment_form }}
</div> <!--/.comment-form -->
{% endif %}
</section>

32
templates/field/field--entity-reference.html.twig

@ -0,0 +1,32 @@
{#
/**
* @file
* Theme override for term fields.
*
* Available variables:
* - attributes: HTML attributes for the containing element.
* - label_hidden: Whether to show the field label or not.
* - title_attributes: HTML attributes for the label.
* - label: The label for the field.
* - content_attributes: HTML attributes for the content.
* - items: List of all the field items. Each item contains:
* - attributes: List of HTML attributes for each item.
* - content: The field item's content.
* - entity_type: The entity type to which the field belongs.
* - field_name: The name of the field.
* - field_type: The type of the field.
* - label_display: The display settings for the label.
*
* @see template_preprocess_field()
*/
#}
<div class="node-taxonomy-container">
{% if not label_hidden %}
<h3{{ title_attributes.addClass('term-title') }}>{{ label }}</h3>
{% endif %}
<ul class="taxonomy-terms">
{% for item in items %}
<li{{ item.attributes.addClass('taxonomy-term') }}>{{ item.content }}</li>
{% endfor %}
</ul>
</div> <!--/.node-taxonomy-container -->

80
templates/field/field.html.twig

@ -0,0 +1,80 @@
{#
/**
* @file
* Theme override for a field.
*
* To override output, copy the "field.html.twig" from the templates directory
* to your theme's directory and customize it, just like customizing other
* Drupal templates such as page.html.twig or node.html.twig.
*
* Instead of overriding the theming for all fields, you can also just override
* theming for a subset of fields using
* @link themeable Theme hook suggestions. @endlink For example,
* here are some theme hook suggestions that can be used for a field_foo field
* on an article node type:
* - field--node--field-foo--article.html.twig
* - field--node--field-foo.html.twig
* - field--node--article.html.twig
* - field--field-foo.html.twig
* - field--text-with-summary.html.twig
* - field.html.twig
*
* Available variables:
* - attributes: HTML attributes for the containing element.
* - label_hidden: Whether to show the field label or not.
* - title_attributes: HTML attributes for the title.
* - label: The label for the field.
* - multiple: TRUE if a field can contain multiple items.
* - items: List of all the field items. Each item contains:
* - attributes: List of HTML attributes for each item.
* - content: The field item's content.
* - entity_type: The entity type to which the field belongs.
* - field_name: The name of the field.
* - field_type: The type of the field.
* - label_display: The display settings for the label.
*
*
* @see template_preprocess_field()
*/
#}
{%
set classes = [
'field',
'field--name-' ~ field_name|clean_class,
'field--type-' ~ field_type|clean_class,
'field--label-' ~ label_display,
]
%}
{%
set title_classes = [
'field__label',
label_display == 'visually_hidden' ? 'visually-hidden',
]
%}
{% if label_hidden %}
{% if multiple %}
<div{{ attributes }}>
{% for item in items %}
<div{{ item.attributes.addClass('field-item') }}>{{ item.content }}</div>
{% endfor %}
</div>
{% else %}
{% for item in items %}
<div{{ attributes.addClass(classes, 'field-item') }}>{{ item.content }}</div>
{% endfor %}
{% endif %}
{% else %}
<div{{ attributes.addClass(classes) }}>
<div{{ title_attributes.addClass(title_classes) }}>{{ label }}</div>
{% if multiple %}
<div class="field__items">
{% endif %}
{% for item in items %}
<div{{ item.attributes.addClass('field-item') }}>{{ item.content }}</div>
{% endfor %}
{% if multiple %}
</div>
{% endif %}
</div>
{% endif %}

13
templates/field/image.html.twig

@ -0,0 +1,13 @@
{#
/**
* @file
* Theme override of an image.
*
* Available variables:
* - attributes: HTML attributes for the img tag.
* - style_name: (optional) The name of the image style applied.
*
* @see template_preprocess_image()
*/
#}
<img{{ attributes.addClass('image-field') }} />

43
templates/form/details.html.twig

@ -0,0 +1,43 @@
{#
/**
* @file
* Theme override for a details element.
*
* Available variables
* - attributes: A list of HTML attributes for the details element.
* - errors: (optional) Any errors for this details element, may not be set.
* - title: (optional) The title of the element, may not be set.
* - description: (optional) The description of the element, may not be set.
* - children: (optional) The children of the element, may not be set.
* - value: (optional) The value of the element, may not be set.
*
* @see template_preprocess_details()
*/
#}
<details{{ attributes }}>
{%- if title -%}
{%
set summary_classes = [
required ? 'js-form-required',
required ? 'form-required',
]
%}
<summary{{ summary_attributes.addClass(summary_classes) }}>{{ title }}</summary>
{%- endif -%}
<div class="form-details-wrapper">
{% if errors %}
<div class="form-item--error-message">
<strong>{{ errors }}</strong>
</div>
{% endif %}
{%- if description -%}
<div class="details-description">{{ description }}</div>
{%- endif -%}
{%- if children -%}
{{ children }}
{%- endif -%}
{%- if value -%}
{{ value }}
{%- endif -%}
</div>
</details>

59
templates/layout/html.html.twig

@ -0,0 +1,59 @@
{#
/**
* @file
* Theme override for the basic structure of a single Drupal page.
*
* Variables:
* - logged_in: A flag indicating if user is logged in.
* - root_path: The root path of the current page (e.g., node, admin, user).
* - node_type: The content type for the current node, if the page is a node.
* - head_title: List of text elements that make up the head_title variable.
* May contain one or more of the following:
* - title: The title of the page.
* - name: The name of the site.
* - slogan: The slogan of the site.
* - page_top: Initial rendered markup. This should be printed before 'page'.
* - page: The rendered page markup.
* - page_bottom: Closing rendered markup. This variable should be printed after
* 'page'.
* - db_offline: A flag indicating if the database is offline.
* - placeholder_token: The token for generating head, css, js and js-bottom
* placeholders.
*
* @see template_preprocess_html()
*/
#}
{# Add class to body #}
{%
set body_classes = [
not root_path ? 'homepage' : 'site-page',
node_type ? 'page-type-' ~ node_type|clean_class,
logged_in ? 'user-logged-in' : 'user-guest',
not page.sidebar_first and not page.sidebar_second ? 'no-sidebar',
page.sidebar_first and not page.sidebar_second ? 'one-sidebar sidebar-left',
page.sidebar_second and not page.sidebar_first ? 'one-sidebar sidebar-right',
page.sidebar_first and page.sidebar_second ? 'two-sidebar'
]
%}
<!DOCTYPE html>
<html{{ html_attributes }}>
<head>
<head-placeholder token="{{ placeholder_token }}">
<title>{{ head_title|safe_join(' | ') }}</title>
<css-placeholder token="{{ placeholder_token }}">
<js-placeholder token="{{ placeholder_token }}">
</head>
<body{{ attributes.addClass(body_classes) }}>
{#
Keyboard navigation/accessibility link to main content section in
page.html.twig.
#}
<a href="#main-content" class="visually-hidden focusable">
{{ 'Skip to main content'|t }}
</a>
{{ page_top }}
{{ page }}
{{ page_bottom }}
<js-bottom-placeholder token="{{ placeholder_token }}">
</body>
</html>

46
templates/layout/maintenance-page.html.twig

@ -0,0 +1,46 @@
{#
/**
* @file
* Theme implementation to display a single Drupal page while offline.
*
* All available variables are mirrored in page.html.twig.
*
* @see template_preprocess_maintenance_page()
*/
#}
<div id="maintenance-page">
<header class="maintenance-header" role="banner">
<div class="container">
<div class="site-branding">
{% if site_name or site_slogan %}
<div class="site-name-slogan">
{% if site_name %}
<div class="site-name">
<a href="{{ front_page }}" title="{{ 'Home'|t }}" rel="home"><h4>{{ site_name }}</h4></a>
</div>
{% endif %}
{% if site_slogan %}
<div class="site-slogan">{{ site_slogan }}</div>
{% endif %}
</div> <!--/.site-name-slogan -->
{% endif %}
</div> <!-- /.site-branding -->
</div> <!--/.container -->
</header>
<main id="maintenance">
<div class="container maintenance">
<a id="main-content" tabindex="-1"></a>
{% if title %}
<h1 class="maintenance-title">{{ title }}</h1>
{% endif %}
<div class="maintenance-icon">
{{ source('@vre2024/../images/maintenance.svg') }}
</div>
<div class="maintenance-message">
{{ page.content }}
</div>
</div> <!-- /.container -->
</main> <!-- /#maintenance -->
</div><!-- /#maintenance-page -->
<!-- Zuvi has custom styling for the maintenance page. -->
{{ attach_library('vre2024/maintenance') }}

35
templates/layout/page.html.twig

@ -0,0 +1,35 @@
{% if page.header_top_left or page.header_top_right %}
{% include '@vre2024/template-parts/header/header-top.html.twig' %}
{% endif %}
{% include '@vre2024/template-parts/header/header.html.twig' %}
{% if not is_front and page.page_header %}
{% include '@vre2024/template-parts/header/header-page.html.twig' %}
{% endif %}
{% if page.highlighted %}
{% include '@vre2024/template-parts/highlighted.html.twig' %}
{% endif %}
<div class="main-wrapper">
<div class="container">
<a id="main-content" tabindex="-1"></a>
<div class="main-container">
<main id="main" class="main-content">
{% if page.content_top %}
{% include '@vre2024/template-parts/content-parts/content_top.html.twig' %}
{% endif %}
<div class="node-content">
{{ page.content }}
</div>
{% if page.content_bottom %}
{% include '@vre2024/template-parts/content-parts/content_bottom.html.twig' %}
{% endif %}
</main>
{% if page.sidebar_first %}
{% include '@vre2024/template-parts/sidebar/sidebar_left.html.twig' %}
{% endif %}
{% if page.sidebar_second %}
{% include '@vre2024/template-parts/sidebar/sidebar_right.html.twig' %}
{% endif %}
</div><!--/main-container -->
</div><!--/container -->
</div><!--/main-wrapper -->
{% include '@vre2024/template-parts/footer/footer.html.twig' %}

25
templates/layout/region.html.twig

@ -0,0 +1,25 @@
{#
/**
* @file
* Theme override to display a region.
*
* Available variables:
* - content: The content for this region, typically blocks.
* - attributes: HTML attributes for the region div.
* - region: The name of the region variable as defined in the theme's
* .info.yml file.
*
* @see template_preprocess_region()
*/
#}
{%
set classes = [
'block-region',
'region-' ~ region|clean_class,
]
%}
{% if content %}
<div{{ attributes.addClass(classes) }}>
{{ content }}
</div>
{% endif %}

53
templates/misc/status-messages.html.twig

@ -0,0 +1,53 @@
{#
/**
* @file
* Theme override for status messages.
*
* Displays status, error, and warning messages, grouped by type.
*
* An invisible heading identifies the messages for assistive technology.
* Sighted users see a colored box. See http://www.w3.org/TR/WCAG-TECHS/H69.html
* for info.
*
* Add an ARIA label to the contentinfo area so that assistive technology
* user agents will better describe this landmark.
*
* Available variables:
* - message_list: List of messages to be displayed, grouped by type.
* - status_headings: List of all status types.
* - display: (optional) May have a value of 'status' or 'error' when only
* displaying messages of that specific type.
* - attributes: HTML attributes for the element, including:
* - class: HTML classes.
*/
#}
<div data-drupal-messages class="messages-list">
{% for type, messages in message_list %}
{%
set classes = [
'message',
'message-' ~ type,
]
%}
<div role="contentinfo" aria-label="{{ status_headings[type] }}"{{ attributes.addClass(classes)|without('role', 'aria-label') }}>
{% if type == 'error' %}
<div role="alert" class="status-error">
{% endif %}
{% if status_headings[type] %}
<h2 class="visually-hidden">{{ status_headings[type] }}</h2>
{% endif %}
{% if messages|length > 1 %}
<ul class="status-message-list">
{% for message in messages %}
<li>{{ message }}</li>
{% endfor %}
</ul>
{% else %}
{{ messages|first }}
{% endif %}
{% if type == 'error' %}
</div>
{% endif %}
</div>
{% endfor %}
</div>{# messages-list #}

56
templates/navigation/book-navigation.html.twig

@ -0,0 +1,56 @@
{#
/**
* @file
* Theme override to navigate books.
*
* Presented under nodes that are a part of book outlines.
*
* Available variables:
* - tree: The immediate children of the current node rendered as an unordered
* list.
* - current_depth: Depth of the current node within the book outline. Provided
* for context.
* - prev_url: URL to the previous node.
* - prev_title: Title of the previous node.
* - parent_url: URL to the parent node.
* - parent_title: Title of the parent node. Not printed by default. Provided
* as an option.
* - next_url: URL to the next node.
* - next_title: Title of the next node.
* - has_links: Flags TRUE whenever the previous, parent or next data has a
* value.
* - book_id: The book ID of the current outline being viewed. Same as the node
* ID containing the entire outline. Provided for context.
* - book_url: The book/node URL of the current outline being viewed. Provided
* as an option. Not used by default.
* - book_title: The book/node title of the current outline being viewed.
*
* @see template_preprocess_book_navigation()
*/
#}
{{ attach_library('vre2024/book') }}
{% if tree or has_links %}
<nav class="book-navigation" role="navigation" aria-labelledby="book-label-{{ book_id }}">
{{ tree }}
{% if has_links %}
<h2 class="visually-hidden">{{ 'Book traversal links for'|t }} {{ book_title }}</h2>
<ul class="book-pager">
{% if prev_url %}
<li class="book-pager-item book-pager-item-previous">
<a href="{{ prev_url }}" rel="prev" title="{{ 'Go to previous page'|t }}"><span class="white-color">&#x2190;</span> {{ prev_title }}</a>
</li>
{% endif %}
{% if parent_url %}
<li class="book-pager-item book-pager-item-center">
<a href="{{ parent_url }}" title="{{ 'Go to parent page'|t }}"><span class="white-color">&#x290A;</span> {{ 'Up'|t }}</a>
</li>
{% endif %}
{% if next_url %}
<li class="book-pager-item book-pager-item-next">
<a href="{{ next_url }}" rel="next" title="{{ 'Go to next page'|t }}">{{ next_title }} <span class="white-color">&#x2192;</span></a>
</li>
{% endif %}
</ul>
{% endif %}
</nav>
{% endif %}

47
templates/navigation/book-tree.html.twig

@ -0,0 +1,47 @@
{#
/**
* @file
* Theme override to display a book tree.
*
* Returns HTML for a wrapper for a book sub-tree.
*
* Available variables:
* - items: A nested list of book items. Each book item contains:
* - attributes: HTML attributes for the book item.
* - below: The book item child items.
* - title: The book link title.
* - url: The book link URL, instance of \Drupal\Core\Url.
* - is_expanded: TRUE if the link has visible children within the current
* book tree.
* - is_collapsed: TRUE if the link has children within the current book tree
* that are not currently visible.
* - in_active_trail: TRUE if the link is in the active trail.
*/
#}
{% import _self as book_tree %}
{#
We call a macro which calls itself to render the full tree.
@see http://twig.sensiolabs.org/doc/tags/macro.html
#}
{{ book_tree.book_links(items, attributes, 0) }}
{% macro book_links(items, attributes, menu_level) %}
{% import _self as book_tree %}
{% if items %}
{% if menu_level == 0 %}
<ul{{ attributes.addClass('menu') }}>
{% else %}
<ul class="menu">
{% endif %}
{% for item in items %}
<li{{ item.attributes.addClass('menu-book-item') }}>
{{ link(item.title, item.url) }}
{% if item.below %}
{{ book_tree.book_links(item.below, attributes, menu_level + 1) }}
{% endif %}
</li>
{% endfor %}
</ul>
{% endif %}
{% endmacro %}

24
templates/navigation/breadcrumb.html.twig

@ -0,0 +1,24 @@
{#
/**
* @file
* Theme override for a breadcrumb trail.
*
* Available variables:
* - breadcrumb: Breadcrumb trail items.
*/
#}
{% if breadcrumb %}
<nav class="breadcrumb" role="navigation" aria-labelledby="system-breadcrumb">
<ol class="breadcrumb-items">
{% for item in breadcrumb %}
<li class="breadcrumb-item">
{% if item.url %}
<a href="{{ item.url }}">{{ item.text }}</a><span><i class="icon-angle-right"></i></span>
{% else %}
{{ item.text }}
{% endif %}
</li>
{% endfor %}
</ol>
</nav>
{% endif %}

57
templates/navigation/links--node.html.twig

@ -0,0 +1,57 @@
{#
/**
* @file
* Theme override for a set of links.
*
* Available variables:
* - attributes: Attributes for the UL containing the list of links.
* - links: Links to be output.
* Each link will have the following elements:
* - title: The link text.
* - href: The link URL. If omitted, the 'title' is shown as a plain text
* item in the links list. If 'href' is supplied, the entire link is passed
* to l() as its $options parameter.
* - attributes: (optional) HTML attributes for the anchor, or for the <span>
* tag if no 'href' is supplied.
* - heading: (optional) A heading to precede the links.
* - text: The heading text.
* - level: The heading level (e.g. 'h2', 'h3').
* - attributes: (optional) A keyed list of attributes for the heading.
* If the heading is a string, it will be used as the text of the heading and
* the level will default to 'h2'.
*
* Headings should be used on navigation menus and any list of links that
* consistently appears on multiple pages. To make the heading invisible use
* the 'visually-hidden' CSS class. Do not use 'display:none', which
* removes it from screen readers and assistive technology. Headings allow
* screen reader and keyboard only users to navigate to or skip the links.
* See http://juicystudio.com/article/screen-readers-display-none.php and
* http://www.w3.org/TR/WCAG-TECHS/H42.html for more information.
*
* @see template_preprocess_links()
*/
#}
{% if links -%}
<div class="node-links-container">
{%- if heading -%}
{%- if heading.level -%}
<{{ heading.level }}{{ heading.attributes }}>{{ heading.text }}</{{ heading.level }}>
{%- else -%}
<h2{{ heading.attributes }}>{{ heading.text }}</h2>
{%- endif -%}
{%- endif -%}
<ul{{ attributes }}>
{%- for item in links -%}
<li{{ item.attributes }}>
{%- if item.link -%}
{{ item.link }}
{%- elseif item.text_attributes -%}
<span{{ item.text_attributes }}>{{ item.text }}</span>
{%- else -%}
{{ item.text }}
{%- endif -%}
</li>
{%- endfor -%}
</ul>
</div> <!--/.node-links-container -->
{%- endif %}

17
templates/navigation/menu-local-task.html.twig

@ -0,0 +1,17 @@
{#
/**
* @file
* Theme override for a local task link.
*
* Available variables:
* - attributes: HTML attributes for the wrapper element.
* - is_active: Whether the task item is an active tab.
* - link: A rendered link element.
*
* Note: This template renders the content for each task item in
* menu-local-tasks.html.twig.
*
* @see template_preprocess_menu_local_task()
*/
#}
<li{{ attributes.addClass(is_active ? 'active-page-tab') }}>{{ link }}</li>

21
templates/navigation/menu-local-tasks.html.twig

@ -0,0 +1,21 @@
{#
/**
* @file
* Theme override to display primary and secondary local tasks.
*
* Available variables:
* - primary: HTML list items representing primary tasks.
* - secondary: HTML list items representing primary tasks.
*
* Each item in these variables (primary and secondary) can be individually
* themed in menu-local-task.html.twig.
*/
#}
{% if primary %}
<h2 class="visually-hidden">{{ 'Primary tabs'|t }}</h2>
<ul class="page-tabs primary-tab">{{ primary }}</ul>
{% endif %}
{% if secondary %}
<h2 class="visually-hidden">{{ 'Secondary tabs'|t }}</h2>
<ul class="page-tabs secondary-tab">{{ secondary }}</ul>
{% endif %}

57
templates/navigation/menu.html.twig

@ -0,0 +1,57 @@
{#
/**
* @file
* Theme override to display main menu.
*
* Available variables:
* - menu_name: The machine name of the menu.
* - items: A nested list of menu items. Each menu item contains:
* - attributes: HTML attributes for the menu item.
* - below: The menu item child items.
* - title: The menu link title.
* - url: The menu link url, instance of \Drupal\Core\Url
* - localized_options: Menu link localized options.
* - is_expanded: TRUE if the link has visible children within the current
* menu tree.
* - is_collapsed: TRUE if the link has children within the current menu tree
* that are not currently visible.
* - in_active_trail: TRUE if the link is in the active trail.
*/
#}
{% import _self as menus %}
{#
We call a macro which calls itself to render the full tree.
@see http://twig.sensiolabs.org/doc/tags/macro.html
#}
{{ menus.menu_links(items, attributes, 0) }}
{% macro menu_links(items, attributes, menu_level) %}
{% import _self as menus %}
{% if items %}
{% if menu_level == 0 %}
<ul{{ attributes.addClass('menu') }}>
{% else %}
<ul class="submenu">
{% endif %}
{% for item in items %}
{%
set item_classes = [
'menu-item',
'menu-item-level-' ~ (menu_level + 1),
item.is_expanded ? 'expanded',
item.is_collapsed ? 'collapsed',
item.below ? 'menu-item-has-children',
item.in_active_trail ? 'active',
]
%}
<li{{ item.attributes.addClass(item_classes) }}>
{{ link(item.title, item.url) }}
{% if item.below %}
{{ menus.menu_links(item.below, attributes, menu_level + 1) }}
{% endif %}
</li>
{% endfor %}
</ul>
{% endif %}
{% endmacro %}

1
templates/template-parts/components/scrolltotop.html.twig

@ -0,0 +1 @@
<div class="scrolltop"><i class="icon-arrow-up"></i></div>

3
templates/template-parts/content-parts/content_bottom.html.twig

@ -0,0 +1,3 @@
<div class="content-bottom">
{{ page.content_bottom }}
</div><!--/.content bottom -->

3
templates/template-parts/content-parts/content_home_bottom.html.twig

@ -0,0 +1,3 @@
<div class="homepage-content homepage-content-bottom">
{{ page.content_home_bottom }}
</div><!--/.homepage-content -->

3
templates/template-parts/content-parts/content_home_top.html.twig

@ -0,0 +1,3 @@
<div class="homepage-content homepage-content-top">
{{ page.content_home_top }}
</div><!--/.homepage-content -->

3
templates/template-parts/content-parts/content_top.html.twig

@ -0,0 +1,3 @@
<div class="content-top">
{{ page.content_top }}
</div><!--/.content top -->

26
templates/template-parts/footer/footer-blocks.html.twig

@ -0,0 +1,26 @@
<footer class="footer-blocks footer">
<div class="container">
<div class="footer-blocks-container">
{% if page.footer_one %}
<div class="footer-block footer-one">
{{ page.footer_one }}
</div>
{% endif %}
{% if page.footer_two %}
<div class="footer-block footer-two">
{{ page.footer_two }}
</div>
{% endif %}
{% if page.footer_three %}
<div class="footer-block footer-three">
{{ page.footer_three }}
</div>
{% endif %}
{% if page.footer_four %}
<div class="footer-block footer-four">
{{ page.footer_four }}
</div>
{% endif %}
</div><!-- /footer-top-container -->
</div><!-- /container -->
</footer><!-- /footer-top -->

16
templates/template-parts/footer/footer-bottom-blocks.html.twig

@ -0,0 +1,16 @@
<footer class="footer-bottom-blocks footer">
<div class="container">
<div class="footer-bottom-blocks-container">
{% if page.footer_bottom_left %}
<div class="footer-bottom-block footer-bottom-block-left">
{{ page.footer_bottom_left }}
</div>
{% endif %}
{% if page.footer_bottom_right %}
<div class="footer-bottom-block footer-bottom-block-right">
{{ page.footer_bottom_right }}
</div>
{% endif %}
</div><!-- /footer-bottom-blocks-container -->
</div><!-- /container -->
</footer><!-- /footer-bottom-blocks -->

5
templates/template-parts/footer/footer-bottom-last.html.twig

@ -0,0 +1,5 @@
{% if page.footer_bottom_last %}
<div class="footer-bottom-last">
{{ page.footer_bottom_last }}
</div><!-- /footer-bottom-last -->
{% endif %}

14
templates/template-parts/footer/footer-bottom.html.twig

@ -0,0 +1,14 @@
<footer class="footer-bottom footer">
<div class="container">
<div class="footer-bottom-container">
<div class="website-copyright">
&copy; {{ "now"|date("Y") }} {{ site_name }}, All rights reserved.
</div>
{% if page.footer_bottom_last %}
<div class="footer-bottom-last">
{{ page.footer_bottom_last }}
</div><!-- /footer-bottom-last -->
{% endif %}
</div><!-- /footer-bottom-container -->
</div><!-- /container -->
</footer><!-- /footer-bottom -->

3
templates/template-parts/footer/footer-copyright.html.twig

@ -0,0 +1,3 @@
<div class="website-copyright">
&copy; {{ "now"|date("Y") }} {{ site_name }}, All rights reserved.
</div>

7
templates/template-parts/footer/footer-top.html.twig

@ -0,0 +1,7 @@
<footer class="footer-top footer">
<div class="container">
<div class="footer-top-container">
{{ page.footer_top }}
</div><!-- /footer-top-container -->
</div><!-- /container -->
</footer><!-- /footer-top -->

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save