38b24dffb68da8bd75270de72c73571fa0281b8c
[ryf-theme.git] / css / style.css
1 /**
2 * If using a CSS pre-processor, tell it to overwrite this file. If not, place
3 * your custom CSS modifications here.
4 */
5
6 /* Lato font */
7
8 @font-face {
9 font-family: "Lato";
10 src: url("../fonts/Lato-Regular.ttf") format('truetype');
11 font-weight: 400;
12 font-style: normal;
13 }
14
15 @font-face {
16 font-family: "Lato";
17 src: url('../fonts/Lato-RegularItalic.ttf') format('truetype');
18 font-weight: 400;
19 font-style: italic;
20 }
21
22 @font-face {
23 font-family: "Lato";
24 src: url('../fonts/Lato-Bold.ttf') format('truetype');
25 font-weight: 700;
26 font-style: normal;
27 }
28
29
30 /* Universal */
31
32 body {
33 font-family: "Lato", Helvetica, Arial, sans-serif;
34 margin: 0;
35 min-width: 320px;
36 }
37
38 a { transition: 0.3s; }
39
40 section { position: relative; }
41
42 /* etcetera */
43
44 .visually-hidden.focusable:focus {
45 position: absolute !important;
46 background: #000;
47 color: #FFF;
48 padding: 0.5em;
49 z-index: 9999;
50 }
51
52 .main-container { min-height: 50vh; }
53
54 h2.block-title {
55 background: #337AB7;
56 color: #FFF;
57 padding: 0.5em;
58 }
59
60
61
62 h2.block-title a:visited,
63 h2.block-title a:focus,
64 h2.block-title a:active,
65 h2.block-title a {
66 color: #FFF;
67 }
68
69 h2.block-title a:hover {
70 color: #FFF;
71 }
72
73 .feed-icons a {
74 background: url('../images/rss.svg') top left no-repeat;
75 background-size: contain;
76 height: 20px;
77 overflow: hidden;
78 display: block;
79 text-indent: 25px;
80 font-size: 1em;
81 width: fit-content;
82 margin-top: 1em;
83 float: right;
84 }
85
86 .view-display-id-news_page .feed-icons a {
87 margin-top: -30px;
88 }
89
90 .more-link {
91 border: 1px solid #ddd;
92 border-radius: .5em;
93 padding: .5em;
94 text-align: center;
95 width: 50%;
96 margin: 0 auto;
97 font-weight: bold;
98 margin-top: 2em;
99 }
100
101 .more-link:hover {
102 background: #EEE;
103 color: #000;
104 }
105
106 .block-views {
107 margin-top: 20px;
108 }
109
110 /* Navbar */
111
112 .navbar-default {
113 background: #000;
114 color: #FFF;
115 border: none;
116 border-radius: 0px;
117 box-sizing: content-box;
118 align-items: center;
119 min-height: 100px;
120 }
121
122 .navbar-header,
123 #navbar-collapse {
124 max-width: 1150px;
125 padding: 0;
126 margin: 0 auto;
127 border: none;
128 overflow: hidden;
129 }
130
131 .navbar-default .navbar-toggle { display: none; }
132
133 .navbar-header {
134 position: absolute;
135 top: 5px;
136 }
137
138 .navbar-brand { display: none; }
139
140 #block-ryf-main-menu .navbar-nav { margin-left: 195px; }
141
142 .navbar-default .navbar-nav > li > a:focus {
143 outline: none;
144 }
145
146 .navbar-default .navbar-nav > li > a,
147 .navbar-default .navbar-nav > li > a:link,
148 .navbar-default .navbar-nav > li > a:visited {
149 color: #FFF;
150 background: #000;
151 border-bottom: 2px solid transparent;
152 padding-bottom: 10px;
153 margin-bottom: 5px;
154 }
155
156 .navbar-default .navbar-nav > li > a:focus,
157 .navbar-default .navbar-nav > li.active > a:hover,
158 .navbar-default .navbar-nav > li > a:hover {
159 color: #edd400;
160 background: #000;
161 border-bottom: 2px solid #edd400;
162 padding-bottom: 5px;
163 margin-bottom: 10px;
164 }
165
166 .navbar-default .navbar-nav > li > a.is-active {
167 border-bottom: 2px solid #FFF;
168 background: #000;
169 padding-bottom: 5px;
170 margin-bottom: 10px;
171 }
172
173 .page-header {
174 border-bottom: 2px solid #000;
175 font-size: 2em;
176 }
177
178 .region-header .search-block-form {
179 width: 300px;
180 float: right;
181 }
182
183 nav .search-block-form {
184 position: absolute;
185 width: 300px;
186 right: 10%;
187 top: 30px;
188 }
189
190 @media screen and (max-width: 767px) {
191 #block-ryf-main-menu .navbar-nav { max-width: 130px; }
192 }
193
194 .region-navigation-collapsible .search-block-form {
195 float: right;
196 width: 210px;
197 }
198
199 @media screen and (min-width: 768px) {
200
201 .navbar-default {
202 margin-bottom: 100px;
203 }
204 .navbar-nav {
205 margin-top: 40px;
206 }
207 .region-header .breadcrumb {
208 position: absolute;
209 top: -70px;
210 left: 200px;
211 background: none;
212 }
213 .region-navigation-collapsible .search-block-form {
214 padding-top: 50px;
215 }
216 }
217
218 .maintenance-page #navbar {
219 margin-bottom: 120px;
220 }
221
222
223 /* Selectors */
224
225
226 @media screen and (min-width: 768px) {
227 .form-inline .form-item .select-wrapper {
228 display: block;
229 }
230 .form-inline .form-actions {
231 margin-top: 21px;
232 }
233 }
234
235 /* News */
236
237 .view-news article {
238 padding: 0.5em;
239 margin: 0 10%;
240 }
241
242 .view-news p {
243 line-height: 1.5em;
244 font-size: 1.1em;
245 }
246
247 .view-news .node-readmore {
248 padding: 0.5em 1em;
249 border: 1px solid #DDD;
250 border-radius: 0.5em;
251 float: right;
252 }
253
254 .view-news .node-readmore:hover {
255 background: #EEE;
256 color: #000;
257 }
258
259 .view-news footer {
260 color: #999;
261 padding: 0.5em;
262 text-align: right;
263 }
264
265
266 /* RYF List */
267
268
269 .ryf-list-row {
270 padding: 0;
271 margin: 0 auto;
272 overflow: auto;
273 }
274
275 .ryf-list {
276 float: left;
277 margin: 0;
278 padding: 0.5em;
279 position: relative;
280 list-style: none;
281 }
282
283 .ryf-list article {
284 border: 1px solid #bbb;
285 border-radius: 5px;
286 padding: 1em;
287 box-shadow: 2px 2px 5px #ddd;
288 transition: 0.3s;
289 }
290
291 .ryf-list article:hover {
292 box-shadow: 0px 0px 5px #aaa;
293 }
294
295 .ryf-list .field--type-image {
296 border: 1px solid #ddd;
297 border-left: 0px;
298 border-right: 0px;
299 background: #fff;
300 height: 150px;
301 width: 100%;
302 overflow: hidden;
303 border-radius: 5px;
304 position: relative;
305 text-align: center;
306 display: flex;
307 align-items: center;
308 }
309
310 .ryf-list .field--type-image a {
311 display: inline-block;
312 margin: 0 auto;
313 }
314
315 .ryf-list .field--type-image img {
316 width: auto;
317 max-height: 150px;
318 margin: 0 auto;
319 display: inline-block;
320 }
321
322 .ryf-list h2 {
323 text-align: left;
324 font-size: 1.5em;
325 line-height: 1.2em;
326 margin: 0;
327 padding: 0;
328 }
329
330 .ryf-list .field--name-body {
331 display: block;
332 border-radius: 5px;
333 width: 100%;
334 height: 0px;
335 margin-top: 0px;
336 z-index: 99;
337 position: relative;
338 background: #00000088;
339 color: white;
340 padding: 0em;
341 transition: 0.2s;
342 cursor: default;
343 overflow: hidden;
344 }
345
346 .ryf-list:hover .field--name-body {
347 height: 100px;
348 margin-top: -100px;
349 z-index: 99;
350 position: relative;
351 padding: 0.3em;
352 transition: 0.3s;
353 }
354
355 .ryf-list a {
356 color: #337AB7;
357 }
358
359 .ryf-list a:hover {
360 color: #000;
361 }
362
363 .ryf-list .list-inline li {
364 font-size: 0.9em;
365 border: 1px solid #ddd;
366 width: auto;
367 border-radius: 0.5em;
368 padding: 0.3em 0.5em;
369 margin-top: 5px;
370 float: right;
371 }
372
373 .ryf-list h2 a {
374 display: inline-block;
375 height: 55px;
376 width: 100%;
377 overflow: hidden;
378 position: relative;
379 }
380
381 .ryf-list h2 a:after {
382 content: '(...)';
383 float: right;
384 display: block;
385 position: absolute;
386 bottom:5px;
387 right: 2px;
388 font-size: 0.8em;
389 }
390
391 .ryf-list .list-inline li:hover {
392 background: #eee;
393 }
394
395 @media screen and (min-width: 450px) and (max-width: 659px) {
396 .ryf-list-row {
397 max-width: 600px;
398 }
399 .ryf-list {
400 max-width: 300px;
401 float: none;
402 margin: 0 auto;
403 }
404 }
405 @media screen and (min-width: 660px) and (max-width: 767px) {
406 .ryf-list-row {
407 margin: 0 auto;
408 max-width: 660px;
409 }
410 .ryf-list {
411 max-width: 300px;
412 float: left;
413 }
414 .auto-clear .col-xs-12:nth-child(odd){clear:left;}
415 }
416
417 @media screen and (min-width: 55em) {
418
419 .ryf-list article {
420 min-height: 270px
421 }
422
423 }
424
425
426 /* Vendors list */
427
428
429 .vendors-list-row {
430 padding: 10px;
431 margin: 0 auto;
432 overflow: auto;
433 }
434
435 .vendors-list {
436 margin-bottom: 40px;
437 list-style: none;
438
439 overflow: auto;
440 }
441
442 .vendors-list .views-field-field-icon {
443 width: 220px;
444 height: 220px;
445
446 display: flex;
447 align-items: center;
448
449 margin: 0px auto 20px auto;
450 }
451
452 .vendors-list .views-field-field-icon img {
453 margin: 0 auto;
454 }
455
456 .vendors-list .views-field-name,
457 .vendors-list .views-field-field-description-summary,
458 .vendors-list .views-field-description__value {
459 max-width: 300px;
460 margin: 0 auto 10px auto;
461 }
462
463 .vendors-list .views-field-name {
464 font-weight: bold;
465 font-size: 18px;
466 text-align: center;
467 }
468
469
470 /* Sidebars */
471
472
473 @media screen and (max-width: 767px) {
474 .path-products #block-views-block-categories-categories-block { display: none; }
475 }
476
477
478 /* Vendor and Category taxonomy term pages */
479
480
481 .view-taxonomy-term .view-header .field--name-field-icon img {
482 margin: 0 auto;
483 }
484
485 .view-filters {
486 clear: left;
487 }
488
489 .view-taxonomy-term .view-header .field--name-field-vendor-support-link,
490 .view-taxonomy-term .view-header .field--name-field-vendor-support-email {
491 margin-top: 15px;
492 }
493
494 @media screen and (max-width: 559px) {
495 .view-taxonomy-term.view-display-id-taxonomy_term_vendor .view-header {
496 margin: 0 auto 40px auto;
497 overflow: auto;
498 }
499
500 .view-taxonomy-term .view-header .field--name-field-icon {
501 margin: 0 auto 20px auto;
502 width: 220px;
503 }
504
505 .view-taxonomy-term .view-header .field--name-description,
506 .view-taxonomy-term .view-header .field--name-field-description-summary,
507 .view-taxonomy-term .view-header .field--name-field-vendor-website,
508 .view-taxonomy-term .view-header .field--name-field-vendor-support-link,
509 .view-taxonomy-term .view-header .field--name-field-vendor-support-email {
510 max-width: 360px;
511 margin: 15px auto 0 auto;
512 padding: 0 10px;
513 }
514
515 }
516
517 @media screen and (min-width: 560px) {
518 .view-taxonomy-term.view-display-id-taxonomy_term_vendor .view-header {
519 margin: 0 0 40px 0;
520 overflow: auto;
521 }
522
523 .view-taxonomy-term .view-header .field--name-field-icon {
524 width: 220px;
525 float: left;
526 }
527
528 .view-taxonomy-term .view-header .field--name-description,
529 .view-taxonomy-term .view-header .field--name-field-description-summary,
530 .view-taxonomy-term .view-header .field--name-field-vendor-website,
531 .view-taxonomy-term .view-header .field--name-field-vendor-support-link,
532 .view-taxonomy-term .view-header .field--name-field-vendor-support-email {
533 margin: 15px auto 0 260px;
534 }
535
536 }
537
538 @media screen and (min-width: 768px) {
539 .view-taxonomy-term .view-header {
540 max-width: 700px;
541 }
542 }
543
544
545 /* Product */
546
547
548 @media screen and (max-width: 767px) {
549 .page-node-type-product .product {
550 max-width: 382px;
551 margin: 0 auto;
552 }
553 }
554
555 @media screen and (min-width: 768px) and (max-width: 991px) {
556 .page-node-type-product .product {
557 width: 700px;
558 margin: 0 auto;
559 }
560 }
561
562 @media screen and (min-width: 992px) {
563 .page-node-type-product .product {
564 width: 800px;
565 margin: 0 auto;
566 }
567 }
568
569 .page-node-type-product .product .field--name-field-image {
570 padding: 10px;
571
572 border: 1px solid #888;
573 border-radius: 10px;
574 }
575
576 .page-node-type-product .product .field--name-field-image img {
577 margin: 0 auto;
578 }
579
580 .page-node-type-product .product .field--name-field-extra-images {
581 padding: 0 11px;
582 display: flex;
583 align-items: center;
584 }
585
586 .page-node-type-product .product .field--name-field-extra-images .field--item {
587 display: inline-block;
588 margin-right: 15px;
589 padding: 5px;
590 }
591 .page-node-type-product .product .field--name-field-extra-images .field--item:last-child {
592 margin-right: 0;
593 }
594
595 .page-node-type-product .product .field--name-field-categories,
596 .page-node-type-product .product .field--name-field-vendor {
597 margin: 10px 10px 20px 0px;
598 padding: 10px;
599 }
600
601 .page-node-type-product .product .field--name-field-categories .field--item {
602 display: list-item;
603 list-style: circle;
604 margin-left: 15px;
605 }
606
607 /* Mostly from Bootstrap 3 button CSS */
608 .page-node-type-product .product .field--name-field-vendor-product-link a {
609 color: #fff;
610 background-color: #337ab7;
611 border-color: #2e6da4;
612 display: inline-block;
613 margin-bottom: 0;
614 font-weight: normal;
615 text-align: center;
616 white-space: nowrap;
617 vertical-align: middle;
618 -ms-touch-action: manipulation;
619 touch-action: manipulation;
620 cursor: pointer;
621 background-image: none;
622 border: 1px solid transparent;
623 padding: 6px 12px;
624 font-size: 14px;
625 line-height: 1.42857143;
626 border-radius: 4px;
627 -webkit-user-select: none;
628 -moz-user-select: none;
629 -ms-user-select: none;
630 user-select: none;
631 text-decoration: none;
632 }
633
634 #block-views-block-categories-categories-block ul {
635 margin: 0; padding: 0 10px;
636 list-style: none;
637 }
638
639 #block-views-block-categories-categories-block li {
640 padding: 5px 10px;
641 border: 1px solid #DDD;
642 border-radius: 5px;
643 list-style: none;
644 margin: 5px 0;
645 }
646
647 #block-views-block-categories-categories-block li:hover {
648 background: #EEE;
649 color: #000;
650 }
651
652 #block-views-block-categories-categories-block a {
653 width: 100%;
654 display: block;
655 }
656
657 /* product page colors */
658 .page-node-type-product .product .field--name-field-image {
659 background-color: #fff;
660 border-color: #aaa;
661 }
662
663 @media screen and (max-width: 767px) {
664 .page-node-type-product .product .field--name-field-extra-images {
665 margin: 10px auto 0px auto;
666 }
667
668 .page-node-type-product .product .field--name-body,
669 .page-node-type-product .product .field--name-field-vendor-product-link,
670 .page-node-type-product .product .field--name-field-certification-details,
671 .page-node-type-product .product .field--name-field-certification-date,
672 .page-node-type-product .product .field--name-field-source-code-links {
673 margin-bottom: 20px;
674 }
675
676 .page-node-type-product .product .field--name-field-categories,
677 .page-node-type-product .product .field--name-field-vendor {
678 margin-bottom: 0px;
679 float: left;
680 }
681
682 .page-node-type-product .product .field--name-body {
683 padding-top: 20px;
684 clear: both;
685 }
686 }
687
688
689 @media screen and (min-width: 768px) {
690 .page-node-type-product .product .field--name-field-image {
691 width: 382px;
692 float: left;
693 }
694
695 .page-node-type-product .product .field--name-field-extra-images {
696 float: left;
697 clear: left;
698 width: 382px;
699 margin-top: 10px;
700 }
701
702 .page-node-type-product .product .field--name-body,
703 .page-node-type-product .product .field--name-field-vendor-product-link,
704 .page-node-type-product .product .field--name-field-certification-details,
705 .page-node-type-product .product .field--name-field-certification-date,
706 .page-node-type-product .product .field--name-field-source-code-links {
707 margin-left: 400px;
708 margin-bottom: 20px;
709 }
710
711 .page-node-type-product .product .field--name-field-categories {
712 float: left;
713 clear: left;
714 }
715
716 .page-node-type-product .product .field--name-field-vendor {
717 float: left;
718 }
719
720 }
721
722
723 /* News and Product Announcements */
724
725
726 .page-node-type-product-announcement .page-header,
727 .page-node-type-product-announcement .tabs--primary,
728 .page-node-type-product-announcement .region-content,
729 .page-node-type-general-news-item .page-header,
730 .page-node-type-general-news-item .tabs--primary,
731 .page-node-type-general-news-item .region-content,
732 .page-node-type-page .page-header,
733 .page-node-type-page .tabs--primary,
734 .page-node-type-page .region-content,
735 .path-news .page-header,
736 .path-news .tabs--primary,
737 .path-news .region-content {
738 max-width: 800px;
739 margin: 0 auto;
740 }
741
742 /* don't apply above max-width rule to main page */
743 .path-frontpage .page-header,
744 .path-frontpage .tabs--primary,
745 .path-frontpage .region-content {
746 max-width: 2000px; /* high number beyond the max */
747 }
748
749 .page-node-type-page .page-header {
750 margin-bottom: 20px;
751 }
752
753 .path-news h2,
754 .block-views-blocknews-news-block article h2 {
755 font-size: 25px;
756 }
757
758 .page-node-type-product-announcement .author,
759 .page-node-type-general-news-item .author {
760 margin: 10px 0 20px 0;
761 font-style: oblique;
762 }
763
764 .page-node-type-product-announcement .field--name-body,
765 .page-node-type-general-news-item .field--name-body {
766 margin-bottom: 20px;
767 }
768
769 .page-node-type-product-announcement .field--name-field-external-news-link,
770 .page-node-type-general-news-item .field--name-field-external-news-link {
771 margin-bottom: 20px;
772 }
773
774 .page-node-type-product-announcement .field--name-field-vendor-page,
775 .page-node-type-product-announcement .field--name-field-announced-products {
776 margin-bottom: 20px;
777 }
778
779
780 /* Search Results */
781
782
783 @media screen and (max-width: 600px) {
784 .path-search .region-content > ol {
785 width: 300px;
786 }
787 }
788 @media screen and (min-width: 601px) and (max-width 1000px) {
789 .path-search .region-content > ol {
790 width: 560px;
791 }
792 }
793 @media screen and (min-width: 1001px) {
794 .path-search .region-content > ol {
795 width: 900px;
796 }
797 }
798
799 .path-search .region-content > ol {
800 margin: 0 auto;
801 padding-left: 0;
802 overflow: auto;
803 }
804
805 .path-search .region-content > ol li {
806 width: 280px;
807 height: 320px;
808 margin: 0px auto;
809 padding: 10px;
810
811 float: left;
812
813 list-style: none;
814 overflow: hidden;
815 }
816
817 .path-search .region-content > ol li h3 {
818 text-align: center;
819 }
820
821 .path-search .region-content > ol li .search-image {
822 width: 220px;
823 height: 220px;
824
825 margin: 0 auto;
826
827 display: flex;
828 align-items: center;
829 }
830
831 .path-search .region-content > ol li p {
832 display: block;
833 width: 220px;
834 margin: 0 auto;
835 }
836
837 .path-search .region-content > ol li img {
838 }
839
840
841 /* Footer */
842
843 .footer {
844 background: #333;
845 color: #FFF;
846 }
847
848 #email-signup .email-input {
849 color: #000;
850 display: block;
851 margin-bottom: 10px;
852 }
853 #email-signup .action-button {
854 color: #000;
855 display: block;
856 }
857
858 /* full page width for footer */
859
860 .footer {
861 width: 100%;
862 }
863
864 .footer a { color: #edd400; }
865
866 .footer a:hover { color: #FFF; }
867
868 .footer h4 { font-weight: bold; }
869
870 .footer .copyright { font-size: 0.9em; text-align: center; width: 80%; margin-top: 1em; border-top: 1px solid #111; padding: 1em; }
871
872 #fsf-logo-footer { margin-bottom: 10px; }
873
874 @media print { #fsf-logo-footer { filter: invert(100%) } }
875