]> git.ipfire.org Git - ipfire.org.git/blame - src/scss/style.scss
Use background image for donation page, too
[ipfire.org.git] / src / scss / style.scss
CommitLineData
bc5b7100 1@import "variables";
91e44d91 2
8e1ad516 3// Use all Bootstrap modules that we want
bc5b7100
MT
4@import "../bootstrap/scss/functions";
5@import "../bootstrap/scss/variables";
6@import "../bootstrap/scss/mixins";
8e1ad516 7@import "../bootstrap/scss/root";
bc5b7100 8@import "../bootstrap/scss/reboot";
bc5b7100 9@import "../bootstrap/scss/type";
8e1ad516
MT
10@import "../bootstrap/scss/images";
11@import "../bootstrap/scss/code";
bc5b7100
MT
12@import "../bootstrap/scss/grid";
13@import "../bootstrap/scss/tables";
14@import "../bootstrap/scss/forms";
15@import "../bootstrap/scss/buttons";
bc5b7100 16@import "../bootstrap/scss/transitions";
8e1ad516 17@import "../bootstrap/scss/dropdown";
bc5b7100 18@import "../bootstrap/scss/button-group";
8e1ad516 19@import "../bootstrap/scss/input-group";
bc5b7100
MT
20@import "../bootstrap/scss/nav";
21@import "../bootstrap/scss/navbar";
8e1ad516
MT
22@import "../bootstrap/scss/card";
23@import "../bootstrap/scss/pagination";
bc5b7100 24@import "../bootstrap/scss/badge";
8e1ad516 25@import "../bootstrap/scss/alert";
bc5b7100
MT
26@import "../bootstrap/scss/progress";
27@import "../bootstrap/scss/media";
28@import "../bootstrap/scss/list-group";
8e1ad516 29@import "../bootstrap/scss/close";
95b30f84 30@import "../bootstrap/scss/modal";
bc5b7100 31@import "../bootstrap/scss/utilities";
8e1ad516 32@import "../bootstrap/scss/print";
1423222c 33
616bd6a5
MT
34// Include fonts
35@import "fonts";
36
5236a99a 37// Custom stuff
7ca46dd8 38@import '_icons';
5236a99a 39
cc59f0e1 40body {
9f043320
MT
41 // For scrollspy
42 position: relative;
43
cc59f0e1
MT
44 min-height: 75rem;
45 padding-top: 6rem;
d4105f96
MT
46
47 &.background {
48 background-image: url("img/header-background.jpg");
49 background-position: center top;
50 background-repeat: no-repeat;
51 background-size: contain;
52 }
cc59f0e1
MT
53}
54
41f3d31d
MT
55// Buttons
56.btn {
57 text-transform: uppercase;
58}
59
e434c81f
MT
60// Headings
61
62h1 {
63 line-height: 4rem;
825bacca 64 font-weight: 300;
e434c81f
MT
65}
66
67h2 {
68 line-height: 3.5rem;
69}
70
71h3 {
72 line-height: 3rem;
73}
74
75h4 {
76 line-height: 2.75rem;
77}
78
79h5 {
80 line-height: 2rem;
81}
82
83h6 {
84 line-height: 1.75rem;
85}
86
cc59f0e1
MT
87.card {
88 box-shadow: $shadow-1;
89}
90
9f043320
MT
91.nav {
92 .nav-link {
93 color: $blue-grey-900;
94
95 &.active {
96 color: $link-color;
97 border-left: 2px solid $link-color;
98 }
99 }
100}
101
56fdd02c
MT
102.navbar {
103 &.scrolled {
104 background-color: white;
105 box-shadow: $shadow-2;
106
107 transition: background-color 200ms linear;
108 }
dce6f905
MT
109
110 .navbar-nav {
111 .nav-link {
112 color: $blue-grey-900;
113
114 &.active {
115 border-bottom: 2px solid $link-color;
116 }
117 }
118 }
56fdd02c
MT
119}
120
c2cbe16d
S
121footer {
122 .btn-toolbar .icon {
fdae1aac
S
123 height: 2.25rem;
124 width: 2.25rem;
c2cbe16d
S
125 fill: rgba($blue-grey-900, .6);
126 }
127 .i_heart {
fdae1aac
S
128 vertical-align: top;
129 transform: translateY(-.15rem);
130 @include media-breakpoint-down(sm) {
131 transform: translateY(-.75rem);
132 }
c2cbe16d
S
133 }
134}
135
c2cbe16d 136// Sections
319dd276 137
cc59f0e1
MT
138.main {
139 section {
140 padding: 3rem 0;
319dd276 141
cc59f0e1
MT
142 @include media-breakpoint-up(sm) {
143 padding: 72px 0;
144 }
319dd276 145
cc59f0e1
MT
146 h1 {
147 margin-bottom: 64px;
148 }
319dd276 149 }
319dd276 150
cc59f0e1
MT
151 section.intro {
152 min-height: 100vh;
cc59f0e1 153 position: relative;
b4bff93b 154
cc59f0e1 155 .branding {
c79aaf03
MT
156 margin-top: 7.5rem;
157 margin-bottom: 4rem;
319dd276 158
c79aaf03
MT
159 @include media-breakpoint-down(xs) {
160 margin-top: 2.5rem;
cc59f0e1 161 }
319dd276 162
c79aaf03
MT
163 text-align: center;
164
cc59f0e1
MT
165 h1 {
166 margin-bottom: 0;
319dd276 167
cc59f0e1
MT
168 @include media-breakpoint-down(xs) {
169 font-size: 72px;
170 line-height: 88px;
171 }
1423222c 172 }
319dd276 173
cc59f0e1
MT
174 h1:before {
175 content: "";
176 height: 60px;
177 width: 76px;
178 background-image: url('img/ipfire-tux.png');
179 background-repeat: no-repeat;
180 background-position: center center;
181 background-size: contain;
182 display: inline-block;
183 position: relative;
184 top: 4px;
185
186 @include media-breakpoint-up(sm) {
187 height: 120px;
188 width: 93px;
189 margin-right: 32px;
190 top: 8px;
191 }
192 }
319dd276 193
cc59f0e1
MT
194 h5 {
195 color: $blue-grey-600;
319dd276 196
c79aaf03
MT
197 @include media-breakpoint-down(xs) {
198 font-size: 14px;
199 line-height: 20px;
200 }
201 }
319dd276 202 }
1423222c 203 }
f8c4f791 204
cc59f0e1
MT
205 section#news, section#support, footer {
206 background-color: rgba($blue-grey-900, .06);
207 }
319dd276 208
cc59f0e1
MT
209 section#news {
210 color: rgba($blue-grey-900, .6);
211 }
319dd276 212
cc59f0e1
MT
213 section#fireinfo {
214 border-bottom: 1px solid rgba($blue-grey-900, .2);
215 }
319dd276 216
cc59f0e1
MT
217 section#appliances {
218 padding-bottom: 48px;
219 }
319dd276
MT
220}
221
9f043320
MT
222// Sidebar navigation
223
224#sidebar .nav {
225 position: fixed;
226}
227
f8c4f791
S
228.page-scroll {
229 display: block;
230 visibility: visible;
231 position: absolute;
d4105f96 232 bottom: 164px;
f8c4f791
S
233 left: 50%;
234 transform: translateX(-50%);
235 .btn {
236 width: 36px;
237 height: 36px;
238 fill: $red_900;
239 @include media-breakpoint-up(sm) {
240 width: 64px;
241 height: 64px;
242 }
243 &:hover .i_arrow_down {
244 fill: white;
1423222c
S
245 }
246 }
4b4334da
S
247}
248
c2cbe16d
S
249.feature_icons {
250 width: 40px;
251 height: 100%;
252 float: left;
253 margin-right: .75rem;
4b4334da
S
254}
255
61975d93
S
256.progress {
257 background-color: rgba(255, 255, 255, .2);
258}
259
c2cbe16d
S
260.circle {
261 position: relative;
f8c4f791 262 p.fireinfo_per {
c2cbe16d
S
263 color: $blue-grey-600;
264 position: absolute;
d56f505e 265 top: calc(50% - 18px);
c2cbe16d
S
266 width: 100%;
267 }
20df8773
S
268}
269
8e4a3eaa 270.fixed-top + .blog-content {
96dd6875 271 padding-top: 88px;
0955047d 272 margin-bottom: 40px;
346e30de 273 @include media-breakpoint-up(lg) {
96dd6875
SH
274 padding-top: 161px;
275 }
0955047d
S
276 .content {
277 background: white;
278 border-radius: 4px;
279 box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.12), 0 1px 2px 0 rgba(0, 0, 0, 0.2);
280 padding: 40px 24px;
f59b40f6 281 position: relative;
0955047d
S
282 }
283}
284
8e4a3eaa
SH
285.blog-content {
286 margin-bottom: 80px;
287}
288
bf5b46d4 289.divider {
0955047d 290 width: 128px;
bf5b46d4
S
291 height: 4px;
292 border-radius: 2px;
bc5b7100 293 background-image: linear-gradient(to right, $red-900, $orange-a400);
96dd6875
SH
294 margin: 40px auto 24px auto;
295 @include media-breakpoint-up(sm) {
296 margin: 56px auto 40px auto;
297 }
0955047d
S
298}
299
20df8773
S
300footer {
301 padding: 3rem 0 0 0;
8e18ac98
S
302 @include media-breakpoint-down(md) {
303 padding-top: 31px;
304 }
6aa3b1ec
S
305 h4 {
306 margin-bottom: 1.25rem;
c2cbe16d 307 color: rgba($blue-grey-900, .6);
f8c4f791
S
308 font-size: 20px;
309 line-height: 28px;
6aa3b1ec
S
310 }
311 ul {
312 li {
f8c4f791 313 font-size: 14px;
6aa3b1ec
S
314 margin-bottom: .75rem;
315 a {
c2cbe16d 316 color: rgba($blue-grey-900, .6);
6aa3b1ec
S
317 text-decoration: none;
318 &:hover {
c2cbe16d 319 color: $blue-grey-900;
6aa3b1ec
S
320 text-decoration: underline;
321 }
322 }
323 }
324 }
325 .btn-lg {
326 margin-bottom: 2.75rem;
6aa3b1ec
S
327 }
328 .btn-sm {
329 box-shadow: none;
330 &:hover {
331 box-shadow: none;
332 }
6aa3b1ec 333 }
20df8773
S
334}
335
c2cbe16d
S
336#copyright {
337 background-color: rgba($blue-grey-900, .06);
338 padding: 1rem 0;
f8c4f791
S
339 p {
340 font-size: 12px;
341 line-height: 16px;
342 }
ac7f3ec6
S
343}
344
c2cbe16d 345// Animation
c2cbe16d 346@keyframes scroll {
61eaa9b2 347 0%, 100% { transform: translateY(30%); }
fdae1aac 348 50% { transform: translateY(50%); }
7c0605e8 349}