jekyll-theme-isotc211 0.5.9 → 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +106 -140
- data/_config.yml +25 -81
- data/_frontend/css/footer.css +117 -0
- data/_frontend/css/header.css +160 -0
- data/_frontend/css/home.css +553 -0
- data/_frontend/css/page.css +191 -0
- data/_frontend/css/typography.css +35 -0
- data/_frontend/entrypoints/application.css +68 -0
- data/_frontend/entrypoints/application.js +5 -0
- data/_frontend/js/theme.js +34 -0
- data/_includes/footer.html +80 -0
- data/_includes/google-analytics.html +7 -0
- data/_includes/head.html +24 -39
- data/_includes/header.html +42 -0
- data/_includes/icons/moon.html +1 -0
- data/_includes/icons/sun.html +1 -0
- data/_layouts/base.html +5 -0
- data/_layouts/default.html +11 -163
- data/_layouts/home.html +22 -7
- data/_layouts/page.html +1 -2
- data/_layouts/post.html +15 -10
- data/_layouts/posts.html +24 -7
- data/assets/iso-red.svg +1 -0
- data/config/vite-theme-resolve.js +23 -0
- data/config/vite.json +15 -0
- metadata +25 -147
- data/_data/placeholder.yml +0 -0
- data/_includes/_title.html +0 -2
- data/_includes/copyright.html +0 -24
- data/_includes/newsroll-entry.html +0 -17
- data/_includes/resource-tree-item.html +0 -49
- data/_includes/script.html +0 -0
- data/_layouts/base-page.html +0 -37
- data/_layouts/resource-index.html +0 -14
- data/_layouts/resource-page.html +0 -25
- data/_pages/404.adoc +0 -19
- data/_sass/adoc-markup.scss +0 -197
- data/_sass/expandable-nav.scss +0 -187
- data/_sass/home.scss +0 -87
- data/_sass/jekyll-theme-isotc211.scss +0 -146
- data/_sass/legacy-crossbrowser.scss +0 -67
- data/_sass/main.scss +0 -413
- data/_sass/normalize.scss +0 -424
- data/_sass/offsets.scss +0 -59
- data/_sass/post.scss +0 -16
- data/_sass/posts.scss +0 -18
- data/assets/js/ga.js +0 -15
- data/assets/js/nav.js +0 -125
- data/assets/js/resource-browser.js +0 -79
- data/assets/resource-viewer-placeholder.html +0 -11
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 482d1d5747fe0dadc1c23bba86430df036e18fe766f4c7342a547197a072b771
|
|
4
|
+
data.tar.gz: 59e2cd6ae9a73341a09fca839debb43ed37072ba8f8f64b4dcc083e5204b483d
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 7b651ba082ef22a067a3aef87f62a3b4cf87a901174629460f0601bdf9f0335f710709a006d1e2c40ce789eb969776d5bf9760f385d1f7d354df8bad91908f17
|
|
7
|
+
data.tar.gz: 0a7663f06a5cda88124909a96efdd466d8c231fbfe5a1ad832f13407f4ec135c336482d14d6fc6832af85272cd4f9ca17934247c5dd74d28d7f09d43ce445d2a
|
data/README.md
CHANGED
|
@@ -1,73 +1,83 @@
|
|
|
1
|
-
#
|
|
1
|
+
# jekyll-theme-isotc211
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
and resource sites such as https://geolexica.org/, https://def.isotc211.org/.
|
|
3
|
+
Modern Jekyll theme for ISO/TC 211 resource sites — Vite 7, Tailwind CSS v4,
|
|
4
|
+
dark mode, Inter font, responsive design.
|
|
6
5
|
|
|
6
|
+
Used by [www.isotc211.org](https://www.isotc211.org),
|
|
7
|
+
[registry.isotc211.org](https://registry.isotc211.org), and
|
|
8
|
+
[standards.isotc211.org](https://standards.isotc211.org).
|
|
7
9
|
|
|
8
|
-
## Configuring site
|
|
9
10
|
|
|
10
|
-
|
|
11
|
-
(note: plugin gem version should match theme version):
|
|
11
|
+
## Installation
|
|
12
12
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
end
|
|
13
|
+
Add to your Gemfile:
|
|
14
|
+
|
|
15
|
+
```ruby
|
|
16
|
+
gem "jekyll-theme-isotc211", "~> 1.0"
|
|
18
17
|
```
|
|
19
18
|
|
|
20
|
-
|
|
19
|
+
And to `_config.yml`:
|
|
21
20
|
|
|
21
|
+
```yaml
|
|
22
|
+
theme: jekyll-theme-isotc211
|
|
22
23
|
```
|
|
23
|
-
group :jekyll_plugins do
|
|
24
|
-
gem "jekyll-theme-isotc211-helpers"
|
|
25
24
|
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
25
|
+
Your site also needs `jekyll-vite`:
|
|
26
|
+
|
|
27
|
+
```ruby
|
|
28
|
+
group :jekyll_plugins do
|
|
29
|
+
gem "jekyll-vite"
|
|
30
30
|
end
|
|
31
31
|
```
|
|
32
32
|
|
|
33
|
-
|
|
34
|
-
|
|
33
|
+
And a `package.json` with Vite + Tailwind:
|
|
34
|
+
|
|
35
|
+
```json
|
|
36
|
+
{
|
|
37
|
+
"private": true,
|
|
38
|
+
"type": "module",
|
|
39
|
+
"devDependencies": {
|
|
40
|
+
"@tailwindcss/postcss": "^4",
|
|
41
|
+
"@tailwindcss/typography": "^0.5",
|
|
42
|
+
"postcss": "^8",
|
|
43
|
+
"tailwindcss": "^4",
|
|
44
|
+
"terser": "^5",
|
|
45
|
+
"vite": "^7",
|
|
46
|
+
"vite-plugin-ruby": "^5"
|
|
47
|
+
}
|
|
48
|
+
}
|
|
35
49
|
```
|
|
36
|
-
title: <site title to be used in meta and in body>
|
|
37
|
-
title_html: <if specified, is used in body instead of title>
|
|
38
50
|
|
|
39
|
-
font_awesome_kit_url: <url to your FA kit, free kits are OK with stock theme version>
|
|
40
51
|
|
|
41
|
-
|
|
42
|
-
id: UA-XXXXXX-X
|
|
52
|
+
## Configuration
|
|
43
53
|
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
- url: /about
|
|
50
|
-
title: About
|
|
51
|
-
- url: /strategic-policy
|
|
52
|
-
title: Strategic Policy Statement
|
|
53
|
-
- url: /faq
|
|
54
|
-
title: FAQ
|
|
54
|
+
```yaml
|
|
55
|
+
title: "Resource site for ISO/TC 211 Geographic information/Geomatics"
|
|
56
|
+
title_html: "ISO/TC 211"
|
|
57
|
+
brand_sub: "Harmonized Resources Maintenance Agency"
|
|
58
|
+
description: "Resource site description"
|
|
55
59
|
|
|
56
|
-
#
|
|
57
|
-
resource_listings:
|
|
58
|
-
schemas:
|
|
59
|
-
# Source directory containing resources, relative to site source root.
|
|
60
|
-
# Each subdirectory within will be treated as a resource
|
|
61
|
-
resource_root: 'schemas'
|
|
60
|
+
header_logo: "/assets/iso-red.svg" # Optional, defaults to iso-red.svg
|
|
62
61
|
|
|
63
|
-
|
|
64
|
-
|
|
62
|
+
google_analytics:
|
|
63
|
+
id: UA-XXXXX-Y
|
|
65
64
|
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
65
|
+
committee:
|
|
66
|
+
id: 211
|
|
67
|
+
name: Geographic information/Geomatics
|
|
68
|
+
home: https://committee.iso.org/home/tc211
|
|
69
|
+
|
|
70
|
+
nav:
|
|
71
|
+
- title: About
|
|
72
|
+
url: /about/
|
|
73
|
+
- title: Blog
|
|
74
|
+
url: /posts/
|
|
69
75
|
|
|
70
|
-
|
|
76
|
+
footer_links:
|
|
77
|
+
- title: Geodetic Registry
|
|
78
|
+
url: https://geodetic.isotc211.org/
|
|
79
|
+
- title: Schemas
|
|
80
|
+
url: https://schemas.isotc211.org
|
|
71
81
|
|
|
72
82
|
awards:
|
|
73
83
|
- title: 2010 Lawrence D. Eicher Leadership Award
|
|
@@ -75,116 +85,72 @@ awards:
|
|
|
75
85
|
|
|
76
86
|
social:
|
|
77
87
|
links:
|
|
78
|
-
- url: https://twitter.com
|
|
79
|
-
- url: https://github.com
|
|
80
|
-
- url: https://www.facebook.com/groups/<group ID>/
|
|
81
|
-
- url: https://www.linkedin.com/groups/<group ID>
|
|
82
|
-
|
|
83
|
-
# Committee site maintainer
|
|
84
|
-
powered_by:
|
|
85
|
-
title: <organization name>
|
|
86
|
-
url: <organization site>
|
|
87
|
-
logo_path: /assets/<logo-filename.svg>
|
|
88
|
-
|
|
89
|
-
# Primary navigation
|
|
90
|
-
nav:
|
|
91
|
-
items:
|
|
92
|
-
- id: home
|
|
93
|
-
url: /
|
|
94
|
-
title: Home
|
|
95
|
-
description: Standard resource links & latest news
|
|
96
|
-
- id: news
|
|
97
|
-
url: /posts
|
|
98
|
-
title: News & Articles
|
|
99
|
-
|
|
100
|
-
# Footer navigation (example)
|
|
101
|
-
footer_nav:
|
|
102
|
-
- url: <committee site URL>
|
|
103
|
-
title: ISO/TC XXX
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
## Contributing
|
|
108
|
-
|
|
109
|
-
Bug reports and pull requests are welcome on GitHub
|
|
110
|
-
at https://github.com/riboseinc/jekyll-theme-isotc211.
|
|
111
|
-
|
|
112
|
-
This project is intended to be a safe, welcoming space for collaboration,
|
|
113
|
-
and contributors are expected to adhere
|
|
114
|
-
to the [Contributor Covenant](http://contributor-covenant.org) code of conduct.
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
## Theme development
|
|
88
|
+
- url: https://twitter.com/ISOTC211
|
|
89
|
+
- url: https://github.com/ISO-TC211
|
|
118
90
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
To experiment with this code, add content (projects, software, specs)
|
|
123
|
-
and run `bundle exec jekyll serve`. This starts a Jekyll server
|
|
124
|
-
using this theme at `http://localhost:4000`.
|
|
125
|
-
|
|
126
|
-
Put your layouts in `_layouts`, your includes in `_includes`,
|
|
127
|
-
your sass files in `_sass` and any other assets in `assets`.
|
|
128
|
-
|
|
129
|
-
Add pages, documents, data, etc. like normal to test your theme's contents.
|
|
130
|
-
|
|
131
|
-
As you make modifications to your theme and to your content, your site will
|
|
132
|
-
regenerate and you should see the changes in the browser after a refresh,
|
|
133
|
-
like normal.
|
|
91
|
+
favicon_svg: "/assets/favicon.svg"
|
|
92
|
+
favicon_ico: "/assets/favicon.ico"
|
|
93
|
+
```
|
|
134
94
|
|
|
135
|
-
When your theme is released, only files specified with gemspec file
|
|
136
|
-
will be included. If you modify theme to add more directories that
|
|
137
|
-
need to be included in the gem, edit regexp in the gemspec.
|
|
138
95
|
|
|
139
|
-
|
|
96
|
+
## Layouts
|
|
140
97
|
|
|
141
|
-
|
|
98
|
+
| Layout | Description |
|
|
99
|
+
|--------|-------------|
|
|
100
|
+
| `default` | Full page: head, header, main, footer, Vite JS |
|
|
101
|
+
| `base` | Raw content pass-through |
|
|
102
|
+
| `home` | Content + optional news roll |
|
|
103
|
+
| `page` | Generic content page |
|
|
104
|
+
| `post` | Blog post with illustration support |
|
|
105
|
+
| `posts` | Blog index |
|
|
106
|
+
| `base-page` | Content page with header (for resource browser) |
|
|
107
|
+
| `resource-index` | Resource directory listing |
|
|
108
|
+
| `resource-page` | Two-pane BlueprintJS resource browser |
|
|
142
109
|
|
|
143
|
-
|
|
144
|
-
|
|
110
|
+
Sites can override any layout by creating a file with the same name in their
|
|
111
|
+
own `_layouts/` directory.
|
|
145
112
|
|
|
146
|
-
Here’s how to develop the theme while simultaneously previewing the changes
|
|
147
|
-
on a site. The sequence would be as follows, assuming you have a local copy
|
|
148
|
-
of this repo and have a Jekyll site using this theme:
|
|
149
113
|
|
|
150
|
-
|
|
151
|
-
of the theme (the root of this repo) and run `bundle`.
|
|
114
|
+
## CSS
|
|
152
115
|
|
|
153
|
-
|
|
154
|
-
to `gem "jekyll-theme-isotc211", :path => "../jekyll-theme-isotc211"`.
|
|
155
|
-
The relative path assumes your site root and theme root are sibling directories.
|
|
116
|
+
The theme provides these CSS files in `_frontend/css/`:
|
|
156
117
|
|
|
157
|
-
|
|
118
|
+
| File | Content |
|
|
119
|
+
|------|---------|
|
|
120
|
+
| `header.css` | Fixed glassmorphic header, brand bar, navigation |
|
|
121
|
+
| `footer.css` | Footer grid, links, social icons |
|
|
122
|
+
| `typography.css` | Section labels, headings, meta text |
|
|
123
|
+
| `page.css` | AsciiDoc documentation prose defaults |
|
|
124
|
+
| `home.css` | Sections, blog list, awards, about page |
|
|
158
125
|
|
|
159
|
-
|
|
126
|
+
Sites can add their own CSS files and import them in their
|
|
127
|
+
`_frontend/entrypoints/application.js`.
|
|
160
128
|
|
|
161
|
-
4. If needed, kill with Ctrl+C then relaunch the serve command
|
|
162
|
-
to apply the changes you made to the theme
|
|
163
|
-
(it may not reload automatically if changes only affect the theme and not the site
|
|
164
|
-
you’re serving).
|
|
165
129
|
|
|
166
|
-
|
|
130
|
+
## Migration from v0.x
|
|
167
131
|
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
132
|
+
1. Remove `font_awesome_kit_url` from `_config.yml`
|
|
133
|
+
2. Remove `_sass/` directory from site
|
|
134
|
+
3. Replace `jekyll-plugin-frontend-build` with `jekyll-vite` in Gemfile
|
|
135
|
+
4. Add Vite config files (`vite.config.ts`, `postcss.config.js`, `config/vite.json`)
|
|
136
|
+
5. Update `nav` config from `nav.items` array-of-objects to flat `nav` array
|
|
137
|
+
6. Update `footer_nav` to `footer_links`
|
|
138
|
+
7. Remove Babel config if present
|
|
172
139
|
|
|
173
|
-
#### Releasing
|
|
174
140
|
|
|
175
|
-
|
|
176
|
-
so use good judgement and thorough manual testing.
|
|
141
|
+
## Development
|
|
177
142
|
|
|
178
|
-
|
|
143
|
+
```sh
|
|
144
|
+
bundle install
|
|
145
|
+
```
|
|
179
146
|
|
|
180
|
-
|
|
147
|
+
Point a site to the local theme via Gemfile:
|
|
181
148
|
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
* Pushes changes to GitHub
|
|
149
|
+
```ruby
|
|
150
|
+
gem "jekyll-theme-isotc211", path: "../jekyll-theme-isotc211"
|
|
151
|
+
```
|
|
186
152
|
|
|
187
153
|
|
|
188
154
|
## License
|
|
189
155
|
|
|
190
|
-
|
|
156
|
+
MIT
|
data/_config.yml
CHANGED
|
@@ -1,98 +1,42 @@
|
|
|
1
|
-
|
|
1
|
+
# Theme defaults — sites override these in their own _config.yml
|
|
2
|
+
title: "ISO/TC 211 Site"
|
|
3
|
+
title_html: "ISO/TC 211"
|
|
4
|
+
brand_sub: "Geographic information/Geomatics"
|
|
5
|
+
description: "An ISO/TC 211 resource site"
|
|
2
6
|
|
|
3
7
|
email: open.source@ribose.com
|
|
4
8
|
|
|
5
|
-
description: >-
|
|
6
|
-
Welcome to this ISO/TC 211 site.
|
|
7
|
-
|
|
8
|
-
# The protocol + domain name of the site
|
|
9
|
-
# url: "https://geolexica.com"
|
|
10
|
-
|
|
11
|
-
includes_dir: .
|
|
12
|
-
|
|
13
9
|
markdown: kramdown
|
|
14
10
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
# google_analytics:
|
|
20
|
-
# id: UA-XXXXX-Y
|
|
21
|
-
|
|
22
|
-
# Used for copyright notice and possibly more.
|
|
23
|
-
org:
|
|
24
|
-
name: International Organization for Standardization
|
|
25
|
-
website:
|
|
26
|
-
url: https://www.iso.org/
|
|
27
|
-
title: www.iso.org
|
|
28
|
-
email: copyright@iso.org
|
|
29
|
-
address: |-
|
|
30
|
-
Chemin de Blandonnet 8
|
|
31
|
-
CP 401
|
|
32
|
-
1214 Vernier, Geneva
|
|
33
|
-
Switzerland
|
|
34
|
-
|
|
35
|
-
# Social profile navigation
|
|
36
|
-
# social:
|
|
37
|
-
# links:
|
|
38
|
-
# - url: https://twitter.com/…
|
|
39
|
-
# - url: https://github.com/…
|
|
40
|
-
# - url: https://www.facebook.com/groups/…
|
|
41
|
-
# - url: https://www.linkedin.com/groups/…
|
|
42
|
-
|
|
43
|
-
# committee:
|
|
44
|
-
# id: <number>
|
|
45
|
-
# name: <full name>
|
|
46
|
-
# home: <committee’s external home page URL>
|
|
47
|
-
# links:
|
|
48
|
-
# - url: /about
|
|
49
|
-
# title: About
|
|
50
|
-
# - url: /strategic-policy
|
|
51
|
-
# title: Strategic Policy Statement
|
|
52
|
-
# - url: /faq
|
|
53
|
-
# title: FAQ
|
|
54
|
-
|
|
55
|
-
# Main site navigation.
|
|
56
|
-
# Layouts and pages can specify priority nav items
|
|
57
|
-
# using frontmatter key nav_items
|
|
58
|
-
# pointing to an array listing nav item IDs.
|
|
59
|
-
nav:
|
|
60
|
-
items:
|
|
61
|
-
- id: posts
|
|
62
|
-
url: /posts/
|
|
63
|
-
title: News & Articles
|
|
64
|
-
|
|
65
|
-
always_show_committee_link_on_landing: no
|
|
66
|
-
# Switching this to “yes” will enable the Committee site link
|
|
67
|
-
# to appear on landing page even when expandable menu is collapsed.
|
|
68
|
-
|
|
69
|
-
# Footer navigation
|
|
70
|
-
footer_nav:
|
|
71
|
-
- url: https://committee.iso.org/home/tc211
|
|
72
|
-
title: ISO/TC 211
|
|
11
|
+
plugins:
|
|
12
|
+
- jekyll/vite
|
|
13
|
+
- jekyll-feed
|
|
73
14
|
|
|
74
15
|
collections:
|
|
75
16
|
pages:
|
|
76
17
|
output: true
|
|
77
18
|
permalink: /:path/
|
|
78
19
|
|
|
20
|
+
committee:
|
|
21
|
+
id: 211
|
|
22
|
+
name: Geographic information/Geomatics
|
|
23
|
+
|
|
24
|
+
social:
|
|
25
|
+
links: []
|
|
26
|
+
|
|
27
|
+
nav: []
|
|
28
|
+
footer_links: []
|
|
29
|
+
|
|
79
30
|
exclude:
|
|
80
31
|
- Gemfile
|
|
81
32
|
- Gemfile.lock
|
|
82
|
-
|
|
83
|
-
- babel.config.js
|
|
84
33
|
- package.json
|
|
85
34
|
- package-lock.json
|
|
86
|
-
- monitor.sh
|
|
87
35
|
- node_modules
|
|
88
|
-
|
|
89
|
-
-
|
|
90
|
-
-
|
|
91
|
-
-
|
|
92
|
-
|
|
93
|
-
-
|
|
94
|
-
|
|
95
|
-
- vendor/bundle/
|
|
96
|
-
- vendor/cache/
|
|
97
|
-
- vendor/gems/
|
|
98
|
-
- vendor/ruby/
|
|
36
|
+
- vendor
|
|
37
|
+
- .sass-cache
|
|
38
|
+
- vite.config.ts
|
|
39
|
+
- postcss.config.js
|
|
40
|
+
- bin
|
|
41
|
+
- _frontend
|
|
42
|
+
- config/vite.json
|
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/* ── Site Footer ─────────────────────────────────── */
|
|
2
|
+
|
|
3
|
+
@layer components {
|
|
4
|
+
.site-footer {
|
|
5
|
+
background: #f8fafc;
|
|
6
|
+
border-top: 1px solid rgb(229 231 235 / 0.6);
|
|
7
|
+
padding: 3rem 0;
|
|
8
|
+
transition: background-color 0.2s;
|
|
9
|
+
}
|
|
10
|
+
.dark .site-footer {
|
|
11
|
+
background: #020617;
|
|
12
|
+
border-top-color: rgb(255 255 255 / 0.06);
|
|
13
|
+
}
|
|
14
|
+
|
|
15
|
+
.site-footer__inner {
|
|
16
|
+
max-width: 80rem;
|
|
17
|
+
margin: 0 auto;
|
|
18
|
+
padding: 0 1rem;
|
|
19
|
+
}
|
|
20
|
+
@media (min-width: 640px) {
|
|
21
|
+
.site-footer__inner { padding: 0 1.5rem; }
|
|
22
|
+
}
|
|
23
|
+
@media (min-width: 1024px) {
|
|
24
|
+
.site-footer__inner { padding: 0 2rem; }
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
.site-footer__grid {
|
|
28
|
+
display: grid;
|
|
29
|
+
grid-template-columns: 1fr;
|
|
30
|
+
gap: 2rem;
|
|
31
|
+
margin-bottom: 2rem;
|
|
32
|
+
}
|
|
33
|
+
@media (min-width: 768px) {
|
|
34
|
+
.site-footer__grid { grid-template-columns: repeat(3, 1fr); }
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
.site-footer__logo {
|
|
38
|
+
display: flex;
|
|
39
|
+
align-items: center;
|
|
40
|
+
gap: 0.625rem;
|
|
41
|
+
text-decoration: none;
|
|
42
|
+
}
|
|
43
|
+
.site-footer__logo img { height: 1.75rem; }
|
|
44
|
+
.site-footer__logo-text {
|
|
45
|
+
font-size: 0.875rem;
|
|
46
|
+
font-weight: 700;
|
|
47
|
+
letter-spacing: -0.025em;
|
|
48
|
+
color: #1e293b;
|
|
49
|
+
}
|
|
50
|
+
.dark .site-footer__logo-text { color: #e2e8f0; }
|
|
51
|
+
|
|
52
|
+
.site-footer__tagline {
|
|
53
|
+
font-size: 0.875rem;
|
|
54
|
+
color: #64748b;
|
|
55
|
+
margin-top: 1rem;
|
|
56
|
+
line-height: 1.625;
|
|
57
|
+
}
|
|
58
|
+
|
|
59
|
+
.site-footer__heading {
|
|
60
|
+
font-size: 0.75rem;
|
|
61
|
+
font-weight: 600;
|
|
62
|
+
color: #0f172a;
|
|
63
|
+
text-transform: uppercase;
|
|
64
|
+
letter-spacing: 0.05em;
|
|
65
|
+
margin-bottom: 1rem;
|
|
66
|
+
}
|
|
67
|
+
.dark .site-footer__heading { color: #fff; }
|
|
68
|
+
|
|
69
|
+
.site-footer__links {
|
|
70
|
+
list-style: none;
|
|
71
|
+
padding: 0;
|
|
72
|
+
margin: 0;
|
|
73
|
+
display: flex;
|
|
74
|
+
flex-direction: column;
|
|
75
|
+
gap: 0.625rem;
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
.site-footer__link {
|
|
79
|
+
font-size: 0.875rem;
|
|
80
|
+
color: #64748b;
|
|
81
|
+
transition: color 0.15s;
|
|
82
|
+
text-decoration: none;
|
|
83
|
+
}
|
|
84
|
+
.dark .site-footer__link { color: #94a3b8; }
|
|
85
|
+
.site-footer__link:hover { color: #0f172a; }
|
|
86
|
+
.dark .site-footer__link:hover { color: #fff; }
|
|
87
|
+
|
|
88
|
+
.site-footer__bottom {
|
|
89
|
+
padding-top: 2rem;
|
|
90
|
+
border-top: 2px solid #e3000f;
|
|
91
|
+
display: flex;
|
|
92
|
+
flex-direction: column;
|
|
93
|
+
align-items: center;
|
|
94
|
+
gap: 1rem;
|
|
95
|
+
}
|
|
96
|
+
@media (min-width: 640px) {
|
|
97
|
+
.site-footer__bottom { flex-direction: row; justify-content: space-between; }
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
.site-footer__copy {
|
|
101
|
+
font-size: 0.875rem;
|
|
102
|
+
color: #94a3b8;
|
|
103
|
+
}
|
|
104
|
+
.dark .site-footer__copy { color: #475569; }
|
|
105
|
+
|
|
106
|
+
.site-footer__social { display: flex; gap: 0.75rem; }
|
|
107
|
+
|
|
108
|
+
.site-footer__social-link {
|
|
109
|
+
color: #cbd5e1;
|
|
110
|
+
transition: color 0.15s;
|
|
111
|
+
text-decoration: none;
|
|
112
|
+
}
|
|
113
|
+
.dark .site-footer__social-link { color: #475569; }
|
|
114
|
+
.site-footer__social-link:hover { color: #64748b; }
|
|
115
|
+
.dark .site-footer__social-link:hover { color: #94a3b8; }
|
|
116
|
+
.site-footer__social-link svg { width: 1.25rem; height: 1.25rem; }
|
|
117
|
+
}
|