@iamproperty/components 1.0.14 → 2.3.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.
Files changed (212) hide show
  1. package/README.md +120 -12
  2. package/assets/.DS_Store +0 -0
  3. package/assets/css/core.min.css +1 -0
  4. package/assets/css/core.min.css.map +1 -0
  5. package/assets/css/style.min.css +1 -0
  6. package/assets/css/style.min.css.map +1 -0
  7. package/assets/favicons/android-chrome-192x192.png +0 -0
  8. package/assets/favicons/android-chrome-512x512.png +0 -0
  9. package/assets/favicons/apple-touch-icon.png +0 -0
  10. package/assets/favicons/favicon-16x16.png +0 -0
  11. package/assets/favicons/favicon-32x32.png +0 -0
  12. package/assets/favicons/favicon.ico +0 -0
  13. package/assets/fonts/qanelas-medium-webfont.woff +0 -0
  14. package/assets/fonts/qanelas-medium-webfont.woff2 +0 -0
  15. package/assets/fonts/qanelassoft-extrabold-webfont.woff +0 -0
  16. package/assets/fonts/qanelassoft-extrabold-webfont.woff2 +0 -0
  17. package/{src/assets → assets}/img/logo.png +0 -0
  18. package/assets/js/main.js +67 -0
  19. package/assets/js/modules/accordion.js +36 -0
  20. package/assets/js/modules/carousel.js +102 -0
  21. package/assets/js/modules/drawer.js +16 -0
  22. package/assets/js/modules/form.js +49 -0
  23. package/assets/js/modules/helpers.js +93 -0
  24. package/assets/js/modules/modal.js +90 -0
  25. package/assets/js/modules/nav.js +27 -0
  26. package/assets/js/modules/table.js +573 -0
  27. package/assets/js/modules/testimonial.js +83 -0
  28. package/assets/js/modules/youtubevideo.js +145 -0
  29. package/assets/js/scripts.bundle.js +871 -0
  30. package/assets/js/scripts.bundle.js.map +1 -0
  31. package/assets/js/scripts.bundle.min.js +7 -0
  32. package/assets/js/scripts.bundle.min.js.map +1 -0
  33. package/assets/sass/_components.scss +35 -0
  34. package/assets/sass/_corefiles.scss +58 -0
  35. package/assets/sass/_func.scss +9 -0
  36. package/assets/sass/_functions/functions.scss +95 -0
  37. package/assets/sass/_functions/mixins.scss +109 -0
  38. package/assets/sass/_functions/utilities.scss +238 -0
  39. package/assets/sass/_functions/variables.scss +418 -0
  40. package/assets/sass/components/accordion.scss +195 -0
  41. package/assets/sass/components/card.scss +168 -0
  42. package/assets/sass/components/cardDeck.scss +107 -0
  43. package/assets/sass/components/carousel.scss +265 -0
  44. package/assets/sass/components/charts.scss +562 -0
  45. package/assets/sass/components/drawer.scss +45 -0
  46. package/assets/sass/components/header.scss +57 -0
  47. package/assets/sass/components/modal.scss +133 -0
  48. package/assets/sass/components/nav.scss +619 -0
  49. package/assets/sass/components/property-searchbar.scss +138 -0
  50. package/assets/sass/components/snapshot.scss +69 -0
  51. package/assets/sass/components/tabs.scss +46 -0
  52. package/assets/sass/components/testimonial.scss +131 -0
  53. package/assets/sass/components/timeline.scss +93 -0
  54. package/assets/sass/core.scss +4 -0
  55. package/assets/sass/elements/buttons.scss +263 -0
  56. package/assets/sass/elements/container.scss +222 -0
  57. package/assets/sass/elements/forms.scss +128 -0
  58. package/assets/sass/elements/links.scss +95 -0
  59. package/assets/sass/elements/lists.scss +26 -0
  60. package/assets/sass/elements/tables.scss +247 -0
  61. package/assets/sass/elements/tooltips.scss +71 -0
  62. package/assets/sass/elements/type.scss +114 -0
  63. package/assets/sass/foundations/brand.scss +74 -0
  64. package/assets/sass/foundations/circles.scss +73 -0
  65. package/assets/sass/foundations/fonts.scss +17 -0
  66. package/assets/sass/foundations/icons.scss +46 -0
  67. package/assets/sass/foundations/media.scss +47 -0
  68. package/assets/sass/foundations/reboot.scss +120 -0
  69. package/assets/sass/foundations/root.scss +45 -0
  70. package/assets/sass/main.scss +5 -0
  71. package/assets/svg/flat/agreed.svg +1 -0
  72. package/assets/svg/flat/alert.svg +1 -0
  73. package/assets/svg/flat/asset-37.svg +1 -0
  74. package/assets/svg/flat/asset-73.svg +1 -0
  75. package/assets/svg/flat/asset-82.svg +1 -0
  76. package/assets/svg/flat/award.svg +1 -0
  77. package/assets/svg/flat/bath.svg +1 -0
  78. package/assets/svg/flat/bed.svg +1 -0
  79. package/assets/svg/flat/calculate.svg +1 -0
  80. package/assets/svg/flat/calendar.svg +1 -0
  81. package/assets/svg/flat/celebrate.svg +1 -0
  82. package/assets/svg/flat/chat-house.svg +1 -0
  83. package/assets/svg/flat/chat.svg +1 -0
  84. package/assets/svg/flat/circle.svg +1 -0
  85. package/assets/svg/flat/clean.svg +1 -0
  86. package/assets/svg/flat/clock.svg +1 -0
  87. package/assets/svg/flat/computer.svg +1 -0
  88. package/assets/svg/flat/down.svg +1 -0
  89. package/assets/svg/flat/edit.svg +1 -0
  90. package/assets/svg/flat/email.svg +1 -0
  91. package/assets/svg/flat/event.svg +1 -0
  92. package/assets/svg/flat/family.svg +1 -0
  93. package/assets/svg/flat/file.svg +1 -0
  94. package/assets/svg/flat/find.svg +1 -0
  95. package/assets/svg/flat/fireworks.svg +1 -0
  96. package/assets/svg/flat/fist-left.svg +1 -0
  97. package/assets/svg/flat/fist.svg +1 -0
  98. package/assets/svg/flat/folder.svg +1 -0
  99. package/assets/svg/flat/footprints.svg +1 -0
  100. package/assets/svg/flat/hand.svg +1 -0
  101. package/assets/svg/flat/hands.svg +1 -0
  102. package/assets/svg/flat/house-2.svg +1 -0
  103. package/assets/svg/flat/house.svg +1 -0
  104. package/assets/svg/flat/idea.svg +1 -0
  105. package/assets/svg/flat/judge-house.svg +1 -0
  106. package/assets/svg/flat/judge.svg +1 -0
  107. package/assets/svg/flat/keys-house.svg +1 -0
  108. package/assets/svg/flat/lock.svg +1 -0
  109. package/assets/svg/flat/mobile.svg +1 -0
  110. package/assets/svg/flat/money.svg +1 -0
  111. package/assets/svg/flat/monument.svg +1 -0
  112. package/assets/svg/flat/online-judgement.svg +1 -0
  113. package/assets/svg/flat/paint.svg +1 -0
  114. package/assets/svg/flat/person-2.svg +1 -0
  115. package/assets/svg/flat/person.svg +1 -0
  116. package/assets/svg/flat/phone.svg +1 -0
  117. package/assets/svg/flat/pin.svg +1 -0
  118. package/assets/svg/flat/pound.svg +1 -0
  119. package/assets/svg/flat/present.svg +1 -0
  120. package/assets/svg/flat/qualification.svg +1 -0
  121. package/assets/svg/flat/rocket.svg +1 -0
  122. package/assets/svg/flat/sale.svg +1 -0
  123. package/assets/svg/flat/save.svg +1 -0
  124. package/assets/svg/flat/scale.svg +1 -0
  125. package/assets/svg/flat/send.svg +1 -0
  126. package/assets/svg/flat/share.svg +1 -0
  127. package/assets/svg/flat/sofa.svg +1 -0
  128. package/assets/svg/flat/sold.svg +1 -0
  129. package/assets/svg/flat/star.svg +1 -0
  130. package/assets/svg/flat/stopwatch.svg +1 -0
  131. package/assets/svg/flat/task.svg +1 -0
  132. package/assets/svg/flat/telescope.svg +1 -0
  133. package/assets/svg/flat/thumb.svg +1 -0
  134. package/assets/svg/flat/time.svg +1 -0
  135. package/assets/svg/flat/up.svg +1 -0
  136. package/assets/svg/flat/valuation.svg +1 -0
  137. package/assets/svg/flat/value-house.svg +1 -0
  138. package/assets/svg/flat/warning.svg +1 -0
  139. package/assets/svg/flat/water.svg +1 -0
  140. package/assets/svg/icons.svg +51 -0
  141. package/assets/svg/illustrations/commuter1.svg +1 -0
  142. package/assets/svg/illustrations/commuter2.svg +1 -0
  143. package/assets/svg/illustrations/commuter3.svg +1 -0
  144. package/assets/svg/logo.svg +43 -0
  145. package/dist/components.common.js +2825 -252
  146. package/dist/components.common.js.map +1 -1
  147. package/dist/components.css +2 -1
  148. package/dist/components.css.map +1 -0
  149. package/dist/components.umd.js +2825 -252
  150. package/dist/components.umd.js.map +1 -1
  151. package/dist/components.umd.min.js +1 -1
  152. package/dist/components.umd.min.js.map +1 -1
  153. package/package.json +90 -57
  154. package/src/.DS_Store +0 -0
  155. package/src/components/Accordion/Accordion.vue +24 -0
  156. package/src/components/Accordion/AccordionItem.vue +43 -0
  157. package/src/components/Accordion/README.md +34 -0
  158. package/src/components/Banner/Banner.vue +38 -0
  159. package/src/components/Banner/README.md +24 -0
  160. package/src/components/Card/Card.vue +115 -0
  161. package/src/components/Card/README.md +24 -0
  162. package/src/components/CardDeck/CardDeck.vue +78 -0
  163. package/src/components/CardDeck/README.md +25 -0
  164. package/src/components/Carousel/Carousel.vue +86 -0
  165. package/src/components/Carousel/README.md +20 -0
  166. package/src/components/Chart/Chart.vue +246 -0
  167. package/src/components/Chart/README.md +18 -0
  168. package/src/components/Drawer/Drawer.vue +54 -0
  169. package/src/components/Drawer/README.md +23 -0
  170. package/src/components/Header/Header.vue +39 -0
  171. package/src/components/Header/README.md +28 -0
  172. package/src/components/Modal/Modal.vue +44 -0
  173. package/src/components/Modal/README.md +20 -0
  174. package/src/components/Nav/Nav.vue +129 -0
  175. package/src/components/Nav/README.md +23 -0
  176. package/src/components/PropertySearchbar/PropertySearchbar.vue +206 -0
  177. package/src/components/PropertySearchbar/README.md +26 -0
  178. package/src/components/Snapshot/README.md +21 -0
  179. package/src/components/Snapshot/Snapshot.vue +33 -0
  180. package/src/components/Tabs/README.md +27 -0
  181. package/src/components/Tabs/Tab.vue +17 -0
  182. package/src/components/Tabs/Tabs.vue +59 -0
  183. package/src/components/Testimonial/README.md +26 -0
  184. package/src/components/Testimonial/Testimonial.vue +61 -0
  185. package/src/components/Timeline/README.md +18 -0
  186. package/src/components/Timeline/Timeline.vue +25 -0
  187. package/src/elements/Input/Input.vue +236 -0
  188. package/src/elements/Input/README.md +18 -0
  189. package/src/elements/Table/README.md +55 -0
  190. package/src/elements/Table/Table.vue +112 -0
  191. package/src/foundations/Icon/Icon.vue +21 -0
  192. package/src/foundations/Icon/README.md +11 -0
  193. package/src/foundations/Logo/Logo.vue +39 -0
  194. package/src/foundations/Logo/README.md +20 -0
  195. package/src/foundations/YoutubeVideo/README.md +11 -0
  196. package/src/foundations/YoutubeVideo/YoutubeVideo.vue +24 -0
  197. package/src/helpers/strings.js +12 -0
  198. package/src/index.js +21 -6
  199. package/src/assets/css/default.css +0 -99
  200. package/src/assets/logo.png +0 -0
  201. package/src/assets/scss/_variables.scss +0 -13
  202. package/src/components/KeyFacts/KeyFact.vue +0 -45
  203. package/src/components/KeyFacts/KeyFactGroup.vue +0 -44
  204. package/src/components/KeyFacts/README.md +0 -23
  205. package/src/components/KeyInformation/KeyInformation.vue +0 -23
  206. package/src/components/KeyInformation/README.md +0 -32
  207. package/src/components/PropertyTaskIntro/PropertyTaskIntro.vue +0 -74
  208. package/src/components/PropertyTaskIntro/README.md +0 -27
  209. package/src/components/TaskTitle/README.md +0 -24
  210. package/src/components/TaskTitle/TaskTitle.vue +0 -68
  211. package/src/components/VendorTable/README.md +0 -63
  212. package/src/components/VendorTable/VendorTable.vue +0 -30
@@ -0,0 +1,26 @@
1
+ ol li,
2
+ ul li{
3
+ max-width: $content-max-width;
4
+ }
5
+
6
+ .breadcrumb {
7
+
8
+ font-size: rem(14);
9
+ padding-left: 0;
10
+ list-style: none;
11
+
12
+ li {
13
+ display: inline-block;
14
+
15
+ &:not(:first-child):before {
16
+ content: "\00A0/\00A0";
17
+ font-weight: bold;
18
+ color: var(--colour-link);
19
+ }
20
+
21
+ a {
22
+ text-decoration: none;
23
+ text-transform: uppercase;
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,247 @@
1
+ // #region Default table
2
+ table {
3
+ width: 100%;
4
+ font-size: rem(16);
5
+ border: none;
6
+ margin-bottom: rem(32);
7
+ overflow: auto;
8
+ }
9
+
10
+ td,th {
11
+ padding: rem(16) rem(32) rem(16) 0;
12
+ font-weight: normal;
13
+ text-align: left;
14
+ vertical-align: top;
15
+ border: none;
16
+ font-size: rem(16);
17
+ line-height: rem(24);
18
+
19
+ &:first-child {
20
+ padding-left: rem(8);
21
+ }
22
+ }
23
+
24
+ th {
25
+ font-weight: bold;
26
+ @include var(color,--colour-heading);
27
+ }
28
+
29
+ tr {
30
+ border-bottom: 1px solid currentColor;
31
+ @include var(border-color,--colour-border);
32
+
33
+ &:last-child {
34
+ border-bottom: 2px solid currentColor;
35
+ @include var(border-color,--colour-border);
36
+ }
37
+ }
38
+
39
+ thead {
40
+ tr:first-child {
41
+ border-top: 2px solid currentColor;
42
+ @include var(border-color,--colour-border);
43
+ }
44
+
45
+ th {
46
+ font-size: rem(16);
47
+ line-height: rem(24);
48
+ padding-bottom: rem(24);
49
+
50
+ @include media-breakpoint-up(sm) {
51
+
52
+ font-size: rem(18);
53
+ }
54
+
55
+ font-weight: bold;
56
+ vertical-align: bottom;
57
+ white-space: nowrap;
58
+ }
59
+ }
60
+
61
+ tbody:first-child{
62
+ tr:first-child {
63
+ border-top: 2px solid currentColor;
64
+ @include var(border-color,--colour-border);
65
+ }
66
+ }
67
+ // #endregion
68
+
69
+ // #region Table wrapper - Add via JS if needed, provides a safe space to scroll
70
+ .table__wrapper {
71
+ display: block;
72
+ width: calc(100% + 1rem);
73
+ padding-right: 1rem;
74
+ overflow-x: auto;
75
+ -webkit-overflow-scrolling: touch;
76
+ -ms-overflow-style: -ms-autohiding-scrollbar; // See https://github.com/twbs/bootstrap/pull/10057
77
+ margin-bottom: rem(32);
78
+
79
+ table {
80
+ margin-bottom: 0;
81
+ display: table;
82
+ overflow: hidden;
83
+ }
84
+ }
85
+ // #endregion
86
+
87
+ // #region Tables are only stacked on mobile
88
+ @media (max-width: 36em) {
89
+ .table__wrapper:not(.table-fullwidth) {
90
+ thead {
91
+ display: none;
92
+ }
93
+
94
+ tbody {
95
+ display: block;
96
+ border-top: 2px solid currentColor;
97
+ @include var(border-color,--colour-border);
98
+ }
99
+
100
+ tr {
101
+ display: block;
102
+ position: relative;
103
+ padding-top: 1rem;
104
+ padding-bottom: 1rem;
105
+ }
106
+
107
+ td,
108
+ th {
109
+ display: block;
110
+ padding-right: 0;
111
+ padding-top: 0;
112
+ padding-left: rem(8);
113
+
114
+ &[data-label]:before {
115
+ content: attr(data-label);
116
+ color: var(--colour-heading);
117
+ padding: 0;
118
+ margin-bottom: 0;
119
+ display: block;
120
+ font-weight: bold;
121
+ margin: 0;
122
+ }
123
+ }
124
+
125
+ &.table-minify tr:not(:hover) {
126
+ td:not(:first-child){
127
+ display: none;
128
+ }
129
+ }
130
+ }
131
+ }
132
+ // #endregion
133
+
134
+
135
+ // #region Table striped
136
+ .table-striped tbody tr:nth-of-type(odd) {
137
+
138
+ background-color: rgba(0, 0, 0, 0.1);
139
+
140
+ .bg-light & {
141
+
142
+ @include var(background-color,--colour-white);
143
+ }
144
+ }
145
+ // #endregion
146
+
147
+ // #region Table hover
148
+ .table-hover tbody tr {
149
+ &:hover,
150
+ &:focus {
151
+ background-color: rgba(0, 0, 0, 0.2);
152
+ }
153
+ }
154
+ // #endregion
155
+
156
+
157
+ // #region Sortable
158
+ [data-sortable] {
159
+
160
+ cursor: pointer;
161
+ position: relative;
162
+ user-select: none;
163
+ padding-right: 3.5rem;
164
+
165
+ &:hover {
166
+ color: var(--colour-hover);
167
+ }
168
+ }
169
+ [data-sortable]:after {
170
+
171
+ content: "";
172
+ position: absolute;
173
+ top:0;
174
+ right: 0;
175
+ width: 3.5rem;
176
+ height: 4rem;
177
+ display: block;
178
+ mask-image: var(--icon-sort);
179
+ mask-size: 0.6rem 0.8rem;
180
+ mask-repeat: no-repeat;
181
+ mask-position: calc(100% - 1.5rem) calc(50% - 0.25rem);
182
+
183
+ -webkit-mask-image: var(--icon-sort);
184
+ -webkit-mask-size: 0.6rem 0.8rem;
185
+ -webkit-mask-repeat: no-repeat;
186
+ -webkit-mask-position: calc(100% - 1.5rem) calc(50% - 0.25rem);
187
+ background-color: currentColor;
188
+ }
189
+
190
+ [data-sortable][aria-sort=ascending]:after {
191
+ --icon-sort: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' preserveAspectRatio='none'%3E%3Cpath d='M51 1l25 23 24 22H1l25-22z'/%3E%3Cpath opacity='.3' d='M51 101l25-23 24-22H1l25 22z'/%3E%3C/svg%3E");
192
+ }
193
+
194
+ [data-sortable][aria-sort=descending]:after {
195
+ --icon-sort: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='101' height='101' preserveAspectRatio='none'%3E%3Cpath opacity='.3' d='M51 1l25 23 24 22H1l25-22z'/%3E%3Cpath d='M51 101l25-23 24-22H1l25 22z'/%3E%3C/svg%3E");
196
+ }
197
+ // #endregion
198
+
199
+ // #region Pagination
200
+ .table__pagination select {
201
+ max-width: rem(240);
202
+ }
203
+ // #endregion
204
+
205
+ // #region Reorderable
206
+ .table-order-reset {
207
+
208
+ cursor: pointer;
209
+ position: relative;
210
+ width: 1rem;
211
+
212
+ &:hover {
213
+ color: var(--colour-hover);
214
+ }
215
+
216
+ overflow: hidden;
217
+ text-indent: -200%;
218
+
219
+ &:after {
220
+ content: "#";
221
+ position: absolute;
222
+ left: 0.5rem;
223
+ top: 1rem;
224
+ text-indent: 0;
225
+ }
226
+ }
227
+
228
+ [data-reorder] tr[draggable] {
229
+
230
+ cursor: move;
231
+
232
+ &:hover,
233
+ &:focus {
234
+ background-color: rgba(0, 0, 0, 0.2);
235
+ }
236
+
237
+ &.tr--dragging {
238
+ background: var(--colour-muted);
239
+ }
240
+
241
+ &.tr--dropable {
242
+
243
+ background-color: rgba(0, 0, 0, 0.2);
244
+ }
245
+ }
246
+
247
+ // #endregion
@@ -0,0 +1,71 @@
1
+ abbr[title],
2
+ .tooltip {
3
+
4
+ text-decoration: underline;
5
+ text-underline-offset: 0.2em;
6
+ text-decoration-thickness: 2px;
7
+ text-decoration-style: dashed;
8
+ text-decoration-color: var(--colour-underline);
9
+ position: relative;
10
+ cursor: help;
11
+
12
+ &:hover,
13
+ &:focus,
14
+ &:active{
15
+
16
+ text-decoration: none;
17
+ }
18
+ }
19
+
20
+ @mixin tooltip(){
21
+
22
+ display: block;
23
+ z-index: 2;
24
+ position: absolute;
25
+ top: calc(100% + 0.25rem);
26
+ left: 50%;
27
+ min-width: max(120%, #{rem(100)});
28
+ transform: translate(-50%,0);
29
+ background: #eee;
30
+ padding: 0.5em;
31
+ border-radius: 3px;
32
+ box-shadow: 1px 1px 3px 1px rgba(0,0,0,0.3);
33
+ }
34
+
35
+ .tooltip {
36
+
37
+ .tooltip__content {
38
+
39
+ opacity: 0;
40
+ position: absolute;
41
+
42
+ }
43
+
44
+ &:hover,
45
+ &:focus,
46
+ &:active{
47
+
48
+ .tooltip__content {
49
+
50
+ opacity: 1;
51
+ @include tooltip();
52
+ }
53
+ }
54
+ }
55
+
56
+ @media (hover: none) {
57
+
58
+ abbr[title],
59
+ .tooltip[title] {
60
+
61
+ &:hover,
62
+ &:focus,
63
+ &:active{
64
+
65
+ &::after {
66
+ content: attr(title);
67
+ @include tooltip();
68
+ }
69
+ }
70
+ }
71
+ }
@@ -0,0 +1,114 @@
1
+ // #region headings
2
+ %heading {
3
+ clear: both;
4
+ @include var(font-weight,--heading-weight);
5
+ @include var(font-family, --font-heading);
6
+ @include var(color,--colour-heading);
7
+ color: var(--colour-heading,var(--colour-primary));
8
+ display: block;
9
+ //margin-bottom: clamp(1rem,0.5em,0.5em);
10
+ //line-height: clamp(2.5rem,1em,1.2em);
11
+ text-indent: -0.04em;
12
+ letter-spacing: -0.01em;
13
+ }
14
+
15
+ h1,
16
+ .h1,
17
+ h2,
18
+ .h2 {
19
+ @extend %heading;
20
+ }
21
+ h3,
22
+ .h3 {
23
+ @extend %heading;
24
+ }
25
+ h4,
26
+ .h4,
27
+ h5,
28
+ .h5,
29
+ h6,
30
+ .h6 {
31
+
32
+ @extend %heading;
33
+ }
34
+
35
+ .display-1,
36
+ .display-2,
37
+ .display-3,
38
+ .display-4 {
39
+
40
+ @extend %heading;
41
+ font-size: var(--fs-display);
42
+ }
43
+
44
+ // #endregion
45
+
46
+ p {
47
+ max-width: $content-max-width;
48
+ }
49
+
50
+ p + p {
51
+ margin-top: rem(-16);
52
+ }
53
+
54
+ .strapline {
55
+ @include var(font-size,--fs-strapline);
56
+ @include var(font-family, --font-heading);
57
+ @include var(color,--colour-secondary);
58
+ line-height: 1.2;
59
+ font-weight: 700;
60
+ margin-bottom: clamp(1rem,0.5em,0.5em);
61
+ //text-shadow: ;
62
+
63
+ h1 + &,
64
+ .h1 + & {
65
+ margin-top: -0.5rem;
66
+ margin-bottom: 2rem;
67
+ }
68
+ }
69
+
70
+ .lead {
71
+ @include var(font-size,--fs-strapline);
72
+ @include var(font-family, --font-heading);
73
+ font-weight: 700;
74
+ line-height: 1.2;
75
+ margin-bottom: 3rem;
76
+ @include var(color,--colour-primary);
77
+ }
78
+
79
+ blockquote {
80
+
81
+ quotes: "“" "”" "‘" "’";
82
+ margin-bottom: 1rem;
83
+
84
+ p {
85
+ @include var(font-size,--fs-4);
86
+ @include var(color,--colour-heading);
87
+ margin-top: 0;
88
+ margin-bottom: 1rem;
89
+ }
90
+
91
+ & p:first-child:before {
92
+ content: open-quote;
93
+ }
94
+ & p:last-of-type:after {
95
+ content: close-quote;
96
+ }
97
+
98
+ cite {
99
+ @include var(font-size,--fs-5);
100
+ @include var(color,--colour-heading);
101
+ font-style: normal;
102
+ font-weight: bold;
103
+ }
104
+ }
105
+
106
+ .stat {
107
+ font-size: rem(48);
108
+ @extend %heading;
109
+ text-decoration: underline;
110
+ text-underline-offset: 1rem;
111
+ text-decoration-color: var(--colour-secondary-theme);
112
+ text-decoration-thickness: 0.4rem;
113
+ margin-bottom: 2rem;
114
+ }
@@ -0,0 +1,74 @@
1
+ .brand {
2
+
3
+ --svg-width: #{em(380,130)};
4
+
5
+ &--sold {
6
+ --svg-width: #{em(247,130)};
7
+ }
8
+
9
+ &--key {
10
+ --svg-width: #{em(228,130)};
11
+ }
12
+
13
+ &--compliance,
14
+ &--movebutler {
15
+ --svg-width: #{em(740,130)};
16
+ }
17
+
18
+ &--medwaylaw {
19
+ --svg-width: #{em(465,130)};
20
+ }
21
+
22
+ display: inline-flex;
23
+ flex-direction: row;
24
+ flex-wrap: nowrap;
25
+ align-items: center;
26
+ padding-right: rem(16);
27
+ padding-bottom: rem(16);
28
+ min-width: 100%;
29
+ min-width: Min(100%, var(--svg-width));
30
+ font-size: rem(64);
31
+ @include var(color,--colour-primary);
32
+
33
+ /* Restrict the logo colours so that only text-secondary can be defined */
34
+ &[class*="text-"]:not(.text-secondary){
35
+ color: inherit!important;
36
+ }
37
+
38
+ &[class*="text-"].text-secondary{
39
+ color: var(--colour-secondary-theme)!important;
40
+ }
41
+
42
+ svg {
43
+ fill: currentColor;
44
+ height: 1em;
45
+ width: 100%;
46
+ max-width: var(--svg-width);
47
+ }
48
+
49
+ span {
50
+ white-space: nowrap;
51
+ font-size: 1rem;
52
+ padding-left: rem(16);
53
+ line-height: 1;
54
+ font-weight: bold;
55
+ display: inline-block;
56
+ text-decoration: none;
57
+ }
58
+ }
59
+
60
+ a.brand,
61
+ a .brand {
62
+
63
+ @include var(color,--colour-primary);
64
+ }
65
+
66
+ a.brand:hover,
67
+ a.brand:focus,
68
+ a.brand:active,
69
+ a:hover .brand,
70
+ a:focus .brand,
71
+ a:active .brand {
72
+
73
+ color: currentColor!important;
74
+ }
@@ -0,0 +1,73 @@
1
+ .circle {
2
+ position: relative;
3
+ border-radius: 50%;
4
+ height: 1em;
5
+ width: 1em;
6
+ display: inline-block;
7
+ font-size: rem(200);
8
+ overflow: hidden;
9
+ @include var(color,--colour-secondary);
10
+
11
+ &:not([class*="gradient-"]){
12
+
13
+ border: 2px solid currentColor;
14
+ }
15
+
16
+ &:not([class*="border-"]):before{
17
+
18
+ background-color: currentColor;
19
+ }
20
+
21
+ &:not([class*="gradient-"]):before {
22
+ content: "";
23
+ display: block;
24
+ position: absolute;
25
+ top: 0;
26
+ left: 0;
27
+ width: 100%;
28
+ height: 100%;
29
+ mask-image: var(--icon-bg);
30
+ mask-size: rem(34);
31
+ mask-repeat: repeat;
32
+ mask-position: 50% 50%;
33
+ -webkit-mask-image: var(--icon-bg);
34
+ -webkit-mask-size: rem(34);
35
+ -webkit-mask-repeat: repeat;
36
+ -webkit-mask-position: 50% 51%;
37
+ }
38
+
39
+ &--cross:before,
40
+ &--plus:before {
41
+
42
+ background-color: currentColor;
43
+ --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' style='stroke-width: 1.25px; stroke: black;' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M-3.3,20.41l6.6-6.82m.11,6.71-6.82-6.6M13.7,37.41l6.6-6.82m.11,6.71-6.82-6.6M13.7,3.41l6.6-6.82m.11,6.71L13.59-3.3M30.7,20.41l6.6-6.82m.11,6.71-6.82-6.6'/%3E%3C/svg%3E");
44
+ }
45
+
46
+ &--plus:before {
47
+
48
+ transform: rotate(46deg);
49
+ }
50
+
51
+ &--stripe:before {
52
+
53
+ background-color: currentColor;
54
+ --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' style='stroke-width: 2px; stroke: black;' xmlns='http://www.w3.org/2000/svg'%3E%3Cline y1='8.5' x2='34' y2='8.5' /%3E%3Cline y1='25.5' x2='34' y2='25.5' /%3E%3C/svg%3E");
55
+ transform: rotate(45deg);
56
+ }
57
+
58
+ &--dots:before {
59
+
60
+ background-color: currentColor;
61
+ --icon-bg: url("data:image/svg+xml,%3Csvg width='34' height='34' viewBox='0 0 34 34' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='17' r='3' /%3E%3Ccircle cy='17' r='3' /%3E%3Ccircle cx='34' cy='17' r='3' /%3E%3Ccircle cx='17' cy='34' r='3' /%3E%3C/svg%3E");
62
+ }
63
+
64
+ // Add an image into a circle
65
+ > img {
66
+ position: absolute;
67
+ top: 0;
68
+ left: 0;
69
+ width: 100%;
70
+ height: 100%;
71
+ object-fit: cover;
72
+ }
73
+ }
@@ -0,0 +1,17 @@
1
+ $fontPath: '../fonts/' !default;
2
+
3
+ @font-face {
4
+ font-family: 'qanelasmedium';
5
+ src: url($fontPath+'qanelas-medium-webfont.woff2') format('woff2'),
6
+ url($fontPath+'qanelas-medium-webfont.woff') format('woff');
7
+ font-weight: normal;
8
+ font-style: normal;
9
+ }
10
+
11
+ @font-face {
12
+ font-family: 'qanelas_softextrabold';
13
+ src: url($fontPath+'qanelassoft-extrabold-webfont.woff2') format('woff2'),
14
+ url($fontPath+'qanelassoft-extrabold-webfont.woff') format('woff');
15
+ font-weight: bold;
16
+ font-style: normal;
17
+ }
@@ -0,0 +1,46 @@
1
+ .icon {
2
+ fill: transparent;
3
+ stroke: transparent;
4
+ @include var(color,--colour-primary-theme);
5
+ width: rem(64);
6
+ height: rem(64);
7
+ display: inline-block;
8
+
9
+ .icon__bg {
10
+ fill: #ffffff;
11
+ }
12
+ .icon__fill {
13
+ @include var(fill,--colour-secondary-theme);
14
+ }
15
+ .icon__outline {
16
+ stroke-width: 3px;
17
+ stroke: currentColor;
18
+ }
19
+
20
+ button &,
21
+ a & {
22
+ width: 1em;
23
+ height: 1em;
24
+ vertical-align: text-top;
25
+ margin-top: 0.15em;
26
+ margin-inline: 0.25em;
27
+ }
28
+
29
+ &[class*="text-"]{
30
+ fill: currentColor;
31
+ }
32
+
33
+ & + .icon {
34
+ margin-inline-start: 1rem;
35
+ }
36
+ }
37
+
38
+ @include inline-text(){
39
+ .icon {
40
+ width: 1em;
41
+ height: 1em;
42
+ vertical-align: text-top;
43
+ margin-top: 0.15em;
44
+ margin-inline: 0.25em;
45
+ }
46
+ }
@@ -0,0 +1,47 @@
1
+ img {
2
+ max-width: 100%;
3
+ }
4
+
5
+ .ratio {
6
+ > img:first-child:last-child {
7
+ object-fit: cover;
8
+ }
9
+ }
10
+
11
+ // #region Youtube
12
+ .youtube-embed {
13
+
14
+ a,
15
+ iframe {
16
+ position: absolute;
17
+ top: 0;
18
+ left: 0;
19
+ width: 100%;
20
+ height: 100%;
21
+ }
22
+
23
+ a:before,
24
+ a:after {
25
+ display: none;
26
+ }
27
+
28
+ img {
29
+ position: absolute;
30
+ top: 50%;
31
+ left: 50%;
32
+ width: 100%;
33
+ height: 100%;
34
+ transform: translate(-50%,-50%);
35
+ object-fit: cover;
36
+ z-index: 1;
37
+ }
38
+
39
+ .btn-secondary {
40
+ position: absolute;
41
+ top: 50%;
42
+ left: 50%;
43
+ transform: translate(-50%,-50%);
44
+ z-index: 2;
45
+ }
46
+ }
47
+ // #endregion