1//Breakpoints mixin
2@mixin mediaQuery($breakpoint) {
3  @if $breakpoint == "x-small" {
4    @media (min-width: 25.000em) { //400px
5      @content;
6    }
7  }
8  @if $breakpoint == "small" {
9    @media (min-width: 47.938em) { //767px
10      @content;
11    }
12  } @else if $breakpoint == "medium" {
13    @media (min-width: 64.000em) { //1024px
14      @content;
15    }
16  } @else if $breakpoint == "large" {
17    @media (min-width: 85.375em) { //1366px
18      @content;
19    }
20  } @else if $breakpoint == "x-large" {
21    @media (min-width: 100.000em) { //1600px
22      @content;
23    }
24  }
25}
26
27//Fonts mixin
28@mixin fontFamily {
29  font-family: Helvetica, Arial, Verdana, sans-serif;
30  font-weight: 200;
31}
32
33@mixin fontFamilyBold {
34  font-family: Helvetica, Arial, Verdana, sans-serif;
35  font-weight: 700;
36}
37
38@mixin fontCourierBold {
39  font-family: "Courier New", Helvetica, monospace, arial, sans-serif;
40  font-weight: 700;
41}
42
43//Navigation icons
44@mixin navIcons {
45  color: $white;
46  fill: $white;
47  max-height: 40px;
48  stroke-width: .5;
49  display: block;
50  width: 40px;
51  margin: 0 auto .5em auto;
52  .st0 {
53    fill: none;
54    stroke: #fff;
55    stroke-width: 2;
56    stroke-miterlimit: 10;
57  }
58  .st1 {
59    fill: none;
60    stroke: #fff;
61    stroke-width: 4;
62    stroke-miterlimit: 10;
63  }
64}
65
66//Transitions mixin
67@mixin fastTransition-all {
68  transition: all .5s ease;
69}
70
71@mixin slowTransition-all {
72  transition: all 1.5s ease;
73}
74
75//Custom SVG arrow
76@mixin bgImage__arrowDown-primary {
77  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: #19273c'></polygon></svg>");
78}
79
80@mixin bgImage__arrowDown-accent {
81  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: #3c6df0'></polygon></svg>");
82}
83
84@mixin bgImage__arrowDown-grey {
85  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' width='32' height='24' viewBox='0 0 32 24'><polygon points='0,0 32,0 16,24' style='fill: #b8c1c1'></polygon></svg>");
86}
87
88
89@mixin calcColumn-4 ($offset: 0) {
90  min-width: calc(100% * (1/4) - #{$offset});
91}
92
93
94@mixin calcColumn-3 {
95  min-width: calc(100% * (1/3) - 5px);
96}
97
98@mixin calcSplitColumn {
99  min-width: calc(100% * (1/2) - 5px);
100}
101
102@mixin vertCenter {
103  top: 50%;
104  transform: translateY(-50%);
105}
106
107@mixin indeterminate-bar {
108  background-image: repeating-linear-gradient(-45deg, rgba(251, 234, 174, 0.35), rgba(251, 234, 174, 0.35) 25px, rgba(244, 176, 0, 0.45) 25px, rgba(244, 176, 0, 0.45) 50px);
109  -webkit-animation: progress 2s linear infinite;
110  -moz-animation: progress 2s linear infinite;
111  animation: progress 2s linear infinite;
112  background-size: 130% 100%;
113
114  @-webkit-keyframes progress {
115    0% {
116      background-position: 0 0;
117    }
118    100% {
119      background-position: -70px 0;
120    }
121  }
122
123  @-moz-keyframes progress {
124    0% {
125      background-position: 0 0;
126    }
127    100% {
128      background-position: -70px 0;
129    }
130  }
131
132  @-ms-keyframes progress {
133    0% {
134      background-position: 0 0;
135    }
136    100% {
137      background-position: -70px 0;
138    }
139  }
140
141  @keyframes progress {
142    0% {
143      background-position: 0 0;
144    }
145    100% {
146      background-position: -70px 0;
147    }
148  }
149}
150