The Plus Addons for Elementor | FREE Elementor Widgets & Elementor Templates, Header Menu, Blog Post Builder, Dark Mode, Full-Page Scroll, Cross Domain Copy - Version 1.1.0

Version Description

  • Minor Bug Fixes
  • Post fixed "Lite" in plugin name
Download this release

Release Info

Developer posimyththemes
Plugin Icon wp plugin The Plus Addons for Elementor | FREE Elementor Widgets & Elementor Templates, Header Menu, Blog Post Builder, Dark Mode, Full-Page Scroll, Cross Domain Copy
Version 1.1.0
Comparing to
See all releases

Version 1.1.0

Files changed (88) hide show
  1. assets/css/admin/theplus-ele-admin.css +512 -0
  2. assets/css/ajax-loader.gif +0 -0
  3. assets/css/extra/fonts/slick.eot +0 -0
  4. assets/css/extra/fonts/slick.svg +14 -0
  5. assets/css/extra/fonts/slick.ttf +0 -0
  6. assets/css/extra/fonts/slick.woff +0 -0
  7. assets/css/extra/lity.css +1 -0
  8. assets/css/extra/slick.min.css +1 -0
  9. assets/css/extra/tp-bootstrap-grid.css +6 -0
  10. assets/css/extra/tp-bootstrap-grid.css.map +1 -0
  11. assets/css/main/theplus-blog-style.css +178 -0
  12. assets/css/main/theplus-cf7-style.css +130 -0
  13. assets/css/main/theplus-client-style.css +57 -0
  14. assets/css/main/theplus-gallery-style.css +187 -0
  15. assets/css/main/theplus-info-box-style.css +83 -0
  16. assets/css/main/theplus-pricing-table.css +169 -0
  17. assets/css/main/theplus-tabs-tours.css +260 -0
  18. assets/css/main/theplus-team-member-style.css +154 -0
  19. assets/css/main/theplus-testimonial-style.css +201 -0
  20. assets/css/main/theplus_style.css +2796 -0
  21. assets/css/main/theplus_style_min.css +1 -0
  22. assets/images/ajax-loader.gif +0 -0
  23. assets/images/lazy_load.gif +0 -0
  24. assets/images/placeholder-grid.jpg +0 -0
  25. assets/images/post-type-screenshot.png +0 -0
  26. assets/images/taxonomy-screenshot.png +0 -0
  27. assets/images/thepluslogo-small.png +0 -0
  28. assets/images/thepluslogo.png +0 -0
  29. assets/js/admin/theplus-admin.js +12 -0
  30. assets/js/extra/app.min.js +115 -0
  31. assets/js/extra/easepack.min.js +12 -0
  32. assets/js/extra/imagesloaded.pkgd.min.js +7 -0
  33. assets/js/extra/isotope.pkgd.js +12 -0
  34. assets/js/extra/jquery.downCount.js +5 -0
  35. assets/js/extra/jquery.mousewheel.min.js +8 -0
  36. assets/js/extra/jquery.waypoints.js +7 -0
  37. assets/js/extra/lity.min.js +57 -0
  38. assets/js/extra/modernizr.min.js +1 -0
  39. assets/js/extra/numscroller.js +88 -0
  40. assets/js/extra/packery-mode.pkgd.min.js +6 -0
  41. assets/js/extra/slick.min.js +1 -0
  42. assets/js/extra/velocity.min.js +4 -0
  43. assets/js/extra/velocity.ui.js +33 -0
  44. assets/js/main/theplus-custom.js +1011 -0
  45. assets/js/main/theplus-custom.min.js +1 -0
  46. includes/blog/blog-style-1.php +40 -0
  47. includes/blog/format-image.php +33 -0
  48. includes/blog/get-excerpt.php +3 -0
  49. includes/blog/meta-date.php +1 -0
  50. includes/blog/post-meta-title.php +6 -0
  51. includes/client/client-style-1.php +18 -0
  52. includes/client/format-image.php +19 -0
  53. includes/client/post-meta-title.php +8 -0
  54. includes/gallery/format-image.php +25 -0
  55. includes/gallery/gallery-style-1.php +39 -0
  56. includes/gallery/get-excerpt.php +3 -0
  57. includes/gallery/meta-icon.php +6 -0
  58. includes/gallery/meta-title.php +6 -0
  59. includes/plus-options/cmb2-conditionals.js +21 -0
  60. includes/plus-options/cmb2-conditionals.php +210 -0
  61. includes/plus-options/custom-metabox/clients_options.php +28 -0
  62. includes/plus-options/custom-metabox/teammember_options.php +64 -0
  63. includes/plus-options/custom-metabox/testimonial_option.php +50 -0
  64. includes/plus-options/includes.php +24 -0
  65. includes/plus-options/metabox/Gruntfile.js +112 -0
  66. includes/plus-options/metabox/helpers/cmb_Meta_Box_Sanitize.php +346 -0
  67. includes/plus-options/metabox/helpers/cmb_Meta_Box_Show_Filters.php +105 -0
  68. includes/plus-options/metabox/helpers/cmb_Meta_Box_ajax.php +203 -0
  69. includes/plus-options/metabox/helpers/cmb_Meta_Box_field.php +497 -0
  70. includes/plus-options/metabox/helpers/cmb_Meta_Box_types.php +794 -0
  71. includes/plus-options/metabox/images/ico-delete.png +0 -0
  72. includes/plus-options/metabox/images/ui-bg_flat_0_aaaaaa_40x100.png +0 -0
  73. includes/plus-options/metabox/images/ui-bg_flat_75_ffffff_40x100.png +0 -0
  74. includes/plus-options/metabox/images/ui-bg_glass_55_fbf9ee_1x400.png +0 -0
  75. includes/plus-options/metabox/images/ui-bg_glass_65_ffffff_1x400.png +0 -0
  76. includes/plus-options/metabox/images/ui-bg_glass_75_dadada_1x400.png +0 -0
  77. includes/plus-options/metabox/images/ui-bg_glass_75_e6e6e6_1x400.png +0 -0
  78. includes/plus-options/metabox/images/ui-bg_glass_95_fef1ec_1x400.png +0 -0
  79. includes/plus-options/metabox/images/ui-bg_highlight-soft_75_cccccc_1x100.png +0 -0
  80. includes/plus-options/metabox/images/ui-icons_222222_256x240.png +0 -0
  81. includes/plus-options/metabox/images/ui-icons_2e83ff_256x240.png +0 -0
  82. includes/plus-options/metabox/images/ui-icons_454545_256x240.png +0 -0
  83. includes/plus-options/metabox/images/ui-icons_888888_256x240.png +0 -0
  84. includes/plus-options/metabox/images/ui-icons_cd0a0a_256x240.png +0 -0
  85. includes/plus-options/metabox/init.php +1187 -0
  86. includes/plus-options/metabox/js/cmb.js +797 -0
  87. includes/plus-options/metabox/js/cmb.min.js +1 -0
  88. includes/plus-options/metabox/js/jquery.datePicker.min.js +1960 -0
assets/css/admin/theplus-ele-admin.css ADDED
@@ -0,0 +1,512 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .elementor-control .elementor-control.elementor-control-separator-after+.elementor-control-separator-default, .elementor-control.elementor-control-separator-after+.elementor-control-type-tabs,.elementor-control.elementor-control-type-repeater .elementor-control.elementor-control-separator-before {
2
+ padding-top: 15px;
3
+ }
4
+ .elementor-control-type-repeater .elementor-control:before{
5
+ display: block !important;
6
+ }
7
+ #elementor-panel-category-theplus-addons .elementor-element,#elementor-panel-elements .elementor-element .theplus_backend_icon{
8
+ position: relative;
9
+ }
10
+ #elementor-panel-category-plus-essential .elementor-element .icon .theplus_backend_icon{
11
+ padding: 5px 10px;
12
+ display: inline-block;
13
+ background: #3882f7;
14
+ color: #fff;
15
+ border-radius: 5px;
16
+ box-shadow: 0px 0px 35px -4px rgba(56, 130, 247, 0.43);
17
+ min-width: 50px;
18
+ min-height: 50px;
19
+ line-height: 40px;
20
+ font-size: 22px;
21
+ }
22
+ #elementor-panel-category-plus-listing .elementor-element .icon .theplus_backend_icon{
23
+ padding: 5px 10px;
24
+ display: inline-block;
25
+ background: #ff5a6e;
26
+ color: #fff;
27
+ border-radius: 5px;
28
+ box-shadow: 0px 0px 35px -4px rgba(255, 90, 110, 0.43);
29
+ min-width: 50px;
30
+ min-height: 50px;
31
+ line-height: 40px;
32
+ font-size: 22px;
33
+ }
34
+ #elementor-panel-category-plus-creatives .elementor-element .icon .theplus_backend_icon{
35
+ padding: 5px 10px;
36
+ display: inline-block;
37
+ background: #8072fc;
38
+ color: #fff;
39
+ border-radius: 5px;
40
+ box-shadow: 0px 0px 35px -4px rgba(128, 114, 252, 0.43);
41
+ min-width: 50px;
42
+ min-height: 50px;
43
+ line-height: 40px;
44
+ font-size: 22px;
45
+ }
46
+ #elementor-panel-category-plus-tabbed .elementor-element .icon .theplus_backend_icon{
47
+ padding: 5px 10px;
48
+ display: inline-block;
49
+ background: #6fc784;
50
+ color: #fff;
51
+ border-radius: 5px;
52
+ box-shadow: 0px 0px 35px -4px rgba(111, 199, 132, 0.43);
53
+ min-width: 50px;
54
+ min-height: 50px;
55
+ line-height: 40px;
56
+ font-size: 22px;
57
+ }
58
+ #elementor-panel-category-plus-adapted .elementor-element .icon .theplus_backend_icon {
59
+ padding: 5px 10px;
60
+ display: inline-block;
61
+ background: #71d1dc;
62
+ color: #fff;
63
+ border-radius: 5px;
64
+ box-shadow: 0px 0px 35px -4px rgba(113, 209, 220, 0.43);
65
+ min-width: 50px;
66
+ min-height: 50px;
67
+ line-height: 40px;
68
+ font-size: 22px;
69
+ }
70
+ #elementor-panel-category-theplus-addons .elementor-element .title, #elementor-panel-category-theplus-addons .elementor-element .icon {
71
+ color: #3351a6;
72
+ }
73
+ #elementor-panel-elements .elementor-element .theplus_backend_icon:after{
74
+ display:none;
75
+ }
76
+ .elementor-panel .theplus-pro, .elementor-panel .theplus-pro a {
77
+ color: #a4afb7;
78
+ letter-spacing: 1px;
79
+ line-height: 1.8;
80
+ font-style: normal;
81
+ }
82
+
83
+ .elementor-panel .theplus-pro a {
84
+ text-transform: uppercase;
85
+ text-decoration: underline;
86
+ color: #f54 !important;
87
+ }
88
+ .elementor-control.plus-pro-version .elementor-control-field {
89
+ display: none;
90
+ }
91
+ /*plus options css*/
92
+ #ptplus-banner-wrap {
93
+ position: relative;
94
+ display: block;
95
+ padding: 0;
96
+ margin: 18px 0px 0px 0px;
97
+ min-height: 115px;
98
+ line-height: 115px;
99
+ -webkit-box-sizing: content-box;
100
+ box-sizing: content-box;
101
+ }
102
+ #ptplus-banner {
103
+ position: absolute;
104
+ display: block;
105
+ top: 0;
106
+ width: 100%;
107
+ padding: 0;
108
+ margin: 0;
109
+ background: #8072fc;
110
+ white-space: nowrap;
111
+ -webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
112
+ box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
113
+ border-top-right-radius: 10px;
114
+ border-top-left-radius: 10px;
115
+ }
116
+ .theplus_options h2.nav-tab-wrapper .nav-tab:last-child {
117
+ border-top-right-radius: 10px;
118
+ }
119
+ .theplus_options h2.nav-tab-wrapper .nav-tab:first-child {
120
+ border-top-left-radius: 10px;
121
+ }
122
+ a.ptplus-premium-link {
123
+ position: relative;
124
+ text-align: right;
125
+ font-size: 15px;
126
+ line-height: inherit;
127
+ padding-right: 15px;
128
+ float: right;
129
+ }
130
+ #ptplus-banner h2 {
131
+ margin: 0;
132
+ padding: 20px;
133
+ line-height: 50px;
134
+ white-space: nowrap;
135
+ float: left;
136
+ color: #fff;
137
+ padding-top: 36px;
138
+ font-size: 20px;
139
+ font-weight: 500;
140
+ }
141
+ .pt_plus_post_notice {
142
+ background: rgba(255, 33, 79, 0.71);
143
+ padding: 15px;
144
+ border-radius: 5px;
145
+ color: #fff;
146
+ letter-spacing: 0.6px;
147
+ line-height: 1.3;
148
+ }
149
+ #ptplus-banner h2 span img {
150
+ position: relative;
151
+ display: inline-block;
152
+ width: 65px;
153
+ padding-right:20px;
154
+ }
155
+ .theplus-current-version.wp-badge {
156
+ background-size: 35px;
157
+ background-position: center 30px;
158
+ text-align: center;
159
+ float: right;
160
+ height: 87px;
161
+ padding-top: 25px;
162
+ box-shadow: none;
163
+ background:url(../../images/thepluslogo-small.png) center 25px no-repeat;
164
+ }
165
+ .theplus_about-tab {
166
+ position: relative;
167
+ display: block;
168
+ padding: 10px 30px 20px;
169
+ }
170
+ .theplus_about-tab .feature-section {
171
+ position: relative;
172
+ display: inline-block;
173
+ width: 100%;
174
+ }
175
+ .theplus_about-tab .col-xs-6 {
176
+ width: 50%;
177
+ position: relative;
178
+ float: left;
179
+ min-height: 1px;
180
+ padding-left: 15px;
181
+ padding-right: 15px;
182
+ box-sizing: border-box;
183
+ }
184
+ a.nav-tab.plus-goto-pro:not(.nav-tab-active) {
185
+ background: #ff5a6e !important;
186
+ border-color: #ff5a6e !important;
187
+ }
188
+ a.nav-tab.plus-goto-pro.nav-tab-active {
189
+ color: #ff5a6e !important;
190
+ }
191
+
192
+ @media (max-width:600px){
193
+ .theplus_about-tab .col-xs-6 {
194
+ width: 100%;
195
+ }
196
+ }
197
+ .theplus_options {
198
+ position: relative;
199
+ display: block;
200
+ background: #fff;
201
+ box-shadow: 0px 0px 35px 1px #d0d0d0;
202
+ margin-right: 20px;
203
+ border-radius: 10px;
204
+ }
205
+ .theplus_options table.cmb_metabox select {
206
+ width: auto;
207
+ }
208
+ .theplus_options table.cmb_metabox {
209
+ clear: both;
210
+ table-layout: auto;
211
+ }
212
+ #compress_minify_css, #compress_minify_js,#gmap_api_switch{
213
+ min-width: 300px;
214
+ }
215
+ .theplus_options h2.nav-tab-wrapper {
216
+ padding: 30px 30px 0px;
217
+ border-bottom: 1px solid #8072fc;
218
+ }
219
+ .theplus_form_content tr.cmb-type-title h3.cmb_metabox_title {
220
+ font-size: 21px;
221
+ }
222
+ .wp-core-ui .theplus_options .button-primary {
223
+ padding: 10px 50px;
224
+ box-shadow: 0px 0px 30px -6px #6fc7848f;
225
+ background: #6fc784;
226
+ height: auto;
227
+ display: inline-block;
228
+ color: #fff;
229
+ border: 0px;
230
+ text-shadow: none;
231
+ font-size: 15px;
232
+ font-weight: 600;
233
+ letter-spacing: 1px;
234
+ }
235
+ .wp-core-ui .theplus_options .button-primary:focus{
236
+ outline:none;
237
+ }
238
+ .theplus_options table.cmb_metabox th label {
239
+ margin-top: 2px;
240
+ display: block;
241
+ font-size: 13px;
242
+ font-weight: 500;
243
+ }
244
+ .wp-core-ui .theplus_options .button-primary:hover {
245
+ transform: translateY(-2px);
246
+ transition: .2s linear;
247
+ }
248
+ .theplus_options h2.nav-tab-wrapper .nav-tab {
249
+ background: #8072fc;
250
+ border: 1px solid #8072fc;
251
+ color: #fff;
252
+ margin: 0;
253
+ border-bottom: 0px;
254
+ padding: 10px 20px;
255
+ font-size: 15px;
256
+ font-weight: 400;
257
+ box-shadow: none !important;
258
+ }
259
+
260
+ .theplus_options h2.nav-tab-wrapper .nav-tab.nav-tab-active {
261
+ background: #fff;
262
+ color: #8072fc;
263
+ position: relative;
264
+ font-weight: 700;
265
+ }
266
+
267
+ .theplus_options .nav-tab-wrapper .nav-tab.nav-tab-active:after{
268
+ content: '';
269
+ position: absolute;
270
+ border-bottom: 1px solid #fff;
271
+ width: 100%;
272
+ left: 0;
273
+ bottom: -1px;
274
+ }
275
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list li {
276
+ position: relative;
277
+ display: inline-block;
278
+ cursor: pointer;
279
+ -webkit-user-select: none;
280
+ -moz-user-select: none;
281
+ -ms-user-select: none;
282
+ user-select: none;
283
+ }
284
+
285
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list label:before {
286
+ content: '';
287
+ position: absolute;
288
+ top: 6px;
289
+ left: 0;
290
+ width: 30px;
291
+ height: 4px;
292
+ background-color: #ff5a6e;
293
+ border-radius: 10px;
294
+ -webkit-transition: all .3s ease;
295
+ transition: all .3s ease;
296
+ }
297
+
298
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list label:after {
299
+ content: '';
300
+ position: absolute;
301
+ top: 0;
302
+ left: 0;
303
+ height: 15px;
304
+ width: 15px;
305
+ background-color: #ff5a6e;
306
+ border-radius: 50%;
307
+ -webkit-transition: all .3s ease;
308
+ transition: all .3s ease;
309
+ -webkit-animation-name: pulsein;
310
+ animation-name: pulsein;
311
+ -webkit-animation-duration: .3s;
312
+ animation-duration: .3s;
313
+ }
314
+
315
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list label {
316
+ position: relative;
317
+ padding-left: 40px;
318
+ }
319
+
320
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list input[type=checkbox]:checked + label:after {
321
+ background-color: #8072fc;
322
+ -webkit-transform: translateX(15px);
323
+ transform: translateX(15px);
324
+ -webkit-animation-name: pulseout;
325
+ animation-name: pulseout;
326
+ -webkit-animation-duration: .3s;
327
+ animation-duration: .3s;
328
+ }
329
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list input[type=checkbox] {
330
+ display: none;
331
+ }
332
+ ul.cmb_checkbox_list.cmb_list input[type=checkbox]:checked + label:before {
333
+ background-color: #8072fc;
334
+ }
335
+ .theplus_form_content tr.cmb-type-title {
336
+ border-bottom: 1px solid #ecebeb;
337
+ }
338
+ .theplus_form_content tr.cmb-type-title td {
339
+ padding-bottom: 5px;
340
+ padding-left: 0px;
341
+ }
342
+ .mce-container.mce-panel.mce-floatpanel.mce-window.mce-in, .mce-container.mce-panel.mce-floatpanel.mce-menu.mce-menu-align {
343
+ z-index: 100101 !important
344
+ }
345
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list li {
346
+ width: 30% !important;
347
+ float: left;
348
+ margin-bottom: 8px;
349
+ margin-top: 8px;
350
+ }
351
+ .theplus_form_content table.form-table th {
352
+ padding-left: 25px;
353
+ }
354
+ .theplus_form_content {
355
+ position: relative;
356
+ display: block;
357
+ padding: 20px 30px;
358
+ }
359
+ .theplus_form_content ul.cmb_checkbox_list.cmb_list {
360
+ position: relative;
361
+ display: block;
362
+ width: 100%;
363
+ float: left;
364
+ }
365
+ .theplus_about-tab h2.plus-pro-version-today {
366
+ margin: 20px 15px;
367
+ padding: 0 !important;
368
+ display: inline-block;
369
+ line-height: 1;
370
+ font-size: 24px;
371
+ height: auto;
372
+ }
373
+ .theplus_about-tab .plus-pro-version-today a {
374
+ background: #ff5a6e;
375
+ color: #fff;
376
+ padding: 10px 20px;
377
+ text-decoration: blink;
378
+ border-radius: 3px;
379
+ text-transform: capitalize;
380
+ font-size: 15px;
381
+ letter-spacing: 0.5px;
382
+ font-weight: 700;
383
+ box-shadow: 0px 2px 10px -5px #0000008c;
384
+ }
385
+ .theplus-premium-widgets-list-wrapper,.theplus-premium-text-list-wrapper {
386
+ position: relative;
387
+ display: block;
388
+ padding: 20px 30px;
389
+ }
390
+ table.theplus-premium-widgets-list,table.theplus-premium-text-list {
391
+ table-layout: auto;
392
+ border-collapse: collapse;
393
+ margin-top: .5em;
394
+ width: 100%;
395
+ clear: both;
396
+ }
397
+ table.theplus-premium-widgets-list tr th {
398
+ vertical-align: top;
399
+ text-align: left;
400
+ padding: 10px 10px 20px 25px;
401
+ width: 200px;
402
+ line-height: 20px;
403
+ font-weight: 700;
404
+ font-size: 18px;
405
+ }
406
+ p.plus-pro-widget-description {
407
+ font-size: 15px;
408
+ line-height: 1;
409
+ margin-top: 10px;
410
+ font-weight: 700;
411
+ color: #313131;
412
+ }
413
+ table.theplus-premium-widgets-list span.button.cmb-multicheck-toggle {
414
+ display: none;
415
+ }
416
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list,table.theplus-premium-text-list ul.cmb_checkbox_list.cmb_list {
417
+ position: relative;
418
+ display: block;
419
+ width: 100%;
420
+ float: left;
421
+ padding-top: 5px;
422
+ margin: 0;
423
+ }
424
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list li,table.theplus-premium-text-list ul.cmb_checkbox_list.cmb_list li{
425
+ position: relative;
426
+ display: inline-block;
427
+ cursor: pointer;
428
+ -webkit-user-select: none;
429
+ -moz-user-select: none;
430
+ -ms-user-select: none;
431
+ user-select: none;
432
+ }
433
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list li{
434
+ width: 30% !important;
435
+ float: left;
436
+ margin-bottom: 8px;
437
+ margin-top: 8px;
438
+ }
439
+ table.theplus-premium-text-list ul.cmb_checkbox_list.cmb_list li{
440
+ width: 30% !important;
441
+ float: left;
442
+ padding: 15px;
443
+ }
444
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list li label:before{
445
+ content: '';
446
+ position: absolute;
447
+ top: 10px;
448
+ left: 0;
449
+ width: 30px;
450
+ height: 4px;
451
+ background-color: #ff5a6e;
452
+ border-radius: 10px;
453
+ -webkit-transition: all .3s ease;
454
+ transition: all .3s ease;
455
+ }
456
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list li label:after {
457
+ content: '';
458
+ position: absolute;
459
+ top: 4px;
460
+ left: 0;
461
+ height: 15px;
462
+ width: 15px;
463
+ background-color: #ff5a6e;
464
+ border-radius: 50%;
465
+ -webkit-transition: all .3s ease;
466
+ transition: all .3s ease;
467
+ -webkit-animation-name: pulsein;
468
+ animation-name: pulsein;
469
+ -webkit-animation-duration: .3s;
470
+ animation-duration: .3s;
471
+ }
472
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list li label{
473
+ position: relative;
474
+ padding-left: 40px;
475
+ }
476
+ table.theplus-premium-widgets-list ul.cmb_checkbox_list.cmb_list li a {
477
+ outline: none !important;
478
+ text-decoration: blink !important;
479
+ font-size: 16px;
480
+ vertical-align: middle;
481
+ color: #313131;
482
+ line-height: 20px;
483
+ box-shadow: none;
484
+ }
485
+ .info-box-list-pro {
486
+ background: #8072fc;
487
+ padding: 30px;
488
+ color: #fff;
489
+ border-radius: 5px;
490
+ box-shadow: 0px 1px 10px -3px #000000a8;
491
+ transition: all .3s ease-in-out;
492
+ }
493
+ .info-box-list-pro:hover {
494
+ box-shadow: 0px 4px 20px -4px #000000a8;
495
+ }
496
+ .info-box-list-pro span.dashicons {
497
+ font-size: 60px;
498
+ display: inherit;
499
+ width: auto;
500
+ height: auto;
501
+ line-height: initial;
502
+ text-align: left;
503
+ margin-bottom: 10px;
504
+ }
505
+ .info-box-list-pro span.pro-list-box {
506
+ font-size: 17px;
507
+ font-weight: 500;
508
+ line-height: 1.2;
509
+ letter-spacing: 0.3px;
510
+ }
511
+
512
+ /* plus options*/
assets/css/ajax-loader.gif ADDED
Binary file
assets/css/extra/fonts/slick.eot ADDED
Binary file
assets/css/extra/fonts/slick.svg ADDED
@@ -0,0 +1,14 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" standalone="no"?>
2
+ <!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
3
+ <svg xmlns="http://www.w3.org/2000/svg">
4
+ <metadata>Generated by Fontastic.me</metadata>
5
+ <defs>
6
+ <font id="slick" horiz-adv-x="512">
7
+ <font-face font-family="slick" units-per-em="512" ascent="480" descent="-32"/>
8
+ <missing-glyph horiz-adv-x="512" />
9
+
10
+ <glyph unicode="&#8594;" d="M241 113l130 130c4 4 6 8 6 13 0 5-2 9-6 13l-130 130c-3 3-7 5-12 5-5 0-10-2-13-5l-29-30c-4-3-6-7-6-12 0-5 2-10 6-13l87-88-87-88c-4-3-6-8-6-13 0-5 2-9 6-12l29-30c3-3 8-5 13-5 5 0 9 2 12 5z m234 143c0-40-9-77-29-110-20-34-46-60-80-80-33-20-70-29-110-29-40 0-77 9-110 29-34 20-60 46-80 80-20 33-29 70-29 110 0 40 9 77 29 110 20 34 46 60 80 80 33 20 70 29 110 29 40 0 77-9 110-29 34-20 60-46 80-80 20-33 29-70 29-110z"/>
11
+ <glyph unicode="&#8592;" d="M296 113l29 30c4 3 6 7 6 12 0 5-2 10-6 13l-87 88 87 88c4 3 6 8 6 13 0 5-2 9-6 12l-29 30c-3 3-8 5-13 5-5 0-9-2-12-5l-130-130c-4-4-6-8-6-13 0-5 2-9 6-13l130-130c3-3 7-5 12-5 5 0 10 2 13 5z m179 143c0-40-9-77-29-110-20-34-46-60-80-80-33-20-70-29-110-29-40 0-77 9-110 29-34 20-60 46-80 80-20 33-29 70-29 110 0 40 9 77 29 110 20 34 46 60 80 80 33 20 70 29 110 29 40 0 77-9 110-29 34-20 60-46 80-80 20-33 29-70 29-110z"/>
12
+ <glyph unicode="&#8226;" d="M475 256c0-40-9-77-29-110-20-34-46-60-80-80-33-20-70-29-110-29-40 0-77 9-110 29-34 20-60 46-80 80-20 33-29 70-29 110 0 40 9 77 29 110 20 34 46 60 80 80 33 20 70 29 110 29 40 0 77-9 110-29 34-20 60-46 80-80 20-33 29-70 29-110z"/>
13
+ <glyph unicode="&#97;" d="M475 439l0-128c0-5-1-9-5-13-4-4-8-5-13-5l-128 0c-8 0-13 3-17 11-3 7-2 14 4 20l40 39c-28 26-62 39-100 39-20 0-39-4-57-11-18-8-33-18-46-32-14-13-24-28-32-46-7-18-11-37-11-57 0-20 4-39 11-57 8-18 18-33 32-46 13-14 28-24 46-32 18-7 37-11 57-11 23 0 44 5 64 15 20 9 38 23 51 42 2 1 4 3 7 3 3 0 5-1 7-3l39-39c2-2 3-3 3-6 0-2-1-4-2-6-21-25-46-45-76-59-29-14-60-20-93-20-30 0-58 5-85 17-27 12-51 27-70 47-20 19-35 43-47 70-12 27-17 55-17 85 0 30 5 58 17 85 12 27 27 51 47 70 19 20 43 35 70 47 27 12 55 17 85 17 28 0 55-5 81-15 26-11 50-26 70-45l37 37c6 6 12 7 20 4 8-4 11-9 11-17z"/>
14
+ </font></defs></svg>
assets/css/extra/fonts/slick.ttf ADDED
Binary file
assets/css/extra/fonts/slick.woff ADDED
Binary file
assets/css/extra/lity.css ADDED
@@ -0,0 +1 @@
 
1
+ .lity{z-index:99999;position:fixed;top:0;right:0;bottom:0;left:0;white-space:nowrap;background:#0b0b0b;background:rgba(31, 31, 31, 0.18);outline:none!important;opacity:0;-webkit-transition:opacity 0.3s ease;-o-transition:opacity 0.3s ease;transition:opacity 0.3s ease}.lity.lity-opened{opacity:1}.lity.lity-closed{opacity:0}.lity *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.lity-wrap{z-index:9990;position:fixed;top:0;right:0;bottom:0;left:0;text-align:center;outline:none!important}.lity-wrap:before{content:'';display:inline-block;height:100%;vertical-align:middle;margin-right:-.25em}.lity-loader{z-index:9991;color:#fff;position:absolute;top:50%;margin-top:-.8em;width:100%;text-align:center;font-size:14px;font-family:Arial,Helvetica,sans-serif;opacity:0;-webkit-transition:opacity 0.3s ease;-o-transition:opacity 0.3s ease;transition:opacity 0.3s ease}.lity-loading .lity-loader{opacity:1}.lity-container{z-index:9992;position:relative;text-align:left;vertical-align:middle;display:inline-block;white-space:normal;max-width:100%;max-height:100%;outline:none!important;min-width:97%;margin:0 auto}.lity-content{z-index:9993;width:100%;-webkit-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);-webkit-transition:-webkit-transform 0.3s ease;transition:-webkit-transform 0.3s ease;-o-transition:-o-transform 0.3s ease;transition:transform 0.3s ease;transition:transform 0.3s ease,-webkit-transform 0.3s ease,-o-transform 0.3s ease}.lity-loading .lity-content,.lity-closed .lity-content{-webkit-transform:scale(.8);-ms-transform:scale(.8);-o-transform:scale(.8);transform:scale(.8)}.lity-content:after{content:'';position:absolute;left:0;top:0;bottom:0;display:block;right:0;width:auto;height:auto;z-index:-1}.lity-close{z-index:9994;width:45px;height:45px;position:fixed;left:50%;top:auto;bottom:40px;-webkit-appearance:none;cursor:pointer;text-decoration:none;text-align:center;padding:0;color:#fff;background:#313131;border-radius:40px;padding:8px 12px;font-style:normal;font-size:35px;font-family:open sans;line-height:inherit;transition:all .2s linear;transform:translate3d(-50%,0%,0);text-shadow:none;border:0;outline:none;-webkit-box-shadow:none;box-shadow:none}.lity-close::-moz-focus-inner{border:0;padding:0}.lity-close:hover,.lity-close:focus,.lity-close:active,.lity-close:visited{transform:translate3d(-50%,0%,0) scale(1.1);text-decoration:none;text-align:center;color:#fff;outline:none;-webkit-box-shadow:none;box-shadow:none}.lity-image img{max-width:100%;display:block;line-height:0;border:0}.lity-iframe .lity-container,.lity-youtube .lity-container,.lity-vimeo .lity-container,.lity-facebookvideo .lity-container,.lity-googlemaps .lity-container{width:100%;max-width:964px}.lity-iframe-container{width:100%;height:0;padding-top:56.25%;overflow:auto;pointer-events:auto;-webkit-transform:translateZ(0);transform:translateZ(0);-webkit-overflow-scrolling:touch}.lity-iframe-container iframe{position:absolute;display:block;top:0;left:0;width:100%;height:100%;-webkit-box-shadow:0 0 8px rgba(0,0,0,.6);box-shadow:0 0 8px rgba(0,0,0,.6);background:#000}.lity-hide{display:none}.lity-wrap{position:absolute!important;overflow:auto!important}.lity-content img {margin: 0 auto;}.opened-lity-popup #content.site-content {filter: blur(2px);}
assets/css/extra/slick.min.css ADDED
@@ -0,0 +1 @@
 
1
+ .slick-slider{position:relative;display:block;box-sizing:border-box;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y;-webkit-tap-highlight-color:transparent}.slick-list{position:relative;display:block;overflow:hidden;margin:0;padding:0}.slick-list:focus{outline:none}.slick-list.dragging{cursor:pointer;cursor:hand}.slick-slider .slick-track,.slick-slider .slick-list{-webkit-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.slick-track{position:relative;top:0;left:0;display:block}.slick-track:before,.slick-track:after{display:table;content:''}.slick-track:after{clear:both}.slick-loading .slick-track{visibility:hidden}.slick-slide{display:none;float:left;height:100%;min-height:1px}[dir='rtl'] .slick-slide{float:right}.slick-slide img{display:block;width:100%}.slick-slide.slick-loading img{display:none}.slick-slide.dragging img{pointer-events:none}.slick-initialized .slick-slide{display:block}.slick-loading .slick-slide{visibility:hidden}.slick-vertical .slick-slide{display:block;height:auto;border:1px solid transparent}.slick-arrow.slick-hidden{display:none}@font-face{font-family:'slick';font-weight:400;font-style:normal;src:url(fonts/slick.eot);src:url('fonts/slick.eot?#iefix') format('embedded-opentype'),url(fonts/slick.woff) format('woff'),url(fonts/slick.ttf) format('truetype'),url('fonts/slick.svg#slick') format('svg')}@charset 'UTF-8';.slick-loading .slick-list{background:#fff url(../../images/ajax-loader.gif) center center no-repeat}.slick-prev,.slick-next{font-size:0;line-height:0;position:absolute;top:50%;display:block;width:20px;height:20px;padding:0;-webkit-transform:translate(0,-50%);-ms-transform:translate(0,-50%);transform:translate(0,-50%);cursor:pointer;color:transparent;border:none;outline:none;background:transparent;z-index:11}.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus{color:transparent;outline:none;background:transparent}.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before{opacity:.25}.slick-prev:before,.slick-next:before{font-size:20px;line-height:1;opacity:.75;color:white;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-prev{left:15px}[dir='rtl'] .slick-prev{right:15px;left:auto}.slick-prev:before{content:'←'}[dir='rtl'] .slick-prev:before{content:'→'}.slick-next{right:15px}[dir='rtl'] .slick-next{right:auto;left:15px}.slick-next:before{content:'→'}[dir='rtl'] .slick-next:before{content:'←'}.slick-dotted.slick-slider{margin-bottom:30px}.slick-dots{position:absolute;bottom:-25px;display:block;width:100%;padding:0;margin:0;list-style:none;text-align:center}.slick-dots li{position:relative;display:inline-block;width:20px;height:20px;margin:0 5px;padding:0;cursor:pointer}.slick-dots li button{font-size:0;line-height:0;display:block;width:20px;height:20px;padding:4px;cursor:pointer;color:transparent;border:0;outline:none;background:transparent}.slick-dots li button:hover,.slick-dots li button:focus{outline:none}.slick-dots li button:hover:before,.slick-dots li button:focus:before{opacity:1}.slick-dots li button:before{font-family:'slick';font-size:6px;line-height:20px;position:absolute;top:0;left:0;width:20px;height:20px;content:'•';text-align:center;opacity:.25;color:black;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.slick-dots li.slick-active button:before{opacity:.75;color:black}
assets/css/extra/tp-bootstrap-grid.css ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ /*!
2
+ * Theplus Columns
3
+ * Bootstrap Grid v4.0.0
4
+ * Copyright 2011-2018 The Bootstrap Authors
5
+ */@-ms-viewport{width:device-width}html{box-sizing:border-box;-ms-overflow-style:scrollbar}*,*::before,*::after{box-sizing:inherit}.tp-container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:576px){.tp-container{max-width:540px}}@media (min-width:768px){.tp-container{max-width:720px}}@media (min-width:992px){.tp-container{max-width:960px}}@media (min-width:1200px){.tp-container{max-width:1140px}}.tp-container-fluid{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.tp-row{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-right:-15px;margin-left:-15px}.tp-no-gutters{margin-right:0;margin-left:0}.tp-no-gutters>.tp-col,.tp-no-gutters>[class*="tp-col-"]{padding-right:0;padding-left:0}.tp-col-1,.tp-col-2,.tp-col-3,.tp-col-4,.tp-col-5,.tp-col-6,.tp-col-7,.tp-col-8,.tp-col-9,.tp-col-10,.tp-col-11,.tp-col-12,.tp-col,.tp-col-auto,.tp-col-sm-1,.tp-col-sm-2,.tp-col-sm-3,.tp-col-sm-4,.tp-col-sm-5,.tp-col-sm-6,.tp-col-sm-7,.tp-col-sm-8,.tp-col-sm-9,.tp-col-sm-10,.tp-col-sm-11,.tp-col-sm-12,.tp-col-sm,.tp-col-sm-auto,.tp-col-md-1,.tp-col-md-2,.tp-col-md-3,.tp-col-md-4,.tp-col-md-5,.tp-col-md-6,.tp-col-md-7,.tp-col-md-8,.tp-col-md-9,.tp-col-md-10,.tp-col-md-11,.tp-col-md-12,.tp-col-md,.tp-col-md-auto,.tp-col-lg-1,.tp-col-lg-2,.tp-col-lg-3,.tp-col-lg-4,.tp-col-lg-5,.tp-col-lg-6,.tp-col-lg-7,.tp-col-lg-8,.tp-col-lg-9,.tp-col-lg-10,.tp-col-lg-11,.tp-col-lg-12,.tp-col-lg,.tp-col-lg-auto,.tp-col-xl-1,.tp-col-xl-2,.tp-col-xl-3,.tp-col-xl-4,.tp-col-xl-5,.tp-col-xl-6,.tp-col-xl-7,.tp-col-xl-8,.tp-col-xl-9,.tp-col-xl-10,.tp-col-xl-11,.tp-col-xl-12,.tp-col-xl,.tp-col-xl-auto{position:relative;width:100%;min-height:1px;padding-right:15px;padding-left:15px}.tp-col{-ms-flex-preferred-size:0;flex-basis:0%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.tp-col-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.tp-col-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.tp-col-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.tp-col-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tp-col-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.tp-col-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.tp-col-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tp-col-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.tp-col-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.tp-col-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.tp-col-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.tp-col-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.tp-col-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.tp-offset-1{margin-left:8.333333%}.tp-offset-2{margin-left:16.666667%}.tp-offset-3{margin-left:25%}.tp-offset-4{margin-left:33.333333%}.tp-offset-5{margin-left:41.666667%}.tp-offset-6{margin-left:50%}.tp-offset-7{margin-left:58.333333%}.tp-offset-8{margin-left:66.666667%}.tp-offset-9{margin-left:75%}.tp-offset-10{margin-left:83.333333%}.tp-offset-11{margin-left:91.666667%}@media (min-width:576px){.tp-col-sm{-ms-flex-preferred-size:0;flex-basis:0%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.tp-col-sm-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.tp-col-sm-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.tp-col-sm-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.tp-col-sm-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tp-col-sm-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.tp-col-sm-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.tp-col-sm-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tp-col-sm-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.tp-col-sm-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.tp-col-sm-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.tp-col-sm-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.tp-col-sm-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.tp-col-sm-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-sm-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-sm-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-sm-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-sm-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-sm-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-sm-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-sm-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-sm-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-sm-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-sm-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-sm-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-sm-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-sm-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-sm-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-sm-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.tp-offset-sm-0{margin-left:0}.tp-offset-sm-1{margin-left:8.333333%}.tp-offset-sm-2{margin-left:16.666667%}.tp-offset-sm-3{margin-left:25%}.tp-offset-sm-4{margin-left:33.333333%}.tp-offset-sm-5{margin-left:41.666667%}.tp-offset-sm-6{margin-left:50%}.tp-offset-sm-7{margin-left:58.333333%}.tp-offset-sm-8{margin-left:66.666667%}.tp-offset-sm-9{margin-left:75%}.tp-offset-sm-10{margin-left:83.333333%}.tp-offset-sm-11{margin-left:91.666667%}}@media (min-width:768px){.tp-col-md{-ms-flex-preferred-size:0;flex-basis:0%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.tp-col-md-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.tp-col-md-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.tp-col-md-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.tp-col-md-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tp-col-md-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.tp-col-md-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.tp-col-md-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tp-col-md-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.tp-col-md-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.tp-col-md-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.tp-col-md-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.tp-col-md-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.tp-col-md-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-md-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-md-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-md-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-md-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-md-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-md-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-md-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-md-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-md-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-md-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-md-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-md-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-md-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-md-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-md-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.tp-offset-md-0{margin-left:0}.tp-offset-md-1{margin-left:8.333333%}.tp-offset-md-2{margin-left:16.666667%}.tp-offset-md-3{margin-left:25%}.tp-offset-md-4{margin-left:33.333333%}.tp-offset-md-5{margin-left:41.666667%}.tp-offset-md-6{margin-left:50%}.tp-offset-md-7{margin-left:58.333333%}.tp-offset-md-8{margin-left:66.666667%}.tp-offset-md-9{margin-left:75%}.tp-offset-md-10{margin-left:83.333333%}.tp-offset-md-11{margin-left:91.666667%}}@media (min-width:992px){.tp-col-lg{-ms-flex-preferred-size:0;flex-basis:0%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.tp-col-lg-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.tp-col-lg-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.tp-col-lg-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.tp-col-lg-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tp-col-lg-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.tp-col-lg-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.tp-col-lg-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tp-col-lg-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.tp-col-lg-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.tp-col-lg-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.tp-col-lg-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.tp-col-lg-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.tp-col-lg-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-lg-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-lg-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-lg-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-lg-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-lg-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-lg-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-lg-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-lg-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-lg-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-lg-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-lg-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-lg-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-lg-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-lg-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-lg-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.tp-offset-lg-0{margin-left:0}.tp-offset-lg-1{margin-left:8.333333%}.tp-offset-lg-2{margin-left:16.666667%}.tp-offset-lg-3{margin-left:25%}.tp-offset-lg-4{margin-left:33.333333%}.tp-offset-lg-5{margin-left:41.666667%}.tp-offset-lg-6{margin-left:50%}.tp-offset-lg-7{margin-left:58.333333%}.tp-offset-lg-8{margin-left:66.666667%}.tp-offset-lg-9{margin-left:75%}.tp-offset-lg-10{margin-left:83.333333%}.tp-offset-lg-11{margin-left:91.666667%}}@media (min-width:1200px){.tp-col-xl{-ms-flex-preferred-size:0;flex-basis:0%;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;max-width:100%}.tp-col-xl-auto{-webkit-box-flex:0;-ms-flex:0 0 auto;flex:0 0 auto;width:auto;max-width:none}.tp-col-xl-1{-webkit-box-flex:0;-ms-flex:0 0 8.333333%;flex:0 0 8.333333%;max-width:8.333333%}.tp-col-xl-2{-webkit-box-flex:0;-ms-flex:0 0 16.666667%;flex:0 0 16.666667%;max-width:16.666667%}.tp-col-xl-3{-webkit-box-flex:0;-ms-flex:0 0 25%;flex:0 0 25%;max-width:25%}.tp-col-xl-4{-webkit-box-flex:0;-ms-flex:0 0 33.333333%;flex:0 0 33.333333%;max-width:33.333333%}.tp-col-xl-5{-webkit-box-flex:0;-ms-flex:0 0 41.666667%;flex:0 0 41.666667%;max-width:41.666667%}.tp-col-xl-6{-webkit-box-flex:0;-ms-flex:0 0 50%;flex:0 0 50%;max-width:50%}.tp-col-xl-7{-webkit-box-flex:0;-ms-flex:0 0 58.333333%;flex:0 0 58.333333%;max-width:58.333333%}.tp-col-xl-8{-webkit-box-flex:0;-ms-flex:0 0 66.666667%;flex:0 0 66.666667%;max-width:66.666667%}.tp-col-xl-9{-webkit-box-flex:0;-ms-flex:0 0 75%;flex:0 0 75%;max-width:75%}.tp-col-xl-10{-webkit-box-flex:0;-ms-flex:0 0 83.333333%;flex:0 0 83.333333%;max-width:83.333333%}.tp-col-xl-11{-webkit-box-flex:0;-ms-flex:0 0 91.666667%;flex:0 0 91.666667%;max-width:91.666667%}.tp-col-xl-12{-webkit-box-flex:0;-ms-flex:0 0 100%;flex:0 0 100%;max-width:100%}.order-xl-first{-webkit-box-ordinal-group:0;-ms-flex-order:-1;order:-1}.order-xl-last{-webkit-box-ordinal-group:14;-ms-flex-order:13;order:13}.order-xl-0{-webkit-box-ordinal-group:1;-ms-flex-order:0;order:0}.order-xl-1{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1}.order-xl-2{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2}.order-xl-3{-webkit-box-ordinal-group:4;-ms-flex-order:3;order:3}.order-xl-4{-webkit-box-ordinal-group:5;-ms-flex-order:4;order:4}.order-xl-5{-webkit-box-ordinal-group:6;-ms-flex-order:5;order:5}.order-xl-6{-webkit-box-ordinal-group:7;-ms-flex-order:6;order:6}.order-xl-7{-webkit-box-ordinal-group:8;-ms-flex-order:7;order:7}.order-xl-8{-webkit-box-ordinal-group:9;-ms-flex-order:8;order:8}.order-xl-9{-webkit-box-ordinal-group:10;-ms-flex-order:9;order:9}.order-xl-10{-webkit-box-ordinal-group:11;-ms-flex-order:10;order:10}.order-xl-11{-webkit-box-ordinal-group:12;-ms-flex-order:11;order:11}.order-xl-12{-webkit-box-ordinal-group:13;-ms-flex-order:12;order:12}.tp-offset-xl-0{margin-left:0}.tp-offset-xl-1{margin-left:8.333333%}.tp-offset-xl-2{margin-left:16.666667%}.tp-offset-xl-3{margin-left:25%}.tp-offset-xl-4{margin-left:33.333333%}.tp-offset-xl-5{margin-left:41.666667%}.tp-offset-xl-6{margin-left:50%}.tp-offset-xl-7{margin-left:58.333333%}.tp-offset-xl-8{margin-left:66.666667%}.tp-offset-xl-9{margin-left:75%}.tp-offset-xl-10{margin-left:83.333333%}.tp-offset-xl-11{margin-left:91.666667%}}.d-none{display:none!important}.d-inline{display:inline!important}.d-inline-block{display:inline-block!important}.d-block{display:block!important}.d-table{display:table!important}.d-table-row{display:table-row!important}.d-table-cell{display:table-cell!important}.d-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}@media (min-width:576px){.d-sm-none{display:none!important}.d-sm-inline{display:inline!important}.d-sm-inline-block{display:inline-block!important}.d-sm-block{display:block!important}.d-sm-table{display:table!important}.d-sm-table-row{display:table-row!important}.d-sm-table-cell{display:table-cell!important}.d-sm-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-sm-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:768px){.d-md-none{display:none!important}.d-md-inline{display:inline!important}.d-md-inline-block{display:inline-block!important}.d-md-block{display:block!important}.d-md-table{display:table!important}.d-md-table-row{display:table-row!important}.d-md-table-cell{display:table-cell!important}.d-md-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-md-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:992px){.d-lg-none{display:none!important}.d-lg-inline{display:inline!important}.d-lg-inline-block{display:inline-block!important}.d-lg-block{display:block!important}.d-lg-table{display:table!important}.d-lg-table-row{display:table-row!important}.d-lg-table-cell{display:table-cell!important}.d-lg-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-lg-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media (min-width:1200px){.d-xl-none{display:none!important}.d-xl-inline{display:inline!important}.d-xl-inline-block{display:inline-block!important}.d-xl-block{display:block!important}.d-xl-table{display:table!important}.d-xl-table-row{display:table-row!important}.d-xl-table-cell{display:table-cell!important}.d-xl-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-xl-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}@media print{.d-print-none{display:none!important}.d-print-inline{display:inline!important}.d-print-inline-block{display:inline-block!important}.d-print-block{display:block!important}.d-print-table{display:table!important}.d-print-table-row{display:table-row!important}.d-print-table-cell{display:table-cell!important}.d-print-flex{display:-webkit-box!important;display:-ms-flexbox!important;display:flex!important}.d-print-inline-flex{display:-webkit-inline-box!important;display:-ms-inline-flexbox!important;display:inline-flex!important}}.flex-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.tp-align-items-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.tp-align-items-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.tp-align-items-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.tp-align-items-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.tp-align-items-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.tp-align-content-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.tp-align-content-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.tp-align-content-center{-ms-flex-line-pack:center!important;align-content:center!important}.tp-align-content-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.tp-align-content-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.tp-align-content-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.tp-align-self-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.tp-align-self-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.tp-align-self-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.tp-align-self-center{-ms-flex-item-align:center!important;align-self:center!important}.tp-align-self-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.tp-align-self-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}@media (min-width:576px){.flex-sm-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-sm-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-sm-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-sm-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-sm-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-sm-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-sm-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-sm-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-sm-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-sm-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-sm-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-sm-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.tp-align-items-sm-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.tp-align-items-sm-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.tp-align-items-sm-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.tp-align-items-sm-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.tp-align-items-sm-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.tp-align-content-sm-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.tp-align-content-sm-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.tp-align-content-sm-center{-ms-flex-line-pack:center!important;align-content:center!important}.tp-align-content-sm-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.tp-align-content-sm-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.tp-align-content-sm-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.tp-align-self-sm-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.tp-align-self-sm-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.tp-align-self-sm-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.tp-align-self-sm-center{-ms-flex-item-align:center!important;align-self:center!important}.tp-align-self-sm-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.tp-align-self-sm-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:768px){.flex-md-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-md-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-md-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-md-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-md-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-md-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-md-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-md-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-md-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-md-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-md-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-md-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.tp-align-items-md-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.tp-align-items-md-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.tp-align-items-md-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.tp-align-items-md-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.tp-align-items-md-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.tp-align-content-md-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.tp-align-content-md-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.tp-align-content-md-center{-ms-flex-line-pack:center!important;align-content:center!important}.tp-align-content-md-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.tp-align-content-md-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.tp-align-content-md-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.tp-align-self-md-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.tp-align-self-md-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.tp-align-self-md-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.tp-align-self-md-center{-ms-flex-item-align:center!important;align-self:center!important}.tp-align-self-md-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.tp-align-self-md-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:992px){.flex-lg-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-lg-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-lg-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-lg-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-lg-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-lg-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-lg-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-lg-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-lg-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-lg-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-lg-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-lg-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.tp-align-items-lg-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.tp-align-items-lg-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.tp-align-items-lg-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.tp-align-items-lg-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.tp-align-items-lg-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.tp-align-content-lg-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.tp-align-content-lg-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.tp-align-content-lg-center{-ms-flex-line-pack:center!important;align-content:center!important}.tp-align-content-lg-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.tp-align-content-lg-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.tp-align-content-lg-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.tp-align-self-lg-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.tp-align-self-lg-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.tp-align-self-lg-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.tp-align-self-lg-center{-ms-flex-item-align:center!important;align-self:center!important}.tp-align-self-lg-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.tp-align-self-lg-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}@media (min-width:1200px){.flex-xl-row{-webkit-box-orient:horizontal!important;-webkit-box-direction:normal!important;-ms-flex-direction:row!important;flex-direction:row!important}.flex-xl-column{-webkit-box-orient:vertical!important;-webkit-box-direction:normal!important;-ms-flex-direction:column!important;flex-direction:column!important}.flex-xl-row-reverse{-webkit-box-orient:horizontal!important;-webkit-box-direction:reverse!important;-ms-flex-direction:row-reverse!important;flex-direction:row-reverse!important}.flex-xl-column-reverse{-webkit-box-orient:vertical!important;-webkit-box-direction:reverse!important;-ms-flex-direction:column-reverse!important;flex-direction:column-reverse!important}.flex-xl-wrap{-ms-flex-wrap:wrap!important;flex-wrap:wrap!important}.flex-xl-nowrap{-ms-flex-wrap:nowrap!important;flex-wrap:nowrap!important}.flex-xl-wrap-reverse{-ms-flex-wrap:wrap-reverse!important;flex-wrap:wrap-reverse!important}.justify-content-xl-start{-webkit-box-pack:start!important;-ms-flex-pack:start!important;justify-content:flex-start!important}.justify-content-xl-end{-webkit-box-pack:end!important;-ms-flex-pack:end!important;justify-content:flex-end!important}.justify-content-xl-center{-webkit-box-pack:center!important;-ms-flex-pack:center!important;justify-content:center!important}.justify-content-xl-between{-webkit-box-pack:justify!important;-ms-flex-pack:justify!important;justify-content:space-between!important}.justify-content-xl-around{-ms-flex-pack:distribute!important;justify-content:space-around!important}.tp-align-items-xl-start{-webkit-box-align:start!important;-ms-flex-align:start!important;align-items:flex-start!important}.tp-align-items-xl-end{-webkit-box-align:end!important;-ms-flex-align:end!important;align-items:flex-end!important}.tp-align-items-xl-center{-webkit-box-align:center!important;-ms-flex-align:center!important;align-items:center!important}.tp-align-items-xl-baseline{-webkit-box-align:baseline!important;-ms-flex-align:baseline!important;align-items:baseline!important}.tp-align-items-xl-stretch{-webkit-box-align:stretch!important;-ms-flex-align:stretch!important;align-items:stretch!important}.tp-align-content-xl-start{-ms-flex-line-pack:start!important;align-content:flex-start!important}.tp-align-content-xl-end{-ms-flex-line-pack:end!important;align-content:flex-end!important}.tp-align-content-xl-center{-ms-flex-line-pack:center!important;align-content:center!important}.tp-align-content-xl-between{-ms-flex-line-pack:justify!important;align-content:space-between!important}.tp-align-content-xl-around{-ms-flex-line-pack:distribute!important;align-content:space-around!important}.tp-align-content-xl-stretch{-ms-flex-line-pack:stretch!important;align-content:stretch!important}.tp-align-self-xl-auto{-ms-flex-item-align:auto!important;align-self:auto!important}.tp-align-self-xl-start{-ms-flex-item-align:start!important;align-self:flex-start!important}.tp-align-self-xl-end{-ms-flex-item-align:end!important;align-self:flex-end!important}.tp-align-self-xl-center{-ms-flex-item-align:center!important;align-self:center!important}.tp-align-self-xl-baseline{-ms-flex-item-align:baseline!important;align-self:baseline!important}.tp-align-self-xl-stretch{-ms-flex-item-align:stretch!important;align-self:stretch!important}}
6
+ /*# sourceMappingURL=tp-bootstrap-grid.css.map */
assets/css/extra/tp-bootstrap-grid.css.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["../../scss/bootstrap-grid.scss","bootstrap-grid.css","../../scss/_grid.scss","../../scss/mixins/_grid.scss","../../scss/mixins/_breakpoints.scss","../../scss/_variables.scss","../../scss/mixins/_grid-framework.scss","../../scss/utilities/_display.scss","../../scss/utilities/_flex.scss"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGD;EAAgB,oBAAmB;CCApC;;ADGD;EACE,uBAAsB;EACtB,8BAA6B;CAC9B;;AAED;;;EAGE,oBAAmB;CACpB;;AEfC;ECAA,YAAW;EACX,oBAAuC;EACvC,mBAAsC;EACtC,mBAAkB;EAClB,kBAAiB;CDDhB;;AEoDC;EFvDF;ICYI,iBEsKK;GH/KR;CDyBF;;AG2BG;EFvDF;ICYI,iBEuKK;GHhLR;CD+BF;;AGqBG;EFvDF;ICYI,iBEwKK;GHjLR;CDqCF;;AGeG;EFvDF;ICYI,kBEyKM;GHlLT;CD2CF;;AClCC;ECZA,YAAW;EACX,oBAAuC;EACvC,mBAAsC;EACtC,mBAAkB;EAClB,kBAAiB;CDUhB;;AAQD;ECJA,qBAAa;EAAb,qBAAa;EAAb,cAAa;EACb,oBAAe;EAAf,gBAAe;EACf,oBAAuC;EACvC,mBAAsC;CDGrC;;AAID;EACE,gBAAe;EACf,eAAc;CAOf;;AATD;;EAMI,iBAAgB;EAChB,gBAAe;CAChB;;AIlCH;;;;;;EACE,mBAAkB;EAClB,YAAW;EACX,gBAAe;EACf,oBAA4B;EAC5B,mBAA2B;CAC5B;;AAkBG;EACE,2BAAa;EAAb,cAAa;EACb,oBAAY;EAAZ,qBAAY;EAAZ,aAAY;EACZ,gBAAe;CAChB;;AACD;EACE,oBAAc;EAAd,mBAAc;EAAd,eAAc;EACd,YAAW;EACX,gBAAe;CAChB;;AAGC;EHFN,oBAAsC;EAAtC,wBAAsC;EAAtC,oBAAsC;EAItC,qBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,kBAAsC;EAAtC,cAAsC;EAItC,eAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,kBAAsC;EAAtC,cAAsC;EAItC,eAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,kBAAsC;EAAtC,cAAsC;EAItC,eAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,yBAAsC;EAAtC,qBAAsC;EAItC,sBAAuC;CGAhC;;AAFD;EHFN,oBAAsC;EAAtC,mBAAsC;EAAtC,eAAsC;EAItC,gBAAuC;CGAhC;;AAGH;EAAwB,6BAAS;EAAT,mBAAS;EAAT,UAAS;CAAK;;AAEtC;EAAuB,8BAAmB;EAAnB,mBAAmB;EAAnB,UAAmB;CAAI;;AAG5C;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,6BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,8BADZ;EACY,kBADZ;EACY,SADZ;CACyB;;AAArC;EAAwB,8BADZ;EACY,mBADZ;EACY,UADZ;CACyB;;AAArC;EAAwB,8BADZ;EACY,mBADZ;EACY,UADZ;CACyB;;AAArC;EAAwB,8BADZ;EACY,mBADZ;EACY,UADZ;CACyB;;AAMnC;EHTR,uBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AAFD;EHTR,iBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AAFD;EHTR,iBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AAFD;EHTR,iBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AAFD;EHTR,wBAA8C;CGWrC;;AFDP;EE7BE;IACE,2BAAa;IAAb,cAAa;IACb,oBAAY;IAAZ,qBAAY;IAAZ,aAAY;IACZ,gBAAe;GAChB;EACD;IACE,oBAAc;IAAd,mBAAc;IAAd,eAAc;IACd,YAAW;IACX,gBAAe;GAChB;EAGC;IHFN,oBAAsC;IAAtC,wBAAsC;IAAtC,oBAAsC;IAItC,qBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,mBAAsC;IAAtC,eAAsC;IAItC,gBAAuC;GGAhC;EAGH;IAAwB,6BAAS;IAAT,mBAAS;IAAT,UAAS;GAAK;EAEtC;IAAuB,8BAAmB;IAAnB,mBAAmB;IAAnB,UAAmB;GAAI;EAG5C;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAMnC;IHTR,eAA4B;GGWnB;EAFD;IHTR,uBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;CL2VV;;AG5VG;EE7BE;IACE,2BAAa;IAAb,cAAa;IACb,oBAAY;IAAZ,qBAAY;IAAZ,aAAY;IACZ,gBAAe;GAChB;EACD;IACE,oBAAc;IAAd,mBAAc;IAAd,eAAc;IACd,YAAW;IACX,gBAAe;GAChB;EAGC;IHFN,oBAAsC;IAAtC,wBAAsC;IAAtC,oBAAsC;IAItC,qBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,mBAAsC;IAAtC,eAAsC;IAItC,gBAAuC;GGAhC;EAGH;IAAwB,6BAAS;IAAT,mBAAS;IAAT,UAAS;GAAK;EAEtC;IAAuB,8BAAmB;IAAnB,mBAAmB;IAAnB,UAAmB;GAAI;EAG5C;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAMnC;IHTR,eAA4B;GGWnB;EAFD;IHTR,uBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;CLyeV;;AG1eG;EE7BE;IACE,2BAAa;IAAb,cAAa;IACb,oBAAY;IAAZ,qBAAY;IAAZ,aAAY;IACZ,gBAAe;GAChB;EACD;IACE,oBAAc;IAAd,mBAAc;IAAd,eAAc;IACd,YAAW;IACX,gBAAe;GAChB;EAGC;IHFN,oBAAsC;IAAtC,wBAAsC;IAAtC,oBAAsC;IAItC,qBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,mBAAsC;IAAtC,eAAsC;IAItC,gBAAuC;GGAhC;EAGH;IAAwB,6BAAS;IAAT,mBAAS;IAAT,UAAS;GAAK;EAEtC;IAAuB,8BAAmB;IAAnB,mBAAmB;IAAnB,UAAmB;GAAI;EAG5C;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAMnC;IHTR,eAA4B;GGWnB;EAFD;IHTR,uBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;CLunBV;;AGxnBG;EE7BE;IACE,2BAAa;IAAb,cAAa;IACb,oBAAY;IAAZ,qBAAY;IAAZ,aAAY;IACZ,gBAAe;GAChB;EACD;IACE,oBAAc;IAAd,mBAAc;IAAd,eAAc;IACd,YAAW;IACX,gBAAe;GAChB;EAGC;IHFN,oBAAsC;IAAtC,wBAAsC;IAAtC,oBAAsC;IAItC,qBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,kBAAsC;IAAtC,cAAsC;IAItC,eAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,yBAAsC;IAAtC,qBAAsC;IAItC,sBAAuC;GGAhC;EAFD;IHFN,oBAAsC;IAAtC,mBAAsC;IAAtC,eAAsC;IAItC,gBAAuC;GGAhC;EAGH;IAAwB,6BAAS;IAAT,mBAAS;IAAT,UAAS;GAAK;EAEtC;IAAuB,8BAAmB;IAAnB,mBAAmB;IAAnB,UAAmB;GAAI;EAG5C;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,6BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,kBADZ;IACY,SADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAArC;IAAwB,8BADZ;IACY,mBADZ;IACY,UADZ;GACyB;EAMnC;IHTR,eAA4B;GGWnB;EAFD;IHTR,uBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,iBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;EAFD;IHTR,wBAA8C;GGWrC;CLqwBV;;AMxzBG;EAA2B,yBAAwB;CAAK;;AACxD;EAA2B,2BAA0B;CAAK;;AAC1D;EAA2B,iCAAgC;CAAK;;AAChE;EAA2B,0BAAyB;CAAK;;AACzD;EAA2B,0BAAyB;CAAK;;AACzD;EAA2B,8BAA6B;CAAK;;AAC7D;EAA2B,+BAA8B;CAAK;;AAC9D;EAA2B,gCAAwB;EAAxB,gCAAwB;EAAxB,yBAAwB;CAAK;;AACxD;EAA2B,uCAA+B;EAA/B,uCAA+B;EAA/B,gCAA+B;CAAK;;AH0C/D;EGlDA;IAA2B,yBAAwB;GAAK;EACxD;IAA2B,2BAA0B;GAAK;EAC1D;IAA2B,iCAAgC;GAAK;EAChE;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,8BAA6B;GAAK;EAC7D;IAA2B,+BAA8B;GAAK;EAC9D;IAA2B,gCAAwB;IAAxB,gCAAwB;IAAxB,yBAAwB;GAAK;EACxD;IAA2B,uCAA+B;IAA/B,uCAA+B;IAA/B,gCAA+B;GAAK;CNk3BlE;;AGx0BG;EGlDA;IAA2B,yBAAwB;GAAK;EACxD;IAA2B,2BAA0B;GAAK;EAC1D;IAA2B,iCAAgC;GAAK;EAChE;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,8BAA6B;GAAK;EAC7D;IAA2B,+BAA8B;GAAK;EAC9D;IAA2B,gCAAwB;IAAxB,gCAAwB;IAAxB,yBAAwB;GAAK;EACxD;IAA2B,uCAA+B;IAA/B,uCAA+B;IAA/B,gCAA+B;GAAK;CNg5BlE;;AGt2BG;EGlDA;IAA2B,yBAAwB;GAAK;EACxD;IAA2B,2BAA0B;GAAK;EAC1D;IAA2B,iCAAgC;GAAK;EAChE;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,8BAA6B;GAAK;EAC7D;IAA2B,+BAA8B;GAAK;EAC9D;IAA2B,gCAAwB;IAAxB,gCAAwB;IAAxB,yBAAwB;GAAK;EACxD;IAA2B,uCAA+B;IAA/B,uCAA+B;IAA/B,gCAA+B;GAAK;CN86BlE;;AGp4BG;EGlDA;IAA2B,yBAAwB;GAAK;EACxD;IAA2B,2BAA0B;GAAK;EAC1D;IAA2B,iCAAgC;GAAK;EAChE;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,0BAAyB;GAAK;EACzD;IAA2B,8BAA6B;GAAK;EAC7D;IAA2B,+BAA8B;GAAK;EAC9D;IAA2B,gCAAwB;IAAxB,gCAAwB;IAAxB,yBAAwB;GAAK;EACxD;IAA2B,uCAA+B;IAA/B,uCAA+B;IAA/B,gCAA+B;GAAK;CN48BlE;;AMn8BD;EACE;IAAwB,yBAAwB;GAAK;EACrD;IAAwB,2BAA0B;GAAK;EACvD;IAAwB,iCAAgC;GAAK;EAC7D;IAAwB,0BAAyB;GAAK;EACtD;IAAwB,0BAAyB;GAAK;EACtD;IAAwB,8BAA6B;GAAK;EAC1D;IAAwB,+BAA8B;GAAK;EAC3D;IAAwB,gCAAwB;IAAxB,gCAAwB;IAAxB,yBAAwB;GAAK;EACrD;IAAwB,uCAA+B;IAA/B,uCAA+B;IAA/B,gCAA+B;GAAK;CNw9B7D;;AOl/BG;EAAgC,0CAA8B;EAA9B,yCAA8B;EAA9B,mCAA8B;EAA9B,+BAA8B;CAAK;;AACnE;EAAgC,wCAAiC;EAAjC,yCAAiC;EAAjC,sCAAiC;EAAjC,kCAAiC;CAAK;;AACtE;EAAgC,0CAAsC;EAAtC,0CAAsC;EAAtC,2CAAsC;EAAtC,uCAAsC;CAAK;;AAC3E;EAAgC,wCAAyC;EAAzC,0CAAyC;EAAzC,8CAAyC;EAAzC,0CAAyC;CAAK;;AAE9E;EAA8B,+BAA0B;EAA1B,2BAA0B;CAAK;;AAC7D;EAA8B,iCAA4B;EAA5B,6BAA4B;CAAK;;AAC/D;EAA8B,uCAAkC;EAAlC,mCAAkC;CAAK;;AAErE;EAAoC,mCAAsC;EAAtC,gCAAsC;EAAtC,uCAAsC;CAAK;;AAC/E;EAAoC,iCAAoC;EAApC,8BAAoC;EAApC,qCAAoC;CAAK;;AAC7E;EAAoC,oCAAkC;EAAlC,iCAAkC;EAAlC,mCAAkC;CAAK;;AAC3E;EAAoC,qCAAyC;EAAzC,kCAAyC;EAAzC,0CAAyC;CAAK;;AAClF;EAAoC,qCAAwC;EAAxC,yCAAwC;CAAK;;AAEjF;EAAiC,oCAAkC;EAAlC,iCAAkC;EAAlC,mCAAkC;CAAK;;AACxE;EAAiC,kCAAgC;EAAhC,+BAAgC;EAAhC,iCAAgC;CAAK;;AACtE;EAAiC,qCAA8B;EAA9B,kCAA8B;EAA9B,+BAA8B;CAAK;;AACpE;EAAiC,uCAAgC;EAAhC,oCAAgC;EAAhC,iCAAgC;CAAK;;AACtE;EAAiC,sCAA+B;EAA/B,mCAA+B;EAA/B,gCAA+B;CAAK;;AAErE;EAAkC,qCAAoC;EAApC,qCAAoC;CAAK;;AAC3E;EAAkC,mCAAkC;EAAlC,mCAAkC;CAAK;;AACzE;EAAkC,sCAAgC;EAAhC,iCAAgC;CAAK;;AACvE;EAAkC,uCAAuC;EAAvC,wCAAuC;CAAK;;AAC9E;EAAkC,0CAAsC;EAAtC,uCAAsC;CAAK;;AAC7E;EAAkC,uCAAiC;EAAjC,kCAAiC;CAAK;;AAExE;EAAgC,qCAA2B;EAA3B,4BAA2B;CAAK;;AAChE;EAAgC,sCAAiC;EAAjC,kCAAiC;CAAK;;AACtE;EAAgC,oCAA+B;EAA/B,gCAA+B;CAAK;;AACpE;EAAgC,uCAA6B;EAA7B,8BAA6B;CAAK;;AAClE;EAAgC,yCAA+B;EAA/B,gCAA+B;CAAK;;AACpE;EAAgC,wCAA8B;EAA9B,+BAA8B;CAAK;;AJiBnE;EIlDA;IAAgC,0CAA8B;IAA9B,yCAA8B;IAA9B,mCAA8B;IAA9B,+BAA8B;GAAK;EACnE;IAAgC,wCAAiC;IAAjC,yCAAiC;IAAjC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,0CAAsC;IAAtC,0CAAsC;IAAtC,2CAAsC;IAAtC,uCAAsC;GAAK;EAC3E;IAAgC,wCAAyC;IAAzC,0CAAyC;IAAzC,8CAAyC;IAAzC,0CAAyC;GAAK;EAE9E;IAA8B,+BAA0B;IAA1B,2BAA0B;GAAK;EAC7D;IAA8B,iCAA4B;IAA5B,6BAA4B;GAAK;EAC/D;IAA8B,uCAAkC;IAAlC,mCAAkC;GAAK;EAErE;IAAoC,mCAAsC;IAAtC,gCAAsC;IAAtC,uCAAsC;GAAK;EAC/E;IAAoC,iCAAoC;IAApC,8BAAoC;IAApC,qCAAoC;GAAK;EAC7E;IAAoC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EAC3E;IAAoC,qCAAyC;IAAzC,kCAAyC;IAAzC,0CAAyC;GAAK;EAClF;IAAoC,qCAAwC;IAAxC,yCAAwC;GAAK;EAEjF;IAAiC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EACxE;IAAiC,kCAAgC;IAAhC,+BAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,qCAA8B;IAA9B,kCAA8B;IAA9B,+BAA8B;GAAK;EACpE;IAAiC,uCAAgC;IAAhC,oCAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,sCAA+B;IAA/B,mCAA+B;IAA/B,gCAA+B;GAAK;EAErE;IAAkC,qCAAoC;IAApC,qCAAoC;GAAK;EAC3E;IAAkC,mCAAkC;IAAlC,mCAAkC;GAAK;EACzE;IAAkC,sCAAgC;IAAhC,iCAAgC;GAAK;EACvE;IAAkC,uCAAuC;IAAvC,wCAAuC;GAAK;EAC9E;IAAkC,0CAAsC;IAAtC,uCAAsC;GAAK;EAC7E;IAAkC,uCAAiC;IAAjC,kCAAiC;GAAK;EAExE;IAAgC,qCAA2B;IAA3B,4BAA2B;GAAK;EAChE;IAAgC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,oCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,uCAA6B;IAA7B,8BAA6B;GAAK;EAClE;IAAgC,yCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,wCAA8B;IAA9B,+BAA8B;GAAK;CP+pCtE;;AG9oCG;EIlDA;IAAgC,0CAA8B;IAA9B,yCAA8B;IAA9B,mCAA8B;IAA9B,+BAA8B;GAAK;EACnE;IAAgC,wCAAiC;IAAjC,yCAAiC;IAAjC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,0CAAsC;IAAtC,0CAAsC;IAAtC,2CAAsC;IAAtC,uCAAsC;GAAK;EAC3E;IAAgC,wCAAyC;IAAzC,0CAAyC;IAAzC,8CAAyC;IAAzC,0CAAyC;GAAK;EAE9E;IAA8B,+BAA0B;IAA1B,2BAA0B;GAAK;EAC7D;IAA8B,iCAA4B;IAA5B,6BAA4B;GAAK;EAC/D;IAA8B,uCAAkC;IAAlC,mCAAkC;GAAK;EAErE;IAAoC,mCAAsC;IAAtC,gCAAsC;IAAtC,uCAAsC;GAAK;EAC/E;IAAoC,iCAAoC;IAApC,8BAAoC;IAApC,qCAAoC;GAAK;EAC7E;IAAoC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EAC3E;IAAoC,qCAAyC;IAAzC,kCAAyC;IAAzC,0CAAyC;GAAK;EAClF;IAAoC,qCAAwC;IAAxC,yCAAwC;GAAK;EAEjF;IAAiC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EACxE;IAAiC,kCAAgC;IAAhC,+BAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,qCAA8B;IAA9B,kCAA8B;IAA9B,+BAA8B;GAAK;EACpE;IAAiC,uCAAgC;IAAhC,oCAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,sCAA+B;IAA/B,mCAA+B;IAA/B,gCAA+B;GAAK;EAErE;IAAkC,qCAAoC;IAApC,qCAAoC;GAAK;EAC3E;IAAkC,mCAAkC;IAAlC,mCAAkC;GAAK;EACzE;IAAkC,sCAAgC;IAAhC,iCAAgC;GAAK;EACvE;IAAkC,uCAAuC;IAAvC,wCAAuC;GAAK;EAC9E;IAAkC,0CAAsC;IAAtC,uCAAsC;GAAK;EAC7E;IAAkC,uCAAiC;IAAjC,kCAAiC;GAAK;EAExE;IAAgC,qCAA2B;IAA3B,4BAA2B;GAAK;EAChE;IAAgC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,oCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,uCAA6B;IAA7B,8BAA6B;GAAK;EAClE;IAAgC,yCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,wCAA8B;IAA9B,+BAA8B;GAAK;CPyvCtE;;AGxuCG;EIlDA;IAAgC,0CAA8B;IAA9B,yCAA8B;IAA9B,mCAA8B;IAA9B,+BAA8B;GAAK;EACnE;IAAgC,wCAAiC;IAAjC,yCAAiC;IAAjC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,0CAAsC;IAAtC,0CAAsC;IAAtC,2CAAsC;IAAtC,uCAAsC;GAAK;EAC3E;IAAgC,wCAAyC;IAAzC,0CAAyC;IAAzC,8CAAyC;IAAzC,0CAAyC;GAAK;EAE9E;IAA8B,+BAA0B;IAA1B,2BAA0B;GAAK;EAC7D;IAA8B,iCAA4B;IAA5B,6BAA4B;GAAK;EAC/D;IAA8B,uCAAkC;IAAlC,mCAAkC;GAAK;EAErE;IAAoC,mCAAsC;IAAtC,gCAAsC;IAAtC,uCAAsC;GAAK;EAC/E;IAAoC,iCAAoC;IAApC,8BAAoC;IAApC,qCAAoC;GAAK;EAC7E;IAAoC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EAC3E;IAAoC,qCAAyC;IAAzC,kCAAyC;IAAzC,0CAAyC;GAAK;EAClF;IAAoC,qCAAwC;IAAxC,yCAAwC;GAAK;EAEjF;IAAiC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EACxE;IAAiC,kCAAgC;IAAhC,+BAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,qCAA8B;IAA9B,kCAA8B;IAA9B,+BAA8B;GAAK;EACpE;IAAiC,uCAAgC;IAAhC,oCAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,sCAA+B;IAA/B,mCAA+B;IAA/B,gCAA+B;GAAK;EAErE;IAAkC,qCAAoC;IAApC,qCAAoC;GAAK;EAC3E;IAAkC,mCAAkC;IAAlC,mCAAkC;GAAK;EACzE;IAAkC,sCAAgC;IAAhC,iCAAgC;GAAK;EACvE;IAAkC,uCAAuC;IAAvC,wCAAuC;GAAK;EAC9E;IAAkC,0CAAsC;IAAtC,uCAAsC;GAAK;EAC7E;IAAkC,uCAAiC;IAAjC,kCAAiC;GAAK;EAExE;IAAgC,qCAA2B;IAA3B,4BAA2B;GAAK;EAChE;IAAgC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,oCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,uCAA6B;IAA7B,8BAA6B;GAAK;EAClE;IAAgC,yCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,wCAA8B;IAA9B,+BAA8B;GAAK;CPm1CtE;;AGl0CG;EIlDA;IAAgC,0CAA8B;IAA9B,yCAA8B;IAA9B,mCAA8B;IAA9B,+BAA8B;GAAK;EACnE;IAAgC,wCAAiC;IAAjC,yCAAiC;IAAjC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,0CAAsC;IAAtC,0CAAsC;IAAtC,2CAAsC;IAAtC,uCAAsC;GAAK;EAC3E;IAAgC,wCAAyC;IAAzC,0CAAyC;IAAzC,8CAAyC;IAAzC,0CAAyC;GAAK;EAE9E;IAA8B,+BAA0B;IAA1B,2BAA0B;GAAK;EAC7D;IAA8B,iCAA4B;IAA5B,6BAA4B;GAAK;EAC/D;IAA8B,uCAAkC;IAAlC,mCAAkC;GAAK;EAErE;IAAoC,mCAAsC;IAAtC,gCAAsC;IAAtC,uCAAsC;GAAK;EAC/E;IAAoC,iCAAoC;IAApC,8BAAoC;IAApC,qCAAoC;GAAK;EAC7E;IAAoC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EAC3E;IAAoC,qCAAyC;IAAzC,kCAAyC;IAAzC,0CAAyC;GAAK;EAClF;IAAoC,qCAAwC;IAAxC,yCAAwC;GAAK;EAEjF;IAAiC,oCAAkC;IAAlC,iCAAkC;IAAlC,mCAAkC;GAAK;EACxE;IAAiC,kCAAgC;IAAhC,+BAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,qCAA8B;IAA9B,kCAA8B;IAA9B,+BAA8B;GAAK;EACpE;IAAiC,uCAAgC;IAAhC,oCAAgC;IAAhC,iCAAgC;GAAK;EACtE;IAAiC,sCAA+B;IAA/B,mCAA+B;IAA/B,gCAA+B;GAAK;EAErE;IAAkC,qCAAoC;IAApC,qCAAoC;GAAK;EAC3E;IAAkC,mCAAkC;IAAlC,mCAAkC;GAAK;EACzE;IAAkC,sCAAgC;IAAhC,iCAAgC;GAAK;EACvE;IAAkC,uCAAuC;IAAvC,wCAAuC;GAAK;EAC9E;IAAkC,0CAAsC;IAAtC,uCAAsC;GAAK;EAC7E;IAAkC,uCAAiC;IAAjC,kCAAiC;GAAK;EAExE;IAAgC,qCAA2B;IAA3B,4BAA2B;GAAK;EAChE;IAAgC,sCAAiC;IAAjC,kCAAiC;GAAK;EACtE;IAAgC,oCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,uCAA6B;IAA7B,8BAA6B;GAAK;EAClE;IAAgC,yCAA+B;IAA/B,gCAA+B;GAAK;EACpE;IAAgC,wCAA8B;IAA9B,+BAA8B;GAAK;CP66CtE","file":"bootstrap-grid.css","sourcesContent":["/*!\n * Bootstrap Grid v4.0.0 (https://getbootstrap.com)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n\n@at-root {\n @-ms-viewport { width: device-width; } // stylelint-disable-line at-rule-no-vendor-prefix\n}\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n@import \"functions\";\n@import \"variables\";\n\n@import \"mixins/breakpoints\";\n@import \"mixins/grid-framework\";\n@import \"mixins/grid\";\n\n@import \"grid\";\n@import \"utilities/display\";\n@import \"utilities/flex\";\n","/*!\n * Bootstrap Grid v4.0.0 (https://getbootstrap.com)\n * Copyright 2011-2018 The Bootstrap Authors\n * Copyright 2011-2018 Twitter, Inc.\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n */\n@-ms-viewport {\n width: device-width;\n}\n\nhtml {\n box-sizing: border-box;\n -ms-overflow-style: scrollbar;\n}\n\n*,\n*::before,\n*::after {\n box-sizing: inherit;\n}\n\n.container {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n@media (min-width: 576px) {\n .container {\n max-width: 540px;\n }\n}\n\n@media (min-width: 768px) {\n .container {\n max-width: 720px;\n }\n}\n\n@media (min-width: 992px) {\n .container {\n max-width: 960px;\n }\n}\n\n@media (min-width: 1200px) {\n .container {\n max-width: 1140px;\n }\n}\n\n.container-fluid {\n width: 100%;\n padding-right: 15px;\n padding-left: 15px;\n margin-right: auto;\n margin-left: auto;\n}\n\n.row {\n display: flex;\n flex-wrap: wrap;\n margin-right: -15px;\n margin-left: -15px;\n}\n\n.no-gutters {\n margin-right: 0;\n margin-left: 0;\n}\n\n.no-gutters > .col,\n.no-gutters > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n}\n\n.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,\n.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,\n.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,\n.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,\n.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,\n.col-xl-auto {\n position: relative;\n width: 100%;\n min-height: 1px;\n padding-right: 15px;\n padding-left: 15px;\n}\n\n.col {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n}\n\n.col-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n}\n\n.col-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n}\n\n.col-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n}\n\n.col-3 {\n flex: 0 0 25%;\n max-width: 25%;\n}\n\n.col-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n}\n\n.col-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n}\n\n.col-6 {\n flex: 0 0 50%;\n max-width: 50%;\n}\n\n.col-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n}\n\n.col-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n}\n\n.col-9 {\n flex: 0 0 75%;\n max-width: 75%;\n}\n\n.col-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n}\n\n.col-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n}\n\n.col-12 {\n flex: 0 0 100%;\n max-width: 100%;\n}\n\n.order-first {\n order: -1;\n}\n\n.order-last {\n order: 13;\n}\n\n.order-0 {\n order: 0;\n}\n\n.order-1 {\n order: 1;\n}\n\n.order-2 {\n order: 2;\n}\n\n.order-3 {\n order: 3;\n}\n\n.order-4 {\n order: 4;\n}\n\n.order-5 {\n order: 5;\n}\n\n.order-6 {\n order: 6;\n}\n\n.order-7 {\n order: 7;\n}\n\n.order-8 {\n order: 8;\n}\n\n.order-9 {\n order: 9;\n}\n\n.order-10 {\n order: 10;\n}\n\n.order-11 {\n order: 11;\n}\n\n.order-12 {\n order: 12;\n}\n\n.offset-1 {\n margin-left: 8.333333%;\n}\n\n.offset-2 {\n margin-left: 16.666667%;\n}\n\n.offset-3 {\n margin-left: 25%;\n}\n\n.offset-4 {\n margin-left: 33.333333%;\n}\n\n.offset-5 {\n margin-left: 41.666667%;\n}\n\n.offset-6 {\n margin-left: 50%;\n}\n\n.offset-7 {\n margin-left: 58.333333%;\n}\n\n.offset-8 {\n margin-left: 66.666667%;\n}\n\n.offset-9 {\n margin-left: 75%;\n}\n\n.offset-10 {\n margin-left: 83.333333%;\n}\n\n.offset-11 {\n margin-left: 91.666667%;\n}\n\n@media (min-width: 576px) {\n .col-sm {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-sm-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-sm-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-sm-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-sm-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-sm-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-sm-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-sm-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-sm-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-sm-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-sm-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-sm-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-sm-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-sm-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-sm-first {\n order: -1;\n }\n .order-sm-last {\n order: 13;\n }\n .order-sm-0 {\n order: 0;\n }\n .order-sm-1 {\n order: 1;\n }\n .order-sm-2 {\n order: 2;\n }\n .order-sm-3 {\n order: 3;\n }\n .order-sm-4 {\n order: 4;\n }\n .order-sm-5 {\n order: 5;\n }\n .order-sm-6 {\n order: 6;\n }\n .order-sm-7 {\n order: 7;\n }\n .order-sm-8 {\n order: 8;\n }\n .order-sm-9 {\n order: 9;\n }\n .order-sm-10 {\n order: 10;\n }\n .order-sm-11 {\n order: 11;\n }\n .order-sm-12 {\n order: 12;\n }\n .offset-sm-0 {\n margin-left: 0;\n }\n .offset-sm-1 {\n margin-left: 8.333333%;\n }\n .offset-sm-2 {\n margin-left: 16.666667%;\n }\n .offset-sm-3 {\n margin-left: 25%;\n }\n .offset-sm-4 {\n margin-left: 33.333333%;\n }\n .offset-sm-5 {\n margin-left: 41.666667%;\n }\n .offset-sm-6 {\n margin-left: 50%;\n }\n .offset-sm-7 {\n margin-left: 58.333333%;\n }\n .offset-sm-8 {\n margin-left: 66.666667%;\n }\n .offset-sm-9 {\n margin-left: 75%;\n }\n .offset-sm-10 {\n margin-left: 83.333333%;\n }\n .offset-sm-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 768px) {\n .col-md {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-md-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-md-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-md-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-md-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-md-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-md-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-md-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-md-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-md-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-md-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-md-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-md-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-md-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-md-first {\n order: -1;\n }\n .order-md-last {\n order: 13;\n }\n .order-md-0 {\n order: 0;\n }\n .order-md-1 {\n order: 1;\n }\n .order-md-2 {\n order: 2;\n }\n .order-md-3 {\n order: 3;\n }\n .order-md-4 {\n order: 4;\n }\n .order-md-5 {\n order: 5;\n }\n .order-md-6 {\n order: 6;\n }\n .order-md-7 {\n order: 7;\n }\n .order-md-8 {\n order: 8;\n }\n .order-md-9 {\n order: 9;\n }\n .order-md-10 {\n order: 10;\n }\n .order-md-11 {\n order: 11;\n }\n .order-md-12 {\n order: 12;\n }\n .offset-md-0 {\n margin-left: 0;\n }\n .offset-md-1 {\n margin-left: 8.333333%;\n }\n .offset-md-2 {\n margin-left: 16.666667%;\n }\n .offset-md-3 {\n margin-left: 25%;\n }\n .offset-md-4 {\n margin-left: 33.333333%;\n }\n .offset-md-5 {\n margin-left: 41.666667%;\n }\n .offset-md-6 {\n margin-left: 50%;\n }\n .offset-md-7 {\n margin-left: 58.333333%;\n }\n .offset-md-8 {\n margin-left: 66.666667%;\n }\n .offset-md-9 {\n margin-left: 75%;\n }\n .offset-md-10 {\n margin-left: 83.333333%;\n }\n .offset-md-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 992px) {\n .col-lg {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-lg-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-lg-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-lg-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-lg-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-lg-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-lg-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-lg-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-lg-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-lg-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-lg-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-lg-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-lg-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-lg-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-lg-first {\n order: -1;\n }\n .order-lg-last {\n order: 13;\n }\n .order-lg-0 {\n order: 0;\n }\n .order-lg-1 {\n order: 1;\n }\n .order-lg-2 {\n order: 2;\n }\n .order-lg-3 {\n order: 3;\n }\n .order-lg-4 {\n order: 4;\n }\n .order-lg-5 {\n order: 5;\n }\n .order-lg-6 {\n order: 6;\n }\n .order-lg-7 {\n order: 7;\n }\n .order-lg-8 {\n order: 8;\n }\n .order-lg-9 {\n order: 9;\n }\n .order-lg-10 {\n order: 10;\n }\n .order-lg-11 {\n order: 11;\n }\n .order-lg-12 {\n order: 12;\n }\n .offset-lg-0 {\n margin-left: 0;\n }\n .offset-lg-1 {\n margin-left: 8.333333%;\n }\n .offset-lg-2 {\n margin-left: 16.666667%;\n }\n .offset-lg-3 {\n margin-left: 25%;\n }\n .offset-lg-4 {\n margin-left: 33.333333%;\n }\n .offset-lg-5 {\n margin-left: 41.666667%;\n }\n .offset-lg-6 {\n margin-left: 50%;\n }\n .offset-lg-7 {\n margin-left: 58.333333%;\n }\n .offset-lg-8 {\n margin-left: 66.666667%;\n }\n .offset-lg-9 {\n margin-left: 75%;\n }\n .offset-lg-10 {\n margin-left: 83.333333%;\n }\n .offset-lg-11 {\n margin-left: 91.666667%;\n }\n}\n\n@media (min-width: 1200px) {\n .col-xl {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col-xl-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none;\n }\n .col-xl-1 {\n flex: 0 0 8.333333%;\n max-width: 8.333333%;\n }\n .col-xl-2 {\n flex: 0 0 16.666667%;\n max-width: 16.666667%;\n }\n .col-xl-3 {\n flex: 0 0 25%;\n max-width: 25%;\n }\n .col-xl-4 {\n flex: 0 0 33.333333%;\n max-width: 33.333333%;\n }\n .col-xl-5 {\n flex: 0 0 41.666667%;\n max-width: 41.666667%;\n }\n .col-xl-6 {\n flex: 0 0 50%;\n max-width: 50%;\n }\n .col-xl-7 {\n flex: 0 0 58.333333%;\n max-width: 58.333333%;\n }\n .col-xl-8 {\n flex: 0 0 66.666667%;\n max-width: 66.666667%;\n }\n .col-xl-9 {\n flex: 0 0 75%;\n max-width: 75%;\n }\n .col-xl-10 {\n flex: 0 0 83.333333%;\n max-width: 83.333333%;\n }\n .col-xl-11 {\n flex: 0 0 91.666667%;\n max-width: 91.666667%;\n }\n .col-xl-12 {\n flex: 0 0 100%;\n max-width: 100%;\n }\n .order-xl-first {\n order: -1;\n }\n .order-xl-last {\n order: 13;\n }\n .order-xl-0 {\n order: 0;\n }\n .order-xl-1 {\n order: 1;\n }\n .order-xl-2 {\n order: 2;\n }\n .order-xl-3 {\n order: 3;\n }\n .order-xl-4 {\n order: 4;\n }\n .order-xl-5 {\n order: 5;\n }\n .order-xl-6 {\n order: 6;\n }\n .order-xl-7 {\n order: 7;\n }\n .order-xl-8 {\n order: 8;\n }\n .order-xl-9 {\n order: 9;\n }\n .order-xl-10 {\n order: 10;\n }\n .order-xl-11 {\n order: 11;\n }\n .order-xl-12 {\n order: 12;\n }\n .offset-xl-0 {\n margin-left: 0;\n }\n .offset-xl-1 {\n margin-left: 8.333333%;\n }\n .offset-xl-2 {\n margin-left: 16.666667%;\n }\n .offset-xl-3 {\n margin-left: 25%;\n }\n .offset-xl-4 {\n margin-left: 33.333333%;\n }\n .offset-xl-5 {\n margin-left: 41.666667%;\n }\n .offset-xl-6 {\n margin-left: 50%;\n }\n .offset-xl-7 {\n margin-left: 58.333333%;\n }\n .offset-xl-8 {\n margin-left: 66.666667%;\n }\n .offset-xl-9 {\n margin-left: 75%;\n }\n .offset-xl-10 {\n margin-left: 83.333333%;\n }\n .offset-xl-11 {\n margin-left: 91.666667%;\n }\n}\n\n.d-none {\n display: none !important;\n}\n\n.d-inline {\n display: inline !important;\n}\n\n.d-inline-block {\n display: inline-block !important;\n}\n\n.d-block {\n display: block !important;\n}\n\n.d-table {\n display: table !important;\n}\n\n.d-table-row {\n display: table-row !important;\n}\n\n.d-table-cell {\n display: table-cell !important;\n}\n\n.d-flex {\n display: flex !important;\n}\n\n.d-inline-flex {\n display: inline-flex !important;\n}\n\n@media (min-width: 576px) {\n .d-sm-none {\n display: none !important;\n }\n .d-sm-inline {\n display: inline !important;\n }\n .d-sm-inline-block {\n display: inline-block !important;\n }\n .d-sm-block {\n display: block !important;\n }\n .d-sm-table {\n display: table !important;\n }\n .d-sm-table-row {\n display: table-row !important;\n }\n .d-sm-table-cell {\n display: table-cell !important;\n }\n .d-sm-flex {\n display: flex !important;\n }\n .d-sm-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 768px) {\n .d-md-none {\n display: none !important;\n }\n .d-md-inline {\n display: inline !important;\n }\n .d-md-inline-block {\n display: inline-block !important;\n }\n .d-md-block {\n display: block !important;\n }\n .d-md-table {\n display: table !important;\n }\n .d-md-table-row {\n display: table-row !important;\n }\n .d-md-table-cell {\n display: table-cell !important;\n }\n .d-md-flex {\n display: flex !important;\n }\n .d-md-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 992px) {\n .d-lg-none {\n display: none !important;\n }\n .d-lg-inline {\n display: inline !important;\n }\n .d-lg-inline-block {\n display: inline-block !important;\n }\n .d-lg-block {\n display: block !important;\n }\n .d-lg-table {\n display: table !important;\n }\n .d-lg-table-row {\n display: table-row !important;\n }\n .d-lg-table-cell {\n display: table-cell !important;\n }\n .d-lg-flex {\n display: flex !important;\n }\n .d-lg-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media (min-width: 1200px) {\n .d-xl-none {\n display: none !important;\n }\n .d-xl-inline {\n display: inline !important;\n }\n .d-xl-inline-block {\n display: inline-block !important;\n }\n .d-xl-block {\n display: block !important;\n }\n .d-xl-table {\n display: table !important;\n }\n .d-xl-table-row {\n display: table-row !important;\n }\n .d-xl-table-cell {\n display: table-cell !important;\n }\n .d-xl-flex {\n display: flex !important;\n }\n .d-xl-inline-flex {\n display: inline-flex !important;\n }\n}\n\n@media print {\n .d-print-none {\n display: none !important;\n }\n .d-print-inline {\n display: inline !important;\n }\n .d-print-inline-block {\n display: inline-block !important;\n }\n .d-print-block {\n display: block !important;\n }\n .d-print-table {\n display: table !important;\n }\n .d-print-table-row {\n display: table-row !important;\n }\n .d-print-table-cell {\n display: table-cell !important;\n }\n .d-print-flex {\n display: flex !important;\n }\n .d-print-inline-flex {\n display: inline-flex !important;\n }\n}\n\n.flex-row {\n flex-direction: row !important;\n}\n\n.flex-column {\n flex-direction: column !important;\n}\n\n.flex-row-reverse {\n flex-direction: row-reverse !important;\n}\n\n.flex-column-reverse {\n flex-direction: column-reverse !important;\n}\n\n.flex-wrap {\n flex-wrap: wrap !important;\n}\n\n.flex-nowrap {\n flex-wrap: nowrap !important;\n}\n\n.flex-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n}\n\n.justify-content-start {\n justify-content: flex-start !important;\n}\n\n.justify-content-end {\n justify-content: flex-end !important;\n}\n\n.justify-content-center {\n justify-content: center !important;\n}\n\n.justify-content-between {\n justify-content: space-between !important;\n}\n\n.justify-content-around {\n justify-content: space-around !important;\n}\n\n.align-items-start {\n align-items: flex-start !important;\n}\n\n.align-items-end {\n align-items: flex-end !important;\n}\n\n.align-items-center {\n align-items: center !important;\n}\n\n.align-items-baseline {\n align-items: baseline !important;\n}\n\n.align-items-stretch {\n align-items: stretch !important;\n}\n\n.align-content-start {\n align-content: flex-start !important;\n}\n\n.align-content-end {\n align-content: flex-end !important;\n}\n\n.align-content-center {\n align-content: center !important;\n}\n\n.align-content-between {\n align-content: space-between !important;\n}\n\n.align-content-around {\n align-content: space-around !important;\n}\n\n.align-content-stretch {\n align-content: stretch !important;\n}\n\n.align-self-auto {\n align-self: auto !important;\n}\n\n.align-self-start {\n align-self: flex-start !important;\n}\n\n.align-self-end {\n align-self: flex-end !important;\n}\n\n.align-self-center {\n align-self: center !important;\n}\n\n.align-self-baseline {\n align-self: baseline !important;\n}\n\n.align-self-stretch {\n align-self: stretch !important;\n}\n\n@media (min-width: 576px) {\n .flex-sm-row {\n flex-direction: row !important;\n }\n .flex-sm-column {\n flex-direction: column !important;\n }\n .flex-sm-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-sm-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-sm-wrap {\n flex-wrap: wrap !important;\n }\n .flex-sm-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-sm-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-sm-start {\n justify-content: flex-start !important;\n }\n .justify-content-sm-end {\n justify-content: flex-end !important;\n }\n .justify-content-sm-center {\n justify-content: center !important;\n }\n .justify-content-sm-between {\n justify-content: space-between !important;\n }\n .justify-content-sm-around {\n justify-content: space-around !important;\n }\n .align-items-sm-start {\n align-items: flex-start !important;\n }\n .align-items-sm-end {\n align-items: flex-end !important;\n }\n .align-items-sm-center {\n align-items: center !important;\n }\n .align-items-sm-baseline {\n align-items: baseline !important;\n }\n .align-items-sm-stretch {\n align-items: stretch !important;\n }\n .align-content-sm-start {\n align-content: flex-start !important;\n }\n .align-content-sm-end {\n align-content: flex-end !important;\n }\n .align-content-sm-center {\n align-content: center !important;\n }\n .align-content-sm-between {\n align-content: space-between !important;\n }\n .align-content-sm-around {\n align-content: space-around !important;\n }\n .align-content-sm-stretch {\n align-content: stretch !important;\n }\n .align-self-sm-auto {\n align-self: auto !important;\n }\n .align-self-sm-start {\n align-self: flex-start !important;\n }\n .align-self-sm-end {\n align-self: flex-end !important;\n }\n .align-self-sm-center {\n align-self: center !important;\n }\n .align-self-sm-baseline {\n align-self: baseline !important;\n }\n .align-self-sm-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 768px) {\n .flex-md-row {\n flex-direction: row !important;\n }\n .flex-md-column {\n flex-direction: column !important;\n }\n .flex-md-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-md-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-md-wrap {\n flex-wrap: wrap !important;\n }\n .flex-md-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-md-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-md-start {\n justify-content: flex-start !important;\n }\n .justify-content-md-end {\n justify-content: flex-end !important;\n }\n .justify-content-md-center {\n justify-content: center !important;\n }\n .justify-content-md-between {\n justify-content: space-between !important;\n }\n .justify-content-md-around {\n justify-content: space-around !important;\n }\n .align-items-md-start {\n align-items: flex-start !important;\n }\n .align-items-md-end {\n align-items: flex-end !important;\n }\n .align-items-md-center {\n align-items: center !important;\n }\n .align-items-md-baseline {\n align-items: baseline !important;\n }\n .align-items-md-stretch {\n align-items: stretch !important;\n }\n .align-content-md-start {\n align-content: flex-start !important;\n }\n .align-content-md-end {\n align-content: flex-end !important;\n }\n .align-content-md-center {\n align-content: center !important;\n }\n .align-content-md-between {\n align-content: space-between !important;\n }\n .align-content-md-around {\n align-content: space-around !important;\n }\n .align-content-md-stretch {\n align-content: stretch !important;\n }\n .align-self-md-auto {\n align-self: auto !important;\n }\n .align-self-md-start {\n align-self: flex-start !important;\n }\n .align-self-md-end {\n align-self: flex-end !important;\n }\n .align-self-md-center {\n align-self: center !important;\n }\n .align-self-md-baseline {\n align-self: baseline !important;\n }\n .align-self-md-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 992px) {\n .flex-lg-row {\n flex-direction: row !important;\n }\n .flex-lg-column {\n flex-direction: column !important;\n }\n .flex-lg-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-lg-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-lg-wrap {\n flex-wrap: wrap !important;\n }\n .flex-lg-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-lg-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-lg-start {\n justify-content: flex-start !important;\n }\n .justify-content-lg-end {\n justify-content: flex-end !important;\n }\n .justify-content-lg-center {\n justify-content: center !important;\n }\n .justify-content-lg-between {\n justify-content: space-between !important;\n }\n .justify-content-lg-around {\n justify-content: space-around !important;\n }\n .align-items-lg-start {\n align-items: flex-start !important;\n }\n .align-items-lg-end {\n align-items: flex-end !important;\n }\n .align-items-lg-center {\n align-items: center !important;\n }\n .align-items-lg-baseline {\n align-items: baseline !important;\n }\n .align-items-lg-stretch {\n align-items: stretch !important;\n }\n .align-content-lg-start {\n align-content: flex-start !important;\n }\n .align-content-lg-end {\n align-content: flex-end !important;\n }\n .align-content-lg-center {\n align-content: center !important;\n }\n .align-content-lg-between {\n align-content: space-between !important;\n }\n .align-content-lg-around {\n align-content: space-around !important;\n }\n .align-content-lg-stretch {\n align-content: stretch !important;\n }\n .align-self-lg-auto {\n align-self: auto !important;\n }\n .align-self-lg-start {\n align-self: flex-start !important;\n }\n .align-self-lg-end {\n align-self: flex-end !important;\n }\n .align-self-lg-center {\n align-self: center !important;\n }\n .align-self-lg-baseline {\n align-self: baseline !important;\n }\n .align-self-lg-stretch {\n align-self: stretch !important;\n }\n}\n\n@media (min-width: 1200px) {\n .flex-xl-row {\n flex-direction: row !important;\n }\n .flex-xl-column {\n flex-direction: column !important;\n }\n .flex-xl-row-reverse {\n flex-direction: row-reverse !important;\n }\n .flex-xl-column-reverse {\n flex-direction: column-reverse !important;\n }\n .flex-xl-wrap {\n flex-wrap: wrap !important;\n }\n .flex-xl-nowrap {\n flex-wrap: nowrap !important;\n }\n .flex-xl-wrap-reverse {\n flex-wrap: wrap-reverse !important;\n }\n .justify-content-xl-start {\n justify-content: flex-start !important;\n }\n .justify-content-xl-end {\n justify-content: flex-end !important;\n }\n .justify-content-xl-center {\n justify-content: center !important;\n }\n .justify-content-xl-between {\n justify-content: space-between !important;\n }\n .justify-content-xl-around {\n justify-content: space-around !important;\n }\n .align-items-xl-start {\n align-items: flex-start !important;\n }\n .align-items-xl-end {\n align-items: flex-end !important;\n }\n .align-items-xl-center {\n align-items: center !important;\n }\n .align-items-xl-baseline {\n align-items: baseline !important;\n }\n .align-items-xl-stretch {\n align-items: stretch !important;\n }\n .align-content-xl-start {\n align-content: flex-start !important;\n }\n .align-content-xl-end {\n align-content: flex-end !important;\n }\n .align-content-xl-center {\n align-content: center !important;\n }\n .align-content-xl-between {\n align-content: space-between !important;\n }\n .align-content-xl-around {\n align-content: space-around !important;\n }\n .align-content-xl-stretch {\n align-content: stretch !important;\n }\n .align-self-xl-auto {\n align-self: auto !important;\n }\n .align-self-xl-start {\n align-self: flex-start !important;\n }\n .align-self-xl-end {\n align-self: flex-end !important;\n }\n .align-self-xl-center {\n align-self: center !important;\n }\n .align-self-xl-baseline {\n align-self: baseline !important;\n }\n .align-self-xl-stretch {\n align-self: stretch !important;\n }\n}\n\n/*# sourceMappingURL=bootstrap-grid.css.map */","// Container widths\n//\n// Set the container width, and override it for fixed navbars in media queries.\n\n@if $enable-grid-classes {\n .container {\n @include make-container();\n @include make-container-max-widths();\n }\n}\n\n// Fluid container\n//\n// Utilizes the mixin meant for fixed width containers, but with 100% width for\n// fluid, full width layouts.\n\n@if $enable-grid-classes {\n .container-fluid {\n @include make-container();\n }\n}\n\n// Row\n//\n// Rows contain and clear the floats of your columns.\n\n@if $enable-grid-classes {\n .row {\n @include make-row();\n }\n\n // Remove the negative margin from default .row, then the horizontal padding\n // from all immediate children columns (to prevent runaway style inheritance).\n .no-gutters {\n margin-right: 0;\n margin-left: 0;\n\n > .col,\n > [class*=\"col-\"] {\n padding-right: 0;\n padding-left: 0;\n }\n }\n}\n\n// Columns\n//\n// Common styles for small and large grid columns\n\n@if $enable-grid-classes {\n @include make-grid-columns();\n}\n","/// Grid system\n//\n// Generate semantic grid columns with these mixins.\n\n@mixin make-container() {\n width: 100%;\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n margin-right: auto;\n margin-left: auto;\n}\n\n\n// For each breakpoint, define the maximum width of the container in a media query\n@mixin make-container-max-widths($max-widths: $container-max-widths, $breakpoints: $grid-breakpoints) {\n @each $breakpoint, $container-max-width in $max-widths {\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n max-width: $container-max-width;\n }\n }\n}\n\n@mixin make-row() {\n display: flex;\n flex-wrap: wrap;\n margin-right: ($grid-gutter-width / -2);\n margin-left: ($grid-gutter-width / -2);\n}\n\n@mixin make-col-ready() {\n position: relative;\n // Prevent columns from becoming too narrow when at smaller grid tiers by\n // always setting `width: 100%;`. This works because we use `flex` values\n // later on to override this initial width.\n width: 100%;\n min-height: 1px; // Prevent collapsing\n padding-right: ($grid-gutter-width / 2);\n padding-left: ($grid-gutter-width / 2);\n}\n\n@mixin make-col($size, $columns: $grid-columns) {\n flex: 0 0 percentage($size / $columns);\n // Add a `max-width` to ensure content within each column does not blow out\n // the width of the column. Applies to IE10+ and Firefox. Chrome and Safari\n // do not appear to require this.\n max-width: percentage($size / $columns);\n}\n\n@mixin make-col-offset($size, $columns: $grid-columns) {\n $num: $size / $columns;\n margin-left: if($num == 0, 0, percentage($num));\n}\n","// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$grid-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next($name, $breakpoints: $grid-breakpoints, $breakpoint-names: map-keys($breakpoints)) {\n $n: index($breakpoint-names, $name);\n @return if($n < length($breakpoint-names), nth($breakpoint-names, $n + 1), null);\n}\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $grid-breakpoints) {\n $min: map-get($breakpoints, $name);\n @return if($min != 0, $min, null);\n}\n\n// Maximum breakpoint width. Null for the largest (last) breakpoint.\n// The maximum value is calculated as the minimum of the next one less 0.02px\n// to work around the limitations of `min-` and `max-` prefixes and viewports with fractional widths.\n// See https://www.w3.org/TR/mediaqueries-4/#mq-min-max\n// Uses 0.02px rather than 0.01px to work around a current rounding bug in Safari.\n// See https://bugs.webkit.org/show_bug.cgi?id=178261\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 767.98px\n@function breakpoint-max($name, $breakpoints: $grid-breakpoints) {\n $next: breakpoint-next($name, $breakpoints);\n @return if($next, breakpoint-min($next, $breakpoints) - .02px, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $grid-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) == null, \"\", \"-#{$name}\");\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $grid-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n } @else {\n @content;\n }\n}\n\n// Media that spans multiple breakpoint widths.\n// Makes the @content apply between the min and max breakpoints\n@mixin media-breakpoint-between($lower, $upper, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($lower, $breakpoints);\n $max: breakpoint-max($upper, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($lower, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($upper, $breakpoints) {\n @content;\n }\n }\n}\n\n// Media between the breakpoint's minimum and maximum widths.\n// No minimum for the smallest breakpoint, and no maximum for the largest one.\n// Makes the @content apply only to the given breakpoint, not viewports any wider or narrower.\n@mixin media-breakpoint-only($name, $breakpoints: $grid-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n $max: breakpoint-max($name, $breakpoints);\n\n @if $min != null and $max != null {\n @media (min-width: $min) and (max-width: $max) {\n @content;\n }\n } @else if $max == null {\n @include media-breakpoint-up($name, $breakpoints) {\n @content;\n }\n } @else if $min == null {\n @include media-breakpoint-down($name, $breakpoints) {\n @content;\n }\n }\n}\n","// Variables\n//\n// Variables should follow the `$component-state-property-size` formula for\n// consistent naming. Ex: $nav-link-disabled-color and $modal-content-box-shadow-xs.\n\n\n//\n// Color system\n//\n\n// stylelint-disable\n$white: #fff !default;\n$gray-100: #f8f9fa !default;\n$gray-200: #e9ecef !default;\n$gray-300: #dee2e6 !default;\n$gray-400: #ced4da !default;\n$gray-500: #adb5bd !default;\n$gray-600: #6c757d !default;\n$gray-700: #495057 !default;\n$gray-800: #343a40 !default;\n$gray-900: #212529 !default;\n$black: #000 !default;\n\n$grays: () !default;\n$grays: map-merge((\n \"100\": $gray-100,\n \"200\": $gray-200,\n \"300\": $gray-300,\n \"400\": $gray-400,\n \"500\": $gray-500,\n \"600\": $gray-600,\n \"700\": $gray-700,\n \"800\": $gray-800,\n \"900\": $gray-900\n), $grays);\n\n$blue: #007bff !default;\n$indigo: #6610f2 !default;\n$purple: #6f42c1 !default;\n$pink: #e83e8c !default;\n$red: #dc3545 !default;\n$orange: #fd7e14 !default;\n$yellow: #ffc107 !default;\n$green: #28a745 !default;\n$teal: #20c997 !default;\n$cyan: #17a2b8 !default;\n\n$colors: () !default;\n$colors: map-merge((\n \"blue\": $blue,\n \"indigo\": $indigo,\n \"purple\": $purple,\n \"pink\": $pink,\n \"red\": $red,\n \"orange\": $orange,\n \"yellow\": $yellow,\n \"green\": $green,\n \"teal\": $teal,\n \"cyan\": $cyan,\n \"white\": $white,\n \"gray\": $gray-600,\n \"gray-dark\": $gray-800\n), $colors);\n\n$primary: $blue !default;\n$secondary: $gray-600 !default;\n$success: $green !default;\n$info: $cyan !default;\n$warning: $yellow !default;\n$danger: $red !default;\n$light: $gray-100 !default;\n$dark: $gray-800 !default;\n\n$theme-colors: () !default;\n$theme-colors: map-merge((\n \"primary\": $primary,\n \"secondary\": $secondary,\n \"success\": $success,\n \"info\": $info,\n \"warning\": $warning,\n \"danger\": $danger,\n \"light\": $light,\n \"dark\": $dark\n), $theme-colors);\n// stylelint-enable\n\n// Set a specific jump point for requesting color jumps\n$theme-color-interval: 8% !default;\n\n// The yiq lightness value that determines when the lightness of color changes from \"dark\" to \"light\". Acceptable values are between 0 and 255.\n$yiq-contrasted-threshold: 150 !default;\n\n// Customize the light and dark text colors for use in our YIQ color contrast function.\n$yiq-text-dark: $gray-900 !default;\n$yiq-text-light: $white !default;\n\n// Options\n//\n// Quickly modify global styling by enabling or disabling optional features.\n\n$enable-caret: true !default;\n$enable-rounded: true !default;\n$enable-shadows: false !default;\n$enable-gradients: false !default;\n$enable-transitions: true !default;\n$enable-hover-media-query: false !default; // Deprecated, no longer affects any compiled CSS\n$enable-grid-classes: true !default;\n$enable-print-styles: true !default;\n\n\n// Spacing\n//\n// Control the default styling of most Bootstrap elements by modifying these\n// variables. Mostly focused on spacing.\n// You can add more entries to the $spacers map, should you need more variation.\n\n// stylelint-disable\n$spacer: 1rem !default;\n$spacers: () !default;\n$spacers: map-merge((\n 0: 0,\n 1: ($spacer * .25),\n 2: ($spacer * .5),\n 3: $spacer,\n 4: ($spacer * 1.5),\n 5: ($spacer * 3)\n), $spacers);\n\n// This variable affects the `.h-*` and `.w-*` classes.\n$sizes: () !default;\n$sizes: map-merge((\n 25: 25%,\n 50: 50%,\n 75: 75%,\n 100: 100%\n), $sizes);\n// stylelint-enable\n\n// Body\n//\n// Settings for the `<body>` element.\n\n$body-bg: $white !default;\n$body-color: $gray-900 !default;\n\n// Links\n//\n// Style anchor elements.\n\n$link-color: theme-color(\"primary\") !default;\n$link-decoration: none !default;\n$link-hover-color: darken($link-color, 15%) !default;\n$link-hover-decoration: underline !default;\n\n// Paragraphs\n//\n// Style p element.\n\n$paragraph-margin-bottom: 1rem !default;\n\n\n// Grid breakpoints\n//\n// Define the minimum dimensions at which your layout will change,\n// adapting to different screen sizes, for use in media queries.\n\n$grid-breakpoints: (\n xs: 0,\n sm: 576px,\n md: 768px,\n lg: 992px,\n xl: 1200px\n) !default;\n\n@include _assert-ascending($grid-breakpoints, \"$grid-breakpoints\");\n@include _assert-starts-at-zero($grid-breakpoints);\n\n\n// Grid containers\n//\n// Define the maximum width of `.container` for different screen sizes.\n\n$container-max-widths: (\n sm: 540px,\n md: 720px,\n lg: 960px,\n xl: 1140px\n) !default;\n\n@include _assert-ascending($container-max-widths, \"$container-max-widths\");\n\n\n// Grid columns\n//\n// Set the number of columns and specify the width of the gutters.\n\n$grid-columns: 12 !default;\n$grid-gutter-width: 30px !default;\n\n// Components\n//\n// Define common padding and border radius sizes and more.\n\n$line-height-lg: 1.5 !default;\n$line-height-sm: 1.5 !default;\n\n$border-width: 1px !default;\n$border-color: $gray-300 !default;\n\n$border-radius: .25rem !default;\n$border-radius-lg: .3rem !default;\n$border-radius-sm: .2rem !default;\n\n$component-active-color: $white !default;\n$component-active-bg: theme-color(\"primary\") !default;\n\n$caret-width: .3em !default;\n\n$transition-base: all .2s ease-in-out !default;\n$transition-fade: opacity .15s linear !default;\n$transition-collapse: height .35s ease !default;\n\n\n// Fonts\n//\n// Font, line-height, and color for body text, headings, and more.\n\n// stylelint-disable value-keyword-case\n$font-family-sans-serif: -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\" !default;\n$font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, \"Liberation Mono\", \"Courier New\", monospace !default;\n$font-family-base: $font-family-sans-serif !default;\n// stylelint-enable value-keyword-case\n\n$font-size-base: 1rem !default; // Assumes the browser default, typically `16px`\n$font-size-lg: ($font-size-base * 1.25) !default;\n$font-size-sm: ($font-size-base * .875) !default;\n\n$font-weight-light: 300 !default;\n$font-weight-normal: 400 !default;\n$font-weight-bold: 700 !default;\n\n$font-weight-base: $font-weight-normal !default;\n$line-height-base: 1.5 !default;\n\n$h1-font-size: $font-size-base * 2.5 !default;\n$h2-font-size: $font-size-base * 2 !default;\n$h3-font-size: $font-size-base * 1.75 !default;\n$h4-font-size: $font-size-base * 1.5 !default;\n$h5-font-size: $font-size-base * 1.25 !default;\n$h6-font-size: $font-size-base !default;\n\n$headings-margin-bottom: ($spacer / 2) !default;\n$headings-font-family: inherit !default;\n$headings-font-weight: 500 !default;\n$headings-line-height: 1.2 !default;\n$headings-color: inherit !default;\n\n$display1-size: 6rem !default;\n$display2-size: 5.5rem !default;\n$display3-size: 4.5rem !default;\n$display4-size: 3.5rem !default;\n\n$display1-weight: 300 !default;\n$display2-weight: 300 !default;\n$display3-weight: 300 !default;\n$display4-weight: 300 !default;\n$display-line-height: $headings-line-height !default;\n\n$lead-font-size: ($font-size-base * 1.25) !default;\n$lead-font-weight: 300 !default;\n\n$small-font-size: 80% !default;\n\n$text-muted: $gray-600 !default;\n\n$blockquote-small-color: $gray-600 !default;\n$blockquote-font-size: ($font-size-base * 1.25) !default;\n\n$hr-border-color: rgba($black, .1) !default;\n$hr-border-width: $border-width !default;\n\n$mark-padding: .2em !default;\n\n$dt-font-weight: $font-weight-bold !default;\n\n$kbd-box-shadow: inset 0 -.1rem 0 rgba($black, .25) !default;\n$nested-kbd-font-weight: $font-weight-bold !default;\n\n$list-inline-padding: .5rem !default;\n\n$mark-bg: #fcf8e3 !default;\n\n$hr-margin-y: $spacer !default;\n\n\n// Tables\n//\n// Customizes the `.table` component with basic values, each used across all table variations.\n\n$table-cell-padding: .75rem !default;\n$table-cell-padding-sm: .3rem !default;\n\n$table-bg: transparent !default;\n$table-accent-bg: rgba($black, .05) !default;\n$table-hover-bg: rgba($black, .075) !default;\n$table-active-bg: $table-hover-bg !default;\n\n$table-border-width: $border-width !default;\n$table-border-color: $gray-300 !default;\n\n$table-head-bg: $gray-200 !default;\n$table-head-color: $gray-700 !default;\n\n$table-dark-bg: $gray-900 !default;\n$table-dark-accent-bg: rgba($white, .05) !default;\n$table-dark-hover-bg: rgba($white, .075) !default;\n$table-dark-border-color: lighten($gray-900, 7.5%) !default;\n$table-dark-color: $body-bg !default;\n\n\n// Buttons + Forms\n//\n// Shared variables that are reassigned to `$input-` and `$btn-` specific variables.\n\n$input-btn-padding-y: .375rem !default;\n$input-btn-padding-x: .75rem !default;\n$input-btn-line-height: $line-height-base !default;\n\n$input-btn-focus-width: .2rem !default;\n$input-btn-focus-color: rgba($component-active-bg, .25) !default;\n$input-btn-focus-box-shadow: 0 0 0 $input-btn-focus-width $input-btn-focus-color !default;\n\n$input-btn-padding-y-sm: .25rem !default;\n$input-btn-padding-x-sm: .5rem !default;\n$input-btn-line-height-sm: $line-height-sm !default;\n\n$input-btn-padding-y-lg: .5rem !default;\n$input-btn-padding-x-lg: 1rem !default;\n$input-btn-line-height-lg: $line-height-lg !default;\n\n$input-btn-border-width: $border-width !default;\n\n\n// Buttons\n//\n// For each of Bootstrap's buttons, define text, background, and border color.\n\n$btn-padding-y: $input-btn-padding-y !default;\n$btn-padding-x: $input-btn-padding-x !default;\n$btn-line-height: $input-btn-line-height !default;\n\n$btn-padding-y-sm: $input-btn-padding-y-sm !default;\n$btn-padding-x-sm: $input-btn-padding-x-sm !default;\n$btn-line-height-sm: $input-btn-line-height-sm !default;\n\n$btn-padding-y-lg: $input-btn-padding-y-lg !default;\n$btn-padding-x-lg: $input-btn-padding-x-lg !default;\n$btn-line-height-lg: $input-btn-line-height-lg !default;\n\n$btn-border-width: $input-btn-border-width !default;\n\n$btn-font-weight: $font-weight-normal !default;\n$btn-box-shadow: inset 0 1px 0 rgba($white, .15), 0 1px 1px rgba($black, .075) !default;\n$btn-focus-width: $input-btn-focus-width !default;\n$btn-focus-box-shadow: $input-btn-focus-box-shadow !default;\n$btn-disabled-opacity: .65 !default;\n$btn-active-box-shadow: inset 0 3px 5px rgba($black, .125) !default;\n\n$btn-link-disabled-color: $gray-600 !default;\n\n$btn-block-spacing-y: .5rem !default;\n\n// Allows for customizing button radius independently from global border radius\n$btn-border-radius: $border-radius !default;\n$btn-border-radius-lg: $border-radius-lg !default;\n$btn-border-radius-sm: $border-radius-sm !default;\n\n$btn-transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n\n// Forms\n\n$input-padding-y: $input-btn-padding-y !default;\n$input-padding-x: $input-btn-padding-x !default;\n$input-line-height: $input-btn-line-height !default;\n\n$input-padding-y-sm: $input-btn-padding-y-sm !default;\n$input-padding-x-sm: $input-btn-padding-x-sm !default;\n$input-line-height-sm: $input-btn-line-height-sm !default;\n\n$input-padding-y-lg: $input-btn-padding-y-lg !default;\n$input-padding-x-lg: $input-btn-padding-x-lg !default;\n$input-line-height-lg: $input-btn-line-height-lg !default;\n\n$input-bg: $white !default;\n$input-disabled-bg: $gray-200 !default;\n\n$input-color: $gray-700 !default;\n$input-border-color: $gray-400 !default;\n$input-border-width: $input-btn-border-width !default;\n$input-box-shadow: inset 0 1px 1px rgba($black, .075) !default;\n\n$input-border-radius: $border-radius !default;\n$input-border-radius-lg: $border-radius-lg !default;\n$input-border-radius-sm: $border-radius-sm !default;\n\n$input-focus-bg: $input-bg !default;\n$input-focus-border-color: lighten($component-active-bg, 25%) !default;\n$input-focus-color: $input-color !default;\n$input-focus-width: $input-btn-focus-width !default;\n$input-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$input-placeholder-color: $gray-600 !default;\n\n$input-height-border: $input-border-width * 2 !default;\n\n$input-height-inner: ($font-size-base * $input-btn-line-height) + ($input-btn-padding-y * 2) !default;\n$input-height: calc(#{$input-height-inner} + #{$input-height-border}) !default;\n\n$input-height-inner-sm: ($font-size-sm * $input-btn-line-height-sm) + ($input-btn-padding-y-sm * 2) !default;\n$input-height-sm: calc(#{$input-height-inner-sm} + #{$input-height-border}) !default;\n\n$input-height-inner-lg: ($font-size-lg * $input-btn-line-height-lg) + ($input-btn-padding-y-lg * 2) !default;\n$input-height-lg: calc(#{$input-height-inner-lg} + #{$input-height-border}) !default;\n\n$input-transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out !default;\n\n$form-text-margin-top: .25rem !default;\n\n$form-check-input-gutter: 1.25rem !default;\n$form-check-input-margin-y: .3rem !default;\n$form-check-input-margin-x: .25rem !default;\n\n$form-check-inline-margin-x: .75rem !default;\n$form-check-inline-input-margin-x: .3125rem !default;\n\n$form-group-margin-bottom: 1rem !default;\n\n$input-group-addon-color: $input-color !default;\n$input-group-addon-bg: $gray-200 !default;\n$input-group-addon-border-color: $input-border-color !default;\n\n$custom-control-gutter: 1.5rem !default;\n$custom-control-spacer-x: 1rem !default;\n\n$custom-control-indicator-size: 1rem !default;\n$custom-control-indicator-bg: $gray-300 !default;\n$custom-control-indicator-bg-size: 50% 50% !default;\n$custom-control-indicator-box-shadow: inset 0 .25rem .25rem rgba($black, .1) !default;\n\n$custom-control-indicator-disabled-bg: $gray-200 !default;\n$custom-control-label-disabled-color: $gray-600 !default;\n\n$custom-control-indicator-checked-color: $component-active-color !default;\n$custom-control-indicator-checked-bg: $component-active-bg !default;\n$custom-control-indicator-checked-disabled-bg: rgba(theme-color(\"primary\"), .5) !default;\n$custom-control-indicator-checked-box-shadow: none !default;\n\n$custom-control-indicator-focus-box-shadow: 0 0 0 1px $body-bg, $input-btn-focus-box-shadow !default;\n\n$custom-control-indicator-active-color: $component-active-color !default;\n$custom-control-indicator-active-bg: lighten($component-active-bg, 35%) !default;\n$custom-control-indicator-active-box-shadow: none !default;\n\n$custom-checkbox-indicator-border-radius: $border-radius !default;\n$custom-checkbox-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 8 8'%3E%3Cpath fill='#{$custom-control-indicator-checked-color}' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26 2.974 7.25 8 2.193z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-checkbox-indicator-indeterminate-bg: $component-active-bg !default;\n$custom-checkbox-indicator-indeterminate-color: $custom-control-indicator-checked-color !default;\n$custom-checkbox-indicator-icon-indeterminate: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 4'%3E%3Cpath stroke='#{$custom-checkbox-indicator-indeterminate-color}' d='M0 2h4'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-checkbox-indicator-indeterminate-box-shadow: none !default;\n\n$custom-radio-indicator-border-radius: 50% !default;\n$custom-radio-indicator-icon-checked: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='#{$custom-control-indicator-checked-color}'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$custom-select-padding-y: .375rem !default;\n$custom-select-padding-x: .75rem !default;\n$custom-select-height: $input-height !default;\n$custom-select-indicator-padding: 1rem !default; // Extra padding to account for the presence of the background-image based indicator\n$custom-select-line-height: $input-btn-line-height !default;\n$custom-select-color: $input-color !default;\n$custom-select-disabled-color: $gray-600 !default;\n$custom-select-bg: $white !default;\n$custom-select-disabled-bg: $gray-200 !default;\n$custom-select-bg-size: 8px 10px !default; // In pixels because image dimensions\n$custom-select-indicator-color: $gray-800 !default;\n$custom-select-indicator: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='#{$custom-select-indicator-color}' d='M2 0L0 2h4zm0 5L0 3h4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$custom-select-border-width: $input-btn-border-width !default;\n$custom-select-border-color: $input-border-color !default;\n$custom-select-border-radius: $border-radius !default;\n\n$custom-select-focus-border-color: $input-focus-border-color !default;\n$custom-select-focus-box-shadow: inset 0 1px 2px rgba($black, .075), 0 0 5px rgba($custom-select-focus-border-color, .5) !default;\n\n$custom-select-font-size-sm: 75% !default;\n$custom-select-height-sm: $input-height-sm !default;\n\n$custom-select-font-size-lg: 125% !default;\n$custom-select-height-lg: $input-height-lg !default;\n\n$custom-file-height: $input-height !default;\n$custom-file-focus-border-color: $input-focus-border-color !default;\n$custom-file-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$custom-file-padding-y: $input-btn-padding-y !default;\n$custom-file-padding-x: $input-btn-padding-x !default;\n$custom-file-line-height: $input-btn-line-height !default;\n$custom-file-color: $input-color !default;\n$custom-file-bg: $input-bg !default;\n$custom-file-border-width: $input-btn-border-width !default;\n$custom-file-border-color: $input-border-color !default;\n$custom-file-border-radius: $input-border-radius !default;\n$custom-file-box-shadow: $input-box-shadow !default;\n$custom-file-button-color: $custom-file-color !default;\n$custom-file-button-bg: $input-group-addon-bg !default;\n$custom-file-text: (\n en: \"Browse\"\n) !default;\n\n\n// Form validation\n$form-feedback-margin-top: $form-text-margin-top !default;\n$form-feedback-font-size: $small-font-size !default;\n$form-feedback-valid-color: theme-color(\"success\") !default;\n$form-feedback-invalid-color: theme-color(\"danger\") !default;\n\n\n// Dropdowns\n//\n// Dropdown menu container and contents.\n\n$dropdown-min-width: 10rem !default;\n$dropdown-padding-y: .5rem !default;\n$dropdown-spacer: .125rem !default;\n$dropdown-bg: $white !default;\n$dropdown-border-color: rgba($black, .15) !default;\n$dropdown-border-radius: $border-radius !default;\n$dropdown-border-width: $border-width !default;\n$dropdown-divider-bg: $gray-200 !default;\n$dropdown-box-shadow: 0 .5rem 1rem rgba($black, .175) !default;\n\n$dropdown-link-color: $gray-900 !default;\n$dropdown-link-hover-color: darken($gray-900, 5%) !default;\n$dropdown-link-hover-bg: $gray-100 !default;\n\n$dropdown-link-active-color: $component-active-color !default;\n$dropdown-link-active-bg: $component-active-bg !default;\n\n$dropdown-link-disabled-color: $gray-600 !default;\n\n$dropdown-item-padding-y: .25rem !default;\n$dropdown-item-padding-x: 1.5rem !default;\n\n$dropdown-header-color: $gray-600 !default;\n\n\n// Z-index master list\n//\n// Warning: Avoid customizing these values. They're used for a bird's eye view\n// of components dependent on the z-axis and are designed to all work together.\n\n$zindex-dropdown: 1000 !default;\n$zindex-sticky: 1020 !default;\n$zindex-fixed: 1030 !default;\n$zindex-modal-backdrop: 1040 !default;\n$zindex-modal: 1050 !default;\n$zindex-popover: 1060 !default;\n$zindex-tooltip: 1070 !default;\n\n// Navs\n\n$nav-link-padding-y: .5rem !default;\n$nav-link-padding-x: 1rem !default;\n$nav-link-disabled-color: $gray-600 !default;\n\n$nav-tabs-border-color: $gray-300 !default;\n$nav-tabs-border-width: $border-width !default;\n$nav-tabs-border-radius: $border-radius !default;\n$nav-tabs-link-hover-border-color: $gray-200 $gray-200 $nav-tabs-border-color !default;\n$nav-tabs-link-active-color: $gray-700 !default;\n$nav-tabs-link-active-bg: $body-bg !default;\n$nav-tabs-link-active-border-color: $gray-300 $gray-300 $nav-tabs-link-active-bg !default;\n\n$nav-pills-border-radius: $border-radius !default;\n$nav-pills-link-active-color: $component-active-color !default;\n$nav-pills-link-active-bg: $component-active-bg !default;\n\n// Navbar\n\n$navbar-padding-y: ($spacer / 2) !default;\n$navbar-padding-x: $spacer !default;\n\n$navbar-nav-link-padding-x: .5rem !default;\n\n$navbar-brand-font-size: $font-size-lg !default;\n// Compute the navbar-brand padding-y so the navbar-brand will have the same height as navbar-text and nav-link\n$nav-link-height: ($font-size-base * $line-height-base + $nav-link-padding-y * 2) !default;\n$navbar-brand-height: $navbar-brand-font-size * $line-height-base !default;\n$navbar-brand-padding-y: ($nav-link-height - $navbar-brand-height) / 2 !default;\n\n$navbar-toggler-padding-y: .25rem !default;\n$navbar-toggler-padding-x: .75rem !default;\n$navbar-toggler-font-size: $font-size-lg !default;\n$navbar-toggler-border-radius: $btn-border-radius !default;\n\n$navbar-dark-color: rgba($white, .5) !default;\n$navbar-dark-hover-color: rgba($white, .75) !default;\n$navbar-dark-active-color: $white !default;\n$navbar-dark-disabled-color: rgba($white, .25) !default;\n$navbar-dark-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-dark-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-dark-toggler-border-color: rgba($white, .1) !default;\n\n$navbar-light-color: rgba($black, .5) !default;\n$navbar-light-hover-color: rgba($black, .7) !default;\n$navbar-light-active-color: rgba($black, .9) !default;\n$navbar-light-disabled-color: rgba($black, .3) !default;\n$navbar-light-toggler-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='#{$navbar-light-color}' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$navbar-light-toggler-border-color: rgba($black, .1) !default;\n\n// Pagination\n\n$pagination-padding-y: .5rem !default;\n$pagination-padding-x: .75rem !default;\n$pagination-padding-y-sm: .25rem !default;\n$pagination-padding-x-sm: .5rem !default;\n$pagination-padding-y-lg: .75rem !default;\n$pagination-padding-x-lg: 1.5rem !default;\n$pagination-line-height: 1.25 !default;\n\n$pagination-color: $link-color !default;\n$pagination-bg: $white !default;\n$pagination-border-width: $border-width !default;\n$pagination-border-color: $gray-300 !default;\n\n$pagination-focus-box-shadow: $input-btn-focus-box-shadow !default;\n\n$pagination-hover-color: $link-hover-color !default;\n$pagination-hover-bg: $gray-200 !default;\n$pagination-hover-border-color: $gray-300 !default;\n\n$pagination-active-color: $component-active-color !default;\n$pagination-active-bg: $component-active-bg !default;\n$pagination-active-border-color: $pagination-active-bg !default;\n\n$pagination-disabled-color: $gray-600 !default;\n$pagination-disabled-bg: $white !default;\n$pagination-disabled-border-color: $gray-300 !default;\n\n\n// Jumbotron\n\n$jumbotron-padding: 2rem !default;\n$jumbotron-bg: $gray-200 !default;\n\n\n// Cards\n\n$card-spacer-y: .75rem !default;\n$card-spacer-x: 1.25rem !default;\n$card-border-width: $border-width !default;\n$card-border-radius: $border-radius !default;\n$card-border-color: rgba($black, .125) !default;\n$card-inner-border-radius: calc(#{$card-border-radius} - #{$card-border-width}) !default;\n$card-cap-bg: rgba($black, .03) !default;\n$card-bg: $white !default;\n\n$card-img-overlay-padding: 1.25rem !default;\n\n$card-group-margin: ($grid-gutter-width / 2) !default;\n$card-deck-margin: $card-group-margin !default;\n\n$card-columns-count: 3 !default;\n$card-columns-gap: 1.25rem !default;\n$card-columns-margin: $card-spacer-y !default;\n\n\n// Tooltips\n\n$tooltip-font-size: $font-size-sm !default;\n$tooltip-max-width: 200px !default;\n$tooltip-color: $white !default;\n$tooltip-bg: $black !default;\n$tooltip-border-radius: $border-radius !default;\n$tooltip-opacity: .9 !default;\n$tooltip-padding-y: .25rem !default;\n$tooltip-padding-x: .5rem !default;\n$tooltip-margin: 0 !default;\n\n$tooltip-arrow-width: .8rem !default;\n$tooltip-arrow-height: .4rem !default;\n$tooltip-arrow-color: $tooltip-bg !default;\n\n\n// Popovers\n\n$popover-font-size: $font-size-sm !default;\n$popover-bg: $white !default;\n$popover-max-width: 276px !default;\n$popover-border-width: $border-width !default;\n$popover-border-color: rgba($black, .2) !default;\n$popover-border-radius: $border-radius-lg !default;\n$popover-box-shadow: 0 .25rem .5rem rgba($black, .2) !default;\n\n$popover-header-bg: darken($popover-bg, 3%) !default;\n$popover-header-color: $headings-color !default;\n$popover-header-padding-y: .5rem !default;\n$popover-header-padding-x: .75rem !default;\n\n$popover-body-color: $body-color !default;\n$popover-body-padding-y: $popover-header-padding-y !default;\n$popover-body-padding-x: $popover-header-padding-x !default;\n\n$popover-arrow-width: 1rem !default;\n$popover-arrow-height: .5rem !default;\n$popover-arrow-color: $popover-bg !default;\n\n$popover-arrow-outer-color: fade-in($popover-border-color, .05) !default;\n\n\n// Badges\n\n$badge-font-size: 75% !default;\n$badge-font-weight: $font-weight-bold !default;\n$badge-padding-y: .25em !default;\n$badge-padding-x: .4em !default;\n$badge-border-radius: $border-radius !default;\n\n$badge-pill-padding-x: .6em !default;\n// Use a higher than normal value to ensure completely rounded edges when\n// customizing padding or font-size on labels.\n$badge-pill-border-radius: 10rem !default;\n\n\n// Modals\n\n// Padding applied to the modal body\n$modal-inner-padding: 1rem !default;\n\n$modal-dialog-margin: .5rem !default;\n$modal-dialog-margin-y-sm-up: 1.75rem !default;\n\n$modal-title-line-height: $line-height-base !default;\n\n$modal-content-bg: $white !default;\n$modal-content-border-color: rgba($black, .2) !default;\n$modal-content-border-width: $border-width !default;\n$modal-content-box-shadow-xs: 0 .25rem .5rem rgba($black, .5) !default;\n$modal-content-box-shadow-sm-up: 0 .5rem 1rem rgba($black, .5) !default;\n\n$modal-backdrop-bg: $black !default;\n$modal-backdrop-opacity: .5 !default;\n$modal-header-border-color: $gray-200 !default;\n$modal-footer-border-color: $modal-header-border-color !default;\n$modal-header-border-width: $modal-content-border-width !default;\n$modal-footer-border-width: $modal-header-border-width !default;\n$modal-header-padding: 1rem !default;\n\n$modal-lg: 800px !default;\n$modal-md: 500px !default;\n$modal-sm: 300px !default;\n\n$modal-transition: transform .3s ease-out !default;\n\n\n// Alerts\n//\n// Define alert colors, border radius, and padding.\n\n$alert-padding-y: .75rem !default;\n$alert-padding-x: 1.25rem !default;\n$alert-margin-bottom: 1rem !default;\n$alert-border-radius: $border-radius !default;\n$alert-link-font-weight: $font-weight-bold !default;\n$alert-border-width: $border-width !default;\n\n$alert-bg-level: -10 !default;\n$alert-border-level: -9 !default;\n$alert-color-level: 6 !default;\n\n\n// Progress bars\n\n$progress-height: 1rem !default;\n$progress-font-size: ($font-size-base * .75) !default;\n$progress-bg: $gray-200 !default;\n$progress-border-radius: $border-radius !default;\n$progress-box-shadow: inset 0 .1rem .1rem rgba($black, .1) !default;\n$progress-bar-color: $white !default;\n$progress-bar-bg: theme-color(\"primary\") !default;\n$progress-bar-animation-timing: 1s linear infinite !default;\n$progress-bar-transition: width .6s ease !default;\n\n// List group\n\n$list-group-bg: $white !default;\n$list-group-border-color: rgba($black, .125) !default;\n$list-group-border-width: $border-width !default;\n$list-group-border-radius: $border-radius !default;\n\n$list-group-item-padding-y: .75rem !default;\n$list-group-item-padding-x: 1.25rem !default;\n\n$list-group-hover-bg: $gray-100 !default;\n$list-group-active-color: $component-active-color !default;\n$list-group-active-bg: $component-active-bg !default;\n$list-group-active-border-color: $list-group-active-bg !default;\n\n$list-group-disabled-color: $gray-600 !default;\n$list-group-disabled-bg: $list-group-bg !default;\n\n$list-group-action-color: $gray-700 !default;\n$list-group-action-hover-color: $list-group-action-color !default;\n\n$list-group-action-active-color: $body-color !default;\n$list-group-action-active-bg: $gray-200 !default;\n\n\n// Image thumbnails\n\n$thumbnail-padding: .25rem !default;\n$thumbnail-bg: $body-bg !default;\n$thumbnail-border-width: $border-width !default;\n$thumbnail-border-color: $gray-300 !default;\n$thumbnail-border-radius: $border-radius !default;\n$thumbnail-box-shadow: 0 1px 2px rgba($black, .075) !default;\n\n\n// Figures\n\n$figure-caption-font-size: 90% !default;\n$figure-caption-color: $gray-600 !default;\n\n\n// Breadcrumbs\n\n$breadcrumb-padding-y: .75rem !default;\n$breadcrumb-padding-x: 1rem !default;\n$breadcrumb-item-padding: .5rem !default;\n\n$breadcrumb-margin-bottom: 1rem !default;\n\n$breadcrumb-bg: $gray-200 !default;\n$breadcrumb-divider-color: $gray-600 !default;\n$breadcrumb-active-color: $gray-600 !default;\n$breadcrumb-divider: \"/\" !default;\n\n\n// Carousel\n\n$carousel-control-color: $white !default;\n$carousel-control-width: 15% !default;\n$carousel-control-opacity: .5 !default;\n\n$carousel-indicator-width: 30px !default;\n$carousel-indicator-height: 3px !default;\n$carousel-indicator-spacer: 3px !default;\n$carousel-indicator-active-bg: $white !default;\n\n$carousel-caption-width: 70% !default;\n$carousel-caption-color: $white !default;\n\n$carousel-control-icon-width: 20px !default;\n\n$carousel-control-prev-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M5.25 0l-4 4 4 4 1.5-1.5-2.5-2.5 2.5-2.5-1.5-1.5z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n$carousel-control-next-icon-bg: str-replace(url(\"data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='#{$carousel-control-color}' viewBox='0 0 8 8'%3E%3Cpath d='M2.75 0l-1.5 1.5 2.5 2.5-2.5 2.5 1.5 1.5 4-4-4-4z'/%3E%3C/svg%3E\"), \"#\", \"%23\") !default;\n\n$carousel-transition: transform .6s ease !default;\n\n\n// Close\n\n$close-font-size: $font-size-base * 1.5 !default;\n$close-font-weight: $font-weight-bold !default;\n$close-color: $black !default;\n$close-text-shadow: 0 1px 0 $white !default;\n\n// Code\n\n$code-font-size: 87.5% !default;\n$code-color: $pink !default;\n\n$kbd-padding-y: .2rem !default;\n$kbd-padding-x: .4rem !default;\n$kbd-font-size: $code-font-size !default;\n$kbd-color: $white !default;\n$kbd-bg: $gray-900 !default;\n\n$pre-color: $gray-900 !default;\n$pre-scrollable-max-height: 340px !default;\n\n\n// Printing\n$print-page-size: a3 !default;\n$print-body-min-width: map-get($grid-breakpoints, \"lg\") !default;\n","// Framework grid generation\n//\n// Used only by Bootstrap to generate the correct number of grid classes given\n// any value of `$grid-columns`.\n\n@mixin make-grid-columns($columns: $grid-columns, $gutter: $grid-gutter-width, $breakpoints: $grid-breakpoints) {\n // Common properties for all breakpoints\n %grid-column {\n position: relative;\n width: 100%;\n min-height: 1px; // Prevent columns from collapsing when empty\n padding-right: ($gutter / 2);\n padding-left: ($gutter / 2);\n }\n\n @each $breakpoint in map-keys($breakpoints) {\n $infix: breakpoint-infix($breakpoint, $breakpoints);\n\n // Allow columns to stretch full width below their breakpoints\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @extend %grid-column;\n }\n }\n .col#{$infix},\n .col#{$infix}-auto {\n @extend %grid-column;\n }\n\n @include media-breakpoint-up($breakpoint, $breakpoints) {\n // Provide basic `.col-{bp}` classes for equal-width flexbox columns\n .col#{$infix} {\n flex-basis: 0;\n flex-grow: 1;\n max-width: 100%;\n }\n .col#{$infix}-auto {\n flex: 0 0 auto;\n width: auto;\n max-width: none; // Reset earlier grid tiers\n }\n\n @for $i from 1 through $columns {\n .col#{$infix}-#{$i} {\n @include make-col($i, $columns);\n }\n }\n\n .order#{$infix}-first { order: -1; }\n\n .order#{$infix}-last { order: $columns + 1; }\n\n @for $i from 0 through $columns {\n .order#{$infix}-#{$i} { order: $i; }\n }\n\n // `$columns - 1` because offsetting by the width of an entire row isn't possible\n @for $i from 0 through ($columns - 1) {\n @if not ($infix == \"\" and $i == 0) { // Avoid emitting useless .offset-0\n .offset#{$infix}-#{$i} {\n @include make-col-offset($i, $columns);\n }\n }\n }\n }\n }\n}\n","// stylelint-disable declaration-no-important\n\n//\n// Utilities for common `display` values\n//\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .d#{$infix}-none { display: none !important; }\n .d#{$infix}-inline { display: inline !important; }\n .d#{$infix}-inline-block { display: inline-block !important; }\n .d#{$infix}-block { display: block !important; }\n .d#{$infix}-table { display: table !important; }\n .d#{$infix}-table-row { display: table-row !important; }\n .d#{$infix}-table-cell { display: table-cell !important; }\n .d#{$infix}-flex { display: flex !important; }\n .d#{$infix}-inline-flex { display: inline-flex !important; }\n }\n}\n\n\n//\n// Utilities for toggling `display` in print\n//\n\n@media print {\n .d-print-none { display: none !important; }\n .d-print-inline { display: inline !important; }\n .d-print-inline-block { display: inline-block !important; }\n .d-print-block { display: block !important; }\n .d-print-table { display: table !important; }\n .d-print-table-row { display: table-row !important; }\n .d-print-table-cell { display: table-cell !important; }\n .d-print-flex { display: flex !important; }\n .d-print-inline-flex { display: inline-flex !important; }\n}\n","// stylelint-disable declaration-no-important\n\n// Flex variation\n//\n// Custom styles for additional flex alignment options.\n\n@each $breakpoint in map-keys($grid-breakpoints) {\n @include media-breakpoint-up($breakpoint) {\n $infix: breakpoint-infix($breakpoint, $grid-breakpoints);\n\n .flex#{$infix}-row { flex-direction: row !important; }\n .flex#{$infix}-column { flex-direction: column !important; }\n .flex#{$infix}-row-reverse { flex-direction: row-reverse !important; }\n .flex#{$infix}-column-reverse { flex-direction: column-reverse !important; }\n\n .flex#{$infix}-wrap { flex-wrap: wrap !important; }\n .flex#{$infix}-nowrap { flex-wrap: nowrap !important; }\n .flex#{$infix}-wrap-reverse { flex-wrap: wrap-reverse !important; }\n\n .justify-content#{$infix}-start { justify-content: flex-start !important; }\n .justify-content#{$infix}-end { justify-content: flex-end !important; }\n .justify-content#{$infix}-center { justify-content: center !important; }\n .justify-content#{$infix}-between { justify-content: space-between !important; }\n .justify-content#{$infix}-around { justify-content: space-around !important; }\n\n .align-items#{$infix}-start { align-items: flex-start !important; }\n .align-items#{$infix}-end { align-items: flex-end !important; }\n .align-items#{$infix}-center { align-items: center !important; }\n .align-items#{$infix}-baseline { align-items: baseline !important; }\n .align-items#{$infix}-stretch { align-items: stretch !important; }\n\n .align-content#{$infix}-start { align-content: flex-start !important; }\n .align-content#{$infix}-end { align-content: flex-end !important; }\n .align-content#{$infix}-center { align-content: center !important; }\n .align-content#{$infix}-between { align-content: space-between !important; }\n .align-content#{$infix}-around { align-content: space-around !important; }\n .align-content#{$infix}-stretch { align-content: stretch !important; }\n\n .align-self#{$infix}-auto { align-self: auto !important; }\n .align-self#{$infix}-start { align-self: flex-start !important; }\n .align-self#{$infix}-end { align-self: flex-end !important; }\n .align-self#{$infix}-center { align-self: center !important; }\n .align-self#{$infix}-baseline { align-self: baseline !important; }\n .align-self#{$infix}-stretch { align-self: stretch !important; }\n }\n}\n"]}
assets/css/main/theplus-blog-style.css ADDED
@@ -0,0 +1,178 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .blog-list.list-isotope-metro .post-inner-loop .grid-item article {
2
+ height: 100%;
3
+ width:100%;
4
+ }
5
+ .blog-list.list-isotope-metro .post-inner-loop .grid-item{
6
+ max-width:100%;
7
+ }
8
+ .blog-list .entry-date, .blog-list .post-author{
9
+ padding-right:0px;
10
+ }
11
+ .blog-list .blog-list-content .entry-content {
12
+ color: #888;
13
+ padding-top: 5px;
14
+ font-size: 14px;
15
+ line-height: 24px;
16
+ }
17
+
18
+ .blog-list .blog-list-content .entry-content p {
19
+ color: #888;
20
+ margin-bottom:0;
21
+ }
22
+ .blog-list-content {
23
+ position: relative;
24
+ display: block;
25
+ overflow: hidden;
26
+ width: 100%;
27
+ -webkit-transition: all .3s ease-in-out;
28
+ -moz-transition: all .3s ease-in-out;
29
+ -o-transition: all .3s ease-in-out;
30
+ -ms-transition: all .3s ease-in-out;
31
+ transition: all .3s ease-in-out;
32
+ }
33
+ .blog-list.list-isotope-metro .post-inner-loop .blog-list-content{
34
+ height: 100%;
35
+ }
36
+ .blog-list.list-isotope-metro .post-inner-loop .blog-bg-image-metro{
37
+ position:absolute;
38
+ left:0;
39
+ top:0;
40
+ width:100%;
41
+ height:100%;
42
+ background-position: center center !important;
43
+ background-size: cover !important;
44
+ background-repeat: no-repeat !important;
45
+ }
46
+
47
+ /*post meta style*/
48
+ .blog-list .post-meta-info.style-1 {
49
+ position: relative;
50
+ display: block;
51
+ font-size: 13px;
52
+ line-height: 1;
53
+ text-transform: capitalize;
54
+ }
55
+
56
+ .blog-list .post-content-bottom .post-meta-info.style-1 {
57
+ margin-bottom: 10px;
58
+ font-size: 13px;
59
+ line-height: 1;
60
+ text-transform: capitalize;
61
+ }
62
+ .blog-list .post-title, .blog-list .post-title a,.blog-list .entry-content, .blog-list .entry-content p,.blog-list .post-meta-info span a, .blog-list .post-meta-info span,.blog-list .post-category-list span,.blog-list .post-category-list span a{
63
+ -webkit-transition: all .3s ease-in-out;
64
+ -moz-transition: all .3s ease-in-out;
65
+ -o-transition: all .3s ease-in-out;
66
+ -ms-transition: all .3s ease-in-out;
67
+ transition: all .3s ease-in-out;
68
+ }
69
+
70
+ .blog-list .post-meta-info.style-1 span.post-author a {
71
+ font-weight: 600 !important;
72
+ }
73
+
74
+ /*post meta style*/
75
+
76
+ /* image hover effects*/
77
+ .blog-list.blog-style-1 .blog-featured-image img,.blog-list.blog-style-2 .blog-featured-image img {
78
+ display: block;
79
+ width: 100%;
80
+ opacity: 1;
81
+ -webkit-transition: all .3s ease-in-out;
82
+ -moz-transition: all .3s ease-in-out;
83
+ -o-transition: all .3s ease-in-out;
84
+ -ms-transition: all .3s ease-in-out;
85
+ transition: all .3s ease-in-out;
86
+ }
87
+
88
+ .blog-list .blog-featured-image {
89
+ position: relative;
90
+ overflow: hidden;
91
+ }
92
+ .blog-list.hover-image-style-1 .blog-featured-image img,.blog-list.list-isotope-metro .blog-bg-image-metro {
93
+ display: block;
94
+ width: 100%;
95
+ -webkit-transition: all .3s ease-in-out;
96
+ -moz-transition: all .3s ease-in-out;
97
+ -o-transition: all .3s ease-in-out;
98
+ -ms-transition: all .3s ease-in-out;
99
+ transition: all .3s ease-in-out;
100
+ }
101
+ .blog-list.hover-image-style-1 .blog-list-content:hover .blog-featured-image img {
102
+ -webkit-transform: scale(1.1);
103
+ -ms-transform: scale(1.1);
104
+ -moz-transform: scale(1.1);
105
+ -o-transform: scale(1.1);
106
+ transform: scale(1.1);
107
+ }
108
+ .blog-list.list-isotope-metro.hover-image-style-1 .blog-list-content:hover .blog-bg-image-metro{
109
+ -webkit-transform: scale(1.1);
110
+ -ms-transform: scale(1.1);
111
+ -moz-transform: scale(1.1);
112
+ -o-transform: scale(1.1);
113
+ transform: scale(1.1);
114
+ }
115
+ .blog-list .blog-list-content .blog-featured-image:before,.blog-list.list-isotope-metro .blog-list-content .blog-bg-image-metro:before {
116
+ content: '';
117
+ position: absolute;
118
+ left: 0;
119
+ top: 0;
120
+ width: 100%;
121
+ height: 100%;
122
+ background: rgba(0, 0, 0, 0.32);
123
+ -webkit-transition: all .3s ease-in-out;
124
+ -moz-transition: all .3s ease-in-out;
125
+ -o-transition: all .3s ease-in-out;
126
+ -ms-transition: all .3s ease-in-out;
127
+ transition: all .3s ease-in-out;
128
+ }
129
+ .blog-list .blog-list-content .blog-featured-image:before{
130
+ z-index: 1;
131
+ }
132
+ /* image hover effects*/
133
+ /*-------blog style 1--*/
134
+ .blog-list.blog-style-1 .post-content-bottom {
135
+ padding: 30px;
136
+ bottom: 0px;
137
+ position: absolute;
138
+ background: rgba(0,0,0,.85);
139
+ width: 100%;
140
+ -webkit-transition: all .3s ease-in-out;
141
+ -moz-transition: all .3s ease-in-out;
142
+ -o-transition: all .3s ease-in-out;
143
+ -ms-transition: all .3s ease-in-out;
144
+ transition: all .3s ease-in-out;
145
+ z-index: 1;
146
+ overflow: hidden;
147
+ }
148
+ .blog-list.blog-style-1 .post-content-bottom .post-meta-info span a, .blog-list.blog-style-1 .post-content-bottom .post-meta-info span {
149
+ color: #fff;
150
+ -webkit-transition: all .3s ease-in-out;
151
+ -moz-transition: all .3s ease-in-out;
152
+ -o-transition: all .3s ease-in-out;
153
+ -ms-transition: all .3s ease-in-out;
154
+ transition: all .3s ease-in-out;
155
+ }
156
+ .blog-list.blog-style-1 .post-content-bottom .post-meta-info {
157
+ margin-bottom: 10px;
158
+ }
159
+ .blog-list.blog-style-1 .post-title{
160
+ font-size: 25px;
161
+ line-height: 30px;
162
+ color: #fff;
163
+ margin-bottom: 0px;
164
+ margin-top: 0;
165
+ }
166
+ #pt-plus-blog-post-list.blog-list.blog-style-1 .post-title{
167
+ margin-bottom:0;
168
+ }
169
+ .blog-list.blog-style-1 .post-title a {
170
+ color: #fff;
171
+ }
172
+ .blog-list.blog-style-1 .post-hover-content {
173
+ display: none;
174
+ }
175
+ .blog-list.blog-style-1 .blog-list-content .blog-featured-image {
176
+ background: #212121;
177
+ }
178
+ /*-------blog style 1--*/
assets/css/main/theplus-cf7-style.css ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .theplus-contact-form{
2
+ position: relative;
3
+ display: block;
4
+ width: 100%;
5
+ }
6
+ .theplus-contact-form.text-right {
7
+ margin: 0 auto;
8
+ margin-right: 0;
9
+ }
10
+ .theplus-contact-form.text-center {
11
+ margin: 0 auto;
12
+ }
13
+ .theplus-contact-form.text-left {
14
+ margin: 0 auto;
15
+ margin-left: 0;
16
+ }
17
+ .theplus-contact-form input.wpcf7-form-control.wpcf7-submit,.theplus-contact-form .wpcf7 form input[type="submit"]{
18
+ font-family: inherit;
19
+ font-size: 12px;
20
+ line-height: 12px;
21
+ font-weight: 500;
22
+ padding: 15px 50px 15px;
23
+ border: 0px;
24
+ margin: 0;
25
+ display: inline-block;
26
+ cursor: pointer;
27
+ outline: 0;
28
+ color: #fff;
29
+ background: #005ADE;
30
+ border-radius:4px;
31
+ text-transform: none;
32
+ text-shadow: none !important;
33
+ text-align: center;
34
+ vertical-align: middle;
35
+ width: 100%;
36
+ height: auto;
37
+ -moz-box-shadow: none;
38
+ -webkit-box-shadow: none;
39
+ box-shadow: none;
40
+ -moz-appearance: none;
41
+ -webkit-appearance: none;
42
+ -moz-transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
43
+ -ms-transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
44
+ -o-transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
45
+ -webkit-transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
46
+ transition: all 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
47
+ -webkit-box-sizing: inherit;
48
+ -moz-box-sizing: inherit;
49
+ box-sizing: inherit;
50
+ }
51
+ .theplus-contact-form.style-1.plus-cf7-label form.wpcf7-form label ,.theplus-contact-form.style-1.plus-cf7-custom form.wpcf7-form .tp-cf7-outer{
52
+ margin-bottom: 20px;
53
+ padding: 20px;
54
+ background: rgba(56, 130, 247, 0.50);
55
+ border-radius: 4px;
56
+ box-shadow: 0px 3px 25px -7px rgba(56, 130, 247, 0.48);
57
+ text-align:left;
58
+ }
59
+ .theplus-contact-form.style-1 form.wpcf7-form label {
60
+ position: relative;
61
+ display: block;
62
+ width: 100%;
63
+ margin-bottom: 0;
64
+ }
65
+ .theplus-contact-form span.wpcf7-form-control-wrap {
66
+ position: relative;
67
+ display: block;
68
+ width: 100%;
69
+ }
70
+ .theplus-contact-form.style-1 form.wpcf7-form p {
71
+ margin-bottom: 0;
72
+ }
73
+ .theplus-contact-form.style-1 .wpcf7-form-control {
74
+ width: 100%;
75
+ -moz-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
76
+ -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
77
+ -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
78
+ -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
79
+ transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
80
+ }
81
+ .theplus-contact-form input[type=text]:focus, .theplus-contact-form input[type=url]:focus, .theplus-contact-form input[type=email]:focus, .theplus-contact-form input[type=tel]:focus, .theplus-contact-form input[type=number]:focus, .theplus-contact-form input[type=date]:focus, .theplus-contact-form select:focus, .theplus-contact-form textarea:focus{
82
+ outline: none;
83
+ }
84
+ .theplus-contact-form .wpcf7-form-control{
85
+ margin-top:10px;
86
+ border: 0px;
87
+ }
88
+ .theplus-contact-form.style-1.plus-cf7-label form.wpcf7-form label,.theplus-contact-form.style-1.plus-cf7-custom form.wpcf7-form .tp-cf7-outer{
89
+ -moz-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
90
+ -ms-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
91
+ -o-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
92
+ -webkit-transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
93
+ transition: all 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
94
+ }
95
+ .theplus-contact-form select.wpcf7-form-control.wpcf7-select {
96
+ padding: 10px;
97
+ border-radius: 4px;
98
+ }
99
+ .theplus-contact-form span.wpcf7-list-item span.wpcf7-list-item-label {
100
+ cursor: pointer;
101
+ }
102
+ .theplus-contact-form textarea.wpcf7-form-control.wpcf7-textarea {
103
+ padding: 5px 15px;
104
+ }
105
+ .theplus-contact-form span.wpcf7-not-valid-tip:before {
106
+ content: '';
107
+ width: 0;
108
+ height: 0;
109
+ border-left: 7px solid transparent;
110
+ border-right: 7px solid transparent;
111
+ border-bottom: 7px solid #fff;
112
+ position: absolute;
113
+ top: -7px;
114
+ left: 15px;
115
+ transition: .3s ease;
116
+ }
117
+ .theplus-contact-form span.wpcf7-form-control-wrap .wpcf7-not-valid-tip {
118
+ position: relative;
119
+ line-height: 1.2;
120
+ font-size: 13px;
121
+ display: inline-block;
122
+ margin-left: 0px;
123
+ top: 8px;
124
+ right: 0;
125
+ width: 100%;
126
+ background: #fff;
127
+ padding: 6px;
128
+ border-radius: 3px;
129
+ transition: .3s ease-in-out;
130
+ }
assets/css/main/theplus-client-style.css ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .clients-list .client-post-content .post-title{
2
+ color:#313131;
3
+ font-size: 14px;
4
+ line-height: 18px;
5
+ font-weight: 600;
6
+ letter-spacing: 0.5px;
7
+ text-align: center;
8
+ display: block;
9
+ margin: 0;
10
+ margin-top: 15px;
11
+ -webkit-transition: all .3s ease-in-out;
12
+ -moz-transition: all .3s ease-in-out;
13
+ -o-transition: all .3s ease-in-out;
14
+ -ms-transition: all .3s ease-in-out;
15
+ transition: all .3s ease-in-out;
16
+ }
17
+ .clients-list .client-featured-logo {
18
+ margin: 0 auto;
19
+ text-align: center;
20
+ display: block;
21
+ }
22
+ .clients-list .client-post-content {
23
+ position: relative;
24
+ display: block;
25
+ width: 100%;
26
+ -webkit-transition: all .3s ease-in-out;
27
+ -moz-transition: all .3s ease-in-out;
28
+ -o-transition: all .3s ease-in-out;
29
+ -ms-transition: all .3s ease-in-out;
30
+ transition: all .3s ease-in-out;
31
+ }
32
+ .clients-list .client-post-content .client-featured-logo img {
33
+ display: block;
34
+ width: auto;
35
+ text-align: center;
36
+ margin: 0 auto;
37
+ -webkit-transition: all .3s ease-in-out;
38
+ -moz-transition: all .3s ease-in-out;
39
+ -o-transition: all .3s ease-in-out;
40
+ -ms-transition: all .3s ease-in-out;
41
+ transition: all .3s ease-in-out;
42
+ }
43
+
44
+ .clients-list .client-content-logo {
45
+ display: block;
46
+ position: relative;
47
+ width: 100%;
48
+ }
49
+ .clients-list .post-content-bottom {
50
+ text-align: center;
51
+ position: relative;
52
+ display: block;
53
+ width: 100%;
54
+ }
55
+ .clients-list .client-content-logo a {
56
+ margin: 0 auto;
57
+ }
assets/css/main/theplus-gallery-style.css ADDED
@@ -0,0 +1,187 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #pt-plus-gallery-list{
2
+ position: relative;
3
+ display: block;
4
+ width: 100%;
5
+ }
6
+ .gallery-list.grid-item {
7
+ position: relative;
8
+ display: block;
9
+ }
10
+ .gallery-list .gallery-image img {
11
+ position: relative;
12
+ display: block;
13
+ width: 100%;
14
+ height: 100%;
15
+ -webkit-transition: all .3s ease-in-out;
16
+ -moz-transition: all .3s ease-in-out;
17
+ -o-transition: all .3s ease-in-out;
18
+ -ms-transition: all .3s ease-in-out;
19
+ transition: all .3s ease-in-out;
20
+ }
21
+ .gallery-list.list-isotope-metro .post-inner-loop .grid-item .gallery-list-content {
22
+ height: 100%;
23
+ width:100%;
24
+ }
25
+ .gallery-list.list-isotope-metro .post-inner-loop .grid-item{
26
+ max-width:100%;
27
+ }
28
+ .gallery-list.list-isotope-metro .gallery-bg-image-metro{
29
+ background-size: cover !important;
30
+ background-position: center !important;
31
+ width: 100%;
32
+ height: 100%;
33
+ position: relative;
34
+ display: block;
35
+ -webkit-transition: all .3s ease-in-out;
36
+ -moz-transition: all .3s ease-in-out;
37
+ -o-transition: all .3s ease-in-out;
38
+ -ms-transition: all .3s ease-in-out;
39
+ transition: all .3s ease-in-out;
40
+ }
41
+ .gallery-list .post-title{
42
+ font-size: 18px;
43
+ line-height: 22px;
44
+ color: #fff;
45
+ margin-bottom: 0px;
46
+ margin-top: 0;
47
+ -webkit-transition: all .3s ease-in-out;
48
+ -moz-transition: all .3s ease-in-out;
49
+ -o-transition: all .3s ease-in-out;
50
+ -ms-transition: all .3s ease-in-out;
51
+ transition: all .3s ease-in-out;
52
+ }
53
+ .gallery-list .gallery-list-content .gallery-image:before,.gallery-list.list-isotope-metro .gallery-list-content .gallery-bg-image-metro:before {
54
+ content: '';
55
+ position: absolute;
56
+ left: 0;
57
+ top: 0;
58
+ width: 100%;
59
+ height: 100%;
60
+ -webkit-transition: all .3s ease-in-out;
61
+ -moz-transition: all .3s ease-in-out;
62
+ -o-transition: all .3s ease-in-out;
63
+ -ms-transition: all .3s ease-in-out;
64
+ transition: all .3s ease-in-out;
65
+ }
66
+ .gallery-list .gallery-list-content .gallery-image:before{
67
+ z-index: 1;
68
+ }
69
+ .gallery-list .meta-search-icon{
70
+ position: relative;
71
+ display: inline-block;
72
+ text-align: center;
73
+ margin: 0 auto;
74
+ overflow: hidden;
75
+ }
76
+ .gallery-list .meta-search-icon a{
77
+ font-size: 23px;
78
+ color: #fff;
79
+ opacity: 0;
80
+ overflow: hidden;
81
+ transform: translate3d(0,38px,0);
82
+ display: inline-block;
83
+ -webkit-transition: all .28s ease-in-out .1s;
84
+ -moz-transition: all .28s ease-in-out .1s;
85
+ -o-transition: all .28s ease-in-out .1s;
86
+ -ms-transition: all .28s ease-in-out .1s;
87
+ transition: all .28s ease-in-out .1s;
88
+ }
89
+ .gallery-list .gallery-list-content:hover .meta-search-icon a {
90
+ opacity: 1;
91
+ transform: translate3d(0,0,0);
92
+ }
93
+ .gallery-list .gallery-list-content {
94
+ position: relative;
95
+ display: block;
96
+ overflow: hidden;
97
+ -webkit-transition: all .3s ease-in-out;
98
+ -moz-transition: all .3s ease-in-out;
99
+ -o-transition: all .3s ease-in-out;
100
+ -ms-transition: all .3s ease-in-out;
101
+ transition: all .3s ease-in-out;
102
+ }
103
+ .gallery-list .entry-content {
104
+ color: #fff;
105
+ font-size: 12px;
106
+ line-height: 16px;
107
+ display: block;
108
+ -webkit-transition: all .3s ease-in-out;
109
+ -moz-transition: all .3s ease-in-out;
110
+ -o-transition: all .3s ease-in-out;
111
+ -ms-transition: all .3s ease-in-out;
112
+ transition: all .3s ease-in-out;
113
+ }
114
+ .gallery-list .gallery-list-icon {
115
+ position: relative;
116
+ display: block;
117
+ text-align: center;
118
+ margin: 0 auto;
119
+ margin-bottom: 15px;
120
+ margin-top: 5px;
121
+ }
122
+ .gallery-list .grid-item .parallax-move {
123
+ position: relative;
124
+ display: block;
125
+ width: 100%;
126
+ height: 100%;
127
+ }
128
+ /*style-1*/
129
+ .gallery-list.gallery-style-1 .post-title a,.gallery-list.gallery-style-3 .post-title a{
130
+ color:#fff;
131
+ -webkit-transition: all .3s ease-in-out;
132
+ -moz-transition: all .3s ease-in-out;
133
+ -o-transition: all .3s ease-in-out;
134
+ -ms-transition: all .3s ease-in-out;
135
+ transition: all .3s ease-in-out;
136
+ }
137
+
138
+ .gallery-list.gallery-style-1 .grid-item .post-content-center{
139
+ position: absolute;
140
+ top: 0;
141
+ bottom: 0;
142
+ left: 0;
143
+ right: 0;
144
+ background: rgba(0,0,0,.65);
145
+ width:100%;
146
+ height:100%;
147
+ opacity: 0;
148
+ visibility: hidden;
149
+ -webkit-transition: all .3s ease-in-out;
150
+ -moz-transition: all .3s ease-in-out;
151
+ -o-transition: all .3s ease-in-out;
152
+ -ms-transition: all .3s ease-in-out;
153
+ transition: all .3s ease-in-out;
154
+ z-index: 1;
155
+ }
156
+ .gallery-list.gallery-style-1 .grid-item .gallery-list-content:hover .post-content-center{
157
+ opacity: 1;
158
+ visibility: visible;
159
+ -webkit-transition: all .3s ease-in-out;
160
+ -moz-transition: all .3s ease-in-out;
161
+ -o-transition: all .3s ease-in-out;
162
+ -ms-transition: all .3s ease-in-out;
163
+ transition: all .3s ease-in-out;
164
+ }
165
+ .gallery-list.gallery-style-1 .gallery-list-content .post-hover-content{
166
+ position: absolute;
167
+ top: 50%;
168
+ left: 50%;
169
+ text-align: center;
170
+ width: 100%;
171
+ padding: 10px 20px;
172
+ transform: translate3d(-50%,-50%,0);
173
+ -webkit-transition: all .3s ease-in-out;
174
+ -moz-transition: all .3s ease-in-out;
175
+ -o-transition: all .3s ease-in-out;
176
+ -ms-transition: all .3s ease-in-out;
177
+ transition: all .3s ease-in-out;
178
+ }
179
+ .gallery-list.gallery-style-1 .entry-content{
180
+ text-align: center;
181
+ display: block;
182
+ margin-top: 10px;
183
+ }
184
+ .gallery-list.gallery-style-1 .meta-search-icon{
185
+ margin-bottom: 15px;
186
+ }
187
+ /*style-1*/
assets/css/main/theplus-info-box-style.css ADDED
@@ -0,0 +1,83 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .pt_plus_info_box .infobox-overlay-color {
2
+ position: absolute;
3
+ left: 0;
4
+ top: 0;
5
+ bottom: 0;
6
+ right: 0;
7
+ width:100%;
8
+ height:100%;
9
+ background-color: transparent;
10
+ transition: all 0.3s linear;
11
+ z-index:1;
12
+ }
13
+ .pt_plus_info_box .service-flipbox-content{
14
+ position: relative;
15
+ z-index: 11;
16
+ }
17
+
18
+ .pt_plus_info_box .info-box-bg-box > div:first-child {
19
+ position: relative;
20
+ z-index: 11;
21
+ }
22
+
23
+ .service-flipbox-back, .service-flipbox-front {
24
+ background-size: cover !important;
25
+ background-position: center !important;
26
+ }
27
+ .pt_plus_info_box .info-box-inner .service-flipbox-front{
28
+ background:#fff;
29
+ }
30
+ /*--------style 1 Start----------*/
31
+ .pt_plus_info_box.info-box-style_1 .service-img-border {
32
+ border-right: 1px solid;
33
+ padding-right: 10px;
34
+ }
35
+ .pt_plus_info_box.info-box-style_1 .service-img {
36
+ max-width: 150px;
37
+ }
38
+ /*--------style 1 End----------*/
39
+ /*--------style 3 Start----------*/
40
+ .pt_plus_info_box.info-box-style_3 .service-center .service-title {
41
+ margin-bottom: 5px;
42
+ margin-top: 5px;
43
+ }
44
+ .pt_plus_info_box.info-box-style_3 .text-center .ts-icon-img img {
45
+ margin: 0 auto;
46
+ }
47
+ .pt_plus_info_box.info-box-style_3 .ts-icon-img img {
48
+ max-width: 100%;
49
+ width: auto;
50
+ }
51
+ .pt_plus_info_box.info-box-style_3 .text-right .ts-icon-img img {
52
+ float: right;
53
+ display: block;
54
+ position: relative;
55
+ margin-bottom: 15px;
56
+ }
57
+ .pt_plus_info_box.info-box-style_3.tilt-index:hover {
58
+ z-index: 11;
59
+ position: relative;
60
+ }
61
+ /*--------style 3 End----------*/
62
+
63
+ /*--------style 5 Start----------*/
64
+ .info-box-style_5 .info-box-bg-box {
65
+ overflow: visible;
66
+ }
67
+
68
+ .pt_plus_info_box.info-box-style_5 {
69
+ overflow: visible !important;
70
+ }
71
+ .pt_plus_info_box.info-box-style_5 .service-desc {
72
+ padding: 15px;
73
+ }
74
+ .pt_plus_info_box.info-box-style_5 .service-img {
75
+ padding: 15px;
76
+ }
77
+ .pt_plus_info_box.info-box-style_5 .service-icon{
78
+ padding:0px;
79
+ }
80
+ .pt_plus_info_box.info-box-style_5 .service-title {
81
+ padding: 15px;
82
+ }
83
+ /*--------style 5 End----------*/
assets/css/main/theplus-pricing-table.css ADDED
@@ -0,0 +1,169 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #plus-pricing-table {
2
+ position: relative;
3
+ display: block;
4
+ width: 100%;
5
+ -webkit-transition: all 0.3s;
6
+ -moz-transition: all 0.3s;
7
+ -o-transition: all 0.3s;
8
+ -ms-transition: all 0.3s;
9
+ transition: all 0.3s;
10
+ }
11
+ .plus-pricing-table-widget{
12
+ position:relative;
13
+ display:block;
14
+ }
15
+ .plus-pricing-table .pricing-table-inner{
16
+ position: relative;
17
+ padding: 20px;
18
+ width: 100%;
19
+ border-width:0px;
20
+ border-style: solid;
21
+ -webkit-transition: all 0.3s;
22
+ -moz-transition: all 0.3s;
23
+ -o-transition: all 0.3s;
24
+ -ms-transition: all 0.3s;
25
+ transition: all 0.3s;
26
+ }
27
+ .plus-pricing-table .pricing-table-inner:hover {
28
+ z-index: 1;
29
+ }
30
+ .pricing-title-content {
31
+ position: relative;
32
+ display: block;
33
+ width: 100%;
34
+ }
35
+ .pricing-title-content.style-1 {
36
+ display: block;
37
+ text-align: center;
38
+ }
39
+ .pricing-title-content.style-1 > div {
40
+ margin-bottom: 8px;
41
+ }
42
+ .pricing-title-content.style-1 > div:last-child {
43
+ margin-bottom: 0px;
44
+ }
45
+ .pricing-price-wrap.style-1 {
46
+ text-align: center;
47
+ display: block;
48
+ position: relative;
49
+ }
50
+ .plus-pricing-table ul.plus-icon-list-items {
51
+ list-style: none;
52
+ padding: 0;
53
+ margin: 0;
54
+ }
55
+ .plus-pricing-table ul.plus-icon-list-items span.plus-icon-list-text {
56
+ display: inline-block;
57
+ }
58
+ .plus-pricing-table ul.plus-icon-list-items li >span:first-child {
59
+ margin-right: 8px;
60
+ line-height:inherit;
61
+ }
62
+
63
+
64
+ /*content desc style*/
65
+ .pricing-content-wrap.content-desc p {
66
+ margin-bottom: 10px;
67
+ }
68
+ .pricing-content-wrap.content-desc.style-1 .pricing-content p:last-child{
69
+ margin-bottom:0;
70
+ }
71
+ .pricing-content-wrap.content-desc.style-1 hr.border-line {
72
+ margin: 30px 0px;
73
+ display: block;
74
+ }
75
+ .pricing-content-wrap.content-desc.style-1 .pricing-content {
76
+ padding: 0 4%;
77
+ }
78
+ /*content desc style*/
79
+ /*icons style*/
80
+ .plus-pricing-table .pricing-table-inner .pricing-icon{
81
+ font-size: 30px;
82
+ line-height: 1.2;
83
+ margin: 0 auto 8px;
84
+ }
85
+ .plus-pricing-table .pricing-icon.icon-squre{
86
+ border-radius: 2px;
87
+ line-height: 1;
88
+ }
89
+ .plus-pricing-table .pricing-icon.icon-rounded {
90
+ border-radius: 30px !important;
91
+ }
92
+ /*icons style*/
93
+ /*price style*/
94
+ .pricing-price-wrap.style-1 span.price-postfix-text {
95
+ display: block;
96
+ margin-top: 5px;
97
+ }
98
+ .pricing-price-wrap.style-1 span.price-prefix-text, .pricing-price-wrap.style-1 .pricing-price {
99
+ font-size: 30px;
100
+ line-height: 1;
101
+ letter-spacing: 1px;
102
+ color: #212121;
103
+ }
104
+ .pricing-price-wrap.style-1 span.price-postfix-text {
105
+ display: block;
106
+ margin-top: 5px;
107
+ font-size: 13px;
108
+ letter-spacing: 0.5px;
109
+ color: #888;
110
+ }
111
+ /*price style*/
112
+ /*Previous Price Style*/
113
+ .pricing-previous-price-wrap {
114
+ position: relative;
115
+ display: inline-block;
116
+ vertical-align: top;
117
+ line-height: 1;
118
+ color: #aaa;
119
+ font-weight: 500;
120
+ padding-right: 10px;
121
+ text-decoration: line-through !important;
122
+ font-size: 20px;
123
+ }
124
+ /*Previous Price Style*/
125
+
126
+ .plus-pricing-table .pricing-title,.plus-pricing-table .pricing-subtitle,.plus-pricing-table .pricing-icon,.pricing-price-wrap span.price-postfix-text,.pricing-price-wrap span.price-prefix-text,.pricing-price-wrap .pricing-price,.pricing-previous-price-wrap,.plus-pricing-table .pricing-content-wrap.listing-content li,.plus-pricing-table .pricing-content-wrap.listing-content li span.plus-icon-list-text,.plus-pricing-table .pricing-content-wrap.listing-content li span.plus-icon-list-icon,
127
+ .pricing-content-wrap.listing-content.style-1 ul.plus-icon-list-items,.pricing-content-wrap.listing-content.style-1 a.read-more-options{
128
+ -webkit-transition: all 0.3s;
129
+ moz-transition: all 0.3s;
130
+ -o-transition: all 0.3s;
131
+ -ms-transition: all 0.3s;
132
+ transition: all 0.3s;
133
+ }
134
+
135
+ /*pricing table style-1*/
136
+ .plus-pricing-table.pricing-style-1 .pricing-table-inner{
137
+ box-shadow: 0px 0px 10px 0px rgba(136, 136, 136, 0.25098039215686274);
138
+ background: #fff;
139
+ border-radius: 3px;
140
+ }
141
+ .plus-pricing-table.pricing-style-1 .pricing-title-content {
142
+ margin-bottom: 20px;
143
+ }
144
+ .plus-pricing-table.pricing-style-1 .pricing-price-wrap {
145
+ margin-bottom: 20px;
146
+ }
147
+ .plus-pricing-table.pricing-style-1 .pt-plus-button-wrapper {
148
+ text-align: center;
149
+ display: block;
150
+ margin-bottom: 25px;
151
+ }
152
+
153
+ .plus-pricing-table.pricing-style-1 .pricing-title {
154
+ color: #313131;
155
+ font-weight: 400;
156
+ font-size: 18px;
157
+ letter-spacing: 1px;
158
+ text-transform: uppercase;
159
+ }
160
+ .plus-pricing-table.pricing-style-1 .pricing-subtitle {
161
+ font-size: 15px;
162
+ line-height: 1.2;
163
+ color: #888;
164
+ font-weight: 500;
165
+ }
166
+ .plus-pricing-table.pricing-style-1 .pt_plus_button.button-style-8 .button-link-wrap {
167
+ border-radius: 30px;
168
+ }
169
+ /* pricing table style-1 End*/
assets/css/main/theplus-tabs-tours.css ADDED
@@ -0,0 +1,260 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /* -- accordion --*/
2
+ .theplus-accordion-wrapper .plus-accordion-header.active .elementor-accordion-icon-closed{
3
+ display:none;
4
+ }
5
+ .theplus-accordion-wrapper .plus-accordion-header.active .elementor-accordion-icon-opened{
6
+ display:block;
7
+ }
8
+ .theplus-accordion-wrapper .theplus-accordion-item {
9
+ position: relative;
10
+ display: block;
11
+ width: 100%;
12
+ }
13
+ .elementor-accordion-icon .fa {
14
+ font-size: inherit;
15
+ line-height: inherit;
16
+ width: auto;
17
+ height: auto;
18
+ top: auto;
19
+ word-spacing: inherit;
20
+ }
21
+ .theplus-accordion-wrapper .theplus-accordion-item:last-child{
22
+ margin-bottom:0px
23
+ }
24
+ .theplus-accordion-wrapper .theplus-accordion-item .plus-accordion-content{
25
+ border:0px;
26
+ }
27
+ .theplus-accordion-wrapper .plus-accordion-header {
28
+ -webkit-transition: all .2s linear;
29
+ -moz-transition: all .2s linear;
30
+ -o-transition: all .2s linear;
31
+ -ms-transition: all .2s linear;
32
+ transition: all .2s linear;
33
+ }
34
+ .theplus-accordion-wrapper.hover-style-1 .plus-accordion-header:before {
35
+ content: '';
36
+ position: absolute;
37
+ left: 0;
38
+ bottom: 0;
39
+ height: 100%;
40
+ width: 0px;
41
+ background-color: #232323;
42
+ -webkit-transition: all .3s linear;
43
+ -moz-transition: all .3s linear;
44
+ -o-transition: all .3s linear;
45
+ -ms-transition: all .3s linear;
46
+ transition: all .3s linear;
47
+ z-index: -1;
48
+ }
49
+
50
+ .theplus-accordion-wrapper.hover-style-1 .theplus-accordion-item:hover .plus-accordion-header:not(.active):before {
51
+ width: 3px;
52
+ }
53
+ .theplus-accordion-wrapper.hover-style-1 .theplus-accordion-item .plus-accordion-header.active:before {
54
+ width: 100%;
55
+ }
56
+ .theplus-accordion-wrapper.hover-style-1 .theplus-accordion-item .plus-accordion-header,.theplus-accordion-wrapper.hover-style-2 .theplus-accordion-item .plus-accordion-header{
57
+ position: relative;
58
+ overflow: hidden;
59
+ }
60
+ .theplus-accordion-wrapper.hover-style-2 .plus-accordion-header:before {
61
+ content: '';
62
+ position: absolute;
63
+ left: 0;
64
+ bottom: 0;
65
+ height: 0;
66
+ width: 100%;
67
+ background-color: #232323;
68
+ -webkit-transition: all .3s linear;
69
+ -moz-transition: all .3s linear;
70
+ -o-transition: all .3s linear;
71
+ -ms-transition: all .3s linear;
72
+ transition: all .3s linear;
73
+ z-index: -1;
74
+ }
75
+
76
+ .theplus-accordion-wrapper.hover-style-2 .theplus-accordion-item:hover .plus-accordion-header:not(.active):before {
77
+ height: 3px;
78
+ }
79
+ .theplus-accordion-wrapper.hover-style-2 .theplus-accordion-item .plus-accordion-header.active:before {
80
+ height: 100%;
81
+ }
82
+ /* -- accordion --*/
83
+ /* -- tabs tours -- */
84
+ .theplus-tabs-wrapper {
85
+ position: relative;
86
+ display: block;
87
+ width: 100%;
88
+ }
89
+ .theplus-tabs-wrapper ul.plus-tabs-nav {
90
+ position: relative;
91
+ width: auto;
92
+ display: inline-block;
93
+ padding: 0;
94
+ list-style: none;
95
+ margin: 0;
96
+ -webkit-transition: all .3s linear;
97
+ -moz-transition: all .3s linear;
98
+ -o-transition: all .3s linear;
99
+ -ms-transition: all .3s linear;
100
+ transition: all .3s linear;
101
+ }
102
+ .elementor-widget-tp-tabs-tours.elementor-tabs-view-vertical .elementor-tabs-wrapper {
103
+ width: 25%;
104
+ -webkit-flex-shrink: 0;
105
+ -ms-flex-negative: 0;
106
+ flex-shrink: 0
107
+ }
108
+ .theplus-tabs-wrapper ul.plus-tabs-nav.full-width-icon .plus-tab-header > span {
109
+ display: block;
110
+ text-align:center;
111
+ }
112
+ .elementor-tabs-view-vertical .theplus-tabs-wrapper .theplus-tabs-nav-wrapper.align-center {
113
+ display:-webkit-box;
114
+ display: -webkit-flex;
115
+ display: -ms-flexbox;
116
+ display: flex;
117
+ align-items: center;
118
+ justify-content: center;
119
+ flex-direction: column;
120
+ }
121
+ .elementor-tabs-view-vertical .theplus-tabs-wrapper .theplus-tabs-nav-wrapper.align-top {
122
+ display:-webkit-box;
123
+ display: -webkit-flex;
124
+ display: -ms-flexbox;
125
+ display: flex;
126
+ align-items: flex-start;
127
+ align-self: flex-start;
128
+ justify-content: center;
129
+ flex-direction: column;
130
+ }
131
+ .elementor-tabs-view-vertical .theplus-tabs-wrapper .theplus-tabs-nav-wrapper.align-bottom {
132
+ display:-webkit-box;
133
+ display: -webkit-flex;
134
+ display: -ms-flexbox;
135
+ display: flex;
136
+ align-items: flex-end;
137
+ align-self: flex-end;
138
+ justify-content: center;
139
+ flex-direction: column;
140
+ }
141
+
142
+ .elementor-widget-tp-tabs-tours .plus-tab-header{
143
+ position:relative;
144
+ color:#313131;
145
+ font-size:15px;
146
+ line-height:20px;
147
+ border: 0px solid transparent;
148
+ -webkit-transition: all .3s linear;
149
+ -moz-transition: all .3s linear;
150
+ -o-transition: all .3s linear;
151
+ -ms-transition: all .3s linear;
152
+ transition: all .3s linear;
153
+ }
154
+ .elementor-widget-tp-tabs-tours .plus-tab-header.active {
155
+ border-color: #313131;
156
+ }
157
+
158
+
159
+ .elementor-widget-tp-tabs-tours .elementor-tabs {
160
+ text-align: left
161
+ }
162
+
163
+ .elementor-widget-tp-tabs-tours .elementor-tab-title {
164
+ cursor: pointer;
165
+ outline: none
166
+ }
167
+ .elementor-widget-tp-tabs-tours.elementor-tabs-view-horizontal ul.plus-tabs-nav li{
168
+ display: -webkit-box;
169
+ display: -moz-box;
170
+ display: -ms-flexbox;
171
+ display: inline-flex;
172
+ }
173
+
174
+ .theplus-tabs-wrapper .plus-tabs-nav span.tab-icon-wrap {
175
+ padding-right: 8px;
176
+ position: relative;
177
+ display: inline-block;
178
+ vertical-align: middle;
179
+ -webkit-transition: all .3s linear;
180
+ -moz-transition: all .3s linear;
181
+ -o-transition: all .3s linear;
182
+ -ms-transition: all .3s linear;
183
+ transition: all .3s linear;
184
+ }
185
+ .elementor-widget-tp-tabs-tours .elementor-tab-desktop-title {
186
+ position: relative;
187
+ padding: 20px 25px;
188
+ line-height: 1;
189
+ vertical-align: middle;
190
+ width: 100%;
191
+ }
192
+ .elementor-widget-tp-tabs-tours .elementor-tab-mobile-title {
193
+ padding: 10px;
194
+ cursor: pointer
195
+ }
196
+ .theplus-tabs-wrapper .theplus-tabs-content-wrapper{
197
+ padding:10px;
198
+ -webkit-transition: all .3s linear;
199
+ -moz-transition: all .3s linear;
200
+ -o-transition: all .3s linear;
201
+ -ms-transition: all .3s linear;
202
+ transition: all .3s linear;
203
+ }
204
+ .theplus-tabs-content-wrapper .plus-tab-content p {
205
+ margin-bottom: 0;
206
+ }
207
+ .theplus-tabs-content-wrapper .plus-tab-content{
208
+ display: none;
209
+ opacity: 0;
210
+ }
211
+ .theplus-tabs-content-wrapper .plus-tab-content {
212
+ position: relative;
213
+ width: 100%;
214
+ color: #888;
215
+ font-size: 15px;
216
+ line-height: 22px;
217
+ }
218
+ .theplus-tabs-content-wrapper .plus-tab-content.active{
219
+ display: block;
220
+ width: 100%;
221
+ opacity: 1;
222
+ animation: fadeIn linear 0.3s;
223
+ }
224
+ .theplus-tabs-wrapper.elementor-tabs .elementor-tabs-wrapper {
225
+ display: block;
226
+ }
227
+ .theplus-tabs-wrapper .elementor-tab-mobile-title {
228
+ display: none
229
+ }
230
+ .theplus-tabs-wrapper.elementor-tabs .elementor-tab-content, .theplus-tabs-wrapper.elementor-tabs .elementor-tab-title,.theplus-tabs-wrapper.elementor-tabs .elementor-tabs-content-wrapper{
231
+ border:0px;
232
+ }
233
+ .elementor-widget-tp-tabs-tours.elementor-tabs-view-vertical .elementor-tabs {
234
+ display:-webkit-box;
235
+ display: -webkit-flex;
236
+ display: -ms-flexbox;
237
+ display: flex
238
+ }
239
+
240
+ .elementor-widget-tp-tabs-tours.elementor-tabs-view-vertical .elementor-tabs-content-wrapper {
241
+ -webkit-box-flex: 1;
242
+ -webkit-flex-grow: 1;
243
+ -ms-flex-positive: 1;
244
+ flex-grow: 1;
245
+ }
246
+ @media (max-width: 767px){
247
+ .theplus-tabs-wrapper.elementor-tabs .elementor-tab-content{
248
+ padding: 0px;
249
+ }
250
+ }
251
+ @media (max-width: 600px) {
252
+
253
+ .theplus-tabs-wrapper.mobile-accordion .theplus-tabs-nav-wrapper{
254
+ display: none !important;
255
+ }
256
+ .theplus-tabs-wrapper.mobile-accordion .elementor-tab-mobile-title {
257
+ display: block;
258
+ }
259
+ }
260
+ /* -- tabs tours -- */
assets/css/main/theplus-team-member-style.css ADDED
@@ -0,0 +1,154 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .team-member-list {
2
+ position: relative;
3
+ display: block;
4
+ width: 100%;
5
+ }
6
+ .team-member-list .grid-item {
7
+ padding: 15px;
8
+ }
9
+ .team-profile span.thumb-wrap {
10
+ position: relative;
11
+ display: block;
12
+ }
13
+ .team-member-list.team-style-1 .team-list-content {
14
+ position: relative;
15
+ display: block;
16
+ width: 100%;
17
+ }
18
+
19
+ .team-member-list.team-style-1 .post-content-image {
20
+ position: relative;
21
+ display: block;
22
+ overflow: hidden;
23
+ -webkit-transition: all .3s linear;
24
+ -moz-transition: all .3s linear;
25
+ -o-transition: all .3s linear;
26
+ -ms-transition: all .3s linear;
27
+ transition: all .3s linear;
28
+ }
29
+ .team-member-list .team-list-content{
30
+ -webkit-transition: all .3s linear;
31
+ -moz-transition: all .3s linear;
32
+ -o-transition: all .3s linear;
33
+ -ms-transition: all .3s linear;
34
+ transition: all .3s linear;
35
+ }
36
+ .team-member-list.team-style-1 .team-social-content {
37
+ position: absolute;
38
+ bottom: 10px;
39
+ left: 10px;
40
+ right: 10px;
41
+ }
42
+ .team-member-list .team-social-content .team-social-list{
43
+ padding:0;
44
+ margin: 0 auto;
45
+ text-align: center;
46
+ display: block;
47
+ list-style:none;
48
+ }
49
+ .team-member-list .team-social-content .team-social-list li {
50
+ display: inline-block;
51
+ margin: 2px 5px;
52
+ vertical-align: middle;
53
+ position: relative;
54
+ text-align: center;
55
+ }
56
+ .team-member-list.team-style-1 .team-social-content .team-social-list li a{
57
+ width: 40px;
58
+ height: 40px;
59
+ font-size: 17px;
60
+ color:#313131;
61
+ background: transparent;
62
+ line-height: 40px;
63
+ border-radius: 50%;
64
+ display: block;
65
+ -webkit-transition: all .3s linear;
66
+ -moz-transition: all .3s linear;
67
+ -o-transition: all .3s linear;
68
+ -ms-transition: all .3s linear;
69
+ transition: all .3s linear;
70
+ }
71
+ .team-member-list.team-style-1 .team-social-content .team-social-list li.team-profile-link a:hover{
72
+ background: #222222;
73
+ color:#fff;
74
+ }
75
+ .team-member-list.team-style-1 .team-social-content .team-social-list li.fb-link a:hover{
76
+ background: #3b5998;
77
+ color:#fff;
78
+ }
79
+ .team-member-list.team-style-1 .team-social-content .team-social-list li.twitter-link a:hover{
80
+ background: #1da1f2;
81
+ color:#fff;
82
+ }
83
+ .team-member-list.team-style-1 .team-social-content .team-social-list li.instagram-link a:hover{
84
+ background: #cd486b;
85
+ color:#fff;
86
+ }
87
+ .team-member-list.team-style-1 .team-social-content .team-social-list li.gplus-link a:hover{
88
+ background: #dd4b39;
89
+ color:#fff;
90
+ }
91
+ .team-member-list.team-style-1 .team-social-content .team-social-list li.linkedin-link a:hover{
92
+ background: #0077b5;
93
+ color:#fff;
94
+ }
95
+ .team-member-list.team-style-1 .team-list-content .team-social-content {
96
+ opacity: 0;
97
+ -webkit-transition: all .3s ease-in-out;
98
+ -moz-transition: all .3s ease-in-out;
99
+ -o-transition: all .3s ease-in-out;
100
+ -ms-transition: all .3s ease-in-out;
101
+ transition: all .3s ease-in-out;
102
+ visibility: hidden;
103
+ transform: translateY(50%);
104
+ }
105
+ .team-member-list.team-style-1 .team-list-content:hover .team-social-content {
106
+ opacity: 1;
107
+ visibility: visible;
108
+ transform: translateY(0%);
109
+ }
110
+ .team-member-list.team-style-1 .team-social-content .team-social-list li:hover a {
111
+ transform: translateY(-3px);
112
+ }
113
+ .team-member-list .team-profile img{
114
+ -webkit-transition: all .3s ease-in-out;
115
+ -moz-transition: all .3s ease-in-out;
116
+ -o-transition: all .3s ease-in-out;
117
+ -ms-transition: all .3s ease-in-out;
118
+ transition: all .3s ease-in-out;
119
+ border-radius: 6px;
120
+ width:100%;
121
+ }
122
+ .team-member-list .post-content-bottom {
123
+ position: relative;
124
+ display: block;
125
+ padding: 15px 10px;
126
+ }
127
+ .team-member-list .post-title,.team-member-list .post-title a{
128
+ font-size: 18px;
129
+ line-height: 24px;
130
+ display: inline-block;
131
+ margin-top: 0;
132
+ margin-bottom: 0;
133
+ font-weight: 600;
134
+ color:#222;
135
+ -webkit-transition: all .3s linear;
136
+ -moz-transition: all .3s linear;
137
+ -o-transition: all .3s linear;
138
+ -ms-transition: all .3s linear;
139
+ transition: all .3s linear;
140
+ }
141
+ .team-member-list .member-designation {
142
+ position: relative;
143
+ display: block;
144
+ margin-top: 8px;
145
+ font-size: 15px;
146
+ line-height: 20px;
147
+ color: #888888;
148
+ font-weight: 300;
149
+ -webkit-transition: all .3s linear;
150
+ -moz-transition: all .3s linear;
151
+ -o-transition: all .3s linear;
152
+ -ms-transition: all .3s linear;
153
+ transition: all .3s linear;
154
+ }
assets/css/main/theplus-testimonial-style.css ADDED
@@ -0,0 +1,201 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .testimonial-list .testimonial-list-content .entry-content {
2
+ color: #313131;
3
+ font-size: 14px;
4
+ line-height: 26px;
5
+ letter-spacing: .5px;
6
+ }
7
+ .testimonial-list .entry-content p {
8
+ color: #313131;
9
+ margin-bottom:0;
10
+ -webkit-transition: all .3s ease-in-out;
11
+ -moz-transition: all .3s ease-in-out;
12
+ -o-transition: all .3s ease-in-out;
13
+ -ms-transition: all .3s ease-in-out;
14
+ transition: all .3s ease-in-out;
15
+ }
16
+ .testimonial-list .post-content-image .post-title,.testimonial-list.testimonial-style-4 .post-title {
17
+ color:#313131;
18
+ font-size: 16px;
19
+ line-height: 22px;
20
+ font-weight: 700;
21
+ letter-spacing: 0.5px;
22
+ text-align: center;
23
+ display: block;
24
+ margin: 0;
25
+ margin-top: 15px;
26
+ -webkit-transition: all .3s ease-in-out;
27
+ -moz-transition: all .3s ease-in-out;
28
+ -o-transition: all .3s ease-in-out;
29
+ -ms-transition: all .3s ease-in-out;
30
+ transition: all .3s ease-in-out;
31
+ }
32
+ .testimonial-list.testimonial-style-2 .testimonial-list-content .entry-content{
33
+ text-align:center;
34
+ }
35
+ .testimonial-list.testimonial-style-2 .testimonial-author-title {
36
+ position: relative;
37
+ display: block;
38
+ text-align: center;
39
+ margin:0;
40
+ margin-top: 18px;
41
+ font-size: 14px;
42
+ line-height: 22px;
43
+ color: #313131;
44
+ font-weight: 600;
45
+ -webkit-transition: all .3s ease-in-out;
46
+ -moz-transition: all .3s ease-in-out;
47
+ -o-transition: all .3s ease-in-out;
48
+ -ms-transition: all .3s ease-in-out;
49
+ transition: all .3s ease-in-out;
50
+ }
51
+ .testimonial-list.testimonial-style-2 .testimonial-featured-image{
52
+ position: relative;
53
+ display: block;
54
+ max-width: 70px;
55
+ border-radius: 50px;
56
+ text-align: center;
57
+ margin: 0 auto;
58
+ }
59
+ .testimonial-list.testimonial-style-2 .post-content-image {
60
+ position: relative;
61
+ display: block;
62
+ text-align: center;
63
+ margin-bottom: 20px;
64
+ }
65
+ .testimonial-list.testimonial-style-2 .post-content-image {
66
+ margin-bottom: 0px;
67
+ }
68
+ .testimonial-list.testimonial-style-2 .testimonial-featured-image img ,.testimonial-list.testimonial-style-4 .testimonial-featured-image img {
69
+ border-radius: 50%;
70
+ box-shadow: 0px 7px 13px -6px #00000036;
71
+ -webkit-transition: all .3s ease-in-out;
72
+ -moz-transition: all .3s ease-in-out;
73
+ -o-transition: all .3s ease-in-out;
74
+ -ms-transition: all .3s ease-in-out;
75
+ transition: all .3s ease-in-out;
76
+ }
77
+ .testimonial-list.testimonial-style-2 .post-designation,.testimonial-list.testimonial-style-4 .post-designation {
78
+ text-align: center;
79
+ color:#888;
80
+ margin-top: 4px;
81
+ font-size: 13px;
82
+ letter-spacing: 0.5px;
83
+ font-weight: 400;
84
+ line-height: 18px;
85
+ }
86
+ .testimonial-list.testimonial-style-2 .testimonial-content-text{
87
+ position: relative;
88
+ text-align:center;
89
+ margin-bottom: 35px;
90
+ -webkit-transition: all .3s ease-in-out;
91
+ -moz-transition: all .3s ease-in-out;
92
+ -o-transition: all .3s ease-in-out;
93
+ -ms-transition: all .3s ease-in-out;
94
+ transition: all .3s ease-in-out;
95
+ }
96
+ .testimonial-list.testimonial-style-2 .testimonial-list-content{
97
+ padding: 20px;
98
+ position: relative;
99
+ background: #fff;
100
+ border-radius: 4px;
101
+ text-align:center;
102
+ box-shadow: 0px 3px 12px -6px #00000042;
103
+ -webkit-transition: all .3s ease-in-out;
104
+ -moz-transition: all .3s ease-in-out;
105
+ -o-transition: all .3s ease-in-out;
106
+ -ms-transition: all .3s ease-in-out;
107
+ transition: all .3s ease-in-out;
108
+ }
109
+ .testimonial-list.testimonial-style-4 .post-title {
110
+ text-align:left;
111
+ }
112
+ .testimonial-list.testimonial-style-4 .testimonial-featured-image {
113
+ display: inline-block;
114
+ vertical-align: middle;
115
+ margin: 0;
116
+ text-align: left;
117
+ }
118
+ .testimonial-list.testimonial-style-4 .testimonial-content-text{
119
+ text-align: left;
120
+ display: inline-block;
121
+ vertical-align: middle;
122
+ -webkit-box-flex: 0;
123
+ padding-left:20px;
124
+ -webkit-box-flex: 0;
125
+ -ms-flex: 0 0 75%;
126
+ flex: 0 0 75%;
127
+ max-width: 75%;
128
+ }
129
+ .testimonial-list.testimonial-style-4 .post-content-image {
130
+ display: inline-block;
131
+ -webkit-box-flex: 0;
132
+ -ms-flex: 0 0 25%;
133
+ flex: 0 0 25%;
134
+ max-width: 25%;
135
+ }
136
+ .testimonial-list.testimonial-style-4 .testimonial-author-title {
137
+ position: relative;
138
+ display: block;
139
+ margin:0;
140
+ margin-bottom: 10px;
141
+ font-size: 14px;
142
+ line-height: 22px;
143
+ color: #313131;
144
+ font-weight: 600;
145
+ -webkit-transition: all .3s ease-in-out;
146
+ -moz-transition: all .3s ease-in-out;
147
+ -o-transition: all .3s ease-in-out;
148
+ -ms-transition: all .3s ease-in-out;
149
+ transition: all .3s ease-in-out;
150
+ }
151
+ .testimonial-list.testimonial-style-4 .testimonial-author-logo {
152
+ max-width: 160px;
153
+ margin-bottom: 5px;
154
+ display: inline-block;
155
+ position: relative;
156
+ }
157
+ .testimonial-list.testimonial-style-4 .author-left-text {
158
+ display: inline-block;
159
+ position: relative;
160
+ vertical-align: middle;
161
+ }
162
+ .testimonial-list.testimonial-style-4 .content-right .post-title, .testimonial-list.testimonial-style-4 .post-designation {
163
+ display: inline-block;
164
+ vertical-align: middle;
165
+ margin-top: 15px;
166
+ }
167
+ .testimonial-list.testimonial-style-4 .post-designation:before {
168
+ content: '-';
169
+ position: relative;
170
+ padding-left: 10px;
171
+ padding-right: 5px;
172
+ font-size: inherit;
173
+ line-height: inherit;
174
+ letter-spacing: inherit;
175
+ color: inherit;
176
+ }
177
+ .testimonial-list.testimonial-style-4 .content-left .post-designation,.testimonial-list.testimonial-style-4 .content-left .testimonial-author-title {
178
+ text-align:left;
179
+ }
180
+ .testimonial-list.testimonial-style-4 .content-right .post-designation,.testimonial-list.testimonial-style-4 .content-right .testimonial-author-title,.testimonial-list.testimonial-style-4 .content-right .post-title {
181
+ text-align:right;
182
+ }
183
+ .testimonial-list.testimonial-style-4 .content-right .author-left-text,.testimonial-list.testimonial-style-4 .content-right .testimonial-author-logo {
184
+ text-align: right;
185
+ }
186
+ .testimonial-list.testimonial-style-4 .content-right .testimonial-content-text{
187
+ text-align:right;
188
+ padding-right:20px;
189
+ padding-left:0;
190
+ }
191
+ .testimonial-list.testimonial-style-4 .content-left .post-content-image{
192
+ -webkit-box-ordinal-group: 1;
193
+ -ms-flex-order: 0;
194
+ order: 0;
195
+ }
196
+ .testimonial-list.testimonial-style-4 .content-left .testimonial-content-text,.testimonial-list.testimonial-style-4 .content-right .post-content-image{
197
+ -webkit-box-ordinal-group: 2;
198
+ -ms-flex-order: 1;
199
+ order: 1;
200
+ }
201
+ /*style-4*/
assets/css/main/theplus_style.css ADDED
@@ -0,0 +1,2796 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .text-left{
2
+ text-align:left;
3
+ }
4
+ .text-center{
5
+ text-align:center;
6
+ }
7
+ .text-right{
8
+ text-align:right;
9
+ }
10
+ object#svg_main_logo {
11
+ margin: 0px;
12
+ }
13
+ .animate-general{
14
+ opacity:0;
15
+ }
16
+
17
+ h3.theplus-posts-not-found {
18
+ font-size: 14px;
19
+ background: #8072fc;
20
+ padding: 10px;
21
+ text-align: center;
22
+ line-height: 25px;
23
+ border-radius: 3px;
24
+ box-shadow: 0px 5px 30px -5px #8072fc;
25
+ color: #fff;
26
+ }
27
+
28
+ /*------- contact form style-------*/
29
+ /*---radio button style-------*/
30
+ .theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 {
31
+ display: block;
32
+ width: 100%;
33
+ position: relative;
34
+ }
35
+ .theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 input[type="radio"] {
36
+ display: none;
37
+ }
38
+ .theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 span.wpcf7-list-item {
39
+ position: relative;
40
+ vertical-align: middle;
41
+ overflow: hidden;
42
+ }
43
+ .theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 .input__radio_btn {
44
+ display: inline-block;
45
+ cursor: pointer;
46
+ text-align: left;
47
+ margin: 0;
48
+ position: relative;
49
+ margin-left: 4px;
50
+ font-weight: 400;
51
+ }
52
+ .theplus-contact-form label.input__radio_btn .toggle-button__icon{
53
+ content: "";
54
+ display: inline-block;
55
+ vertical-align: middle;
56
+ cursor: pointer;
57
+ z-index: 1;
58
+ height: 24px;
59
+ width: 24px;
60
+ overflow: hidden;
61
+ -moz-border-radius: 50%;
62
+ -webkit-border-radius: 50%;
63
+ border-radius: 50%;
64
+ background: #000;
65
+ margin-left: 5px;
66
+ position: relative;
67
+ }
68
+ .theplus-contact-form .input__radio_btn .toggle-button__icon:after {
69
+ content: "\f00c";
70
+ position: absolute;
71
+ transition: 0.2s ease-out;
72
+ -webkit-transition: 0.2s ease-out;
73
+ -moz-transition: 0.2s ease-out;
74
+ -o-transition: 0.2s ease-out;
75
+ -ms-transition: 0.2s ease-out;
76
+ display: inline-block;
77
+ font: normal normal normal 14px/1 FontAwesome;
78
+ font-size: inherit;
79
+ text-rendering: auto;
80
+ -webkit-font-smoothing: antialiased;
81
+ -moz-osx-font-smoothing: grayscale;
82
+ }
83
+ .theplus-contact-form .input__radio_btn .toggle-button__icon:after {
84
+ -moz-border-radius: 50%;
85
+ -webkit-border-radius: 50%;
86
+ border-radius: 50%;
87
+ }
88
+ .theplus-contact-form .input__radio_btn .toggle-button__icon:after {
89
+ top: 50%;
90
+ left: 50%;
91
+ width: 24px;
92
+ height: 24px;
93
+ line-height: 24px;
94
+ font-size: 13px;
95
+ text-align:center;
96
+ background: transparent;
97
+ color:#fff;
98
+ animation: radio-hide .2s ease-out;
99
+ transition: none;
100
+ -webkit-transition: none;
101
+ -moz-transition: none;
102
+ -o-transition: none;
103
+ -ms-transition: none;
104
+ transform: translate3d(-50%,200%,0);
105
+ }
106
+ .input-radio-check:checked ~ label.input__radio_btn .toggle-button__icon:after {
107
+ transform: translate3d(-50%,-50%,0);
108
+ animation: radio-show .2s;
109
+ }
110
+ @keyframes radio-hide {
111
+ 0% {
112
+ transform: translate3d(-50%,-50%,0); }
113
+ 100% {
114
+ transform: translate3d(-50%,200%,0) }
115
+ }
116
+
117
+ @keyframes radio-show {
118
+ 0% {
119
+ transform: translate3d(-50%,200%,0) }
120
+ 100% {
121
+ transform: translate3d(-50%,-50%,0); }
122
+ }
123
+
124
+ .theplus-contact-form span.wpcf7-list-item.first {
125
+ margin: 0;
126
+ }
127
+ /*---radio button style-------*/
128
+ /*---checkbox button style-------*/
129
+ .theplus-contact-form span.wpcf7-form-control-wrap input[type="checkbox"],.theplus-contact-form span.wpcf7-form-control-wrap input[type="radio"] {
130
+ display: none;
131
+ }
132
+ .theplus-contact-form span.wpcf7-form-control-wrap span.wpcf7-list-item {
133
+ position: relative;
134
+ vertical-align: middle;
135
+ overflow: hidden;
136
+ }
137
+ .theplus-contact-form label.input__radio_btn {
138
+ cursor: pointer;
139
+ }
140
+ .theplus-contact-form span.wpcf7-form-control-wrap .input__checkbox_btn {
141
+ display: inline-block;
142
+ cursor: pointer;
143
+ text-align: left;
144
+ margin: 0;
145
+ position: relative;
146
+ margin-left: 4px;
147
+ font-weight: 400;
148
+ }
149
+ .theplus-contact-form label.input__checkbox_btn .toggle-button__icon{
150
+ content: "";
151
+ display: inline-block;
152
+ vertical-align: middle;
153
+ cursor: pointer;
154
+ z-index: 1;
155
+ height: 24px;
156
+ width: 24px;
157
+ overflow: hidden;
158
+ background: #000;
159
+ margin-left: 5px;
160
+ position: relative;
161
+ }
162
+ .theplus-contact-form .input__checkbox_btn .toggle-button__icon:after {
163
+ content: "\f00c";
164
+ position: absolute;
165
+ transition: 0.2s ease-out;
166
+ -webkit-transition: 0.2s ease-out;
167
+ -moz-transition: 0.2s ease-out;
168
+ -o-transition: 0.2s ease-out;
169
+ -ms-transition: 0.2s ease-out;
170
+ display: inline-block;
171
+ font: normal normal normal 14px/1 FontAwesome;
172
+ font-size: inherit;
173
+ text-rendering: auto;
174
+ -webkit-font-smoothing: antialiased;
175
+ -moz-osx-font-smoothing: grayscale;
176
+ }
177
+
178
+ .theplus-contact-form .input__checkbox_btn .toggle-button__icon:after {
179
+ top: 50%;
180
+ left: 50%;
181
+ width: 24px;
182
+ height: 24px;
183
+ line-height: 24px;
184
+ font-size: 13px;
185
+ text-align: center;
186
+ animation: checkbox-hide .2s ease-out;
187
+ transition: none;
188
+ color:#fff;
189
+ background:transparent;
190
+ -webkit-transition: none;
191
+ -moz-transition: none;
192
+ -o-transition: none;
193
+ -ms-transition: none;
194
+ -webkit-transform: translate3d(-50%,200%,0);
195
+ -ms-transform: translate3d(-50%,200%,0);
196
+ -moz-transform: translate3d(-50%,200%,0);
197
+ -o-transform: translate3d(-50%,200%,0);
198
+ transform: translate3d(-50%,200%,0);
199
+ }
200
+ .input-checkbox-check:checked ~ label.input__checkbox_btn .toggle-button__icon:after {
201
+ transform: translate3d(-50%,-50%,0);
202
+ animation: checkbox-show .2s;
203
+ }
204
+ @keyframes checkbox-hide {
205
+ 0% {
206
+ transform: translate3d(-50%,-50%,0); }
207
+ 100% {
208
+ transform: translate3d(-50%,200%,0) } }
209
+
210
+ @keyframes checkbox-show {
211
+ 0% {
212
+ transform: translate3d(-50%,200%,0) }
213
+ 100% {
214
+ transform: translate3d(-50%,-50%,0); } }
215
+ /*---checkbox button style-------*/
216
+
217
+ /*---input file upload-----------*/
218
+ .theplus-contact-form span.wpcf7-form-control-wrap.cf7-style-file {
219
+ align-items: center;
220
+ display: -webkit-box;
221
+ display: -webkit-flex;
222
+ display: -ms-flexbox;
223
+ display: flex;
224
+ -webkit-box-pack: start;
225
+ -webkit-justify-content: flex-start;
226
+ -ms-flex-pack: start;
227
+ justify-content: flex-start;
228
+ }
229
+ .theplus-contact-form input[type="file"] {
230
+ width: 0.1px;
231
+ height: 0.1px;
232
+ opacity: 0;
233
+ overflow: hidden;
234
+ position: absolute;
235
+ }
236
+ .wpcf7-file + .input__file_btn {
237
+ max-width: 80%;
238
+ font-size: 14px;
239
+ font-weight: 700;
240
+ text-overflow: ellipsis;
241
+ white-space: nowrap;
242
+ cursor: pointer;
243
+ display: inline-block;
244
+ overflow: hidden;
245
+ padding: 0.525rem 1.825rem;
246
+ margin-bottom: 0;
247
+ }
248
+ .wpcf7-file + .input__file_btn svg{
249
+ width: 2em;
250
+ height: 2em;
251
+ vertical-align: middle;
252
+ fill: #252525;
253
+ margin-top: -0.25em;
254
+ margin-right: 1em;
255
+ stroke-opacity: .8;
256
+ }
257
+ .wpcf7-file + .input__file_btn {
258
+ color: #252525;
259
+ border: 2px solid #252525;
260
+ }
261
+ .wpcf7-file + .input__file_btn {
262
+ cursor: pointer;
263
+ }
264
+ .wpcf7-file:focus + .input__file_btn, .inputfile-2 + .input__file_btn:hover {
265
+ color: #722040;
266
+ border: 2px solid #722040;
267
+ }
268
+ .wpcf7-file + .input__file_btn * {
269
+ pointer-events: none;
270
+ }
271
+ .theplus-contact-form .wpcf7-not-valid-tip {
272
+ position: relative;
273
+ display: block;
274
+ padding: 0;
275
+ margin-left: 10px;
276
+ line-height: 1;
277
+ font-size: 12px;
278
+ }
279
+ .theplus-contact-form .input--filled .input__file_btn {
280
+ background: #252525;
281
+ color: #fff;
282
+ border-color: #252525;
283
+ }
284
+ .theplus-contact-form .input--filled .input__file_btn *{
285
+ stroke: #fff;
286
+ }
287
+ /*---input file upload-----------*/
288
+ /*------- contact form style-------*/
289
+ /*--Advanced Text Block--*/
290
+ .pt-plus-text-block-wrapper{
291
+ position: relative;
292
+ display: block;
293
+ width: 100%;
294
+ }
295
+ .pt_plus_adv_text_block,.pt_plus_adv_text_block .text-content-block{
296
+ position: relative;
297
+ display: block;
298
+ width: 100%;
299
+ }
300
+ /*--Advanced Text Block--*/
301
+ /*--blockqoute --*/
302
+ .plus_blockquote{
303
+ position:relative;
304
+ width:100%;
305
+ display:block;
306
+ -webkit-transition: all .3s ease-in-out;
307
+ -moz-transition: all .3s ease-in-out;
308
+ -o-transition: all .3s ease-in-out;
309
+ transition: all .3s ease-in-out;
310
+ }
311
+ .plus_blockquote .quote-text{
312
+ font-size:inherit;
313
+ padding:0 !important;
314
+ margin:0;
315
+ background:transparent;
316
+ border:0px;
317
+ font-style: normal;
318
+ -webkit-transition: all .3s ease-in-out;
319
+ -moz-transition: all .3s ease-in-out;
320
+ -o-transition: all .3s ease-in-out;
321
+ transition: all .3s ease-in-out;
322
+ }
323
+ .plus_blockquote .quote-text:before,.plus_blockquote .quote-text:after{
324
+ display:none;
325
+ }
326
+ .plus_blockquote.quote-style-1{
327
+ padding-left:15px;
328
+ border-left:2px solid #ff214f;
329
+ font-size:16px;
330
+ line-height:25px;
331
+ color:#888;
332
+ }
333
+ .plus_blockquote.quote-style-2 .quote-left {
334
+ position: absolute;
335
+ font-size: 60px;
336
+ top: -50px;
337
+ text-shadow: 7px 14px 10px rgba(0,0,0,.1);
338
+ color: #888;
339
+ }
340
+ .plus_blockquote.quote-style-2 {
341
+ padding: 20px;
342
+ background: #eee;
343
+ border-radius: 3px;
344
+ }
345
+ .plus_blockquote .quote-text > span {
346
+ -webkit-transition: all .3s ease-in-out;
347
+ -moz-transition: all .3s ease-in-out;
348
+ -o-transition: all .3s ease-in-out;
349
+ transition: all .3s ease-in-out;
350
+ }
351
+ .plus_blockquote.quote-style-2 .quote-text > span {
352
+ padding-left: 65px;
353
+ }
354
+ .plus_blockquote.quote-style-2 .quote-text .quote_author {
355
+ text-align: right;
356
+ font-size: 14px;
357
+ line-height: 1.2;
358
+ margin-top: 10px;
359
+ -webkit-transition: all .3s ease-in-out;
360
+ -moz-transition: all .3s ease-in-out;
361
+ -o-transition: all .3s ease-in-out;
362
+ transition: all .3s ease-in-out;
363
+ }
364
+ /*--blockqoute --*/
365
+ /*--------animated image --*/
366
+
367
+ .pt-plus-animated-image-wrapper, .animated-image-parallax {
368
+ position: relative;
369
+ display: block;
370
+ width: 100%;
371
+ }
372
+ .pt-plus-animated-image-wrapper .js-tilt:hover {
373
+ position: relative;
374
+ z-index: 11;
375
+ }
376
+ .pt-plus-animated-image-wrapper img{
377
+ -webkit-transition: filter .3s ease-in-out;
378
+ -moz-transition: filter .3s ease-in-out;
379
+ -o-transition: filter .3s ease-in-out;
380
+ transition: filter .3s ease-in-out;
381
+ }
382
+
383
+ /*----------animated image background------------*/
384
+
385
+ /*-------theplus button-------*/
386
+ .pt-plus-button-wrapper{
387
+ position:relative;
388
+ display: block;
389
+ }
390
+ .ts-button.content_hover_effect {
391
+ position: relative;
392
+ display: inline-block;
393
+ width:auto;
394
+ }
395
+ .pt-plus-button-wrapper .parallax-scroll {
396
+ position: relative;
397
+ display: inline-block;
398
+ }
399
+ .pt-plus-button-wrapper .pt-plus-move-parallax {
400
+ position: relative;
401
+ display: inline-block;
402
+ width:auto;
403
+ }
404
+ .pt-plus-button-wrapper .pt-plus-move-parallax.full-button {
405
+ width:100%;
406
+ }
407
+ .pt_plus_button {
408
+ position: relative;
409
+ display: inline-block;
410
+ width: auto;
411
+ }
412
+ .pt_plus_button.full-button {
413
+ width: 100%;
414
+ text-align: center;
415
+ }
416
+ .ts-button.content_hover_effect.full-button {
417
+ width: 100%;
418
+ }
419
+ .pt_plus_button.full-button a.button-link-wrap {
420
+ display: block;
421
+ width: 100%;
422
+ text-align: center;
423
+ }
424
+ a.button-link-wrap:hover {
425
+ text-decoration: blink;
426
+ }
427
+ .pt_plus_button.trnasition_hover{
428
+ -webkit-transition: all .3s linear;
429
+ -moz-transition: all .3s linear;
430
+ -ms-transition: all .3s linear;
431
+ -o-transition: all .3s linear;
432
+ transition: all .3s linear;
433
+ }
434
+ .pt_plus_button.trnasition_hover:hover{
435
+ -webkit-transform: translateY(-3px);
436
+ -moz-transform: translateY(-3px);
437
+ -ms-transform: translateY(-3px);
438
+ -o-transform: translateY(-3px);
439
+ transform: translateY(-3px);
440
+ }
441
+ .pt_plus_button .button-link-wrap i {
442
+ padding-left: 5px;
443
+ padding-right: 5px;
444
+ vertical-align: middle;
445
+ }
446
+ .pt_plus_button .button-link-wrap {
447
+ position: relative;
448
+ display: inline-block;
449
+ padding: 15px 30px;
450
+ font-size: 16px;
451
+ line-height: 25px;
452
+ letter-spacing: 1px;
453
+ cursor: pointer;
454
+ color: #000;
455
+ -webkit-transition: all .3s linear;
456
+ -moz-transition: all .3s linear;
457
+ -ms-transition: all .3s linear;
458
+ -o-transition: all .3s linear;
459
+ transition: all .3s linear;
460
+ }
461
+ .pt_plus_button .button-link-wrap:hover .button_line{
462
+ -webkit-animation: mymove 1s;
463
+ -webkit-animation-iteration-count: 1;
464
+ animation: mymove 1s;
465
+ animation-iteration-count: 1;
466
+ }
467
+
468
+ .pt_plus_button .button-link-wrap .button_line {
469
+ position: absolute;
470
+ background: #000;
471
+ width: 100%;
472
+ height: 1px;
473
+ bottom: 0;
474
+ left: 0%;
475
+ pointer-events: none;
476
+ z-index: 11;
477
+ display: inline-block;
478
+ }
479
+
480
+ @-webkit-keyframes mymove {
481
+ 0% { left: 0%;width:100%;}
482
+ 45% {left: 100%;width:0%}
483
+ 55% {left: 0%;width:0%}
484
+ 100% {left:0%;width:100%}
485
+ }
486
+
487
+ @keyframes mymove {
488
+ 0% { left: 0%;width:100%;}
489
+ 45% {left: 100%;width:0%}
490
+ 55% {left: 0%;width:0%}
491
+ 100% {left:0%;width:100%}
492
+ }
493
+ /*---------style-1-----------*/
494
+ .button-link-wrap i.button-before {
495
+ margin-right:10px;
496
+ }
497
+ .button-link-wrap i.button-after {
498
+ margin-left:10px;
499
+ }
500
+
501
+ /*---------style-4-----------*/
502
+ .pt_plus_button.button-style-4 .button-link-wrap {
503
+ padding: 15px 30px;
504
+ text-align: center;
505
+ font-size: 16px;
506
+ line-height: 25px;
507
+ -moz-border-radius:30px;
508
+ -webkit-border-radius:30px;
509
+ border-radius: 30px;
510
+ border: 1px solid #252525;
511
+ vertical-align: top;
512
+ background: #252525;
513
+ -webkit-transition: background 150ms ease-in-out, color 150ms ease-in-out;
514
+ -moz-transition: background 150ms ease-in-out, color 150ms ease-in-out;
515
+ -o-transition: background 150ms ease-in-out, color 150ms ease-in-out;
516
+ -ms-transition: background 150ms ease-in-out, color 150ms ease-in-out;
517
+ transition: background 150ms ease-in-out, color 150ms ease-in-out;
518
+ position: relative;
519
+ overflow: hidden;
520
+ color: #8a8a8a;
521
+ -webkit-background-size: cover !important;
522
+ -moz-background-size: cover !important;
523
+ -o-background-size: cover !important;
524
+ background-size: cover !important;
525
+ background-position: center center !important;
526
+ }
527
+ .pt_plus_button.button-style-4 .button-link-wrap:hover {
528
+ color: #252525;
529
+ border: 1px solid #252525;
530
+ }
531
+ .pt_plus_button.button-style-4 .button-link-wrap::after {
532
+ content: attr(data-hover);
533
+ display: grid;
534
+ align-items: center;
535
+ position: absolute;
536
+ width: 100%;
537
+ height: 100%;
538
+ top: 0;
539
+ left: 0;
540
+ z-index: 1;
541
+ background: #00d7e4;
542
+ -ms-transform: translateY(100%);
543
+ -webkit-transform: translateY(100%);
544
+ -moz-transform: translateY(100%);
545
+ -o-transform: translateY(100%);
546
+ transform: translateY(100%);
547
+ -webkit-transition:-webkit-transform ease 0.3s;
548
+ -moz-transition: -moz-transform ease 0.3s;
549
+ -o-transition:-o-transform ease 0.3s;
550
+ -ms-transition:-ms-transform ease 0.3s;
551
+ transition: transform ease 0.3s;
552
+ -webkit-background-size: cover !important;
553
+ -moz-background-size: cover !important;
554
+ -o-background-size: cover !important;
555
+ background-size: cover !important;
556
+ background-position: center center !important;
557
+ }
558
+ .pt_plus_button.button-style-4 .button-link-wrap:hover::after {
559
+ -ms-transform: translateY(0);
560
+ -ms-transform: translateY(0);
561
+ -moz-transform: translateY(0);
562
+ -o-transform: translateY(0);
563
+ transform: translateY(0);
564
+ }
565
+ /*---------style-4-----------*/
566
+ /*---------style-8-----------*/
567
+ .pt_plus_button.button-style-8{
568
+ overflow: visible;
569
+ }
570
+ .pt_plus_button.button-style-8 .button-link-wrap{
571
+ -moz-box-shadow: 0 8px 20px 1px rgba(0,0,0,0.27);
572
+ -webkit-box-shadow: 0 8px 20px 1px rgba(0,0,0,0.27);
573
+ box-shadow: 0 8px 20px 1px rgba(0,0,0,0.27);
574
+ padding: 15px 30px;
575
+ border:1px solid #252525;
576
+ }
577
+ .pt_plus_button.button-style-8 .button-link-wrap:hover{
578
+ -webkit-box-shadow: 0 3px 6px 1px rgba(0,0,0,0.08);
579
+ -moz-box-shadow: 0 3px 6px 1px rgba(0,0,0,0.08);
580
+ box-shadow: 0 3px 6px 1px rgba(0,0,0,0.08);
581
+ -webkit-transform:translateY(3px);
582
+ -ms-transform:translateY(3px);
583
+ -moz-transform:translateY(3px);
584
+ -o-transform: translateY(3px);
585
+ transform: translateY(3px);
586
+ }
587
+ /*---------style-8-----------*/
588
+ /*---------style-11-----------*/
589
+ .pt_plus_button.button-style-11 .button-link-wrap {
590
+ display: inline-block;
591
+ background:#252525;
592
+ border: 1px solid #252525;
593
+ overflow: hidden;
594
+ }
595
+
596
+ .pt_plus_button.button-style-11 .button-link-wrap:hover > span {
597
+ -webkit-transform: translate3d(0, 100%, 0);
598
+ -ms-transform:translate3d(0, 100%, 0);
599
+ -moz-transform:translate3d(0, 100%, 0);
600
+ -o-transform: translate3d(0, 100%, 0);
601
+ transform: translate3d(0, 100%, 0);
602
+ display: block;
603
+ opacity: 0;
604
+ }
605
+ .pt_plus_button.button-style-11 .button-link-wrap::before {
606
+ content: attr(data-hover);
607
+ position: absolute;
608
+ top: 0;
609
+ left: 0;
610
+ width: 100%;
611
+ height: 100%;
612
+ color: #252525;
613
+ background: #ff214f;
614
+ display: grid;
615
+ align-items: center;
616
+ text-align: center;
617
+ }
618
+ .pt_plus_button.button-style-11 .button-link-wrap > span,.pt_plus_button.button-style-11 .button-link-wrap::before{
619
+ -webkit-transition: -webkit-transform 0.3s;
620
+ -moz-transition: -moz-transform 0.3s;
621
+ -o-transition:-o-transform 0.3s;
622
+ -ms-transition:-ms-transform 0.3s;
623
+ transition: transform 0.3s;
624
+ -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
625
+ transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
626
+ padding: 15px 30px;
627
+ display: block;
628
+ }
629
+
630
+ .pt_plus_button.button-style-11.hover-left .button-link-wrap::before {
631
+ -webkit-transform: translate3d(-100%, 0, 0);
632
+ -ms-transform: translate3d(-100%, 0, 0);
633
+ -moz-transform: translate3d(-100%, 0, 0);
634
+ -o-transform: translate3d(-100%, 0, 0);
635
+ transform: translate3d(-100%, 0, 0);
636
+ }
637
+
638
+ .pt_plus_button.button-style-11.hover-right .button-link-wrap::before {
639
+ -webkit-transform: translate3d(100%, 0, 0);
640
+ -ms-transform: translate3d(100%, 0, 0);
641
+ -moz-transform: translate3d(100%, 0, 0);
642
+ -o-transform: translate3d(100%, 0, 0);
643
+ transform: translate3d(100%, 0, 0);
644
+ }
645
+ .pt_plus_button.button-style-11.hover-top .button-link-wrap::before {
646
+ -webkit-transform: translate3d(0,-100%, 0);
647
+ -ms-transform:translate3d(0,-100%, 0);
648
+ -moz-transform:translate3d(0,-100%, 0);
649
+ -o-transform: translate3d(0,-100%, 0);
650
+ transform: translate3d(0, -100%, 0);
651
+ }
652
+ .pt_plus_button.button-style-11.hover-bottom .button-link-wrap::before {
653
+ -webkit-transform: translate3d(0,100%, 0);
654
+ -ms-transform:translate3d(0,100%, 0);
655
+ -moz-transform:translate3d(0,100%, 0);
656
+ -o-transform: translate3d(0,100%, 0);
657
+ transform: translate3d(0,100%, 0);
658
+ }
659
+ .pt_plus_button.button-style-11.hover-left .button-link-wrap:hover::before,.pt_plus_button.button-style-11.hover-right .button-link-wrap:hover::before,.pt_plus_button.button-style-11.hover-top .button-link-wrap:hover::before,.pt_plus_button.button-style-11.hover-bottom .button-link-wrap:hover::before {
660
+ -webkit-transform: translate3d(0, 0, 0);
661
+ -ms-transform: translate3d(0, 0, 0);
662
+ -moz-transform: translate3d(0, 0, 0);
663
+ -o-transform: translate3d(0, 0, 0);
664
+ transform: translate3d(0, 0, 0);
665
+ }
666
+
667
+ .pt_plus_button.button-style-11 .button-link-wrap {
668
+ overflow: hidden;
669
+ padding: 0;
670
+ }
671
+
672
+ /*---------style-11-----------*/
673
+ /*---------style-12-----------*/
674
+ .pt_plus_button.button-style-12 .button-link-wrap {
675
+ display: inline-block;
676
+ border: 1px solid #252525;
677
+ padding: 15px 30px;
678
+ overflow: hidden;
679
+ }
680
+ .pt_plus_button.button-style-12 .button-link-wrap span{
681
+ z-index: 1;
682
+ position: relative;
683
+ }
684
+ .pt_plus_button.button-style-12 .button-link-wrap::before {
685
+ content: '';
686
+ position: absolute;
687
+ top: 50%;
688
+ left: 100%;
689
+ margin: -15px 0 0 1px;
690
+ width: 50px;
691
+ height: 30px;
692
+ -moz-border-radius:50%;
693
+ -webkit-border-radius:50%;
694
+ border-radius: 50%;
695
+ background: #ff214f;
696
+ -webkit-transform-origin: 100% 50%;
697
+ -moz-transform-origin: 100% 50%;
698
+ -ms-transform-origin: 100% 50%;
699
+ -o-transform-origin: 100% 50%;
700
+ transform-origin: 100% 50%;
701
+ -webkit-transform: scale3d(1, 2, 1);
702
+ -moz-transform: scale3d(1, 2, 1);
703
+ -ms-transform: scale3d(1, 2, 1);
704
+ -o-transform: scale3d(1, 2, 1);
705
+ transform: scale3d(1, 2, 1);
706
+ -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
707
+ -moz-transition: -webkit-transform 0.3s, opacity 0.3s;
708
+ -ms-transition: -webkit-transform 0.3s, opacity 0.3s;
709
+ -o-transition: -webkit-transform 0.3s, opacity 0.3s;
710
+ transition: transform 0.1, opacity 0.3s;
711
+ -webkit-transition-timing-function: cubic-bezier(0.7,0,0.9,1);
712
+ transition-timing-function: cubic-bezier(0.7,0,0.9,1);
713
+ }
714
+ .pt_plus_button.button-style-12 .button-link-wrap:hover::before {
715
+ -webkit-transform: scale3d(9, 9, 1);
716
+ transform: scale3d(9, 9, 1);
717
+ }
718
+ /*---------style-12-----------*/
719
+ /*---------style-13-----------*/
720
+ .pt_plus_button.button-style-13 .button-link-wrap {
721
+ display: inline-block;
722
+ border: 1px solid #252525;
723
+ padding: 15px 30px;
724
+ overflow: hidden;
725
+ }
726
+ .pt_plus_button.button-style-13 .button-link-wrap span {
727
+ position: relative;
728
+ z-index: 1;
729
+ }
730
+ .pt_plus_button.button-style-13 .button-link-wrap::before{
731
+ opacity: .4;
732
+ }
733
+ .pt_plus_button.button-style-13 .button-link-wrap::before, .pt_plus_button.button-style-13 .button-link-wrap::after {
734
+ content: '';
735
+ position: absolute;
736
+ height: 100%;
737
+ width: 100%;
738
+ -webkit-transition: -webkit-transform 0.3s;
739
+ -moz-transition: -moz-transform 0.3s;
740
+ -o-transition:-ms-transform 0.3s;
741
+ -ms-transition:-o-transform 0.3s;
742
+ transition: transform 0.3s;
743
+ -webkit-transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
744
+ transition-timing-function: cubic-bezier(0.75, 0, 0.125, 1);
745
+ }
746
+ .pt_plus_button.button-style-13.hover-top .button-link-wrap::before, .pt_plus_button.button-style-13.hover-top .button-link-wrap::after {
747
+ bottom: 100%;
748
+ left: 0;
749
+ }
750
+ .pt_plus_button.button-style-13.hover-bottom .button-link-wrap::before, .pt_plus_button.button-style-13.hover-bottom .button-link-wrap::after {
751
+ bottom: -100%;
752
+ left: 0;
753
+ }
754
+ .pt_plus_button.button-style-13.hover-right .button-link-wrap::before, .pt_plus_button.button-style-13.hover-right .button-link-wrap::after {
755
+ right: 100%;
756
+ top: 0;
757
+ left: 100%;
758
+ }
759
+ .pt_plus_button.button-style-13.hover-left .button-link-wrap::before, .pt_plus_button.button-style-13.hover-left .button-link-wrap::after {
760
+ left: -100%;
761
+ right: 100%;
762
+ top: 0;
763
+ }
764
+ .pt_plus_button.button-style-13.hover-left .button-link-wrap:hover::before, .pt_plus_button.button-style-13.hover-left .button-link-wrap:hover::after {
765
+ -webkit-transform: translate3d(100%,0%, 0);
766
+ -ms-transform:translate3d(100%,0%, 0);
767
+ -moz-transform:translate3d(100%,0%, 0);
768
+ -o-transform: translate3d(100%,0%, 0);
769
+ transform: translate3d(100%,0%, 0);
770
+ }
771
+ .pt_plus_button.button-style-13.hover-right .button-link-wrap:hover::before, .pt_plus_button.button-style-13.hover-right .button-link-wrap:hover::after {
772
+ -webkit-transform: translate3d(-100%,0%, 0);
773
+ -ms-transform:translate3d(-100%,0%, 0);
774
+ -moz-transform:translate3d(-100%,0%, 0);
775
+ -o-transform: translate3d(-100%,0%, 0);
776
+ transform: translate3d(-100%,0%, 0);
777
+ }
778
+ .pt_plus_button.button-style-13.hover-top .button-link-wrap:hover::before, .pt_plus_button.button-style-13.hover-top .button-link-wrap:hover::after {
779
+ -webkit-transform: translate3d(0%,100%, 0);
780
+ -ms-transform: translate3d(0%,100%, 0);
781
+ -moz-transform: translate3d(0%,100%, 0);
782
+ -o-transform: translate3d(0%,100%, 0);
783
+ transform: translate3d(0%,100%, 0);
784
+ }
785
+ .pt_plus_button.button-style-13.hover-bottom .button-link-wrap:hover::before, .pt_plus_button.button-style-13.hover-bottom .button-link-wrap:hover::after {
786
+ -webkit-transform: translate3d(0%,-100%, 0);
787
+ -ms-transform:translate3d(0%,-100%, 0);
788
+ -moz-transform:translate3d(0%,-100%, 0);
789
+ -o-transform: translate3d(0%,-100%, 0);
790
+ transform: translate3d(0%,-100%, 0);
791
+ }
792
+ .pt_plus_button.button-style-13 .button-link-wrap:hover::after {
793
+ -webkit-transition-delay: 0.175s;
794
+ -moz-transition-delay:0.175s;
795
+ -o-transition-delay:0.175s;
796
+ transition-delay: 0.175s;
797
+ }
798
+ .pt_plus_button.button-style-13 .button-link-wrap::before, .pt_plus_button.button-style-13 .button-link-wrap::after {
799
+ background: #ff214f;
800
+ }
801
+ /*---------style-13-----------*/
802
+ /*---------style-20-----------*/
803
+ .pt_plus_button.button-style-20 .button-link-wrap:after {
804
+ width: 100%;
805
+ height: 0;
806
+ top: 50%;
807
+ left: 50%;
808
+ background: #ff214f;
809
+ -webkit-transform: translateX(-50%) translateY(-50%) rotate(45deg);
810
+ -moz-transform: translateX(-50%) translateY(-50%) rotate(45deg);
811
+ -ms-transform: translateX(-50%) translateY(-50%) rotate(45deg);
812
+ -o-transform: translateX(-50%) translateY(-50%) rotate(45deg);
813
+ transform: translateX(-50%) translateY(-50%) rotate(45deg);
814
+ }
815
+ .pt_plus_button.button-style-20 .button-link-wrap:hover:after {
816
+ height: 280%;
817
+ opacity: 1;
818
+ }
819
+ .pt_plus_button.button-style-20 .button-link-wrap:active:after {
820
+ height: 500%;
821
+ opacity: 1;
822
+ }
823
+ /*---------style-20-----------*/
824
+ /*---------style-21-----------*/
825
+ .pt_plus_button.button-style-21 .button-link-wrap:after {
826
+ width: 101%;
827
+ height: 0;
828
+ top: 50%;
829
+ left: 50%;
830
+ background: #ff214f;
831
+ -webkit-transform: translateX(-50%) translateY(-50%);
832
+ -moz-transform: translateX(-50%) translateY(-50%);
833
+ -ms-transform: translateX(-50%) translateY(-50%);
834
+ -o-transform: translateX(-50%) translateY(-50%);
835
+ transform: translateX(-50%) translateY(-50%);
836
+ }
837
+ .pt_plus_button.button-style-21 .button-link-wrap:hover:after {
838
+ height: 75%;
839
+ opacity: 1;
840
+ }
841
+ .pt_plus_button.button-style-21 .button-link-wrap:active:after {
842
+ height: 130%;
843
+ opacity: 1;
844
+ }
845
+ /*---------style-21-----------*/
846
+ /*-------tp button-------*/
847
+
848
+ /*-- content hover effects -----------*/
849
+ .content_hover_effect{
850
+ position:relative;
851
+ display:block;
852
+ width:100%;
853
+ }
854
+ .content_hover_push {
855
+ -webkit-transform: translateZ(0);
856
+ -moz-transform: translateZ(0);
857
+ -ms-transform: translateZ(0);
858
+ -o-transform: translateZ(0);
859
+ transform: translateZ(0);
860
+ -webkit-backface-visibility: hidden;
861
+ backface-visibility: hidden;
862
+ -moz-osx-font-smoothing: grayscale;
863
+ }
864
+ .content_hover_push:hover {
865
+ -webkit-animation-name: hvr-push;
866
+ animation-name: hvr-push;
867
+ -webkit-animation-duration: 0.3s;
868
+ animation-duration: 0.3s;
869
+ -webkit-animation-timing-function: linear;
870
+ animation-timing-function: linear;
871
+ -webkit-animation-iteration-count: 1;
872
+ animation-iteration-count: 1;
873
+ }
874
+ @-webkit-keyframes hvr-push {
875
+ 50% {
876
+ -webkit-transform: scale(.8);
877
+ transform: scale(.8)
878
+ }
879
+
880
+ 100% {
881
+ -webkit-transform: scale(1);
882
+ transform: scale(1)
883
+ }
884
+ }
885
+
886
+ @keyframes hvr-push {
887
+ 50% {
888
+ -webkit-transform: scale(.8);
889
+ transform: scale(.8)
890
+ }
891
+
892
+ 100% {
893
+ -webkit-transform: scale(1);
894
+ transform: scale(1)
895
+ }
896
+ }
897
+ /*-- content hover effects -----------*/
898
+
899
+ /*pt_plus_countdown--*/
900
+ ul.pt_plus_countdown {
901
+ list-style: none;
902
+ margin: 20px 0;
903
+ padding: 0;
904
+ display: block;
905
+ text-align: center;
906
+ }
907
+ ul.pt_plus_countdown li {
908
+ border: 4px solid #736E6E;
909
+ padding: 5px 17px;
910
+ margin:0px 10px;
911
+ }
912
+ ul.pt_plus_countdown li { display: inline-block; }
913
+
914
+ ul.pt_plus_countdown li span {
915
+ font-weight: 300;
916
+ line-height: 80px;
917
+ padding: 0 13px;
918
+ padding-bottom: 0px;
919
+ display: block;
920
+ }
921
+ ul.pt_plus_countdown li h6 {
922
+ font-size: 14px;
923
+ text-transform: uppercase;
924
+ padding-top: 10px;
925
+ font-weight: 600;
926
+ border-top: 2px solid;
927
+ margin: 0;
928
+ }
929
+ /*-------End countdown-------*/
930
+ /*--- heading animation css --*/
931
+ .pt-plus-heading-animation .ani-bold{
932
+ font-weight: bold;
933
+ }
934
+ .pt-plus-heading-animation .ani-b-normal{
935
+ font-weight: 400;
936
+ }
937
+ .pt-plus-heading-animation .ani-underline{
938
+ text-decoration: underline !important;
939
+ }
940
+ .pt-plus-heading-animation .ani-u-normal{
941
+ text-decoration: none !important;
942
+ }
943
+ .pt-plus-heading-animation .ani-italic i{
944
+ font-style:italic !important;
945
+ }
946
+ .pt-plus-heading-animation .ani-i-normal i{
947
+ font-style: normal !important ;
948
+ }
949
+ .cd-words-wrapper {
950
+ display: inline-block;
951
+ position: relative;
952
+ text-align: left;
953
+ }
954
+ .cd-words-wrapper b {
955
+ display: inline-block;
956
+ position: absolute;
957
+ white-space: nowrap;
958
+ left: 0;
959
+ top: 0;
960
+ padding:0 5px;
961
+ }
962
+ .cd-words-wrapper b.is-visible {
963
+ position: relative;
964
+ }
965
+ .no-js .cd-words-wrapper b {
966
+ opacity: 0;
967
+ }
968
+ .no-js .cd-words-wrapper b.is-visible {
969
+ opacity: 1;
970
+ }
971
+
972
+
973
+ .pt-plus-cd-headline.type .cd-words-wrapper {
974
+ vertical-align: top;
975
+ overflow: hidden;
976
+ }
977
+ .pt-plus-cd-headline.type .cd-words-wrapper::after {
978
+
979
+ content: '';
980
+ position: absolute;
981
+ right: 0;
982
+ top: 50%;
983
+ bottom: auto;
984
+ -webkit-transform: translateY(-50%);
985
+ -moz-transform: translateY(-50%);
986
+ -ms-transform: translateY(-50%);
987
+ -o-transform: translateY(-50%);
988
+ transform: translateY(-50%);
989
+ height: 90%;
990
+ width: 0;
991
+ background: #aebcb9;
992
+ }
993
+ .pt-plus-cd-headline.type .cd-words-wrapper.waiting::after {
994
+ -webkit-animation: cd-pulse 1s infinite;
995
+ -moz-animation: cd-pulse 1s infinite;
996
+ animation: cd-pulse 1s infinite;
997
+ }
998
+
999
+ .pt-plus-cd-headline.type .cd-words-wrapper.selected::after {
1000
+ visibility: hidden;
1001
+ }
1002
+
1003
+ .pt-plus-cd-headline.type b {
1004
+ visibility: hidden;
1005
+ }
1006
+ .pt-plus-cd-headline.type b.is-visible {
1007
+ visibility: visible;
1008
+ }
1009
+ .pt-plus-cd-headline.type i {
1010
+ position: absolute;
1011
+ visibility: hidden;
1012
+ }
1013
+ .pt-plus-cd-headline.type i.in {
1014
+ position: relative;
1015
+ visibility: visible;
1016
+ }
1017
+ .pt-plus-cd-headline span.cd-words-wrapper i {
1018
+ font-style: normal;
1019
+ }
1020
+ @-webkit-keyframes cd-pulse {
1021
+ 0% {
1022
+ -webkit-transform: translateY(-50%) scale(1);
1023
+ opacity: 1;
1024
+ }
1025
+ 40% {
1026
+ -webkit-transform: translateY(-50%) scale(0.9);
1027
+ opacity: 0;
1028
+ }
1029
+ 100% {
1030
+ -webkit-transform: translateY(-50%) scale(0);
1031
+ opacity: 0;
1032
+ }
1033
+ }
1034
+ @-moz-keyframes cd-pulse {
1035
+ 0% {
1036
+ -moz-transform: translateY(-50%) scale(1);
1037
+ opacity: 1;
1038
+ }
1039
+ 40% {
1040
+ -moz-transform: translateY(-50%) scale(0.9);
1041
+ opacity: 0;
1042
+ }
1043
+ 100% {
1044
+ -moz-transform: translateY(-50%) scale(0);
1045
+ opacity: 0;
1046
+ }
1047
+ }
1048
+ @keyframes cd-pulse {
1049
+ 0% {
1050
+ -webkit-transform: translateY(-50%) scale(1);
1051
+ transform: translateY(-50%) scale(1);
1052
+ opacity: 1;
1053
+ }
1054
+ 40% {
1055
+ -webkit-transform: translateY(-50%) scale(0.9);
1056
+ transform: translateY(-50%) scale(0.9);
1057
+ opacity: 0;
1058
+ }
1059
+ 100% {
1060
+ -webkit-transform: translateY(-50%) scale(0);
1061
+ transform: translateY(-50%) scale(0);
1062
+ opacity: 0;
1063
+ }
1064
+ }
1065
+ .pt-plus-cd-headline.loading-bar span {
1066
+ display: inline-block;
1067
+ padding: .2em 0;
1068
+ }
1069
+ .pt-plus-cd-headline.loading-bar .cd-words-wrapper {
1070
+ overflow: hidden;
1071
+ vertical-align: top;
1072
+ }
1073
+ .pt-plus-cd-headline.loading-bar .cd-words-wrapper::after {
1074
+ content: '';
1075
+ position: absolute;
1076
+ left: 7px;
1077
+ bottom: 0;
1078
+ height: 3px;
1079
+ width: 0;
1080
+ z-index: 2;
1081
+ -webkit-transition: width 0.3s -0.1s;
1082
+ -moz-transition: width 0.3s -0.1s;
1083
+ -o-transition: width 0.3s -0.1s;
1084
+ -ms-transition: width 0.3s -0.1s;
1085
+ transition: width 0.3s -0.1s;
1086
+ }
1087
+ .pt-plus-cd-headline.loading-bar .cd-words-wrapper.is-loading::after {
1088
+ width: 100%;
1089
+ -webkit-transition: width 3s;
1090
+ -moz-transition: width 3s;
1091
+ transition: width 3s;
1092
+ }
1093
+ .pt-plus-cd-headline.loading-bar b {
1094
+ top: .2em;
1095
+ opacity: 0;
1096
+ -webkit-transition: opacity 0.3s;
1097
+ -moz-transition: opacity 0.3s;
1098
+ transition: opacity 0.3s;
1099
+ }
1100
+ .pt-plus-cd-headline.loading-bar b.is-visible {
1101
+ opacity: 1;
1102
+ top: 0;
1103
+ }
1104
+
1105
+ .pt-plus-cd-headline.clip span {
1106
+ display: inline-block;
1107
+ padding: .2em 0;
1108
+ }
1109
+ .pt-plus-cd-headline.clip .cd-words-wrapper {
1110
+ overflow: hidden;
1111
+ vertical-align: top;
1112
+ }
1113
+ .pt-plus-cd-headline.clip .cd-words-wrapper::after {
1114
+ content: '';
1115
+ position: absolute;
1116
+ top: 0;
1117
+ right: 0;
1118
+ width: 2px;
1119
+ height: 100%;
1120
+ background: #aebcb9;
1121
+ }
1122
+ .pt-plus-cd-headline.clip b {
1123
+ opacity: 0;
1124
+ }
1125
+ .pt-plus-cd-headline.clip b.is-visible {
1126
+ opacity: 1;
1127
+ }
1128
+
1129
+ .pt-plus-cd-headline.scale b {
1130
+ opacity: 0;
1131
+ }
1132
+ .pt-plus-cd-headline.scale i {
1133
+ display: inline-block;
1134
+ opacity: 0;
1135
+ -webkit-transform: scale(0);
1136
+ -moz-transform: scale(0);
1137
+ -ms-transform: scale(0);
1138
+ -o-transform: scale(0);
1139
+ transform: scale(0);
1140
+ }
1141
+ .is-visible .pt-plus-cd-headline.scale i {
1142
+ opacity: 1;
1143
+ }
1144
+ .pt-plus-cd-headline.scale i.in {
1145
+ -webkit-animation: scale-up 0.6s forwards;
1146
+ -moz-animation: scale-up 0.6s forwards;
1147
+ animation: scale-up 0.6s forwards;
1148
+ }
1149
+ .pt-plus-cd-headline.scale i.out {
1150
+ -webkit-animation: scale-down 0.6s forwards;
1151
+ -moz-animation: scale-down 0.6s forwards;
1152
+ animation: scale-down 0.6s forwards;
1153
+ }
1154
+
1155
+ .no-csstransitions .pt-plus-cd-headline.scale i {
1156
+ -webkit-transform: scale(1);
1157
+ -moz-transform: scale(1);
1158
+ -ms-transform: scale(1);
1159
+ -o-transform: scale(1);
1160
+ transform: scale(1);
1161
+ opacity: 0;
1162
+ }
1163
+
1164
+ .no-csstransitions .pt-plus-cd-headline.scale .is-visible i {
1165
+ opacity: 1;
1166
+ }
1167
+
1168
+ @-webkit-keyframes scale-up {
1169
+ 0% {
1170
+ -webkit-transform: scale(0);
1171
+ opacity: 0;
1172
+ }
1173
+ 60% {
1174
+ -webkit-transform: scale(1.2);
1175
+ opacity: 1;
1176
+ }
1177
+ 100% {
1178
+ -webkit-transform: scale(1);
1179
+ opacity: 1;
1180
+ }
1181
+ }
1182
+ @-moz-keyframes scale-up {
1183
+ 0% {
1184
+ -moz-transform: scale(0);
1185
+ opacity: 0;
1186
+ }
1187
+ 60% {
1188
+ -moz-transform: scale(1.2);
1189
+ opacity: 1;
1190
+ }
1191
+ 100% {
1192
+ -moz-transform: scale(1);
1193
+ opacity: 1;
1194
+ }
1195
+ }
1196
+ @keyframes scale-up {
1197
+ 0% {
1198
+ -webkit-transform: scale(0);
1199
+ -moz-transform: scale(0);
1200
+ -ms-transform: scale(0);
1201
+ -o-transform: scale(0);
1202
+ transform: scale(0);
1203
+ opacity: 0;
1204
+ }
1205
+ 60% {
1206
+ -webkit-transform: scale(1.2);
1207
+ -moz-transform: scale(1.2);
1208
+ -ms-transform: scale(1.2);
1209
+ -o-transform: scale(1.2);
1210
+ transform: scale(1.2);
1211
+ opacity: 1;
1212
+ }
1213
+ 100% {
1214
+ -webkit-transform: scale(1);
1215
+ -moz-transform: scale(1);
1216
+ -ms-transform: scale(1);
1217
+ -o-transform: scale(1);
1218
+ transform: scale(1);
1219
+ opacity: 1;
1220
+ }
1221
+ }
1222
+ @-webkit-keyframes scale-down {
1223
+ 0% {
1224
+ -webkit-transform: scale(1);
1225
+ opacity: 1;
1226
+ }
1227
+ 60% {
1228
+ -webkit-transform: scale(0);
1229
+ opacity: 0;
1230
+ }
1231
+ }
1232
+ @-moz-keyframes scale-down {
1233
+ 0% {
1234
+ -moz-transform: scale(1);
1235
+ opacity: 1;
1236
+ }
1237
+ 60% {
1238
+ -moz-transform: scale(0);
1239
+ opacity: 0;
1240
+ }
1241
+ }
1242
+ @keyframes scale-down {
1243
+ 0% {
1244
+ -webkit-transform: scale(1);
1245
+ -moz-transform: scale(1);
1246
+ -ms-transform: scale(1);
1247
+ -o-transform: scale(1);
1248
+ transform: scale(1);
1249
+ opacity: 1;
1250
+ }
1251
+ 60% {
1252
+ -webkit-transform: scale(0);
1253
+ -moz-transform: scale(0);
1254
+ -ms-transform: scale(0);
1255
+ -o-transform: scale(0);
1256
+ transform: scale(0);
1257
+ opacity: 0;
1258
+ }
1259
+ }
1260
+ /*--- heading animation css --*/
1261
+ /*----------Heading Title-----------*/
1262
+ .elementor-widget-tp-heading-title.text-left .seprator.sep-l {
1263
+ text-align: left;
1264
+ margin-left: 0px;
1265
+ }
1266
+ .elementor-widget-tp-heading-title.text-right .seprator.sep-l {
1267
+ text-align: right;
1268
+ margin-right: 0px;
1269
+ }
1270
+ .heading-title-gradient {
1271
+ -webkit-background-clip: text !important;
1272
+ -webkit-text-fill-color: transparent !important;
1273
+ }
1274
+ .heading.style-3 .heading-title:before {
1275
+ border-bottom: 3px solid;
1276
+ width: 20%;
1277
+ content: '';
1278
+ height: 28px;
1279
+ display: inline-block;
1280
+
1281
+ }
1282
+ .heading_style .heading-sub-title,.heading_style .heading-title{
1283
+ margin-top: 5px;
1284
+ margin-bottom: 5px;
1285
+ word-wrap: break-word;
1286
+ }
1287
+ .heading{
1288
+ display: block;
1289
+ position: relative;
1290
+ width: 100%;
1291
+ }
1292
+
1293
+ /*** style 4 ***/
1294
+ .heading .text-center .seprator.sep-l {
1295
+ margin: 0 auto;
1296
+ }
1297
+ .heading .seprator.sep-l .sep-mg {
1298
+ margin: 0 7px;
1299
+ }
1300
+ .heading .text-right .seprator.sep-l {
1301
+ float: right;
1302
+ }
1303
+ .heading .seprator {
1304
+ display: -webkit-box;
1305
+ display: -webkit-flex;
1306
+ display: -ms-flexbox;
1307
+ display: flex;
1308
+ -webkit-box-orient: horizontal;
1309
+ -webkit-box-direction: normal;
1310
+ -webkit-flex-direction: row;
1311
+ -ms-flex-direction: row;
1312
+ flex-direction: row;
1313
+ -webkit-flex-wrap: nowrap;
1314
+ -ms-flex-wrap: nowrap;
1315
+ flex-wrap: nowrap;
1316
+ -webkit-box-align: center;
1317
+ -webkit-align-items: center;
1318
+ -ms-flex-align: center;
1319
+ align-items: center;
1320
+ border-radius: 15px;
1321
+ margin: 0 auto;
1322
+ }
1323
+ .heading span.title-sep {
1324
+ height: 1px;
1325
+ position: relative;
1326
+ -webkit-box-flex: 1;
1327
+ -webkit-flex: 1 1 auto;
1328
+ -ms-flex: 1 1 auto;
1329
+ flex: 1 1 auto;
1330
+ min-width: 10%;
1331
+ border: 1px solid #000;
1332
+ }
1333
+ /*** style 4 end ***/
1334
+ /*** style 5 ***/
1335
+ .heading.style-5 {
1336
+ margin-bottom: 20px;
1337
+ }
1338
+ .heading.style-5 .heading-title{ outline: 0;
1339
+ outline: 0;
1340
+ color: #313131;
1341
+ -webkit-transition: color 1s ease;
1342
+ -moz-transition: color 1s ease;
1343
+ -ms-transition: color 1s ease;
1344
+ -o-transition: color 1s ease;
1345
+ transition: color 1s ease;
1346
+ display: inline-block;
1347
+ box-sizing: border-box;
1348
+ -moz-box-sizing: border-box;
1349
+ -webkit-box-sizing: border-box;
1350
+ position: relative;
1351
+ text-decoration: none;
1352
+ -webkit-touch-callout: none;
1353
+ -webkit-tap-highlight-color: transparent;
1354
+ padding-bottom: 5px;
1355
+ }
1356
+ .heading.style-5 .heading-title:before{
1357
+ position: absolute;
1358
+ -webkit-transition: all 1s ease 0s;
1359
+ -moz-transition: all 1s ease 0s;
1360
+ -ms-transition: all 1s ease 0s;
1361
+ -o-transition: all 1s ease 0s;
1362
+ transition: all 1s ease 0s;
1363
+ content: "";
1364
+ width: 100%;
1365
+ height: 6px;
1366
+ right: 0;
1367
+ bottom: 0;
1368
+ position: absolute;
1369
+ background: #1e73be;
1370
+ }
1371
+ .heading.style-5 .heading-title:focus:after, .heading.style-5 .heading-title:focus:before, .heading.style-5 .heading-title:hover:after, .heading.style-5 .heading-title:hover:before {
1372
+ outline: 0;
1373
+ -webkit-transition: all 1s ease 0s;
1374
+ -moz-transition: all 1s ease 0s;
1375
+ -ms-transition: all 1s ease 0s;
1376
+ -o-transition: all 1s ease 0s;
1377
+ transition: all 1s ease 0s;
1378
+ }
1379
+ .heading.style-5 .heading-title:after {
1380
+ -webkit-transition: all 1s ease 0s;
1381
+ -moz-transition: all 1s ease 0s;
1382
+ -ms-transition: all 1s ease 0s;
1383
+ -o-transition: all 1s ease 0s;
1384
+ transition: all 1s ease 0s;
1385
+ content: "";
1386
+ width: 100%;
1387
+ height: 2px;
1388
+ right: 0;
1389
+ bottom: -4px;
1390
+ position: absolute;
1391
+ background: #1e73be;
1392
+ }
1393
+ /*** style 5 end ***/
1394
+ /*** style 7 ***/
1395
+ .heading.style-7 .sub-style {
1396
+ display:block;
1397
+ position: relative;
1398
+ }
1399
+ .heading.style-7 .sub-heading .heading-sub-title {
1400
+ font-family: montserrat;
1401
+ display:block;
1402
+ font-size:20px;
1403
+ line-height:1.2;
1404
+ color:#252525;
1405
+ margin-top: 5px;
1406
+ margin-bottom: 10px;
1407
+ }
1408
+ .heading.style-7 .sub-heading .heading-sub-title span {
1409
+ font-weight:900;
1410
+ }
1411
+ .heading.style-7 .heading-title {
1412
+ font-family: montserrat;
1413
+ margin-top: 0;
1414
+ margin-bottom: 0;
1415
+ display: block;
1416
+ }
1417
+ .heading.style-7 .heading-title {
1418
+ position: relative;
1419
+ transition: 1000ms;
1420
+ -webkit-transition: 1000ms;
1421
+ -moz-transition: 1000ms;
1422
+ -o-transition: 1000ms;
1423
+ -ms-transition: 1000ms;
1424
+ overflow: hidden;
1425
+ }
1426
+ .heading.style-7 .head-title:after {
1427
+ position: absolute;
1428
+ bottom: -10px;
1429
+ color: red;
1430
+ content: '.';
1431
+ font-size: 60px;
1432
+ width: 60px;
1433
+ margin-left: -30px;
1434
+ pointer-events: none;
1435
+ -webkit-transition: text-shadow 0.3s, color 0.3s;
1436
+ -moz-transition: text-shadow 0.3s, color 0.3s;
1437
+ -o-transition: text-shadow 0.3s, color 0.3s;
1438
+ -ms-transition: text-shadow 0.3s, color 0.3s;
1439
+ transition: text-shadow 0.3s, color 0.3s;
1440
+ text-shadow: 15px 0 red, -15px 0 red;
1441
+ }
1442
+ .heading.style-7 .head-title.text-left:after {
1443
+ left: 10px;
1444
+ -webkit-transform:translateX(0%);
1445
+ -ms-transform:translateX(0%);
1446
+ -moz-transform:translateX(0%);
1447
+ -o-transform: translateX(0%);
1448
+ transform: translateX(0%);
1449
+ }
1450
+ .heading.style-7 .head-title.text-center:after {
1451
+ left: 50%;
1452
+ -webkit-transform:translateX(-50%);
1453
+ -ms-transform:translateX(-50%);
1454
+ -moz-transform:translateX(-50%);
1455
+ -o-transform: translateX(-50%);
1456
+ transform: translateX(-50%);
1457
+ }
1458
+ .heading.style-7 .head-title.text-right:after {
1459
+ right: 5px;
1460
+ -webkit-transform: translateX(-50%);
1461
+ -ms-transform: translateX(-50%);
1462
+ -moz-transform: translateX(-50%);
1463
+ -o-transform: translateX(-50%);
1464
+ transform: translateX(-50%);
1465
+ }
1466
+
1467
+ /***style 7 end ***/
1468
+ /***style 8***/
1469
+ .heading.style-8 .sub-heading {
1470
+ color: #d4d4d4;
1471
+ left: 0;
1472
+ display: block;
1473
+ width: 100%;
1474
+ -webkit-transform: translateY(-50%);
1475
+ -moz-transform: translateY(-50%);
1476
+ -o-transform: translateY(-50%);
1477
+ -ms-transform: translateY(-50%);
1478
+ transform: translateY(-50%);
1479
+ font-size: 70px;
1480
+ line-height: 1.2;
1481
+ position: absolute;
1482
+ }
1483
+ .heading.style-8 .head-title.text-center {
1484
+ left: 0;
1485
+ display: block;
1486
+ width: 100%;
1487
+ z-index: 2;
1488
+ -webkit-transform: translateY(-50%);
1489
+ -moz-transform: translateY(-50%);
1490
+ -o-transform: translateY(-50%);
1491
+ -ms-transform: translateY(-50%);
1492
+ transform: translateY(-50%);
1493
+ font-size: 35px;
1494
+ line-height: 1.2;
1495
+ }
1496
+ .heading.style-8 .heading-sub-title{
1497
+
1498
+ font-size: 100px;
1499
+ font-weight: 900;
1500
+ }
1501
+
1502
+ .heading.style-8:hover .heading-title.text-center {
1503
+ color:#ec2d3a;
1504
+ }
1505
+
1506
+ /**style 8 end***/
1507
+ /***style 9***/
1508
+ .sep-dot {
1509
+ font-size: 50px;
1510
+ line-height: 1px;
1511
+ display: table;
1512
+ position: relative;
1513
+ top: -5px;
1514
+ padding: 0 4px;
1515
+ }
1516
+ /***style 9 end***/
1517
+ /***style 10 ***/
1518
+ .seprator-width {
1519
+ width: 20%;
1520
+ margin: 0 auto;
1521
+ }
1522
+ /***style 10 end ***/
1523
+ /*** style 11 ***/
1524
+ .heading.style-11 .sub-style {
1525
+ display: inline-block;
1526
+ width: auto !important;
1527
+ }
1528
+ .box-left {
1529
+ text-align: left;
1530
+ }
1531
+ .box-center {
1532
+ text-align: center;
1533
+ }
1534
+ .box-right {
1535
+ text-align: right;
1536
+ }
1537
+ .box-left .text-center{
1538
+ text-align: left;
1539
+ }
1540
+ .box-center .text-center{
1541
+ text-align: center;
1542
+ }
1543
+ .box-right .text-center{
1544
+ text-align: right;
1545
+ }
1546
+
1547
+ /*** End style 11 ***/
1548
+ /*----------End Heading Title -----------*/
1549
+ .ts-icon-img {
1550
+ margin-bottom: 10px;
1551
+ }
1552
+ .full-width{
1553
+ width: 100%;
1554
+ position: relative;
1555
+ }
1556
+ .flip-back, .flip-front{
1557
+ width: 100%;
1558
+ height: 100%;
1559
+ position: absolute;
1560
+ left: 0;
1561
+ top: 0;
1562
+ display: table;
1563
+ }
1564
+ .flip-back .vertical-center , .flip-front .vertical-center {
1565
+ display: table-cell;
1566
+ vertical-align: middle;
1567
+ }
1568
+ .flip-horizontal :hover .flip-front {
1569
+ -webkit-transform: rotateY(-180deg);
1570
+ -ms-transform:rotateY(-180deg);
1571
+ -moz-transform:rotateY(-180deg);
1572
+ -o-transform: rotateY(-180deg);
1573
+ transform: rotateY(-180deg);
1574
+ }
1575
+ .flip-horizontal :hover .flip-back {
1576
+ -webkit-transform: rotateY(0);
1577
+ -ms-transform: rotateY(0);
1578
+ -moz-transform: rotateY(0);
1579
+ -o-transform: rotateY(0);
1580
+ transform: rotateY(0);
1581
+ }
1582
+ .flip-horizontal .flip-back {
1583
+ -webkit-transform: rotateY(180deg);
1584
+ -ms-transform:rotateY(180deg);
1585
+ -moz-transform:rotateY(180deg);
1586
+ -o-transform: rotateY(180deg);
1587
+ transform: rotateY(180deg);
1588
+ }
1589
+ .bezier-flip{
1590
+ -webkit-transition: all .5s cubic-bezier(.645,.045,.355,1);
1591
+ -moz-transition: all .5s cubic-bezier(.645,.045,.355,1);
1592
+ -o-transition: all .5s cubic-bezier(.645,.045,.355,1);
1593
+ -ms-transition: all .5s cubic-bezier(.645,.045,.355,1);
1594
+ transition: all .5s cubic-bezier(.645,.045,.355,1);
1595
+ }
1596
+ .padding-flip {
1597
+ padding: 30px 40px;
1598
+ }
1599
+ .origin-center {
1600
+ -webkit-transform-origin: center;
1601
+ -ms-transform-origin: center;
1602
+ -moz-transform-origin: center;
1603
+ -o-transform-origin: center;
1604
+ transform-origin: center;
1605
+ }
1606
+ .no-backface {
1607
+ -webkit-backface-visibility: hidden;
1608
+ backface-visibility: hidden;
1609
+ }
1610
+
1611
+ .numtext-left{
1612
+ text-align: left;
1613
+ }
1614
+ .numtext-center{
1615
+ text-align: center;
1616
+ }
1617
+ .numtext-right{
1618
+ text-align: right;
1619
+ }
1620
+ .icon-right {
1621
+ text-align: right;
1622
+ }
1623
+
1624
+ .icon-left{
1625
+ float: left;
1626
+ }
1627
+ .icon-center{
1628
+ margin: 0 auto;
1629
+ }
1630
+
1631
+
1632
+ .ts-icon{
1633
+ display: block;
1634
+ position: relative;
1635
+ -o-transition: all 1.3s;
1636
+ -webkit-transition: all 1.3s;
1637
+ -moz-transition: all 1.3s;
1638
+ -ms-transition: all 1.3s;
1639
+ transition: all 1.3s;
1640
+ }
1641
+
1642
+ .icon-img-b{
1643
+ line-height:1;
1644
+ margin-bottom: 15px;
1645
+ }
1646
+ .service-media .icon-img-b {
1647
+ margin-right: 15px;
1648
+ }
1649
+ .border-pd {
1650
+ border: 2px solid;
1651
+ }
1652
+ .subject-color{
1653
+ -o-transition: all 1.3s;
1654
+ -webkit-transition: all 1.3s;
1655
+ -ms-transition: all 1.3s;
1656
+ -moz-transition: all 1.3s;
1657
+ transition: all 1.3s;
1658
+ margin-bottom: 20px;
1659
+ line-height:1;
1660
+ }
1661
+ .sub-subject-color {
1662
+ margin-bottom: 20px;
1663
+ line-height:1;
1664
+ }
1665
+ .ts-icon-1{
1666
+ display: block ;
1667
+ vertical-align: middle;
1668
+ text-align: center;
1669
+ overflow:hidden;
1670
+ }
1671
+ .pad-0{
1672
+ padding:0;
1673
+ }
1674
+ .pad-5{
1675
+ padding: 5px;
1676
+ }
1677
+ .pad-30{
1678
+ padding: 30px;
1679
+ padding-bottom:10px;
1680
+ }
1681
+ .border-icon {
1682
+ display: block;
1683
+ position: relative;
1684
+ padding: 30px;
1685
+ padding-bottom:10px;
1686
+ }
1687
+ hr.hr-border {
1688
+ margin-top: 20px;
1689
+ margin-bottom: 20px;
1690
+ border: 0;
1691
+ border-top: 1px solid #eee;
1692
+ }
1693
+ .service-icon-style-1 .icn-txt {
1694
+ display: block;
1695
+ position: relative;
1696
+ width: 100%;
1697
+ overflow: hidden;
1698
+ }
1699
+ .icon-right .ts-icon-1 {
1700
+ text-align: right;
1701
+ }
1702
+ /*-----------style -2 ----------*/
1703
+ .service-icon-style-2 .icn-content {
1704
+ padding: 20px ;
1705
+ display: block;
1706
+ position: relative;
1707
+ background: #F9B701;
1708
+ }
1709
+ .service-icon-style-2 .icn-header {
1710
+ display: block;
1711
+ position: relative;
1712
+ padding: 20px;
1713
+ }
1714
+ .service-icon-style-2 .plus-number-counter ,.service-icon-style-2 .subject-color{
1715
+ margin-bottom: 0;
1716
+ }
1717
+ /*-----------style -2 end----------*/
1718
+ .service-icon-style-3 .pt_plus_animated_svg,.service-icon-style-4 .pt_plus_animated_svg {
1719
+ width: auto;
1720
+ margin-right: 15px;
1721
+ }
1722
+
1723
+ /*----------info box Start -----*/
1724
+ .service-border-box {
1725
+ border: 1px solid;
1726
+ }
1727
+
1728
+ .pt_plus_info_box {
1729
+ display: block;
1730
+ position: relative;
1731
+ width: 100%;
1732
+ -webkit-transition: all 0.25s linear;
1733
+ -moz-transition: all 0.25s linear;
1734
+ -o-transition: all 0.25s linear;
1735
+ -ms-transition: all 0.25s linear;
1736
+ transition: all 0.25s linear;
1737
+ z-index:1;
1738
+ }
1739
+ .pt_plus_info_box.list-carousel-slick{
1740
+ margin-bottom: 50px;
1741
+ }
1742
+ .pt_plus_info_box ul.slick-dots {
1743
+ bottom: -45px;
1744
+ }
1745
+ .pt_plus_info_box .info-box-inner{
1746
+ -webkit-transition: all 0.3s;
1747
+ moz-transition: all 0.3s;
1748
+ -o-transition: all 0.3s;
1749
+ -ms-transition: all 0.3s;
1750
+ transition: all 0.3s;
1751
+ }
1752
+ .info-box-bg-box{
1753
+ overflow : hidden;
1754
+ }
1755
+ .pd-15{
1756
+ padding:15px;
1757
+ }
1758
+ .pt_plus_info_box .pd-0 {
1759
+ padding: 0;
1760
+ }
1761
+ .pt_plus_info_box object {
1762
+ min-height: 100%;
1763
+ }
1764
+ .service-media {
1765
+ display: -webkit-box;
1766
+ display: -webkit-flex;
1767
+ display: -ms-flexbox;
1768
+ display: flex;
1769
+ -webkit-box-align: start;
1770
+ -webkit-align-items: flex-start;
1771
+ -ms-flex-align: start;
1772
+ align-items: flex-start;
1773
+ }
1774
+ .service-content {
1775
+ -webkit-flex: 1 1 0%;
1776
+ -ms-flex: 1 1 0%;
1777
+ flex: 1 1 0%;
1778
+ }
1779
+ .m-r-16{
1780
+ margin-right:16px;
1781
+ }
1782
+ .m-l-16{
1783
+ margin-left:16px;
1784
+ }
1785
+ .service-title{
1786
+ font-size: 18px;
1787
+ margin-bottom: .5rem;
1788
+ font-family: inherit;
1789
+ font-weight: 500;
1790
+ line-height: 1.1;
1791
+
1792
+ }
1793
+ .service-desc {
1794
+ margin-top: 0;
1795
+ }
1796
+ .service-desc p{
1797
+ margin: 0;
1798
+ }
1799
+ .service-button {
1800
+ background: transparent;
1801
+ color: #121212;
1802
+ border: 1px solid;
1803
+ padding: 9px 20px;
1804
+ margin: 10px 0;
1805
+ position: relative;
1806
+ display: inline-block;
1807
+ -moz-border-radius:3px;
1808
+ -webkit-border-radius: 3px;
1809
+ border-radius: 3px;
1810
+ }
1811
+ .vertical-center {
1812
+ align-items: center;
1813
+ }
1814
+ .service-border {
1815
+ border-style: solid;
1816
+ margin-top: 10px;
1817
+ margin-bottom: 5px;
1818
+ }
1819
+ .text-right .service-border {
1820
+ text-align: right;
1821
+ display: inline-block;
1822
+ }
1823
+ .text-center .service-border {
1824
+ text-align: center;
1825
+ margin: 10px auto;
1826
+ }
1827
+ .info-box-inner .service-icon-small {
1828
+ width: 46px;
1829
+ height: 46px;
1830
+ display: inline-block;
1831
+ line-height: 46px !important;
1832
+ text-align: center;
1833
+ font-size: 18px !important;
1834
+ }
1835
+ .info-box-inner .service-icon-medium {
1836
+ width: 74px;
1837
+ height: 74px;
1838
+ display: inline-block;
1839
+ line-height: 72px !important;
1840
+ text-align: center;
1841
+ font-size: 30px !important;
1842
+ }
1843
+ .info-box-inner .service-icon-large {
1844
+ width: 148px;
1845
+ height: 148px;
1846
+ display: inline-block;
1847
+ line-height: 146px !important;
1848
+ text-align: center;
1849
+ font-size: 65px !important;
1850
+ }
1851
+ .info-box-inner .service-icon {
1852
+ font-size: inherit;
1853
+ top: auto;
1854
+ word-spacing: initial;
1855
+ }
1856
+ .info-box-inner .service-icon,.info-box-inner .service-title,.info-box-inner .service-desc,.info-box-inner .service-desc p{
1857
+ -webkit-transition: all 0.3s linear;
1858
+ -moz-transition: all 0.3s linear;
1859
+ -o-transition: all 0.3s linear;
1860
+ -ms-transition: all 0.3s linear;
1861
+ transition: all 0.3s linear;
1862
+ }
1863
+ .info-box-inner .icon-squre{
1864
+ border: 1px solid;
1865
+ border-radius: inherit;
1866
+ }
1867
+ .info-box-inner .icon-rounded{
1868
+ border: 1px solid;
1869
+ -moz-border-radius:50%;
1870
+ -webkit-border-radius: 50%;
1871
+ border-radius: 50%;
1872
+ }
1873
+
1874
+ .plus-flip-box-widget{
1875
+ position:relative;
1876
+ display:block;
1877
+ }
1878
+ .service-flipbox {
1879
+ position: relative;
1880
+ -webkit-perspective: 1000;
1881
+ -ms-perspective: 1000;
1882
+ perspective: 1000;
1883
+ -ms-transform: perspective(1000px);
1884
+ -moz-transform-style: preserve-3d;
1885
+ -ms-transform-style: preserve-3d;
1886
+ }
1887
+ .height-full {
1888
+ height: 100%;
1889
+ }
1890
+ .service-flipbox, .service-flipbox-holder {
1891
+ -moz-transform: perspective(1000px);
1892
+ -ms-transform: perspective(1000px);
1893
+ -webkit-transform: perspective(1000px);
1894
+ -o-transform: perspective(1000px);
1895
+ transform: perspective(1000px);
1896
+ }
1897
+ .bezier-1 {
1898
+ -webkit-transition: all .7s cubic-bezier(.645,.045,.355,1);
1899
+ -moz-transition: all .7s cubic-bezier(.645,.045,.355,1);
1900
+ -o-transition: all .7s cubic-bezier(.645,.045,.355,1);
1901
+ -ms-transition: all .7s cubic-bezier(.645,.045,.355,1);
1902
+ transition: all .7s cubic-bezier(.645,.045,.355,1);
1903
+ }
1904
+ .perspective {
1905
+ -webkit-transform: perspective(1000px);
1906
+ -ms-transform: perspective(1000px);
1907
+ -moz-transform: perspective(1000px);
1908
+ -o-transform: perspective(1000px);
1909
+ transform: perspective(1000px);
1910
+ -webkit-transform-style: preserve-3d;
1911
+ transform-style: preserve-3d;
1912
+ }
1913
+ .flip-horizontal:hover .service-flipbox-front {
1914
+ -webkit-transform: rotateY(-180deg);
1915
+ -ms-transform: rotateY(-180deg);
1916
+ -moz-transform:rotateY(-180deg);
1917
+ -o-transform: rotateY(-180deg);
1918
+ transform: rotateY(-180deg);
1919
+ }
1920
+ .flip-vertical:hover .service-flipbox-front {
1921
+ -webkit-transform: rotateX(-180deg);
1922
+ -ms-transform:rotateX(-180deg);
1923
+ -moz-transform:rotateX(-180deg);
1924
+ -o-transform: rotateX(-180deg);
1925
+ transform: rotateX(-180deg);
1926
+ }
1927
+ .service-flipbox-back, .service-flipbox-front {
1928
+ -webkit-transform-style: preserve-3d;
1929
+ transform-style: preserve-3d;
1930
+ }
1931
+ .service-flipbox-front {
1932
+ position: absolute;
1933
+ z-index: 2;
1934
+ }
1935
+ .service-flipbox-back, .service-flipbox-front {
1936
+ width: 100%;
1937
+ height: 100%;
1938
+ left: 0;
1939
+ top: 0;
1940
+ display: table;
1941
+ }
1942
+ .origin-center {
1943
+ -webkit-transform-origin: center;
1944
+ -ms-transform-origin: center;
1945
+ -moz-transform-origin: center;
1946
+ -o-transform-origin: center;
1947
+ transform-origin: center;
1948
+ }
1949
+ .no-backface {
1950
+ -webkit-backface-visibility: hidden;
1951
+ backface-visibility: hidden;
1952
+ }
1953
+ .service-flipbox-content {
1954
+ display: table-cell;
1955
+ vertical-align: middle;
1956
+ -webkit-transform-style: preserve-3d;
1957
+ transform-style: preserve-3d;
1958
+ -webkit-perspective: 1000px;
1959
+ perspective: 1000px;
1960
+ -webkit-backface-visibility: hidden;
1961
+ backface-visibility: hidden;
1962
+ -webkit-transform: translateZ(35px) scale(0.81);
1963
+ transform: translateZ(35px) scale(0.81);
1964
+ }
1965
+ .width-full {
1966
+ width: 100%;
1967
+ }
1968
+ .flip-horizontal:hover .service-flipbox-back {
1969
+ -webkit-transform: rotateY(0);
1970
+ -ms-transform:rotateY(0);
1971
+ -moz-transform:rotateY(0);
1972
+ -o-transform: rotateY(0);
1973
+ transform: rotateY(0);
1974
+ }
1975
+ .flip-vertical:hover .service-flipbox-back {
1976
+ -webkit-transform: rotateX(0);
1977
+ -ms-transform: rotateX(0);
1978
+ -moz-transform: rotateX(0);
1979
+ -o-transform: rotateX(0);
1980
+ transform: rotateX(0);
1981
+ }
1982
+ .flip-horizontal .service-flipbox-back {
1983
+ -webkit-transform: rotateY(180deg);
1984
+ -ms-transform: rotateY(180deg);
1985
+ -moz-transform: rotateY(180deg);
1986
+ -o-transform: rotateY(180deg);
1987
+ transform: rotateY(180deg);
1988
+ }
1989
+ .flip-vertical .service-flipbox-back {
1990
+ -webkit-transform: rotateX(180deg);
1991
+ -ms-transform:rotateX(180deg);
1992
+ -moz-transform:rotateX(180deg);
1993
+ -o-transform: rotateX(180deg);
1994
+ transform: rotateX(180deg);
1995
+ }
1996
+ .service-flipbox-back {
1997
+ position: absolute;
1998
+ -webkit-backface-visibility: hidden;
1999
+ backface-visibility: hidden;
2000
+ }
2001
+ .fold-back-horizontal {
2002
+ -webkit-transform: translateX(-100%) rotateY(-180deg);
2003
+ -ms-transform:translateX(-100%) rotateY(-180deg);
2004
+ -moz-transform:translateX(-100%) rotateY(-180deg);
2005
+ -o-transform: translateX(-100%) rotateY(-180deg);
2006
+ transform: translateX(-100%) rotateY(-180deg);
2007
+ }
2008
+ .pt_plus_info_box.remove-padding {
2009
+ padding-left: 0 !important;
2010
+ padding-right:0 !important;
2011
+ }
2012
+ .pt_plus_info_box .about-post .about-post-content {
2013
+ background: #fff;
2014
+ padding: 0 20px 30px;
2015
+ position: relative;
2016
+ z-index: 2;
2017
+ transition: all 0.2s ease-in-out;
2018
+ -moz-transition: all 0.2s ease-in-out;
2019
+ -webkit-transition: all 0.2s ease-in-out;
2020
+ -o-transition: all 0.2s ease-in-out;
2021
+ -ms-transition: all 0.2s ease-in-out;
2022
+ }
2023
+ .pt_plus_info_box .about-post .about-post-content .icon-middle {
2024
+ display: inline-block;
2025
+ text-decoration: none;
2026
+ transition: all 0.2s ease-in-out;
2027
+ -moz-transition: all 0.2s ease-in-out;
2028
+ -webkit-transition: all 0.2s ease-in-out;
2029
+ -o-transition: all 0.2s ease-in-out;
2030
+ -ms-transition: all 0.2s ease-in-out;
2031
+ width: 100px;
2032
+ height: 100px;
2033
+ line-height: 100px;
2034
+ top: -50%;
2035
+ -webkit-transform: translateY(-50%);
2036
+ -moz-transform: translateY(-50%);
2037
+ -ms-transform: translateY(-50%);
2038
+ -o-transform: translateY(-50%);
2039
+ transform: translateY(-50%);
2040
+ }
2041
+ .pt_plus_info_box .about-post .about-post-content .demo.icon-rounded {
2042
+ border-radius: 50%;
2043
+ -webkit-border-radius: 50%;
2044
+ -moz-border-radius: 50%;
2045
+ -o-border-radius: 50%;
2046
+ border-radius: 50%;
2047
+ }
2048
+
2049
+ .pt_plus_info_box .about-post:before {
2050
+ content: '';
2051
+ position: absolute;
2052
+ top: 0;
2053
+ left: 0;
2054
+ width: 100%;
2055
+ height: 100%;
2056
+ opacity: 0;
2057
+ transition: all 0.2s ease-in-out;
2058
+ -moz-transition: all 0.2s ease-in-out;
2059
+ -webkit-transition: all 0.2s ease-in-out;
2060
+ -o-transition: all 0.2s ease-in-out;
2061
+ -ms-transition: all 0.2s ease-in-out;
2062
+ }
2063
+ .pt_plus_info_box .about-post:hover:before {
2064
+ opacity: 0.85;
2065
+ }
2066
+ .pt_plus_info_box .about-post:hover .about-post-content a {
2067
+ background: #1cbac8;
2068
+ color: #fff;
2069
+ }
2070
+ .pt_plus_info_box .about-post .hover-about {
2071
+ position: absolute;
2072
+ top: 50%;
2073
+ width: 100%;
2074
+ left: 0;
2075
+ height: 100%;
2076
+ padding: 0 30px;
2077
+ padding-top: 80px;
2078
+ background: transparent;
2079
+ text-align: center;
2080
+ -moz-transition: all 0.2s ease-in-out;
2081
+ -webkit-transition: all 0.2s ease-in-out;
2082
+ -o-transition: all 0.2s ease-in-out;
2083
+ -ms-transition: all 0.2s ease-in-out;
2084
+ transition: all 0.2s ease-in-out;
2085
+ }
2086
+ .pt_plus_info_box .about-post:hover .about-post-content {
2087
+ background: transparent;
2088
+ }
2089
+ .pt_plus_info_box.info-box-style_1 .info-box-inner .service-title,.pt_plus_info_box.info-box-style_5 .info-box-inner .service-title{
2090
+ margin-top: 0;
2091
+ }
2092
+ .pt_plus_info_box .about-post:hover .service-title {
2093
+ opacity: 0;
2094
+ }
2095
+ .pt_plus_info_box .about-post:hover p {
2096
+ opacity: 1;
2097
+ }
2098
+ .pt_plus_info_box .about-post:hover .service-border {
2099
+ opacity: 0;
2100
+ }
2101
+ .pt_plus_info_box .about-post:hover .about-post-content {
2102
+ background: transparent !important;
2103
+ }
2104
+ .pt_plus_info_box .about-post:hover .hover-about {
2105
+ top: 0;
2106
+ padding-top: 100px;
2107
+ }
2108
+ .action.arrow-next.expandable {
2109
+ width: 100%;
2110
+ height: 40px;
2111
+ position: relative;
2112
+ margin-top: 40px;
2113
+ }
2114
+ .action.arrow-next:before {
2115
+ content: attr(data-label);
2116
+ font-size: 14px;
2117
+ font-weight: 400;
2118
+ display: block;
2119
+ position: absolute;
2120
+ left: 0;
2121
+ color: currentColor;
2122
+ opacity: 0;
2123
+ }
2124
+ .action.arrow-next.expandable:after {
2125
+ content: "";
2126
+ position: absolute;
2127
+ top: 0;
2128
+ left: 0;
2129
+ width: 100%;
2130
+ height: 1px;
2131
+ background: currentColor;
2132
+ -webkit-transform: scaleX(0);
2133
+ -moz-transform: scaleX(0);
2134
+ -ms-transform: scaleX(0);
2135
+ -o-transform: scaleX(0);
2136
+ transform: scaleX(0);
2137
+ transform-origin: 10px 50%;
2138
+ -moz-transform-origin:10px 50%;
2139
+ -ms-transform-origin:10px 50%;
2140
+ -o-transform-origin:10px 50%;
2141
+ -webkit-transform-origin: 10px 50%;
2142
+ }
2143
+
2144
+ .pt_plus_info_box .info-tag-title{
2145
+ display: inline-block;
2146
+ border: 1px solid;
2147
+ padding: 6px 10px;
2148
+ margin: 0;
2149
+ border-radius: 5px;
2150
+ -webkit-border-radius: 5px;
2151
+ -moz-border-radius: 5px;
2152
+ }
2153
+ .pt_plus_info_box .info-box-tag {
2154
+ display: block;
2155
+ position: relative;
2156
+ margin-bottom: 40px;
2157
+ }
2158
+ .pt_plus_info_box .info-box-all{
2159
+ position : relative ;
2160
+ z-index: 5 ;
2161
+ }
2162
+ .pt_plus_info_box .info-box-bg-box{
2163
+ transition: 0.4s;
2164
+ -webkit-transition: 0.4s;
2165
+ -moz-transition: 0.4s;
2166
+ -o-transition: 0.4s;
2167
+ -ms-transition: 0.4s;
2168
+
2169
+ }
2170
+ .pt_plus_info_box .ts-button {
2171
+ margin-top: 15px;
2172
+ }
2173
+ /*--- info box End--- */
2174
+ /*-------pop up lity---*/
2175
+ .lity-wrap {
2176
+ overflow: auto !important;
2177
+ }
2178
+ .pop-up-btn .button-link-wrap span {
2179
+ position: relative;
2180
+ z-index: 2;
2181
+ }
2182
+ .pop-up-btn .button-style-7 .button-link-wrap span {
2183
+ position: initial;
2184
+ }
2185
+ .pop-up-btn .button-style-21 .button-link-wrap:after {
2186
+ background: #ff004b;
2187
+ z-index: 1;
2188
+ }
2189
+ /*pop up lity -*/
2190
+
2191
+ /*------ social element----------*/
2192
+ .pt_plus_social_list {
2193
+ position: relative;
2194
+ display: block;
2195
+ padding: 0;
2196
+ }
2197
+ .pt_plus_social_list ul.social_list {
2198
+ display: inline-block;
2199
+ padding: 0;
2200
+ margin: 0;
2201
+ position: relative;
2202
+ list-style: none;
2203
+ }
2204
+ .pt_plus_social_list ul.social_list li {
2205
+ position: relative;
2206
+ font-size: 20px;
2207
+ text-align: center;
2208
+ display: inline-block;
2209
+ width: auto;
2210
+ height: auto;
2211
+ line-height: unset;
2212
+ top: auto;
2213
+ }
2214
+ .pt_plus_social_list ul.social_list li .social-loop-inner {
2215
+ position: relative;
2216
+ overflow:hidden;
2217
+ }
2218
+ .pt_plus_social_list ul.social_list li a {
2219
+ font-size: 20px;
2220
+ color: #28262b;
2221
+ text-align: center;
2222
+ width: 2.5em;
2223
+ height: 2.5em;
2224
+ line-height: 2.5em;
2225
+ display: block;
2226
+ margin-right: 10px;
2227
+ }
2228
+ .pt_plus_social_list.text-center ul.social_list{
2229
+ -webkit-justify-content: center;
2230
+ -moz-justify-content: center;
2231
+ -ms-justify-content: center;
2232
+ justify-content: center;
2233
+ }
2234
+ .pt_plus_social_list.text-left ul.social_list{
2235
+ -webkit-justify-content: flex-start;
2236
+ -moz-justify-content: flex-start;
2237
+ -ms-justify-content: flex-start;
2238
+ justify-content: flex-start;
2239
+ }
2240
+ .pt_plus_social_list.text-right ul.social_list {
2241
+ -webkit-justify-content: flex-end;
2242
+ -moz-justify-content: flex-end;
2243
+ -ms-justify-content: flex-end;
2244
+ justify-content: flex-end;
2245
+ }
2246
+ /*----------style 2------------*/
2247
+ .pt_plus_social_list.style-2 ul.social_list{
2248
+ display: -webkit-box;
2249
+ display: -moz-box;
2250
+ display: -ms-flexbox;
2251
+ display: -webkit-flex;
2252
+ display: flex;
2253
+ flex-wrap: wrap;
2254
+ }
2255
+ .pt_plus_social_list.style-2 li {
2256
+ display: table-cell;
2257
+ float:none;
2258
+ }
2259
+ .pt_plus_social_list.style-2 ul.social_list li a {
2260
+ padding:15px 30px;
2261
+ width: 100%;
2262
+ height: 100%;
2263
+ line-height: 1;
2264
+ color: #494949;
2265
+ margin-right: 0;
2266
+ border-right: 1px solid #404040;
2267
+ display: -webkit-flex;
2268
+ display: -ms-flexbox;
2269
+ display: flex;
2270
+ -webkit-align-items: center;
2271
+ -ms-flex-align: center;
2272
+ align-items: center;
2273
+ }
2274
+ .pt_plus_social_list.style-2 ul.social_list li:hover a {
2275
+ color:#000;
2276
+ }
2277
+ .pt_plus_social_list.style-2 ul.social_list li a i.fa {
2278
+ padding-right: 10px;
2279
+ }
2280
+ .pt_plus_social_list.style-2 ul.social_list li:last-child a{
2281
+ border-right: 0;
2282
+ }
2283
+ /*----------style 2------------*/
2284
+ /*--------style custom ---------*/
2285
+ .pt_plus_social_list.custom ul.social_list {
2286
+ display: -webkit-box;
2287
+ display: -moz-box;
2288
+ display: -ms-flexbox;
2289
+ display: -webkit-flex;
2290
+ display: flex;
2291
+ flex-wrap: wrap;
2292
+ }
2293
+ .pt_plus_social_list.custom ul.social_list li{
2294
+ margin: 0 5px;
2295
+ }
2296
+ .pt_plus_social_list.custom ul.social_list li a > span {
2297
+ display: none;
2298
+ }
2299
+ .pt_plus_social_list.custom ul.social_list li .social-loop-inner{
2300
+ overflow:visible;
2301
+ }
2302
+ .pt_plus_social_list.custom ul.social_list li a {
2303
+ width: 60px;
2304
+ height: 40px;
2305
+ line-height: initial;
2306
+ border-radius: 3px;
2307
+ text-align: center;
2308
+ display: -webkit-inline-flex;
2309
+ display: -ms-inline-flexbox;
2310
+ display: inline-flex;
2311
+ -webkit-justify-content: center;
2312
+ -ms-flex-pack: center;
2313
+ justify-content: center;
2314
+ -webkit-box-orient: vertical;
2315
+ -webkit-align-items: center;
2316
+ -ms-align-items: center;
2317
+ align-items: center;
2318
+ margin:0;
2319
+ }
2320
+ /*--------style custom ---------*/
2321
+ .pt_plus_social_list ul.social_list li:last-child a ,.pt_plus_social_list.style-9 ul.social_list li:last-child ,.pt_plus_social_list.style-10 ul.social_list li:last-child ,.pt_plus_social_list.style-11 ul.social_list li:last-child ,.pt_plus_social_list.style-12 ul.social_list li:last-child {
2322
+ margin-right: 0;
2323
+ }
2324
+ /*------ social element----------*/
2325
+
2326
+ /*----post blog section style---------*/
2327
+ #pt-plus-blog-post-list {
2328
+ position: relative;
2329
+ display: block;
2330
+ width: 100%;
2331
+ }
2332
+ .blog-list .post-inner-loop .grid-item .post.sticky .post-title a {
2333
+ color: #ff214f;
2334
+ }
2335
+ .blog-list .grid-item {
2336
+ padding: 0 15px;
2337
+ }
2338
+
2339
+ .blog-list .blog-list-style-content {
2340
+ position: relative;
2341
+ display: block;
2342
+ height: 100%;
2343
+ overflow:hidden;
2344
+ }
2345
+
2346
+ .post-meta-info {
2347
+ text-transform: capitalize;
2348
+ font-size: 11px;
2349
+ font-style: normal;
2350
+ font-weight: 400;
2351
+ line-height: 15px;
2352
+ letter-spacing: 0px;
2353
+ color: #777;
2354
+ }
2355
+ .post-meta-info .post-author a {
2356
+ text-transform: uppercase;
2357
+ }
2358
+ .post-meta-info a {
2359
+ color: #777;
2360
+ }
2361
+ .blog-list-style-content .entry-content p{
2362
+ margin-bottom:0;
2363
+ }
2364
+ .blog-list .entry-date,.blog-list .post-author {
2365
+ padding-right: 5px;
2366
+ }
2367
+
2368
+ hr.border-bottom {
2369
+ margin: 12px 0;
2370
+ border-top: 1px solid #d3d3d3;
2371
+ }
2372
+ .pt-theplus-post-read-more-button{
2373
+ position: relative;
2374
+ display: inline-block;
2375
+ width: 100%;
2376
+ overflow: hidden;
2377
+ margin-top: 10px;
2378
+ margin-bottom: 10px;
2379
+ }
2380
+
2381
+ .read-more-btn {
2382
+ position: relative;
2383
+ display: inline-block;
2384
+ border: 1px solid #d3d3d3;
2385
+ padding: 10px 20px;
2386
+ color: #888888;
2387
+ font-weight: 800;
2388
+ }
2389
+ .post-format-gallery{
2390
+ position: relative;
2391
+ width: 100%;
2392
+ margin-bottom: 0 !important;
2393
+ }
2394
+
2395
+ .blog-list .grid-item .blog-list-style-content{
2396
+ -webkit-transition: all 0.5s;
2397
+ -moz-transition: all 0.5s;
2398
+ transition: all 0.5s;
2399
+ -o-transition: all 0.5s;
2400
+ -ms-transition: all 0.5s;
2401
+ }
2402
+ .grid-item:focus {
2403
+ outline: none;
2404
+ }
2405
+ /*----post blog section style---------*/
2406
+ /*---slick carousel style-1-------*/
2407
+ .list-carousel-slick .slick-slide.slick-current.slick-active.slick-center {
2408
+ position: relative;
2409
+ z-index: 1;
2410
+ }
2411
+ .list-carousel-slick .post-inner-loop{
2412
+ overflow:visible;
2413
+ }
2414
+ .list-carousel-slick .post-inner-loop .slick-list.draggable {
2415
+ position: relative;
2416
+ display: block;
2417
+ cursor: all-scroll;
2418
+ -moz-box-sizing: border-box;
2419
+ box-sizing: border-box;
2420
+ -webkit-user-select: none;
2421
+ -moz-user-select: none;
2422
+ -ms-user-select: none;
2423
+ user-select: none;
2424
+ -webkit-touch-callout: none;
2425
+ -khtml-user-select: none;
2426
+ -ms-touch-action: pan-y;
2427
+ touch-action: pan-y;
2428
+ }
2429
+ .list-carousel-slick[data-slider_rows="2"] .slick-slide > div, .list-carousel-slick[data-slider_rows="3"] .slick-slide > div {
2430
+ position: relative;
2431
+ display: -webkit-box;
2432
+ display: -webkit-flex;
2433
+ display: -ms-flexbox;
2434
+ display: flex;
2435
+ width: 100%;
2436
+ }
2437
+ .list-carousel-slick .grid-item{
2438
+ padding: 0;
2439
+ }
2440
+ ul.slick-dots.style-1 li button:before{
2441
+ display: none;
2442
+ }
2443
+ .slick-dots.style-1 li button:before{
2444
+ content:'';
2445
+ width: 0;
2446
+ height: 0;
2447
+ }
2448
+ .slick-dots.style-1 li{
2449
+ margin: 0 6px;
2450
+ width: 10px;
2451
+ height: 10px;
2452
+ }
2453
+
2454
+ /*---slick carousel style-1*/
2455
+ .slick-dots.style-1 li button{
2456
+ top: 0;
2457
+ left: 0;
2458
+ width: 100%;
2459
+ height: 100%;
2460
+ outline: none;
2461
+ -moz-border-radius:50%;
2462
+ -webkit-border-radius:50%;
2463
+ border-radius: 50%;
2464
+ text-indent: -999em;
2465
+ cursor: pointer;
2466
+ position: absolute;
2467
+ -webkit-box-shadow: inset 0 0 0 8px rgba(196, 77, 72, 0.42);
2468
+ box-shadow: inset 0 0 0 8px rgba(196, 77, 72, 0.42);
2469
+ -webkit-transition: box-shadow 0.3s ease;
2470
+ -moz-transition: box-shadow 0.3s ease;
2471
+ -o-transition:box-shadow 0.3s ease;
2472
+ -ms-transition:box-shadow 0.3s ease;
2473
+ transition: box-shadow 0.3s ease;
2474
+ }
2475
+
2476
+ .slick-dots.style-1 li button:hover,
2477
+ .slick-dots.style-1 li button:focus {
2478
+ -moz-box-shadow:inset 0 0 0 8px #c44d48;
2479
+ -webkit-box-shadow:inset 0 0 0 8px #c44d48;
2480
+ box-shadow: inset 0 0 0 8px #c44d48;
2481
+ }
2482
+
2483
+ .slick-dots.style-1 li.slick-active button{
2484
+ -moz-box-shadow: inset 0 0 0 1px #c44d48;
2485
+ -webkit-box-shadow: inset 0 0 0 1px #c44d48;
2486
+ box-shadow: inset 0 0 0 1px #c44d48;
2487
+ }
2488
+ /*---slick carousel style-1*/
2489
+
2490
+ .list-carousel-slick .slick-slider.slick-dotted {
2491
+ margin-bottom: 30px;
2492
+ }
2493
+ .list-carousel-slick .slick-slider.slick-dotted {
2494
+ padding-bottom: 20px;
2495
+ }
2496
+
2497
+ /*---slick carousel arrow style-2*/
2498
+ .slick-prev.style-2,.slick-next.style-2{
2499
+ margin: 0 10px;
2500
+ width: 50px;
2501
+ height: 50px;
2502
+ }
2503
+ .slick-prev.style-2 .icon-wrap:before,.slick-prev.style-2 .icon-wrap:after,.slick-next.style-2 .icon-wrap:before,.slick-next.style-2 .icon-wrap:after {
2504
+ content: '';
2505
+ position: absolute;
2506
+ left: 25%;
2507
+ width: 3px;
2508
+ height: 50%;
2509
+ background: #fff;
2510
+ content: '';
2511
+ -webkit-transition: -webkit-transform 0.3s, background 0.3s;
2512
+ -moz-transition: -webkit-transform 0.3s, background 0.3s;
2513
+ -o-transition: -webkit-transform 0.3s, background 0.3s;
2514
+ -ms-transition: -webkit-transform 0.3s, background 0.3s;
2515
+ transition: transform 0.3s, background 0.3s;
2516
+ -webkit-backface-visibility: hidden;
2517
+ backface-visibility: hidden;
2518
+
2519
+ }
2520
+ .slick-prev.style-2 .icon-wrap,.slick-next.style-2 .icon-wrap{
2521
+ position: relative;
2522
+ display: block;
2523
+ margin: 0% 0 0 10%;
2524
+ width: 80%;
2525
+ height: 80%;
2526
+ }
2527
+ .slick-prev.style-2 .icon-wrap::before,.slick-next.style-2 .icon-wrap::before {
2528
+ -webkit-transform: translateX(-50%) rotate(30deg);
2529
+ -ms-transform: translateX(-50%) rotate(30deg);
2530
+ -moz-transform: translateX(-50%) rotate(30deg);
2531
+ -o-transform: translateX(-50%) rotate(30deg);
2532
+ transform: translateX(-50%) rotate(30deg);
2533
+ -webkit-transform-origin: 0 100%;
2534
+ -moz-transform-origin:0 100%;
2535
+ -ms-transform-origin:0 100%;
2536
+ -o-transform-origin:0 100%;
2537
+ transform-origin: 0 100%;
2538
+ }
2539
+ .slick-prev.style-2:hover .icon-wrap::before,.slick-next.style-2:hover .icon-wrap::before {
2540
+ -webkit-transform: translateX(-50%) rotate(45deg);
2541
+ -ms-transform: translateX(-50%) rotate(45deg);
2542
+ -moz-transform: translateX(-50%) rotate(45deg);
2543
+ -o-transform: translateX(-50%) rotate(45deg);
2544
+ transform: translateX(-50%) rotate(45deg);
2545
+ }
2546
+ .slick-prev.style-2 .icon-wrap::after,.slick-next.style-2 .icon-wrap::after{
2547
+ top: 50%;
2548
+ -webkit-transform: translateX(-50%) rotate(-30deg);
2549
+ -ms-transform: translateX(-50%) rotate(-30deg);
2550
+ -moz-transform: translateX(-50%) rotate(-30deg);
2551
+ -o-transform: translateX(-50%) rotate(-30deg);
2552
+ transform: translateX(-50%) rotate(-30deg);
2553
+ -webkit-transform-origin: 0 0;
2554
+ -moz-transform-origin: 0 0;
2555
+ -ms-transform-origin: 0 0;
2556
+ -o-transform-origin: 0 0;
2557
+ transform-origin: 0 0;
2558
+ }
2559
+ .slick-prev.style-2:hover .icon-wrap::after ,.slick-next.style-2:hover .icon-wrap::after{
2560
+ -webkit-transform: translateX(-50%) rotate(-45deg);
2561
+ -ms-transform: translateX(-50%) rotate(-45deg);
2562
+ -moz-transform: translateX(-50%) rotate(-45deg);
2563
+ -o-transform: translateX(-50%) rotate(-45deg);
2564
+ transform: translateX(-50%) rotate(-45deg);
2565
+ }
2566
+ .slick-prev.style-2:before ,.slick-next.style-2:before {
2567
+ position: absolute;
2568
+ top: 0;
2569
+ left: 0;
2570
+ width: 100%;
2571
+ height: 100%;
2572
+ -moz-border-radius: 50%;
2573
+ -webkit-border-radius: 50%;
2574
+ border-radius: 50%;
2575
+ background: transparent;
2576
+ content: '';
2577
+ opacity: 1;
2578
+ -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
2579
+ -moz-transition: -webkit-transform 0.3s, opacity 0.3s;
2580
+ -o-transition: -webkit-transform 0.3s, opacity 0.3s;
2581
+ -ms-transition: -webkit-transform 0.3s, opacity 0.3s;
2582
+ transition: transform 0.3s, opacity 0.3s;
2583
+ -webkit-transform: scale(0.9);
2584
+ -moz-transform: scale(0.9);
2585
+ -ms-transform: scale(0.9);
2586
+ -o-transform: scale(0.9);
2587
+ transform: scale(0.9);
2588
+ text-shadow: 0px 0px transparent !important;
2589
+ }
2590
+ .slick-prev.style-2:hover::before,.slick-next.style-2:hover::before {
2591
+ opacity: 1;
2592
+ -webkit-transform: scale(1);
2593
+ -moz-transform: scale(1);
2594
+ -ms-transform: scale(1);
2595
+ -o-transform: scale(1);
2596
+ transform: scale(1);
2597
+ }
2598
+ .slick-prev.style-2:hover .icon-wrap::before,.slick-prev.style-2:hover .icon-wrap::after,.slick-next.style-2:hover .icon-wrap::before,.slick-next.style-2:hover .icon-wrap::after{
2599
+ background: #cc6055;
2600
+ }
2601
+ .slick-next.style-2 .icon-wrap {
2602
+ -webkit-transform: rotate(180deg);
2603
+ -moz-transform: rotate(180deg);
2604
+ -ms-transform: rotate(180deg);
2605
+ -o-transform: rotate(180deg);
2606
+ transform: rotate(180deg);
2607
+ }
2608
+ /*---slick carousel arrow style-2*/
2609
+
2610
+ /*---- number counter ----*/
2611
+ .plus-number-counter {
2612
+ position: relative;
2613
+ display: block;
2614
+ width: 100%;
2615
+ }
2616
+ .plus-number-counter .number-counter-inner-block {
2617
+ position: relative;
2618
+ display: block;
2619
+ width: 100%;
2620
+ -webkit-transition: all .3s ease;
2621
+ -moz-transition: all .3s ease;
2622
+ -o-transition:all .3s ease;
2623
+ -ms-transition:all .3s ease;
2624
+ transition: all .3s ease;
2625
+ }
2626
+ .plus-number-counter .counter-icon-inner {
2627
+ display: inline-block;
2628
+ position: relative;
2629
+ margin-bottom: 15px;
2630
+ width: 60px;
2631
+ height: 60px;
2632
+ line-height: 60px;
2633
+ vertical-align: middle;
2634
+ text-align: center;
2635
+ -webkit-transition: all .3s ease;
2636
+ -moz-transition: all .3s ease;
2637
+ -o-transition:all .3s ease;
2638
+ -ms-transition:all .3s ease;
2639
+ transition: all .3s ease;
2640
+ }
2641
+ .plus-number-counter .counter-image-inner{
2642
+ display: inline-block;
2643
+ position: relative;
2644
+ margin-bottom: 15px;
2645
+ max-width: 100px;
2646
+ vertical-align: middle;
2647
+ -webkit-transition: all .3s ease;
2648
+ -moz-transition: all .3s ease;
2649
+ -o-transition:all .3s ease;
2650
+ -ms-transition:all .3s ease;
2651
+ transition: all .3s ease;
2652
+ }
2653
+ .plus-number-counter .counter-icon-inner .counter-icon {
2654
+ font-size: 30px;
2655
+ line-height: inherit !important;
2656
+ display: inline-block;
2657
+ color: #222;
2658
+ -webkit-transition: all .3s ease;
2659
+ -moz-transition: all .3s ease;
2660
+ -o-transition:all .3s ease;
2661
+ -ms-transition:all .3s ease;
2662
+ transition: all .3s ease;
2663
+ }
2664
+ .plus-number-counter .number-counter-inner-block .counter-title,.plus-number-counter .number-counter-inner-block .counter-title a{
2665
+ display:inline-block;
2666
+ font-size: 20px;
2667
+ line-height: 25px;
2668
+ margin-top: 0;
2669
+ margin-bottom: 5px;
2670
+ color: #333;
2671
+ -webkit-transition: all .3s ease;
2672
+ -moz-transition: all .3s ease;
2673
+ -o-transition:all .3s ease;
2674
+ -ms-transition:all .3s ease;
2675
+ transition: all .3s ease;
2676
+ }
2677
+ .plus-number-counter .number-counter-inner-block .counter-number {
2678
+ -o-transition:all .3s ease;
2679
+ -webkit-transition: all .3s ease;
2680
+ -moz-transition: all .3s ease;
2681
+ -ms-transition: all .3s ease;
2682
+ transition: all .3s ease;
2683
+ margin-bottom: 15px;
2684
+ margin-top: 0;
2685
+ margin-bottom: 10px;
2686
+ }
2687
+ .counter-icon-inner.shape-icon-square {
2688
+ border: 1px solid;
2689
+ border-radius: 2px;
2690
+ }
2691
+ .counter-icon-inner.shape-icon-rounded {
2692
+ border: 1px solid;
2693
+ border-radius: 50%;
2694
+ }
2695
+ .plus-number-counter .counter-icon-inner.shape-icon-square-rotate .counter-icon {
2696
+ color: #fff;
2697
+ }
2698
+ /*---- number counter ----*/
2699
+
2700
+ @media (min-width:601px) and (max-width:1024px){
2701
+ .text--tabletleft {
2702
+ text-align: left !important;
2703
+ margin-left: 0 !important;
2704
+ }
2705
+ .text--tabletcenter {
2706
+ text-align: center !important;
2707
+ margin: 0 auto !important;
2708
+ }
2709
+ .text--tabletright {
2710
+ text-align: right !important;
2711
+ margin-right: 0 !important;
2712
+ }
2713
+ .text--tabletjustify {
2714
+ text-align: justify !important;
2715
+ }
2716
+ .elementor-widget-tp-heading-title.text--tabletleft .seprator.sep-l,.elementor-widget-tp-heading-title.text--tabletjustify .seprator.sep-l{
2717
+ margin-left:0;
2718
+ }
2719
+ .elementor-widget-tp-heading-title.text--tabletcenter .seprator.sep-l{
2720
+ margin:0 auto;
2721
+ }
2722
+ .elementor-widget-tp-heading-title.text--tabletright .seprator.sep-l{
2723
+ margin-right:0;
2724
+ }
2725
+ }
2726
+ @media (max-width:600px){
2727
+ .text--mobileleft {
2728
+ text-align: left !important;
2729
+ margin-left: 0 !important;
2730
+ }
2731
+ .text--mobilecenter {
2732
+ text-align: center !important;
2733
+ margin: 0 auto !important;
2734
+ }
2735
+ .text--mobileright {
2736
+ text-align: right !important;
2737
+ margin-right: 0 !important;
2738
+ }
2739
+ .text--mobilejustify {
2740
+ text-align: justify !important;
2741
+ }
2742
+ .elementor-widget-tp-heading-title.text--mobileleft .seprator.sep-l,.elementor-widget-tp-heading-title.text--mobilejustify .seprator.sep-l{
2743
+ margin-left:0;
2744
+ }
2745
+ .elementor-widget-tp-heading-title.text--mobilecenter .seprator.sep-l{
2746
+ margin:0 auto;
2747
+ }
2748
+ .elementor-widget-tp-heading-title.text--mobileright .seprator.sep-l{
2749
+ margin-right:0;
2750
+ }
2751
+ }
2752
+ @media (min-width:991px){
2753
+ .hide-desktop{
2754
+ display:none;
2755
+ }
2756
+ }
2757
+ @media (min-width:601px) and (max-width:990px){
2758
+ .hide-tablet{
2759
+ display:none;
2760
+ }
2761
+ }
2762
+ @media (max-width:600px){
2763
+ .hide-mobile{
2764
+ display:none;
2765
+ }
2766
+ }
2767
+ @media (max-width:767px){
2768
+ .list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item {
2769
+ width: 33.33% !important;
2770
+ height: 250px !important;
2771
+ }
2772
+ ul.pt_plus_countdown li{
2773
+ margin: 0px 10px 20px;
2774
+ }
2775
+ .service-flipbox,.service-flipbox-holder{cursor:pointer;}
2776
+ }
2777
+ @media (max-width:660px){
2778
+ .list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item {
2779
+ width: 50% !important;
2780
+ height: 300px !important;
2781
+ }
2782
+ #wpadminbar {
2783
+ position: fixed;
2784
+ }
2785
+ }
2786
+ @media (max-width:480px){
2787
+ .list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item {
2788
+ width: 100% !important;
2789
+ height: 420px !important;
2790
+ }
2791
+ }
2792
+ @media (max-width:375px){
2793
+ .list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item {
2794
+ height: 300px !important;
2795
+ }
2796
+ }
assets/css/main/theplus_style_min.css ADDED
@@ -0,0 +1 @@
 
1
+ .text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}object#svg_main_logo{margin:0}.animate-general{opacity:0}h3.theplus-posts-not-found{font-size:14px;background:#8072fc;padding:10px;text-align:center;line-height:25px;border-radius:3px;box-shadow:0 5px 30px -5px #8072fc;color:#fff}.theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1{display:block;width:100%;position:relative}.theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 input[type="radio"]{display:none}.theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 span.wpcf7-list-item{position:relative;vertical-align:middle;overflow:hidden}.theplus-contact-form span.wpcf7-form-control-wrap.radio-checkbox-1 .input__radio_btn{display:inline-block;cursor:pointer;text-align:left;margin:0;position:relative;margin-left:4px;font-weight:400}.theplus-contact-form label.input__radio_btn .toggle-button__icon{content:"";display:inline-block;vertical-align:middle;cursor:pointer;z-index:1;height:24px;width:24px;overflow:hidden;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;background:#000;margin-left:5px;position:relative}.theplus-contact-form .input__radio_btn .toggle-button__icon:after{content:"\f00c";position:absolute;transition:0.2s ease-out;-webkit-transition:0.2s ease-out;-moz-transition:0.2s ease-out;-o-transition:0.2s ease-out;-ms-transition:0.2s ease-out;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.theplus-contact-form .input__radio_btn .toggle-button__icon:after{-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.theplus-contact-form .input__radio_btn .toggle-button__icon:after{top:50%;left:50%;width:24px;height:24px;line-height:24px;font-size:13px;text-align:center;background:transparent;color:#fff;animation:radio-hide .2s ease-out;transition:none;-webkit-transition:none;-moz-transition:none;-o-transition:none;-ms-transition:none;transform:translate3d(-50%,200%,0)}.input-radio-check:checked~label.input__radio_btn .toggle-button__icon:after{transform:translate3d(-50%,-50%,0);animation:radio-show .2s}@keyframes radio-hide{0%{transform:translate3d(-50%,-50%,0)}100%{transform:translate3d(-50%,200%,0)}}@keyframes radio-show{0%{transform:translate3d(-50%,200%,0)}100%{transform:translate3d(-50%,-50%,0)}}.theplus-contact-form span.wpcf7-list-item.first{margin:0}.theplus-contact-form span.wpcf7-form-control-wrap input[type="checkbox"],.theplus-contact-form span.wpcf7-form-control-wrap input[type="radio"]{display:none}.theplus-contact-form span.wpcf7-form-control-wrap span.wpcf7-list-item{position:relative;vertical-align:middle;overflow:hidden}.theplus-contact-form label.input__radio_btn{cursor:pointer}.theplus-contact-form span.wpcf7-form-control-wrap .input__checkbox_btn{display:inline-block;cursor:pointer;text-align:left;margin:0;position:relative;margin-left:4px;font-weight:400}.theplus-contact-form label.input__checkbox_btn .toggle-button__icon{content:"";display:inline-block;vertical-align:middle;cursor:pointer;z-index:1;height:24px;width:24px;overflow:hidden;background:#000;margin-left:5px;position:relative}.theplus-contact-form .input__checkbox_btn .toggle-button__icon:after{content:"\f00c";position:absolute;transition:0.2s ease-out;-webkit-transition:0.2s ease-out;-moz-transition:0.2s ease-out;-o-transition:0.2s ease-out;-ms-transition:0.2s ease-out;display:inline-block;font:normal normal normal 14px/1 FontAwesome;font-size:inherit;text-rendering:auto;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.theplus-contact-form .input__checkbox_btn .toggle-button__icon:after{top:50%;left:50%;width:24px;height:24px;line-height:24px;font-size:13px;text-align:center;animation:checkbox-hide .2s ease-out;transition:none;color:#fff;background:transparent;-webkit-transition:none;-moz-transition:none;-o-transition:none;-ms-transition:none;-webkit-transform:translate3d(-50%,200%,0);-ms-transform:translate3d(-50%,200%,0);-moz-transform:translate3d(-50%,200%,0);-o-transform:translate3d(-50%,200%,0);transform:translate3d(-50%,200%,0)}.input-checkbox-check:checked~label.input__checkbox_btn .toggle-button__icon:after{transform:translate3d(-50%,-50%,0);animation:checkbox-show .2s}@keyframes checkbox-hide{0%{transform:translate3d(-50%,-50%,0)}100%{transform:translate3d(-50%,200%,0)}}@keyframes checkbox-show{0%{transform:translate3d(-50%,200%,0)}100%{transform:translate3d(-50%,-50%,0)}}.theplus-contact-form span.wpcf7-form-control-wrap.cf7-style-file{align-items:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start}.theplus-contact-form input[type="file"]{width:.1px;height:.1px;opacity:0;overflow:hidden;position:absolute}.wpcf7-file + .input__file_btn{max-width:80%;font-size:14px;font-weight:700;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;display:inline-block;overflow:hidden;padding:.525rem 1.825rem;margin-bottom:0}.wpcf7-file + .input__file_btn svg{width:2em;height:2em;vertical-align:middle;fill:#252525;margin-top:-.25em;margin-right:1em;stroke-opacity:.8}.wpcf7-file + .input__file_btn{color:#252525;border:2px solid #252525}.wpcf7-file + .input__file_btn{cursor:pointer}.wpcf7-file:focus + .input__file_btn,.inputfile-2 + .input__file_btn:hover{color:#722040;border:2px solid #722040}.wpcf7-file + .input__file_btn *{pointer-events:none}.theplus-contact-form .wpcf7-not-valid-tip{position:relative;display:block;padding:0;margin-left:10px;line-height:1;font-size:12px}.theplus-contact-form .input--filled .input__file_btn{background:#252525;color:#fff;border-color:#252525}.theplus-contact-form .input--filled .input__file_btn *{stroke:#fff}.pt-plus-text-block-wrapper{position:relative;display:block;width:100%}.pt_plus_adv_text_block,.pt_plus_adv_text_block .text-content-block{position:relative;display:block;width:100%}.plus_blockquote{position:relative;width:100%;display:block;-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.plus_blockquote .quote-text{font-size:inherit;padding:0!important;margin:0;background:transparent;border:0;font-style:normal;-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.plus_blockquote .quote-text:before,.plus_blockquote .quote-text:after{display:none}.plus_blockquote.quote-style-1{padding-left:15px;border-left:2px solid #ff214f;font-size:16px;line-height:25px;color:#888}.plus_blockquote.quote-style-2 .quote-left{position:absolute;font-size:60px;top:-50px;text-shadow:7px 14px 10px rgba(0,0,0,.1);color:#888}.plus_blockquote.quote-style-2{padding:20px;background:#eee;border-radius:3px}.plus_blockquote .quote-text>span{-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.plus_blockquote.quote-style-2 .quote-text>span{padding-left:65px}.plus_blockquote.quote-style-2 .quote-text .quote_author{text-align:right;font-size:14px;line-height:1.2;margin-top:10px;-webkit-transition:all .3s ease-in-out;-moz-transition:all .3s ease-in-out;-o-transition:all .3s ease-in-out;transition:all .3s ease-in-out}.pt-plus-animated-image-wrapper,.animated-image-parallax{position:relative;display:block;width:100%}.pt-plus-animated-image-wrapper .js-tilt:hover{position:relative;z-index:11}.pt-plus-animated-image-wrapper img{-webkit-transition:filter .3s ease-in-out;-moz-transition:filter .3s ease-in-out;-o-transition:filter .3s ease-in-out;transition:filter .3s ease-in-out}.pt-plus-button-wrapper{position:relative;display:block}.ts-button.content_hover_effect{position:relative;display:inline-block;width:auto}.pt-plus-button-wrapper .parallax-scroll{position:relative;display:inline-block}.pt-plus-button-wrapper .pt-plus-move-parallax{position:relative;display:inline-block;width:auto}.pt-plus-button-wrapper .pt-plus-move-parallax.full-button{width:100%}.pt_plus_button{position:relative;display:inline-block;width:auto}.pt_plus_button.full-button{width:100%;text-align:center}.ts-button.content_hover_effect.full-button{width:100%}.pt_plus_button.full-button a.button-link-wrap{display:block;width:100%;text-align:center}a.button-link-wrap:hover{text-decoration:blink}.pt_plus_button.trnasition_hover{-webkit-transition:all .3s linear;-moz-transition:all .3s linear;-ms-transition:all .3s linear;-o-transition:all .3s linear;transition:all .3s linear}.pt_plus_button.trnasition_hover:hover{-webkit-transform:translateY(-3px);-moz-transform:translateY(-3px);-ms-transform:translateY(-3px);-o-transform:translateY(-3px);transform:translateY(-3px)}.pt_plus_button .button-link-wrap i{padding-left:5px;padding-right:5px;vertical-align:middle}.pt_plus_button .button-link-wrap{position:relative;display:inline-block;padding:15px 30px;font-size:16px;line-height:25px;letter-spacing:1px;cursor:pointer;color:#000;-webkit-transition:all .3s linear;-moz-transition:all .3s linear;-ms-transition:all .3s linear;-o-transition:all .3s linear;transition:all .3s linear}.pt_plus_button .button-link-wrap:hover .button_line{-webkit-animation:mymove 1s;-webkit-animation-iteration-count:1;animation:mymove 1s;animation-iteration-count:1}.pt_plus_button .button-link-wrap .button_line{position:absolute;background:#000;width:100%;height:1px;bottom:0;left:0%;pointer-events:none;z-index:11;display:inline-block}@-webkit-keyframes mymove{0%{left:0%;width:100%}45%{left:100%;width:0%}55%{left:0%;width:0%}100%{left:0%;width:100%}}@keyframes mymove{0%{left:0%;width:100%}45%{left:100%;width:0%}55%{left:0%;width:0%}100%{left:0%;width:100%}}.button-link-wrap i.button-before{margin-right:10px}.button-link-wrap i.button-after{margin-left:10px}.pt_plus_button.button-style-4 .button-link-wrap{padding:15px 30px;text-align:center;font-size:16px;line-height:25px;-moz-border-radius:30px;-webkit-border-radius:30px;border-radius:30px;border:1px solid #252525;vertical-align:top;background:#252525;-webkit-transition:background 150ms ease-in-out,color 150ms ease-in-out;-moz-transition:background 150ms ease-in-out,color 150ms ease-in-out;-o-transition:background 150ms ease-in-out,color 150ms ease-in-out;-ms-transition:background 150ms ease-in-out,color 150ms ease-in-out;transition:background 150ms ease-in-out,color 150ms ease-in-out;position:relative;overflow:hidden;color:#8a8a8a;-webkit-background-size:cover!important;-moz-background-size:cover!important;-o-background-size:cover!important;background-size:cover!important;background-position:center center!important}.pt_plus_button.button-style-4 .button-link-wrap:hover{color:#252525;border:1px solid #252525}.pt_plus_button.button-style-4 .button-link-wrap::after{content:attr(data-hover);display:grid;align-items:center;position:absolute;width:100%;height:100%;top:0;left:0;z-index:1;background:#00d7e4;-ms-transform:translateY(100%);-webkit-transform:translateY(100%);-moz-transform:translateY(100%);-o-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform ease 0.3s;-moz-transition:-moz-transform ease 0.3s;-o-transition:-o-transform ease 0.3s;-ms-transition:-ms-transform ease 0.3s;transition:transform ease 0.3s;-webkit-background-size:cover!important;-moz-background-size:cover!important;-o-background-size:cover!important;background-size:cover!important;background-position:center center!important}.pt_plus_button.button-style-4 .button-link-wrap:hover::after{-ms-transform:translateY(0);-ms-transform:translateY(0);-moz-transform:translateY(0);-o-transform:translateY(0);transform:translateY(0)}.pt_plus_button.button-style-8{overflow:visible}.pt_plus_button.button-style-8 .button-link-wrap{-moz-box-shadow:0 8px 20px 1px rgba(0,0,0,.27);-webkit-box-shadow:0 8px 20px 1px rgba(0,0,0,.27);box-shadow:0 8px 20px 1px rgba(0,0,0,.27);padding:15px 30px;border:1px solid #252525}.pt_plus_button.button-style-8 .button-link-wrap:hover{-webkit-box-shadow:0 3px 6px 1px rgba(0,0,0,.08);-moz-box-shadow:0 3px 6px 1px rgba(0,0,0,.08);box-shadow:0 3px 6px 1px rgba(0,0,0,.08);-webkit-transform:translateY(3px);-ms-transform:translateY(3px);-moz-transform:translateY(3px);-o-transform:translateY(3px);transform:translateY(3px)}.pt_plus_button.button-style-11 .button-link-wrap{display:inline-block;background:#252525;border:1px solid #252525;overflow:hidden}.pt_plus_button.button-style-11 .button-link-wrap:hover>span{-webkit-transform:translate3d(0,100%,0);-ms-transform:translate3d(0,100%,0);-moz-transform:translate3d(0,100%,0);-o-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);display:block;opacity:0}.pt_plus_button.button-style-11 .button-link-wrap::before{content:attr(data-hover);position:absolute;top:0;left:0;width:100%;height:100%;color:#252525;background:#ff214f;display:grid;align-items:center;text-align:center}.pt_plus_button.button-style-11 .button-link-wrap>span,.pt_plus_button.button-style-11 .button-link-wrap::before{-webkit-transition:-webkit-transform 0.3s;-moz-transition:-moz-transform 0.3s;-o-transition:-o-transform 0.3s;-ms-transition:-ms-transform 0.3s;transition:transform 0.3s;-webkit-transition-timing-function:cubic-bezier(.75,0,.125,1);transition-timing-function:cubic-bezier(.75,0,.125,1);padding:15px 30px;display:block}.pt_plus_button.button-style-11.hover-left .button-link-wrap::before{-webkit-transform:translate3d(-100%,0,0);-ms-transform:translate3d(-100%,0,0);-moz-transform:translate3d(-100%,0,0);-o-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.pt_plus_button.button-style-11.hover-right .button-link-wrap::before{-webkit-transform:translate3d(100%,0,0);-ms-transform:translate3d(100%,0,0);-moz-transform:translate3d(100%,0,0);-o-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.pt_plus_button.button-style-11.hover-top .button-link-wrap::before{-webkit-transform:translate3d(0,-100%,0);-ms-transform:translate3d(0,-100%,0);-moz-transform:translate3d(0,-100%,0);-o-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}.pt_plus_button.button-style-11.hover-bottom .button-link-wrap::before{-webkit-transform:translate3d(0,100%,0);-ms-transform:translate3d(0,100%,0);-moz-transform:translate3d(0,100%,0);-o-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}.pt_plus_button.button-style-11.hover-left .button-link-wrap:hover::before,.pt_plus_button.button-style-11.hover-right .button-link-wrap:hover::before,.pt_plus_button.button-style-11.hover-top .button-link-wrap:hover::before,.pt_plus_button.button-style-11.hover-bottom .button-link-wrap:hover::before{-webkit-transform:translate3d(0,0,0);-ms-transform:translate3d(0,0,0);-moz-transform:translate3d(0,0,0);-o-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}.pt_plus_button.button-style-11 .button-link-wrap{overflow:hidden;padding:0}.pt_plus_button.button-style-12 .button-link-wrap{display:inline-block;border:1px solid #252525;padding:15px 30px;overflow:hidden}.pt_plus_button.button-style-12 .button-link-wrap span{z-index:1;position:relative}.pt_plus_button.button-style-12 .button-link-wrap::before{content:'';position:absolute;top:50%;left:100%;margin:-15px 0 0 1px;width:50px;height:30px;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;background:#ff214f;-webkit-transform-origin:100% 50%;-moz-transform-origin:100% 50%;-ms-transform-origin:100% 50%;-o-transform-origin:100% 50%;transform-origin:100% 50%;-webkit-transform:scale3d(1,2,1);-moz-transform:scale3d(1,2,1);-ms-transform:scale3d(1,2,1);-o-transform:scale3d(1,2,1);transform:scale3d(1,2,1);-webkit-transition:-webkit-transform 0.3s,opacity 0.3s;-moz-transition:-webkit-transform 0.3s,opacity 0.3s;-ms-transition:-webkit-transform 0.3s,opacity 0.3s;-o-transition:-webkit-transform 0.3s,opacity 0.3s;transition:transform .1,opacity 0.3s;-webkit-transition-timing-function:cubic-bezier(.7,0,.9,1);transition-timing-function:cubic-bezier(.7,0,.9,1)}.pt_plus_button.button-style-12 .button-link-wrap:hover::before{-webkit-transform:scale3d(9,9,1);transform:scale3d(9,9,1)}.pt_plus_button.button-style-13 .button-link-wrap{display:inline-block;border:1px solid #252525;padding:15px 30px;overflow:hidden}.pt_plus_button.button-style-13 .button-link-wrap span{position:relative;z-index:1}.pt_plus_button.button-style-13 .button-link-wrap::before{opacity:.4}.pt_plus_button.button-style-13 .button-link-wrap::before,.pt_plus_button.button-style-13 .button-link-wrap::after{content:'';position:absolute;height:100%;width:100%;-webkit-transition:-webkit-transform 0.3s;-moz-transition:-moz-transform 0.3s;-o-transition:-ms-transform 0.3s;-ms-transition:-o-transform 0.3s;transition:transform 0.3s;-webkit-transition-timing-function:cubic-bezier(.75,0,.125,1);transition-timing-function:cubic-bezier(.75,0,.125,1)}.pt_plus_button.button-style-13.hover-top .button-link-wrap::before,.pt_plus_button.button-style-13.hover-top .button-link-wrap::after{bottom:100%;left:0}.pt_plus_button.button-style-13.hover-bottom .button-link-wrap::before,.pt_plus_button.button-style-13.hover-bottom .button-link-wrap::after{bottom:-100%;left:0}.pt_plus_button.button-style-13.hover-right .button-link-wrap::before,.pt_plus_button.button-style-13.hover-right .button-link-wrap::after{right:100%;top:0;left:100%}.pt_plus_button.button-style-13.hover-left .button-link-wrap::before,.pt_plus_button.button-style-13.hover-left .button-link-wrap::after{left:-100%;right:100%;top:0}.pt_plus_button.button-style-13.hover-left .button-link-wrap:hover::before,.pt_plus_button.button-style-13.hover-left .button-link-wrap:hover::after{-webkit-transform:translate3d(100%,0%,0);-ms-transform:translate3d(100%,0%,0);-moz-transform:translate3d(100%,0%,0);-o-transform:translate3d(100%,0%,0);transform:translate3d(100%,0%,0)}.pt_plus_button.button-style-13.hover-right .button-link-wrap:hover::before,.pt_plus_button.button-style-13.hover-right .button-link-wrap:hover::after{-webkit-transform:translate3d(-100%,0%,0);-ms-transform:translate3d(-100%,0%,0);-moz-transform:translate3d(-100%,0%,0);-o-transform:translate3d(-100%,0%,0);transform:translate3d(-100%,0%,0)}.pt_plus_button.button-style-13.hover-top .button-link-wrap:hover::before,.pt_plus_button.button-style-13.hover-top .button-link-wrap:hover::after{-webkit-transform:translate3d(0%,100%,0);-ms-transform:translate3d(0%,100%,0);-moz-transform:translate3d(0%,100%,0);-o-transform:translate3d(0%,100%,0);transform:translate3d(0%,100%,0)}.pt_plus_button.button-style-13.hover-bottom .button-link-wrap:hover::before,.pt_plus_button.button-style-13.hover-bottom .button-link-wrap:hover::after{-webkit-transform:translate3d(0%,-100%,0);-ms-transform:translate3d(0%,-100%,0);-moz-transform:translate3d(0%,-100%,0);-o-transform:translate3d(0%,-100%,0);transform:translate3d(0%,-100%,0)}.pt_plus_button.button-style-13 .button-link-wrap:hover::after{-webkit-transition-delay:0.175s;-moz-transition-delay:0.175s;-o-transition-delay:0.175s;transition-delay:0.175s}.pt_plus_button.button-style-13 .button-link-wrap::before,.pt_plus_button.button-style-13 .button-link-wrap::after{background:#ff214f}.pt_plus_button.button-style-20 .button-link-wrap:after{width:100%;height:0;top:50%;left:50%;background:#ff214f;-webkit-transform:translateX(-50%) translateY(-50%) rotate(45deg);-moz-transform:translateX(-50%) translateY(-50%) rotate(45deg);-ms-transform:translateX(-50%) translateY(-50%) rotate(45deg);-o-transform:translateX(-50%) translateY(-50%) rotate(45deg);transform:translateX(-50%) translateY(-50%) rotate(45deg)}.pt_plus_button.button-style-20 .button-link-wrap:hover:after{height:280%;opacity:1}.pt_plus_button.button-style-20 .button-link-wrap:active:after{height:500%;opacity:1}.pt_plus_button.button-style-21 .button-link-wrap:after{width:101%;height:0;top:50%;left:50%;background:#ff214f;-webkit-transform:translateX(-50%) translateY(-50%);-moz-transform:translateX(-50%) translateY(-50%);-ms-transform:translateX(-50%) translateY(-50%);-o-transform:translateX(-50%) translateY(-50%);transform:translateX(-50%) translateY(-50%)}.pt_plus_button.button-style-21 .button-link-wrap:hover:after{height:75%;opacity:1}.pt_plus_button.button-style-21 .button-link-wrap:active:after{height:130%;opacity:1}.content_hover_effect{position:relative;display:block;width:100%}.content_hover_push{-webkit-transform:translateZ(0);-moz-transform:translateZ(0);-ms-transform:translateZ(0);-o-transform:translateZ(0);transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden;-moz-osx-font-smoothing:grayscale}.content_hover_push:hover{-webkit-animation-name:hvr-push;animation-name:hvr-push;-webkit-animation-duration:0.3s;animation-duration:0.3s;-webkit-animation-timing-function:linear;animation-timing-function:linear;-webkit-animation-iteration-count:1;animation-iteration-count:1}@-webkit-keyframes hvr-push{50%{-webkit-transform:scale(.8);transform:scale(.8)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes hvr-push{50%{-webkit-transform:scale(.8);transform:scale(.8)}100%{-webkit-transform:scale(1);transform:scale(1)}}ul.pt_plus_countdown{list-style:none;margin:20px 0;padding:0;display:block;text-align:center}ul.pt_plus_countdown li{border:4px solid #736E6E;padding:5px 17px;margin:0 10px}ul.pt_plus_countdown li{display:inline-block}ul.pt_plus_countdown li span{font-weight:300;line-height:80px;padding:0 13px;padding-bottom:0;display:block}ul.pt_plus_countdown li h6{font-size:14px;text-transform:uppercase;padding-top:10px;font-weight:600;border-top:2px solid;margin:0}.pt-plus-heading-animation .ani-bold{font-weight:700}.pt-plus-heading-animation .ani-b-normal{font-weight:400}.pt-plus-heading-animation .ani-underline{text-decoration:underline!important}.pt-plus-heading-animation .ani-u-normal{text-decoration:none!important}.pt-plus-heading-animation .ani-italic i{font-style:italic!important}.pt-plus-heading-animation .ani-i-normal i{font-style:normal!important}.cd-words-wrapper{display:inline-block;position:relative;text-align:left}.cd-words-wrapper b{display:inline-block;position:absolute;white-space:nowrap;left:0;top:0;padding:0 5px}.cd-words-wrapper b.is-visible{position:relative}.no-js .cd-words-wrapper b{opacity:0}.no-js .cd-words-wrapper b.is-visible{opacity:1}.pt-plus-cd-headline.type .cd-words-wrapper{vertical-align:top;overflow:hidden}.pt-plus-cd-headline.type .cd-words-wrapper::after{content:'';position:absolute;right:0;top:50%;bottom:auto;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%);height:90%;width:0;background:#aebcb9}.pt-plus-cd-headline.type .cd-words-wrapper.waiting::after{-webkit-animation:cd-pulse 1s infinite;-moz-animation:cd-pulse 1s infinite;animation:cd-pulse 1s infinite}.pt-plus-cd-headline.type .cd-words-wrapper.selected::after{visibility:hidden}.pt-plus-cd-headline.type b{visibility:hidden}.pt-plus-cd-headline.type b.is-visible{visibility:visible}.pt-plus-cd-headline.type i{position:absolute;visibility:hidden}.pt-plus-cd-headline.type i.in{position:relative;visibility:visible}.pt-plus-cd-headline span.cd-words-wrapper i{font-style:normal}@-webkit-keyframes cd-pulse{0%{-webkit-transform:translateY(-50%) scale(1);opacity:1}40%{-webkit-transform:translateY(-50%) scale(.9);opacity:0}100%{-webkit-transform:translateY(-50%) scale(0);opacity:0}}@-moz-keyframes cd-pulse{0%{-moz-transform:translateY(-50%) scale(1);opacity:1}40%{-moz-transform:translateY(-50%) scale(.9);opacity:0}100%{-moz-transform:translateY(-50%) scale(0);opacity:0}}@keyframes cd-pulse{0%{-webkit-transform:translateY(-50%) scale(1);transform:translateY(-50%) scale(1);opacity:1}40%{-webkit-transform:translateY(-50%) scale(.9);transform:translateY(-50%) scale(.9);opacity:0}100%{-webkit-transform:translateY(-50%) scale(0);transform:translateY(-50%) scale(0);opacity:0}}.pt-plus-cd-headline.loading-bar span{display:inline-block;padding:.2em 0}.pt-plus-cd-headline.loading-bar .cd-words-wrapper{overflow:hidden;vertical-align:top}.pt-plus-cd-headline.loading-bar .cd-words-wrapper::after{content:'';position:absolute;left:7px;bottom:0;height:3px;width:0;z-index:2;-webkit-transition:width 0.3s -0.1s;-moz-transition:width 0.3s -0.1s;-o-transition:width 0.3s -0.1s;-ms-transition:width 0.3s -0.1s;transition:width 0.3s -0.1s}.pt-plus-cd-headline.loading-bar .cd-words-wrapper.is-loading::after{width:100%;-webkit-transition:width 3s;-moz-transition:width 3s;transition:width 3s}.pt-plus-cd-headline.loading-bar b{top:.2em;opacity:0;-webkit-transition:opacity 0.3s;-moz-transition:opacity 0.3s;transition:opacity 0.3s}.pt-plus-cd-headline.loading-bar b.is-visible{opacity:1;top:0}.pt-plus-cd-headline.clip span{display:inline-block;padding:.2em 0}.pt-plus-cd-headline.clip .cd-words-wrapper{overflow:hidden;vertical-align:top}.pt-plus-cd-headline.clip .cd-words-wrapper::after{content:'';position:absolute;top:0;right:0;width:2px;height:100%;background:#aebcb9}.pt-plus-cd-headline.clip b{opacity:0}.pt-plus-cd-headline.clip b.is-visible{opacity:1}.pt-plus-cd-headline.scale b{opacity:0}.pt-plus-cd-headline.scale i{display:inline-block;opacity:0;-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);transform:scale(0)}.is-visible .pt-plus-cd-headline.scale i{opacity:1}.pt-plus-cd-headline.scale i.in{-webkit-animation:scale-up 0.6s forwards;-moz-animation:scale-up 0.6s forwards;animation:scale-up 0.6s forwards}.pt-plus-cd-headline.scale i.out{-webkit-animation:scale-down 0.6s forwards;-moz-animation:scale-down 0.6s forwards;animation:scale-down 0.6s forwards}.no-csstransitions .pt-plus-cd-headline.scale i{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:0}.no-csstransitions .pt-plus-cd-headline.scale .is-visible i{opacity:1}@-webkit-keyframes scale-up{0%{-webkit-transform:scale(0);opacity:0}60%{-webkit-transform:scale(1.2);opacity:1}100%{-webkit-transform:scale(1);opacity:1}}@-moz-keyframes scale-up{0%{-moz-transform:scale(0);opacity:0}60%{-moz-transform:scale(1.2);opacity:1}100%{-moz-transform:scale(1);opacity:1}}@keyframes scale-up{0%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);transform:scale(0);opacity:0}60%{-webkit-transform:scale(1.2);-moz-transform:scale(1.2);-ms-transform:scale(1.2);-o-transform:scale(1.2);transform:scale(1.2);opacity:1}100%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:1}}@-webkit-keyframes scale-down{0%{-webkit-transform:scale(1);opacity:1}60%{-webkit-transform:scale(0);opacity:0}}@-moz-keyframes scale-down{0%{-moz-transform:scale(1);opacity:1}60%{-moz-transform:scale(0);opacity:0}}@keyframes scale-down{0%{-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1);opacity:1}60%{-webkit-transform:scale(0);-moz-transform:scale(0);-ms-transform:scale(0);-o-transform:scale(0);transform:scale(0);opacity:0}}.elementor-widget-tp-heading-title.text-left .seprator.sep-l{text-align:left;margin-left:0}.elementor-widget-tp-heading-title.text-right .seprator.sep-l{text-align:right;margin-right:0}.heading-title-gradient{-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important}.heading.style-3 .heading-title:before{border-bottom:3px solid;width:20%;content:'';height:28px;display:inline-block}.heading_style .heading-sub-title,.heading_style .heading-title{margin-top:5px;margin-bottom:5px;word-wrap:break-word}.heading{display:block;position:relative;width:100%}.heading .text-center .seprator.sep-l{margin:0 auto}.heading .seprator.sep-l .sep-mg{margin:0 7px}.heading .text-right .seprator.sep-l{float:right}.heading .seprator{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;border-radius:15px;margin:0 auto}.heading span.title-sep{height:1px;position:relative;-webkit-box-flex:1;-webkit-flex:1 1 auto;-ms-flex:1 1 auto;flex:1 1 auto;min-width:10%;border:1px solid #000}.heading.style-5{margin-bottom:20px}.heading.style-5 .heading-title{outline:0;outline:0;color:#313131;-webkit-transition:color 1s ease;-moz-transition:color 1s ease;-ms-transition:color 1s ease;-o-transition:color 1s ease;transition:color 1s ease;display:inline-block;box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;position:relative;text-decoration:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;padding-bottom:5px}.heading.style-5 .heading-title:before{position:absolute;-webkit-transition:all 1s ease 0s;-moz-transition:all 1s ease 0s;-ms-transition:all 1s ease 0s;-o-transition:all 1s ease 0s;transition:all 1s ease 0s;content:"";width:100%;height:6px;right:0;bottom:0;position:absolute;background:#1e73be}.heading.style-5 .heading-title:focus:after,.heading.style-5 .heading-title:focus:before,.heading.style-5 .heading-title:hover:after,.heading.style-5 .heading-title:hover:before{outline:0;-webkit-transition:all 1s ease 0s;-moz-transition:all 1s ease 0s;-ms-transition:all 1s ease 0s;-o-transition:all 1s ease 0s;transition:all 1s ease 0s}.heading.style-5 .heading-title:after{-webkit-transition:all 1s ease 0s;-moz-transition:all 1s ease 0s;-ms-transition:all 1s ease 0s;-o-transition:all 1s ease 0s;transition:all 1s ease 0s;content:"";width:100%;height:2px;right:0;bottom:-4px;position:absolute;background:#1e73be}.heading.style-7 .sub-style{display:block;position:relative}.heading.style-7 .sub-heading .heading-sub-title{font-family:montserrat;display:block;font-size:20px;line-height:1.2;color:#252525;margin-top:5px;margin-bottom:10px}.heading.style-7 .sub-heading .heading-sub-title span{font-weight:900}.heading.style-7 .heading-title{font-family:montserrat;margin-top:0;margin-bottom:0;display:block}.heading.style-7 .heading-title{position:relative;transition:1000ms;-webkit-transition:1000ms;-moz-transition:1000ms;-o-transition:1000ms;-ms-transition:1000ms;overflow:hidden}.heading.style-7 .head-title:after{position:absolute;bottom:-10px;color:red;content:'.';font-size:60px;width:60px;margin-left:-30px;pointer-events:none;-webkit-transition:text-shadow 0.3s,color 0.3s;-moz-transition:text-shadow 0.3s,color 0.3s;-o-transition:text-shadow 0.3s,color 0.3s;-ms-transition:text-shadow 0.3s,color 0.3s;transition:text-shadow 0.3s,color 0.3s;text-shadow:15px 0 red,-15px 0 red}.heading.style-7 .head-title.text-left:after{left:10px;-webkit-transform:translateX(0%);-ms-transform:translateX(0%);-moz-transform:translateX(0%);-o-transform:translateX(0%);transform:translateX(0%)}.heading.style-7 .head-title.text-center:after{left:50%;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);-moz-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%)}.heading.style-7 .head-title.text-right:after{right:5px;-webkit-transform:translateX(-50%);-ms-transform:translateX(-50%);-moz-transform:translateX(-50%);-o-transform:translateX(-50%);transform:translateX(-50%)}.heading.style-8 .sub-heading{color:#d4d4d4;left:0;display:block;width:100%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-o-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:70px;line-height:1.2;position:absolute}.heading.style-8 .head-title.text-center{left:0;display:block;width:100%;z-index:2;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-o-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);font-size:35px;line-height:1.2}.heading.style-8 .heading-sub-title{font-size:100px;font-weight:900}.heading.style-8:hover .heading-title.text-center{color:#ec2d3a}.sep-dot{font-size:50px;line-height:1px;display:table;position:relative;top:-5px;padding:0 4px}.seprator-width{width:20%;margin:0 auto}.heading.style-11 .sub-style{display:inline-block;width:auto!important}.box-left{text-align:left}.box-center{text-align:center}.box-right{text-align:right}.box-left .text-center{text-align:left}.box-center .text-center{text-align:center}.box-right .text-center{text-align:right}.ts-icon-img{margin-bottom:10px}.full-width{width:100%;position:relative}.flip-back,.flip-front{width:100%;height:100%;position:absolute;left:0;top:0;display:table}.flip-back .vertical-center,.flip-front .vertical-center{display:table-cell;vertical-align:middle}.flip-horizontal :hover .flip-front{-webkit-transform:rotateY(-180deg);-ms-transform:rotateY(-180deg);-moz-transform:rotateY(-180deg);-o-transform:rotateY(-180deg);transform:rotateY(-180deg)}.flip-horizontal :hover .flip-back{-webkit-transform:rotateY(0);-ms-transform:rotateY(0);-moz-transform:rotateY(0);-o-transform:rotateY(0);transform:rotateY(0)}.flip-horizontal .flip-back{-webkit-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg)}.bezier-flip{-webkit-transition:all .5s cubic-bezier(.645,.045,.355,1);-moz-transition:all .5s cubic-bezier(.645,.045,.355,1);-o-transition:all .5s cubic-bezier(.645,.045,.355,1);-ms-transition:all .5s cubic-bezier(.645,.045,.355,1);transition:all .5s cubic-bezier(.645,.045,.355,1)}.padding-flip{padding:30px 40px}.origin-center{-webkit-transform-origin:center;-ms-transform-origin:center;-moz-transform-origin:center;-o-transform-origin:center;transform-origin:center}.no-backface{-webkit-backface-visibility:hidden;backface-visibility:hidden}.numtext-left{text-align:left}.numtext-center{text-align:center}.numtext-right{text-align:right}.icon-right{text-align:right}.icon-left{float:left}.icon-center{margin:0 auto}.ts-icon{display:block;position:relative;-o-transition:all 1.3s;-webkit-transition:all 1.3s;-moz-transition:all 1.3s;-ms-transition:all 1.3s;transition:all 1.3s}.icon-img-b{line-height:1;margin-bottom:15px}.service-media .icon-img-b{margin-right:15px}.border-pd{border:2px solid}.subject-color{-o-transition:all 1.3s;-webkit-transition:all 1.3s;-ms-transition:all 1.3s;-moz-transition:all 1.3s;transition:all 1.3s;margin-bottom:20px;line-height:1}.sub-subject-color{margin-bottom:20px;line-height:1}.ts-icon-1{display:block;vertical-align:middle;text-align:center;overflow:hidden}.pad-0{padding:0}.pad-5{padding:5px}.pad-30{padding:30px;padding-bottom:10px}.border-icon{display:block;position:relative;padding:30px;padding-bottom:10px}hr.hr-border{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.service-icon-style-1 .icn-txt{display:block;position:relative;width:100%;overflow:hidden}.icon-right .ts-icon-1{text-align:right}.service-icon-style-2 .icn-content{padding:20px;display:block;position:relative;background:#F9B701}.service-icon-style-2 .icn-header{display:block;position:relative;padding:20px}.service-icon-style-2 .plus-number-counter,.service-icon-style-2 .subject-color{margin-bottom:0}.service-icon-style-3 .pt_plus_animated_svg,.service-icon-style-4 .pt_plus_animated_svg{width:auto;margin-right:15px}.service-border-box{border:1px solid}.pt_plus_info_box{display:block;position:relative;width:100%;-webkit-transition:all 0.25s linear;-moz-transition:all 0.25s linear;-o-transition:all 0.25s linear;-ms-transition:all 0.25s linear;transition:all 0.25s linear;z-index:1}.pt_plus_info_box.list-carousel-slick{margin-bottom:50px}.pt_plus_info_box ul.slick-dots{bottom:-45px}.pt_plus_info_box .info-box-inner{-webkit-transition:all 0.3s;moz-transition:all 0.3s;-o-transition:all 0.3s;-ms-transition:all 0.3s;transition:all 0.3s}.info-box-bg-box{overflow:hidden}.pd-15{padding:15px}.pt_plus_info_box .pd-0{padding:0}.pt_plus_info_box object{min-height:100%}.service-media{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:start;-webkit-align-items:flex-start;-ms-flex-align:start;align-items:flex-start}.service-content{-webkit-flex:1 1 0%;-ms-flex:1 1 0%;flex:1 1 0%}.m-r-16{margin-right:16px}.m-l-16{margin-left:16px}.service-title{font-size:18px;margin-bottom:.5rem;font-family:inherit;font-weight:500;line-height:1.1}.service-desc{margin-top:0}.service-desc p{margin:0}.service-button{background:transparent;color:#121212;border:1px solid;padding:9px 20px;margin:10px 0;position:relative;display:inline-block;-moz-border-radius:3px;-webkit-border-radius:3px;border-radius:3px}.vertical-center{align-items:center}.service-border{border-style:solid;margin-top:10px;margin-bottom:5px}.text-right .service-border{text-align:right;display:inline-block}.text-center .service-border{text-align:center;margin:10px auto}.info-box-inner .service-icon-small{width:46px;height:46px;display:inline-block;line-height:46px!important;text-align:center;font-size:18px!important}.info-box-inner .service-icon-medium{width:74px;height:74px;display:inline-block;line-height:72px!important;text-align:center;font-size:30px!important}.info-box-inner .service-icon-large{width:148px;height:148px;display:inline-block;line-height:146px!important;text-align:center;font-size:65px!important}.info-box-inner .service-icon{font-size:inherit;top:auto;word-spacing:initial}.info-box-inner .service-icon,.info-box-inner .service-title,.info-box-inner .service-desc,.info-box-inner .service-desc p{-webkit-transition:all 0.3s linear;-moz-transition:all 0.3s linear;-o-transition:all 0.3s linear;-ms-transition:all 0.3s linear;transition:all 0.3s linear}.info-box-inner .icon-squre{border:1px solid;border-radius:inherit}.info-box-inner .icon-rounded{border:1px solid;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%}.plus-flip-box-widget{position:relative;display:block}.service-flipbox{position:relative;-webkit-perspective:1000;-ms-perspective:1000;perspective:1000;-ms-transform:perspective(1000px);-moz-transform-style:preserve-3d;-ms-transform-style:preserve-3d}.height-full{height:100%}.service-flipbox,.service-flipbox-holder{-moz-transform:perspective(1000px);-ms-transform:perspective(1000px);-webkit-transform:perspective(1000px);-o-transform:perspective(1000px);transform:perspective(1000px)}.bezier-1{-webkit-transition:all .7s cubic-bezier(.645,.045,.355,1);-moz-transition:all .7s cubic-bezier(.645,.045,.355,1);-o-transition:all .7s cubic-bezier(.645,.045,.355,1);-ms-transition:all .7s cubic-bezier(.645,.045,.355,1);transition:all .7s cubic-bezier(.645,.045,.355,1)}.perspective{-webkit-transform:perspective(1000px);-ms-transform:perspective(1000px);-moz-transform:perspective(1000px);-o-transform:perspective(1000px);transform:perspective(1000px);-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.flip-horizontal:hover .service-flipbox-front{-webkit-transform:rotateY(-180deg);-ms-transform:rotateY(-180deg);-moz-transform:rotateY(-180deg);-o-transform:rotateY(-180deg);transform:rotateY(-180deg)}.flip-vertical:hover .service-flipbox-front{-webkit-transform:rotateX(-180deg);-ms-transform:rotateX(-180deg);-moz-transform:rotateX(-180deg);-o-transform:rotateX(-180deg);transform:rotateX(-180deg)}.service-flipbox-back,.service-flipbox-front{-webkit-transform-style:preserve-3d;transform-style:preserve-3d}.service-flipbox-front{position:absolute;z-index:2}.service-flipbox-back,.service-flipbox-front{width:100%;height:100%;left:0;top:0;display:table}.origin-center{-webkit-transform-origin:center;-ms-transform-origin:center;-moz-transform-origin:center;-o-transform-origin:center;transform-origin:center}.no-backface{-webkit-backface-visibility:hidden;backface-visibility:hidden}.service-flipbox-content{display:table-cell;vertical-align:middle;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;-webkit-perspective:1000px;perspective:1000px;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-transform:translateZ(35px) scale(.81);transform:translateZ(35px) scale(.81)}.width-full{width:100%}.flip-horizontal:hover .service-flipbox-back{-webkit-transform:rotateY(0);-ms-transform:rotateY(0);-moz-transform:rotateY(0);-o-transform:rotateY(0);transform:rotateY(0)}.flip-vertical:hover .service-flipbox-back{-webkit-transform:rotateX(0);-ms-transform:rotateX(0);-moz-transform:rotateX(0);-o-transform:rotateX(0);transform:rotateX(0)}.flip-horizontal .service-flipbox-back{-webkit-transform:rotateY(180deg);-ms-transform:rotateY(180deg);-moz-transform:rotateY(180deg);-o-transform:rotateY(180deg);transform:rotateY(180deg)}.flip-vertical .service-flipbox-back{-webkit-transform:rotateX(180deg);-ms-transform:rotateX(180deg);-moz-transform:rotateX(180deg);-o-transform:rotateX(180deg);transform:rotateX(180deg)}.service-flipbox-back{position:absolute;-webkit-backface-visibility:hidden;backface-visibility:hidden}.fold-back-horizontal{-webkit-transform:translateX(-100%) rotateY(-180deg);-ms-transform:translateX(-100%) rotateY(-180deg);-moz-transform:translateX(-100%) rotateY(-180deg);-o-transform:translateX(-100%) rotateY(-180deg);transform:translateX(-100%) rotateY(-180deg)}.pt_plus_info_box.remove-padding{padding-left:0!important;padding-right:0!important}.pt_plus_info_box .about-post .about-post-content{background:#fff;padding:0 20px 30px;position:relative;z-index:2;transition:all 0.2s ease-in-out;-moz-transition:all 0.2s ease-in-out;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;-ms-transition:all 0.2s ease-in-out}.pt_plus_info_box .about-post .about-post-content .icon-middle{display:inline-block;text-decoration:none;transition:all 0.2s ease-in-out;-moz-transition:all 0.2s ease-in-out;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;-ms-transition:all 0.2s ease-in-out;width:100px;height:100px;line-height:100px;top:-50%;-webkit-transform:translateY(-50%);-moz-transform:translateY(-50%);-ms-transform:translateY(-50%);-o-transform:translateY(-50%);transform:translateY(-50%)}.pt_plus_info_box .about-post .about-post-content .demo.icon-rounded{border-radius:50%;-webkit-border-radius:50%;-moz-border-radius:50%;-o-border-radius:50%;border-radius:50%}.pt_plus_info_box .about-post:before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:all 0.2s ease-in-out;-moz-transition:all 0.2s ease-in-out;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;-ms-transition:all 0.2s ease-in-out}.pt_plus_info_box .about-post:hover:before{opacity:.85}.pt_plus_info_box .about-post:hover .about-post-content a{background:#1cbac8;color:#fff}.pt_plus_info_box .about-post .hover-about{position:absolute;top:50%;width:100%;left:0;height:100%;padding:0 30px;padding-top:80px;background:transparent;text-align:center;-moz-transition:all 0.2s ease-in-out;-webkit-transition:all 0.2s ease-in-out;-o-transition:all 0.2s ease-in-out;-ms-transition:all 0.2s ease-in-out;transition:all 0.2s ease-in-out}.pt_plus_info_box .about-post:hover .about-post-content{background:transparent}.pt_plus_info_box.info-box-style_1 .info-box-inner .service-title,.pt_plus_info_box.info-box-style_5 .info-box-inner .service-title{margin-top:0}.pt_plus_info_box .about-post:hover .service-title{opacity:0}.pt_plus_info_box .about-post:hover p{opacity:1}.pt_plus_info_box .about-post:hover .service-border{opacity:0}.pt_plus_info_box .about-post:hover .about-post-content{background:transparent!important}.pt_plus_info_box .about-post:hover .hover-about{top:0;padding-top:100px}.action.arrow-next.expandable{width:100%;height:40px;position:relative;margin-top:40px}.action.arrow-next:before{content:attr(data-label);font-size:14px;font-weight:400;display:block;position:absolute;left:0;color:currentColor;opacity:0}.action.arrow-next.expandable:after{content:"";position:absolute;top:0;left:0;width:100%;height:1px;background:currentColor;-webkit-transform:scaleX(0);-moz-transform:scaleX(0);-ms-transform:scaleX(0);-o-transform:scaleX(0);transform:scaleX(0);transform-origin:10px 50%;-moz-transform-origin:10px 50%;-ms-transform-origin:10px 50%;-o-transform-origin:10px 50%;-webkit-transform-origin:10px 50%}.pt_plus_info_box .info-tag-title{display:inline-block;border:1px solid;padding:6px 10px;margin:0;border-radius:5px;-webkit-border-radius:5px;-moz-border-radius:5px}.pt_plus_info_box .info-box-tag{display:block;position:relative;margin-bottom:40px}.pt_plus_info_box .info-box-all{position:relative;z-index:5}.pt_plus_info_box .info-box-bg-box{transition:0.4s;-webkit-transition:0.4s;-moz-transition:0.4s;-o-transition:0.4s;-ms-transition:0.4s}.pt_plus_info_box .ts-button{margin-top:15px}.lity-wrap{overflow:auto!important}.pop-up-btn .button-link-wrap span{position:relative;z-index:2}.pop-up-btn .button-style-7 .button-link-wrap span{position:initial}.pop-up-btn .button-style-21 .button-link-wrap:after{background:#ff004b;z-index:1}.pt_plus_social_list{position:relative;display:block;padding:0}.pt_plus_social_list ul.social_list{display:inline-block;padding:0;margin:0;position:relative;list-style:none}.pt_plus_social_list ul.social_list li{position:relative;font-size:20px;text-align:center;display:inline-block;width:auto;height:auto;line-height:unset;top:auto}.pt_plus_social_list ul.social_list li .social-loop-inner{position:relative;overflow:hidden}.pt_plus_social_list ul.social_list li a{font-size:20px;color:#28262b;text-align:center;width:2.5em;height:2.5em;line-height:2.5em;display:block;margin-right:10px}.pt_plus_social_list.text-center ul.social_list{-webkit-justify-content:center;-moz-justify-content:center;-ms-justify-content:center;justify-content:center}.pt_plus_social_list.text-left ul.social_list{-webkit-justify-content:flex-start;-moz-justify-content:flex-start;-ms-justify-content:flex-start;justify-content:flex-start}.pt_plus_social_list.text-right ul.social_list{-webkit-justify-content:flex-end;-moz-justify-content:flex-end;-ms-justify-content:flex-end;justify-content:flex-end}.pt_plus_social_list.style-2 ul.social_list{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;flex-wrap:wrap}.pt_plus_social_list.style-2 li{display:table-cell;float:none}.pt_plus_social_list.style-2 ul.social_list li a{padding:15px 30px;width:100%;height:100%;line-height:1;color:#494949;margin-right:0;border-right:1px solid #404040;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.pt_plus_social_list.style-2 ul.social_list li:hover a{color:#000}.pt_plus_social_list.style-2 ul.social_list li a i.fa{padding-right:10px}.pt_plus_social_list.style-2 ul.social_list li:last-child a{border-right:0}.pt_plus_social_list.custom ul.social_list{display:-webkit-box;display:-moz-box;display:-ms-flexbox;display:-webkit-flex;display:flex;flex-wrap:wrap}.pt_plus_social_list.custom ul.social_list li{margin:0 5px}.pt_plus_social_list.custom ul.social_list li a>span{display:none}.pt_plus_social_list.custom ul.social_list li .social-loop-inner{overflow:visible}.pt_plus_social_list.custom ul.social_list li a{width:60px;height:40px;line-height:initial;border-radius:3px;text-align:center;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-orient:vertical;-webkit-align-items:center;-ms-align-items:center;align-items:center;margin:0}.pt_plus_social_list ul.social_list li:last-child a,.pt_plus_social_list.style-9 ul.social_list li:last-child,.pt_plus_social_list.style-10 ul.social_list li:last-child,.pt_plus_social_list.style-11 ul.social_list li:last-child,.pt_plus_social_list.style-12 ul.social_list li:last-child{margin-right:0}#pt-plus-blog-post-list{position:relative;display:block;width:100%}.blog-list .post-inner-loop .grid-item .post.sticky .post-title a{color:#ff214f}.blog-list .grid-item{padding:0 15px}.blog-list .blog-list-style-content{position:relative;display:block;height:100%;overflow:hidden}.post-meta-info{text-transform:capitalize;font-size:11px;font-style:normal;font-weight:400;line-height:15px;letter-spacing:0;color:#777}.post-meta-info .post-author a{text-transform:uppercase}.post-meta-info a{color:#777}.blog-list-style-content .entry-content p{margin-bottom:0}.blog-list .entry-date,.blog-list .post-author{padding-right:5px}hr.border-bottom{margin:12px 0;border-top:1px solid #d3d3d3}.pt-theplus-post-read-more-button{position:relative;display:inline-block;width:100%;overflow:hidden;margin-top:10px;margin-bottom:10px}.read-more-btn{position:relative;display:inline-block;border:1px solid #d3d3d3;padding:10px 20px;color:#888;font-weight:800}.post-format-gallery{position:relative;width:100%;margin-bottom:0!important}.blog-list .grid-item .blog-list-style-content{-webkit-transition:all 0.5s;-moz-transition:all 0.5s;transition:all 0.5s;-o-transition:all 0.5s;-ms-transition:all 0.5s}.grid-item:focus{outline:none}.list-carousel-slick .slick-slide.slick-current.slick-active.slick-center{position:relative;z-index:1}.list-carousel-slick .post-inner-loop{overflow:visible}.list-carousel-slick .post-inner-loop .slick-list.draggable{position:relative;display:block;cursor:all-scroll;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-touch-callout:none;-khtml-user-select:none;-ms-touch-action:pan-y;touch-action:pan-y}.list-carousel-slick[data-slider_rows="2"] .slick-slide>div,.list-carousel-slick[data-slider_rows="3"] .slick-slide>div{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%}.list-carousel-slick .grid-item{padding:0}ul.slick-dots.style-1 li button:before{display:none}.slick-dots.style-1 li button:before{content:'';width:0;height:0}.slick-dots.style-1 li{margin:0 6px;width:10px;height:10px}.slick-dots.style-1 li button{top:0;left:0;width:100%;height:100%;outline:none;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;text-indent:-999em;cursor:pointer;position:absolute;-webkit-box-shadow:inset 0 0 0 8px rgba(196,77,72,.42);box-shadow:inset 0 0 0 8px rgba(196,77,72,.42);-webkit-transition:box-shadow 0.3s ease;-moz-transition:box-shadow 0.3s ease;-o-transition:box-shadow 0.3s ease;-ms-transition:box-shadow 0.3s ease;transition:box-shadow 0.3s ease}.slick-dots.style-1 li button:hover,.slick-dots.style-1 li button:focus{-moz-box-shadow:inset 0 0 0 8px #c44d48;-webkit-box-shadow:inset 0 0 0 8px #c44d48;box-shadow:inset 0 0 0 8px #c44d48}.slick-dots.style-1 li.slick-active button{-moz-box-shadow:inset 0 0 0 1px #c44d48;-webkit-box-shadow:inset 0 0 0 1px #c44d48;box-shadow:inset 0 0 0 1px #c44d48}.list-carousel-slick .slick-slider.slick-dotted{margin-bottom:30px}.list-carousel-slick .slick-slider.slick-dotted{padding-bottom:20px}.slick-prev.style-2,.slick-next.style-2{margin:0 10px;width:50px;height:50px}.slick-prev.style-2 .icon-wrap:before,.slick-prev.style-2 .icon-wrap:after,.slick-next.style-2 .icon-wrap:before,.slick-next.style-2 .icon-wrap:after{content:'';position:absolute;left:25%;width:3px;height:50%;background:#fff;content:'';-webkit-transition:-webkit-transform 0.3s,background 0.3s;-moz-transition:-webkit-transform 0.3s,background 0.3s;-o-transition:-webkit-transform 0.3s,background 0.3s;-ms-transition:-webkit-transform 0.3s,background 0.3s;transition:transform 0.3s,background 0.3s;-webkit-backface-visibility:hidden;backface-visibility:hidden}.slick-prev.style-2 .icon-wrap,.slick-next.style-2 .icon-wrap{position:relative;display:block;margin:0% 0 0 10%;width:80%;height:80%}.slick-prev.style-2 .icon-wrap::before,.slick-next.style-2 .icon-wrap::before{-webkit-transform:translateX(-50%) rotate(30deg);-ms-transform:translateX(-50%) rotate(30deg);-moz-transform:translateX(-50%) rotate(30deg);-o-transform:translateX(-50%) rotate(30deg);transform:translateX(-50%) rotate(30deg);-webkit-transform-origin:0 100%;-moz-transform-origin:0 100%;-ms-transform-origin:0 100%;-o-transform-origin:0 100%;transform-origin:0 100%}.slick-prev.style-2:hover .icon-wrap::before,.slick-next.style-2:hover .icon-wrap::before{-webkit-transform:translateX(-50%) rotate(45deg);-ms-transform:translateX(-50%) rotate(45deg);-moz-transform:translateX(-50%) rotate(45deg);-o-transform:translateX(-50%) rotate(45deg);transform:translateX(-50%) rotate(45deg)}.slick-prev.style-2 .icon-wrap::after,.slick-next.style-2 .icon-wrap::after{top:50%;-webkit-transform:translateX(-50%) rotate(-30deg);-ms-transform:translateX(-50%) rotate(-30deg);-moz-transform:translateX(-50%) rotate(-30deg);-o-transform:translateX(-50%) rotate(-30deg);transform:translateX(-50%) rotate(-30deg);-webkit-transform-origin:0 0;-moz-transform-origin:0 0;-ms-transform-origin:0 0;-o-transform-origin:0 0;transform-origin:0 0}.slick-prev.style-2:hover .icon-wrap::after,.slick-next.style-2:hover .icon-wrap::after{-webkit-transform:translateX(-50%) rotate(-45deg);-ms-transform:translateX(-50%) rotate(-45deg);-moz-transform:translateX(-50%) rotate(-45deg);-o-transform:translateX(-50%) rotate(-45deg);transform:translateX(-50%) rotate(-45deg)}.slick-prev.style-2:before,.slick-next.style-2:before{position:absolute;top:0;left:0;width:100%;height:100%;-moz-border-radius:50%;-webkit-border-radius:50%;border-radius:50%;background:transparent;content:'';opacity:1;-webkit-transition:-webkit-transform 0.3s,opacity 0.3s;-moz-transition:-webkit-transform 0.3s,opacity 0.3s;-o-transition:-webkit-transform 0.3s,opacity 0.3s;-ms-transition:-webkit-transform 0.3s,opacity 0.3s;transition:transform 0.3s,opacity 0.3s;-webkit-transform:scale(.9);-moz-transform:scale(.9);-ms-transform:scale(.9);-o-transform:scale(.9);transform:scale(.9);text-shadow:0 0 transparent!important}.slick-prev.style-2:hover::before,.slick-next.style-2:hover::before{opacity:1;-webkit-transform:scale(1);-moz-transform:scale(1);-ms-transform:scale(1);-o-transform:scale(1);transform:scale(1)}.slick-prev.style-2:hover .icon-wrap::before,.slick-prev.style-2:hover .icon-wrap::after,.slick-next.style-2:hover .icon-wrap::before,.slick-next.style-2:hover .icon-wrap::after{background:#cc6055}.slick-next.style-2 .icon-wrap{-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.plus-number-counter{position:relative;display:block;width:100%}.plus-number-counter .number-counter-inner-block{position:relative;display:block;width:100%;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease}.plus-number-counter .counter-icon-inner{display:inline-block;position:relative;margin-bottom:15px;width:60px;height:60px;line-height:60px;vertical-align:middle;text-align:center;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease}.plus-number-counter .counter-image-inner{display:inline-block;position:relative;margin-bottom:15px;max-width:100px;vertical-align:middle;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease}.plus-number-counter .counter-icon-inner .counter-icon{font-size:30px;line-height:inherit!important;display:inline-block;color:#222;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease}.plus-number-counter .number-counter-inner-block .counter-title,.plus-number-counter .number-counter-inner-block .counter-title a{display:inline-block;font-size:20px;line-height:25px;margin-top:0;margin-bottom:5px;color:#333;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-o-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease}.plus-number-counter .number-counter-inner-block .counter-number{-o-transition:all .3s ease;-webkit-transition:all .3s ease;-moz-transition:all .3s ease;-ms-transition:all .3s ease;transition:all .3s ease;margin-bottom:15px;margin-top:0;margin-bottom:10px}.counter-icon-inner.shape-icon-square{border:1px solid;border-radius:2px}.counter-icon-inner.shape-icon-rounded{border:1px solid;border-radius:50%}.plus-number-counter .counter-icon-inner.shape-icon-square-rotate .counter-icon{color:#fff}@media (min-width:601px) and (max-width:1024px){.text--tabletleft{text-align:left!important;margin-left:0!important}.text--tabletcenter{text-align:center!important;margin:0 auto!important}.text--tabletright{text-align:right!important;margin-right:0!important}.text--tabletjustify{text-align:justify!important}.elementor-widget-tp-heading-title.text--tabletleft .seprator.sep-l,.elementor-widget-tp-heading-title.text--tabletjustify .seprator.sep-l{margin-left:0}.elementor-widget-tp-heading-title.text--tabletcenter .seprator.sep-l{margin:0 auto}.elementor-widget-tp-heading-title.text--tabletright .seprator.sep-l{margin-right:0}}@media (max-width:600px){.text--mobileleft{text-align:left!important;margin-left:0!important}.text--mobilecenter{text-align:center!important;margin:0 auto!important}.text--mobileright{text-align:right!important;margin-right:0!important}.text--mobilejustify{text-align:justify!important}.elementor-widget-tp-heading-title.text--mobileleft .seprator.sep-l,.elementor-widget-tp-heading-title.text--mobilejustify .seprator.sep-l{margin-left:0}.elementor-widget-tp-heading-title.text--mobilecenter .seprator.sep-l{margin:0 auto}.elementor-widget-tp-heading-title.text--mobileright .seprator.sep-l{margin-right:0}}@media (min-width:991px){.hide-desktop{display:none}}@media (min-width:601px) and (max-width:990px){.hide-tablet{display:none}}@media (max-width:600px){.hide-mobile{display:none}}@media (max-width:767px){.list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item{width:33.33%!important;height:250px!important}ul.pt_plus_countdown li{margin:0 10px 20px}.service-flipbox,.service-flipbox-holder{cursor:pointer}}@media (max-width:660px){.list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item{width:50%!important;height:300px!important}#wpadminbar{position:fixed}}@media (max-width:480px){.list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item{width:100%!important;height:420px!important}}@media (max-width:375px){.list-isotope-metro:not(.plus-smart-gallery) .post-inner-loop .grid-item{height:300px!important}}
assets/images/ajax-loader.gif ADDED
Binary file
assets/images/lazy_load.gif ADDED
Binary file
assets/images/placeholder-grid.jpg ADDED
Binary file
assets/images/post-type-screenshot.png ADDED
Binary file
assets/images/taxonomy-screenshot.png ADDED
Binary file
assets/images/thepluslogo-small.png ADDED
Binary file
assets/images/thepluslogo.png ADDED
Binary file
assets/js/admin/theplus-admin.js ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function ($) {
2
+ jQuery(document).on( 'click', '.plus-key-notify .notice-dismiss', function() {
3
+
4
+ jQuery.ajax({
5
+ url: ajaxurl,
6
+ data: {
7
+ action: 'theplus_key_notice'
8
+ }
9
+ })
10
+
11
+ });
12
+ })(window.jQuery);
assets/js/extra/app.min.js ADDED
@@ -0,0 +1,115 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!Waypoints - 4.0.1*/
2
+ !function(){"use strict";function t(o){if(!o)throw new Error("No options passed to Waypoint constructor");if(!o.element)throw new Error("No element option passed to Waypoint constructor");if(!o.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+e,this.options=t.Adapter.extend({},t.defaults,o),this.element=this.options.element,this.adapter=new t.Adapter(this.element),this.callback=o.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=t.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=t.Context.findOrCreateByElement(this.options.context),t.offsetAliases[this.options.offset]&&(this.options.offset=t.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),i[this.key]=this,e+=1}var e=0,i={};t.prototype.queueTrigger=function(t){this.group.queueTrigger(this,t)},t.prototype.trigger=function(t){this.enabled&&this.callback&&this.callback.apply(this,t)},t.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete i[this.key]},t.prototype.disable=function(){return this.enabled=!1,this},t.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},t.prototype.next=function(){return this.group.next(this)},t.prototype.previous=function(){return this.group.previous(this)},t.invokeAll=function(t){var e=[];for(var o in i)e.push(i[o]);for(var n=0,r=e.length;r>n;n++)e[n][t]()},t.destroyAll=function(){t.invokeAll("destroy")},t.disableAll=function(){t.invokeAll("disable")},t.enableAll=function(){t.Context.refreshAll();for(var e in i)i[e].enabled=!0;return this},t.refreshAll=function(){t.Context.refreshAll()},t.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},t.viewportWidth=function(){return document.documentElement.clientWidth},t.adapters=[],t.defaults={context:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0},t.offsetAliases={"bottom-in-view":function(){return this.context.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.context.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=t}(),function(){"use strict";function t(t){window.setTimeout(t,1e3/60)}function e(t){this.element=t,this.Adapter=n.Adapter,this.adapter=new this.Adapter(t),this.key="waypoint-context-"+i,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},t.waypointContextKey=this.key,o[t.waypointContextKey]=this,i+=1,n.windowContext||(n.windowContext=!0,n.windowContext=new e(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var i=0,o={},n=window.Waypoint,r=window.onload;e.prototype.add=function(t){var e=t.options.horizontal?"horizontal":"vertical";this.waypoints[e][t.key]=t,this.refresh()},e.prototype.checkEmpty=function(){var t=this.Adapter.isEmptyObject(this.waypoints.horizontal),e=this.Adapter.isEmptyObject(this.waypoints.vertical),i=this.element==this.element.window;t&&e&&!i&&(this.adapter.off(".waypoints"),delete o[this.key])},e.prototype.createThrottledResizeHandler=function(){function t(){e.handleResize(),e.didResize=!1}var e=this;this.adapter.on("resize.waypoints",function(){e.didResize||(e.didResize=!0,n.requestAnimationFrame(t))})},e.prototype.createThrottledScrollHandler=function(){function t(){e.handleScroll(),e.didScroll=!1}var e=this;this.adapter.on("scroll.waypoints",function(){(!e.didScroll||n.isTouch)&&(e.didScroll=!0,n.requestAnimationFrame(t))})},e.prototype.handleResize=function(){n.Context.refreshAll()},e.prototype.handleScroll=function(){var t={},e={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};for(var i in e){var o=e[i],n=o.newScroll>o.oldScroll,r=n?o.forward:o.backward;for(var s in this.waypoints[i]){var a=this.waypoints[i][s];if(null!==a.triggerPoint){var l=o.oldScroll<a.triggerPoint,h=o.newScroll>=a.triggerPoint,p=l&&h,u=!l&&!h;(p||u)&&(a.queueTrigger(r),t[a.group.id]=a.group)}}}for(var c in t)t[c].flushTriggers();this.oldScroll={x:e.horizontal.newScroll,y:e.vertical.newScroll}},e.prototype.innerHeight=function(){return this.element==this.element.window?n.viewportHeight():this.adapter.innerHeight()},e.prototype.remove=function(t){delete this.waypoints[t.axis][t.key],this.checkEmpty()},e.prototype.innerWidth=function(){return this.element==this.element.window?n.viewportWidth():this.adapter.innerWidth()},e.prototype.destroy=function(){var t=[];for(var e in this.waypoints)for(var i in this.waypoints[e])t.push(this.waypoints[e][i]);for(var o=0,n=t.length;n>o;o++)t[o].destroy()},e.prototype.refresh=function(){var t,e=this.element==this.element.window,i=e?void 0:this.adapter.offset(),o={};this.handleScroll(),t={horizontal:{contextOffset:e?0:i.left,contextScroll:e?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:e?0:i.top,contextScroll:e?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(var r in t){var s=t[r];for(var a in this.waypoints[r]){var l,h,p,u,c,d=this.waypoints[r][a],f=d.options.offset,w=d.triggerPoint,y=0,g=null==w;d.element!==d.element.window&&(y=d.adapter.offset()[s.offsetProp]),"function"==typeof f?f=f.apply(d):"string"==typeof f&&(f=parseFloat(f),d.options.offset.indexOf("%")>-1&&(f=Math.ceil(s.contextDimension*f/100))),l=s.contextScroll-s.contextOffset,d.triggerPoint=Math.floor(y+l-f),h=w<s.oldScroll,p=d.triggerPoint>=s.oldScroll,u=h&&p,c=!h&&!p,!g&&u?(d.queueTrigger(s.backward),o[d.group.id]=d.group):!g&&c?(d.queueTrigger(s.forward),o[d.group.id]=d.group):g&&s.oldScroll>=d.triggerPoint&&(d.queueTrigger(s.forward),o[d.group.id]=d.group)}}return n.requestAnimationFrame(function(){for(var t in o)o[t].flushTriggers()}),this},e.findOrCreateByElement=function(t){return e.findByElement(t)||new e(t)},e.refreshAll=function(){for(var t in o)o[t].refresh()},e.findByElement=function(t){return o[t.waypointContextKey]},window.onload=function(){r&&r(),e.refreshAll()},n.requestAnimationFrame=function(e){var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||t;i.call(window,e)},n.Context=e}(),function(){"use strict";function t(t,e){return t.triggerPoint-e.triggerPoint}function e(t,e){return e.triggerPoint-t.triggerPoint}function i(t){this.name=t.name,this.axis=t.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),o[this.axis][this.name]=this}var o={vertical:{},horizontal:{}},n=window.Waypoint;i.prototype.add=function(t){this.waypoints.push(t)},i.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},i.prototype.flushTriggers=function(){for(var i in this.triggerQueues){var o=this.triggerQueues[i],n="up"===i||"left"===i;o.sort(n?e:t);for(var r=0,s=o.length;s>r;r+=1){var a=o[r];(a.options.continuous||r===o.length-1)&&a.trigger([i])}}this.clearTriggerQueues()},i.prototype.next=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints),o=i===this.waypoints.length-1;return o?null:this.waypoints[i+1]},i.prototype.previous=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints);return i?this.waypoints[i-1]:null},i.prototype.queueTrigger=function(t,e){this.triggerQueues[e].push(t)},i.prototype.remove=function(t){var e=n.Adapter.inArray(t,this.waypoints);e>-1&&this.waypoints.splice(e,1)},i.prototype.first=function(){return this.waypoints[0]},i.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},i.findOrCreate=function(t){return o[t.axis][t.name]||new i(t)},n.Group=i}(),function(){"use strict";function t(t){this.$element=e(t)}var e=window.jQuery,i=window.Waypoint;e.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(e,i){t.prototype[i]=function(){var t=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,t)}}),e.each(["extend","inArray","isEmptyObject"],function(i,o){t[o]=e[o]}),i.adapters.push({name:"jquery",Adapter:t}),i.Adapter=t}(),function(){"use strict";function t(t){return function(){var i=[],o=arguments[0];return t.isFunction(arguments[0])&&(o=t.extend({},arguments[1]),o.handler=arguments[0]),this.each(function(){var n=t.extend({},o,{element:this});"string"==typeof n.context&&(n.context=t(this).closest(n.context)[0]),i.push(new e(n))}),i}}var e=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=t(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=t(window.Zepto))}();
3
+
4
+ /*! Velocity.min.js (1.5.0)*/
5
+ !function(a){"use strict";function b(a){var b=a.length,d=c.type(a);return"function"!==d&&!c.isWindow(a)&&(!(1!==a.nodeType||!b)||("array"===d||0===b||"number"==typeof b&&b>0&&b-1 in a))}if(!a.jQuery){var c=function(a,b){return new c.fn.init(a,b)};c.isWindow=function(a){return a&&a===a.window},c.type=function(a){return a?"object"==typeof a||"function"==typeof a?e[g.call(a)]||"object":typeof a:a+""},c.isArray=Array.isArray||function(a){return"array"===c.type(a)},c.isPlainObject=function(a){var b;if(!a||"object"!==c.type(a)||a.nodeType||c.isWindow(a))return!1;try{if(a.constructor&&!f.call(a,"constructor")&&!f.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(d){return!1}for(b in a);return b===undefined||f.call(a,b)},c.each=function(a,c,d){var e=0,f=a.length,g=b(a);if(d){if(g)for(;e<f&&c.apply(a[e],d)!==!1;e++);else for(e in a)if(a.hasOwnProperty(e)&&c.apply(a[e],d)===!1)break}else if(g)for(;e<f&&c.call(a[e],e,a[e])!==!1;e++);else for(e in a)if(a.hasOwnProperty(e)&&c.call(a[e],e,a[e])===!1)break;return a},c.data=function(a,b,e){if(e===undefined){var f=a[c.expando],g=f&&d[f];if(b===undefined)return g;if(g&&b in g)return g[b]}else if(b!==undefined){var h=a[c.expando]||(a[c.expando]=++c.uuid);return d[h]=d[h]||{},d[h][b]=e,e}},c.removeData=function(a,b){var e=a[c.expando],f=e&&d[e];f&&(b?c.each(b,function(a,b){delete f[b]}):delete d[e])},c.extend=function(){var a,b,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;for("boolean"==typeof h&&(k=h,h=arguments[i]||{},i++),"object"!=typeof h&&"function"!==c.type(h)&&(h={}),i===j&&(h=this,i--);i<j;i++)if(f=arguments[i])for(e in f)f.hasOwnProperty(e)&&(a=h[e],d=f[e],h!==d&&(k&&d&&(c.isPlainObject(d)||(b=c.isArray(d)))?(b?(b=!1,g=a&&c.isArray(a)?a:[]):g=a&&c.isPlainObject(a)?a:{},h[e]=c.extend(k,g,d)):d!==undefined&&(h[e]=d)));return h},c.queue=function(a,d,e){if(a){d=(d||"fx")+"queue";var f=c.data(a,d);return e?(!f||c.isArray(e)?f=c.data(a,d,function(a,c){var d=c||[];return a&&(b(Object(a))?function(a,b){for(var c=+b.length,d=0,e=a.length;d<c;)a[e++]=b[d++];if(c!==c)for(;b[d]!==undefined;)a[e++]=b[d++];a.length=e,a}(d,"string"==typeof a?[a]:a):[].push.call(d,a)),d}(e)):f.push(e),f):f||[]}},c.dequeue=function(a,b){c.each(a.nodeType?[a]:a,function(a,d){b=b||"fx";var e=c.queue(d,b),f=e.shift();"inprogress"===f&&(f=e.shift()),f&&("fx"===b&&e.unshift("inprogress"),f.call(d,function(){c.dequeue(d,b)}))})},c.fn=c.prototype={init:function(a){if(a.nodeType)return this[0]=a,this;throw new Error("Not a DOM node.")},offset:function(){var b=this[0].getBoundingClientRect?this[0].getBoundingClientRect():{top:0,left:0};return{top:b.top+(a.pageYOffset||document.scrollTop||0)-(document.clientTop||0),left:b.left+(a.pageXOffset||document.scrollLeft||0)-(document.clientLeft||0)}},position:function(){var a=this[0],b=function(a){for(var b=a.offsetParent;b&&"html"!==b.nodeName.toLowerCase()&&b.style&&"static"===b.style.position;)b=b.offsetParent;return b||document}(a),d=this.offset(),e=/^(?:body|html)$/i.test(b.nodeName)?{top:0,left:0}:c(b).offset();return d.top-=parseFloat(a.style.marginTop)||0,d.left-=parseFloat(a.style.marginLeft)||0,b.style&&(e.top+=parseFloat(b.style.borderTopWidth)||0,e.left+=parseFloat(b.style.borderLeftWidth)||0),{top:d.top-e.top,left:d.left-e.left}}};var d={};c.expando="velocity"+(new Date).getTime(),c.uuid=0;for(var e={},f=e.hasOwnProperty,g=e.toString,h="Boolean Number String Function Array Date RegExp Object Error".split(" "),i=0;i<h.length;i++)e["[object "+h[i]+"]"]=h[i].toLowerCase();c.fn.init.prototype=c.fn,a.Velocity={Utilities:c}}}(window),function(a){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a():"function"==typeof define&&define.amd?define(a):a()}(function(){"use strict";return function(a,b,c,d){function e(a){for(var b=-1,c=a?a.length:0,d=[];++b<c;){var e=a[b];e&&d.push(e)}return d}function f(a){return u.isWrapped(a)?a=s.call(a):u.isNode(a)&&(a=[a]),a}function g(a){var b=o.data(a,"velocity");return null===b?d:b}function h(a,b){var c=g(a);c&&c.delayTimer&&!c.delayPaused&&(c.delayRemaining=c.delay-b+c.delayBegin,c.delayPaused=!0,clearTimeout(c.delayTimer.setTimeout))}function i(a,b){var c=g(a);c&&c.delayTimer&&c.delayPaused&&(c.delayPaused=!1,c.delayTimer.setTimeout=setTimeout(c.delayTimer.next,c.delayRemaining))}function j(a){return function(b){return Math.round(b*a)*(1/a)}}function k(a,c,d,e){function f(a,b){return 1-3*b+3*a}function g(a,b){return 3*b-6*a}function h(a){return 3*a}function i(a,b,c){return((f(b,c)*a+g(b,c))*a+h(b))*a}function j(a,b,c){return 3*f(b,c)*a*a+2*g(b,c)*a+h(b)}function k(b,c){for(var e=0;e<p;++e){var f=j(c,a,d);if(0===f)return c;c-=(i(c,a,d)-b)/f}return c}function l(){for(var b=0;b<t;++b)x[b]=i(b*u,a,d)}function m(b,c,e){var f,g,h=0;do{g=c+(e-c)/2,f=i(g,a,d)-b,f>0?e=g:c=g}while(Math.abs(f)>r&&++h<s);return g}function n(b){for(var c=0,e=1,f=t-1;e!==f&&x[e]<=b;++e)c+=u;--e;var g=(b-x[e])/(x[e+1]-x[e]),h=c+g*u,i=j(h,a,d);return i>=q?k(b,h):0===i?h:m(b,c,c+u)}function o(){y=!0,a===c&&d===e||l()}var p=4,q=.001,r=1e-7,s=10,t=11,u=1/(t-1),v="Float32Array"in b;if(4!==arguments.length)return!1;for(var w=0;w<4;++w)if("number"!=typeof arguments[w]||isNaN(arguments[w])||!isFinite(arguments[w]))return!1;a=Math.min(a,1),d=Math.min(d,1),a=Math.max(a,0),d=Math.max(d,0);var x=v?new Float32Array(t):new Array(t),y=!1,z=function(b){return y||o(),a===c&&d===e?b:0===b?0:1===b?1:i(n(b),c,e)};z.getControlPoints=function(){return[{x:a,y:c},{x:d,y:e}]};var A="generateBezier("+[a,c,d,e]+")";return z.toString=function(){return A},z}function l(a,b){var c=a;return u.isString(a)?y.Easings[a]||(c=!1):c=u.isArray(a)&&1===a.length?j.apply(null,a):u.isArray(a)&&2===a.length?z.apply(null,a.concat([b])):!(!u.isArray(a)||4!==a.length)&&k.apply(null,a),c===!1&&(c=y.Easings[y.defaults.easing]?y.defaults.easing:x),c}function m(a){if(a){var b=y.timestamp&&a!==!0?a:r.now(),c=y.State.calls.length;c>1e4&&(y.State.calls=e(y.State.calls),c=y.State.calls.length);for(var f=0;f<c;f++)if(y.State.calls[f]){var h=y.State.calls[f],i=h[0],j=h[2],k=h[3],l=!!k,q=null,s=h[5],t=h[6];if(k||(k=y.State.calls[f][3]=b-16),s){if(s.resume!==!0)continue;k=h[3]=Math.round(b-t-16),h[5]=null}t=h[6]=b-k;for(var v=Math.min(t/j.duration,1),w=0,x=i.length;w<x;w++){var z=i[w],B=z.element;if(g(B)){var D=!1;if(j.display!==d&&null!==j.display&&"none"!==j.display){if("flex"===j.display){var E=["-webkit-box","-moz-box","-ms-flexbox","-webkit-flex"];o.each(E,function(a,b){A.setPropertyValue(B,"display",b)})}A.setPropertyValue(B,"display",j.display)}j.visibility!==d&&"hidden"!==j.visibility&&A.setPropertyValue(B,"visibility",j.visibility);for(var F in z)if(z.hasOwnProperty(F)&&"element"!==F){var G,H=z[F],I=u.isString(H.easing)?y.Easings[H.easing]:H.easing;if(u.isString(H.pattern)){var J=1===v?function(a,b,c){var d=H.endValue[b];return c?Math.round(d):d}:function(a,b,c){var d=H.startValue[b],e=H.endValue[b]-d,f=d+e*I(v,j,e);return c?Math.round(f):f};G=H.pattern.replace(/{(\d+)(!)?}/g,J)}else if(1===v)G=H.endValue;else{var K=H.endValue-H.startValue;G=H.startValue+K*I(v,j,K)}if(!l&&G===H.currentValue)continue;if(H.currentValue=G,"tween"===F)q=G;else{var L;if(A.Hooks.registered[F]){L=A.Hooks.getRoot(F);var M=g(B).rootPropertyValueCache[L];M&&(H.rootPropertyValue=M)}var N=A.setPropertyValue(B,F,H.currentValue+(p<9&&0===parseFloat(G)?"":H.unitType),H.rootPropertyValue,H.scrollData);A.Hooks.registered[F]&&(A.Normalizations.registered[L]?g(B).rootPropertyValueCache[L]=A.Normalizations.registered[L]("extract",null,N[1]):g(B).rootPropertyValueCache[L]=N[1]),"transform"===N[0]&&(D=!0)}}j.mobileHA&&g(B).transformCache.translate3d===d&&(g(B).transformCache.translate3d="(0px, 0px, 0px)",D=!0),D&&A.flushTransformCache(B)}}j.display!==d&&"none"!==j.display&&(y.State.calls[f][2].display=!1),j.visibility!==d&&"hidden"!==j.visibility&&(y.State.calls[f][2].visibility=!1),j.progress&&j.progress.call(h[1],h[1],v,Math.max(0,k+j.duration-b),k,q),1===v&&n(f)}}y.State.isTicking&&C(m)}function n(a,b){if(!y.State.calls[a])return!1;for(var c=y.State.calls[a][0],e=y.State.calls[a][1],f=y.State.calls[a][2],h=y.State.calls[a][4],i=!1,j=0,k=c.length;j<k;j++){var l=c[j].element;b||f.loop||("none"===f.display&&A.setPropertyValue(l,"display",f.display),"hidden"===f.visibility&&A.setPropertyValue(l,"visibility",f.visibility));var m=g(l);if(f.loop!==!0&&(o.queue(l)[1]===d||!/\.velocityQueueEntryFlag/i.test(o.queue(l)[1]))&&m){m.isAnimating=!1,m.rootPropertyValueCache={};var n=!1;o.each(A.Lists.transforms3D,function(a,b){var c=/^scale/.test(b)?1:0,e=m.transformCache[b];m.transformCache[b]!==d&&new RegExp("^\\("+c+"[^.]").test(e)&&(n=!0,delete m.transformCache[b])}),f.mobileHA&&(n=!0,delete m.transformCache.translate3d),n&&A.flushTransformCache(l),A.Values.removeClass(l,"velocity-animating")}if(!b&&f.complete&&!f.loop&&j===k-1)try{f.complete.call(e,e)}catch(r){setTimeout(function(){throw r},1)}h&&f.loop!==!0&&h(e),m&&f.loop===!0&&!b&&(o.each(m.tweensContainer,function(a,b){if(/^rotate/.test(a)&&(parseFloat(b.startValue)-parseFloat(b.endValue))%360==0){var c=b.startValue;b.startValue=b.endValue,b.endValue=c}/^backgroundPosition/.test(a)&&100===parseFloat(b.endValue)&&"%"===b.unitType&&(b.endValue=0,b.startValue=100)}),y(l,"reverse",{loop:!0,delay:f.delay})),f.queue!==!1&&o.dequeue(l,f.queue)}y.State.calls[a]=!1;for(var p=0,q=y.State.calls.length;p<q;p++)if(y.State.calls[p]!==!1){i=!0;break}i===!1&&(y.State.isTicking=!1,delete y.State.calls,y.State.calls=[])}var o,p=function(){if(c.documentMode)return c.documentMode;for(var a=7;a>4;a--){var b=c.createElement("div");if(b.innerHTML="<!--[if IE "+a+"]><span></span><![endif]-->",b.getElementsByTagName("span").length)return b=null,a}return d}(),q=function(){var a=0;return b.webkitRequestAnimationFrame||b.mozRequestAnimationFrame||function(b){var c,d=(new Date).getTime();return c=Math.max(0,16-(d-a)),a=d+c,setTimeout(function(){b(d+c)},c)}}(),r=function(){var a=b.performance||{};if("function"!=typeof a.now){var c=a.timing&&a.timing.navigationStart?a.timing.navigationStart:(new Date).getTime();a.now=function(){return(new Date).getTime()-c}}return a}(),s=function(){var a=Array.prototype.slice;try{return a.call(c.documentElement),a}catch(b){return function(b,c){var d=this.length;if("number"!=typeof b&&(b=0),"number"!=typeof c&&(c=d),this.slice)return a.call(this,b,c);var e,f=[],g=b>=0?b:Math.max(0,d+b),h=c<0?d+c:Math.min(c,d),i=h-g;if(i>0)if(f=new Array(i),this.charAt)for(e=0;e<i;e++)f[e]=this.charAt(g+e);else for(e=0;e<i;e++)f[e]=this[g+e];return f}}}(),t=function(){return Array.prototype.includes?function(a,b){return a.includes(b)}:Array.prototype.indexOf?function(a,b){return a.indexOf(b)>=0}:function(a,b){for(var c=0;c<a.length;c++)if(a[c]===b)return!0;return!1}},u={isNumber:function(a){return"number"==typeof a},isString:function(a){return"string"==typeof a},isArray:Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},isFunction:function(a){return"[object Function]"===Object.prototype.toString.call(a)},isNode:function(a){return a&&a.nodeType},isWrapped:function(a){return a&&a!==b&&u.isNumber(a.length)&&!u.isString(a)&&!u.isFunction(a)&&!u.isNode(a)&&(0===a.length||u.isNode(a[0]))},isSVG:function(a){return b.SVGElement&&a instanceof b.SVGElement},isEmptyObject:function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}},v=!1;if(a.fn&&a.fn.jquery?(o=a,v=!0):o=b.Velocity.Utilities,p<=8&&!v)throw new Error("Velocity: IE8 and below require jQuery to be loaded before Velocity.");if(p<=7)return void(jQuery.fn.velocity=jQuery.fn.animate);var w=400,x="swing",y={State:{isMobile:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),isAndroid:/Android/i.test(navigator.userAgent),isGingerbread:/Android 2\.3\.[3-7]/i.test(navigator.userAgent),isChrome:b.chrome,isFirefox:/Firefox/i.test(navigator.userAgent),prefixElement:c.createElement("div"),prefixMatches:{},scrollAnchor:null,scrollPropertyLeft:null,scrollPropertyTop:null,isTicking:!1,calls:[],delayedElements:{count:0}},CSS:{},Utilities:o,Redirects:{},Easings:{},Promise:b.Promise,defaults:{queue:"",duration:w,easing:x,begin:d,complete:d,progress:d,display:d,visibility:d,loop:!1,delay:!1,mobileHA:!0,_cacheValues:!0,promiseRejectEmpty:!0},init:function(a){o.data(a,"velocity",{isSVG:u.isSVG(a),isAnimating:!1,computedStyle:null,tweensContainer:null,rootPropertyValueCache:{},transformCache:{}})},hook:null,mock:!1,version:{major:1,minor:5,patch:0},debug:!1,timestamp:!0,pauseAll:function(a){var b=(new Date).getTime();o.each(y.State.calls,function(b,c){if(c){if(a!==d&&(c[2].queue!==a||c[2].queue===!1))return!0;c[5]={resume:!1}}}),o.each(y.State.delayedElements,function(a,c){c&&h(c,b)})},resumeAll:function(a){var b=(new Date).getTime();o.each(y.State.calls,function(b,c){if(c){if(a!==d&&(c[2].queue!==a||c[2].queue===!1))return!0;c[5]&&(c[5].resume=!0)}}),o.each(y.State.delayedElements,function(a,c){c&&i(c,b)})}};b.pageYOffset!==d?(y.State.scrollAnchor=b,y.State.scrollPropertyLeft="pageXOffset",y.State.scrollPropertyTop="pageYOffset"):(y.State.scrollAnchor=c.documentElement||c.body.parentNode||c.body,y.State.scrollPropertyLeft="scrollLeft",y.State.scrollPropertyTop="scrollTop");var z=function(){function a(a){return-a.tension*a.x-a.friction*a.v}function b(b,c,d){var e={x:b.x+d.dx*c,v:b.v+d.dv*c,tension:b.tension,friction:b.friction};return{dx:e.v,dv:a(e)}}function c(c,d){var e={dx:c.v,dv:a(c)},f=b(c,.5*d,e),g=b(c,.5*d,f),h=b(c,d,g),i=1/6*(e.dx+2*(f.dx+g.dx)+h.dx),j=1/6*(e.dv+2*(f.dv+g.dv)+h.dv);return c.x=c.x+i*d,c.v=c.v+j*d,c}return function d(a,b,e){var f,g,h,i={x:-1,v:0,tension:null,friction:null},j=[0],k=0;for(a=parseFloat(a)||500,b=parseFloat(b)||20,e=e||null,i.tension=a,i.friction=b,f=null!==e,f?(k=d(a,b),g=k/e*.016):g=.016;;)if(h=c(h||i,g),j.push(1+h.x),k+=16,!(Math.abs(h.x)>1e-4&&Math.abs(h.v)>1e-4))break;return f?function(a){return j[a*(j.length-1)|0]}:k}}();y.Easings={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},spring:function(a){return 1-Math.cos(4.5*a*Math.PI)*Math.exp(6*-a)}},o.each([["ease",[.25,.1,.25,1]],["ease-in",[.42,0,1,1]],["ease-out",[0,0,.58,1]],["ease-in-out",[.42,0,.58,1]],["easeInSine",[.47,0,.745,.715]],["easeOutSine",[.39,.575,.565,1]],["easeInOutSine",[.445,.05,.55,.95]],["easeInQuad",[.55,.085,.68,.53]],["easeOutQuad",[.25,.46,.45,.94]],["easeInOutQuad",[.455,.03,.515,.955]],["easeInCubic",[.55,.055,.675,.19]],["easeOutCubic",[.215,.61,.355,1]],["easeInOutCubic",[.645,.045,.355,1]],["easeInQuart",[.895,.03,.685,.22]],["easeOutQuart",[.165,.84,.44,1]],["easeInOutQuart",[.77,0,.175,1]],["easeInQuint",[.755,.05,.855,.06]],["easeOutQuint",[.23,1,.32,1]],["easeInOutQuint",[.86,0,.07,1]],["easeInExpo",[.95,.05,.795,.035]],["easeOutExpo",[.19,1,.22,1]],["easeInOutExpo",[1,0,0,1]],["easeInCirc",[.6,.04,.98,.335]],["easeOutCirc",[.075,.82,.165,1]],["easeInOutCirc",[.785,.135,.15,.86]]],function(a,b){y.Easings[b[0]]=k.apply(null,b[1])});var A=y.CSS={RegEx:{isHex:/^#([A-f\d]{3}){1,2}$/i,valueUnwrap:/^[A-z]+\((.*)\)$/i,wrappedValueAlreadyExtracted:/[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/,valueSplit:/([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi},Lists:{colors:["fill","stroke","stopColor","color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor"],transformsBase:["translateX","translateY","scale","scaleX","scaleY","skewX","skewY","rotateZ"],transforms3D:["transformPerspective","translateZ","scaleZ","rotateX","rotateY"],units:["%","em","ex","ch","rem","vw","vh","vmin","vmax","cm","mm","Q","in","pc","pt","px","deg","grad","rad","turn","s","ms"],colorNames:{aliceblue:"240,248,255",antiquewhite:"250,235,215",aquamarine:"127,255,212",aqua:"0,255,255",azure:"240,255,255",beige:"245,245,220",bisque:"255,228,196",black:"0,0,0",blanchedalmond:"255,235,205",blueviolet:"138,43,226",blue:"0,0,255",brown:"165,42,42",burlywood:"222,184,135",cadetblue:"95,158,160",chartreuse:"127,255,0",chocolate:"210,105,30",coral:"255,127,80",cornflowerblue:"100,149,237",cornsilk:"255,248,220",crimson:"220,20,60",cyan:"0,255,255",darkblue:"0,0,139",darkcyan:"0,139,139",darkgoldenrod:"184,134,11",darkgray:"169,169,169",darkgrey:"169,169,169",darkgreen:"0,100,0",darkkhaki:"189,183,107",darkmagenta:"139,0,139",darkolivegreen:"85,107,47",darkorange:"255,140,0",darkorchid:"153,50,204",darkred:"139,0,0",darksalmon:"233,150,122",darkseagreen:"143,188,143",darkslateblue:"72,61,139",darkslategray:"47,79,79",darkturquoise:"0,206,209",darkviolet:"148,0,211",deeppink:"255,20,147",deepskyblue:"0,191,255",dimgray:"105,105,105",dimgrey:"105,105,105",dodgerblue:"30,144,255",firebrick:"178,34,34",floralwhite:"255,250,240",forestgreen:"34,139,34",fuchsia:"255,0,255",gainsboro:"220,220,220",ghostwhite:"248,248,255",gold:"255,215,0",goldenrod:"218,165,32",gray:"128,128,128",grey:"128,128,128",greenyellow:"173,255,47",green:"0,128,0",honeydew:"240,255,240",hotpink:"255,105,180",indianred:"205,92,92",indigo:"75,0,130",ivory:"255,255,240",khaki:"240,230,140",lavenderblush:"255,240,245",lavender:"230,230,250",lawngreen:"124,252,0",lemonchiffon:"255,250,205",lightblue:"173,216,230",lightcoral:"240,128,128",lightcyan:"224,255,255",lightgoldenrodyellow:"250,250,210",lightgray:"211,211,211",lightgrey:"211,211,211",lightgreen:"144,238,144",lightpink:"255,182,193",lightsalmon:"255,160,122",lightseagreen:"32,178,170",lightskyblue:"135,206,250",lightslategray:"119,136,153",lightsteelblue:"176,196,222",lightyellow:"255,255,224",limegreen:"50,205,50",lime:"0,255,0",linen:"250,240,230",magenta:"255,0,255",maroon:"128,0,0",mediumaquamarine:"102,205,170",mediumblue:"0,0,205",mediumorchid:"186,85,211",mediumpurple:"147,112,219",mediumseagreen:"60,179,113",mediumslateblue:"123,104,238",mediumspringgreen:"0,250,154",mediumturquoise:"72,209,204",mediumvioletred:"199,21,133",midnightblue:"25,25,112",mintcream:"245,255,250",mistyrose:"255,228,225",moccasin:"255,228,181",navajowhite:"255,222,173",navy:"0,0,128",oldlace:"253,245,230",olivedrab:"107,142,35",olive:"128,128,0",orangered:"255,69,0",orange:"255,165,0",orchid:"218,112,214",palegoldenrod:"238,232,170",palegreen:"152,251,152",paleturquoise:"175,238,238",palevioletred:"219,112,147",papayawhip:"255,239,213",peachpuff:"255,218,185",peru:"205,133,63",pink:"255,192,203",plum:"221,160,221",powderblue:"176,224,230",purple:"128,0,128",red:"255,0,0",rosybrown:"188,143,143",royalblue:"65,105,225",saddlebrown:"139,69,19",salmon:"250,128,114",sandybrown:"244,164,96",seagreen:"46,139,87",seashell:"255,245,238",sienna:"160,82,45",silver:"192,192,192",skyblue:"135,206,235",slateblue:"106,90,205",slategray:"112,128,144",snow:"255,250,250",springgreen:"0,255,127",steelblue:"70,130,180",tan:"210,180,140",teal:"0,128,128",thistle:"216,191,216",tomato:"255,99,71",turquoise:"64,224,208",violet:"238,130,238",wheat:"245,222,179",whitesmoke:"245,245,245",white:"255,255,255",yellowgreen:"154,205,50",yellow:"255,255,0"}},Hooks:{templates:{textShadow:["Color X Y Blur","black 0px 0px 0px"],boxShadow:["Color X Y Blur Spread","black 0px 0px 0px 0px"],clip:["Top Right Bottom Left","0px 0px 0px 0px"],backgroundPosition:["X Y","0% 0%"],transformOrigin:["X Y Z","50% 50% 0px"],perspectiveOrigin:["X Y","50% 50%"]},registered:{},register:function(){for(var a=0;a<A.Lists.colors.length;a++){var b="color"===A.Lists.colors[a]?"0 0 0 1":"255 255 255 1";A.Hooks.templates[A.Lists.colors[a]]=["Red Green Blue Alpha",b]}var c,d,e;if(p)for(c in A.Hooks.templates)if(A.Hooks.templates.hasOwnProperty(c)){d=A.Hooks.templates[c],e=d[0].split(" ");var f=d[1].match(A.RegEx.valueSplit);"Color"===e[0]&&(e.push(e.shift()),f.push(f.shift()),A.Hooks.templates[c]=[e.join(" "),f.join(" ")])}for(c in A.Hooks.templates)if(A.Hooks.templates.hasOwnProperty(c)){d=A.Hooks.templates[c],e=d[0].split(" ");for(var g in e)if(e.hasOwnProperty(g)){var h=c+e[g],i=g;A.Hooks.registered[h]=[c,i]}}},getRoot:function(a){var b=A.Hooks.registered[a];return b?b[0]:a},getUnit:function(a,b){var c=(a.substr(b||0,5).match(/^[a-z%]+/)||[])[0]||"";return c&&t(A.Lists.units,c)?c:""},fixColors:function(a){return a.replace(/(rgba?\(\s*)?(\b[a-z]+\b)/g,function(a,b,c){return A.Lists.colorNames.hasOwnProperty(c)?(b?b:"rgba(")+A.Lists.colorNames[c]+(b?"":",1)"):b+c})},cleanRootPropertyValue:function(a,b){return A.RegEx.valueUnwrap.test(b)&&(b=b.match(A.RegEx.valueUnwrap)[1]),A.Values.isCSSNullValue(b)&&(b=A.Hooks.templates[a][1]),b},extractValue:function(a,b){var c=A.Hooks.registered[a];if(c){var d=c[0],e=c[1];return b=A.Hooks.cleanRootPropertyValue(d,b),b.toString().match(A.RegEx.valueSplit)[e]}return b},injectValue:function(a,b,c){var d=A.Hooks.registered[a];if(d){var e,f=d[0],g=d[1];return c=A.Hooks.cleanRootPropertyValue(f,c),e=c.toString().match(A.RegEx.valueSplit),e[g]=b,e.join(" ")}return c}},Normalizations:{registered:{clip:function(a,b,c){switch(a){case"name":return"clip";case"extract":var d;return A.RegEx.wrappedValueAlreadyExtracted.test(c)?d=c:(d=c.toString().match(A.RegEx.valueUnwrap),d=d?d[1].replace(/,(\s+)?/g," "):c),d;case"inject":return"rect("+c+")"}},blur:function(a,b,c){switch(a){case"name":return y.State.isFirefox?"filter":"-webkit-filter";case"extract":var d=parseFloat(c);if(!d&&0!==d){var e=c.toString().match(/blur\(([0-9]+[A-z]+)\)/i);d=e?e[1]:0}return d;case"inject":return parseFloat(c)?"blur("+c+")":"none"}},opacity:function(a,b,c){if(p<=8)switch(a){case"name":return"filter";case"extract":var d=c.toString().match(/alpha\(opacity=(.*)\)/i);return c=d?d[1]/100:1;case"inject":return b.style.zoom=1,parseFloat(c)>=1?"":"alpha(opacity="+parseInt(100*parseFloat(c),10)+")"}else switch(a){case"name":return"opacity";case"extract":return c;case"inject":return c}}},register:function(){function a(a,b,c){if("border-box"===A.getPropertyValue(b,"boxSizing").toString().toLowerCase()===(c||!1)){var d,e,f=0,g="width"===a?["Left","Right"]:["Top","Bottom"],h=["padding"+g[0],"padding"+g[1],"border"+g[0]+"Width","border"+g[1]+"Width"];for(d=0;d<h.length;d++)e=parseFloat(A.getPropertyValue(b,h[d])),isNaN(e)||(f+=e);return c?-f:f}return 0}function b(b,c){return function(d,e,f){switch(d){case"name":return b;case"extract":return parseFloat(f)+a(b,e,c);case"inject":return parseFloat(f)-a(b,e,c)+"px"}}}p&&!(p>9)||y.State.isGingerbread||(A.Lists.transformsBase=A.Lists.transformsBase.concat(A.Lists.transforms3D));for(var c=0;c<A.Lists.transformsBase.length;c++)!function(){var a=A.Lists.transformsBase[c];A.Normalizations.registered[a]=function(b,c,e){switch(b){case"name":return"transform";case"extract":return g(c)===d||g(c).transformCache[a]===d?/^scale/i.test(a)?1:0:g(c).transformCache[a].replace(/[()]/g,"");case"inject":var f=!1;switch(a.substr(0,a.length-1)){case"translate":f=!/(%|px|em|rem|vw|vh|\d)$/i.test(e);break;case"scal":case"scale":y.State.isAndroid&&g(c).transformCache[a]===d&&e<1&&(e=1),f=!/(\d)$/i.test(e);break;case"skew":f=!/(deg|\d)$/i.test(e);break;case"rotate":f=!/(deg|\d)$/i.test(e)}return f||(g(c).transformCache[a]="("+e+")"),g(c).transformCache[a]}}}();for(var e=0;e<A.Lists.colors.length;e++)!function(){var a=A.Lists.colors[e];A.Normalizations.registered[a]=function(b,c,e){switch(b){case"name":return a;case"extract":var f;if(A.RegEx.wrappedValueAlreadyExtracted.test(e))f=e;else{var g,h={black:"rgb(0, 0, 0)",blue:"rgb(0, 0, 255)",gray:"rgb(128, 128, 128)",green:"rgb(0, 128, 0)",red:"rgb(255, 0, 0)",white:"rgb(255, 255, 255)"};/^[A-z]+$/i.test(e)?g=h[e]!==d?h[e]:h.black:A.RegEx.isHex.test(e)?g="rgb("+A.Values.hexToRgb(e).join(" ")+")":/^rgba?\(/i.test(e)||(g=h.black),f=(g||e).toString().match(A.RegEx.valueUnwrap)[1].replace(/,(\s+)?/g," ")}return(!p||p>8)&&3===f.split(" ").length&&(f+=" 1"),f;case"inject":return/^rgb/.test(e)?e:(p<=8?4===e.split(" ").length&&(e=e.split(/\s+/).slice(0,3).join(" ")):3===e.split(" ").length&&(e+=" 1"),(p<=8?"rgb":"rgba")+"("+e.replace(/\s+/g,",").replace(/\.(\d)+(?=,)/g,"")+")")}}}();A.Normalizations.registered.innerWidth=b("width",!0),A.Normalizations.registered.innerHeight=b("height",!0),A.Normalizations.registered.outerWidth=b("width"),A.Normalizations.registered.outerHeight=b("height")}},Names:{camelCase:function(a){return a.replace(/-(\w)/g,function(a,b){return b.toUpperCase()})},SVGAttribute:function(a){var b="width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2";return(p||y.State.isAndroid&&!y.State.isChrome)&&(b+="|transform"),new RegExp("^("+b+")$","i").test(a)},prefixCheck:function(a){if(y.State.prefixMatches[a])return[y.State.prefixMatches[a],!0];for(var b=["","Webkit","Moz","ms","O"],c=0,d=b.length;c<d;c++){var e;if(e=0===c?a:b[c]+a.replace(/^\w/,function(a){return a.toUpperCase()}),u.isString(y.State.prefixElement.style[e]))return y.State.prefixMatches[a]=e,[e,!0]}return[a,!1]}},Values:{hexToRgb:function(a){var b,c=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i;return a=a.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(a,b,c,d){return b+b+c+c+d+d}),b=c.exec(a),b?[parseInt(b[1],16),parseInt(b[2],16),parseInt(b[3],16)]:[0,0,0]},isCSSNullValue:function(a){return!a||/^(none|auto|transparent|(rgba\(0, ?0, ?0, ?0\)))$/i.test(a)},getUnitType:function(a){return/^(rotate|skew)/i.test(a)?"deg":/(^(scale|scaleX|scaleY|scaleZ|alpha|flexGrow|flexHeight|zIndex|fontWeight)$)|((opacity|red|green|blue|alpha)$)/i.test(a)?"":"px"},getDisplayType:function(a){var b=a&&a.tagName.toString().toLowerCase();return/^(b|big|i|small|tt|abbr|acronym|cite|code|dfn|em|kbd|strong|samp|var|a|bdo|br|img|map|object|q|script|span|sub|sup|button|input|label|select|textarea)$/i.test(b)?"inline":/^(li)$/i.test(b)?"list-item":/^(tr)$/i.test(b)?"table-row":/^(table)$/i.test(b)?"table":/^(tbody)$/i.test(b)?"table-row-group":"block"},addClass:function(a,b){if(a)if(a.classList)a.classList.add(b);else if(u.isString(a.className))a.className+=(a.className.length?" ":"")+b;else{var c=a.getAttribute(p<=7?"className":"class")||"";a.setAttribute("class",c+(c?" ":"")+b)}},removeClass:function(a,b){if(a)if(a.classList)a.classList.remove(b);else if(u.isString(a.className))a.className=a.className.toString().replace(new RegExp("(^|\\s)"+b.split(" ").join("|")+"(\\s|$)","gi")," ");else{var c=a.getAttribute(p<=7?"className":"class")||"";a.setAttribute("class",c.replace(new RegExp("(^|s)"+b.split(" ").join("|")+"(s|$)","gi")," "))}}},getPropertyValue:function(a,c,e,f){function h(a,c){var e=0;if(p<=8)e=o.css(a,c);else{var i=!1;/^(width|height)$/.test(c)&&0===A.getPropertyValue(a,"display")&&(i=!0,A.setPropertyValue(a,"display",A.Values.getDisplayType(a)));var j=function(){i&&A.setPropertyValue(a,"display","none")};if(!f){if("height"===c&&"border-box"!==A.getPropertyValue(a,"boxSizing").toString().toLowerCase()){var k=a.offsetHeight-(parseFloat(A.getPropertyValue(a,"borderTopWidth"))||0)-(parseFloat(A.getPropertyValue(a,"borderBottomWidth"))||0)-(parseFloat(A.getPropertyValue(a,"paddingTop"))||0)-(parseFloat(A.getPropertyValue(a,"paddingBottom"))||0);return j(),k}if("width"===c&&"border-box"!==A.getPropertyValue(a,"boxSizing").toString().toLowerCase()){var l=a.offsetWidth-(parseFloat(A.getPropertyValue(a,"borderLeftWidth"))||0)-(parseFloat(A.getPropertyValue(a,"borderRightWidth"))||0)-(parseFloat(A.getPropertyValue(a,"paddingLeft"))||0)-(parseFloat(A.getPropertyValue(a,"paddingRight"))||0);return j(),l}}var m;m=g(a)===d?b.getComputedStyle(a,null):g(a).computedStyle?g(a).computedStyle:g(a).computedStyle=b.getComputedStyle(a,null),"borderColor"===c&&(c="borderTopColor"),e=9===p&&"filter"===c?m.getPropertyValue(c):m[c],""!==e&&null!==e||(e=a.style[c]),j()}if("auto"===e&&/^(top|right|bottom|left)$/i.test(c)){var n=h(a,"position");("fixed"===n||"absolute"===n&&/top|left/i.test(c))&&(e=o(a).position()[c]+"px")}return e}var i;if(A.Hooks.registered[c]){var j=c,k=A.Hooks.getRoot(j);e===d&&(e=A.getPropertyValue(a,A.Names.prefixCheck(k)[0])),A.Normalizations.registered[k]&&(e=A.Normalizations.registered[k]("extract",a,e)),i=A.Hooks.extractValue(j,e)}else if(A.Normalizations.registered[c]){var l,m;l=A.Normalizations.registered[c]("name",a),"transform"!==l&&(m=h(a,A.Names.prefixCheck(l)[0]),A.Values.isCSSNullValue(m)&&A.Hooks.templates[c]&&(m=A.Hooks.templates[c][1])),i=A.Normalizations.registered[c]("extract",a,m)}if(!/^[\d-]/.test(i)){var n=g(a);if(n&&n.isSVG&&A.Names.SVGAttribute(c))if(/^(height|width)$/i.test(c))try{i=a.getBBox()[c]}catch(q){i=0}else i=a.getAttribute(c);else i=h(a,A.Names.prefixCheck(c)[0])}return A.Values.isCSSNullValue(i)&&(i=0),y.debug>=2&&console.log("Get "+c+": "+i),i},setPropertyValue:function(a,c,d,e,f){var h=c;if("scroll"===c)f.container?f.container["scroll"+f.direction]=d:"Left"===f.direction?b.scrollTo(d,f.alternateValue):b.scrollTo(f.alternateValue,d);else if(A.Normalizations.registered[c]&&"transform"===A.Normalizations.registered[c]("name",a))A.Normalizations.registered[c]("inject",a,d),h="transform",d=g(a).transformCache[c];else{if(A.Hooks.registered[c]){var i=c,j=A.Hooks.getRoot(c);e=e||A.getPropertyValue(a,j),d=A.Hooks.injectValue(i,d,e),c=j}if(A.Normalizations.registered[c]&&(d=A.Normalizations.registered[c]("inject",a,d),c=A.Normalizations.registered[c]("name",a)),h=A.Names.prefixCheck(c)[0],p<=8)try{a.style[h]=d}catch(l){y.debug&&console.log("Browser does not support ["+d+"] for ["+h+"]")}else{var k=g(a);k&&k.isSVG&&A.Names.SVGAttribute(c)?a.setAttribute(c,d):a.style[h]=d}y.debug>=2&&console.log("Set "+c+" ("+h+"): "+d)}return[h,d]},flushTransformCache:function(a){var b="",c=g(a);if((p||y.State.isAndroid&&!y.State.isChrome)&&c&&c.isSVG){var d=function(b){return parseFloat(A.getPropertyValue(a,b))},e={translate:[d("translateX"),d("translateY")],skewX:[d("skewX")],skewY:[d("skewY")],scale:1!==d("scale")?[d("scale"),d("scale")]:[d("scaleX"),d("scaleY")],rotate:[d("rotateZ"),0,0]};o.each(g(a).transformCache,function(a){/^translate/i.test(a)?a="translate":/^scale/i.test(a)?a="scale":/^rotate/i.test(a)&&(a="rotate"),e[a]&&(b+=a+"("+e[a].join(" ")+") ",delete e[a])})}else{var f,h;o.each(g(a).transformCache,function(c){if(f=g(a).transformCache[c],"transformPerspective"===c)return h=f,!0;9===p&&"rotateZ"===c&&(c="rotate"),b+=c+f+" "}),h&&(b="perspective"+h+" "+b)}A.setPropertyValue(a,"transform",b)}};A.Hooks.register(),A.Normalizations.register(),y.hook=function(a,b,c){var e;return a=f(a),o.each(a,function(a,f){if(g(f)===d&&y.init(f),c===d)e===d&&(e=A.getPropertyValue(f,b));else{var h=A.setPropertyValue(f,b,c);"transform"===h[0]&&y.CSS.flushTransformCache(f),e=h}}),e};var B=function(){function a(){return k?z.promise||null:p}function e(a,e){function f(f){var k,n;if(i.begin&&0===D)try{i.begin.call(r,r)}catch(V){setTimeout(function(){throw V},1)}if("scroll"===G){var p,q,w,x=/^x$/i.test(i.axis)?"Left":"Top",B=parseFloat(i.offset)||0;i.container?u.isWrapped(i.container)||u.isNode(i.container)?(i.container=i.container[0]||i.container,p=i.container["scroll"+x],w=p+o(a).position()[x.toLowerCase()]+B):i.container=null:(p=y.State.scrollAnchor[y.State["scrollProperty"+x]],q=y.State.scrollAnchor[y.State["scrollProperty"+("Left"===x?"Top":"Left")]],w=o(a).offset()[x.toLowerCase()]+B),j={scroll:{rootPropertyValue:!1,startValue:p,currentValue:p,endValue:w,unitType:"",easing:i.easing,scrollData:{container:i.container,direction:x,alternateValue:q}},element:a},y.debug&&console.log("tweensContainer (scroll): ",j.scroll,a)}else if("reverse"===G){if(!(k=g(a)))return;if(!k.tweensContainer)return void o.dequeue(a,i.queue);"none"===k.opts.display&&(k.opts.display="auto"),"hidden"===k.opts.visibility&&(k.opts.visibility="visible"),k.opts.loop=!1,k.opts.begin=null,k.opts.complete=null,v.easing||delete i.easing,v.duration||delete i.duration,i=o.extend({},k.opts,i),n=o.extend(!0,{},k?k.tweensContainer:null);for(var E in n)if(n.hasOwnProperty(E)&&"element"!==E){var F=n[E].startValue;n[E].startValue=n[E].currentValue=n[E].endValue,n[E].endValue=F,u.isEmptyObject(v)||(n[E].easing=i.easing),y.debug&&console.log("reverse tweensContainer ("+E+"): "+JSON.stringify(n[E]),a)}j=n}else if("start"===G){k=g(a),k&&k.tweensContainer&&k.isAnimating===!0&&(n=k.tweensContainer);var H=function(e,f){var g,l=A.Hooks.getRoot(e),m=!1,p=f[0],q=f[1],r=f[2]
6
+ ;if(!(k&&k.isSVG||"tween"===l||A.Names.prefixCheck(l)[1]!==!1||A.Normalizations.registered[l]!==d))return void(y.debug&&console.log("Skipping ["+l+"] due to a lack of browser support."));(i.display!==d&&null!==i.display&&"none"!==i.display||i.visibility!==d&&"hidden"!==i.visibility)&&/opacity|filter/.test(e)&&!r&&0!==p&&(r=0),i._cacheValues&&n&&n[e]?(r===d&&(r=n[e].endValue+n[e].unitType),m=k.rootPropertyValueCache[l]):A.Hooks.registered[e]?r===d?(m=A.getPropertyValue(a,l),r=A.getPropertyValue(a,e,m)):m=A.Hooks.templates[l][1]:r===d&&(r=A.getPropertyValue(a,e));var s,t,v,w=!1,x=function(a,b){var c,d;return d=(b||"0").toString().toLowerCase().replace(/[%A-z]+$/,function(a){return c=a,""}),c||(c=A.Values.getUnitType(a)),[d,c]};if(r!==p&&u.isString(r)&&u.isString(p)){g="";var z=0,B=0,C=[],D=[],E=0,F=0,G=0;for(r=A.Hooks.fixColors(r),p=A.Hooks.fixColors(p);z<r.length&&B<p.length;){var H=r[z],I=p[B];if(/[\d\.-]/.test(H)&&/[\d\.-]/.test(I)){for(var J=H,K=I,L=".",N=".";++z<r.length;){if((H=r[z])===L)L="..";else if(!/\d/.test(H))break;J+=H}for(;++B<p.length;){if((I=p[B])===N)N="..";else if(!/\d/.test(I))break;K+=I}var O=A.Hooks.getUnit(r,z),P=A.Hooks.getUnit(p,B);if(z+=O.length,B+=P.length,O===P)J===K?g+=J+O:(g+="{"+C.length+(F?"!":"")+"}"+O,C.push(parseFloat(J)),D.push(parseFloat(K)));else{var Q=parseFloat(J),R=parseFloat(K);g+=(E<5?"calc":"")+"("+(Q?"{"+C.length+(F?"!":"")+"}":"0")+O+" + "+(R?"{"+(C.length+(Q?1:0))+(F?"!":"")+"}":"0")+P+")",Q&&(C.push(Q),D.push(0)),R&&(C.push(0),D.push(R))}}else{if(H!==I){E=0;break}g+=H,z++,B++,0===E&&"c"===H||1===E&&"a"===H||2===E&&"l"===H||3===E&&"c"===H||E>=4&&"("===H?E++:(E&&E<5||E>=4&&")"===H&&--E<5)&&(E=0),0===F&&"r"===H||1===F&&"g"===H||2===F&&"b"===H||3===F&&"a"===H||F>=3&&"("===H?(3===F&&"a"===H&&(G=1),F++):G&&","===H?++G>3&&(F=G=0):(G&&F<(G?5:4)||F>=(G?4:3)&&")"===H&&--F<(G?5:4))&&(F=G=0)}}z===r.length&&B===p.length||(y.debug&&console.error('Trying to pattern match mis-matched strings ["'+p+'", "'+r+'"]'),g=d),g&&(C.length?(y.debug&&console.log('Pattern found "'+g+'" -> ',C,D,"["+r+","+p+"]"),r=C,p=D,t=v=""):g=d)}g||(s=x(e,r),r=s[0],v=s[1],s=x(e,p),p=s[0].replace(/^([+-\/*])=/,function(a,b){return w=b,""}),t=s[1],r=parseFloat(r)||0,p=parseFloat(p)||0,"%"===t&&(/^(fontSize|lineHeight)$/.test(e)?(p/=100,t="em"):/^scale/.test(e)?(p/=100,t=""):/(Red|Green|Blue)$/i.test(e)&&(p=p/100*255,t="")));if(/[\/*]/.test(w))t=v;else if(v!==t&&0!==r)if(0===p)t=v;else{h=h||function(){var d={myParent:a.parentNode||c.body,position:A.getPropertyValue(a,"position"),fontSize:A.getPropertyValue(a,"fontSize")},e=d.position===M.lastPosition&&d.myParent===M.lastParent,f=d.fontSize===M.lastFontSize;M.lastParent=d.myParent,M.lastPosition=d.position,M.lastFontSize=d.fontSize;var g={};if(f&&e)g.emToPx=M.lastEmToPx,g.percentToPxWidth=M.lastPercentToPxWidth,g.percentToPxHeight=M.lastPercentToPxHeight;else{var h=k&&k.isSVG?c.createElementNS("http://www.w3.org/2000/svg","rect"):c.createElement("div");y.init(h),d.myParent.appendChild(h),o.each(["overflow","overflowX","overflowY"],function(a,b){y.CSS.setPropertyValue(h,b,"hidden")}),y.CSS.setPropertyValue(h,"position",d.position),y.CSS.setPropertyValue(h,"fontSize",d.fontSize),y.CSS.setPropertyValue(h,"boxSizing","content-box"),o.each(["minWidth","maxWidth","width","minHeight","maxHeight","height"],function(a,b){y.CSS.setPropertyValue(h,b,"100%")}),y.CSS.setPropertyValue(h,"paddingLeft","100em"),g.percentToPxWidth=M.lastPercentToPxWidth=(parseFloat(A.getPropertyValue(h,"width",null,!0))||1)/100,g.percentToPxHeight=M.lastPercentToPxHeight=(parseFloat(A.getPropertyValue(h,"height",null,!0))||1)/100,g.emToPx=M.lastEmToPx=(parseFloat(A.getPropertyValue(h,"paddingLeft"))||1)/100,d.myParent.removeChild(h)}return null===M.remToPx&&(M.remToPx=parseFloat(A.getPropertyValue(c.body,"fontSize"))||16),null===M.vwToPx&&(M.vwToPx=parseFloat(b.innerWidth)/100,M.vhToPx=parseFloat(b.innerHeight)/100),g.remToPx=M.remToPx,g.vwToPx=M.vwToPx,g.vhToPx=M.vhToPx,y.debug>=1&&console.log("Unit ratios: "+JSON.stringify(g),a),g}();var S=/margin|padding|left|right|width|text|word|letter/i.test(e)||/X$/.test(e)||"x"===e?"x":"y";switch(v){case"%":r*="x"===S?h.percentToPxWidth:h.percentToPxHeight;break;case"px":break;default:r*=h[v+"ToPx"]}switch(t){case"%":r*=1/("x"===S?h.percentToPxWidth:h.percentToPxHeight);break;case"px":break;default:r*=1/h[t+"ToPx"]}}switch(w){case"+":p=r+p;break;case"-":p=r-p;break;case"*":p*=r;break;case"/":p=r/p}j[e]={rootPropertyValue:m,startValue:r,currentValue:r,endValue:p,unitType:t,easing:q},g&&(j[e].pattern=g),y.debug&&console.log("tweensContainer ("+e+"): "+JSON.stringify(j[e]),a)};for(var I in s)if(s.hasOwnProperty(I)){var J=A.Names.camelCase(I),K=function(b,c){var d,f,g;return u.isFunction(b)&&(b=b.call(a,e,C)),u.isArray(b)?(d=b[0],!u.isArray(b[1])&&/^[\d-]/.test(b[1])||u.isFunction(b[1])||A.RegEx.isHex.test(b[1])?g=b[1]:u.isString(b[1])&&!A.RegEx.isHex.test(b[1])&&y.Easings[b[1]]||u.isArray(b[1])?(f=c?b[1]:l(b[1],i.duration),g=b[2]):g=b[1]||b[2]):d=b,c||(f=f||i.easing),u.isFunction(d)&&(d=d.call(a,e,C)),u.isFunction(g)&&(g=g.call(a,e,C)),[d||0,f,g]}(s[I]);if(t(A.Lists.colors,J)){var L=K[0],O=K[1],P=K[2];if(A.RegEx.isHex.test(L)){for(var Q=["Red","Green","Blue"],R=A.Values.hexToRgb(L),S=P?A.Values.hexToRgb(P):d,T=0;T<Q.length;T++){var U=[R[T]];O&&U.push(O),S!==d&&U.push(S[T]),H(J+Q[T],U)}continue}}H(J,K)}j.element=a}j.element&&(A.Values.addClass(a,"velocity-animating"),N.push(j),k=g(a),k&&(""===i.queue&&(k.tweensContainer=j,k.opts=i),k.isAnimating=!0),D===C-1?(y.State.calls.push([N,r,i,null,z.resolver,null,0]),y.State.isTicking===!1&&(y.State.isTicking=!0,m())):D++)}var h,i=o.extend({},y.defaults,v),j={};switch(g(a)===d&&y.init(a),parseFloat(i.delay)&&i.queue!==!1&&o.queue(a,i.queue,function(b){y.velocityQueueEntryFlag=!0;var c=y.State.delayedElements.count++;y.State.delayedElements[c]=a;var d=function(a){return function(){y.State.delayedElements[a]=!1,b()}}(c);g(a).delayBegin=(new Date).getTime(),g(a).delay=parseFloat(i.delay),g(a).delayTimer={setTimeout:setTimeout(b,parseFloat(i.delay)),next:d}}),i.duration.toString().toLowerCase()){case"fast":i.duration=200;break;case"normal":i.duration=w;break;case"slow":i.duration=600;break;default:i.duration=parseFloat(i.duration)||1}if(y.mock!==!1&&(y.mock===!0?i.duration=i.delay=1:(i.duration*=parseFloat(y.mock)||1,i.delay*=parseFloat(y.mock)||1)),i.easing=l(i.easing,i.duration),i.begin&&!u.isFunction(i.begin)&&(i.begin=null),i.progress&&!u.isFunction(i.progress)&&(i.progress=null),i.complete&&!u.isFunction(i.complete)&&(i.complete=null),i.display!==d&&null!==i.display&&(i.display=i.display.toString().toLowerCase(),"auto"===i.display&&(i.display=y.CSS.Values.getDisplayType(a))),i.visibility!==d&&null!==i.visibility&&(i.visibility=i.visibility.toString().toLowerCase()),i.mobileHA=i.mobileHA&&y.State.isMobile&&!y.State.isGingerbread,i.queue===!1)if(i.delay){var k=y.State.delayedElements.count++;y.State.delayedElements[k]=a;var n=function(a){return function(){y.State.delayedElements[a]=!1,f()}}(k);g(a).delayBegin=(new Date).getTime(),g(a).delay=parseFloat(i.delay),g(a).delayTimer={setTimeout:setTimeout(f,parseFloat(i.delay)),next:n}}else f();else o.queue(a,i.queue,function(a,b){if(b===!0)return z.promise&&z.resolver(r),!0;y.velocityQueueEntryFlag=!0,f(a)});""!==i.queue&&"fx"!==i.queue||"inprogress"===o.queue(a)[0]||o.dequeue(a)}var j,k,p,q,r,s,v,x=arguments[0]&&(arguments[0].p||o.isPlainObject(arguments[0].properties)&&!arguments[0].properties.names||u.isString(arguments[0].properties));u.isWrapped(this)?(k=!1,q=0,r=this,p=this):(k=!0,q=1,r=x?arguments[0].elements||arguments[0].e:arguments[0]);var z={promise:null,resolver:null,rejecter:null};if(k&&y.Promise&&(z.promise=new y.Promise(function(a,b){z.resolver=a,z.rejecter=b})),x?(s=arguments[0].properties||arguments[0].p,v=arguments[0].options||arguments[0].o):(s=arguments[q],v=arguments[q+1]),!(r=f(r)))return void(z.promise&&(s&&v&&v.promiseRejectEmpty===!1?z.resolver():z.rejecter()));var C=r.length,D=0;if(!/^(stop|finish|finishAll|pause|resume)$/i.test(s)&&!o.isPlainObject(v)){var E=q+1;v={};for(var F=E;F<arguments.length;F++)u.isArray(arguments[F])||!/^(fast|normal|slow)$/i.test(arguments[F])&&!/^\d/.test(arguments[F])?u.isString(arguments[F])||u.isArray(arguments[F])?v.easing=arguments[F]:u.isFunction(arguments[F])&&(v.complete=arguments[F]):v.duration=arguments[F]}var G;switch(s){case"scroll":G="scroll";break;case"reverse":G="reverse";break;case"pause":var H=(new Date).getTime();return o.each(r,function(a,b){h(b,H)}),o.each(y.State.calls,function(a,b){var c=!1;b&&o.each(b[1],function(a,e){var f=v===d?"":v;return f!==!0&&b[2].queue!==f&&(v!==d||b[2].queue!==!1)||(o.each(r,function(a,d){if(d===e)return b[5]={resume:!1},c=!0,!1}),!c&&void 0)})}),a();case"resume":return o.each(r,function(a,b){i(b,H)}),o.each(y.State.calls,function(a,b){var c=!1;b&&o.each(b[1],function(a,e){var f=v===d?"":v;return f!==!0&&b[2].queue!==f&&(v!==d||b[2].queue!==!1)||(!b[5]||(o.each(r,function(a,d){if(d===e)return b[5].resume=!0,c=!0,!1}),!c&&void 0))})}),a();case"finish":case"finishAll":case"stop":o.each(r,function(a,b){g(b)&&g(b).delayTimer&&(clearTimeout(g(b).delayTimer.setTimeout),g(b).delayTimer.next&&g(b).delayTimer.next(),delete g(b).delayTimer),"finishAll"!==s||v!==!0&&!u.isString(v)||(o.each(o.queue(b,u.isString(v)?v:""),function(a,b){u.isFunction(b)&&b()}),o.queue(b,u.isString(v)?v:"",[]))});var I=[];return o.each(y.State.calls,function(a,b){b&&o.each(b[1],function(c,e){var f=v===d?"":v;if(f!==!0&&b[2].queue!==f&&(v!==d||b[2].queue!==!1))return!0;o.each(r,function(c,d){if(d===e)if((v===!0||u.isString(v))&&(o.each(o.queue(d,u.isString(v)?v:""),function(a,b){u.isFunction(b)&&b(null,!0)}),o.queue(d,u.isString(v)?v:"",[])),"stop"===s){var h=g(d);h&&h.tweensContainer&&f!==!1&&o.each(h.tweensContainer,function(a,b){b.endValue=b.currentValue}),I.push(a)}else"finish"!==s&&"finishAll"!==s||(b[2].duration=1)})})}),"stop"===s&&(o.each(I,function(a,b){n(b,!0)}),z.promise&&z.resolver(r)),a();default:if(!o.isPlainObject(s)||u.isEmptyObject(s)){if(u.isString(s)&&y.Redirects[s]){j=o.extend({},v);var J=j.duration,K=j.delay||0;return j.backwards===!0&&(r=o.extend(!0,[],r).reverse()),o.each(r,function(a,b){parseFloat(j.stagger)?j.delay=K+parseFloat(j.stagger)*a:u.isFunction(j.stagger)&&(j.delay=K+j.stagger.call(b,a,C)),j.drag&&(j.duration=parseFloat(J)||(/^(callout|transition)/.test(s)?1e3:w),j.duration=Math.max(j.duration*(j.backwards?1-a/C:(a+1)/C),.75*j.duration,200)),y.Redirects[s].call(b,b,j||{},a,C,r,z.promise?z:d)}),a()}var L="Velocity: First argument ("+s+") was not a property map, a known action, or a registered redirect. Aborting.";return z.promise?z.rejecter(new Error(L)):b.console&&console.log(L),a()}G="start"}var M={lastParent:null,lastPosition:null,lastFontSize:null,lastPercentToPxWidth:null,lastPercentToPxHeight:null,lastEmToPx:null,remToPx:null,vwToPx:null,vhToPx:null},N=[];o.each(r,function(a,b){u.isNode(b)&&e(b,a)}),j=o.extend({},y.defaults,v),j.loop=parseInt(j.loop,10);var O=2*j.loop-1;if(j.loop)for(var P=0;P<O;P++){var Q={delay:j.delay,progress:j.progress};P===O-1&&(Q.display=j.display,Q.visibility=j.visibility,Q.complete=j.complete),B(r,"reverse",Q)}return a()};y=o.extend(B,y),y.animate=B;var C=b.requestAnimationFrame||q;if(!y.State.isMobile&&c.hidden!==d){var D=function(){c.hidden?(C=function(a){return setTimeout(function(){a(!0)},16)},m()):C=b.requestAnimationFrame||q};D(),c.addEventListener("visibilitychange",D)}return a.Velocity=y,a!==b&&(a.fn.velocity=B,a.fn.velocity.defaults=y.defaults),o.each(["Down","Up"],function(a,b){y.Redirects["slide"+b]=function(a,c,e,f,g,h){var i=o.extend({},c),j=i.begin,k=i.complete,l={},m={height:"",marginTop:"",marginBottom:"",paddingTop:"",paddingBottom:""};i.display===d&&(i.display="Down"===b?"inline"===y.CSS.Values.getDisplayType(a)?"inline-block":"block":"none"),i.begin=function(){0===e&&j&&j.call(g,g);for(var c in m)if(m.hasOwnProperty(c)){l[c]=a.style[c];var d=A.getPropertyValue(a,c);m[c]="Down"===b?[d,0]:[0,d]}l.overflow=a.style.overflow,a.style.overflow="hidden"},i.complete=function(){for(var b in l)l.hasOwnProperty(b)&&(a.style[b]=l[b]);e===f-1&&(k&&k.call(g,g),h&&h.resolver(g))},y(a,m,i)}}),o.each(["In","Out"],function(a,b){y.Redirects["fade"+b]=function(a,c,e,f,g,h){var i=o.extend({},c),j=i.complete,k={opacity:"In"===b?1:0};0!==e&&(i.begin=null),i.complete=e!==f-1?null:function(){j&&j.call(g,g),h&&h.resolver(g)},i.display===d&&(i.display="In"===b?"auto":"none"),y(this,k,i)}}),y}(window.jQuery||window.Zepto||window,window,window?window.document:undefined)});
7
+
8
+
9
+ /* VelocityJS.org UI Pack (5.2.0)*/
10
+ (function(factory){"use strict";if(typeof require==="function"&&typeof exports==="object"){module.exports=factory();/* AMD module. */}else if(typeof define==="function"&&define.amd){define(["velocity"],factory);/* Browser globals. */}else{factory()}}(function(){"use strict";return function(global,window,document,undefined){var Velocity=global.Velocity;if(!Velocity||!Velocity.Utilities){if(window.console){console.log("Velocity UI Pack: Velocity must be loaded first. Aborting.")}
11
+ return}
12
+ var $=Velocity.Utilities;var velocityVersion=Velocity.version,requiredVersion={major:1,minor:1,patch:0};function greaterSemver(primary,secondary){var versionInts=[];if(!primary||!secondary){return!1}
13
+ $.each([primary,secondary],function(i,versionObject){var versionIntsComponents=[];$.each(versionObject,function(component,value){while(value.toString().length<5){value="0"+value}
14
+ versionIntsComponents.push(value)});versionInts.push(versionIntsComponents.join(""))});return(parseFloat(versionInts[0])>parseFloat(versionInts[1]))}
15
+ if(greaterSemver(requiredVersion,velocityVersion)){var abortError="Velocity UI Pack: You need to update Velocity (velocity.js) to a newer version. Visit http://github.com/julianshapiro/velocity.";alert(abortError);throw new Error(abortError)}
16
+ Velocity.RegisterEffect=Velocity.RegisterUI=function(effectName,properties){function animateParentHeight(elements,direction,totalDuration,stagger){var totalHeightDelta=0,parentNode;$.each(elements.nodeType?[elements]:elements,function(i,element){if(stagger){totalDuration+=i*stagger}
17
+ parentNode=element.parentNode;var propertiesToSum=["height","paddingTop","paddingBottom","marginTop","marginBottom"];if(Velocity.CSS.getPropertyValue(element,"boxSizing").toString().toLowerCase()==="border-box"){propertiesToSum=["height"]}
18
+ $.each(propertiesToSum,function(i,property){totalHeightDelta+=parseFloat(Velocity.CSS.getPropertyValue(element,property))})});Velocity.animate(parentNode,{height:(direction==="In"?"+":"-")+"="+totalHeightDelta},{queue:!1,easing:"ease-in-out",duration:totalDuration*(direction==="In"?0.6:1)})}
19
+ Velocity.Redirects[effectName]=function(element,redirectOptions,elementsIndex,elementsSize,elements,promiseData,loop){var finalElement=(elementsIndex===elementsSize-1),totalDuration=0;loop=loop||properties.loop;if(typeof properties.defaultDuration==="function"){properties.defaultDuration=properties.defaultDuration.call(elements,elements)}else{properties.defaultDuration=parseFloat(properties.defaultDuration)}
20
+ for(var callIndex=0;callIndex<properties.calls.length;callIndex++){durationPercentage=properties.calls[callIndex][1];if(typeof durationPercentage==="number"){totalDuration+=durationPercentage}}
21
+ var shareDuration=totalDuration>=1?0:properties.calls.length?(1-totalDuration)/properties.calls.length:1;for(callIndex=0;callIndex<properties.calls.length;callIndex++){var call=properties.calls[callIndex],propertyMap=call[0],redirectDuration=1000,durationPercentage=call[1],callOptions=call[2]||{},opts={};if(redirectOptions.duration!==undefined){redirectDuration=redirectOptions.duration}else if(properties.defaultDuration!==undefined){redirectDuration=properties.defaultDuration}
22
+ opts.duration=redirectDuration*(typeof durationPercentage==="number"?durationPercentage:shareDuration);opts.queue=redirectOptions.queue||"";opts.easing=callOptions.easing||"ease";opts.delay=parseFloat(callOptions.delay)||0;opts.loop=!properties.loop&&callOptions.loop;opts._cacheValues=callOptions._cacheValues||!0;if(callIndex===0){opts.delay+=(parseFloat(redirectOptions.delay)||0);if(elementsIndex===0){opts.begin=function(){if(redirectOptions.begin){redirectOptions.begin.call(elements,elements)}
23
+ var direction=effectName.match(/(In|Out)$/);if((direction&&direction[0]==="In")&&propertyMap.opacity!==undefined){$.each(elements.nodeType?[elements]:elements,function(i,element){Velocity.CSS.setPropertyValue(element,"opacity",0)})}
24
+ if(redirectOptions.animateParentHeight&&direction){animateParentHeight(elements,direction[0],redirectDuration+opts.delay,redirectOptions.stagger)}}}
25
+ if(redirectOptions.display!==null){if(redirectOptions.display!==undefined&&redirectOptions.display!=="none"){opts.display=redirectOptions.display}else if(/In$/.test(effectName)){var defaultDisplay=Velocity.CSS.Values.getDisplayType(element);opts.display=(defaultDisplay==="inline")?"inline-block":defaultDisplay}}
26
+ if(redirectOptions.visibility&&redirectOptions.visibility!=="hidden"){opts.visibility=redirectOptions.visibility}}
27
+ if(callIndex===properties.calls.length-1){var injectFinalCallbacks=function(){if((redirectOptions.display===undefined||redirectOptions.display==="none")&&/Out$/.test(effectName)){$.each(elements.nodeType?[elements]:elements,function(i,element){Velocity.CSS.setPropertyValue(element,"display","none")})}
28
+ if(redirectOptions.complete){redirectOptions.complete.call(elements,elements)}
29
+ if(promiseData){promiseData.resolver(elements||element)}};opts.complete=function(){if(loop){Velocity.Redirects[effectName](element,redirectOptions,elementsIndex,elementsSize,elements,promiseData,loop===!0?!0:Math.max(0,loop-1))}
30
+ if(properties.reset){for(var resetProperty in properties.reset){if(!properties.reset.hasOwnProperty(resetProperty)){continue}
31
+ var resetValue=properties.reset[resetProperty];if(Velocity.CSS.Hooks.registered[resetProperty]===undefined&&(typeof resetValue==="string"||typeof resetValue==="number")){properties.reset[resetProperty]=[properties.reset[resetProperty],properties.reset[resetProperty]]}}
32
+ var resetOptions={duration:0,queue:!1};if(finalElement){resetOptions.complete=injectFinalCallbacks}
33
+ Velocity.animate(element,properties.reset,resetOptions);/* Only trigger the user's complete callback on the last effect call with the last element in the set. */}else if(finalElement){injectFinalCallbacks()}};if(redirectOptions.visibility==="hidden"){opts.visibility=redirectOptions.visibility}}
34
+ Velocity.animate(element,propertyMap,opts)}};return Velocity};Velocity.RegisterEffect.packagedEffects={"callout.bounce":{defaultDuration:550,calls:[[{translateY:-30},0.25],[{translateY:0},0.125],[{translateY:-15},0.125],[{translateY:0},0.25]]},"callout.shake":{defaultDuration:800,calls:[[{translateX:-11}],[{translateX:11}],[{translateX:-11}],[{translateX:11}],[{translateX:-11}],[{translateX:11}],[{translateX:-11}],[{translateX:0}]]},"callout.flash":{defaultDuration:1100,calls:[[{opacity:[0,"easeInOutQuad",1]}],[{opacity:[1,"easeInOutQuad"]}],[{opacity:[0,"easeInOutQuad"]}],[{opacity:[1,"easeInOutQuad"]}]]},"callout.pulse":{defaultDuration:825,calls:[[{scaleX:1.1,scaleY:1.1},0.50,{easing:"easeInExpo"}],[{scaleX:1,scaleY:1},0.50]]},"callout.swing":{defaultDuration:950,calls:[[{rotateZ:15}],[{rotateZ:-10}],[{rotateZ:5}],[{rotateZ:-5}],[{rotateZ:0}]]},"callout.tada":{defaultDuration:1000,calls:[[{scaleX:0.9,scaleY:0.9,rotateZ:-3},0.10],[{scaleX:1.1,scaleY:1.1,rotateZ:3},0.10],[{scaleX:1.1,scaleY:1.1,rotateZ:-3},0.10],["reverse",0.125],["reverse",0.125],["reverse",0.125],["reverse",0.125],["reverse",0.125],[{scaleX:1,scaleY:1,rotateZ:0},0.20]]},"transition.fadeIn":{defaultDuration:1000,calls:[[{opacity:[1,0]}]]},"transition.fadeOut":{defaultDuration:500,calls:[[{opacity:[0,1]}]]},"transition.flipXIn":{defaultDuration:700,calls:[[{opacity:[1,0],transformPerspective:[800,800],rotateY:[0,-55]}]],reset:{transformPerspective:0}},"transition.flipXOut":{defaultDuration:700,calls:[[{opacity:[0,1],transformPerspective:[800,800],rotateY:55}]],reset:{transformPerspective:0,rotateY:0}},"transition.flipYIn":{defaultDuration:800,calls:[[{opacity:[1,0],transformPerspective:[800,800],rotateX:[0,-45]}]],reset:{transformPerspective:0}},"transition.flipYOut":{defaultDuration:800,calls:[[{opacity:[0,1],transformPerspective:[800,800],rotateX:25}]],reset:{transformPerspective:0,rotateX:0}},"transition.flipBounceXIn":{defaultDuration:900,calls:[[{opacity:[0.725,0],transformPerspective:[400,400],rotateY:[-10,90]},0.50],[{opacity:0.80,rotateY:10},0.25],[{opacity:1,rotateY:0},0.25]],reset:{transformPerspective:0}},"transition.flipBounceXOut":{defaultDuration:800,calls:[[{opacity:[0.9,1],transformPerspective:[400,400],rotateY:-10}],[{opacity:0,rotateY:90}]],reset:{transformPerspective:0,rotateY:0}},"transition.flipBounceYIn":{defaultDuration:850,calls:[[{opacity:[0.725,0],transformPerspective:[400,400],rotateX:[-10,90]},0.50],[{opacity:0.80,rotateX:10},0.25],[{opacity:1,rotateX:0},0.25]],reset:{transformPerspective:0}},"transition.flipBounceYOut":{defaultDuration:800,calls:[[{opacity:[0.9,1],transformPerspective:[400,400],rotateX:-15}],[{opacity:0,rotateX:90}]],reset:{transformPerspective:0,rotateX:0}},"transition.swoopIn":{defaultDuration:850,calls:[[{opacity:[1,0],transformOriginX:["100%","50%"],transformOriginY:["100%","100%"],scaleX:[1,0],scaleY:[1,0],translateX:[0,-700],translateZ:0}]],reset:{transformOriginX:"50%",transformOriginY:"50%"}},"transition.swoopOut":{defaultDuration:850,calls:[[{opacity:[0,1],transformOriginX:["50%","100%"],transformOriginY:["100%","100%"],scaleX:0,scaleY:0,translateX:-700,translateZ:0}]],reset:{transformOriginX:"50%",transformOriginY:"50%",scaleX:1,scaleY:1,translateX:0}},"transition.whirlIn":{defaultDuration:850,calls:[[{opacity:[1,0],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:[1,0],scaleY:[1,0],rotateY:[0,160]},1,{easing:"easeInOutSine"}]]},"transition.whirlOut":{defaultDuration:750,calls:[[{opacity:[0,"easeInOutQuint",1],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:0,scaleY:0,rotateY:160},1,{easing:"swing"}]],reset:{scaleX:1,scaleY:1,rotateY:0}},"transition.shrinkIn":{defaultDuration:750,calls:[[{opacity:[1,0],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:[1,1.5],scaleY:[1,1.5],translateZ:0}]]},"transition.shrinkOut":{defaultDuration:600,calls:[[{opacity:[0,1],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:1.3,scaleY:1.3,translateZ:0}]],reset:{scaleX:1,scaleY:1}},"transition.expandIn":{defaultDuration:700,calls:[[{opacity:[1,0],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:[1,0.625],scaleY:[1,0.625],translateZ:0}]]},"transition.expandOut":{defaultDuration:700,calls:[[{opacity:[0,1],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:0.5,scaleY:0.5,translateZ:0}]],reset:{scaleX:1,scaleY:1}},"transition.bounceIn":{defaultDuration:800,calls:[[{opacity:[1,0],scaleX:[1.05,0.3],scaleY:[1.05,0.3]},0.35],[{scaleX:0.9,scaleY:0.9,translateZ:0},0.20],[{scaleX:1,scaleY:1},0.45]]},"transition.bounceOut":{defaultDuration:800,calls:[[{scaleX:0.95,scaleY:0.95},0.35],[{scaleX:1.1,scaleY:1.1,translateZ:0},0.35],[{opacity:[0,1],scaleX:0.3,scaleY:0.3},0.30]],reset:{scaleX:1,scaleY:1}},"transition.bounceUpIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateY:[-30,1000]},0.60,{easing:"easeOutCirc"}],[{translateY:10},0.20],[{translateY:0},0.20]]},"transition.bounceUpOut":{defaultDuration:1000,calls:[[{translateY:20},0.20],[{opacity:[0,"easeInCirc",1],translateY:-1000},0.80]],reset:{translateY:0}},"transition.bounceDownIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateY:[30,-1000]},0.60,{easing:"easeOutCirc"}],[{translateY:-10},0.20],[{translateY:0},0.20]]},"transition.bounceDownOut":{defaultDuration:1000,calls:[[{translateY:-20},0.20],[{opacity:[0,"easeInCirc",1],translateY:1000},0.80]],reset:{translateY:0}},"transition.bounceLeftIn":{defaultDuration:750,calls:[[{opacity:[1,0],translateX:[30,-1250]},0.60,{easing:"easeOutCirc"}],[{translateX:-10},0.20],[{translateX:0},0.20]]},"transition.bounceLeftOut":{defaultDuration:750,calls:[[{translateX:30},0.20],[{opacity:[0,"easeInCirc",1],translateX:-1250},0.80]],reset:{translateX:0}},"transition.bounceRightIn":{defaultDuration:750,calls:[[{opacity:[1,0],translateX:[-30,1250]},0.60,{easing:"easeOutCirc"}],[{translateX:10},0.20],[{translateX:0},0.20]]},"transition.bounceRightOut":{defaultDuration:750,calls:[[{translateX:-30},0.20],[{opacity:[0,"easeInCirc",1],translateX:1250},0.80]],reset:{translateX:0}},"transition.slideUpIn":{defaultDuration:900,calls:[[{opacity:[1,0],translateY:[0,20],translateZ:0}]]},"transition.slideUpOut":{defaultDuration:900,calls:[[{opacity:[0,1],translateY:-20,translateZ:0}]],reset:{translateY:0}},"transition.slideDownIn":{defaultDuration:900,calls:[[{opacity:[1,0],translateY:[0,-20],translateZ:0}]]},"transition.slideDownOut":{defaultDuration:900,calls:[[{opacity:[0,1],translateY:20,translateZ:0}]],reset:{translateY:0}},"transition.slideLeftIn":{defaultDuration:1000,calls:[[{opacity:[1,0],translateX:[0,-20],translateZ:0}]]},"transition.slideLeftOut":{defaultDuration:1050,calls:[[{opacity:[0,1],translateX:-20,translateZ:0}]],reset:{translateX:0}},"transition.slideRightIn":{defaultDuration:1000,calls:[[{opacity:[1,0],translateX:[0,20],translateZ:0}]]},"transition.slideRightOut":{defaultDuration:1050,calls:[[{opacity:[0,1],translateX:20,translateZ:0}]],reset:{translateX:0}},"transition.slideUpBigIn":{defaultDuration:850,calls:[[{opacity:[1,0],translateY:[0,75],translateZ:0}]]},"transition.slideUpBigOut":{defaultDuration:800,calls:[[{opacity:[0,1],translateY:-75,translateZ:0}]],reset:{translateY:0}},"transition.slideDownBigIn":{defaultDuration:850,calls:[[{opacity:[1,0],translateY:[0,-75],translateZ:0}]]},"transition.slideDownBigOut":{defaultDuration:800,calls:[[{opacity:[0,1],translateY:75,translateZ:0}]],reset:{translateY:0}},"transition.slideLeftBigIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateX:[0,-75],translateZ:0}]]},"transition.slideLeftBigOut":{defaultDuration:750,calls:[[{opacity:[0,1],translateX:-75,translateZ:0}]],reset:{translateX:0}},"transition.slideRightBigIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateX:[0,75],translateZ:0}]]},"transition.slideRightBigOut":{defaultDuration:750,calls:[[{opacity:[0,1],translateX:75,translateZ:0}]],reset:{translateX:0}},"transition.perspectiveUpIn":{defaultDuration:800,calls:[[{opacity:[1,0],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:["100%","100%"],rotateX:[0,-180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveUpOut":{defaultDuration:850,calls:[[{opacity:[0,1],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:["100%","100%"],rotateX:-180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateX:0}},"transition.perspectiveDownIn":{defaultDuration:800,calls:[[{opacity:[1,0],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:[0,0],rotateX:[0,180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveDownOut":{defaultDuration:850,calls:[[{opacity:[0,1],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:[0,0],rotateX:180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateX:0}},"transition.perspectiveLeftIn":{defaultDuration:950,calls:[[{opacity:[1,0],transformPerspective:[2000,2000],transformOriginX:[0,0],transformOriginY:[0,0],rotateY:[0,-180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveLeftOut":{defaultDuration:950,calls:[[{opacity:[0,1],transformPerspective:[2000,2000],transformOriginX:[0,0],transformOriginY:[0,0],rotateY:-180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateY:0}},"transition.perspectiveRightIn":{defaultDuration:950,calls:[[{opacity:[1,0],transformPerspective:[2000,2000],transformOriginX:["100%","100%"],transformOriginY:[0,0],rotateY:[0,180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveRightOut":{defaultDuration:950,calls:[[{opacity:[0,1],transformPerspective:[2000,2000],transformOriginX:["100%","100%"],transformOriginY:[0,0],rotateY:180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateY:0}}};for(var effectName in Velocity.RegisterEffect.packagedEffects){if(Velocity.RegisterEffect.packagedEffects.hasOwnProperty(effectName)){Velocity.RegisterEffect(effectName,Velocity.RegisterEffect.packagedEffects[effectName])}}
35
+ Velocity.RunSequence=function(originalSequence){var sequence=$.extend(!0,[],originalSequence);if(sequence.length>1){$.each(sequence.reverse(),function(i,currentCall){var nextCall=sequence[i+1];if(nextCall){var currentCallOptions=currentCall.o||currentCall.options,nextCallOptions=nextCall.o||nextCall.options;var timing=(currentCallOptions&&currentCallOptions.sequenceQueue===!1)?"begin":"complete",callbackOriginal=nextCallOptions&&nextCallOptions[timing],options={};options[timing]=function(){var nextCallElements=nextCall.e||nextCall.elements;var elements=nextCallElements.nodeType?[nextCallElements]:nextCallElements;if(callbackOriginal){callbackOriginal.call(elements,elements)}
36
+ Velocity(currentCall)};if(nextCall.o){nextCall.o=$.extend({},nextCallOptions,options)}else{nextCall.options=$.extend({},nextCallOptions,options)}}});sequence.reverse()}
37
+ Velocity(sequence[0])}}((window.jQuery||window.Zepto||window),window,(window?window.document:undefined))}))
38
+
39
+ /*Modernizr js*/
40
+ window.Modernizr=function(e,t,n){function r(e){b.cssText=e}function o(e,t){return r(S.join(e+";")+(t||""))}function a(e,t){return typeof e===t}function i(e,t){return!!~(""+e).indexOf(t)}function c(e,t){for(var r in e){var o=e[r];if(!i(o,"-")&&b[o]!==n)return"pfx"==t?o:!0}return!1}function s(e,t,r){for(var o in e){var i=t[e[o]];if(i!==n)return r===!1?e[o]:a(i,"function")?i.bind(r||t):i}return!1}function u(e,t,n){var r=e.charAt(0).toUpperCase()+e.slice(1),o=(e+" "+k.join(r+" ")+r).split(" ");return a(t,"string")||a(t,"undefined")?c(o,t):(o=(e+" "+T.join(r+" ")+r).split(" "),s(o,t,n))}function l(){p.input=function(n){for(var r=0,o=n.length;o>r;r++)j[n[r]]=!!(n[r]in E);return j.list&&(j.list=!(!t.createElement("datalist")||!e.HTMLDataListElement)),j}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),p.inputtypes=function(e){for(var r,o,a,i=0,c=e.length;c>i;i++)E.setAttribute("type",o=e[i]),r="text"!==E.type,r&&(E.value=x,E.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(o)&&E.style.WebkitAppearance!==n?(g.appendChild(E),a=t.defaultView,r=a.getComputedStyle&&"textfield"!==a.getComputedStyle(E,null).WebkitAppearance&&0!==E.offsetHeight,g.removeChild(E)):/^(search|tel)$/.test(o)||(r=/^(url|email)$/.test(o)?E.checkValidity&&E.checkValidity()===!1:E.value!=x)),P[e[i]]=!!r;return P}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d,f,m="2.8.3",p={},h=!0,g=t.documentElement,v="modernizr",y=t.createElement(v),b=y.style,E=t.createElement("input"),x=":)",w={}.toString,S=" -webkit- -moz- -o- -ms- ".split(" "),C="Webkit Moz O ms",k=C.split(" "),T=C.toLowerCase().split(" "),N={svg:"http://www.w3.org/2000/svg"},M={},P={},j={},$=[],D=$.slice,F=function(e,n,r,o){var a,i,c,s,u=t.createElement("div"),l=t.body,d=l||t.createElement("body");if(parseInt(r,10))for(;r--;)c=t.createElement("div"),c.id=o?o[r]:v+(r+1),u.appendChild(c);return a=["&#173;",'<style id="s',v,'">',e,"</style>"].join(""),u.id=v,(l?u:d).innerHTML+=a,d.appendChild(u),l||(d.style.background="",d.style.overflow="hidden",s=g.style.overflow,g.style.overflow="hidden",g.appendChild(d)),i=n(u,e),l?u.parentNode.removeChild(u):(d.parentNode.removeChild(d),g.style.overflow=s),!!i},z=function(t){var n=e.matchMedia||e.msMatchMedia;if(n)return n(t)&&n(t).matches||!1;var r;return F("@media "+t+" { #"+v+" { position: absolute; } }",function(t){r="absolute"==(e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position}),r},A=function(){function e(e,o){o=o||t.createElement(r[e]||"div"),e="on"+e;var i=e in o;return i||(o.setAttribute||(o=t.createElement("div")),o.setAttribute&&o.removeAttribute&&(o.setAttribute(e,""),i=a(o[e],"function"),a(o[e],"undefined")||(o[e]=n),o.removeAttribute(e))),o=null,i}var r={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return e}(),L={}.hasOwnProperty;f=a(L,"undefined")||a(L.call,"undefined")?function(e,t){return t in e&&a(e.constructor.prototype[t],"undefined")}:function(e,t){return L.call(e,t)},Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError;var n=D.call(arguments,1),r=function(){if(this instanceof r){var o=function(){};o.prototype=t.prototype;var a=new o,i=t.apply(a,n.concat(D.call(arguments)));return Object(i)===i?i:a}return t.apply(e,n.concat(D.call(arguments)))};return r}),M.flexbox=function(){return u("flexWrap")},M.flexboxlegacy=function(){return u("boxDirection")},M.canvas=function(){var e=t.createElement("canvas");return!(!e.getContext||!e.getContext("2d"))},M.canvastext=function(){return!(!p.canvas||!a(t.createElement("canvas").getContext("2d").fillText,"function"))},M.webgl=function(){return!!e.WebGLRenderingContext},M.touch=function(){var n;return"ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch?n=!0:F(["@media (",S.join("touch-enabled),("),v,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(e){n=9===e.offsetTop}),n},M.geolocation=function(){return"geolocation"in navigator},M.postmessage=function(){return!!e.postMessage},M.websqldatabase=function(){return!!e.openDatabase},M.indexedDB=function(){return!!u("indexedDB",e)},M.hashchange=function(){return A("hashchange",e)&&(t.documentMode===n||t.documentMode>7)},M.history=function(){return!(!e.history||!history.pushState)},M.draganddrop=function(){var e=t.createElement("div");return"draggable"in e||"ondragstart"in e&&"ondrop"in e},M.websockets=function(){return"WebSocket"in e||"MozWebSocket"in e},M.rgba=function(){return r("background-color:rgba(150,255,150,.5)"),i(b.backgroundColor,"rgba")},M.hsla=function(){return r("background-color:hsla(120,40%,100%,.5)"),i(b.backgroundColor,"rgba")||i(b.backgroundColor,"hsla")},M.multiplebgs=function(){return r("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(b.background)},M.backgroundsize=function(){return u("backgroundSize")},M.borderimage=function(){return u("borderImage")},M.borderradius=function(){return u("borderRadius")},M.boxshadow=function(){return u("boxShadow")},M.textshadow=function(){return""===t.createElement("div").style.textShadow},M.opacity=function(){return o("opacity:.55"),/^0.55$/.test(b.opacity)},M.cssanimations=function(){return u("animationName")},M.csscolumns=function(){return u("columnCount")},M.cssgradients=function(){var e="background-image:",t="gradient(linear,left top,right bottom,from(#9f9),to(white));",n="linear-gradient(left top,#9f9, white);";return r((e+"-webkit- ".split(" ").join(t+e)+S.join(n+e)).slice(0,-e.length)),i(b.backgroundImage,"gradient")},M.cssreflections=function(){return u("boxReflect")},M.csstransforms=function(){return!!u("transform")},M.csstransforms3d=function(){var e=!!u("perspective");return e&&"webkitPerspective"in g.style&&F("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t){e=9===t.offsetLeft&&3===t.offsetHeight}),e},M.csstransitions=function(){return u("transition")},M.fontface=function(){var e;return F('@font-face {font-family:"font";src:url("https://")}',function(n,r){var o=t.getElementById("smodernizr"),a=o.sheet||o.styleSheet,i=a?a.cssRules&&a.cssRules[0]?a.cssRules[0].cssText:a.cssText||"":"";e=/src/i.test(i)&&0===i.indexOf(r.split(" ")[0])}),e},M.generatedcontent=function(){var e;return F(["#",v,"{font:0/0 a}#",v,':after{content:"',x,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){e=t.offsetHeight>=3}),e},M.video=function(){var e=t.createElement("video"),n=!1;try{(n=!!e.canPlayType)&&(n=new Boolean(n),n.ogg=e.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=e.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=e.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(r){}return n},M.audio=function(){var e=t.createElement("audio"),n=!1;try{(n=!!e.canPlayType)&&(n=new Boolean(n),n.ogg=e.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=e.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=e.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(e.canPlayType("audio/x-m4a;")||e.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(r){}return n},M.localstorage=function(){try{return localStorage.setItem(v,v),localStorage.removeItem(v),!0}catch(e){return!1}},M.sessionstorage=function(){try{return sessionStorage.setItem(v,v),sessionStorage.removeItem(v),!0}catch(e){return!1}},M.webworkers=function(){return!!e.Worker},M.applicationcache=function(){return!!e.applicationCache},M.svg=function(){return!!t.createElementNS&&!!t.createElementNS(N.svg,"svg").createSVGRect},M.inlinesvg=function(){var e=t.createElement("div");return e.innerHTML="<svg/>",(e.firstChild&&e.firstChild.namespaceURI)==N.svg},M.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(w.call(t.createElementNS(N.svg,"animate")))},M.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(w.call(t.createElementNS(N.svg,"clipPath")))};for(var H in M)f(M,H)&&(d=H.toLowerCase(),p[d]=M[H](),$.push((p[d]?"":"no-")+d));return p.input||l(),p.addTest=function(e,t){if("object"==typeof e)for(var r in e)f(e,r)&&p.addTest(r,e[r]);else{if(e=e.toLowerCase(),p[e]!==n)return p;t="function"==typeof t?t():t,"undefined"!=typeof h&&h&&(g.className+=" "+(t?"":"no-")+e),p[e]=t}return p},r(""),y=E=null,function(e,t){function n(e,t){var n=e.createElement("p"),r=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x<style>"+t+"</style>",r.insertBefore(n.lastChild,r.firstChild)}function r(){var e=y.elements;return"string"==typeof e?e.split(" "):e}function o(e){var t=v[e[h]];return t||(t={},g++,e[h]=g,v[g]=t),t}function a(e,n,r){if(n||(n=t),l)return n.createElement(e);r||(r=o(n));var a;return a=r.cache[e]?r.cache[e].cloneNode():p.test(e)?(r.cache[e]=r.createElem(e)).cloneNode():r.createElem(e),!a.canHaveChildren||m.test(e)||a.tagUrn?a:r.frag.appendChild(a)}function i(e,n){if(e||(e=t),l)return e.createDocumentFragment();n=n||o(e);for(var a=n.frag.cloneNode(),i=0,c=r(),s=c.length;s>i;i++)a.createElement(c[i]);return a}function c(e,t){t.cache||(t.cache={},t.createElem=e.createElement,t.createFrag=e.createDocumentFragment,t.frag=t.createFrag()),e.createElement=function(n){return y.shivMethods?a(n,e,t):t.createElem(n)},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+r().join().replace(/[\w\-]+/g,function(e){return t.createElem(e),t.frag.createElement(e),'c("'+e+'")'})+");return n}")(y,t.frag)}function s(e){e||(e=t);var r=o(e);return!y.shivCSS||u||r.hasCSS||(r.hasCSS=!!n(e,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||c(e,r),e}var u,l,d="3.7.0",f=e.html5||{},m=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,h="_html5shiv",g=0,v={};!function(){try{var e=t.createElement("a");e.innerHTML="<xyz></xyz>",u="hidden"in e,l=1==e.childNodes.length||function(){t.createElement("a");var e=t.createDocumentFragment();return"undefined"==typeof e.cloneNode||"undefined"==typeof e.createDocumentFragment||"undefined"==typeof e.createElement}()}catch(n){u=!0,l=!0}}();var y={elements:f.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:d,shivCSS:f.shivCSS!==!1,supportsUnknownElements:l,shivMethods:f.shivMethods!==!1,type:"default",shivDocument:s,createElement:a,createDocumentFragment:i};e.html5=y,s(t)}(this,t),p._version=m,p._prefixes=S,p._domPrefixes=T,p._cssomPrefixes=k,p.mq=z,p.hasEvent=A,p.testProp=function(e){return c([e])},p.testAllProps=u,p.testStyles=F,p.prefixed=function(e,t,n){return t?u(e,t,n):u(e,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(h?" js "+$.join(" "):""),p}(this,this.document);
41
+
42
+ /*imagesLoaded PACKAGED v4.1.3 */
43
+ !function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return-1==n.indexOf(t)&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return-1!=n&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=0,o=i[n];t=t||[];for(var r=this._onceEvents&&this._onceEvents[e];o;){var s=r&&r[o];s&&(this.off(e,o),delete r[o]),o.apply(this,t),n+=s?0:1,o=i[n]}return this}},t.allOff=t.removeAllListeners=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){var t=[];if(Array.isArray(e))t=e;else if("number"==typeof e.length)for(var i=0;i<e.length;i++)t.push(e[i]);else t.push(e);return t}function o(e,t,r){return this instanceof o?("string"==typeof e&&(e=document.querySelectorAll(e)),this.elements=n(e),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(function(){this.check()}.bind(this))):new o(e,t,r)}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&d[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var d={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&void 0!==this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o});
44
+
45
+ /*Lity.min.js v2.2.2 edit*/
46
+ (function(window,factory){if(typeof define==='function'&&define.amd){define(['jquery'],function($){return factory(window,$)})}else if(typeof module==='object'&&typeof module.exports==='object'){module.exports=factory(window,require('jquery'))}else{window.lity=factory(window,window.jQuery||window.Zepto)}}(typeof window!=="undefined"?window:this,function(window,$){'use strict';var document=window.document;var _win=$(window);var _deferred=$.Deferred;var _html=$('html');var _instances=[];var _attrAriaHidden='aria-hidden';var _dataAriaHidden='lity-'+_attrAriaHidden;var _focusableElementsSelector='a[href],area[href],input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),iframe,object,embed,[contenteditable],[tabindex]:not([tabindex^="-"])';var _defaultOptions={handler:null,handlers:{image:imageHandler,inline:inlineHandler,youtube:youtubeHandler,vimeo:vimeoHandler,googlemaps:googlemapsHandler,facebookvideo:facebookvideoHandler,iframe:iframeHandler},template:'<div class="lity" role="dialog" aria-label="Dialog Window (Press escape to close)" tabindex="-1"><div class="lity-wrap" data-lity-close role="document"><div class="lity-loader" aria-hidden="true">Loading...</div><div class="lity-container"><div class="lity-content"></div><button class="lity-close" type="button" aria-label="Close (Press escape to close)" data-lity-close>&times;</button></div></div></div>'};var _imageRegexp=/(^data:image\/)|(\.(png|jpe?g|gif|svg|webp|bmp|ico|tiff?)(\?\S*)?$)/i;var _youtubeRegex=/(youtube(-nocookie)?\.com|youtu\.be)\/(watch\?v=|v\/|u\/|embed\/?)?([\w-]{11})(.*)?/i;var _vimeoRegex=/(vimeo(pro)?.com)\/(?:[^\d]+)?(\d+)\??(.*)?$/;var _googlemapsRegex=/((maps|www)\.)?google\.([^\/\?]+)\/?((maps\/?)?\?)(.*)/i;var _facebookvideoRegex=/(facebook\.com)\/([a-z0-9_-]*)\/videos\/([0-9]*)(.*)?$/i;var _transitionEndEvent=(function(){var el=document.createElement('div');var transEndEventNames={WebkitTransition:'webkitTransitionEnd',MozTransition:'transitionend',OTransition:'oTransitionEnd otransitionend',transition:'transitionend'};for(var name in transEndEventNames){if(el.style[name]!==undefined){return transEndEventNames[name]}}
47
+ return!1})();function transitionEnd(element){var deferred=_deferred();if(!_transitionEndEvent||!element.length){deferred.resolve()}else{element.one(_transitionEndEvent,deferred.resolve);setTimeout(deferred.resolve,500)}
48
+ return deferred.promise()}
49
+ function settings(currSettings,key,value){if(arguments.length===1){return $.extend({},currSettings)}
50
+ if(typeof key==='string'){if(typeof value==='undefined'){return typeof currSettings[key]==='undefined'?null:currSettings[key]}
51
+ currSettings[key]=value}else{$.extend(currSettings,key)}
52
+ return this}
53
+ function parseQueryParams(params){var pairs=decodeURI(params.split('#')[0]).split('&');var obj={},p;for(var i=0,n=pairs.length;i<n;i++){if(!pairs[i]){continue}
54
+ p=pairs[i].split('=');obj[p[0]]=p[1]}
55
+ return obj}
56
+ function appendQueryParams(url,params){return url+(url.indexOf('?')>-1?'&':'?')+$.param(params)}
57
+ function transferHash(originalUrl,newUrl){var pos=originalUrl.indexOf('#');if(-1===pos){return newUrl}
58
+ if(pos>0){originalUrl=originalUrl.substr(pos)}
59
+ return newUrl+originalUrl}
60
+ function error(msg){return $('<span class="lity-error"/>').append(msg)}
61
+ function imageHandler(target,instance){var desc=(instance.opener()&&instance.opener().data('lity-desc'))||'Image with no description';var img=$('<img src="'+target+'" alt="'+desc+'"/>');var deferred=_deferred();var failed=function(){deferred.reject(error('Failed loading image'))};img.on('load',function(){if(this.naturalWidth===0){return failed()}
62
+ deferred.resolve(img)}).on('error',failed);return deferred.promise()}
63
+ imageHandler.test=function(target){return _imageRegexp.test(target)};function inlineHandler(target,instance){var el,placeholder,hasHideClass;try{el=$(target)}catch(e){return!1}
64
+ if(!el.length){return!1}
65
+ placeholder=$('<i style="display:none !important"/>');hasHideClass=el.hasClass('lity-hide');instance.element().one('lity:remove',function(){placeholder.before(el).remove();if(hasHideClass&&!el.closest('.lity-content').length){el.addClass('lity-hide')}});return el.removeClass('lity-hide').after(placeholder)}
66
+ function youtubeHandler(target){var matches=_youtubeRegex.exec(target);if(!matches){return!1}
67
+ return iframeHandler(transferHash(target,appendQueryParams('https://www.youtube'+(matches[2]||'')+'.com/embed/'+matches[4],$.extend({autoplay:1},parseQueryParams(matches[5]||'')))))}
68
+ function vimeoHandler(target){var matches=_vimeoRegex.exec(target);if(!matches){return!1}
69
+ return iframeHandler(transferHash(target,appendQueryParams('https://player.vimeo.com/video/'+matches[3],$.extend({autoplay:1},parseQueryParams(matches[4]||'')))))}
70
+ function facebookvideoHandler(target){var matches=_facebookvideoRegex.exec(target);if(!matches){return!1}
71
+ if(0!==target.indexOf('http')){target='https:'+target}
72
+ return iframeHandler(transferHash(target,appendQueryParams('https://www.facebook.com/plugins/video.php?href='+target,$.extend({autoplay:1},parseQueryParams(matches[4]||'')))))}
73
+ function googlemapsHandler(target){var matches=_googlemapsRegex.exec(target);if(!matches){return!1}
74
+ return iframeHandler(transferHash(target,appendQueryParams('https://www.google.'+matches[3]+'/maps?'+matches[6],{output:matches[6].indexOf('layer=c')>0?'svembed':'embed'})))}
75
+ function iframeHandler(target){return'<div class="lity-iframe-container"><iframe frameborder="0" allowfullscreen src="'+target+'"/></div>'}
76
+ function winHeight(){return document.documentElement.clientHeight?document.documentElement.clientHeight:Math.round(_win.height())}
77
+ function keydown(e){var current=currentInstance();if(!current){return}
78
+ if(e.keyCode===27){current.close()}
79
+ if(e.keyCode===9){handleTabKey(e,current)}}
80
+ function handleTabKey(e,instance){var focusableElements=instance.element().find(_focusableElementsSelector);var focusedIndex=focusableElements.index(document.activeElement);if(e.shiftKey&&focusedIndex<=0){focusableElements.get(focusableElements.length-1).focus();e.preventDefault()}else if(!e.shiftKey&&focusedIndex===focusableElements.length-1){focusableElements.get(0).focus();e.preventDefault()}}
81
+ function resize(){$.each(_instances,function(i,instance){instance.resize()})}
82
+ function registerInstance(instanceToRegister){if(1===_instances.unshift(instanceToRegister)){_html.addClass('lity-active');_win.on({resize:resize,keydown:keydown})}
83
+ $('body > *').not(instanceToRegister.element()).addClass('lity-hidden').each(function(){var el=$(this);if(undefined!==el.data(_dataAriaHidden)){return}
84
+ el.data(_dataAriaHidden,el.attr(_attrAriaHidden)||null)}).attr(_attrAriaHidden,'true')}
85
+ function removeInstance(instanceToRemove){var show;instanceToRemove.element().attr(_attrAriaHidden,'true');if(1===_instances.length){_html.removeClass('lity-active');_win.off({resize:resize,keydown:keydown})}
86
+ _instances=$.grep(_instances,function(instance){return instanceToRemove!==instance});if(!!_instances.length){show=_instances[0].element()}else{show=$('.lity-hidden')}
87
+ show.removeClass('lity-hidden').each(function(){var el=$(this),oldAttr=el.data(_dataAriaHidden);if(!oldAttr){el.removeAttr(_attrAriaHidden)}else{el.attr(_attrAriaHidden,oldAttr)}
88
+ el.removeData(_dataAriaHidden)})}
89
+ function currentInstance(){if(0===_instances.length){return null}
90
+ return _instances[0]}
91
+ function factory(target,instance,handlers,preferredHandler){var handler='inline',content;var currentHandlers=$.extend({},handlers);if(preferredHandler&&currentHandlers[preferredHandler]){content=currentHandlers[preferredHandler](target,instance);handler=preferredHandler}else{$.each(['inline','iframe'],function(i,name){delete currentHandlers[name];currentHandlers[name]=handlers[name]});$.each(currentHandlers,function(name,currentHandler){if(!currentHandler){return!0}
92
+ if(currentHandler.test&&!currentHandler.test(target,instance)){return!0}
93
+ content=currentHandler(target,instance);if(!1!==content){handler=name;return!1}})}
94
+ return{handler:handler,content:content||''}}
95
+ function Lity(target,options,opener,activeElement){var self=this;var result;var isReady=!1;var isClosed=!1;var element;var content;options=$.extend({},_defaultOptions,options);element=$(options.template);self.element=function(){return element};self.opener=function(){return opener};self.options=$.proxy(settings,self,options);self.handlers=$.proxy(settings,self,options.handlers);self.resize=function(){if(!isReady||isClosed){return}
96
+ content.css('max-height',winHeight()+'px').trigger('lity:resize',[self])};self.close=function(){if(!isReady||isClosed){return}
97
+ isClosed=!0;removeInstance(self);var deferred=_deferred();if(activeElement&&(document.activeElement===element[0]||$.contains(element[0],document.activeElement))){try{activeElement.focus()}catch(e){}}
98
+ content.trigger('lity:close',[self]);element.removeClass('lity-opened').addClass('lity-closed');transitionEnd(content.add(element)).always(function(){content.trigger('lity:remove',[self]);element.remove();element=undefined;deferred.resolve()});return deferred.promise()};result=factory(target,self,options.handlers,options.handler);$("body").addClass("opened-lity-popup");element.attr(_attrAriaHidden,'false').addClass('lity-loading lity-opened lity-'+result.handler).appendTo('body').focus().on('click','[data-lity-close]',function(e){if($(e.target).is('[data-lity-close]')){$("body").removeClass("opened-lity-popup");self.close()}}).trigger('lity:open',[self]);registerInstance(self);$.when(result.content).always(ready);function ready(result){content=$(result).css('max-height',winHeight()+'px');element.find('.lity-loader').each(function(){var loader=$(this);transitionEnd(loader).always(function(){loader.remove()})});element.removeClass('lity-loading').find('.lity-content').empty().append(content);isReady=!0;content.trigger('lity:ready',[self]);jQuery('.list-isotope').find('.post-inner-loop').isotope('layout').isotope('reloadItems');if(jQuery('.list-isotope-metro').size()>0){setup_packery_portfolio('all')}
99
+ jQuery('.list-carousel-slick,.post-format-gallery,.slick-initialized').resize();jQuery(".pt-plus-timeline-list").isotope('layout').isotope('reloadItems');jQuery(".hover-tilt").hover3d({selector:".blog-list-style-content,.portfolio-item-content,> .addbanner-block,> .addbanner_product_box,> .vc_single_image-wrapper,> .cascading-inner-loop,> .pt-plus-magic-box,> .call-to-action-img,> .blog-hover-inner-tilt,> .logo-image-wrap",shine:!1,perspective:1000,invert:!0,sensitivity:35,})}}
100
+ function lity(target,options,opener){if(!target.preventDefault){opener=$(opener)}else{target.preventDefault();opener=$(this);target=opener.data('lity-target')||opener.attr('href')||opener.attr('src')}
101
+ var instance=new Lity(target,$.extend({},opener.data('lity-options')||opener.data('lity'),options),opener,document.activeElement);if(!target.preventDefault){return instance}}
102
+ lity.version='2.2.2';lity.options=$.proxy(settings,lity,_defaultOptions);lity.handlers=$.proxy(settings,lity,_defaultOptions.handlers);lity.current=currentInstance;$(document).on('click.lity','[data-lity]',lity);return lity}))
103
+
104
+ /*slick.min.js*/
105
+ !function(i){"use strict";"function"==typeof define&&define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',nextArrow:'<button class="slick-next" aria-label="Next" type="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" />').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden="hidden",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(t),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange="visibilitychange",n.windowWidth=0,n.windowTimer=null,s=i(t).data("slick")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,void 0!==document.mozHidden?(n.hidden="mozHidden",n.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(n.hidden="webkitHidden",n.visibilityChange="webkitvisibilitychange"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=e++,n.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,n.registerBreakpoints(),n.init(!0)}}()).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if("boolean"==typeof t)o=t,t=null;else if(t<0||t>=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&&0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):!0===o?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr("data-slick-index",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),!0===s.options.rtl&&!1===s.options.vertical&&(e=-e),!1===s.transformsEnabled?!1===s.options.vertical?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):!1===s.cssTransitions?(!0===s.options.rtl&&(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),!1===s.options.vertical?(o[s.animType]="translate("+i+"px, 0px)",s.$slideTrack.css(o)):(o[s.animType]="translate(0px,"+i+"px)",s.$slideTrack.css(o))},complete:function(){t&&t.call()}})):(s.applyTransition(),e=Math.ceil(e),!1===s.options.vertical?o[s.animType]="translate3d("+e+"px, 0px, 0px)":o[s.animType]="translate3d(0px,"+e+"px, 0px)",s.$slideTrack.css(o),t&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&&"object"==typeof t&&t.each(function(){var t=i(this).slick("getSlick");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};!1===e.options.fade?t[e.transitionType]=e.transformType+" "+e.options.speed+"ms "+e.options.cssEase:t[e.transitionType]="opacity "+e.options.speed+"ms "+e.options.cssEase,!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(!1===i.options.infinite&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&&(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount>e.options.slidesToShow?(e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&&e.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},e.prototype.buildDots=function(){var e,t,o=this;if(!0===o.options.dots){for(o.$slider.addClass("slick-dotted"),t=i("<ul />").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i("<li />").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find("li").first().addClass("slick-active")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+":not(.slick-cloned)").addClass("slick-slide"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr("data-slick-index",e).data("originalStyling",i(t).attr("style")||"")}),e.$slider.addClass("slick-slider"),e.$slideTrack=0===e.slideCount?i('<div class="slick-track"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class="slick-track"/>').parent(),e.$list=e.$slideTrack.wrap('<div class="slick-list"/>').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&&!0!==e.options.swipeToSlide||(e.options.slidesToScroll=1),i("img[data-lazy]",e.$slider).not("[src]").addClass("slick-loading"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),!0===e.options.draggable&&e.$list.addClass("draggable")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.options.rows>1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement("div");for(e=0;e<l.options.rows;e++){var a=document.createElement("div");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+"%",display:"inline-block"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if("window"===r.respondTo?n=a:"slider"===r.respondTo?n=d:"min"===r.respondTo&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(!1===r.originalSettings.mobileFirst?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||!1===l||r.$slider.trigger("breakpoint",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is("a")&&e.preventDefault(),l.is("li")||(l=l.closest("li")),n=r.slideCount%r.options.slidesToScroll!=0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case"previous":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide+s,!1,t);break;case"index":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger("focus");break;default:return}},e.prototype.checkNavigable=function(i){var e,t;if(e=this.getNavigableIndexes(),t=0,i>e[e.length-1])i=e[e.length-1];else for(var o in e){if(i<e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&(i("li",e.$dots).off("click.slick",e.changeSlide).off("mouseenter.slick",i.proxy(e.interrupt,e,!0)).off("mouseleave.slick",i.proxy(e.interrupt,e,!1)),!0===e.options.accessibility&&e.$dots.off("keydown.slick",e.keyHandler)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&&e.$nextArrow.off("click.slick",e.changeSlide),!0===e.options.accessibility&&(e.$prevArrow&&e.$prevArrow.off("keydown.slick",e.keyHandler),e.$nextArrow&&e.$nextArrow.off("keydown.slick",e.keyHandler))),e.$list.off("touchstart.slick mousedown.slick",e.swipeHandler),e.$list.off("touchmove.slick mousemove.slick",e.swipeHandler),e.$list.off("touchend.slick mouseup.slick",e.swipeHandler),e.$list.off("touchcancel.slick mouseleave.slick",e.swipeHandler),e.$list.off("click.slick",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),!0===e.options.accessibility&&e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().off("click.slick",e.selectHandler),i(window).off("orientationchange.slick.slick-"+e.instanceUid,e.orientationChange),i(window).off("resize.slick.slick-"+e.instanceUid,e.resize),i("[draggable!=true]",e.$slideTrack).off("dragstart",e.preventDefault),i(window).off("load.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.off("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows>1&&((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&&(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(".slick-cloned",t.$slider).detach(),t.$dots&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){i(this).attr("style",i(this).data("originalStyling"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass("slick-slider"),t.$slider.removeClass("slick-initialized"),t.$slider.removeClass("slick-dotted"),t.unslicked=!0,e||t.$slider.trigger("destroy",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]="",!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;!1===t.cssTransitions?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&&setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;!1===e.cssTransitions?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&&(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*",function(t){t.stopImmediatePropagation();var o=i(this);setTimeout(function(){e.options.pauseOnFocus&&(e.focussed=o.is(":focus"),e.autoPlay())},0)})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){return this.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(!0===i.options.infinite)if(i.slideCount<=i.options.slidesToShow)++o;else for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(!0===i.options.centerMode)o=i.slideCount;else if(i.options.asNavFor)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s,n=this,r=0;return n.slideOffset=0,t=n.$slides.first().outerHeight(!0),!0===n.options.infinite?(n.slideCount>n.options.slidesToShow&&(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,!0===n.options.vertical&&!0===n.options.centerMode&&(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&&(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!=0&&i+n.options.slidesToScroll>n.slideCount&&n.slideCount>n.options.slidesToShow&&(i>n.slideCount?(n.slideOffset=(n.options.slidesToShow-(i-n.slideCount))*n.slideWidth*-1,r=(n.options.slidesToShow-(i-n.slideCount))*t*-1):(n.slideOffset=n.slideCount%n.options.slidesToScroll*n.slideWidth*-1,r=n.slideCount%n.options.slidesToScroll*t*-1))):i+n.options.slidesToShow>n.slideCount&&(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount<=n.options.slidesToShow&&(n.slideOffset=0,r=0),!0===n.options.centerMode&&n.slideCount<=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:!0===n.options.centerMode&&!0===n.options.infinite?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:!0===n.options.centerMode&&(n.slideOffset=0,n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)),e=!1===n.options.vertical?i*n.slideWidth*-1+n.slideOffset:i*t*-1+r,!0===n.options.variableWidth&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===n.options.centerMode&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow+1),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(n.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){return this.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(!1===e.options.infinite?i=e.slideCount:(t=-1*e.options.slidesToScroll,o=-1*e.options.slidesToScroll,i=2*e.slideCount);t<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o=this;return t=!0===o.options.centerMode?o.slideWidth*Math.floor(o.options.slidesToShow/2):0,!0===o.options.swipeToSlide?(o.$slideTrack.find(".slick-slide").each(function(s,n){if(n.offsetLeft-t+i(n).outerWidth()/2>-1*o.swipeLeft)return e=n,!1}),Math.abs(i(e).attr("data-slick-index")-o.currentSlide)||1):o.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){this.changeSlide({data:{message:"index",index:parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass("slick-initialized")||(i(t.$slider).addClass("slick-initialized"),t.buildRows(),t.buildOut(),t.setProps(),t.startLoad(),t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots(),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.initADA(),t.options.autoplay&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this,t=Math.ceil(e.slideCount/e.options.slidesToShow),o=e.getNavigableIndexes().filter(function(i){return i>=0&&i<e.slideCount});e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==e.$dots&&(e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){var s=o.indexOf(t);i(this).attr({role:"tabpanel",id:"slick-slide"+e.instanceUid+t,tabindex:-1}),-1!==s&&i(this).attr({"aria-describedby":"slick-slide-control"+e.instanceUid+s})}),e.$dots.attr("role","tablist").find("li").each(function(s){var n=o[s];i(this).attr({role:"presentation"}),i(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+e.instanceUid+s,"aria-controls":"slick-slide"+e.instanceUid+n,"aria-label":s+1+" of "+t,"aria-selected":null,tabindex:"-1"})}).eq(e.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var s=e.currentSlide,n=s+e.options.slidesToShow;s<n;s++)e.$slides.eq(s).attr("tabindex",0);e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},i.changeSlide),i.$nextArrow.off("click.slick").on("click.slick",{message:"next"},i.changeSlide),!0===i.options.accessibility&&(i.$prevArrow.on("keydown.slick",i.keyHandler),i.$nextArrow.on("keydown.slick",i.keyHandler)))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&&(i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.accessibility&&e.$dots.on("keydown.slick",e.keyHandler)),!0===e.options.dots&&!0===e.options.pauseOnDotsHover&&i("li",e.$dots).on("mouseenter.slick",i.proxy(e.interrupt,e,!0)).on("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&&(e.$list.on("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.on("mouseleave.slick",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on("touchstart.slick mousedown.slick",{action:"start"},e.swipeHandler),e.$list.on("touchmove.slick mousemove.slick",{action:"move"},e.swipeHandler),e.$list.on("touchend.slick mouseup.slick",{action:"end"},e.swipeHandler),e.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},e.swipeHandler),e.$list.on("click.slick",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),!0===e.options.accessibility&&e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),i(window).on("orientationchange.slick.slick-"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on("resize.slick.slick-"+e.instanceUid,i.proxy(e.resize,e)),i("[draggable!=true]",e.$slideTrack).on("dragstart",e.preventDefault),i(window).on("load.slick.slick-"+e.instanceUid,e.setPosition),i(e.setPosition)},e.prototype.initUI=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&&!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&&!0===e.options.accessibility&&e.changeSlide({data:{message:!0===e.options.rtl?"previous":"next"}}))},e.prototype.lazyLoad=function(){function e(e){i("img[data-lazy]",e).each(function(){var e=i(this),t=i(this).attr("data-lazy"),o=i(this).attr("data-srcset"),s=i(this).attr("data-sizes")||n.$slider.attr("data-sizes"),r=document.createElement("img");r.onload=function(){e.animate({opacity:0},100,function(){o&&(e.attr("srcset",o),s&&e.attr("sizes",s)),e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),n.$slider.trigger("lazyLoaded",[n,e,t])})},r.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,e,t])},r.src=t})}var t,o,s,n=this;if(!0===n.options.centerMode?!0===n.options.infinite?s=(o=n.currentSlide+(n.options.slidesToShow/2+1))+n.options.slidesToShow+2:(o=Math.max(0,n.currentSlide-(n.options.slidesToShow/2+1)),s=n.options.slidesToShow/2+1+2+n.currentSlide):(o=n.options.infinite?n.options.slidesToShow+n.currentSlide:n.currentSlide,s=Math.ceil(o+n.options.slidesToShow),!0===n.options.fade&&(o>0&&o--,s<=n.slideCount&&s++)),t=n.$slider.find(".slick-slide").slice(o,s),"anticipated"===n.options.lazyLoad)for(var r=o-1,l=s,d=n.$slider.find(".slick-slide"),a=0;a<n.options.slidesToScroll;a++)r<0&&(r=n.slideCount-1),t=(t=t.add(d.eq(r))).add(d.eq(l)),r--,l++;e(t),n.slideCount<=n.options.slidesToShow?e(n.$slider.find(".slick-slide")):n.currentSlide>=n.slideCount-n.options.slidesToShow?e(n.$slider.find(".slick-cloned").slice(0,n.options.slidesToShow)):0===n.currentSlide&&e(n.$slider.find(".slick-cloned").slice(-1*n.options.slidesToShow))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass("slick-loading"),i.initUI(),"progressive"===i.options.lazyLoad&&i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(e){var t=this;t.unslicked||(t.$slider.trigger("afterChange",[t,e]),t.animating=!1,t.slideCount>t.options.slidesToShow&&t.setPosition(),t.swipeLeft=null,t.options.autoplay&&t.autoPlay(),!0===t.options.accessibility&&(t.initADA(),t.options.focusOnChange&&i(t.$slides.get(t.currentSlide)).attr("tabindex",0).focus()))},e.prototype.prev=e.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n,r,l=this,d=i("img[data-lazy]",l.$slider);d.length?(t=d.first(),o=t.attr("data-lazy"),s=t.attr("data-srcset"),n=t.attr("data-sizes")||l.$slider.attr("data-sizes"),(r=document.createElement("img")).onload=function(){s&&(t.attr("srcset",s),n&&t.attr("sizes",n)),t.attr("src",o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===l.options.adaptiveHeight&&l.setPosition(),l.$slider.trigger("lazyLoaded",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e<3?setTimeout(function(){l.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),l.$slider.trigger("lazyLoadError",[l,t,o]),l.progressiveLazyLoad())},r.src=o):l.$slider.trigger("allImagesLoaded",[l])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(s.currentSlide=0),t=s.currentSlide,s.destroy(!0),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:"index",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if("array"===i.type(n)&&n.length){s.respondTo=s.options.respondTo||"window";for(e in n)if(o=s.breakpoints.length-1,n.hasOwnProperty(e)){for(t=n[e].breakpoint;o>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass("slick-slide"),e.slideCount=e.$slides.length,e.currentSlide>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger("reInit",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&&(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;if(i="boolean"==typeof i?!0===(e=i)?0:o.slideCount-1:!0===e?--i:i,o.slideCount<1||i<0||i>o.slideCount-1)return!1;o.unload(),!0===t?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,o.reinit()},e.prototype.setCSS=function(i){var e,t,o=this,s={};!0===o.options.rtl&&(i=-i),e="left"==o.positionProp?Math.ceil(i)+"px":"0px",t="top"==o.positionProp?Math.ceil(i)+"px":"0px",s[o.positionProp]=i,!1===o.transformsEnabled?o.$slideTrack.css(s):(s={},!1===o.cssTransitions?(s[o.animType]="translate("+e+", "+t+")",o.$slideTrack.css(s)):(s[o.animType]="translate3d("+e+", "+t+", 0px)",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;!1===i.options.vertical?!0===i.options.centerMode&&i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&&i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&&!1===i.options.variableWidth?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(".slick-slide").length))):!0===i.options.variableWidth?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(".slick-slide").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();!1===i.options.variableWidth&&i.$slideTrack.children(".slick-slide").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,!0===t.options.rtl?i(s).css({position:"relative",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}):i(s).css({position:"relative",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css("height",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if("object"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n="multiple"):"string"===i.type(arguments[0])&&(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&&"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&&(n="single")),"single"===n)r.options[o]=s;else if("multiple"===n)i.each(o,function(i,e){r.options[i]=e});else if("responsive"===n)for(t in s)if("array"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.setDimensions(),i.setHeight(),!1===i.options.fade?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger("setPosition",[i])},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=!0===i.options.vertical?"top":"left","top"===i.positionProp?i.$slider.addClass("slick-vertical"):i.$slider.removeClass("slick-vertical"),void 0===e.WebkitTransition&&void 0===e.MozTransition&&void 0===e.msTransition||!0===i.options.useCSS&&(i.cssTransitions=!0),i.options.fade&&("number"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&!1!==i.animType&&(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&!1!==i.animType},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;if(t=n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),n.$slides.eq(i).addClass("slick-current"),!0===n.options.centerMode){var r=n.options.slidesToShow%2==0?1:0;e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e+r,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1+r,o+e+2).addClass("slick-active").attr("aria-hidden","false")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass("slick-center"):i===n.slideCount-1&&t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")}else i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length<=n.options.slidesToShow?t.addClass("slick-active").attr("aria-hidden","false"):(s=n.slideCount%n.options.slidesToShow,o=!0===n.options.infinite?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&&n.slideCount-i<n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass("slick-active").attr("aria-hidden","false"):t.slice(o,o+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"));"ondemand"!==n.options.lazyLoad&&"anticipated"!==n.options.lazyLoad||n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&&(s.options.centerMode=!1),!0===s.options.infinite&&!1===s.options.fade&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t-s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");for(e=0;e<o+s.slideCount;e+=1)t=e,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t+s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");s.$slideTrack.find(".slick-cloned").find("[id]").each(function(){i(this).attr("id","")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(".slick-slide")?i(e.target):i(e.target).parents(".slick-slide"),s=parseInt(o.attr("data-slick-index"));s||(s=0),t.slideCount<=t.options.slidesToShow?t.slideHandler(s,!1,!0):t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,!(!0===a.animating&&!0===a.options.waitForAnimate||!0===a.options.fade&&a.currentSlide===i))if(!1===e&&a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,!1===a.options.infinite&&!1===a.options.centerMode&&(i<0||i>a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&&!0===a.options.centerMode&&(i<0||i>a.slideCount-a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+o:o>=a.slideCount?a.slideCount%a.options.slidesToScroll!=0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger("beforeChange",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&&(l=(l=a.getNavTarget()).slick("getSlick")).slideCount<=l.options.slidesToShow&&l.setSlideClasses(a.currentSlide),a.updateDots(),a.updateArrows(),!0===a.options.fade)return!0!==t?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight();!0!==t?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)}},e.prototype.startLoad=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.hide(),i.$slider.addClass("slick-loading")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),(o=Math.round(180*t/Math.PI))<0&&(o=360-Math.abs(o)),o<=45&&o>=0?!1===s.options.rtl?"left":"right":o<=360&&o>=315?!1===s.options.rtl?"left":"right":o>=135&&o<=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o>=35&&o<=135?"down":"up":"vertical"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.swiping=!1,o.scrolling)return o.scrolling=!1,!1;if(o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength>10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&&o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength>=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case"left":case"down":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case"right":case"up":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}"vertical"!=t&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&&!1===e.options.swipe||!1===e.options.draggable&&-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&&(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case"start":e.swipeStart(i);break;case"move":e.swipeMove(i);break;case"end":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r,l=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!l.dragging||l.scrolling||n&&1!==n.length)&&(e=l.getLeft(l.currentSlide),l.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,l.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,l.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(l.touchObject.curX-l.touchObject.startX,2))),r=Math.round(Math.sqrt(Math.pow(l.touchObject.curY-l.touchObject.startY,2))),!l.options.verticalSwiping&&!l.swiping&&r>4?(l.scrolling=!0,!1):(!0===l.options.verticalSwiping&&(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&&l.touchObject.swipeLength>4&&(l.swiping=!0,i.preventDefault()),s=(!1===l.options.rtl?1:-1)*(l.touchObject.curX>l.touchObject.startX?1:-1),!0===l.options.verticalSwiping&&(s=l.touchObject.curY>l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,!1===l.options.infinite&&(0===l.currentSlide&&"right"===t||l.currentSlide>=l.getDotCount()&&"left"===t)&&(o=l.touchObject.swipeLength*l.options.edgeFriction,l.touchObject.edgeHit=!0),!1===l.options.vertical?l.swipeLeft=e+o*s:l.swipeLeft=e+o*(l.$list.height()/l.listWidth)*s,!0===l.options.verticalSwiping&&(l.swipeLeft=e+o*s),!0!==l.options.fade&&!1!==l.options.touchMove&&(!0===l.animating?(l.swipeLeft=null,!1):void l.setCSS(l.swipeLeft))))},e.prototype.swipeStart=function(i){var e,t=this;if(t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount<=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,t.dragging=!0},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&&(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(".slick-cloned",e.$slider).remove(),e.$dots&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.remove(),e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},e.prototype.unslick=function(i){var e=this;e.$slider.trigger("unslick",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i=this;Math.floor(i.options.slidesToShow/2),!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&!i.options.infinite&&(i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===i.currentSlide?(i.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-i.options.slidesToShow&&!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-1&&!0===i.options.centerMode&&(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&&(i.$dots.find("li").removeClass("slick-active").end(),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&&(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i<r;i++)if("object"==typeof s||void 0===s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),void 0!==t)return t;return o}});
106
+
107
+ /*Isotope PACKAGED v3.0.4*/
108
+ !function(t,e){"function"==typeof define&&define.amd?define("jquery-bridget/jquery-bridget",["jquery"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("jquery")):t.jQueryBridget=e(t,t.jQuery)}(window,function(t,e){"use strict";function i(i,s,a){function u(t,e,o){var n,s="$()."+i+'("'+e+'")';return t.each(function(t,u){var h=a.data(u,i);if(!h)return void r(i+" not initialized. Cannot call methods, i.e. "+s);var d=h[e];if(!d||"_"==e.charAt(0))return void r(s+" is not a valid method");var l=d.apply(h,o);n=void 0===n?l:n}),void 0!==n?n:t}function h(t,e){t.each(function(t,o){var n=a.data(o,i);n?(n.option(e),n._init()):(n=new s(o,e),a.data(o,i,n))})}a=a||e||t.jQuery,a&&(s.prototype.option||(s.prototype.option=function(t){a.isPlainObject(t)&&(this.options=a.extend(!0,this.options,t))}),a.fn[i]=function(t){if("string"==typeof t){var e=n.call(arguments,1);return u(this,t,e)}return h(this,t),this},o(a))}function o(t){!t||t&&t.bridget||(t.bridget=i)}var n=Array.prototype.slice,s=t.console,r="undefined"==typeof s?function(){}:function(t){s.error(t)};return o(e||t.jQuery),i}),function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},o=i[t]=i[t]||[];return o.indexOf(e)==-1&&o.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},o=i[t]=i[t]||{};return o[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var o=i.indexOf(e);return o!=-1&&i.splice(o,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var o=0,n=i[o];e=e||[];for(var s=this._onceEvents&&this._onceEvents[t];n;){var r=s&&s[n];r&&(this.off(t,n),delete s[n]),n.apply(this,e),o+=r?0:1,n=i[o]}return this}},t}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("get-size/get-size",[],function(){return e()}):"object"==typeof module&&module.exports?module.exports=e():t.getSize=e()}(window,function(){"use strict";function t(t){var e=parseFloat(t),i=t.indexOf("%")==-1&&!isNaN(e);return i&&e}function e(){}function i(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;e<h;e++){var i=u[e];t[i]=0}return t}function o(t){var e=getComputedStyle(t);return e||a("Style returned "+e+". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1"),e}function n(){if(!d){d=!0;var e=document.createElement("div");e.style.width="200px",e.style.padding="1px 2px 3px 4px",e.style.borderStyle="solid",e.style.borderWidth="1px 2px 3px 4px",e.style.boxSizing="border-box";var i=document.body||document.documentElement;i.appendChild(e);var n=o(e);s.isBoxSizeOuter=r=200==t(n.width),i.removeChild(e)}}function s(e){if(n(),"string"==typeof e&&(e=document.querySelector(e)),e&&"object"==typeof e&&e.nodeType){var s=o(e);if("none"==s.display)return i();var a={};a.width=e.offsetWidth,a.height=e.offsetHeight;for(var d=a.isBorderBox="border-box"==s.boxSizing,l=0;l<h;l++){var f=u[l],c=s[f],m=parseFloat(c);a[f]=isNaN(m)?0:m}var p=a.paddingLeft+a.paddingRight,y=a.paddingTop+a.paddingBottom,g=a.marginLeft+a.marginRight,v=a.marginTop+a.marginBottom,_=a.borderLeftWidth+a.borderRightWidth,I=a.borderTopWidth+a.borderBottomWidth,z=d&&r,x=t(s.width);x!==!1&&(a.width=x+(z?0:p+_));var S=t(s.height);return S!==!1&&(a.height=S+(z?0:y+I)),a.innerWidth=a.width-(p+_),a.innerHeight=a.height-(y+I),a.outerWidth=a.width+g,a.outerHeight=a.height+v,a}}var r,a="undefined"==typeof console?e:function(t){console.error(t)},u=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],h=u.length,d=!1;return s}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("desandro-matches-selector/matches-selector",e):"object"==typeof module&&module.exports?module.exports=e():t.matchesSelector=e()}(window,function(){"use strict";var t=function(){var t=window.Element.prototype;if(t.matches)return"matches";if(t.matchesSelector)return"matchesSelector";for(var e=["webkit","moz","ms","o"],i=0;i<e.length;i++){var o=e[i],n=o+"MatchesSelector";if(t[n])return n}}();return function(e,i){return e[t](i)}}),function(t,e){"function"==typeof define&&define.amd?define("fizzy-ui-utils/utils",["desandro-matches-selector/matches-selector"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("desandro-matches-selector")):t.fizzyUIUtils=e(t,t.matchesSelector)}(window,function(t,e){var i={};i.extend=function(t,e){for(var i in e)t[i]=e[i];return t},i.modulo=function(t,e){return(t%e+e)%e},i.makeArray=function(t){var e=[];if(Array.isArray(t))e=t;else if(t&&"object"==typeof t&&"number"==typeof t.length)for(var i=0;i<t.length;i++)e.push(t[i]);else e.push(t);return e},i.removeFrom=function(t,e){var i=t.indexOf(e);i!=-1&&t.splice(i,1)},i.getParent=function(t,i){for(;t.parentNode&&t!=document.body;)if(t=t.parentNode,e(t,i))return t},i.getQueryElement=function(t){return"string"==typeof t?document.querySelector(t):t},i.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},i.filterFindElements=function(t,o){t=i.makeArray(t);var n=[];return t.forEach(function(t){if(t instanceof HTMLElement){if(!o)return void n.push(t);e(t,o)&&n.push(t);for(var i=t.querySelectorAll(o),s=0;s<i.length;s++)n.push(i[s])}}),n},i.debounceMethod=function(t,e,i){var o=t.prototype[e],n=e+"Timeout";t.prototype[e]=function(){var t=this[n];t&&clearTimeout(t);var e=arguments,s=this;this[n]=setTimeout(function(){o.apply(s,e),delete s[n]},i||100)}},i.docReady=function(t){var e=document.readyState;"complete"==e||"interactive"==e?setTimeout(t):document.addEventListener("DOMContentLoaded",t)},i.toDashed=function(t){return t.replace(/(.)([A-Z])/g,function(t,e,i){return e+"-"+i}).toLowerCase()};var o=t.console;return i.htmlInit=function(e,n){i.docReady(function(){var s=i.toDashed(n),r="data-"+s,a=document.querySelectorAll("["+r+"]"),u=document.querySelectorAll(".js-"+s),h=i.makeArray(a).concat(i.makeArray(u)),d=r+"-options",l=t.jQuery;h.forEach(function(t){var i,s=t.getAttribute(r)||t.getAttribute(d);try{i=s&&JSON.parse(s)}catch(a){return void(o&&o.error("Error parsing "+r+" on "+t.className+": "+a))}var u=new e(t,i);l&&l.data(t,n,u)})})},i}),function(t,e){"function"==typeof define&&define.amd?define("outlayer/item",["ev-emitter/ev-emitter","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("ev-emitter"),require("get-size")):(t.Outlayer={},t.Outlayer.Item=e(t.EvEmitter,t.getSize))}(window,function(t,e){"use strict";function i(t){for(var e in t)return!1;return e=null,!0}function o(t,e){t&&(this.element=t,this.layout=e,this.position={x:0,y:0},this._create())}function n(t){return t.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()})}var s=document.documentElement.style,r="string"==typeof s.transition?"transition":"WebkitTransition",a="string"==typeof s.transform?"transform":"WebkitTransform",u={WebkitTransition:"webkitTransitionEnd",transition:"transitionend"}[r],h={transform:a,transition:r,transitionDuration:r+"Duration",transitionProperty:r+"Property",transitionDelay:r+"Delay"},d=o.prototype=Object.create(t.prototype);d.constructor=o,d._create=function(){this._transn={ingProperties:{},clean:{},onEnd:{}},this.css({position:"absolute"})},d.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},d.getSize=function(){this.size=e(this.element)},d.css=function(t){var e=this.element.style;for(var i in t){var o=h[i]||i;e[o]=t[i]}},d.getPosition=function(){var t=getComputedStyle(this.element),e=this.layout._getOption("originLeft"),i=this.layout._getOption("originTop"),o=t[e?"left":"right"],n=t[i?"top":"bottom"],s=this.layout.size,r=o.indexOf("%")!=-1?parseFloat(o)/100*s.width:parseInt(o,10),a=n.indexOf("%")!=-1?parseFloat(n)/100*s.height:parseInt(n,10);r=isNaN(r)?0:r,a=isNaN(a)?0:a,r-=e?s.paddingLeft:s.paddingRight,a-=i?s.paddingTop:s.paddingBottom,this.position.x=r,this.position.y=a},d.layoutPosition=function(){var t=this.layout.size,e={},i=this.layout._getOption("originLeft"),o=this.layout._getOption("originTop"),n=i?"paddingLeft":"paddingRight",s=i?"left":"right",r=i?"right":"left",a=this.position.x+t[n];e[s]=this.getXValue(a),e[r]="";var u=o?"paddingTop":"paddingBottom",h=o?"top":"bottom",d=o?"bottom":"top",l=this.position.y+t[u];e[h]=this.getYValue(l),e[d]="",this.css(e),this.emitEvent("layout",[this])},d.getXValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&!e?t/this.layout.size.width*100+"%":t+"px"},d.getYValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&e?t/this.layout.size.height*100+"%":t+"px"},d._transitionTo=function(t,e){this.getPosition();var i=this.position.x,o=this.position.y,n=parseInt(t,10),s=parseInt(e,10),r=n===this.position.x&&s===this.position.y;if(this.setPosition(t,e),r&&!this.isTransitioning)return void this.layoutPosition();var a=t-i,u=e-o,h={};h.transform=this.getTranslate(a,u),this.transition({to:h,onTransitionEnd:{transform:this.layoutPosition},isCleaning:!0})},d.getTranslate=function(t,e){var i=this.layout._getOption("originLeft"),o=this.layout._getOption("originTop");return t=i?t:-t,e=o?e:-e,"translate3d("+t+"px, "+e+"px, 0)"},d.goTo=function(t,e){this.setPosition(t,e),this.layoutPosition()},d.moveTo=d._transitionTo,d.setPosition=function(t,e){this.position.x=parseInt(t,10),this.position.y=parseInt(e,10)},d._nonTransition=function(t){this.css(t.to),t.isCleaning&&this._removeStyles(t.to);for(var e in t.onTransitionEnd)t.onTransitionEnd[e].call(this)},d.transition=function(t){if(!parseFloat(this.layout.options.transitionDuration))return void this._nonTransition(t);var e=this._transn;for(var i in t.onTransitionEnd)e.onEnd[i]=t.onTransitionEnd[i];for(i in t.to)e.ingProperties[i]=!0,t.isCleaning&&(e.clean[i]=!0);if(t.from){this.css(t.from);var o=this.element.offsetHeight;o=null}this.enableTransition(t.to),this.css(t.to),this.isTransitioning=!0};var l="opacity,"+n(a);d.enableTransition=function(){if(!this.isTransitioning){var t=this.layout.options.transitionDuration;t="number"==typeof t?t+"ms":t,this.css({transitionProperty:l,transitionDuration:t,transitionDelay:this.staggerDelay||0}),this.element.addEventListener(u,this,!1)}},d.onwebkitTransitionEnd=function(t){this.ontransitionend(t)},d.onotransitionend=function(t){this.ontransitionend(t)};var f={"-webkit-transform":"transform"};d.ontransitionend=function(t){if(t.target===this.element){var e=this._transn,o=f[t.propertyName]||t.propertyName;if(delete e.ingProperties[o],i(e.ingProperties)&&this.disableTransition(),o in e.clean&&(this.element.style[t.propertyName]="",delete e.clean[o]),o in e.onEnd){var n=e.onEnd[o];n.call(this),delete e.onEnd[o]}this.emitEvent("transitionEnd",[this])}},d.disableTransition=function(){this.removeTransitionStyles(),this.element.removeEventListener(u,this,!1),this.isTransitioning=!1},d._removeStyles=function(t){var e={};for(var i in t)e[i]="";this.css(e)};var c={transitionProperty:"",transitionDuration:"",transitionDelay:""};return d.removeTransitionStyles=function(){this.css(c)},d.stagger=function(t){t=isNaN(t)?0:t,this.staggerDelay=t+"ms"},d.removeElem=function(){this.element.parentNode.removeChild(this.element),this.css({display:""}),this.emitEvent("remove",[this])},d.remove=function(){return r&&parseFloat(this.layout.options.transitionDuration)?(this.once("transitionEnd",function(){this.removeElem()}),void this.hide()):void this.removeElem()},d.reveal=function(){delete this.isHidden,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("visibleStyle");e[i]=this.onRevealTransitionEnd,this.transition({from:t.hiddenStyle,to:t.visibleStyle,isCleaning:!0,onTransitionEnd:e})},d.onRevealTransitionEnd=function(){this.isHidden||this.emitEvent("reveal")},d.getHideRevealTransitionEndProperty=function(t){var e=this.layout.options[t];if(e.opacity)return"opacity";for(var i in e)return i},d.hide=function(){this.isHidden=!0,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("hiddenStyle");e[i]=this.onHideTransitionEnd,this.transition({from:t.visibleStyle,to:t.hiddenStyle,isCleaning:!0,onTransitionEnd:e})},d.onHideTransitionEnd=function(){this.isHidden&&(this.css({display:"none"}),this.emitEvent("hide"))},d.destroy=function(){this.css({position:"",left:"",right:"",top:"",bottom:"",transition:"",transform:""})},o}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("outlayer/outlayer",["ev-emitter/ev-emitter","get-size/get-size","fizzy-ui-utils/utils","./item"],function(i,o,n,s){return e(t,i,o,n,s)}):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter"),require("get-size"),require("fizzy-ui-utils"),require("./item")):t.Outlayer=e(t,t.EvEmitter,t.getSize,t.fizzyUIUtils,t.Outlayer.Item)}(window,function(t,e,i,o,n){"use strict";function s(t,e){var i=o.getQueryElement(t);if(!i)return void(u&&u.error("Bad element for "+this.constructor.namespace+": "+(i||t)));this.element=i,h&&(this.$element=h(this.element)),this.options=o.extend({},this.constructor.defaults),this.option(e);var n=++l;this.element.outlayerGUID=n,f[n]=this,this._create();var s=this._getOption("initLayout");s&&this.layout()}function r(t){function e(){t.apply(this,arguments)}return e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e}function a(t){if("number"==typeof t)return t;var e=t.match(/(^\d*\.?\d*)(\w*)/),i=e&&e[1],o=e&&e[2];if(!i.length)return 0;i=parseFloat(i);var n=m[o]||1;return i*n}var u=t.console,h=t.jQuery,d=function(){},l=0,f={};s.namespace="outlayer",s.Item=n,s.defaults={containerStyle:{position:"relative"},initLayout:!0,originLeft:!0,originTop:!0,resize:!0,resizeContainer:!0,transitionDuration:"0.4s",hiddenStyle:{opacity:0,transform:"scale(0.001)"},visibleStyle:{opacity:1,transform:"scale(1)"}};var c=s.prototype;o.extend(c,e.prototype),c.option=function(t){o.extend(this.options,t)},c._getOption=function(t){var e=this.constructor.compatOptions[t];return e&&void 0!==this.options[e]?this.options[e]:this.options[t]},s.compatOptions={initLayout:"isInitLayout",horizontal:"isHorizontal",layoutInstant:"isLayoutInstant",originLeft:"isOriginLeft",originTop:"isOriginTop",resize:"isResizeBound",resizeContainer:"isResizingContainer"},c._create=function(){this.reloadItems(),this.stamps=[],this.stamp(this.options.stamp),o.extend(this.element.style,this.options.containerStyle);var t=this._getOption("resize");t&&this.bindResize()},c.reloadItems=function(){this.items=this._itemize(this.element.children)},c._itemize=function(t){for(var e=this._filterFindItemElements(t),i=this.constructor.Item,o=[],n=0;n<e.length;n++){var s=e[n],r=new i(s,this);o.push(r)}return o},c._filterFindItemElements=function(t){return o.filterFindElements(t,this.options.itemSelector)},c.getItemElements=function(){return this.items.map(function(t){return t.element})},c.layout=function(){this._resetLayout(),this._manageStamps();var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;this.layoutItems(this.items,e),this._isLayoutInited=!0},c._init=c.layout,c._resetLayout=function(){this.getSize()},c.getSize=function(){this.size=i(this.element)},c._getMeasurement=function(t,e){var o,n=this.options[t];n?("string"==typeof n?o=this.element.querySelector(n):n instanceof HTMLElement&&(o=n),this[t]=o?i(o)[e]:n):this[t]=0},c.layoutItems=function(t,e){t=this._getItemsForLayout(t),this._layoutItems(t,e),this._postLayout()},c._getItemsForLayout=function(t){return t.filter(function(t){return!t.isIgnored})},c._layoutItems=function(t,e){if(this._emitCompleteOnItems("layout",t),t&&t.length){var i=[];t.forEach(function(t){var o=this._getItemLayoutPosition(t);o.item=t,o.isInstant=e||t.isLayoutInstant,i.push(o)},this),this._processLayoutQueue(i)}},c._getItemLayoutPosition=function(){return{x:0,y:0}},c._processLayoutQueue=function(t){this.updateStagger(),t.forEach(function(t,e){this._positionItem(t.item,t.x,t.y,t.isInstant,e)},this)},c.updateStagger=function(){var t=this.options.stagger;return null===t||void 0===t?void(this.stagger=0):(this.stagger=a(t),this.stagger)},c._positionItem=function(t,e,i,o,n){o?t.goTo(e,i):(t.stagger(n*this.stagger),t.moveTo(e,i))},c._postLayout=function(){this.resizeContainer()},c.resizeContainer=function(){var t=this._getOption("resizeContainer");if(t){var e=this._getContainerSize();e&&(this._setContainerMeasure(e.width,!0),this._setContainerMeasure(e.height,!1))}},c._getContainerSize=d,c._setContainerMeasure=function(t,e){if(void 0!==t){var i=this.size;i.isBorderBox&&(t+=e?i.paddingLeft+i.paddingRight+i.borderLeftWidth+i.borderRightWidth:i.paddingBottom+i.paddingTop+i.borderTopWidth+i.borderBottomWidth),t=Math.max(t,0),this.element.style[e?"width":"height"]=t+"px"}},c._emitCompleteOnItems=function(t,e){function i(){n.dispatchEvent(t+"Complete",null,[e])}function o(){r++,r==s&&i()}var n=this,s=e.length;if(!e||!s)return void i();var r=0;e.forEach(function(e){e.once(t,o)})},c.dispatchEvent=function(t,e,i){var o=e?[e].concat(i):i;if(this.emitEvent(t,o),h)if(this.$element=this.$element||h(this.element),e){var n=h.Event(e);n.type=t,this.$element.trigger(n,i)}else this.$element.trigger(t,i)},c.ignore=function(t){var e=this.getItem(t);e&&(e.isIgnored=!0)},c.unignore=function(t){var e=this.getItem(t);e&&delete e.isIgnored},c.stamp=function(t){t=this._find(t),t&&(this.stamps=this.stamps.concat(t),t.forEach(this.ignore,this))},c.unstamp=function(t){t=this._find(t),t&&t.forEach(function(t){o.removeFrom(this.stamps,t),this.unignore(t)},this)},c._find=function(t){if(t)return"string"==typeof t&&(t=this.element.querySelectorAll(t)),t=o.makeArray(t)},c._manageStamps=function(){this.stamps&&this.stamps.length&&(this._getBoundingRect(),this.stamps.forEach(this._manageStamp,this))},c._getBoundingRect=function(){var t=this.element.getBoundingClientRect(),e=this.size;this._boundingRect={left:t.left+e.paddingLeft+e.borderLeftWidth,top:t.top+e.paddingTop+e.borderTopWidth,right:t.right-(e.paddingRight+e.borderRightWidth),bottom:t.bottom-(e.paddingBottom+e.borderBottomWidth)}},c._manageStamp=d,c._getElementOffset=function(t){var e=t.getBoundingClientRect(),o=this._boundingRect,n=i(t),s={left:e.left-o.left-n.marginLeft,top:e.top-o.top-n.marginTop,right:o.right-e.right-n.marginRight,bottom:o.bottom-e.bottom-n.marginBottom};return s},c.handleEvent=o.handleEvent,c.bindResize=function(){t.addEventListener("resize",this),this.isResizeBound=!0},c.unbindResize=function(){t.removeEventListener("resize",this),this.isResizeBound=!1},c.onresize=function(){this.resize()},o.debounceMethod(s,"onresize",100),c.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&this.layout()},c.needsResizeLayout=function(){var t=i(this.element),e=this.size&&t;return e&&t.innerWidth!==this.size.innerWidth},c.addItems=function(t){var e=this._itemize(t);return e.length&&(this.items=this.items.concat(e)),e},c.appended=function(t){var e=this.addItems(t);e.length&&(this.layoutItems(e,!0),this.reveal(e))},c.prepended=function(t){var e=this._itemize(t);if(e.length){var i=this.items.slice(0);this.items=e.concat(i),this._resetLayout(),this._manageStamps(),this.layoutItems(e,!0),this.reveal(e),this.layoutItems(i)}},c.reveal=function(t){if(this._emitCompleteOnItems("reveal",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.reveal()})}},c.hide=function(t){if(this._emitCompleteOnItems("hide",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.hide()})}},c.revealItemElements=function(t){var e=this.getItems(t);this.reveal(e)},c.hideItemElements=function(t){var e=this.getItems(t);this.hide(e)},c.getItem=function(t){for(var e=0;e<this.items.length;e++){var i=this.items[e];if(i.element==t)return i}},c.getItems=function(t){t=o.makeArray(t);var e=[];return t.forEach(function(t){var i=this.getItem(t);i&&e.push(i)},this),e},c.remove=function(t){var e=this.getItems(t);this._emitCompleteOnItems("remove",e),e&&e.length&&e.forEach(function(t){t.remove(),o.removeFrom(this.items,t)},this)},c.destroy=function(){var t=this.element.style;t.height="",t.position="",t.width="",this.items.forEach(function(t){t.destroy()}),this.unbindResize();var e=this.element.outlayerGUID;delete f[e],delete this.element.outlayerGUID,h&&h.removeData(this.element,this.constructor.namespace)},s.data=function(t){t=o.getQueryElement(t);var e=t&&t.outlayerGUID;return e&&f[e]},s.create=function(t,e){var i=r(s);return i.defaults=o.extend({},s.defaults),o.extend(i.defaults,e),i.compatOptions=o.extend({},s.compatOptions),i.namespace=t,i.data=s.data,i.Item=r(n),o.htmlInit(i,t),h&&h.bridget&&h.bridget(t,i),i};var m={ms:1,s:1e3};return s.Item=n,s}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/item",["outlayer/outlayer"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer")):(t.Isotope=t.Isotope||{},t.Isotope.Item=e(t.Outlayer))}(window,function(t){"use strict";function e(){t.Item.apply(this,arguments)}var i=e.prototype=Object.create(t.Item.prototype),o=i._create;i._create=function(){this.id=this.layout.itemGUID++,o.call(this),this.sortData={}},i.updateSortData=function(){if(!this.isIgnored){this.sortData.id=this.id,this.sortData["original-order"]=this.id,this.sortData.random=Math.random();var t=this.layout.options.getSortData,e=this.layout._sorters;for(var i in t){var o=e[i];this.sortData[i]=o(this.element,this)}}};var n=i.destroy;return i.destroy=function(){n.apply(this,arguments),this.css({display:""})},e}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-mode",["get-size/get-size","outlayer/outlayer"],e):"object"==typeof module&&module.exports?module.exports=e(require("get-size"),require("outlayer")):(t.Isotope=t.Isotope||{},t.Isotope.LayoutMode=e(t.getSize,t.Outlayer))}(window,function(t,e){"use strict";function i(t){this.isotope=t,t&&(this.options=t.options[this.namespace],this.element=t.element,this.items=t.filteredItems,this.size=t.size)}var o=i.prototype,n=["_resetLayout","_getItemLayoutPosition","_manageStamp","_getContainerSize","_getElementOffset","needsResizeLayout","_getOption"];return n.forEach(function(t){o[t]=function(){return e.prototype[t].apply(this.isotope,arguments)}}),o.needsVerticalResizeLayout=function(){var e=t(this.isotope.element),i=this.isotope.size&&e;return i&&e.innerHeight!=this.isotope.size.innerHeight},o._getMeasurement=function(){this.isotope._getMeasurement.apply(this,arguments)},o.getColumnWidth=function(){this.getSegmentSize("column","Width")},o.getRowHeight=function(){this.getSegmentSize("row","Height")},o.getSegmentSize=function(t,e){var i=t+e,o="outer"+e;if(this._getMeasurement(i,o),!this[i]){var n=this.getFirstItemSize();this[i]=n&&n[o]||this.isotope.size["inner"+e]}},o.getFirstItemSize=function(){var e=this.isotope.filteredItems[0];return e&&e.element&&t(e.element)},o.layout=function(){this.isotope.layout.apply(this.isotope,arguments)},o.getSize=function(){this.isotope.getSize(),this.size=this.isotope.size},i.modes={},i.create=function(t,e){function n(){i.apply(this,arguments)}return n.prototype=Object.create(o),n.prototype.constructor=n,e&&(n.options=e),n.prototype.namespace=t,i.modes[t]=n,n},i}),function(t,e){"function"==typeof define&&define.amd?define("masonry/masonry",["outlayer/outlayer","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer"),require("get-size")):t.Masonry=e(t.Outlayer,t.getSize)}(window,function(t,e){var i=t.create("masonry");i.compatOptions.fitWidth="isFitWidth";var o=i.prototype;return o._resetLayout=function(){this.getSize(),this._getMeasurement("columnWidth","outerWidth"),this._getMeasurement("gutter","outerWidth"),this.measureColumns(),this.colYs=[];for(var t=0;t<this.cols;t++)this.colYs.push(0);this.maxY=0,this.horizontalColIndex=0},o.measureColumns=function(){if(this.getContainerWidth(),!this.columnWidth){var t=this.items[0],i=t&&t.element;this.columnWidth=i&&e(i).outerWidth||this.containerWidth}var o=this.columnWidth+=this.gutter,n=this.containerWidth+this.gutter,s=n/o,r=o-n%o,a=r&&r<1?"round":"floor";s=Math[a](s),this.cols=Math.max(s,1)},o.getContainerWidth=function(){var t=this._getOption("fitWidth"),i=t?this.element.parentNode:this.element,o=e(i);this.containerWidth=o&&o.innerWidth},o._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth%this.columnWidth,i=e&&e<1?"round":"ceil",o=Math[i](t.size.outerWidth/this.columnWidth);o=Math.min(o,this.cols);for(var n=this.options.horizontalOrder?"_getHorizontalColPosition":"_getTopColPosition",s=this[n](o,t),r={x:this.columnWidth*s.col,y:s.y},a=s.y+t.size.outerHeight,u=o+s.col,h=s.col;h<u;h++)this.colYs[h]=a;return r},o._getTopColPosition=function(t){var e=this._getTopColGroup(t),i=Math.min.apply(Math,e);return{col:e.indexOf(i),y:i}},o._getTopColGroup=function(t){if(t<2)return this.colYs;for(var e=[],i=this.cols+1-t,o=0;o<i;o++)e[o]=this._getColGroupY(o,t);return e},o._getColGroupY=function(t,e){if(e<2)return this.colYs[t];var i=this.colYs.slice(t,t+e);return Math.max.apply(Math,i)},o._getHorizontalColPosition=function(t,e){var i=this.horizontalColIndex%this.cols,o=t>1&&i+t>this.cols;i=o?0:i;var n=e.size.outerWidth&&e.size.outerHeight;return this.horizontalColIndex=n?i+t:this.horizontalColIndex,{col:i,y:this._getColGroupY(i,t)}},o._manageStamp=function(t){var i=e(t),o=this._getElementOffset(t),n=this._getOption("originLeft"),s=n?o.left:o.right,r=s+i.outerWidth,a=Math.floor(s/this.columnWidth);a=Math.max(0,a);var u=Math.floor(r/this.columnWidth);u-=r%this.columnWidth?0:1,u=Math.min(this.cols-1,u);for(var h=this._getOption("originTop"),d=(h?o.top:o.bottom)+i.outerHeight,l=a;l<=u;l++)this.colYs[l]=Math.max(d,this.colYs[l])},o._getContainerSize=function(){this.maxY=Math.max.apply(Math,this.colYs);var t={height:this.maxY};return this._getOption("fitWidth")&&(t.width=this._getContainerFitWidth()),t},o._getContainerFitWidth=function(){for(var t=0,e=this.cols;--e&&0===this.colYs[e];)t++;return(this.cols-t)*this.columnWidth-this.gutter},o.needsResizeLayout=function(){var t=this.containerWidth;return this.getContainerWidth(),t!=this.containerWidth},i}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-modes/masonry",["../layout-mode","masonry/masonry"],e):"object"==typeof module&&module.exports?module.exports=e(require("../layout-mode"),require("masonry-layout")):e(t.Isotope.LayoutMode,t.Masonry)}(window,function(t,e){"use strict";var i=t.create("masonry"),o=i.prototype,n={_getElementOffset:!0,layout:!0,_getMeasurement:!0};for(var s in e.prototype)n[s]||(o[s]=e.prototype[s]);var r=o.measureColumns;o.measureColumns=function(){this.items=this.isotope.filteredItems,r.call(this)};var a=o._getOption;return o._getOption=function(t){return"fitWidth"==t?void 0!==this.options.isFitWidth?this.options.isFitWidth:this.options.fitWidth:a.apply(this.isotope,arguments)},i}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-modes/fit-rows",["../layout-mode"],e):"object"==typeof exports?module.exports=e(require("../layout-mode")):e(t.Isotope.LayoutMode)}(window,function(t){"use strict";var e=t.create("fitRows"),i=e.prototype;return i._resetLayout=function(){this.x=0,this.y=0,this.maxY=0,this._getMeasurement("gutter","outerWidth")},i._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth+this.gutter,i=this.isotope.size.innerWidth+this.gutter;0!==this.x&&e+this.x>i&&(this.x=0,this.y=this.maxY);var o={x:this.x,y:this.y};return this.maxY=Math.max(this.maxY,this.y+t.size.outerHeight),this.x+=e,o},i._getContainerSize=function(){return{height:this.maxY}},e}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-modes/vertical",["../layout-mode"],e):"object"==typeof module&&module.exports?module.exports=e(require("../layout-mode")):e(t.Isotope.LayoutMode)}(window,function(t){"use strict";var e=t.create("vertical",{horizontalAlignment:0}),i=e.prototype;return i._resetLayout=function(){this.y=0},i._getItemLayoutPosition=function(t){t.getSize();var e=(this.isotope.size.innerWidth-t.size.outerWidth)*this.options.horizontalAlignment,i=this.y;return this.y+=t.size.outerHeight,{x:e,y:i}},i._getContainerSize=function(){return{height:this.y}},e}),function(t,e){"function"==typeof define&&define.amd?define(["outlayer/outlayer","get-size/get-size","desandro-matches-selector/matches-selector","fizzy-ui-utils/utils","isotope/js/item","isotope/js/layout-mode","isotope/js/layout-modes/masonry","isotope/js/layout-modes/fit-rows","isotope/js/layout-modes/vertical"],function(i,o,n,s,r,a){return e(t,i,o,n,s,r,a)}):"object"==typeof module&&module.exports?module.exports=e(t,require("outlayer"),require("get-size"),require("desandro-matches-selector"),require("fizzy-ui-utils"),require("isotope/js/item"),require("isotope/js/layout-mode"),require("isotope/js/layout-modes/masonry"),require("isotope/js/layout-modes/fit-rows"),require("isotope/js/layout-modes/vertical")):t.Isotope=e(t,t.Outlayer,t.getSize,t.matchesSelector,t.fizzyUIUtils,t.Isotope.Item,t.Isotope.LayoutMode)}(window,function(t,e,i,o,n,s,r){function a(t,e){return function(i,o){for(var n=0;n<t.length;n++){var s=t[n],r=i.sortData[s],a=o.sortData[s];if(r>a||r<a){var u=void 0!==e[s]?e[s]:e,h=u?1:-1;return(r>a?1:-1)*h}}return 0}}var u=t.jQuery,h=String.prototype.trim?function(t){return t.trim()}:function(t){return t.replace(/^\s+|\s+$/g,"")},d=e.create("isotope",{layoutMode:"masonry",isJQueryFiltering:!0,sortAscending:!0});d.Item=s,d.LayoutMode=r;var l=d.prototype;l._create=function(){this.itemGUID=0,this._sorters={},this._getSorters(),e.prototype._create.call(this),this.modes={},this.filteredItems=this.items,this.sortHistory=["original-order"];for(var t in r.modes)this._initLayoutMode(t)},l.reloadItems=function(){this.itemGUID=0,e.prototype.reloadItems.call(this)},l._itemize=function(){for(var t=e.prototype._itemize.apply(this,arguments),i=0;i<t.length;i++){var o=t[i];o.id=this.itemGUID++}return this._updateItemsSortData(t),t},l._initLayoutMode=function(t){var e=r.modes[t],i=this.options[t]||{};this.options[t]=e.options?n.extend(e.options,i):i,this.modes[t]=new e(this)},l.layout=function(){return!this._isLayoutInited&&this._getOption("initLayout")?void this.arrange():void this._layout()},l._layout=function(){var t=this._getIsInstant();this._resetLayout(),this._manageStamps(),this.layoutItems(this.filteredItems,t),this._isLayoutInited=!0},l.arrange=function(t){this.option(t),this._getIsInstant();var e=this._filter(this.items);this.filteredItems=e.matches,this._bindArrangeComplete(),this._isInstant?this._noTransition(this._hideReveal,[e]):this._hideReveal(e),this._sort(),this._layout()},l._init=l.arrange,l._hideReveal=function(t){this.reveal(t.needReveal),this.hide(t.needHide)},l._getIsInstant=function(){var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;return this._isInstant=e,e},l._bindArrangeComplete=function(){function t(){e&&i&&o&&n.dispatchEvent("arrangeComplete",null,[n.filteredItems])}var e,i,o,n=this;this.once("layoutComplete",function(){e=!0,t()}),this.once("hideComplete",function(){i=!0,t()}),this.once("revealComplete",function(){o=!0,t()})},l._filter=function(t){var e=this.options.filter;e=e||"*";for(var i=[],o=[],n=[],s=this._getFilterTest(e),r=0;r<t.length;r++){var a=t[r];if(!a.isIgnored){var u=s(a);u&&i.push(a),u&&a.isHidden?o.push(a):u||a.isHidden||n.push(a)}}return{matches:i,needReveal:o,needHide:n}},l._getFilterTest=function(t){return u&&this.options.isJQueryFiltering?function(e){return u(e.element).is(t)}:"function"==typeof t?function(e){return t(e.element)}:function(e){return o(e.element,t)}},l.updateSortData=function(t){
109
+ var e;t?(t=n.makeArray(t),e=this.getItems(t)):e=this.items,this._getSorters(),this._updateItemsSortData(e)},l._getSorters=function(){var t=this.options.getSortData;for(var e in t){var i=t[e];this._sorters[e]=f(i)}},l._updateItemsSortData=function(t){for(var e=t&&t.length,i=0;e&&i<e;i++){var o=t[i];o.updateSortData()}};var f=function(){function t(t){if("string"!=typeof t)return t;var i=h(t).split(" "),o=i[0],n=o.match(/^\[(.+)\]$/),s=n&&n[1],r=e(s,o),a=d.sortDataParsers[i[1]];return t=a?function(t){return t&&a(r(t))}:function(t){return t&&r(t)}}function e(t,e){return t?function(e){return e.getAttribute(t)}:function(t){var i=t.querySelector(e);return i&&i.textContent}}return t}();d.sortDataParsers={parseInt:function(t){return parseInt(t,10)},parseFloat:function(t){return parseFloat(t)}},l._sort=function(){if(this.options.sortBy){var t=n.makeArray(this.options.sortBy);this._getIsSameSortBy(t)||(this.sortHistory=t.concat(this.sortHistory));var e=a(this.sortHistory,this.options.sortAscending);this.filteredItems.sort(e)}},l._getIsSameSortBy=function(t){for(var e=0;e<t.length;e++)if(t[e]!=this.sortHistory[e])return!1;return!0},l._mode=function(){var t=this.options.layoutMode,e=this.modes[t];if(!e)throw new Error("No layout mode: "+t);return e.options=this.options[t],e},l._resetLayout=function(){e.prototype._resetLayout.call(this),this._mode()._resetLayout()},l._getItemLayoutPosition=function(t){return this._mode()._getItemLayoutPosition(t)},l._manageStamp=function(t){this._mode()._manageStamp(t)},l._getContainerSize=function(){return this._mode()._getContainerSize()},l.needsResizeLayout=function(){return this._mode().needsResizeLayout()},l.appended=function(t){var e=this.addItems(t);if(e.length){var i=this._filterRevealAdded(e);this.filteredItems=this.filteredItems.concat(i)}},l.prepended=function(t){var e=this._itemize(t);if(e.length){this._resetLayout(),this._manageStamps();var i=this._filterRevealAdded(e);this.layoutItems(this.filteredItems),this.filteredItems=i.concat(this.filteredItems),this.items=e.concat(this.items)}},l._filterRevealAdded=function(t){var e=this._filter(t);return this.hide(e.needHide),this.reveal(e.matches),this.layoutItems(e.matches,!0),e.matches},l.insert=function(t){var e=this.addItems(t);if(e.length){var i,o,n=e.length;for(i=0;i<n;i++)o=e[i],this.element.appendChild(o.element);var s=this._filter(e).matches;for(i=0;i<n;i++)e[i].isLayoutInstant=!0;for(this.arrange(),i=0;i<n;i++)delete e[i].isLayoutInstant;this.reveal(s)}};var c=l.remove;return l.remove=function(t){t=n.makeArray(t);var e=this.getItems(t);c.call(this,t);for(var i=e&&e.length,o=0;i&&o<i;o++){var s=e[o];n.removeFrom(this.filteredItems,s)}},l.shuffle=function(){for(var t=0;t<this.items.length;t++){var e=this.items[t];e.sortData.random=Math.random()}this.options.sortBy="random",this._sort(),this._layout()},l._noTransition=function(t,e){var i=this.options.transitionDuration;this.options.transitionDuration=0;var o=t.apply(this,e);return this.options.transitionDuration=i,o},l.getFilteredItemElements=function(){return this.filteredItems.map(function(t){return t.element})},d});
110
+
111
+ /* Packery layout mode PACKAGED v2.0.0 */
112
+ !function(a,b){"function"==typeof define&&define.amd?define("packery/js/rect",b):"object"==typeof module&&module.exports?module.exports=b():(a.Packery=a.Packery||{},a.Packery.Rect=b())}(window,function(){function a(b){for(var c in a.defaults)this[c]=a.defaults[c];for(c in b)this[c]=b[c]}a.defaults={x:0,y:0,width:0,height:0};var b=a.prototype;return b.contains=function(a){var b=a.width||0,c=a.height||0;return this.x<=a.x&&this.y<=a.y&&this.x+this.width>=a.x+b&&this.y+this.height>=a.y+c},b.overlaps=function(a){var b=this.x+this.width,c=this.y+this.height,d=a.x+a.width,e=a.y+a.height;return this.x<d&&b>a.x&&this.y<e&&c>a.y},b.getMaximalFreeRects=function(b){if(!this.overlaps(b))return!1;var c,d=[],e=this.x+this.width,f=this.y+this.height,g=b.x+b.width,h=b.y+b.height;return this.y<b.y&&(c=new a({x:this.x,y:this.y,width:this.width,height:b.y-this.y}),d.push(c)),e>g&&(c=new a({x:g,y:this.y,width:e-g,height:this.height}),d.push(c)),f>h&&(c=new a({x:this.x,y:h,width:this.width,height:f-h}),d.push(c)),this.x<b.x&&(c=new a({x:this.x,y:this.y,width:b.x-this.x,height:this.height}),d.push(c)),d},b.canFit=function(a){return this.width>=a.width&&this.height>=a.height},a}),function(a,b){if("function"==typeof define&&define.amd)define("packery/js/packer",["./rect"],b);else if("object"==typeof module&&module.exports)module.exports=b(require("./rect"));else{var c=a.Packery=a.Packery||{};c.Packer=b(c.Rect)}}(window,function(a){function b(a,b,c){this.width=a||0,this.height=b||0,this.sortDirection=c||"downwardLeftToRight",this.reset()}var c=b.prototype;c.reset=function(){this.spaces=[];var b=new a({x:0,y:0,width:this.width,height:this.height});this.spaces.push(b),this.sorter=d[this.sortDirection]||d.downwardLeftToRight},c.pack=function(a){for(var b=0;b<this.spaces.length;b++){var c=this.spaces[b];if(c.canFit(a)){this.placeInSpace(a,c);break}}},c.columnPack=function(a){for(var b=0;b<this.spaces.length;b++){var c=this.spaces[b],d=c.x<=a.x&&c.x+c.width>=a.x+a.width&&c.height>=a.height-.01;if(d){a.y=c.y,this.placed(a);break}}},c.rowPack=function(a){for(var b=0;b<this.spaces.length;b++){var c=this.spaces[b],d=c.y<=a.y&&c.y+c.height>=a.y+a.height&&c.width>=a.width-.01;if(d){a.x=c.x,this.placed(a);break}}},c.placeInSpace=function(a,b){a.x=b.x,a.y=b.y,this.placed(a)},c.placed=function(a){for(var b=[],c=0;c<this.spaces.length;c++){var d=this.spaces[c],e=d.getMaximalFreeRects(a);e?b.push.apply(b,e):b.push(d)}this.spaces=b,this.mergeSortSpaces()},c.mergeSortSpaces=function(){b.mergeRects(this.spaces),this.spaces.sort(this.sorter)},c.addSpace=function(a){this.spaces.push(a),this.mergeSortSpaces()},b.mergeRects=function(a){var b=0,c=a[b];a:for(;c;){for(var d=0,e=a[b+d];e;){if(e==c)d++;else{if(e.contains(c)){a.splice(b,1),c=a[b];continue a}c.contains(e)?a.splice(b+d,1):d++}e=a[b+d]}b++,c=a[b]}return a};var d={downwardLeftToRight:function(a,b){return a.y-b.y||a.x-b.x},rightwardTopToBottom:function(a,b){return a.x-b.x||a.y-b.y}};return b}),function(a,b){"function"==typeof define&&define.amd?define("packery/js/item",["outlayer/outlayer","./rect"],b):"object"==typeof module&&module.exports?module.exports=b(require("outlayer"),require("./rect")):a.Packery.Item=b(a.Outlayer,a.Packery.Rect)}(window,function(a,b){var c=document.documentElement.style,d="string"==typeof c.transform?"transform":"WebkitTransform",e=function(){a.Item.apply(this,arguments)},f=e.prototype=Object.create(a.Item.prototype),g=f._create;f._create=function(){g.call(this),this.rect=new b};var h=f.moveTo;return f.moveTo=function(a,b){var c=Math.abs(this.position.x-a),d=Math.abs(this.position.y-b),e=this.layout.dragItemCount&&!this.isPlacing&&!this.isTransitioning&&1>c&&1>d;return e?void this.goTo(a,b):void h.apply(this,arguments)},f.enablePlacing=function(){this.removeTransitionStyles(),this.isTransitioning&&d&&(this.element.style[d]="none"),this.isTransitioning=!1,this.getSize(),this.layout._setRectSize(this.element,this.rect),this.isPlacing=!0},f.disablePlacing=function(){this.isPlacing=!1},f.removeElem=function(){this.element.parentNode.removeChild(this.element),this.layout.packer.addSpace(this.rect),this.emitEvent("remove",[this])},f.showDropPlaceholder=function(){var a=this.dropPlaceholder;a||(a=this.dropPlaceholder=document.createElement("div"),a.className="packery-drop-placeholder",a.style.position="absolute"),a.style.width=this.size.width+"px",a.style.height=this.size.height+"px",this.positionDropPlaceholder(),this.layout.element.appendChild(a)},f.positionDropPlaceholder=function(){this.dropPlaceholder.style[d]="translate("+this.rect.x+"px, "+this.rect.y+"px)"},f.hideDropPlaceholder=function(){this.layout.element.removeChild(this.dropPlaceholder)},e}),function(a,b){"function"==typeof define&&define.amd?define("packery/js/packery",["get-size/get-size","outlayer/outlayer","./rect","./packer","./item"],b):"object"==typeof module&&module.exports?module.exports=b(require("get-size"),require("outlayer"),require("./rect"),require("./packer"),require("./item")):a.Packery=b(a.getSize,a.Outlayer,a.Packery.Rect,a.Packery.Packer,a.Packery.Item)}(window,function(a,b,c,d,e){function f(a,b){return a.position.y-b.position.y||a.position.x-b.position.x}function g(a,b){return a.position.x-b.position.x||a.position.y-b.position.y}function h(a,b){var c=b.x-a.x,d=b.y-a.y;return Math.sqrt(c*c+d*d)}c.prototype.canFit=function(a){return this.width>=a.width-1&&this.height>=a.height-1};var i=b.create("packery");i.Item=e;var j=i.prototype;j._create=function(){b.prototype._create.call(this),this.packer=new d,this.shiftPacker=new d,this.isEnabled=!0,this.dragItemCount=0;var a=this;this.handleDraggabilly={dragStart:function(){a.itemDragStart(this.element)},dragMove:function(){a.itemDragMove(this.element,this.position.x,this.position.y)},dragEnd:function(){a.itemDragEnd(this.element)}},this.handleUIDraggable={start:function(b,c){c&&a.itemDragStart(b.currentTarget)},drag:function(b,c){c&&a.itemDragMove(b.currentTarget,c.position.left,c.position.top)},stop:function(b,c){c&&a.itemDragEnd(b.currentTarget)}}},j._resetLayout=function(){this.getSize(),this._getMeasurements();var a,b,c;this._getOption("horizontal")?(a=1/0,b=this.size.innerHeight+this.gutter,c="rightwardTopToBottom"):(a=this.size.innerWidth+this.gutter,b=1/0,c="downwardLeftToRight"),this.packer.width=this.shiftPacker.width=a,this.packer.height=this.shiftPacker.height=b,this.packer.sortDirection=this.shiftPacker.sortDirection=c,this.packer.reset(),this.maxY=0,this.maxX=0},j._getMeasurements=function(){this._getMeasurement("columnWidth","width"),this._getMeasurement("rowHeight","height"),this._getMeasurement("gutter","width")},j._getItemLayoutPosition=function(a){if(this._setRectSize(a.element,a.rect),this.isShifting||this.dragItemCount>0){var b=this._getPackMethod();this.packer[b](a.rect)}else this.packer.pack(a.rect);return this._setMaxXY(a.rect),a.rect},j.shiftLayout=function(){this.isShifting=!0,this.layout(),delete this.isShifting},j._getPackMethod=function(){return this._getOption("horizontal")?"rowPack":"columnPack"},j._setMaxXY=function(a){this.maxX=Math.max(a.x+a.width,this.maxX),this.maxY=Math.max(a.y+a.height,this.maxY)},j._setRectSize=function(b,c){var d=a(b),e=d.outerWidth,f=d.outerHeight;(e||f)&&(e=this._applyGridGutter(e,this.columnWidth),f=this._applyGridGutter(f,this.rowHeight)),c.width=Math.min(e,this.packer.width),c.height=Math.min(f,this.packer.height)},j._applyGridGutter=function(a,b){if(!b)return a+this.gutter;b+=this.gutter;var c=a%b,d=c&&1>c?"round":"ceil";return a=Math[d](a/b)*b},j._getContainerSize=function(){return this._getOption("horizontal")?{width:this.maxX-this.gutter}:{height:this.maxY-this.gutter}},j._manageStamp=function(a){var b,d=this.getItem(a);if(d&&d.isPlacing)b=d.rect;else{var e=this._getElementOffset(a);b=new c({x:this._getOption("originLeft")?e.left:e.right,y:this._getOption("originTop")?e.top:e.bottom})}this._setRectSize(a,b),this.packer.placed(b),this._setMaxXY(b)},j.sortItemsByPosition=function(){var a=this._getOption("horizontal")?g:f;this.items.sort(a)},j.fit=function(a,b,c){var d=this.getItem(a);d&&(this.stamp(d.element),d.enablePlacing(),this.updateShiftTargets(d),b=void 0===b?d.rect.x:b,c=void 0===c?d.rect.y:c,this.shift(d,b,c),this._bindFitEvents(d),d.moveTo(d.rect.x,d.rect.y),this.shiftLayout(),this.unstamp(d.element),this.sortItemsByPosition(),d.disablePlacing())},j._bindFitEvents=function(a){function b(){d++,2==d&&c.dispatchEvent("fitComplete",null,[a])}var c=this,d=0;a.once("layout",b),this.once("layoutComplete",b)},j.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&(this.options.shiftPercentResize?this.resizeShiftPercentLayout():this.layout())},j.needsResizeLayout=function(){var b=a(this.element),c=this._getOption("horizontal")?"innerHeight":"innerWidth";return b[c]!=this.size[c]},j.resizeShiftPercentLayout=function(){var b=this._getItemsForLayout(this.items),c=this._getOption("horizontal"),d=c?"y":"x",e=c?"height":"width",f=c?"rowHeight":"columnWidth",g=c?"innerHeight":"innerWidth",h=this[f];if(h=h&&h+this.gutter){this._getMeasurements();var i=this[f]+this.gutter;b.forEach(function(a){var b=Math.round(a.rect[d]/h);a.rect[d]=b*i})}else{var j=a(this.element)[g]+this.gutter,k=this.packer[e];b.forEach(function(a){a.rect[d]=a.rect[d]/k*j})}this.shiftLayout()},j.itemDragStart=function(a){if(this.isEnabled){this.stamp(a);var b=this.getItem(a);b&&(b.enablePlacing(),b.showDropPlaceholder(),this.dragItemCount++,this.updateShiftTargets(b))}},j.updateShiftTargets=function(a){this.shiftPacker.reset(),this._getBoundingRect();var b=this._getOption("originLeft"),d=this._getOption("originTop");this.stamps.forEach(function(a){var e=this.getItem(a);if(!e||!e.isPlacing){var f=this._getElementOffset(a),g=new c({x:b?f.left:f.right,y:d?f.top:f.bottom});this._setRectSize(a,g),this.shiftPacker.placed(g)}},this);var e=this._getOption("horizontal"),f=e?"rowHeight":"columnWidth",g=e?"height":"width";this.shiftTargetKeys=[],this.shiftTargets=[];var h,i=this[f];if(i=i&&i+this.gutter){var j=Math.ceil(a.rect[g]/i),k=Math.floor((this.shiftPacker[g]+this.gutter)/i);h=(k-j)*i;for(var l=0;k>l;l++)this._addShiftTarget(l*i,0,h)}else h=this.shiftPacker[g]+this.gutter-a.rect[g],this._addShiftTarget(0,0,h);var m=this._getItemsForLayout(this.items),n=this._getPackMethod();m.forEach(function(a){var b=a.rect;this._setRectSize(a.element,b),this.shiftPacker[n](b),this._addShiftTarget(b.x,b.y,h);var c=e?b.x+b.width:b.x,d=e?b.y:b.y+b.height;if(this._addShiftTarget(c,d,h),i)for(var f=Math.round(b[g]/i),j=1;f>j;j++){var k=e?c:b.x+i*j,l=e?b.y+i*j:d;this._addShiftTarget(k,l,h)}},this)},j._addShiftTarget=function(a,b,c){var d=this._getOption("horizontal")?b:a;if(!(0!==d&&d>c)){var e=a+","+b,f=-1!=this.shiftTargetKeys.indexOf(e);f||(this.shiftTargetKeys.push(e),this.shiftTargets.push({x:a,y:b}))}},j.shift=function(a,b,c){var d,e=1/0,f={x:b,y:c};this.shiftTargets.forEach(function(a){var b=h(a,f);e>b&&(d=a,e=b)}),a.rect.x=d.x,a.rect.y=d.y};var k=120;j.itemDragMove=function(a,b,c){function d(){f.shift(e,b,c),e.positionDropPlaceholder(),f.layout()}var e=this.isEnabled&&this.getItem(a);if(e){b-=this.size.paddingLeft,c-=this.size.paddingTop;var f=this,g=new Date;this._itemDragTime&&g-this._itemDragTime<k?(clearTimeout(this.dragTimeout),this.dragTimeout=setTimeout(d,k)):(d(),this._itemDragTime=g)}},j.itemDragEnd=function(a){function b(){d++,2==d&&(c.element.classList.remove("is-positioning-post-drag"),c.hideDropPlaceholder(),e.dispatchEvent("dragItemPositioned",null,[c]))}var c=this.isEnabled&&this.getItem(a);if(c){clearTimeout(this.dragTimeout),c.element.classList.add("is-positioning-post-drag");var d=0,e=this;c.once("layout",b),this.once("layoutComplete",b),c.moveTo(c.rect.x,c.rect.y),this.layout(),this.dragItemCount=Math.max(0,this.dragItemCount-1),this.sortItemsByPosition(),c.disablePlacing(),this.unstamp(c.element)}},j.bindDraggabillyEvents=function(a){this._bindDraggabillyEvents(a,"on")},j.unbindDraggabillyEvents=function(a){this._bindDraggabillyEvents(a,"off")},j._bindDraggabillyEvents=function(a,b){var c=this.handleDraggabilly;a[b]("dragStart",c.dragStart),a[b]("dragMove",c.dragMove),a[b]("dragEnd",c.dragEnd)},j.bindUIDraggableEvents=function(a){this._bindUIDraggableEvents(a,"on")},j.unbindUIDraggableEvents=function(a){this._bindUIDraggableEvents(a,"off")},j._bindUIDraggableEvents=function(a,b){var c=this.handleUIDraggable;a[b]("dragstart",c.start)[b]("drag",c.drag)[b]("dragstop",c.stop)};var l=j.destroy;return j.destroy=function(){l.apply(this,arguments),this.isEnabled=!1},i.Rect=c,i.Packer=d,i}),function(a,b){"function"==typeof define&&define.amd?define(["isotope/js/layout-mode","packery/js/packery"],b):"object"==typeof module&&module.exports?module.exports=b(require("isotope-layout/js/layout-mode"),require("packery")):b(a.Isotope.LayoutMode,a.Packery)}(window,function(a,b){var c=a.create("packery"),d=c.prototype,e={_getElementOffset:!0,_getMeasurement:!0};for(var f in b.prototype)e[f]||(d[f]=b.prototype[f]);var g=d._resetLayout;d._resetLayout=function(){this.packer=this.packer||new b.Packer,this.shiftPacker=this.shiftPacker||new b.Packer,g.apply(this,arguments)};var h=d._getItemLayoutPosition;d._getItemLayoutPosition=function(a){return a.rect=a.rect||new b.Rect,h.call(this,a)};var i=d.needsResizeLayout;d.needsResizeLayout=function(){return this._getOption("horizontal")?this.needsVerticalResizeLayout():i.call(this)};var j=d._getOption;return d._getOption=function(a){return"horizontal"==a?void 0!==this.options.isHorizontal?this.options.isHorizontal:this.options.horizontal:j.apply(this.isotope,arguments)},c});
113
+
114
+ /*counter numscroller.js 1.0*/
115
+ !function($){function numberRoller(t){var i=$(".roller-title-number-"+t).attr("data-min"),o=$(".roller-title-number-"+t).attr("data-max"),e=$(".roller-title-number-"+t).attr("data-delay");numberRoll(t,i,o,$(".roller-title-number-"+t).attr("data-increment"),1e3*e/(o-i))}function numberRoll(slno,min,max,increment,timeout){min<=max?($(".roller-title-number-"+slno).html(min),min=parseInt(min)+parseInt(increment),setTimeout(function(){numberRoll(eval(slno),eval(min),eval(max),eval(increment),eval(timeout))},timeout)):$(".roller-title-number-"+slno).html(max)}$(window).on("load",function(){$(document).scrollzipInit(),$(document).rollerInit()}),$(window).on("load scroll resize",function(){$(".numscroller").scrollzip({showFunction:function(){numberRoller($(this).attr("data-slno"))},wholeVisible:!1})}),$.fn.scrollzipInit=function(){$("body").prepend("<div style='position:fixed;top:0px;left:0px;width:0;height:0;' id='scrollzipPoint'></div>")},$.fn.rollerInit=function(){var t=0;$(".numscroller").each(function(){t++,$(this).attr("data-slno",t),$(this).addClass("roller-title-number-"+t)})},$.fn.scrollzip=function(t){var o=$.extend({showFunction:null,hideFunction:null,showShift:0,wholeVisible:!1,hideShift:0},t);return this.each(function(t,i){return $(this).addClass("scrollzip"),$.isFunction(o.showFunction)&&$("#scrollzipPoint").length&&!$(this).hasClass("isShown")&&$(window).outerHeight()+$("#scrollzipPoint").offset().top-o.showShift>$(this).offset().top+(o.wholeVisible?$(this).outerHeight():0)&&$("#scrollzipPoint").offset().top+(o.wholeVisible?$(this).outerHeight():0)<$(this).outerHeight()+$(this).offset().top-o.showShift&&($(this).addClass("isShown"),o.showFunction.call(this)),$.isFunction(o.hideFunction)&&$("#scrollzipPoint").length&&$(this).hasClass("isShown")&&($(window).outerHeight()+$("#scrollzipPoint").offset().top-o.hideShift<$(this).offset().top+(o.wholeVisible?$(this).outerHeight():0)||$("#scrollzipPoint").offset().top+(o.wholeVisible?$(this).outerHeight():0)>$(this).outerHeight()+$(this).offset().top-o.hideShift)&&($(this).removeClass("isShown"),o.hideFunction.call(this)),this})}}(jQuery);
assets/js/extra/easepack.min.js ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * VERSION: 1.15.6
3
+ * DATE: 2017-06-19
4
+ * UPDATES AND DOCS AT: http://greensock.com
5
+ *
6
+ * @license Copyright (c) 2008-2017, GreenSock. All rights reserved.
7
+ * This work is subject to the terms at http://greensock.com/standard-license or for
8
+ * Club GreenSock members, the software agreement that was issued with your membership.
9
+ *
10
+ * @author: Jack Doyle, jack@greensock.com
11
+ **/
12
+ var _gsScope="undefined"!=typeof module&&module.exports&&"undefined"!=typeof global?global:this||window;(_gsScope._gsQueue||(_gsScope._gsQueue=[])).push(function(){"use strict";_gsScope._gsDefine("easing.Back",["easing.Ease"],function(a){var b,c,d,e=_gsScope.GreenSockGlobals||_gsScope,f=e.com.greensock,g=2*Math.PI,h=Math.PI/2,i=f._class,j=function(b,c){var d=i("easing."+b,function(){},!0),e=d.prototype=new a;return e.constructor=d,e.getRatio=c,d},k=a.register||function(){},l=function(a,b,c,d,e){var f=i("easing."+a,{easeOut:new b,easeIn:new c,easeInOut:new d},!0);return k(f,a),f},m=function(a,b,c){this.t=a,this.v=b,c&&(this.next=c,c.prev=this,this.c=c.v-b,this.gap=c.t-a)},n=function(b,c){var d=i("easing."+b,function(a){this._p1=a||0===a?a:1.70158,this._p2=1.525*this._p1},!0),e=d.prototype=new a;return e.constructor=d,e.getRatio=c,e.config=function(a){return new d(a)},d},o=l("Back",n("BackOut",function(a){return(a-=1)*a*((this._p1+1)*a+this._p1)+1}),n("BackIn",function(a){return a*a*((this._p1+1)*a-this._p1)}),n("BackInOut",function(a){return(a*=2)<1?.5*a*a*((this._p2+1)*a-this._p2):.5*((a-=2)*a*((this._p2+1)*a+this._p2)+2)})),p=i("easing.SlowMo",function(a,b,c){b=b||0===b?b:.7,null==a?a=.7:a>1&&(a=1),this._p=1!==a?b:0,this._p1=(1-a)/2,this._p2=a,this._p3=this._p1+this._p2,this._calcEnd=c===!0},!0),q=p.prototype=new a;return q.constructor=p,q.getRatio=function(a){var b=a+(.5-a)*this._p;return a<this._p1?this._calcEnd?1-(a=1-a/this._p1)*a:b-(a=1-a/this._p1)*a*a*a*b:a>this._p3?this._calcEnd?1===a?0:1-(a=(a-this._p3)/this._p1)*a:b+(a-b)*(a=(a-this._p3)/this._p1)*a*a*a:this._calcEnd?1:b},p.ease=new p(.7,.7),q.config=p.config=function(a,b,c){return new p(a,b,c)},b=i("easing.SteppedEase",function(a,b){a=a||1,this._p1=1/a,this._p2=a+(b?0:1),this._p3=b?1:0},!0),q=b.prototype=new a,q.constructor=b,q.getRatio=function(a){return 0>a?a=0:a>=1&&(a=.999999999),((this._p2*a|0)+this._p3)*this._p1},q.config=b.config=function(a,c){return new b(a,c)},c=i("easing.RoughEase",function(b){b=b||{};for(var c,d,e,f,g,h,i=b.taper||"none",j=[],k=0,l=0|(b.points||20),n=l,o=b.randomize!==!1,p=b.clamp===!0,q=b.template instanceof a?b.template:null,r="number"==typeof b.strength?.4*b.strength:.4;--n>-1;)c=o?Math.random():1/l*n,d=q?q.getRatio(c):c,"none"===i?e=r:"out"===i?(f=1-c,e=f*f*r):"in"===i?e=c*c*r:.5>c?(f=2*c,e=f*f*.5*r):(f=2*(1-c),e=f*f*.5*r),o?d+=Math.random()*e-.5*e:n%2?d+=.5*e:d-=.5*e,p&&(d>1?d=1:0>d&&(d=0)),j[k++]={x:c,y:d};for(j.sort(function(a,b){return a.x-b.x}),h=new m(1,1,null),n=l;--n>-1;)g=j[n],h=new m(g.x,g.y,h);this._prev=new m(0,0,0!==h.t?h:h.next)},!0),q=c.prototype=new a,q.constructor=c,q.getRatio=function(a){var b=this._prev;if(a>b.t){for(;b.next&&a>=b.t;)b=b.next;b=b.prev}else for(;b.prev&&a<=b.t;)b=b.prev;return this._prev=b,b.v+(a-b.t)/b.gap*b.c},q.config=function(a){return new c(a)},c.ease=new c,l("Bounce",j("BounceOut",function(a){return 1/2.75>a?7.5625*a*a:2/2.75>a?7.5625*(a-=1.5/2.75)*a+.75:2.5/2.75>a?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375}),j("BounceIn",function(a){return(a=1-a)<1/2.75?1-7.5625*a*a:2/2.75>a?1-(7.5625*(a-=1.5/2.75)*a+.75):2.5/2.75>a?1-(7.5625*(a-=2.25/2.75)*a+.9375):1-(7.5625*(a-=2.625/2.75)*a+.984375)}),j("BounceInOut",function(a){var b=.5>a;return a=b?1-2*a:2*a-1,a=1/2.75>a?7.5625*a*a:2/2.75>a?7.5625*(a-=1.5/2.75)*a+.75:2.5/2.75>a?7.5625*(a-=2.25/2.75)*a+.9375:7.5625*(a-=2.625/2.75)*a+.984375,b?.5*(1-a):.5*a+.5})),l("Circ",j("CircOut",function(a){return Math.sqrt(1-(a-=1)*a)}),j("CircIn",function(a){return-(Math.sqrt(1-a*a)-1)}),j("CircInOut",function(a){return(a*=2)<1?-.5*(Math.sqrt(1-a*a)-1):.5*(Math.sqrt(1-(a-=2)*a)+1)})),d=function(b,c,d){var e=i("easing."+b,function(a,b){this._p1=a>=1?a:1,this._p2=(b||d)/(1>a?a:1),this._p3=this._p2/g*(Math.asin(1/this._p1)||0),this._p2=g/this._p2},!0),f=e.prototype=new a;return f.constructor=e,f.getRatio=c,f.config=function(a,b){return new e(a,b)},e},l("Elastic",d("ElasticOut",function(a){return this._p1*Math.pow(2,-10*a)*Math.sin((a-this._p3)*this._p2)+1},.3),d("ElasticIn",function(a){return-(this._p1*Math.pow(2,10*(a-=1))*Math.sin((a-this._p3)*this._p2))},.3),d("ElasticInOut",function(a){return(a*=2)<1?-.5*(this._p1*Math.pow(2,10*(a-=1))*Math.sin((a-this._p3)*this._p2)):this._p1*Math.pow(2,-10*(a-=1))*Math.sin((a-this._p3)*this._p2)*.5+1},.45)),l("Expo",j("ExpoOut",function(a){return 1-Math.pow(2,-10*a)}),j("ExpoIn",function(a){return Math.pow(2,10*(a-1))-.001}),j("ExpoInOut",function(a){return(a*=2)<1?.5*Math.pow(2,10*(a-1)):.5*(2-Math.pow(2,-10*(a-1)))})),l("Sine",j("SineOut",function(a){return Math.sin(a*h)}),j("SineIn",function(a){return-Math.cos(a*h)+1}),j("SineInOut",function(a){return-.5*(Math.cos(Math.PI*a)-1)})),i("easing.EaseLookup",{find:function(b){return a.map[b]}},!0),k(e.SlowMo,"SlowMo","ease,"),k(c,"RoughEase","ease,"),k(b,"SteppedEase","ease,"),o},!0)}),_gsScope._gsDefine&&_gsScope._gsQueue.pop()(),function(){"use strict";var a=function(){return _gsScope.GreenSockGlobals||_gsScope};"undefined"!=typeof module&&module.exports?(require("../TweenLite.min.js"),module.exports=a()):"function"==typeof define&&define.amd&&define(["TweenLite"],a)}();
assets/js/extra/imagesloaded.pkgd.min.js ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ /*!
2
+ * imagesLoaded PACKAGED v4.1.3
3
+ * JavaScript is all like "You images are done yet or what?"
4
+ * MIT License
5
+ */
6
+
7
+ !function(e,t){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",t):"object"==typeof module&&module.exports?module.exports=t():e.EvEmitter=t()}("undefined"!=typeof window?window:this,function(){function e(){}var t=e.prototype;return t.on=function(e,t){if(e&&t){var i=this._events=this._events||{},n=i[e]=i[e]||[];return-1==n.indexOf(t)&&n.push(t),this}},t.once=function(e,t){if(e&&t){this.on(e,t);var i=this._onceEvents=this._onceEvents||{},n=i[e]=i[e]||{};return n[t]=!0,this}},t.off=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=i.indexOf(t);return-1!=n&&i.splice(n,1),this}},t.emitEvent=function(e,t){var i=this._events&&this._events[e];if(i&&i.length){var n=0,o=i[n];t=t||[];for(var r=this._onceEvents&&this._onceEvents[e];o;){var s=r&&r[o];s&&(this.off(e,o),delete r[o]),o.apply(this,t),n+=s?0:1,o=i[n]}return this}},t.allOff=t.removeAllListeners=function(){delete this._events,delete this._onceEvents},e}),function(e,t){"use strict";"function"==typeof define&&define.amd?define(["ev-emitter/ev-emitter"],function(i){return t(e,i)}):"object"==typeof module&&module.exports?module.exports=t(e,require("ev-emitter")):e.imagesLoaded=t(e,e.EvEmitter)}("undefined"!=typeof window?window:this,function(e,t){function i(e,t){for(var i in t)e[i]=t[i];return e}function n(e){var t=[];if(Array.isArray(e))t=e;else if("number"==typeof e.length)for(var i=0;i<e.length;i++)t.push(e[i]);else t.push(e);return t}function o(e,t,r){return this instanceof o?("string"==typeof e&&(e=document.querySelectorAll(e)),this.elements=n(e),this.options=i({},this.options),"function"==typeof t?r=t:i(this.options,t),r&&this.on("always",r),this.getImages(),h&&(this.jqDeferred=new h.Deferred),void setTimeout(function(){this.check()}.bind(this))):new o(e,t,r)}function r(e){this.img=e}function s(e,t){this.url=e,this.element=t,this.img=new Image}var h=e.jQuery,a=e.console;o.prototype=Object.create(t.prototype),o.prototype.options={},o.prototype.getImages=function(){this.images=[],this.elements.forEach(this.addElementImages,this)},o.prototype.addElementImages=function(e){"IMG"==e.nodeName&&this.addImage(e),this.options.background===!0&&this.addElementBackgroundImages(e);var t=e.nodeType;if(t&&d[t]){for(var i=e.querySelectorAll("img"),n=0;n<i.length;n++){var o=i[n];this.addImage(o)}if("string"==typeof this.options.background){var r=e.querySelectorAll(this.options.background);for(n=0;n<r.length;n++){var s=r[n];this.addElementBackgroundImages(s)}}}};var d={1:!0,9:!0,11:!0};return o.prototype.addElementBackgroundImages=function(e){var t=getComputedStyle(e);if(t)for(var i=/url\((['"])?(.*?)\1\)/gi,n=i.exec(t.backgroundImage);null!==n;){var o=n&&n[2];o&&this.addBackground(o,e),n=i.exec(t.backgroundImage)}},o.prototype.addImage=function(e){var t=new r(e);this.images.push(t)},o.prototype.addBackground=function(e,t){var i=new s(e,t);this.images.push(i)},o.prototype.check=function(){function e(e,i,n){setTimeout(function(){t.progress(e,i,n)})}var t=this;return this.progressedCount=0,this.hasAnyBroken=!1,this.images.length?void this.images.forEach(function(t){t.once("progress",e),t.check()}):void this.complete()},o.prototype.progress=function(e,t,i){this.progressedCount++,this.hasAnyBroken=this.hasAnyBroken||!e.isLoaded,this.emitEvent("progress",[this,e,t]),this.jqDeferred&&this.jqDeferred.notify&&this.jqDeferred.notify(this,e),this.progressedCount==this.images.length&&this.complete(),this.options.debug&&a&&a.log("progress: "+i,e,t)},o.prototype.complete=function(){var e=this.hasAnyBroken?"fail":"done";if(this.isComplete=!0,this.emitEvent(e,[this]),this.emitEvent("always",[this]),this.jqDeferred){var t=this.hasAnyBroken?"reject":"resolve";this.jqDeferred[t](this)}},r.prototype=Object.create(t.prototype),r.prototype.check=function(){var e=this.getIsImageComplete();return e?void this.confirm(0!==this.img.naturalWidth,"naturalWidth"):(this.proxyImage=new Image,this.proxyImage.addEventListener("load",this),this.proxyImage.addEventListener("error",this),this.img.addEventListener("load",this),this.img.addEventListener("error",this),void(this.proxyImage.src=this.img.src))},r.prototype.getIsImageComplete=function(){return this.img.complete&&void 0!==this.img.naturalWidth},r.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.img,t])},r.prototype.handleEvent=function(e){var t="on"+e.type;this[t]&&this[t](e)},r.prototype.onload=function(){this.confirm(!0,"onload"),this.unbindEvents()},r.prototype.onerror=function(){this.confirm(!1,"onerror"),this.unbindEvents()},r.prototype.unbindEvents=function(){this.proxyImage.removeEventListener("load",this),this.proxyImage.removeEventListener("error",this),this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype=Object.create(r.prototype),s.prototype.check=function(){this.img.addEventListener("load",this),this.img.addEventListener("error",this),this.img.src=this.url;var e=this.getIsImageComplete();e&&(this.confirm(0!==this.img.naturalWidth,"naturalWidth"),this.unbindEvents())},s.prototype.unbindEvents=function(){this.img.removeEventListener("load",this),this.img.removeEventListener("error",this)},s.prototype.confirm=function(e,t){this.isLoaded=e,this.emitEvent("progress",[this,this.element,t])},o.makeJQueryPlugin=function(t){t=t||e.jQuery,t&&(h=t,h.fn.imagesLoaded=function(e,t){var i=new o(this,e,t);return i.jqDeferred.promise(h(this))})},o.makeJQueryPlugin(),o});
assets/js/extra/isotope.pkgd.js ADDED
@@ -0,0 +1,12 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * Isotope PACKAGED v3.0.4
3
+ *
4
+ * Licensed GPLv3 for open source use
5
+ * or Isotope Commercial License for commercial use
6
+ *
7
+ * http://isotope.metafizzy.co
8
+ * Copyright 2017 Metafizzy
9
+ */
10
+
11
+ !function(t,e){"function"==typeof define&&define.amd?define("jquery-bridget/jquery-bridget",["jquery"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("jquery")):t.jQueryBridget=e(t,t.jQuery)}(window,function(t,e){"use strict";function i(i,s,a){function u(t,e,o){var n,s="$()."+i+'("'+e+'")';return t.each(function(t,u){var h=a.data(u,i);if(!h)return void r(i+" not initialized. Cannot call methods, i.e. "+s);var d=h[e];if(!d||"_"==e.charAt(0))return void r(s+" is not a valid method");var l=d.apply(h,o);n=void 0===n?l:n}),void 0!==n?n:t}function h(t,e){t.each(function(t,o){var n=a.data(o,i);n?(n.option(e),n._init()):(n=new s(o,e),a.data(o,i,n))})}a=a||e||t.jQuery,a&&(s.prototype.option||(s.prototype.option=function(t){a.isPlainObject(t)&&(this.options=a.extend(!0,this.options,t))}),a.fn[i]=function(t){if("string"==typeof t){var e=n.call(arguments,1);return u(this,t,e)}return h(this,t),this},o(a))}function o(t){!t||t&&t.bridget||(t.bridget=i)}var n=Array.prototype.slice,s=t.console,r="undefined"==typeof s?function(){}:function(t){s.error(t)};return o(e||t.jQuery),i}),function(t,e){"function"==typeof define&&define.amd?define("ev-emitter/ev-emitter",e):"object"==typeof module&&module.exports?module.exports=e():t.EvEmitter=e()}("undefined"!=typeof window?window:this,function(){function t(){}var e=t.prototype;return e.on=function(t,e){if(t&&e){var i=this._events=this._events||{},o=i[t]=i[t]||[];return o.indexOf(e)==-1&&o.push(e),this}},e.once=function(t,e){if(t&&e){this.on(t,e);var i=this._onceEvents=this._onceEvents||{},o=i[t]=i[t]||{};return o[e]=!0,this}},e.off=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var o=i.indexOf(e);return o!=-1&&i.splice(o,1),this}},e.emitEvent=function(t,e){var i=this._events&&this._events[t];if(i&&i.length){var o=0,n=i[o];e=e||[];for(var s=this._onceEvents&&this._onceEvents[t];n;){var r=s&&s[n];r&&(this.off(t,n),delete s[n]),n.apply(this,e),o+=r?0:1,n=i[o]}return this}},t}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("get-size/get-size",[],function(){return e()}):"object"==typeof module&&module.exports?module.exports=e():t.getSize=e()}(window,function(){"use strict";function t(t){var e=parseFloat(t),i=t.indexOf("%")==-1&&!isNaN(e);return i&&e}function e(){}function i(){for(var t={width:0,height:0,innerWidth:0,innerHeight:0,outerWidth:0,outerHeight:0},e=0;e<h;e++){var i=u[e];t[i]=0}return t}function o(t){var e=getComputedStyle(t);return e||a("Style returned "+e+". Are you running this code in a hidden iframe on Firefox? See http://bit.ly/getsizebug1"),e}function n(){if(!d){d=!0;var e=document.createElement("div");e.style.width="200px",e.style.padding="1px 2px 3px 4px",e.style.borderStyle="solid",e.style.borderWidth="1px 2px 3px 4px",e.style.boxSizing="border-box";var i=document.body||document.documentElement;i.appendChild(e);var n=o(e);s.isBoxSizeOuter=r=200==t(n.width),i.removeChild(e)}}function s(e){if(n(),"string"==typeof e&&(e=document.querySelector(e)),e&&"object"==typeof e&&e.nodeType){var s=o(e);if("none"==s.display)return i();var a={};a.width=e.offsetWidth,a.height=e.offsetHeight;for(var d=a.isBorderBox="border-box"==s.boxSizing,l=0;l<h;l++){var f=u[l],c=s[f],m=parseFloat(c);a[f]=isNaN(m)?0:m}var p=a.paddingLeft+a.paddingRight,y=a.paddingTop+a.paddingBottom,g=a.marginLeft+a.marginRight,v=a.marginTop+a.marginBottom,_=a.borderLeftWidth+a.borderRightWidth,I=a.borderTopWidth+a.borderBottomWidth,z=d&&r,x=t(s.width);x!==!1&&(a.width=x+(z?0:p+_));var S=t(s.height);return S!==!1&&(a.height=S+(z?0:y+I)),a.innerWidth=a.width-(p+_),a.innerHeight=a.height-(y+I),a.outerWidth=a.width+g,a.outerHeight=a.height+v,a}}var r,a="undefined"==typeof console?e:function(t){console.error(t)},u=["paddingLeft","paddingRight","paddingTop","paddingBottom","marginLeft","marginRight","marginTop","marginBottom","borderLeftWidth","borderRightWidth","borderTopWidth","borderBottomWidth"],h=u.length,d=!1;return s}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("desandro-matches-selector/matches-selector",e):"object"==typeof module&&module.exports?module.exports=e():t.matchesSelector=e()}(window,function(){"use strict";var t=function(){var t=window.Element.prototype;if(t.matches)return"matches";if(t.matchesSelector)return"matchesSelector";for(var e=["webkit","moz","ms","o"],i=0;i<e.length;i++){var o=e[i],n=o+"MatchesSelector";if(t[n])return n}}();return function(e,i){return e[t](i)}}),function(t,e){"function"==typeof define&&define.amd?define("fizzy-ui-utils/utils",["desandro-matches-selector/matches-selector"],function(i){return e(t,i)}):"object"==typeof module&&module.exports?module.exports=e(t,require("desandro-matches-selector")):t.fizzyUIUtils=e(t,t.matchesSelector)}(window,function(t,e){var i={};i.extend=function(t,e){for(var i in e)t[i]=e[i];return t},i.modulo=function(t,e){return(t%e+e)%e},i.makeArray=function(t){var e=[];if(Array.isArray(t))e=t;else if(t&&"object"==typeof t&&"number"==typeof t.length)for(var i=0;i<t.length;i++)e.push(t[i]);else e.push(t);return e},i.removeFrom=function(t,e){var i=t.indexOf(e);i!=-1&&t.splice(i,1)},i.getParent=function(t,i){for(;t.parentNode&&t!=document.body;)if(t=t.parentNode,e(t,i))return t},i.getQueryElement=function(t){return"string"==typeof t?document.querySelector(t):t},i.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},i.filterFindElements=function(t,o){t=i.makeArray(t);var n=[];return t.forEach(function(t){if(t instanceof HTMLElement){if(!o)return void n.push(t);e(t,o)&&n.push(t);for(var i=t.querySelectorAll(o),s=0;s<i.length;s++)n.push(i[s])}}),n},i.debounceMethod=function(t,e,i){var o=t.prototype[e],n=e+"Timeout";t.prototype[e]=function(){var t=this[n];t&&clearTimeout(t);var e=arguments,s=this;this[n]=setTimeout(function(){o.apply(s,e),delete s[n]},i||100)}},i.docReady=function(t){var e=document.readyState;"complete"==e||"interactive"==e?setTimeout(t):document.addEventListener("DOMContentLoaded",t)},i.toDashed=function(t){return t.replace(/(.)([A-Z])/g,function(t,e,i){return e+"-"+i}).toLowerCase()};var o=t.console;return i.htmlInit=function(e,n){i.docReady(function(){var s=i.toDashed(n),r="data-"+s,a=document.querySelectorAll("["+r+"]"),u=document.querySelectorAll(".js-"+s),h=i.makeArray(a).concat(i.makeArray(u)),d=r+"-options",l=t.jQuery;h.forEach(function(t){var i,s=t.getAttribute(r)||t.getAttribute(d);try{i=s&&JSON.parse(s)}catch(a){return void(o&&o.error("Error parsing "+r+" on "+t.className+": "+a))}var u=new e(t,i);l&&l.data(t,n,u)})})},i}),function(t,e){"function"==typeof define&&define.amd?define("outlayer/item",["ev-emitter/ev-emitter","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("ev-emitter"),require("get-size")):(t.Outlayer={},t.Outlayer.Item=e(t.EvEmitter,t.getSize))}(window,function(t,e){"use strict";function i(t){for(var e in t)return!1;return e=null,!0}function o(t,e){t&&(this.element=t,this.layout=e,this.position={x:0,y:0},this._create())}function n(t){return t.replace(/([A-Z])/g,function(t){return"-"+t.toLowerCase()})}var s=document.documentElement.style,r="string"==typeof s.transition?"transition":"WebkitTransition",a="string"==typeof s.transform?"transform":"WebkitTransform",u={WebkitTransition:"webkitTransitionEnd",transition:"transitionend"}[r],h={transform:a,transition:r,transitionDuration:r+"Duration",transitionProperty:r+"Property",transitionDelay:r+"Delay"},d=o.prototype=Object.create(t.prototype);d.constructor=o,d._create=function(){this._transn={ingProperties:{},clean:{},onEnd:{}},this.css({position:"absolute"})},d.handleEvent=function(t){var e="on"+t.type;this[e]&&this[e](t)},d.getSize=function(){this.size=e(this.element)},d.css=function(t){var e=this.element.style;for(var i in t){var o=h[i]||i;e[o]=t[i]}},d.getPosition=function(){var t=getComputedStyle(this.element),e=this.layout._getOption("originLeft"),i=this.layout._getOption("originTop"),o=t[e?"left":"right"],n=t[i?"top":"bottom"],s=this.layout.size,r=o.indexOf("%")!=-1?parseFloat(o)/100*s.width:parseInt(o,10),a=n.indexOf("%")!=-1?parseFloat(n)/100*s.height:parseInt(n,10);r=isNaN(r)?0:r,a=isNaN(a)?0:a,r-=e?s.paddingLeft:s.paddingRight,a-=i?s.paddingTop:s.paddingBottom,this.position.x=r,this.position.y=a},d.layoutPosition=function(){var t=this.layout.size,e={},i=this.layout._getOption("originLeft"),o=this.layout._getOption("originTop"),n=i?"paddingLeft":"paddingRight",s=i?"left":"right",r=i?"right":"left",a=this.position.x+t[n];e[s]=this.getXValue(a),e[r]="";var u=o?"paddingTop":"paddingBottom",h=o?"top":"bottom",d=o?"bottom":"top",l=this.position.y+t[u];e[h]=this.getYValue(l),e[d]="",this.css(e),this.emitEvent("layout",[this])},d.getXValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&!e?t/this.layout.size.width*100+"%":t+"px"},d.getYValue=function(t){var e=this.layout._getOption("horizontal");return this.layout.options.percentPosition&&e?t/this.layout.size.height*100+"%":t+"px"},d._transitionTo=function(t,e){this.getPosition();var i=this.position.x,o=this.position.y,n=parseInt(t,10),s=parseInt(e,10),r=n===this.position.x&&s===this.position.y;if(this.setPosition(t,e),r&&!this.isTransitioning)return void this.layoutPosition();var a=t-i,u=e-o,h={};h.transform=this.getTranslate(a,u),this.transition({to:h,onTransitionEnd:{transform:this.layoutPosition},isCleaning:!0})},d.getTranslate=function(t,e){var i=this.layout._getOption("originLeft"),o=this.layout._getOption("originTop");return t=i?t:-t,e=o?e:-e,"translate3d("+t+"px, "+e+"px, 0)"},d.goTo=function(t,e){this.setPosition(t,e),this.layoutPosition()},d.moveTo=d._transitionTo,d.setPosition=function(t,e){this.position.x=parseInt(t,10),this.position.y=parseInt(e,10)},d._nonTransition=function(t){this.css(t.to),t.isCleaning&&this._removeStyles(t.to);for(var e in t.onTransitionEnd)t.onTransitionEnd[e].call(this)},d.transition=function(t){if(!parseFloat(this.layout.options.transitionDuration))return void this._nonTransition(t);var e=this._transn;for(var i in t.onTransitionEnd)e.onEnd[i]=t.onTransitionEnd[i];for(i in t.to)e.ingProperties[i]=!0,t.isCleaning&&(e.clean[i]=!0);if(t.from){this.css(t.from);var o=this.element.offsetHeight;o=null}this.enableTransition(t.to),this.css(t.to),this.isTransitioning=!0};var l="opacity,"+n(a);d.enableTransition=function(){if(!this.isTransitioning){var t=this.layout.options.transitionDuration;t="number"==typeof t?t+"ms":t,this.css({transitionProperty:l,transitionDuration:t,transitionDelay:this.staggerDelay||0}),this.element.addEventListener(u,this,!1)}},d.onwebkitTransitionEnd=function(t){this.ontransitionend(t)},d.onotransitionend=function(t){this.ontransitionend(t)};var f={"-webkit-transform":"transform"};d.ontransitionend=function(t){if(t.target===this.element){var e=this._transn,o=f[t.propertyName]||t.propertyName;if(delete e.ingProperties[o],i(e.ingProperties)&&this.disableTransition(),o in e.clean&&(this.element.style[t.propertyName]="",delete e.clean[o]),o in e.onEnd){var n=e.onEnd[o];n.call(this),delete e.onEnd[o]}this.emitEvent("transitionEnd",[this])}},d.disableTransition=function(){this.removeTransitionStyles(),this.element.removeEventListener(u,this,!1),this.isTransitioning=!1},d._removeStyles=function(t){var e={};for(var i in t)e[i]="";this.css(e)};var c={transitionProperty:"",transitionDuration:"",transitionDelay:""};return d.removeTransitionStyles=function(){this.css(c)},d.stagger=function(t){t=isNaN(t)?0:t,this.staggerDelay=t+"ms"},d.removeElem=function(){this.element.parentNode.removeChild(this.element),this.css({display:""}),this.emitEvent("remove",[this])},d.remove=function(){return r&&parseFloat(this.layout.options.transitionDuration)?(this.once("transitionEnd",function(){this.removeElem()}),void this.hide()):void this.removeElem()},d.reveal=function(){delete this.isHidden,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("visibleStyle");e[i]=this.onRevealTransitionEnd,this.transition({from:t.hiddenStyle,to:t.visibleStyle,isCleaning:!0,onTransitionEnd:e})},d.onRevealTransitionEnd=function(){this.isHidden||this.emitEvent("reveal")},d.getHideRevealTransitionEndProperty=function(t){var e=this.layout.options[t];if(e.opacity)return"opacity";for(var i in e)return i},d.hide=function(){this.isHidden=!0,this.css({display:""});var t=this.layout.options,e={},i=this.getHideRevealTransitionEndProperty("hiddenStyle");e[i]=this.onHideTransitionEnd,this.transition({from:t.visibleStyle,to:t.hiddenStyle,isCleaning:!0,onTransitionEnd:e})},d.onHideTransitionEnd=function(){this.isHidden&&(this.css({display:"none"}),this.emitEvent("hide"))},d.destroy=function(){this.css({position:"",left:"",right:"",top:"",bottom:"",transition:"",transform:""})},o}),function(t,e){"use strict";"function"==typeof define&&define.amd?define("outlayer/outlayer",["ev-emitter/ev-emitter","get-size/get-size","fizzy-ui-utils/utils","./item"],function(i,o,n,s){return e(t,i,o,n,s)}):"object"==typeof module&&module.exports?module.exports=e(t,require("ev-emitter"),require("get-size"),require("fizzy-ui-utils"),require("./item")):t.Outlayer=e(t,t.EvEmitter,t.getSize,t.fizzyUIUtils,t.Outlayer.Item)}(window,function(t,e,i,o,n){"use strict";function s(t,e){var i=o.getQueryElement(t);if(!i)return void(u&&u.error("Bad element for "+this.constructor.namespace+": "+(i||t)));this.element=i,h&&(this.$element=h(this.element)),this.options=o.extend({},this.constructor.defaults),this.option(e);var n=++l;this.element.outlayerGUID=n,f[n]=this,this._create();var s=this._getOption("initLayout");s&&this.layout()}function r(t){function e(){t.apply(this,arguments)}return e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e}function a(t){if("number"==typeof t)return t;var e=t.match(/(^\d*\.?\d*)(\w*)/),i=e&&e[1],o=e&&e[2];if(!i.length)return 0;i=parseFloat(i);var n=m[o]||1;return i*n}var u=t.console,h=t.jQuery,d=function(){},l=0,f={};s.namespace="outlayer",s.Item=n,s.defaults={containerStyle:{position:"relative"},initLayout:!0,originLeft:!0,originTop:!0,resize:!0,resizeContainer:!0,transitionDuration:"0.4s",hiddenStyle:{opacity:0,transform:"scale(0.001)"},visibleStyle:{opacity:1,transform:"scale(1)"}};var c=s.prototype;o.extend(c,e.prototype),c.option=function(t){o.extend(this.options,t)},c._getOption=function(t){var e=this.constructor.compatOptions[t];return e&&void 0!==this.options[e]?this.options[e]:this.options[t]},s.compatOptions={initLayout:"isInitLayout",horizontal:"isHorizontal",layoutInstant:"isLayoutInstant",originLeft:"isOriginLeft",originTop:"isOriginTop",resize:"isResizeBound",resizeContainer:"isResizingContainer"},c._create=function(){this.reloadItems(),this.stamps=[],this.stamp(this.options.stamp),o.extend(this.element.style,this.options.containerStyle);var t=this._getOption("resize");t&&this.bindResize()},c.reloadItems=function(){this.items=this._itemize(this.element.children)},c._itemize=function(t){for(var e=this._filterFindItemElements(t),i=this.constructor.Item,o=[],n=0;n<e.length;n++){var s=e[n],r=new i(s,this);o.push(r)}return o},c._filterFindItemElements=function(t){return o.filterFindElements(t,this.options.itemSelector)},c.getItemElements=function(){return this.items.map(function(t){return t.element})},c.layout=function(){this._resetLayout(),this._manageStamps();var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;this.layoutItems(this.items,e),this._isLayoutInited=!0},c._init=c.layout,c._resetLayout=function(){this.getSize()},c.getSize=function(){this.size=i(this.element)},c._getMeasurement=function(t,e){var o,n=this.options[t];n?("string"==typeof n?o=this.element.querySelector(n):n instanceof HTMLElement&&(o=n),this[t]=o?i(o)[e]:n):this[t]=0},c.layoutItems=function(t,e){t=this._getItemsForLayout(t),this._layoutItems(t,e),this._postLayout()},c._getItemsForLayout=function(t){return t.filter(function(t){return!t.isIgnored})},c._layoutItems=function(t,e){if(this._emitCompleteOnItems("layout",t),t&&t.length){var i=[];t.forEach(function(t){var o=this._getItemLayoutPosition(t);o.item=t,o.isInstant=e||t.isLayoutInstant,i.push(o)},this),this._processLayoutQueue(i)}},c._getItemLayoutPosition=function(){return{x:0,y:0}},c._processLayoutQueue=function(t){this.updateStagger(),t.forEach(function(t,e){this._positionItem(t.item,t.x,t.y,t.isInstant,e)},this)},c.updateStagger=function(){var t=this.options.stagger;return null===t||void 0===t?void(this.stagger=0):(this.stagger=a(t),this.stagger)},c._positionItem=function(t,e,i,o,n){o?t.goTo(e,i):(t.stagger(n*this.stagger),t.moveTo(e,i))},c._postLayout=function(){this.resizeContainer()},c.resizeContainer=function(){var t=this._getOption("resizeContainer");if(t){var e=this._getContainerSize();e&&(this._setContainerMeasure(e.width,!0),this._setContainerMeasure(e.height,!1))}},c._getContainerSize=d,c._setContainerMeasure=function(t,e){if(void 0!==t){var i=this.size;i.isBorderBox&&(t+=e?i.paddingLeft+i.paddingRight+i.borderLeftWidth+i.borderRightWidth:i.paddingBottom+i.paddingTop+i.borderTopWidth+i.borderBottomWidth),t=Math.max(t,0),this.element.style[e?"width":"height"]=t+"px"}},c._emitCompleteOnItems=function(t,e){function i(){n.dispatchEvent(t+"Complete",null,[e])}function o(){r++,r==s&&i()}var n=this,s=e.length;if(!e||!s)return void i();var r=0;e.forEach(function(e){e.once(t,o)})},c.dispatchEvent=function(t,e,i){var o=e?[e].concat(i):i;if(this.emitEvent(t,o),h)if(this.$element=this.$element||h(this.element),e){var n=h.Event(e);n.type=t,this.$element.trigger(n,i)}else this.$element.trigger(t,i)},c.ignore=function(t){var e=this.getItem(t);e&&(e.isIgnored=!0)},c.unignore=function(t){var e=this.getItem(t);e&&delete e.isIgnored},c.stamp=function(t){t=this._find(t),t&&(this.stamps=this.stamps.concat(t),t.forEach(this.ignore,this))},c.unstamp=function(t){t=this._find(t),t&&t.forEach(function(t){o.removeFrom(this.stamps,t),this.unignore(t)},this)},c._find=function(t){if(t)return"string"==typeof t&&(t=this.element.querySelectorAll(t)),t=o.makeArray(t)},c._manageStamps=function(){this.stamps&&this.stamps.length&&(this._getBoundingRect(),this.stamps.forEach(this._manageStamp,this))},c._getBoundingRect=function(){var t=this.element.getBoundingClientRect(),e=this.size;this._boundingRect={left:t.left+e.paddingLeft+e.borderLeftWidth,top:t.top+e.paddingTop+e.borderTopWidth,right:t.right-(e.paddingRight+e.borderRightWidth),bottom:t.bottom-(e.paddingBottom+e.borderBottomWidth)}},c._manageStamp=d,c._getElementOffset=function(t){var e=t.getBoundingClientRect(),o=this._boundingRect,n=i(t),s={left:e.left-o.left-n.marginLeft,top:e.top-o.top-n.marginTop,right:o.right-e.right-n.marginRight,bottom:o.bottom-e.bottom-n.marginBottom};return s},c.handleEvent=o.handleEvent,c.bindResize=function(){t.addEventListener("resize",this),this.isResizeBound=!0},c.unbindResize=function(){t.removeEventListener("resize",this),this.isResizeBound=!1},c.onresize=function(){this.resize()},o.debounceMethod(s,"onresize",100),c.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&this.layout()},c.needsResizeLayout=function(){var t=i(this.element),e=this.size&&t;return e&&t.innerWidth!==this.size.innerWidth},c.addItems=function(t){var e=this._itemize(t);return e.length&&(this.items=this.items.concat(e)),e},c.appended=function(t){var e=this.addItems(t);e.length&&(this.layoutItems(e,!0),this.reveal(e))},c.prepended=function(t){var e=this._itemize(t);if(e.length){var i=this.items.slice(0);this.items=e.concat(i),this._resetLayout(),this._manageStamps(),this.layoutItems(e,!0),this.reveal(e),this.layoutItems(i)}},c.reveal=function(t){if(this._emitCompleteOnItems("reveal",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.reveal()})}},c.hide=function(t){if(this._emitCompleteOnItems("hide",t),t&&t.length){var e=this.updateStagger();t.forEach(function(t,i){t.stagger(i*e),t.hide()})}},c.revealItemElements=function(t){var e=this.getItems(t);this.reveal(e)},c.hideItemElements=function(t){var e=this.getItems(t);this.hide(e)},c.getItem=function(t){for(var e=0;e<this.items.length;e++){var i=this.items[e];if(i.element==t)return i}},c.getItems=function(t){t=o.makeArray(t);var e=[];return t.forEach(function(t){var i=this.getItem(t);i&&e.push(i)},this),e},c.remove=function(t){var e=this.getItems(t);this._emitCompleteOnItems("remove",e),e&&e.length&&e.forEach(function(t){t.remove(),o.removeFrom(this.items,t)},this)},c.destroy=function(){var t=this.element.style;t.height="",t.position="",t.width="",this.items.forEach(function(t){t.destroy()}),this.unbindResize();var e=this.element.outlayerGUID;delete f[e],delete this.element.outlayerGUID,h&&h.removeData(this.element,this.constructor.namespace)},s.data=function(t){t=o.getQueryElement(t);var e=t&&t.outlayerGUID;return e&&f[e]},s.create=function(t,e){var i=r(s);return i.defaults=o.extend({},s.defaults),o.extend(i.defaults,e),i.compatOptions=o.extend({},s.compatOptions),i.namespace=t,i.data=s.data,i.Item=r(n),o.htmlInit(i,t),h&&h.bridget&&h.bridget(t,i),i};var m={ms:1,s:1e3};return s.Item=n,s}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/item",["outlayer/outlayer"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer")):(t.Isotope=t.Isotope||{},t.Isotope.Item=e(t.Outlayer))}(window,function(t){"use strict";function e(){t.Item.apply(this,arguments)}var i=e.prototype=Object.create(t.Item.prototype),o=i._create;i._create=function(){this.id=this.layout.itemGUID++,o.call(this),this.sortData={}},i.updateSortData=function(){if(!this.isIgnored){this.sortData.id=this.id,this.sortData["original-order"]=this.id,this.sortData.random=Math.random();var t=this.layout.options.getSortData,e=this.layout._sorters;for(var i in t){var o=e[i];this.sortData[i]=o(this.element,this)}}};var n=i.destroy;return i.destroy=function(){n.apply(this,arguments),this.css({display:""})},e}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-mode",["get-size/get-size","outlayer/outlayer"],e):"object"==typeof module&&module.exports?module.exports=e(require("get-size"),require("outlayer")):(t.Isotope=t.Isotope||{},t.Isotope.LayoutMode=e(t.getSize,t.Outlayer))}(window,function(t,e){"use strict";function i(t){this.isotope=t,t&&(this.options=t.options[this.namespace],this.element=t.element,this.items=t.filteredItems,this.size=t.size)}var o=i.prototype,n=["_resetLayout","_getItemLayoutPosition","_manageStamp","_getContainerSize","_getElementOffset","needsResizeLayout","_getOption"];return n.forEach(function(t){o[t]=function(){return e.prototype[t].apply(this.isotope,arguments)}}),o.needsVerticalResizeLayout=function(){var e=t(this.isotope.element),i=this.isotope.size&&e;return i&&e.innerHeight!=this.isotope.size.innerHeight},o._getMeasurement=function(){this.isotope._getMeasurement.apply(this,arguments)},o.getColumnWidth=function(){this.getSegmentSize("column","Width")},o.getRowHeight=function(){this.getSegmentSize("row","Height")},o.getSegmentSize=function(t,e){var i=t+e,o="outer"+e;if(this._getMeasurement(i,o),!this[i]){var n=this.getFirstItemSize();this[i]=n&&n[o]||this.isotope.size["inner"+e]}},o.getFirstItemSize=function(){var e=this.isotope.filteredItems[0];return e&&e.element&&t(e.element)},o.layout=function(){this.isotope.layout.apply(this.isotope,arguments)},o.getSize=function(){this.isotope.getSize(),this.size=this.isotope.size},i.modes={},i.create=function(t,e){function n(){i.apply(this,arguments)}return n.prototype=Object.create(o),n.prototype.constructor=n,e&&(n.options=e),n.prototype.namespace=t,i.modes[t]=n,n},i}),function(t,e){"function"==typeof define&&define.amd?define("masonry/masonry",["outlayer/outlayer","get-size/get-size"],e):"object"==typeof module&&module.exports?module.exports=e(require("outlayer"),require("get-size")):t.Masonry=e(t.Outlayer,t.getSize)}(window,function(t,e){var i=t.create("masonry");i.compatOptions.fitWidth="isFitWidth";var o=i.prototype;return o._resetLayout=function(){this.getSize(),this._getMeasurement("columnWidth","outerWidth"),this._getMeasurement("gutter","outerWidth"),this.measureColumns(),this.colYs=[];for(var t=0;t<this.cols;t++)this.colYs.push(0);this.maxY=0,this.horizontalColIndex=0},o.measureColumns=function(){if(this.getContainerWidth(),!this.columnWidth){var t=this.items[0],i=t&&t.element;this.columnWidth=i&&e(i).outerWidth||this.containerWidth}var o=this.columnWidth+=this.gutter,n=this.containerWidth+this.gutter,s=n/o,r=o-n%o,a=r&&r<1?"round":"floor";s=Math[a](s),this.cols=Math.max(s,1)},o.getContainerWidth=function(){var t=this._getOption("fitWidth"),i=t?this.element.parentNode:this.element,o=e(i);this.containerWidth=o&&o.innerWidth},o._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth%this.columnWidth,i=e&&e<1?"round":"ceil",o=Math[i](t.size.outerWidth/this.columnWidth);o=Math.min(o,this.cols);for(var n=this.options.horizontalOrder?"_getHorizontalColPosition":"_getTopColPosition",s=this[n](o,t),r={x:this.columnWidth*s.col,y:s.y},a=s.y+t.size.outerHeight,u=o+s.col,h=s.col;h<u;h++)this.colYs[h]=a;return r},o._getTopColPosition=function(t){var e=this._getTopColGroup(t),i=Math.min.apply(Math,e);return{col:e.indexOf(i),y:i}},o._getTopColGroup=function(t){if(t<2)return this.colYs;for(var e=[],i=this.cols+1-t,o=0;o<i;o++)e[o]=this._getColGroupY(o,t);return e},o._getColGroupY=function(t,e){if(e<2)return this.colYs[t];var i=this.colYs.slice(t,t+e);return Math.max.apply(Math,i)},o._getHorizontalColPosition=function(t,e){var i=this.horizontalColIndex%this.cols,o=t>1&&i+t>this.cols;i=o?0:i;var n=e.size.outerWidth&&e.size.outerHeight;return this.horizontalColIndex=n?i+t:this.horizontalColIndex,{col:i,y:this._getColGroupY(i,t)}},o._manageStamp=function(t){var i=e(t),o=this._getElementOffset(t),n=this._getOption("originLeft"),s=n?o.left:o.right,r=s+i.outerWidth,a=Math.floor(s/this.columnWidth);a=Math.max(0,a);var u=Math.floor(r/this.columnWidth);u-=r%this.columnWidth?0:1,u=Math.min(this.cols-1,u);for(var h=this._getOption("originTop"),d=(h?o.top:o.bottom)+i.outerHeight,l=a;l<=u;l++)this.colYs[l]=Math.max(d,this.colYs[l])},o._getContainerSize=function(){this.maxY=Math.max.apply(Math,this.colYs);var t={height:this.maxY};return this._getOption("fitWidth")&&(t.width=this._getContainerFitWidth()),t},o._getContainerFitWidth=function(){for(var t=0,e=this.cols;--e&&0===this.colYs[e];)t++;return(this.cols-t)*this.columnWidth-this.gutter},o.needsResizeLayout=function(){var t=this.containerWidth;return this.getContainerWidth(),t!=this.containerWidth},i}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-modes/masonry",["../layout-mode","masonry/masonry"],e):"object"==typeof module&&module.exports?module.exports=e(require("../layout-mode"),require("masonry-layout")):e(t.Isotope.LayoutMode,t.Masonry)}(window,function(t,e){"use strict";var i=t.create("masonry"),o=i.prototype,n={_getElementOffset:!0,layout:!0,_getMeasurement:!0};for(var s in e.prototype)n[s]||(o[s]=e.prototype[s]);var r=o.measureColumns;o.measureColumns=function(){this.items=this.isotope.filteredItems,r.call(this)};var a=o._getOption;return o._getOption=function(t){return"fitWidth"==t?void 0!==this.options.isFitWidth?this.options.isFitWidth:this.options.fitWidth:a.apply(this.isotope,arguments)},i}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-modes/fit-rows",["../layout-mode"],e):"object"==typeof exports?module.exports=e(require("../layout-mode")):e(t.Isotope.LayoutMode)}(window,function(t){"use strict";var e=t.create("fitRows"),i=e.prototype;return i._resetLayout=function(){this.x=0,this.y=0,this.maxY=0,this._getMeasurement("gutter","outerWidth")},i._getItemLayoutPosition=function(t){t.getSize();var e=t.size.outerWidth+this.gutter,i=this.isotope.size.innerWidth+this.gutter;0!==this.x&&e+this.x>i&&(this.x=0,this.y=this.maxY);var o={x:this.x,y:this.y};return this.maxY=Math.max(this.maxY,this.y+t.size.outerHeight),this.x+=e,o},i._getContainerSize=function(){return{height:this.maxY}},e}),function(t,e){"function"==typeof define&&define.amd?define("isotope/js/layout-modes/vertical",["../layout-mode"],e):"object"==typeof module&&module.exports?module.exports=e(require("../layout-mode")):e(t.Isotope.LayoutMode)}(window,function(t){"use strict";var e=t.create("vertical",{horizontalAlignment:0}),i=e.prototype;return i._resetLayout=function(){this.y=0},i._getItemLayoutPosition=function(t){t.getSize();var e=(this.isotope.size.innerWidth-t.size.outerWidth)*this.options.horizontalAlignment,i=this.y;return this.y+=t.size.outerHeight,{x:e,y:i}},i._getContainerSize=function(){return{height:this.y}},e}),function(t,e){"function"==typeof define&&define.amd?define(["outlayer/outlayer","get-size/get-size","desandro-matches-selector/matches-selector","fizzy-ui-utils/utils","isotope/js/item","isotope/js/layout-mode","isotope/js/layout-modes/masonry","isotope/js/layout-modes/fit-rows","isotope/js/layout-modes/vertical"],function(i,o,n,s,r,a){return e(t,i,o,n,s,r,a)}):"object"==typeof module&&module.exports?module.exports=e(t,require("outlayer"),require("get-size"),require("desandro-matches-selector"),require("fizzy-ui-utils"),require("isotope/js/item"),require("isotope/js/layout-mode"),require("isotope/js/layout-modes/masonry"),require("isotope/js/layout-modes/fit-rows"),require("isotope/js/layout-modes/vertical")):t.Isotope=e(t,t.Outlayer,t.getSize,t.matchesSelector,t.fizzyUIUtils,t.Isotope.Item,t.Isotope.LayoutMode)}(window,function(t,e,i,o,n,s,r){function a(t,e){return function(i,o){for(var n=0;n<t.length;n++){var s=t[n],r=i.sortData[s],a=o.sortData[s];if(r>a||r<a){var u=void 0!==e[s]?e[s]:e,h=u?1:-1;return(r>a?1:-1)*h}}return 0}}var u=t.jQuery,h=String.prototype.trim?function(t){return t.trim()}:function(t){return t.replace(/^\s+|\s+$/g,"")},d=e.create("isotope",{layoutMode:"masonry",isJQueryFiltering:!0,sortAscending:!0});d.Item=s,d.LayoutMode=r;var l=d.prototype;l._create=function(){this.itemGUID=0,this._sorters={},this._getSorters(),e.prototype._create.call(this),this.modes={},this.filteredItems=this.items,this.sortHistory=["original-order"];for(var t in r.modes)this._initLayoutMode(t)},l.reloadItems=function(){this.itemGUID=0,e.prototype.reloadItems.call(this)},l._itemize=function(){for(var t=e.prototype._itemize.apply(this,arguments),i=0;i<t.length;i++){var o=t[i];o.id=this.itemGUID++}return this._updateItemsSortData(t),t},l._initLayoutMode=function(t){var e=r.modes[t],i=this.options[t]||{};this.options[t]=e.options?n.extend(e.options,i):i,this.modes[t]=new e(this)},l.layout=function(){return!this._isLayoutInited&&this._getOption("initLayout")?void this.arrange():void this._layout()},l._layout=function(){var t=this._getIsInstant();this._resetLayout(),this._manageStamps(),this.layoutItems(this.filteredItems,t),this._isLayoutInited=!0},l.arrange=function(t){this.option(t),this._getIsInstant();var e=this._filter(this.items);this.filteredItems=e.matches,this._bindArrangeComplete(),this._isInstant?this._noTransition(this._hideReveal,[e]):this._hideReveal(e),this._sort(),this._layout()},l._init=l.arrange,l._hideReveal=function(t){this.reveal(t.needReveal),this.hide(t.needHide)},l._getIsInstant=function(){var t=this._getOption("layoutInstant"),e=void 0!==t?t:!this._isLayoutInited;return this._isInstant=e,e},l._bindArrangeComplete=function(){function t(){e&&i&&o&&n.dispatchEvent("arrangeComplete",null,[n.filteredItems])}var e,i,o,n=this;this.once("layoutComplete",function(){e=!0,t()}),this.once("hideComplete",function(){i=!0,t()}),this.once("revealComplete",function(){o=!0,t()})},l._filter=function(t){var e=this.options.filter;e=e||"*";for(var i=[],o=[],n=[],s=this._getFilterTest(e),r=0;r<t.length;r++){var a=t[r];if(!a.isIgnored){var u=s(a);u&&i.push(a),u&&a.isHidden?o.push(a):u||a.isHidden||n.push(a)}}return{matches:i,needReveal:o,needHide:n}},l._getFilterTest=function(t){return u&&this.options.isJQueryFiltering?function(e){return u(e.element).is(t)}:"function"==typeof t?function(e){return t(e.element)}:function(e){return o(e.element,t)}},l.updateSortData=function(t){
12
+ var e;t?(t=n.makeArray(t),e=this.getItems(t)):e=this.items,this._getSorters(),this._updateItemsSortData(e)},l._getSorters=function(){var t=this.options.getSortData;for(var e in t){var i=t[e];this._sorters[e]=f(i)}},l._updateItemsSortData=function(t){for(var e=t&&t.length,i=0;e&&i<e;i++){var o=t[i];o.updateSortData()}};var f=function(){function t(t){if("string"!=typeof t)return t;var i=h(t).split(" "),o=i[0],n=o.match(/^\[(.+)\]$/),s=n&&n[1],r=e(s,o),a=d.sortDataParsers[i[1]];return t=a?function(t){return t&&a(r(t))}:function(t){return t&&r(t)}}function e(t,e){return t?function(e){return e.getAttribute(t)}:function(t){var i=t.querySelector(e);return i&&i.textContent}}return t}();d.sortDataParsers={parseInt:function(t){return parseInt(t,10)},parseFloat:function(t){return parseFloat(t)}},l._sort=function(){if(this.options.sortBy){var t=n.makeArray(this.options.sortBy);this._getIsSameSortBy(t)||(this.sortHistory=t.concat(this.sortHistory));var e=a(this.sortHistory,this.options.sortAscending);this.filteredItems.sort(e)}},l._getIsSameSortBy=function(t){for(var e=0;e<t.length;e++)if(t[e]!=this.sortHistory[e])return!1;return!0},l._mode=function(){var t=this.options.layoutMode,e=this.modes[t];if(!e)throw new Error("No layout mode: "+t);return e.options=this.options[t],e},l._resetLayout=function(){e.prototype._resetLayout.call(this),this._mode()._resetLayout()},l._getItemLayoutPosition=function(t){return this._mode()._getItemLayoutPosition(t)},l._manageStamp=function(t){this._mode()._manageStamp(t)},l._getContainerSize=function(){return this._mode()._getContainerSize()},l.needsResizeLayout=function(){return this._mode().needsResizeLayout()},l.appended=function(t){var e=this.addItems(t);if(e.length){var i=this._filterRevealAdded(e);this.filteredItems=this.filteredItems.concat(i)}},l.prepended=function(t){var e=this._itemize(t);if(e.length){this._resetLayout(),this._manageStamps();var i=this._filterRevealAdded(e);this.layoutItems(this.filteredItems),this.filteredItems=i.concat(this.filteredItems),this.items=e.concat(this.items)}},l._filterRevealAdded=function(t){var e=this._filter(t);return this.hide(e.needHide),this.reveal(e.matches),this.layoutItems(e.matches,!0),e.matches},l.insert=function(t){var e=this.addItems(t);if(e.length){var i,o,n=e.length;for(i=0;i<n;i++)o=e[i],this.element.appendChild(o.element);var s=this._filter(e).matches;for(i=0;i<n;i++)e[i].isLayoutInstant=!0;for(this.arrange(),i=0;i<n;i++)delete e[i].isLayoutInstant;this.reveal(s)}};var c=l.remove;return l.remove=function(t){t=n.makeArray(t);var e=this.getItems(t);c.call(this,t);for(var i=e&&e.length,o=0;i&&o<i;o++){var s=e[o];n.removeFrom(this.filteredItems,s)}},l.shuffle=function(){for(var t=0;t<this.items.length;t++){var e=this.items[t];e.sortData.random=Math.random()}this.options.sortBy="random",this._sort(),this._layout()},l._noTransition=function(t,e){var i=this.options.transitionDuration;this.options.transitionDuration=0;var o=t.apply(this,e);return this.options.transitionDuration=i,o},l.getFilteredItemElements=function(){return this.filteredItems.map(function(t){return t.element})},d});
assets/js/extra/jquery.downCount.js ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
1
+ /**
2
+ * downCount: Simple Countdown clock with offset
3
+ * Author: Sonny T. <hi@sonnyt.com>, sonnyt.com
4
+ */
5
+ !function(t){t.fn.downCount=function(e,n){var r=t.extend({date:null,offset:null,text_day:null,text_hour:null,text_minute:null,text_second:null},e);r.date||t.error("Date is not defined."),Date.parse(r.date)||t.error("Incorrect date format, it should look like this, 12/24/2012 12:00:00.");var o=this,f=function(){var t=new Date,e=t.getTime()+6e4*t.getTimezoneOffset();return new Date(e+36e5*r.offset)};var i=setInterval(function(){var t=new Date(r.date)-f();if(t<0)return clearInterval(i),void(n&&"function"==typeof n&&n());var e=36e5,a=Math.floor(t/864e5),d=Math.floor(t%864e5/e),l=Math.floor(t%e/6e4),u=Math.floor(t%6e4/1e3);a=String(a).length>=2?a:"0"+a,d=String(d).length>=2?d:"0"+d,l=String(l).length>=2?l:"0"+l,u=String(u).length>=2?u:"0"+u;var s=r.text_day,x=r.text_hour,h=r.text_minute,c=r.text_second;o.find(".days").text(a),o.find(".hours").text(d),o.find(".minutes").text(l),o.find(".seconds").text(u),o.find(".days_ref").text(s),o.find(".hours_ref").text(x),o.find(".minutes_ref").text(h),o.find(".seconds_ref").text(c)},1e3)}}(jQuery);
assets/js/extra/jquery.mousewheel.min.js ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * jQuery Mousewheel 3.1.13
3
+ *
4
+ * Copyright 2015 jQuery Foundation and other contributors
5
+ * Released under the MIT license.
6
+ * http://jquery.org/license
7
+ */
8
+ !function(a){"function"==typeof define&&define.amd?define(["jquery"],a):"object"==typeof exports?module.exports=a:a(jQuery)}(function(a){function b(b){var g=b||window.event,h=i.call(arguments,1),j=0,l=0,m=0,n=0,o=0,p=0;if(b=a.event.fix(g),b.type="mousewheel","detail"in g&&(m=-1*g.detail),"wheelDelta"in g&&(m=g.wheelDelta),"wheelDeltaY"in g&&(m=g.wheelDeltaY),"wheelDeltaX"in g&&(l=-1*g.wheelDeltaX),"axis"in g&&g.axis===g.HORIZONTAL_AXIS&&(l=-1*m,m=0),j=0===m?l:m,"deltaY"in g&&(m=-1*g.deltaY,j=m),"deltaX"in g&&(l=g.deltaX,0===m&&(j=-1*l)),0!==m||0!==l){if(1===g.deltaMode){var q=a.data(this,"mousewheel-line-height");j*=q,m*=q,l*=q}else if(2===g.deltaMode){var r=a.data(this,"mousewheel-page-height");j*=r,m*=r,l*=r}if(n=Math.max(Math.abs(m),Math.abs(l)),(!f||f>n)&&(f=n,d(g,n)&&(f/=40)),d(g,n)&&(j/=40,l/=40,m/=40),j=Math[j>=1?"floor":"ceil"](j/f),l=Math[l>=1?"floor":"ceil"](l/f),m=Math[m>=1?"floor":"ceil"](m/f),k.settings.normalizeOffset&&this.getBoundingClientRect){var s=this.getBoundingClientRect();o=b.clientX-s.left,p=b.clientY-s.top}return b.deltaX=l,b.deltaY=m,b.deltaFactor=f,b.offsetX=o,b.offsetY=p,b.deltaMode=0,h.unshift(b,j,l,m),e&&clearTimeout(e),e=setTimeout(c,200),(a.event.dispatch||a.event.handle).apply(this,h)}}function c(){f=null}function d(a,b){return k.settings.adjustOldDeltas&&"mousewheel"===a.type&&b%120===0}var e,f,g=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],h="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],i=Array.prototype.slice;if(a.event.fixHooks)for(var j=g.length;j;)a.event.fixHooks[g[--j]]=a.event.mouseHooks;var k=a.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener)for(var c=h.length;c;)this.addEventListener(h[--c],b,!1);else this.onmousewheel=b;a.data(this,"mousewheel-line-height",k.getLineHeight(this)),a.data(this,"mousewheel-page-height",k.getPageHeight(this))},teardown:function(){if(this.removeEventListener)for(var c=h.length;c;)this.removeEventListener(h[--c],b,!1);else this.onmousewheel=null;a.removeData(this,"mousewheel-line-height"),a.removeData(this,"mousewheel-page-height")},getLineHeight:function(b){var c=a(b),d=c["offsetParent"in a.fn?"offsetParent":"parent"]();return d.length||(d=a("body")),parseInt(d.css("fontSize"),10)||parseInt(c.css("fontSize"),10)||16},getPageHeight:function(b){return a(b).height()},settings:{adjustOldDeltas:!0,normalizeOffset:!0}};a.fn.extend({mousewheel:function(a){return a?this.bind("mousewheel",a):this.trigger("mousewheel")},unmousewheel:function(a){return this.unbind("mousewheel",a)}})});
assets/js/extra/jquery.waypoints.js ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
1
+ /*!
2
+ Waypoints - 4.0.1
3
+ Copyright © 2011-2016 Caleb Troughton
4
+ Licensed under the MIT license.
5
+ https://github.com/imakewebthings/waypoints/blob/master/licenses.txt
6
+ */
7
+ !function(){"use strict";function t(o){if(!o)throw new Error("No options passed to Waypoint constructor");if(!o.element)throw new Error("No element option passed to Waypoint constructor");if(!o.handler)throw new Error("No handler option passed to Waypoint constructor");this.key="waypoint-"+e,this.options=t.Adapter.extend({},t.defaults,o),this.element=this.options.element,this.adapter=new t.Adapter(this.element),this.callback=o.handler,this.axis=this.options.horizontal?"horizontal":"vertical",this.enabled=this.options.enabled,this.triggerPoint=null,this.group=t.Group.findOrCreate({name:this.options.group,axis:this.axis}),this.context=t.Context.findOrCreateByElement(this.options.context),t.offsetAliases[this.options.offset]&&(this.options.offset=t.offsetAliases[this.options.offset]),this.group.add(this),this.context.add(this),i[this.key]=this,e+=1}var e=0,i={};t.prototype.queueTrigger=function(t){this.group.queueTrigger(this,t)},t.prototype.trigger=function(t){this.enabled&&this.callback&&this.callback.apply(this,t)},t.prototype.destroy=function(){this.context.remove(this),this.group.remove(this),delete i[this.key]},t.prototype.disable=function(){return this.enabled=!1,this},t.prototype.enable=function(){return this.context.refresh(),this.enabled=!0,this},t.prototype.next=function(){return this.group.next(this)},t.prototype.previous=function(){return this.group.previous(this)},t.invokeAll=function(t){var e=[];for(var o in i)e.push(i[o]);for(var n=0,r=e.length;r>n;n++)e[n][t]()},t.destroyAll=function(){t.invokeAll("destroy")},t.disableAll=function(){t.invokeAll("disable")},t.enableAll=function(){t.Context.refreshAll();for(var e in i)i[e].enabled=!0;return this},t.refreshAll=function(){t.Context.refreshAll()},t.viewportHeight=function(){return window.innerHeight||document.documentElement.clientHeight},t.viewportWidth=function(){return document.documentElement.clientWidth},t.adapters=[],t.defaults={context:window,continuous:!0,enabled:!0,group:"default",horizontal:!1,offset:0},t.offsetAliases={"bottom-in-view":function(){return this.context.innerHeight()-this.adapter.outerHeight()},"right-in-view":function(){return this.context.innerWidth()-this.adapter.outerWidth()}},window.Waypoint=t}(),function(){"use strict";function t(t){window.setTimeout(t,1e3/60)}function e(t){this.element=t,this.Adapter=n.Adapter,this.adapter=new this.Adapter(t),this.key="waypoint-context-"+i,this.didScroll=!1,this.didResize=!1,this.oldScroll={x:this.adapter.scrollLeft(),y:this.adapter.scrollTop()},this.waypoints={vertical:{},horizontal:{}},t.waypointContextKey=this.key,o[t.waypointContextKey]=this,i+=1,n.windowContext||(n.windowContext=!0,n.windowContext=new e(window)),this.createThrottledScrollHandler(),this.createThrottledResizeHandler()}var i=0,o={},n=window.Waypoint,r=window.onload;e.prototype.add=function(t){var e=t.options.horizontal?"horizontal":"vertical";this.waypoints[e][t.key]=t,this.refresh()},e.prototype.checkEmpty=function(){var t=this.Adapter.isEmptyObject(this.waypoints.horizontal),e=this.Adapter.isEmptyObject(this.waypoints.vertical),i=this.element==this.element.window;t&&e&&!i&&(this.adapter.off(".waypoints"),delete o[this.key])},e.prototype.createThrottledResizeHandler=function(){function t(){e.handleResize(),e.didResize=!1}var e=this;this.adapter.on("resize.waypoints",function(){e.didResize||(e.didResize=!0,n.requestAnimationFrame(t))})},e.prototype.createThrottledScrollHandler=function(){function t(){e.handleScroll(),e.didScroll=!1}var e=this;this.adapter.on("scroll.waypoints",function(){(!e.didScroll||n.isTouch)&&(e.didScroll=!0,n.requestAnimationFrame(t))})},e.prototype.handleResize=function(){n.Context.refreshAll()},e.prototype.handleScroll=function(){var t={},e={horizontal:{newScroll:this.adapter.scrollLeft(),oldScroll:this.oldScroll.x,forward:"right",backward:"left"},vertical:{newScroll:this.adapter.scrollTop(),oldScroll:this.oldScroll.y,forward:"down",backward:"up"}};for(var i in e){var o=e[i],n=o.newScroll>o.oldScroll,r=n?o.forward:o.backward;for(var s in this.waypoints[i]){var a=this.waypoints[i][s];if(null!==a.triggerPoint){var l=o.oldScroll<a.triggerPoint,h=o.newScroll>=a.triggerPoint,p=l&&h,u=!l&&!h;(p||u)&&(a.queueTrigger(r),t[a.group.id]=a.group)}}}for(var c in t)t[c].flushTriggers();this.oldScroll={x:e.horizontal.newScroll,y:e.vertical.newScroll}},e.prototype.innerHeight=function(){return this.element==this.element.window?n.viewportHeight():this.adapter.innerHeight()},e.prototype.remove=function(t){delete this.waypoints[t.axis][t.key],this.checkEmpty()},e.prototype.innerWidth=function(){return this.element==this.element.window?n.viewportWidth():this.adapter.innerWidth()},e.prototype.destroy=function(){var t=[];for(var e in this.waypoints)for(var i in this.waypoints[e])t.push(this.waypoints[e][i]);for(var o=0,n=t.length;n>o;o++)t[o].destroy()},e.prototype.refresh=function(){var t,e=this.element==this.element.window,i=e?void 0:this.adapter.offset(),o={};this.handleScroll(),t={horizontal:{contextOffset:e?0:i.left,contextScroll:e?0:this.oldScroll.x,contextDimension:this.innerWidth(),oldScroll:this.oldScroll.x,forward:"right",backward:"left",offsetProp:"left"},vertical:{contextOffset:e?0:i.top,contextScroll:e?0:this.oldScroll.y,contextDimension:this.innerHeight(),oldScroll:this.oldScroll.y,forward:"down",backward:"up",offsetProp:"top"}};for(var r in t){var s=t[r];for(var a in this.waypoints[r]){var l,h,p,u,c,d=this.waypoints[r][a],f=d.options.offset,w=d.triggerPoint,y=0,g=null==w;d.element!==d.element.window&&(y=d.adapter.offset()[s.offsetProp]),"function"==typeof f?f=f.apply(d):"string"==typeof f&&(f=parseFloat(f),d.options.offset.indexOf("%")>-1&&(f=Math.ceil(s.contextDimension*f/100))),l=s.contextScroll-s.contextOffset,d.triggerPoint=Math.floor(y+l-f),h=w<s.oldScroll,p=d.triggerPoint>=s.oldScroll,u=h&&p,c=!h&&!p,!g&&u?(d.queueTrigger(s.backward),o[d.group.id]=d.group):!g&&c?(d.queueTrigger(s.forward),o[d.group.id]=d.group):g&&s.oldScroll>=d.triggerPoint&&(d.queueTrigger(s.forward),o[d.group.id]=d.group)}}return n.requestAnimationFrame(function(){for(var t in o)o[t].flushTriggers()}),this},e.findOrCreateByElement=function(t){return e.findByElement(t)||new e(t)},e.refreshAll=function(){for(var t in o)o[t].refresh()},e.findByElement=function(t){return o[t.waypointContextKey]},window.onload=function(){r&&r(),e.refreshAll()},n.requestAnimationFrame=function(e){var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||t;i.call(window,e)},n.Context=e}(),function(){"use strict";function t(t,e){return t.triggerPoint-e.triggerPoint}function e(t,e){return e.triggerPoint-t.triggerPoint}function i(t){this.name=t.name,this.axis=t.axis,this.id=this.name+"-"+this.axis,this.waypoints=[],this.clearTriggerQueues(),o[this.axis][this.name]=this}var o={vertical:{},horizontal:{}},n=window.Waypoint;i.prototype.add=function(t){this.waypoints.push(t)},i.prototype.clearTriggerQueues=function(){this.triggerQueues={up:[],down:[],left:[],right:[]}},i.prototype.flushTriggers=function(){for(var i in this.triggerQueues){var o=this.triggerQueues[i],n="up"===i||"left"===i;o.sort(n?e:t);for(var r=0,s=o.length;s>r;r+=1){var a=o[r];(a.options.continuous||r===o.length-1)&&a.trigger([i])}}this.clearTriggerQueues()},i.prototype.next=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints),o=i===this.waypoints.length-1;return o?null:this.waypoints[i+1]},i.prototype.previous=function(e){this.waypoints.sort(t);var i=n.Adapter.inArray(e,this.waypoints);return i?this.waypoints[i-1]:null},i.prototype.queueTrigger=function(t,e){this.triggerQueues[e].push(t)},i.prototype.remove=function(t){var e=n.Adapter.inArray(t,this.waypoints);e>-1&&this.waypoints.splice(e,1)},i.prototype.first=function(){return this.waypoints[0]},i.prototype.last=function(){return this.waypoints[this.waypoints.length-1]},i.findOrCreate=function(t){return o[t.axis][t.name]||new i(t)},n.Group=i}(),function(){"use strict";function t(t){this.$element=e(t)}var e=window.jQuery,i=window.Waypoint;e.each(["innerHeight","innerWidth","off","offset","on","outerHeight","outerWidth","scrollLeft","scrollTop"],function(e,i){t.prototype[i]=function(){var t=Array.prototype.slice.call(arguments);return this.$element[i].apply(this.$element,t)}}),e.each(["extend","inArray","isEmptyObject"],function(i,o){t[o]=e[o]}),i.adapters.push({name:"jquery",Adapter:t}),i.Adapter=t}(),function(){"use strict";function t(t){return function(){var i=[],o=arguments[0];return t.isFunction(arguments[0])&&(o=t.extend({},arguments[1]),o.handler=arguments[0]),this.each(function(){var n=t.extend({},o,{element:this});"string"==typeof n.context&&(n.context=t(this).closest(n.context)[0]),i.push(new e(n))}),i}}var e=window.Waypoint;window.jQuery&&(window.jQuery.fn.waypoint=t(window.jQuery)),window.Zepto&&(window.Zepto.fn.waypoint=t(window.Zepto))}();
assets/js/extra/lity.min.js ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function(window,factory){if(typeof define==='function'&&define.amd){define(['jquery'],function($){return factory(window,$)})}else if(typeof module==='object'&&typeof module.exports==='object'){module.exports=factory(window,require('jquery'))}else{window.lity=factory(window,window.jQuery||window.Zepto)}}(typeof window!=="undefined"?window:this,function(window,$){'use strict';var document=window.document;var _win=$(window);var _deferred=$.Deferred;var _html=$('html');var _instances=[];var _attrAriaHidden='aria-hidden';var _dataAriaHidden='lity-'+_attrAriaHidden;var _focusableElementsSelector='a[href],area[href],input:not([disabled]),select:not([disabled]),textarea:not([disabled]),button:not([disabled]),iframe,object,embed,[contenteditable],[tabindex]:not([tabindex^="-"])';var _defaultOptions={handler:null,handlers:{image:imageHandler,inline:inlineHandler,youtube:youtubeHandler,vimeo:vimeoHandler,googlemaps:googlemapsHandler,facebookvideo:facebookvideoHandler,iframe:iframeHandler},template:'<div class="lity" role="dialog" aria-label="Dialog Window (Press escape to close)" tabindex="-1"><div class="lity-wrap" data-lity-close role="document"><div class="lity-loader" aria-hidden="true">Loading...</div><div class="lity-container"><div class="lity-content"></div><button class="lity-close" type="button" aria-label="Close (Press escape to close)" data-lity-close>&times;</button></div></div></div>'};var _imageRegexp=/(^data:image\/)|(\.(png|jpe?g|gif|svg|webp|bmp|ico|tiff?)(\?\S*)?$)/i;var _youtubeRegex=/(youtube(-nocookie)?\.com|youtu\.be)\/(watch\?v=|v\/|u\/|embed\/?)?([\w-]{11})(.*)?/i;var _vimeoRegex=/(vimeo(pro)?.com)\/(?:[^\d]+)?(\d+)\??(.*)?$/;var _googlemapsRegex=/((maps|www)\.)?google\.([^\/\?]+)\/?((maps\/?)?\?)(.*)/i;var _facebookvideoRegex=/(facebook\.com)\/([a-z0-9_-]*)\/videos\/([0-9]*)(.*)?$/i;var _transitionEndEvent=(function(){var el=document.createElement('div');var transEndEventNames={WebkitTransition:'webkitTransitionEnd',MozTransition:'transitionend',OTransition:'oTransitionEnd otransitionend',transition:'transitionend'};for(var name in transEndEventNames){if(el.style[name]!==undefined){return transEndEventNames[name]}}
2
+ return!1})();function transitionEnd(element){var deferred=_deferred();if(!_transitionEndEvent||!element.length){deferred.resolve()}else{element.one(_transitionEndEvent,deferred.resolve);setTimeout(deferred.resolve,500)}
3
+ return deferred.promise()}
4
+ function settings(currSettings,key,value){if(arguments.length===1){return $.extend({},currSettings)}
5
+ if(typeof key==='string'){if(typeof value==='undefined'){return typeof currSettings[key]==='undefined'?null:currSettings[key]}
6
+ currSettings[key]=value}else{$.extend(currSettings,key)}
7
+ return this}
8
+ function parseQueryParams(params){var pairs=decodeURI(params.split('#')[0]).split('&');var obj={},p;for(var i=0,n=pairs.length;i<n;i++){if(!pairs[i]){continue}
9
+ p=pairs[i].split('=');obj[p[0]]=p[1]}
10
+ return obj}
11
+ function appendQueryParams(url,params){return url+(url.indexOf('?')>-1?'&':'?')+$.param(params)}
12
+ function transferHash(originalUrl,newUrl){var pos=originalUrl.indexOf('#');if(-1===pos){return newUrl}
13
+ if(pos>0){originalUrl=originalUrl.substr(pos)}
14
+ return newUrl+originalUrl}
15
+ function error(msg){return $('<span class="lity-error"/>').append(msg)}
16
+ function imageHandler(target,instance){var desc=(instance.opener()&&instance.opener().data('lity-desc'))||'Image with no description';var img=$('<img src="'+target+'" alt="'+desc+'"/>');var deferred=_deferred();var failed=function(){deferred.reject(error('Failed loading image'))};img.on('load',function(){if(this.naturalWidth===0){return failed()}
17
+ deferred.resolve(img)}).on('error',failed);return deferred.promise()}
18
+ imageHandler.test=function(target){return _imageRegexp.test(target)};function inlineHandler(target,instance){var el,placeholder,hasHideClass;try{el=$(target)}catch(e){return!1}
19
+ if(!el.length){return!1}
20
+ placeholder=$('<i style="display:none !important"/>');hasHideClass=el.hasClass('lity-hide');instance.element().one('lity:remove',function(){placeholder.before(el).remove();if(hasHideClass&&!el.closest('.lity-content').length){el.addClass('lity-hide')}});return el.removeClass('lity-hide').after(placeholder)}
21
+ function youtubeHandler(target){var matches=_youtubeRegex.exec(target);if(!matches){return!1}
22
+ return iframeHandler(transferHash(target,appendQueryParams('https://www.youtube'+(matches[2]||'')+'.com/embed/'+matches[4],$.extend({autoplay:1},parseQueryParams(matches[5]||'')))))}
23
+ function vimeoHandler(target){var matches=_vimeoRegex.exec(target);if(!matches){return!1}
24
+ return iframeHandler(transferHash(target,appendQueryParams('https://player.vimeo.com/video/'+matches[3],$.extend({autoplay:1},parseQueryParams(matches[4]||'')))))}
25
+ function facebookvideoHandler(target){var matches=_facebookvideoRegex.exec(target);if(!matches){return!1}
26
+ if(0!==target.indexOf('http')){target='https:'+target}
27
+ return iframeHandler(transferHash(target,appendQueryParams('https://www.facebook.com/plugins/video.php?href='+target,$.extend({autoplay:1},parseQueryParams(matches[4]||'')))))}
28
+ function googlemapsHandler(target){var matches=_googlemapsRegex.exec(target);if(!matches){return!1}
29
+ return iframeHandler(transferHash(target,appendQueryParams('https://www.google.'+matches[3]+'/maps?'+matches[6],{output:matches[6].indexOf('layer=c')>0?'svembed':'embed'})))}
30
+ function iframeHandler(target){return'<div class="lity-iframe-container"><iframe frameborder="0" allowfullscreen src="'+target+'"/></div>'}
31
+ function winHeight(){return document.documentElement.clientHeight?document.documentElement.clientHeight:Math.round(_win.height())}
32
+ function keydown(e){var current=currentInstance();if(!current){return}
33
+ if(e.keyCode===27){current.close()}
34
+ if(e.keyCode===9){handleTabKey(e,current)}}
35
+ function handleTabKey(e,instance){var focusableElements=instance.element().find(_focusableElementsSelector);var focusedIndex=focusableElements.index(document.activeElement);if(e.shiftKey&&focusedIndex<=0){focusableElements.get(focusableElements.length-1).focus();e.preventDefault()}else if(!e.shiftKey&&focusedIndex===focusableElements.length-1){focusableElements.get(0).focus();e.preventDefault()}}
36
+ function resize(){$.each(_instances,function(i,instance){instance.resize()})}
37
+ function registerInstance(instanceToRegister){if(1===_instances.unshift(instanceToRegister)){_html.addClass('lity-active');_win.on({resize:resize,keydown:keydown})}
38
+ $('body > *').not(instanceToRegister.element()).addClass('lity-hidden').each(function(){var el=$(this);if(undefined!==el.data(_dataAriaHidden)){return}
39
+ el.data(_dataAriaHidden,el.attr(_attrAriaHidden)||null)}).attr(_attrAriaHidden,'true')}
40
+ function removeInstance(instanceToRemove){var show;instanceToRemove.element().attr(_attrAriaHidden,'true');if(1===_instances.length){_html.removeClass('lity-active');_win.off({resize:resize,keydown:keydown})}
41
+ _instances=$.grep(_instances,function(instance){return instanceToRemove!==instance});if(!!_instances.length){show=_instances[0].element()}else{show=$('.lity-hidden')}
42
+ show.removeClass('lity-hidden').each(function(){var el=$(this),oldAttr=el.data(_dataAriaHidden);if(!oldAttr){el.removeAttr(_attrAriaHidden)}else{el.attr(_attrAriaHidden,oldAttr)}
43
+ el.removeData(_dataAriaHidden)})}
44
+ function currentInstance(){if(0===_instances.length){return null}
45
+ return _instances[0]}
46
+ function factory(target,instance,handlers,preferredHandler){var handler='inline',content;var currentHandlers=$.extend({},handlers);if(preferredHandler&&currentHandlers[preferredHandler]){content=currentHandlers[preferredHandler](target,instance);handler=preferredHandler}else{$.each(['inline','iframe'],function(i,name){delete currentHandlers[name];currentHandlers[name]=handlers[name]});$.each(currentHandlers,function(name,currentHandler){if(!currentHandler){return!0}
47
+ if(currentHandler.test&&!currentHandler.test(target,instance)){return!0}
48
+ content=currentHandler(target,instance);if(!1!==content){handler=name;return!1}})}
49
+ return{handler:handler,content:content||''}}
50
+ function Lity(target,options,opener,activeElement){var self=this;var result;var isReady=!1;var isClosed=!1;var element;var content;options=$.extend({},_defaultOptions,options);element=$(options.template);self.element=function(){return element};self.opener=function(){return opener};self.options=$.proxy(settings,self,options);self.handlers=$.proxy(settings,self,options.handlers);self.resize=function(){if(!isReady||isClosed){return}
51
+ content.css('max-height',winHeight()+'px').trigger('lity:resize',[self])};self.close=function(){if(!isReady||isClosed){return}
52
+ isClosed=!0;removeInstance(self);var deferred=_deferred();if(activeElement&&(document.activeElement===element[0]||$.contains(element[0],document.activeElement))){try{activeElement.focus()}catch(e){}}
53
+ content.trigger('lity:close',[self]);element.removeClass('lity-opened').addClass('lity-closed');transitionEnd(content.add(element)).always(function(){content.trigger('lity:remove',[self]);element.remove();element=undefined;deferred.resolve()});return deferred.promise()};result=factory(target,self,options.handlers,options.handler);$("body").addClass("opened-lity-popup");element.attr(_attrAriaHidden,'false').addClass('lity-loading lity-opened lity-'+result.handler).appendTo('body').focus().on('click','[data-lity-close]',function(e){if($(e.target).is('[data-lity-close]')){$("body").removeClass("opened-lity-popup");self.close()}}).trigger('lity:open',[self]);registerInstance(self);$.when(result.content).always(ready);function ready(result){content=$(result).css('max-height',winHeight()+'px');element.find('.lity-loader').each(function(){var loader=$(this);transitionEnd(loader).always(function(){loader.remove()})});element.removeClass('lity-loading').find('.lity-content').empty().append(content);isReady=!0;content.trigger('lity:ready',[self]);jQuery('.list-isotope').find('.post-inner-loop').isotope('layout').isotope('reloadItems');if(jQuery('.list-isotope-metro').size()>0){setup_packery_portfolio('all')}
54
+ jQuery('.list-carousel-slick,.post-format-gallery,.slick-initialized').resize();jQuery(".pt-plus-timeline-list").isotope('layout').isotope('reloadItems');jQuery(".hover-tilt").hover3d({selector:".blog-list-style-content,.portfolio-item-content,> .addbanner-block,> .addbanner_product_box,> .vc_single_image-wrapper,> .cascading-inner-loop,> .pt-plus-magic-box,> .call-to-action-img,> .blog-hover-inner-tilt,> .logo-image-wrap",shine:!1,perspective:1000,invert:!0,sensitivity:35,})}}
55
+ function lity(target,options,opener){if(!target.preventDefault){opener=$(opener)}else{target.preventDefault();opener=$(this);target=opener.data('lity-target')||opener.attr('href')||opener.attr('src')}
56
+ var instance=new Lity(target,$.extend({},opener.data('lity-options')||opener.data('lity'),options),opener,document.activeElement);if(!target.preventDefault){return instance}}
57
+ lity.version='2.2.2';lity.options=$.proxy(settings,lity,_defaultOptions);lity.handlers=$.proxy(settings,lity,_defaultOptions.handlers);lity.current=currentInstance;$(document).on('click.lity','[data-lity]',lity);return lity}))
assets/js/extra/modernizr.min.js ADDED
@@ -0,0 +1 @@
 
1
+ window.Modernizr=function(e,t,n){function r(e){b.cssText=e}function o(e,t){return r(S.join(e+";")+(t||""))}function a(e,t){return typeof e===t}function i(e,t){return!!~(""+e).indexOf(t)}function c(e,t){for(var r in e){var o=e[r];if(!i(o,"-")&&b[o]!==n)return"pfx"==t?o:!0}return!1}function s(e,t,r){for(var o in e){var i=t[e[o]];if(i!==n)return r===!1?e[o]:a(i,"function")?i.bind(r||t):i}return!1}function u(e,t,n){var r=e.charAt(0).toUpperCase()+e.slice(1),o=(e+" "+k.join(r+" ")+r).split(" ");return a(t,"string")||a(t,"undefined")?c(o,t):(o=(e+" "+T.join(r+" ")+r).split(" "),s(o,t,n))}function l(){p.input=function(n){for(var r=0,o=n.length;o>r;r++)j[n[r]]=!!(n[r]in E);return j.list&&(j.list=!(!t.createElement("datalist")||!e.HTMLDataListElement)),j}("autocomplete autofocus list placeholder max min multiple pattern required step".split(" ")),p.inputtypes=function(e){for(var r,o,a,i=0,c=e.length;c>i;i++)E.setAttribute("type",o=e[i]),r="text"!==E.type,r&&(E.value=x,E.style.cssText="position:absolute;visibility:hidden;",/^range$/.test(o)&&E.style.WebkitAppearance!==n?(g.appendChild(E),a=t.defaultView,r=a.getComputedStyle&&"textfield"!==a.getComputedStyle(E,null).WebkitAppearance&&0!==E.offsetHeight,g.removeChild(E)):/^(search|tel)$/.test(o)||(r=/^(url|email)$/.test(o)?E.checkValidity&&E.checkValidity()===!1:E.value!=x)),P[e[i]]=!!r;return P}("search tel url email datetime date month week time datetime-local number range color".split(" "))}var d,f,m="2.8.3",p={},h=!0,g=t.documentElement,v="modernizr",y=t.createElement(v),b=y.style,E=t.createElement("input"),x=":)",w={}.toString,S=" -webkit- -moz- -o- -ms- ".split(" "),C="Webkit Moz O ms",k=C.split(" "),T=C.toLowerCase().split(" "),N={svg:"http://www.w3.org/2000/svg"},M={},P={},j={},$=[],D=$.slice,F=function(e,n,r,o){var a,i,c,s,u=t.createElement("div"),l=t.body,d=l||t.createElement("body");if(parseInt(r,10))for(;r--;)c=t.createElement("div"),c.id=o?o[r]:v+(r+1),u.appendChild(c);return a=["&#173;",'<style id="s',v,'">',e,"</style>"].join(""),u.id=v,(l?u:d).innerHTML+=a,d.appendChild(u),l||(d.style.background="",d.style.overflow="hidden",s=g.style.overflow,g.style.overflow="hidden",g.appendChild(d)),i=n(u,e),l?u.parentNode.removeChild(u):(d.parentNode.removeChild(d),g.style.overflow=s),!!i},z=function(t){var n=e.matchMedia||e.msMatchMedia;if(n)return n(t)&&n(t).matches||!1;var r;return F("@media "+t+" { #"+v+" { position: absolute; } }",function(t){r="absolute"==(e.getComputedStyle?getComputedStyle(t,null):t.currentStyle).position}),r},A=function(){function e(e,o){o=o||t.createElement(r[e]||"div"),e="on"+e;var i=e in o;return i||(o.setAttribute||(o=t.createElement("div")),o.setAttribute&&o.removeAttribute&&(o.setAttribute(e,""),i=a(o[e],"function"),a(o[e],"undefined")||(o[e]=n),o.removeAttribute(e))),o=null,i}var r={select:"input",change:"input",submit:"form",reset:"form",error:"img",load:"img",abort:"img"};return e}(),L={}.hasOwnProperty;f=a(L,"undefined")||a(L.call,"undefined")?function(e,t){return t in e&&a(e.constructor.prototype[t],"undefined")}:function(e,t){return L.call(e,t)},Function.prototype.bind||(Function.prototype.bind=function(e){var t=this;if("function"!=typeof t)throw new TypeError;var n=D.call(arguments,1),r=function(){if(this instanceof r){var o=function(){};o.prototype=t.prototype;var a=new o,i=t.apply(a,n.concat(D.call(arguments)));return Object(i)===i?i:a}return t.apply(e,n.concat(D.call(arguments)))};return r}),M.flexbox=function(){return u("flexWrap")},M.flexboxlegacy=function(){return u("boxDirection")},M.canvas=function(){var e=t.createElement("canvas");return!(!e.getContext||!e.getContext("2d"))},M.canvastext=function(){return!(!p.canvas||!a(t.createElement("canvas").getContext("2d").fillText,"function"))},M.webgl=function(){return!!e.WebGLRenderingContext},M.touch=function(){var n;return"ontouchstart"in e||e.DocumentTouch&&t instanceof DocumentTouch?n=!0:F(["@media (",S.join("touch-enabled),("),v,")","{#modernizr{top:9px;position:absolute}}"].join(""),function(e){n=9===e.offsetTop}),n},M.geolocation=function(){return"geolocation"in navigator},M.postmessage=function(){return!!e.postMessage},M.websqldatabase=function(){return!!e.openDatabase},M.indexedDB=function(){return!!u("indexedDB",e)},M.hashchange=function(){return A("hashchange",e)&&(t.documentMode===n||t.documentMode>7)},M.history=function(){return!(!e.history||!history.pushState)},M.draganddrop=function(){var e=t.createElement("div");return"draggable"in e||"ondragstart"in e&&"ondrop"in e},M.websockets=function(){return"WebSocket"in e||"MozWebSocket"in e},M.rgba=function(){return r("background-color:rgba(150,255,150,.5)"),i(b.backgroundColor,"rgba")},M.hsla=function(){return r("background-color:hsla(120,40%,100%,.5)"),i(b.backgroundColor,"rgba")||i(b.backgroundColor,"hsla")},M.multiplebgs=function(){return r("background:url(https://),url(https://),red url(https://)"),/(url\s*\(.*?){3}/.test(b.background)},M.backgroundsize=function(){return u("backgroundSize")},M.borderimage=function(){return u("borderImage")},M.borderradius=function(){return u("borderRadius")},M.boxshadow=function(){return u("boxShadow")},M.textshadow=function(){return""===t.createElement("div").style.textShadow},M.opacity=function(){return o("opacity:.55"),/^0.55$/.test(b.opacity)},M.cssanimations=function(){return u("animationName")},M.csscolumns=function(){return u("columnCount")},M.cssgradients=function(){var e="background-image:",t="gradient(linear,left top,right bottom,from(#9f9),to(white));",n="linear-gradient(left top,#9f9, white);";return r((e+"-webkit- ".split(" ").join(t+e)+S.join(n+e)).slice(0,-e.length)),i(b.backgroundImage,"gradient")},M.cssreflections=function(){return u("boxReflect")},M.csstransforms=function(){return!!u("transform")},M.csstransforms3d=function(){var e=!!u("perspective");return e&&"webkitPerspective"in g.style&&F("@media (transform-3d),(-webkit-transform-3d){#modernizr{left:9px;position:absolute;height:3px;}}",function(t){e=9===t.offsetLeft&&3===t.offsetHeight}),e},M.csstransitions=function(){return u("transition")},M.fontface=function(){var e;return F('@font-face {font-family:"font";src:url("https://")}',function(n,r){var o=t.getElementById("smodernizr"),a=o.sheet||o.styleSheet,i=a?a.cssRules&&a.cssRules[0]?a.cssRules[0].cssText:a.cssText||"":"";e=/src/i.test(i)&&0===i.indexOf(r.split(" ")[0])}),e},M.generatedcontent=function(){var e;return F(["#",v,"{font:0/0 a}#",v,':after{content:"',x,'";visibility:hidden;font:3px/1 a}'].join(""),function(t){e=t.offsetHeight>=3}),e},M.video=function(){var e=t.createElement("video"),n=!1;try{(n=!!e.canPlayType)&&(n=new Boolean(n),n.ogg=e.canPlayType('video/ogg; codecs="theora"').replace(/^no$/,""),n.h264=e.canPlayType('video/mp4; codecs="avc1.42E01E"').replace(/^no$/,""),n.webm=e.canPlayType('video/webm; codecs="vp8, vorbis"').replace(/^no$/,""))}catch(r){}return n},M.audio=function(){var e=t.createElement("audio"),n=!1;try{(n=!!e.canPlayType)&&(n=new Boolean(n),n.ogg=e.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/,""),n.mp3=e.canPlayType("audio/mpeg;").replace(/^no$/,""),n.wav=e.canPlayType('audio/wav; codecs="1"').replace(/^no$/,""),n.m4a=(e.canPlayType("audio/x-m4a;")||e.canPlayType("audio/aac;")).replace(/^no$/,""))}catch(r){}return n},M.localstorage=function(){try{return localStorage.setItem(v,v),localStorage.removeItem(v),!0}catch(e){return!1}},M.sessionstorage=function(){try{return sessionStorage.setItem(v,v),sessionStorage.removeItem(v),!0}catch(e){return!1}},M.webworkers=function(){return!!e.Worker},M.applicationcache=function(){return!!e.applicationCache},M.svg=function(){return!!t.createElementNS&&!!t.createElementNS(N.svg,"svg").createSVGRect},M.inlinesvg=function(){var e=t.createElement("div");return e.innerHTML="<svg/>",(e.firstChild&&e.firstChild.namespaceURI)==N.svg},M.smil=function(){return!!t.createElementNS&&/SVGAnimate/.test(w.call(t.createElementNS(N.svg,"animate")))},M.svgclippaths=function(){return!!t.createElementNS&&/SVGClipPath/.test(w.call(t.createElementNS(N.svg,"clipPath")))};for(var H in M)f(M,H)&&(d=H.toLowerCase(),p[d]=M[H](),$.push((p[d]?"":"no-")+d));return p.input||l(),p.addTest=function(e,t){if("object"==typeof e)for(var r in e)f(e,r)&&p.addTest(r,e[r]);else{if(e=e.toLowerCase(),p[e]!==n)return p;t="function"==typeof t?t():t,"undefined"!=typeof h&&h&&(g.className+=" "+(t?"":"no-")+e),p[e]=t}return p},r(""),y=E=null,function(e,t){function n(e,t){var n=e.createElement("p"),r=e.getElementsByTagName("head")[0]||e.documentElement;return n.innerHTML="x<style>"+t+"</style>",r.insertBefore(n.lastChild,r.firstChild)}function r(){var e=y.elements;return"string"==typeof e?e.split(" "):e}function o(e){var t=v[e[h]];return t||(t={},g++,e[h]=g,v[g]=t),t}function a(e,n,r){if(n||(n=t),l)return n.createElement(e);r||(r=o(n));var a;return a=r.cache[e]?r.cache[e].cloneNode():p.test(e)?(r.cache[e]=r.createElem(e)).cloneNode():r.createElem(e),!a.canHaveChildren||m.test(e)||a.tagUrn?a:r.frag.appendChild(a)}function i(e,n){if(e||(e=t),l)return e.createDocumentFragment();n=n||o(e);for(var a=n.frag.cloneNode(),i=0,c=r(),s=c.length;s>i;i++)a.createElement(c[i]);return a}function c(e,t){t.cache||(t.cache={},t.createElem=e.createElement,t.createFrag=e.createDocumentFragment,t.frag=t.createFrag()),e.createElement=function(n){return y.shivMethods?a(n,e,t):t.createElem(n)},e.createDocumentFragment=Function("h,f","return function(){var n=f.cloneNode(),c=n.createElement;h.shivMethods&&("+r().join().replace(/[\w\-]+/g,function(e){return t.createElem(e),t.frag.createElement(e),'c("'+e+'")'})+");return n}")(y,t.frag)}function s(e){e||(e=t);var r=o(e);return!y.shivCSS||u||r.hasCSS||(r.hasCSS=!!n(e,"article,aside,dialog,figcaption,figure,footer,header,hgroup,main,nav,section{display:block}mark{background:#FF0;color:#000}template{display:none}")),l||c(e,r),e}var u,l,d="3.7.0",f=e.html5||{},m=/^<|^(?:button|map|select|textarea|object|iframe|option|optgroup)$/i,p=/^(?:a|b|code|div|fieldset|h1|h2|h3|h4|h5|h6|i|label|li|ol|p|q|span|strong|style|table|tbody|td|th|tr|ul)$/i,h="_html5shiv",g=0,v={};!function(){try{var e=t.createElement("a");e.innerHTML="<xyz></xyz>",u="hidden"in e,l=1==e.childNodes.length||function(){t.createElement("a");var e=t.createDocumentFragment();return"undefined"==typeof e.cloneNode||"undefined"==typeof e.createDocumentFragment||"undefined"==typeof e.createElement}()}catch(n){u=!0,l=!0}}();var y={elements:f.elements||"abbr article aside audio bdi canvas data datalist details dialog figcaption figure footer header hgroup main mark meter nav output progress section summary template time video",version:d,shivCSS:f.shivCSS!==!1,supportsUnknownElements:l,shivMethods:f.shivMethods!==!1,type:"default",shivDocument:s,createElement:a,createDocumentFragment:i};e.html5=y,s(t)}(this,t),p._version=m,p._prefixes=S,p._domPrefixes=T,p._cssomPrefixes=k,p.mq=z,p.hasEvent=A,p.testProp=function(e){return c([e])},p.testAllProps=u,p.testStyles=F,p.prefixed=function(e,t,n){return t?u(e,t,n):u(e,"pfx")},g.className=g.className.replace(/(^|\s)no-js(\s|$)/,"$1$2")+(h?" js "+$.join(" "):""),p}(this,this.document);
assets/js/extra/numscroller.js ADDED
@@ -0,0 +1,88 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * jQuery scroroller Plugin 1.0
3
+ *
4
+ * http://www.tinywall.net/
5
+ *
6
+ * Developers: Arun David, Boobalan
7
+ * Copyright (c) 2014
8
+ */
9
+ (function($){
10
+ $(window).on("load",function(){
11
+ $(document).scrollzipInit();
12
+ $(document).rollerInit();
13
+ });
14
+ $(window).on("load scroll resize", function(){
15
+ $('.numscroller').scrollzip({
16
+ showFunction : function() {
17
+ numberRoller($(this).attr('data-slno'));
18
+ },
19
+ wholeVisible : false,
20
+ });
21
+ });
22
+ $.fn.scrollzipInit=function(){
23
+ $('body').prepend("<div style='position:fixed;top:0px;left:0px;width:0;height:0;' id='scrollzipPoint'></div>" );
24
+ };
25
+ $.fn.rollerInit=function(){
26
+ var i=0;
27
+ $('.numscroller').each(function() {
28
+ i++;
29
+ $(this).attr('data-slno',i);
30
+ $(this).addClass("roller-title-number-"+i);
31
+ });
32
+ };
33
+ $.fn.scrollzip = function(options){
34
+ var settings = $.extend({
35
+ showFunction : null,
36
+ hideFunction : null,
37
+ showShift : 0,
38
+ wholeVisible : false,
39
+ hideShift : 0,
40
+ }, options);
41
+ return this.each(function(i,obj){
42
+ $(this).addClass('scrollzip');
43
+ if ( $.isFunction( settings.showFunction ) && $('#scrollzipPoint').length ){
44
+ if(
45
+ !$(this).hasClass('isShown')&&
46
+ ($(window).outerHeight()+$('#scrollzipPoint').offset().top-settings.showShift)>($(this).offset().top+((settings.wholeVisible)?$(this).outerHeight():0))&&
47
+ ($('#scrollzipPoint').offset().top+((settings.wholeVisible)?$(this).outerHeight():0))<($(this).outerHeight()+$(this).offset().top-settings.showShift)
48
+ ){
49
+ $(this).addClass('isShown');
50
+ settings.showFunction.call( this );
51
+ }
52
+ }
53
+ if ( $.isFunction( settings.hideFunction ) && $('#scrollzipPoint').length ){
54
+ if(
55
+ $(this).hasClass('isShown')&&
56
+ (($(window).outerHeight()+$('#scrollzipPoint').offset().top-settings.hideShift)<($(this).offset().top+((settings.wholeVisible)?$(this).outerHeight():0))||
57
+ ($('#scrollzipPoint').offset().top+((settings.wholeVisible)?$(this).outerHeight():0))>($(this).outerHeight()+$(this).offset().top-settings.hideShift))
58
+ ){
59
+ $(this).removeClass('isShown');
60
+ settings.hideFunction.call( this );
61
+ }
62
+ }
63
+ return this;
64
+ });
65
+ };
66
+ function numberRoller(slno){
67
+ var min=$('.roller-title-number-'+slno).attr('data-min');
68
+ var max=$('.roller-title-number-'+slno).attr('data-max');
69
+ var timediff=$('.roller-title-number-'+slno).attr('data-delay');
70
+ var increment=$('.roller-title-number-'+slno).attr('data-increment');
71
+ var numdiff=max-min;
72
+ var timeout=(timediff*1000)/numdiff;
73
+ //if(numinc<10){
74
+ //increment=Math.floor((timediff*1000)/10);
75
+ //}//alert(increment);
76
+ numberRoll(slno,min,max,increment,timeout);
77
+
78
+ }
79
+ function numberRoll(slno,min,max,increment,timeout){//alert(slno+"="+min+"="+max+"="+increment+"="+timeout);
80
+ if(min<=max){
81
+ $('.roller-title-number-'+slno).html(min);
82
+ min=parseInt(min)+parseInt(increment);
83
+ setTimeout(function(){numberRoll(eval(slno),eval(min),eval(max),eval(increment),eval(timeout))},timeout);
84
+ }else{
85
+ $('.roller-title-number-'+slno).html(max);
86
+ }
87
+ }
88
+ })(jQuery);
assets/js/extra/packery-mode.pkgd.min.js ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ /*!
2
+ * Packery layout mode PACKAGED v2.0.0
3
+ * sub-classes Packery
4
+ */
5
+
6
+ !function(a,b){"function"==typeof define&&define.amd?define("packery/js/rect",b):"object"==typeof module&&module.exports?module.exports=b():(a.Packery=a.Packery||{},a.Packery.Rect=b())}(window,function(){function a(b){for(var c in a.defaults)this[c]=a.defaults[c];for(c in b)this[c]=b[c]}a.defaults={x:0,y:0,width:0,height:0};var b=a.prototype;return b.contains=function(a){var b=a.width||0,c=a.height||0;return this.x<=a.x&&this.y<=a.y&&this.x+this.width>=a.x+b&&this.y+this.height>=a.y+c},b.overlaps=function(a){var b=this.x+this.width,c=this.y+this.height,d=a.x+a.width,e=a.y+a.height;return this.x<d&&b>a.x&&this.y<e&&c>a.y},b.getMaximalFreeRects=function(b){if(!this.overlaps(b))return!1;var c,d=[],e=this.x+this.width,f=this.y+this.height,g=b.x+b.width,h=b.y+b.height;return this.y<b.y&&(c=new a({x:this.x,y:this.y,width:this.width,height:b.y-this.y}),d.push(c)),e>g&&(c=new a({x:g,y:this.y,width:e-g,height:this.height}),d.push(c)),f>h&&(c=new a({x:this.x,y:h,width:this.width,height:f-h}),d.push(c)),this.x<b.x&&(c=new a({x:this.x,y:this.y,width:b.x-this.x,height:this.height}),d.push(c)),d},b.canFit=function(a){return this.width>=a.width&&this.height>=a.height},a}),function(a,b){if("function"==typeof define&&define.amd)define("packery/js/packer",["./rect"],b);else if("object"==typeof module&&module.exports)module.exports=b(require("./rect"));else{var c=a.Packery=a.Packery||{};c.Packer=b(c.Rect)}}(window,function(a){function b(a,b,c){this.width=a||0,this.height=b||0,this.sortDirection=c||"downwardLeftToRight",this.reset()}var c=b.prototype;c.reset=function(){this.spaces=[];var b=new a({x:0,y:0,width:this.width,height:this.height});this.spaces.push(b),this.sorter=d[this.sortDirection]||d.downwardLeftToRight},c.pack=function(a){for(var b=0;b<this.spaces.length;b++){var c=this.spaces[b];if(c.canFit(a)){this.placeInSpace(a,c);break}}},c.columnPack=function(a){for(var b=0;b<this.spaces.length;b++){var c=this.spaces[b],d=c.x<=a.x&&c.x+c.width>=a.x+a.width&&c.height>=a.height-.01;if(d){a.y=c.y,this.placed(a);break}}},c.rowPack=function(a){for(var b=0;b<this.spaces.length;b++){var c=this.spaces[b],d=c.y<=a.y&&c.y+c.height>=a.y+a.height&&c.width>=a.width-.01;if(d){a.x=c.x,this.placed(a);break}}},c.placeInSpace=function(a,b){a.x=b.x,a.y=b.y,this.placed(a)},c.placed=function(a){for(var b=[],c=0;c<this.spaces.length;c++){var d=this.spaces[c],e=d.getMaximalFreeRects(a);e?b.push.apply(b,e):b.push(d)}this.spaces=b,this.mergeSortSpaces()},c.mergeSortSpaces=function(){b.mergeRects(this.spaces),this.spaces.sort(this.sorter)},c.addSpace=function(a){this.spaces.push(a),this.mergeSortSpaces()},b.mergeRects=function(a){var b=0,c=a[b];a:for(;c;){for(var d=0,e=a[b+d];e;){if(e==c)d++;else{if(e.contains(c)){a.splice(b,1),c=a[b];continue a}c.contains(e)?a.splice(b+d,1):d++}e=a[b+d]}b++,c=a[b]}return a};var d={downwardLeftToRight:function(a,b){return a.y-b.y||a.x-b.x},rightwardTopToBottom:function(a,b){return a.x-b.x||a.y-b.y}};return b}),function(a,b){"function"==typeof define&&define.amd?define("packery/js/item",["outlayer/outlayer","./rect"],b):"object"==typeof module&&module.exports?module.exports=b(require("outlayer"),require("./rect")):a.Packery.Item=b(a.Outlayer,a.Packery.Rect)}(window,function(a,b){var c=document.documentElement.style,d="string"==typeof c.transform?"transform":"WebkitTransform",e=function(){a.Item.apply(this,arguments)},f=e.prototype=Object.create(a.Item.prototype),g=f._create;f._create=function(){g.call(this),this.rect=new b};var h=f.moveTo;return f.moveTo=function(a,b){var c=Math.abs(this.position.x-a),d=Math.abs(this.position.y-b),e=this.layout.dragItemCount&&!this.isPlacing&&!this.isTransitioning&&1>c&&1>d;return e?void this.goTo(a,b):void h.apply(this,arguments)},f.enablePlacing=function(){this.removeTransitionStyles(),this.isTransitioning&&d&&(this.element.style[d]="none"),this.isTransitioning=!1,this.getSize(),this.layout._setRectSize(this.element,this.rect),this.isPlacing=!0},f.disablePlacing=function(){this.isPlacing=!1},f.removeElem=function(){this.element.parentNode.removeChild(this.element),this.layout.packer.addSpace(this.rect),this.emitEvent("remove",[this])},f.showDropPlaceholder=function(){var a=this.dropPlaceholder;a||(a=this.dropPlaceholder=document.createElement("div"),a.className="packery-drop-placeholder",a.style.position="absolute"),a.style.width=this.size.width+"px",a.style.height=this.size.height+"px",this.positionDropPlaceholder(),this.layout.element.appendChild(a)},f.positionDropPlaceholder=function(){this.dropPlaceholder.style[d]="translate("+this.rect.x+"px, "+this.rect.y+"px)"},f.hideDropPlaceholder=function(){this.layout.element.removeChild(this.dropPlaceholder)},e}),function(a,b){"function"==typeof define&&define.amd?define("packery/js/packery",["get-size/get-size","outlayer/outlayer","./rect","./packer","./item"],b):"object"==typeof module&&module.exports?module.exports=b(require("get-size"),require("outlayer"),require("./rect"),require("./packer"),require("./item")):a.Packery=b(a.getSize,a.Outlayer,a.Packery.Rect,a.Packery.Packer,a.Packery.Item)}(window,function(a,b,c,d,e){function f(a,b){return a.position.y-b.position.y||a.position.x-b.position.x}function g(a,b){return a.position.x-b.position.x||a.position.y-b.position.y}function h(a,b){var c=b.x-a.x,d=b.y-a.y;return Math.sqrt(c*c+d*d)}c.prototype.canFit=function(a){return this.width>=a.width-1&&this.height>=a.height-1};var i=b.create("packery");i.Item=e;var j=i.prototype;j._create=function(){b.prototype._create.call(this),this.packer=new d,this.shiftPacker=new d,this.isEnabled=!0,this.dragItemCount=0;var a=this;this.handleDraggabilly={dragStart:function(){a.itemDragStart(this.element)},dragMove:function(){a.itemDragMove(this.element,this.position.x,this.position.y)},dragEnd:function(){a.itemDragEnd(this.element)}},this.handleUIDraggable={start:function(b,c){c&&a.itemDragStart(b.currentTarget)},drag:function(b,c){c&&a.itemDragMove(b.currentTarget,c.position.left,c.position.top)},stop:function(b,c){c&&a.itemDragEnd(b.currentTarget)}}},j._resetLayout=function(){this.getSize(),this._getMeasurements();var a,b,c;this._getOption("horizontal")?(a=1/0,b=this.size.innerHeight+this.gutter,c="rightwardTopToBottom"):(a=this.size.innerWidth+this.gutter,b=1/0,c="downwardLeftToRight"),this.packer.width=this.shiftPacker.width=a,this.packer.height=this.shiftPacker.height=b,this.packer.sortDirection=this.shiftPacker.sortDirection=c,this.packer.reset(),this.maxY=0,this.maxX=0},j._getMeasurements=function(){this._getMeasurement("columnWidth","width"),this._getMeasurement("rowHeight","height"),this._getMeasurement("gutter","width")},j._getItemLayoutPosition=function(a){if(this._setRectSize(a.element,a.rect),this.isShifting||this.dragItemCount>0){var b=this._getPackMethod();this.packer[b](a.rect)}else this.packer.pack(a.rect);return this._setMaxXY(a.rect),a.rect},j.shiftLayout=function(){this.isShifting=!0,this.layout(),delete this.isShifting},j._getPackMethod=function(){return this._getOption("horizontal")?"rowPack":"columnPack"},j._setMaxXY=function(a){this.maxX=Math.max(a.x+a.width,this.maxX),this.maxY=Math.max(a.y+a.height,this.maxY)},j._setRectSize=function(b,c){var d=a(b),e=d.outerWidth,f=d.outerHeight;(e||f)&&(e=this._applyGridGutter(e,this.columnWidth),f=this._applyGridGutter(f,this.rowHeight)),c.width=Math.min(e,this.packer.width),c.height=Math.min(f,this.packer.height)},j._applyGridGutter=function(a,b){if(!b)return a+this.gutter;b+=this.gutter;var c=a%b,d=c&&1>c?"round":"ceil";return a=Math[d](a/b)*b},j._getContainerSize=function(){return this._getOption("horizontal")?{width:this.maxX-this.gutter}:{height:this.maxY-this.gutter}},j._manageStamp=function(a){var b,d=this.getItem(a);if(d&&d.isPlacing)b=d.rect;else{var e=this._getElementOffset(a);b=new c({x:this._getOption("originLeft")?e.left:e.right,y:this._getOption("originTop")?e.top:e.bottom})}this._setRectSize(a,b),this.packer.placed(b),this._setMaxXY(b)},j.sortItemsByPosition=function(){var a=this._getOption("horizontal")?g:f;this.items.sort(a)},j.fit=function(a,b,c){var d=this.getItem(a);d&&(this.stamp(d.element),d.enablePlacing(),this.updateShiftTargets(d),b=void 0===b?d.rect.x:b,c=void 0===c?d.rect.y:c,this.shift(d,b,c),this._bindFitEvents(d),d.moveTo(d.rect.x,d.rect.y),this.shiftLayout(),this.unstamp(d.element),this.sortItemsByPosition(),d.disablePlacing())},j._bindFitEvents=function(a){function b(){d++,2==d&&c.dispatchEvent("fitComplete",null,[a])}var c=this,d=0;a.once("layout",b),this.once("layoutComplete",b)},j.resize=function(){this.isResizeBound&&this.needsResizeLayout()&&(this.options.shiftPercentResize?this.resizeShiftPercentLayout():this.layout())},j.needsResizeLayout=function(){var b=a(this.element),c=this._getOption("horizontal")?"innerHeight":"innerWidth";return b[c]!=this.size[c]},j.resizeShiftPercentLayout=function(){var b=this._getItemsForLayout(this.items),c=this._getOption("horizontal"),d=c?"y":"x",e=c?"height":"width",f=c?"rowHeight":"columnWidth",g=c?"innerHeight":"innerWidth",h=this[f];if(h=h&&h+this.gutter){this._getMeasurements();var i=this[f]+this.gutter;b.forEach(function(a){var b=Math.round(a.rect[d]/h);a.rect[d]=b*i})}else{var j=a(this.element)[g]+this.gutter,k=this.packer[e];b.forEach(function(a){a.rect[d]=a.rect[d]/k*j})}this.shiftLayout()},j.itemDragStart=function(a){if(this.isEnabled){this.stamp(a);var b=this.getItem(a);b&&(b.enablePlacing(),b.showDropPlaceholder(),this.dragItemCount++,this.updateShiftTargets(b))}},j.updateShiftTargets=function(a){this.shiftPacker.reset(),this._getBoundingRect();var b=this._getOption("originLeft"),d=this._getOption("originTop");this.stamps.forEach(function(a){var e=this.getItem(a);if(!e||!e.isPlacing){var f=this._getElementOffset(a),g=new c({x:b?f.left:f.right,y:d?f.top:f.bottom});this._setRectSize(a,g),this.shiftPacker.placed(g)}},this);var e=this._getOption("horizontal"),f=e?"rowHeight":"columnWidth",g=e?"height":"width";this.shiftTargetKeys=[],this.shiftTargets=[];var h,i=this[f];if(i=i&&i+this.gutter){var j=Math.ceil(a.rect[g]/i),k=Math.floor((this.shiftPacker[g]+this.gutter)/i);h=(k-j)*i;for(var l=0;k>l;l++)this._addShiftTarget(l*i,0,h)}else h=this.shiftPacker[g]+this.gutter-a.rect[g],this._addShiftTarget(0,0,h);var m=this._getItemsForLayout(this.items),n=this._getPackMethod();m.forEach(function(a){var b=a.rect;this._setRectSize(a.element,b),this.shiftPacker[n](b),this._addShiftTarget(b.x,b.y,h);var c=e?b.x+b.width:b.x,d=e?b.y:b.y+b.height;if(this._addShiftTarget(c,d,h),i)for(var f=Math.round(b[g]/i),j=1;f>j;j++){var k=e?c:b.x+i*j,l=e?b.y+i*j:d;this._addShiftTarget(k,l,h)}},this)},j._addShiftTarget=function(a,b,c){var d=this._getOption("horizontal")?b:a;if(!(0!==d&&d>c)){var e=a+","+b,f=-1!=this.shiftTargetKeys.indexOf(e);f||(this.shiftTargetKeys.push(e),this.shiftTargets.push({x:a,y:b}))}},j.shift=function(a,b,c){var d,e=1/0,f={x:b,y:c};this.shiftTargets.forEach(function(a){var b=h(a,f);e>b&&(d=a,e=b)}),a.rect.x=d.x,a.rect.y=d.y};var k=120;j.itemDragMove=function(a,b,c){function d(){f.shift(e,b,c),e.positionDropPlaceholder(),f.layout()}var e=this.isEnabled&&this.getItem(a);if(e){b-=this.size.paddingLeft,c-=this.size.paddingTop;var f=this,g=new Date;this._itemDragTime&&g-this._itemDragTime<k?(clearTimeout(this.dragTimeout),this.dragTimeout=setTimeout(d,k)):(d(),this._itemDragTime=g)}},j.itemDragEnd=function(a){function b(){d++,2==d&&(c.element.classList.remove("is-positioning-post-drag"),c.hideDropPlaceholder(),e.dispatchEvent("dragItemPositioned",null,[c]))}var c=this.isEnabled&&this.getItem(a);if(c){clearTimeout(this.dragTimeout),c.element.classList.add("is-positioning-post-drag");var d=0,e=this;c.once("layout",b),this.once("layoutComplete",b),c.moveTo(c.rect.x,c.rect.y),this.layout(),this.dragItemCount=Math.max(0,this.dragItemCount-1),this.sortItemsByPosition(),c.disablePlacing(),this.unstamp(c.element)}},j.bindDraggabillyEvents=function(a){this._bindDraggabillyEvents(a,"on")},j.unbindDraggabillyEvents=function(a){this._bindDraggabillyEvents(a,"off")},j._bindDraggabillyEvents=function(a,b){var c=this.handleDraggabilly;a[b]("dragStart",c.dragStart),a[b]("dragMove",c.dragMove),a[b]("dragEnd",c.dragEnd)},j.bindUIDraggableEvents=function(a){this._bindUIDraggableEvents(a,"on")},j.unbindUIDraggableEvents=function(a){this._bindUIDraggableEvents(a,"off")},j._bindUIDraggableEvents=function(a,b){var c=this.handleUIDraggable;a[b]("dragstart",c.start)[b]("drag",c.drag)[b]("dragstop",c.stop)};var l=j.destroy;return j.destroy=function(){l.apply(this,arguments),this.isEnabled=!1},i.Rect=c,i.Packer=d,i}),function(a,b){"function"==typeof define&&define.amd?define(["isotope/js/layout-mode","packery/js/packery"],b):"object"==typeof module&&module.exports?module.exports=b(require("isotope-layout/js/layout-mode"),require("packery")):b(a.Isotope.LayoutMode,a.Packery)}(window,function(a,b){var c=a.create("packery"),d=c.prototype,e={_getElementOffset:!0,_getMeasurement:!0};for(var f in b.prototype)e[f]||(d[f]=b.prototype[f]);var g=d._resetLayout;d._resetLayout=function(){this.packer=this.packer||new b.Packer,this.shiftPacker=this.shiftPacker||new b.Packer,g.apply(this,arguments)};var h=d._getItemLayoutPosition;d._getItemLayoutPosition=function(a){return a.rect=a.rect||new b.Rect,h.call(this,a)};var i=d.needsResizeLayout;d.needsResizeLayout=function(){return this._getOption("horizontal")?this.needsVerticalResizeLayout():i.call(this)};var j=d._getOption;return d._getOption=function(a){return"horizontal"==a?void 0!==this.options.isHorizontal?this.options.isHorizontal:this.options.horizontal:j.apply(this.isotope,arguments)},c});
assets/js/extra/slick.min.js ADDED
@@ -0,0 +1 @@
 
1
+ !function(i){"use strict";"function"==typeof define&&define.amd?define(["jquery"],i):"undefined"!=typeof exports?module.exports=i(require("jquery")):i(jQuery)}(function(i){"use strict";var e=window.Slick||{};(e=function(){var e=0;return function(t,o){var s,n=this;n.defaults={accessibility:!0,adaptiveHeight:!1,appendArrows:i(t),appendDots:i(t),arrows:!0,asNavFor:null,prevArrow:'<button class="slick-prev" aria-label="Previous" type="button">Previous</button>',nextArrow:'<button class="slick-next" aria-label="Next" type="button">Next</button>',autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(e,t){return i('<button type="button" />').text(t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,focusOnChange:!1,infinite:!0,initialSlide:0,lazyLoad:"ondemand",mobileFirst:!1,pauseOnHover:!0,pauseOnFocus:!0,pauseOnDotsHover:!1,respondTo:"window",responsive:null,rows:1,rtl:!1,slide:"",slidesPerRow:1,slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,verticalSwiping:!1,waitForAnimate:!0,zIndex:1e3},n.initials={animating:!1,dragging:!1,autoPlayTimer:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,$dots:null,listWidth:null,listHeight:null,loadIndex:0,$nextArrow:null,$prevArrow:null,scrolling:!1,slideCount:null,slideWidth:null,$slideTrack:null,$slides:null,sliding:!1,slideOffset:0,swipeLeft:null,swiping:!1,$list:null,touchObject:{},transformsEnabled:!1,unslicked:!1},i.extend(n,n.initials),n.activeBreakpoint=null,n.animType=null,n.animProp=null,n.breakpoints=[],n.breakpointSettings=[],n.cssTransitions=!1,n.focussed=!1,n.interrupted=!1,n.hidden="hidden",n.paused=!0,n.positionProp=null,n.respondTo=null,n.rowCount=1,n.shouldClick=!0,n.$slider=i(t),n.$slidesCache=null,n.transformType=null,n.transitionType=null,n.visibilityChange="visibilitychange",n.windowWidth=0,n.windowTimer=null,s=i(t).data("slick")||{},n.options=i.extend({},n.defaults,o,s),n.currentSlide=n.options.initialSlide,n.originalSettings=n.options,void 0!==document.mozHidden?(n.hidden="mozHidden",n.visibilityChange="mozvisibilitychange"):void 0!==document.webkitHidden&&(n.hidden="webkitHidden",n.visibilityChange="webkitvisibilitychange"),n.autoPlay=i.proxy(n.autoPlay,n),n.autoPlayClear=i.proxy(n.autoPlayClear,n),n.autoPlayIterator=i.proxy(n.autoPlayIterator,n),n.changeSlide=i.proxy(n.changeSlide,n),n.clickHandler=i.proxy(n.clickHandler,n),n.selectHandler=i.proxy(n.selectHandler,n),n.setPosition=i.proxy(n.setPosition,n),n.swipeHandler=i.proxy(n.swipeHandler,n),n.dragHandler=i.proxy(n.dragHandler,n),n.keyHandler=i.proxy(n.keyHandler,n),n.instanceUid=e++,n.htmlExpr=/^(?:\s*(<[\w\W]+>)[^>]*)$/,n.registerBreakpoints(),n.init(!0)}}()).prototype.activateADA=function(){this.$slideTrack.find(".slick-active").attr({"aria-hidden":"false"}).find("a, input, button, select").attr({tabindex:"0"})},e.prototype.addSlide=e.prototype.slickAdd=function(e,t,o){var s=this;if("boolean"==typeof t)o=t,t=null;else if(t<0||t>=s.slideCount)return!1;s.unload(),"number"==typeof t?0===t&&0===s.$slides.length?i(e).appendTo(s.$slideTrack):o?i(e).insertBefore(s.$slides.eq(t)):i(e).insertAfter(s.$slides.eq(t)):!0===o?i(e).prependTo(s.$slideTrack):i(e).appendTo(s.$slideTrack),s.$slides=s.$slideTrack.children(this.options.slide),s.$slideTrack.children(this.options.slide).detach(),s.$slideTrack.append(s.$slides),s.$slides.each(function(e,t){i(t).attr("data-slick-index",e)}),s.$slidesCache=s.$slides,s.reinit()},e.prototype.animateHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.animate({height:e},i.options.speed)}},e.prototype.animateSlide=function(e,t){var o={},s=this;s.animateHeight(),!0===s.options.rtl&&!1===s.options.vertical&&(e=-e),!1===s.transformsEnabled?!1===s.options.vertical?s.$slideTrack.animate({left:e},s.options.speed,s.options.easing,t):s.$slideTrack.animate({top:e},s.options.speed,s.options.easing,t):!1===s.cssTransitions?(!0===s.options.rtl&&(s.currentLeft=-s.currentLeft),i({animStart:s.currentLeft}).animate({animStart:e},{duration:s.options.speed,easing:s.options.easing,step:function(i){i=Math.ceil(i),!1===s.options.vertical?(o[s.animType]="translate("+i+"px, 0px)",s.$slideTrack.css(o)):(o[s.animType]="translate(0px,"+i+"px)",s.$slideTrack.css(o))},complete:function(){t&&t.call()}})):(s.applyTransition(),e=Math.ceil(e),!1===s.options.vertical?o[s.animType]="translate3d("+e+"px, 0px, 0px)":o[s.animType]="translate3d(0px,"+e+"px, 0px)",s.$slideTrack.css(o),t&&setTimeout(function(){s.disableTransition(),t.call()},s.options.speed))},e.prototype.getNavTarget=function(){var e=this,t=e.options.asNavFor;return t&&null!==t&&(t=i(t).not(e.$slider)),t},e.prototype.asNavFor=function(e){var t=this.getNavTarget();null!==t&&"object"==typeof t&&t.each(function(){var t=i(this).slick("getSlick");t.unslicked||t.slideHandler(e,!0)})},e.prototype.applyTransition=function(i){var e=this,t={};!1===e.options.fade?t[e.transitionType]=e.transformType+" "+e.options.speed+"ms "+e.options.cssEase:t[e.transitionType]="opacity "+e.options.speed+"ms "+e.options.cssEase,!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.autoPlay=function(){var i=this;i.autoPlayClear(),i.slideCount>i.options.slidesToShow&&(i.autoPlayTimer=setInterval(i.autoPlayIterator,i.options.autoplaySpeed))},e.prototype.autoPlayClear=function(){var i=this;i.autoPlayTimer&&clearInterval(i.autoPlayTimer)},e.prototype.autoPlayIterator=function(){var i=this,e=i.currentSlide+i.options.slidesToScroll;i.paused||i.interrupted||i.focussed||(!1===i.options.infinite&&(1===i.direction&&i.currentSlide+1===i.slideCount-1?i.direction=0:0===i.direction&&(e=i.currentSlide-i.options.slidesToScroll,i.currentSlide-1==0&&(i.direction=1))),i.slideHandler(e))},e.prototype.buildArrows=function(){var e=this;!0===e.options.arrows&&(e.$prevArrow=i(e.options.prevArrow).addClass("slick-arrow"),e.$nextArrow=i(e.options.nextArrow).addClass("slick-arrow"),e.slideCount>e.options.slidesToShow?(e.$prevArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.$nextArrow.removeClass("slick-hidden").removeAttr("aria-hidden tabindex"),e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.prependTo(e.options.appendArrows),e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.appendTo(e.options.appendArrows),!0!==e.options.infinite&&e.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true")):e.$prevArrow.add(e.$nextArrow).addClass("slick-hidden").attr({"aria-disabled":"true",tabindex:"-1"}))},e.prototype.buildDots=function(){var e,t,o=this;if(!0===o.options.dots){for(o.$slider.addClass("slick-dotted"),t=i("<ul />").addClass(o.options.dotsClass),e=0;e<=o.getDotCount();e+=1)t.append(i("<li />").append(o.options.customPaging.call(this,o,e)));o.$dots=t.appendTo(o.options.appendDots),o.$dots.find("li").first().addClass("slick-active")}},e.prototype.buildOut=function(){var e=this;e.$slides=e.$slider.children(e.options.slide+":not(.slick-cloned)").addClass("slick-slide"),e.slideCount=e.$slides.length,e.$slides.each(function(e,t){i(t).attr("data-slick-index",e).data("originalStyling",i(t).attr("style")||"")}),e.$slider.addClass("slick-slider"),e.$slideTrack=0===e.slideCount?i('<div class="slick-track"/>').appendTo(e.$slider):e.$slides.wrapAll('<div class="slick-track"/>').parent(),e.$list=e.$slideTrack.wrap('<div class="slick-list"/>').parent(),e.$slideTrack.css("opacity",0),!0!==e.options.centerMode&&!0!==e.options.swipeToSlide||(e.options.slidesToScroll=1),i("img[data-lazy]",e.$slider).not("[src]").addClass("slick-loading"),e.setupInfinite(),e.buildArrows(),e.buildDots(),e.updateDots(),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),!0===e.options.draggable&&e.$list.addClass("draggable")},e.prototype.buildRows=function(){var i,e,t,o,s,n,r,l=this;if(o=document.createDocumentFragment(),n=l.$slider.children(),l.options.rows>1){for(r=l.options.slidesPerRow*l.options.rows,s=Math.ceil(n.length/r),i=0;i<s;i++){var d=document.createElement("div");for(e=0;e<l.options.rows;e++){var a=document.createElement("div");for(t=0;t<l.options.slidesPerRow;t++){var c=i*r+(e*l.options.slidesPerRow+t);n.get(c)&&a.appendChild(n.get(c))}d.appendChild(a)}o.appendChild(d)}l.$slider.empty().append(o),l.$slider.children().children().children().css({width:100/l.options.slidesPerRow+"%",display:"inline-block"})}},e.prototype.checkResponsive=function(e,t){var o,s,n,r=this,l=!1,d=r.$slider.width(),a=window.innerWidth||i(window).width();if("window"===r.respondTo?n=a:"slider"===r.respondTo?n=d:"min"===r.respondTo&&(n=Math.min(a,d)),r.options.responsive&&r.options.responsive.length&&null!==r.options.responsive){s=null;for(o in r.breakpoints)r.breakpoints.hasOwnProperty(o)&&(!1===r.originalSettings.mobileFirst?n<r.breakpoints[o]&&(s=r.breakpoints[o]):n>r.breakpoints[o]&&(s=r.breakpoints[o]));null!==s?null!==r.activeBreakpoint?(s!==r.activeBreakpoint||t)&&(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):(r.activeBreakpoint=s,"unslick"===r.breakpointSettings[s]?r.unslick(s):(r.options=i.extend({},r.originalSettings,r.breakpointSettings[s]),!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e)),l=s):null!==r.activeBreakpoint&&(r.activeBreakpoint=null,r.options=r.originalSettings,!0===e&&(r.currentSlide=r.options.initialSlide),r.refresh(e),l=s),e||!1===l||r.$slider.trigger("breakpoint",[r,l])}},e.prototype.changeSlide=function(e,t){var o,s,n,r=this,l=i(e.currentTarget);switch(l.is("a")&&e.preventDefault(),l.is("li")||(l=l.closest("li")),n=r.slideCount%r.options.slidesToScroll!=0,o=n?0:(r.slideCount-r.currentSlide)%r.options.slidesToScroll,e.data.message){case"previous":s=0===o?r.options.slidesToScroll:r.options.slidesToShow-o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide-s,!1,t);break;case"next":s=0===o?r.options.slidesToScroll:o,r.slideCount>r.options.slidesToShow&&r.slideHandler(r.currentSlide+s,!1,t);break;case"index":var d=0===e.data.index?0:e.data.index||l.index()*r.options.slidesToScroll;r.slideHandler(r.checkNavigable(d),!1,t),l.children().trigger("focus");break;default:return}},e.prototype.checkNavigable=function(i){var e,t;if(e=this.getNavigableIndexes(),t=0,i>e[e.length-1])i=e[e.length-1];else for(var o in e){if(i<e[o]){i=t;break}t=e[o]}return i},e.prototype.cleanUpEvents=function(){var e=this;e.options.dots&&null!==e.$dots&&(i("li",e.$dots).off("click.slick",e.changeSlide).off("mouseenter.slick",i.proxy(e.interrupt,e,!0)).off("mouseleave.slick",i.proxy(e.interrupt,e,!1)),!0===e.options.accessibility&&e.$dots.off("keydown.slick",e.keyHandler)),e.$slider.off("focus.slick blur.slick"),!0===e.options.arrows&&e.slideCount>e.options.slidesToShow&&(e.$prevArrow&&e.$prevArrow.off("click.slick",e.changeSlide),e.$nextArrow&&e.$nextArrow.off("click.slick",e.changeSlide),!0===e.options.accessibility&&(e.$prevArrow&&e.$prevArrow.off("keydown.slick",e.keyHandler),e.$nextArrow&&e.$nextArrow.off("keydown.slick",e.keyHandler))),e.$list.off("touchstart.slick mousedown.slick",e.swipeHandler),e.$list.off("touchmove.slick mousemove.slick",e.swipeHandler),e.$list.off("touchend.slick mouseup.slick",e.swipeHandler),e.$list.off("touchcancel.slick mouseleave.slick",e.swipeHandler),e.$list.off("click.slick",e.clickHandler),i(document).off(e.visibilityChange,e.visibility),e.cleanUpSlideEvents(),!0===e.options.accessibility&&e.$list.off("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().off("click.slick",e.selectHandler),i(window).off("orientationchange.slick.slick-"+e.instanceUid,e.orientationChange),i(window).off("resize.slick.slick-"+e.instanceUid,e.resize),i("[draggable!=true]",e.$slideTrack).off("dragstart",e.preventDefault),i(window).off("load.slick.slick-"+e.instanceUid,e.setPosition)},e.prototype.cleanUpSlideEvents=function(){var e=this;e.$list.off("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.off("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.cleanUpRows=function(){var i,e=this;e.options.rows>1&&((i=e.$slides.children().children()).removeAttr("style"),e.$slider.empty().append(i))},e.prototype.clickHandler=function(i){!1===this.shouldClick&&(i.stopImmediatePropagation(),i.stopPropagation(),i.preventDefault())},e.prototype.destroy=function(e){var t=this;t.autoPlayClear(),t.touchObject={},t.cleanUpEvents(),i(".slick-cloned",t.$slider).detach(),t.$dots&&t.$dots.remove(),t.$prevArrow&&t.$prevArrow.length&&(t.$prevArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.prevArrow)&&t.$prevArrow.remove()),t.$nextArrow&&t.$nextArrow.length&&(t.$nextArrow.removeClass("slick-disabled slick-arrow slick-hidden").removeAttr("aria-hidden aria-disabled tabindex").css("display",""),t.htmlExpr.test(t.options.nextArrow)&&t.$nextArrow.remove()),t.$slides&&(t.$slides.removeClass("slick-slide slick-active slick-center slick-visible slick-current").removeAttr("aria-hidden").removeAttr("data-slick-index").each(function(){i(this).attr("style",i(this).data("originalStyling"))}),t.$slideTrack.children(this.options.slide).detach(),t.$slideTrack.detach(),t.$list.detach(),t.$slider.append(t.$slides)),t.cleanUpRows(),t.$slider.removeClass("slick-slider"),t.$slider.removeClass("slick-initialized"),t.$slider.removeClass("slick-dotted"),t.unslicked=!0,e||t.$slider.trigger("destroy",[t])},e.prototype.disableTransition=function(i){var e=this,t={};t[e.transitionType]="",!1===e.options.fade?e.$slideTrack.css(t):e.$slides.eq(i).css(t)},e.prototype.fadeSlide=function(i,e){var t=this;!1===t.cssTransitions?(t.$slides.eq(i).css({zIndex:t.options.zIndex}),t.$slides.eq(i).animate({opacity:1},t.options.speed,t.options.easing,e)):(t.applyTransition(i),t.$slides.eq(i).css({opacity:1,zIndex:t.options.zIndex}),e&&setTimeout(function(){t.disableTransition(i),e.call()},t.options.speed))},e.prototype.fadeSlideOut=function(i){var e=this;!1===e.cssTransitions?e.$slides.eq(i).animate({opacity:0,zIndex:e.options.zIndex-2},e.options.speed,e.options.easing):(e.applyTransition(i),e.$slides.eq(i).css({opacity:0,zIndex:e.options.zIndex-2}))},e.prototype.filterSlides=e.prototype.slickFilter=function(i){var e=this;null!==i&&(e.$slidesCache=e.$slides,e.unload(),e.$slideTrack.children(this.options.slide).detach(),e.$slidesCache.filter(i).appendTo(e.$slideTrack),e.reinit())},e.prototype.focusHandler=function(){var e=this;e.$slider.off("focus.slick blur.slick").on("focus.slick blur.slick","*",function(t){t.stopImmediatePropagation();var o=i(this);setTimeout(function(){e.options.pauseOnFocus&&(e.focussed=o.is(":focus"),e.autoPlay())},0)})},e.prototype.getCurrent=e.prototype.slickCurrentSlide=function(){return this.currentSlide},e.prototype.getDotCount=function(){var i=this,e=0,t=0,o=0;if(!0===i.options.infinite)if(i.slideCount<=i.options.slidesToShow)++o;else for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else if(!0===i.options.centerMode)o=i.slideCount;else if(i.options.asNavFor)for(;e<i.slideCount;)++o,e=t+i.options.slidesToScroll,t+=i.options.slidesToScroll<=i.options.slidesToShow?i.options.slidesToScroll:i.options.slidesToShow;else o=1+Math.ceil((i.slideCount-i.options.slidesToShow)/i.options.slidesToScroll);return o-1},e.prototype.getLeft=function(i){var e,t,o,s,n=this,r=0;return n.slideOffset=0,t=n.$slides.first().outerHeight(!0),!0===n.options.infinite?(n.slideCount>n.options.slidesToShow&&(n.slideOffset=n.slideWidth*n.options.slidesToShow*-1,s=-1,!0===n.options.vertical&&!0===n.options.centerMode&&(2===n.options.slidesToShow?s=-1.5:1===n.options.slidesToShow&&(s=-2)),r=t*n.options.slidesToShow*s),n.slideCount%n.options.slidesToScroll!=0&&i+n.options.slidesToScroll>n.slideCount&&n.slideCount>n.options.slidesToShow&&(i>n.slideCount?(n.slideOffset=(n.options.slidesToShow-(i-n.slideCount))*n.slideWidth*-1,r=(n.options.slidesToShow-(i-n.slideCount))*t*-1):(n.slideOffset=n.slideCount%n.options.slidesToScroll*n.slideWidth*-1,r=n.slideCount%n.options.slidesToScroll*t*-1))):i+n.options.slidesToShow>n.slideCount&&(n.slideOffset=(i+n.options.slidesToShow-n.slideCount)*n.slideWidth,r=(i+n.options.slidesToShow-n.slideCount)*t),n.slideCount<=n.options.slidesToShow&&(n.slideOffset=0,r=0),!0===n.options.centerMode&&n.slideCount<=n.options.slidesToShow?n.slideOffset=n.slideWidth*Math.floor(n.options.slidesToShow)/2-n.slideWidth*n.slideCount/2:!0===n.options.centerMode&&!0===n.options.infinite?n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)-n.slideWidth:!0===n.options.centerMode&&(n.slideOffset=0,n.slideOffset+=n.slideWidth*Math.floor(n.options.slidesToShow/2)),e=!1===n.options.vertical?i*n.slideWidth*-1+n.slideOffset:i*t*-1+r,!0===n.options.variableWidth&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,!0===n.options.centerMode&&(o=n.slideCount<=n.options.slidesToShow||!1===n.options.infinite?n.$slideTrack.children(".slick-slide").eq(i):n.$slideTrack.children(".slick-slide").eq(i+n.options.slidesToShow+1),e=!0===n.options.rtl?o[0]?-1*(n.$slideTrack.width()-o[0].offsetLeft-o.width()):0:o[0]?-1*o[0].offsetLeft:0,e+=(n.$list.width()-o.outerWidth())/2)),e},e.prototype.getOption=e.prototype.slickGetOption=function(i){return this.options[i]},e.prototype.getNavigableIndexes=function(){var i,e=this,t=0,o=0,s=[];for(!1===e.options.infinite?i=e.slideCount:(t=-1*e.options.slidesToScroll,o=-1*e.options.slidesToScroll,i=2*e.slideCount);t<i;)s.push(t),t=o+e.options.slidesToScroll,o+=e.options.slidesToScroll<=e.options.slidesToShow?e.options.slidesToScroll:e.options.slidesToShow;return s},e.prototype.getSlick=function(){return this},e.prototype.getSlideCount=function(){var e,t,o=this;return t=!0===o.options.centerMode?o.slideWidth*Math.floor(o.options.slidesToShow/2):0,!0===o.options.swipeToSlide?(o.$slideTrack.find(".slick-slide").each(function(s,n){if(n.offsetLeft-t+i(n).outerWidth()/2>-1*o.swipeLeft)return e=n,!1}),Math.abs(i(e).attr("data-slick-index")-o.currentSlide)||1):o.options.slidesToScroll},e.prototype.goTo=e.prototype.slickGoTo=function(i,e){this.changeSlide({data:{message:"index",index:parseInt(i)}},e)},e.prototype.init=function(e){var t=this;i(t.$slider).hasClass("slick-initialized")||(i(t.$slider).addClass("slick-initialized"),t.buildRows(),t.buildOut(),t.setProps(),t.startLoad(),t.loadSlider(),t.initializeEvents(),t.updateArrows(),t.updateDots(),t.checkResponsive(!0),t.focusHandler()),e&&t.$slider.trigger("init",[t]),!0===t.options.accessibility&&t.initADA(),t.options.autoplay&&(t.paused=!1,t.autoPlay())},e.prototype.initADA=function(){var e=this,t=Math.ceil(e.slideCount/e.options.slidesToShow),o=e.getNavigableIndexes().filter(function(i){return i>=0&&i<e.slideCount});e.$slides.add(e.$slideTrack.find(".slick-cloned")).attr({"aria-hidden":"true",tabindex:"-1"}).find("a, input, button, select").attr({tabindex:"-1"}),null!==e.$dots&&(e.$slides.not(e.$slideTrack.find(".slick-cloned")).each(function(t){var s=o.indexOf(t);i(this).attr({role:"tabpanel",id:"slick-slide"+e.instanceUid+t,tabindex:-1}),-1!==s&&i(this).attr({"aria-describedby":"slick-slide-control"+e.instanceUid+s})}),e.$dots.attr("role","tablist").find("li").each(function(s){var n=o[s];i(this).attr({role:"presentation"}),i(this).find("button").first().attr({role:"tab",id:"slick-slide-control"+e.instanceUid+s,"aria-controls":"slick-slide"+e.instanceUid+n,"aria-label":s+1+" of "+t,"aria-selected":null,tabindex:"-1"})}).eq(e.currentSlide).find("button").attr({"aria-selected":"true",tabindex:"0"}).end());for(var s=e.currentSlide,n=s+e.options.slidesToShow;s<n;s++)e.$slides.eq(s).attr("tabindex",0);e.activateADA()},e.prototype.initArrowEvents=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.off("click.slick").on("click.slick",{message:"previous"},i.changeSlide),i.$nextArrow.off("click.slick").on("click.slick",{message:"next"},i.changeSlide),!0===i.options.accessibility&&(i.$prevArrow.on("keydown.slick",i.keyHandler),i.$nextArrow.on("keydown.slick",i.keyHandler)))},e.prototype.initDotEvents=function(){var e=this;!0===e.options.dots&&(i("li",e.$dots).on("click.slick",{message:"index"},e.changeSlide),!0===e.options.accessibility&&e.$dots.on("keydown.slick",e.keyHandler)),!0===e.options.dots&&!0===e.options.pauseOnDotsHover&&i("li",e.$dots).on("mouseenter.slick",i.proxy(e.interrupt,e,!0)).on("mouseleave.slick",i.proxy(e.interrupt,e,!1))},e.prototype.initSlideEvents=function(){var e=this;e.options.pauseOnHover&&(e.$list.on("mouseenter.slick",i.proxy(e.interrupt,e,!0)),e.$list.on("mouseleave.slick",i.proxy(e.interrupt,e,!1)))},e.prototype.initializeEvents=function(){var e=this;e.initArrowEvents(),e.initDotEvents(),e.initSlideEvents(),e.$list.on("touchstart.slick mousedown.slick",{action:"start"},e.swipeHandler),e.$list.on("touchmove.slick mousemove.slick",{action:"move"},e.swipeHandler),e.$list.on("touchend.slick mouseup.slick",{action:"end"},e.swipeHandler),e.$list.on("touchcancel.slick mouseleave.slick",{action:"end"},e.swipeHandler),e.$list.on("click.slick",e.clickHandler),i(document).on(e.visibilityChange,i.proxy(e.visibility,e)),!0===e.options.accessibility&&e.$list.on("keydown.slick",e.keyHandler),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),i(window).on("orientationchange.slick.slick-"+e.instanceUid,i.proxy(e.orientationChange,e)),i(window).on("resize.slick.slick-"+e.instanceUid,i.proxy(e.resize,e)),i("[draggable!=true]",e.$slideTrack).on("dragstart",e.preventDefault),i(window).on("load.slick.slick-"+e.instanceUid,e.setPosition),i(e.setPosition)},e.prototype.initUI=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.show(),i.$nextArrow.show()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.show()},e.prototype.keyHandler=function(i){var e=this;i.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===i.keyCode&&!0===e.options.accessibility?e.changeSlide({data:{message:!0===e.options.rtl?"next":"previous"}}):39===i.keyCode&&!0===e.options.accessibility&&e.changeSlide({data:{message:!0===e.options.rtl?"previous":"next"}}))},e.prototype.lazyLoad=function(){function e(e){i("img[data-lazy]",e).each(function(){var e=i(this),t=i(this).attr("data-lazy"),o=i(this).attr("data-srcset"),s=i(this).attr("data-sizes")||n.$slider.attr("data-sizes"),r=document.createElement("img");r.onload=function(){e.animate({opacity:0},100,function(){o&&(e.attr("srcset",o),s&&e.attr("sizes",s)),e.attr("src",t).animate({opacity:1},200,function(){e.removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading")}),n.$slider.trigger("lazyLoaded",[n,e,t])})},r.onerror=function(){e.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),n.$slider.trigger("lazyLoadError",[n,e,t])},r.src=t})}var t,o,s,n=this;if(!0===n.options.centerMode?!0===n.options.infinite?s=(o=n.currentSlide+(n.options.slidesToShow/2+1))+n.options.slidesToShow+2:(o=Math.max(0,n.currentSlide-(n.options.slidesToShow/2+1)),s=n.options.slidesToShow/2+1+2+n.currentSlide):(o=n.options.infinite?n.options.slidesToShow+n.currentSlide:n.currentSlide,s=Math.ceil(o+n.options.slidesToShow),!0===n.options.fade&&(o>0&&o--,s<=n.slideCount&&s++)),t=n.$slider.find(".slick-slide").slice(o,s),"anticipated"===n.options.lazyLoad)for(var r=o-1,l=s,d=n.$slider.find(".slick-slide"),a=0;a<n.options.slidesToScroll;a++)r<0&&(r=n.slideCount-1),t=(t=t.add(d.eq(r))).add(d.eq(l)),r--,l++;e(t),n.slideCount<=n.options.slidesToShow?e(n.$slider.find(".slick-slide")):n.currentSlide>=n.slideCount-n.options.slidesToShow?e(n.$slider.find(".slick-cloned").slice(0,n.options.slidesToShow)):0===n.currentSlide&&e(n.$slider.find(".slick-cloned").slice(-1*n.options.slidesToShow))},e.prototype.loadSlider=function(){var i=this;i.setPosition(),i.$slideTrack.css({opacity:1}),i.$slider.removeClass("slick-loading"),i.initUI(),"progressive"===i.options.lazyLoad&&i.progressiveLazyLoad()},e.prototype.next=e.prototype.slickNext=function(){this.changeSlide({data:{message:"next"}})},e.prototype.orientationChange=function(){var i=this;i.checkResponsive(),i.setPosition()},e.prototype.pause=e.prototype.slickPause=function(){var i=this;i.autoPlayClear(),i.paused=!0},e.prototype.play=e.prototype.slickPlay=function(){var i=this;i.autoPlay(),i.options.autoplay=!0,i.paused=!1,i.focussed=!1,i.interrupted=!1},e.prototype.postSlide=function(e){var t=this;t.unslicked||(t.$slider.trigger("afterChange",[t,e]),t.animating=!1,t.slideCount>t.options.slidesToShow&&t.setPosition(),t.swipeLeft=null,t.options.autoplay&&t.autoPlay(),!0===t.options.accessibility&&(t.initADA(),t.options.focusOnChange&&i(t.$slides.get(t.currentSlide)).attr("tabindex",0).focus()))},e.prototype.prev=e.prototype.slickPrev=function(){this.changeSlide({data:{message:"previous"}})},e.prototype.preventDefault=function(i){i.preventDefault()},e.prototype.progressiveLazyLoad=function(e){e=e||1;var t,o,s,n,r,l=this,d=i("img[data-lazy]",l.$slider);d.length?(t=d.first(),o=t.attr("data-lazy"),s=t.attr("data-srcset"),n=t.attr("data-sizes")||l.$slider.attr("data-sizes"),(r=document.createElement("img")).onload=function(){s&&(t.attr("srcset",s),n&&t.attr("sizes",n)),t.attr("src",o).removeAttr("data-lazy data-srcset data-sizes").removeClass("slick-loading"),!0===l.options.adaptiveHeight&&l.setPosition(),l.$slider.trigger("lazyLoaded",[l,t,o]),l.progressiveLazyLoad()},r.onerror=function(){e<3?setTimeout(function(){l.progressiveLazyLoad(e+1)},500):(t.removeAttr("data-lazy").removeClass("slick-loading").addClass("slick-lazyload-error"),l.$slider.trigger("lazyLoadError",[l,t,o]),l.progressiveLazyLoad())},r.src=o):l.$slider.trigger("allImagesLoaded",[l])},e.prototype.refresh=function(e){var t,o,s=this;o=s.slideCount-s.options.slidesToShow,!s.options.infinite&&s.currentSlide>o&&(s.currentSlide=o),s.slideCount<=s.options.slidesToShow&&(s.currentSlide=0),t=s.currentSlide,s.destroy(!0),i.extend(s,s.initials,{currentSlide:t}),s.init(),e||s.changeSlide({data:{message:"index",index:t}},!1)},e.prototype.registerBreakpoints=function(){var e,t,o,s=this,n=s.options.responsive||null;if("array"===i.type(n)&&n.length){s.respondTo=s.options.respondTo||"window";for(e in n)if(o=s.breakpoints.length-1,n.hasOwnProperty(e)){for(t=n[e].breakpoint;o>=0;)s.breakpoints[o]&&s.breakpoints[o]===t&&s.breakpoints.splice(o,1),o--;s.breakpoints.push(t),s.breakpointSettings[t]=n[e].settings}s.breakpoints.sort(function(i,e){return s.options.mobileFirst?i-e:e-i})}},e.prototype.reinit=function(){var e=this;e.$slides=e.$slideTrack.children(e.options.slide).addClass("slick-slide"),e.slideCount=e.$slides.length,e.currentSlide>=e.slideCount&&0!==e.currentSlide&&(e.currentSlide=e.currentSlide-e.options.slidesToScroll),e.slideCount<=e.options.slidesToShow&&(e.currentSlide=0),e.registerBreakpoints(),e.setProps(),e.setupInfinite(),e.buildArrows(),e.updateArrows(),e.initArrowEvents(),e.buildDots(),e.updateDots(),e.initDotEvents(),e.cleanUpSlideEvents(),e.initSlideEvents(),e.checkResponsive(!1,!0),!0===e.options.focusOnSelect&&i(e.$slideTrack).children().on("click.slick",e.selectHandler),e.setSlideClasses("number"==typeof e.currentSlide?e.currentSlide:0),e.setPosition(),e.focusHandler(),e.paused=!e.options.autoplay,e.autoPlay(),e.$slider.trigger("reInit",[e])},e.prototype.resize=function(){var e=this;i(window).width()!==e.windowWidth&&(clearTimeout(e.windowDelay),e.windowDelay=window.setTimeout(function(){e.windowWidth=i(window).width(),e.checkResponsive(),e.unslicked||e.setPosition()},50))},e.prototype.removeSlide=e.prototype.slickRemove=function(i,e,t){var o=this;if(i="boolean"==typeof i?!0===(e=i)?0:o.slideCount-1:!0===e?--i:i,o.slideCount<1||i<0||i>o.slideCount-1)return!1;o.unload(),!0===t?o.$slideTrack.children().remove():o.$slideTrack.children(this.options.slide).eq(i).remove(),o.$slides=o.$slideTrack.children(this.options.slide),o.$slideTrack.children(this.options.slide).detach(),o.$slideTrack.append(o.$slides),o.$slidesCache=o.$slides,o.reinit()},e.prototype.setCSS=function(i){var e,t,o=this,s={};!0===o.options.rtl&&(i=-i),e="left"==o.positionProp?Math.ceil(i)+"px":"0px",t="top"==o.positionProp?Math.ceil(i)+"px":"0px",s[o.positionProp]=i,!1===o.transformsEnabled?o.$slideTrack.css(s):(s={},!1===o.cssTransitions?(s[o.animType]="translate("+e+", "+t+")",o.$slideTrack.css(s)):(s[o.animType]="translate3d("+e+", "+t+", 0px)",o.$slideTrack.css(s)))},e.prototype.setDimensions=function(){var i=this;!1===i.options.vertical?!0===i.options.centerMode&&i.$list.css({padding:"0px "+i.options.centerPadding}):(i.$list.height(i.$slides.first().outerHeight(!0)*i.options.slidesToShow),!0===i.options.centerMode&&i.$list.css({padding:i.options.centerPadding+" 0px"})),i.listWidth=i.$list.width(),i.listHeight=i.$list.height(),!1===i.options.vertical&&!1===i.options.variableWidth?(i.slideWidth=Math.ceil(i.listWidth/i.options.slidesToShow),i.$slideTrack.width(Math.ceil(i.slideWidth*i.$slideTrack.children(".slick-slide").length))):!0===i.options.variableWidth?i.$slideTrack.width(5e3*i.slideCount):(i.slideWidth=Math.ceil(i.listWidth),i.$slideTrack.height(Math.ceil(i.$slides.first().outerHeight(!0)*i.$slideTrack.children(".slick-slide").length)));var e=i.$slides.first().outerWidth(!0)-i.$slides.first().width();!1===i.options.variableWidth&&i.$slideTrack.children(".slick-slide").width(i.slideWidth-e)},e.prototype.setFade=function(){var e,t=this;t.$slides.each(function(o,s){e=t.slideWidth*o*-1,!0===t.options.rtl?i(s).css({position:"relative",right:e,top:0,zIndex:t.options.zIndex-2,opacity:0}):i(s).css({position:"relative",left:e,top:0,zIndex:t.options.zIndex-2,opacity:0})}),t.$slides.eq(t.currentSlide).css({zIndex:t.options.zIndex-1,opacity:1})},e.prototype.setHeight=function(){var i=this;if(1===i.options.slidesToShow&&!0===i.options.adaptiveHeight&&!1===i.options.vertical){var e=i.$slides.eq(i.currentSlide).outerHeight(!0);i.$list.css("height",e)}},e.prototype.setOption=e.prototype.slickSetOption=function(){var e,t,o,s,n,r=this,l=!1;if("object"===i.type(arguments[0])?(o=arguments[0],l=arguments[1],n="multiple"):"string"===i.type(arguments[0])&&(o=arguments[0],s=arguments[1],l=arguments[2],"responsive"===arguments[0]&&"array"===i.type(arguments[1])?n="responsive":void 0!==arguments[1]&&(n="single")),"single"===n)r.options[o]=s;else if("multiple"===n)i.each(o,function(i,e){r.options[i]=e});else if("responsive"===n)for(t in s)if("array"!==i.type(r.options.responsive))r.options.responsive=[s[t]];else{for(e=r.options.responsive.length-1;e>=0;)r.options.responsive[e].breakpoint===s[t].breakpoint&&r.options.responsive.splice(e,1),e--;r.options.responsive.push(s[t])}l&&(r.unload(),r.reinit())},e.prototype.setPosition=function(){var i=this;i.setDimensions(),i.setHeight(),!1===i.options.fade?i.setCSS(i.getLeft(i.currentSlide)):i.setFade(),i.$slider.trigger("setPosition",[i])},e.prototype.setProps=function(){var i=this,e=document.body.style;i.positionProp=!0===i.options.vertical?"top":"left","top"===i.positionProp?i.$slider.addClass("slick-vertical"):i.$slider.removeClass("slick-vertical"),void 0===e.WebkitTransition&&void 0===e.MozTransition&&void 0===e.msTransition||!0===i.options.useCSS&&(i.cssTransitions=!0),i.options.fade&&("number"==typeof i.options.zIndex?i.options.zIndex<3&&(i.options.zIndex=3):i.options.zIndex=i.defaults.zIndex),void 0!==e.OTransform&&(i.animType="OTransform",i.transformType="-o-transform",i.transitionType="OTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.MozTransform&&(i.animType="MozTransform",i.transformType="-moz-transform",i.transitionType="MozTransition",void 0===e.perspectiveProperty&&void 0===e.MozPerspective&&(i.animType=!1)),void 0!==e.webkitTransform&&(i.animType="webkitTransform",i.transformType="-webkit-transform",i.transitionType="webkitTransition",void 0===e.perspectiveProperty&&void 0===e.webkitPerspective&&(i.animType=!1)),void 0!==e.msTransform&&(i.animType="msTransform",i.transformType="-ms-transform",i.transitionType="msTransition",void 0===e.msTransform&&(i.animType=!1)),void 0!==e.transform&&!1!==i.animType&&(i.animType="transform",i.transformType="transform",i.transitionType="transition"),i.transformsEnabled=i.options.useTransform&&null!==i.animType&&!1!==i.animType},e.prototype.setSlideClasses=function(i){var e,t,o,s,n=this;if(t=n.$slider.find(".slick-slide").removeClass("slick-active slick-center slick-current").attr("aria-hidden","true"),n.$slides.eq(i).addClass("slick-current"),!0===n.options.centerMode){var r=n.options.slidesToShow%2==0?1:0;e=Math.floor(n.options.slidesToShow/2),!0===n.options.infinite&&(i>=e&&i<=n.slideCount-1-e?n.$slides.slice(i-e+r,i+e+1).addClass("slick-active").attr("aria-hidden","false"):(o=n.options.slidesToShow+i,t.slice(o-e+1+r,o+e+2).addClass("slick-active").attr("aria-hidden","false")),0===i?t.eq(t.length-1-n.options.slidesToShow).addClass("slick-center"):i===n.slideCount-1&&t.eq(n.options.slidesToShow).addClass("slick-center")),n.$slides.eq(i).addClass("slick-center")}else i>=0&&i<=n.slideCount-n.options.slidesToShow?n.$slides.slice(i,i+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"):t.length<=n.options.slidesToShow?t.addClass("slick-active").attr("aria-hidden","false"):(s=n.slideCount%n.options.slidesToShow,o=!0===n.options.infinite?n.options.slidesToShow+i:i,n.options.slidesToShow==n.options.slidesToScroll&&n.slideCount-i<n.options.slidesToShow?t.slice(o-(n.options.slidesToShow-s),o+s).addClass("slick-active").attr("aria-hidden","false"):t.slice(o,o+n.options.slidesToShow).addClass("slick-active").attr("aria-hidden","false"));"ondemand"!==n.options.lazyLoad&&"anticipated"!==n.options.lazyLoad||n.lazyLoad()},e.prototype.setupInfinite=function(){var e,t,o,s=this;if(!0===s.options.fade&&(s.options.centerMode=!1),!0===s.options.infinite&&!1===s.options.fade&&(t=null,s.slideCount>s.options.slidesToShow)){for(o=!0===s.options.centerMode?s.options.slidesToShow+1:s.options.slidesToShow,e=s.slideCount;e>s.slideCount-o;e-=1)t=e-1,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t-s.slideCount).prependTo(s.$slideTrack).addClass("slick-cloned");for(e=0;e<o+s.slideCount;e+=1)t=e,i(s.$slides[t]).clone(!0).attr("id","").attr("data-slick-index",t+s.slideCount).appendTo(s.$slideTrack).addClass("slick-cloned");s.$slideTrack.find(".slick-cloned").find("[id]").each(function(){i(this).attr("id","")})}},e.prototype.interrupt=function(i){var e=this;i||e.autoPlay(),e.interrupted=i},e.prototype.selectHandler=function(e){var t=this,o=i(e.target).is(".slick-slide")?i(e.target):i(e.target).parents(".slick-slide"),s=parseInt(o.attr("data-slick-index"));s||(s=0),t.slideCount<=t.options.slidesToShow?t.slideHandler(s,!1,!0):t.slideHandler(s)},e.prototype.slideHandler=function(i,e,t){var o,s,n,r,l,d=null,a=this;if(e=e||!1,!(!0===a.animating&&!0===a.options.waitForAnimate||!0===a.options.fade&&a.currentSlide===i))if(!1===e&&a.asNavFor(i),o=i,d=a.getLeft(o),r=a.getLeft(a.currentSlide),a.currentLeft=null===a.swipeLeft?r:a.swipeLeft,!1===a.options.infinite&&!1===a.options.centerMode&&(i<0||i>a.getDotCount()*a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else if(!1===a.options.infinite&&!0===a.options.centerMode&&(i<0||i>a.slideCount-a.options.slidesToScroll))!1===a.options.fade&&(o=a.currentSlide,!0!==t?a.animateSlide(r,function(){a.postSlide(o)}):a.postSlide(o));else{if(a.options.autoplay&&clearInterval(a.autoPlayTimer),s=o<0?a.slideCount%a.options.slidesToScroll!=0?a.slideCount-a.slideCount%a.options.slidesToScroll:a.slideCount+o:o>=a.slideCount?a.slideCount%a.options.slidesToScroll!=0?0:o-a.slideCount:o,a.animating=!0,a.$slider.trigger("beforeChange",[a,a.currentSlide,s]),n=a.currentSlide,a.currentSlide=s,a.setSlideClasses(a.currentSlide),a.options.asNavFor&&(l=(l=a.getNavTarget()).slick("getSlick")).slideCount<=l.options.slidesToShow&&l.setSlideClasses(a.currentSlide),a.updateDots(),a.updateArrows(),!0===a.options.fade)return!0!==t?(a.fadeSlideOut(n),a.fadeSlide(s,function(){a.postSlide(s)})):a.postSlide(s),void a.animateHeight();!0!==t?a.animateSlide(d,function(){a.postSlide(s)}):a.postSlide(s)}},e.prototype.startLoad=function(){var i=this;!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&(i.$prevArrow.hide(),i.$nextArrow.hide()),!0===i.options.dots&&i.slideCount>i.options.slidesToShow&&i.$dots.hide(),i.$slider.addClass("slick-loading")},e.prototype.swipeDirection=function(){var i,e,t,o,s=this;return i=s.touchObject.startX-s.touchObject.curX,e=s.touchObject.startY-s.touchObject.curY,t=Math.atan2(e,i),(o=Math.round(180*t/Math.PI))<0&&(o=360-Math.abs(o)),o<=45&&o>=0?!1===s.options.rtl?"left":"right":o<=360&&o>=315?!1===s.options.rtl?"left":"right":o>=135&&o<=225?!1===s.options.rtl?"right":"left":!0===s.options.verticalSwiping?o>=35&&o<=135?"down":"up":"vertical"},e.prototype.swipeEnd=function(i){var e,t,o=this;if(o.dragging=!1,o.swiping=!1,o.scrolling)return o.scrolling=!1,!1;if(o.interrupted=!1,o.shouldClick=!(o.touchObject.swipeLength>10),void 0===o.touchObject.curX)return!1;if(!0===o.touchObject.edgeHit&&o.$slider.trigger("edge",[o,o.swipeDirection()]),o.touchObject.swipeLength>=o.touchObject.minSwipe){switch(t=o.swipeDirection()){case"left":case"down":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide+o.getSlideCount()):o.currentSlide+o.getSlideCount(),o.currentDirection=0;break;case"right":case"up":e=o.options.swipeToSlide?o.checkNavigable(o.currentSlide-o.getSlideCount()):o.currentSlide-o.getSlideCount(),o.currentDirection=1}"vertical"!=t&&(o.slideHandler(e),o.touchObject={},o.$slider.trigger("swipe",[o,t]))}else o.touchObject.startX!==o.touchObject.curX&&(o.slideHandler(o.currentSlide),o.touchObject={})},e.prototype.swipeHandler=function(i){var e=this;if(!(!1===e.options.swipe||"ontouchend"in document&&!1===e.options.swipe||!1===e.options.draggable&&-1!==i.type.indexOf("mouse")))switch(e.touchObject.fingerCount=i.originalEvent&&void 0!==i.originalEvent.touches?i.originalEvent.touches.length:1,e.touchObject.minSwipe=e.listWidth/e.options.touchThreshold,!0===e.options.verticalSwiping&&(e.touchObject.minSwipe=e.listHeight/e.options.touchThreshold),i.data.action){case"start":e.swipeStart(i);break;case"move":e.swipeMove(i);break;case"end":e.swipeEnd(i)}},e.prototype.swipeMove=function(i){var e,t,o,s,n,r,l=this;return n=void 0!==i.originalEvent?i.originalEvent.touches:null,!(!l.dragging||l.scrolling||n&&1!==n.length)&&(e=l.getLeft(l.currentSlide),l.touchObject.curX=void 0!==n?n[0].pageX:i.clientX,l.touchObject.curY=void 0!==n?n[0].pageY:i.clientY,l.touchObject.swipeLength=Math.round(Math.sqrt(Math.pow(l.touchObject.curX-l.touchObject.startX,2))),r=Math.round(Math.sqrt(Math.pow(l.touchObject.curY-l.touchObject.startY,2))),!l.options.verticalSwiping&&!l.swiping&&r>4?(l.scrolling=!0,!1):(!0===l.options.verticalSwiping&&(l.touchObject.swipeLength=r),t=l.swipeDirection(),void 0!==i.originalEvent&&l.touchObject.swipeLength>4&&(l.swiping=!0,i.preventDefault()),s=(!1===l.options.rtl?1:-1)*(l.touchObject.curX>l.touchObject.startX?1:-1),!0===l.options.verticalSwiping&&(s=l.touchObject.curY>l.touchObject.startY?1:-1),o=l.touchObject.swipeLength,l.touchObject.edgeHit=!1,!1===l.options.infinite&&(0===l.currentSlide&&"right"===t||l.currentSlide>=l.getDotCount()&&"left"===t)&&(o=l.touchObject.swipeLength*l.options.edgeFriction,l.touchObject.edgeHit=!0),!1===l.options.vertical?l.swipeLeft=e+o*s:l.swipeLeft=e+o*(l.$list.height()/l.listWidth)*s,!0===l.options.verticalSwiping&&(l.swipeLeft=e+o*s),!0!==l.options.fade&&!1!==l.options.touchMove&&(!0===l.animating?(l.swipeLeft=null,!1):void l.setCSS(l.swipeLeft))))},e.prototype.swipeStart=function(i){var e,t=this;if(t.interrupted=!0,1!==t.touchObject.fingerCount||t.slideCount<=t.options.slidesToShow)return t.touchObject={},!1;void 0!==i.originalEvent&&void 0!==i.originalEvent.touches&&(e=i.originalEvent.touches[0]),t.touchObject.startX=t.touchObject.curX=void 0!==e?e.pageX:i.clientX,t.touchObject.startY=t.touchObject.curY=void 0!==e?e.pageY:i.clientY,t.dragging=!0},e.prototype.unfilterSlides=e.prototype.slickUnfilter=function(){var i=this;null!==i.$slidesCache&&(i.unload(),i.$slideTrack.children(this.options.slide).detach(),i.$slidesCache.appendTo(i.$slideTrack),i.reinit())},e.prototype.unload=function(){var e=this;i(".slick-cloned",e.$slider).remove(),e.$dots&&e.$dots.remove(),e.$prevArrow&&e.htmlExpr.test(e.options.prevArrow)&&e.$prevArrow.remove(),e.$nextArrow&&e.htmlExpr.test(e.options.nextArrow)&&e.$nextArrow.remove(),e.$slides.removeClass("slick-slide slick-active slick-visible slick-current").attr("aria-hidden","true").css("width","")},e.prototype.unslick=function(i){var e=this;e.$slider.trigger("unslick",[e,i]),e.destroy()},e.prototype.updateArrows=function(){var i=this;Math.floor(i.options.slidesToShow/2),!0===i.options.arrows&&i.slideCount>i.options.slidesToShow&&!i.options.infinite&&(i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false"),0===i.currentSlide?(i.$prevArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$nextArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-i.options.slidesToShow&&!1===i.options.centerMode?(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")):i.currentSlide>=i.slideCount-1&&!0===i.options.centerMode&&(i.$nextArrow.addClass("slick-disabled").attr("aria-disabled","true"),i.$prevArrow.removeClass("slick-disabled").attr("aria-disabled","false")))},e.prototype.updateDots=function(){var i=this;null!==i.$dots&&(i.$dots.find("li").removeClass("slick-active").end(),i.$dots.find("li").eq(Math.floor(i.currentSlide/i.options.slidesToScroll)).addClass("slick-active"))},e.prototype.visibility=function(){var i=this;i.options.autoplay&&(document[i.hidden]?i.interrupted=!0:i.interrupted=!1)},i.fn.slick=function(){var i,t,o=this,s=arguments[0],n=Array.prototype.slice.call(arguments,1),r=o.length;for(i=0;i<r;i++)if("object"==typeof s||void 0===s?o[i].slick=new e(o[i],s):t=o[i].slick[s].apply(o[i].slick,n),void 0!==t)return t;return o}});
assets/js/extra/velocity.min.js ADDED
@@ -0,0 +1,4 @@
 
 
 
 
1
+ /*! VelocityJS.org (1.5.0). (C) 2014 Julian Shapiro. MIT @license: en.wikipedia.org/wiki/MIT_License */
2
+ /*! VelocityJS.org jQuery Shim (1.0.1). (C) 2014 The jQuery Foundation. MIT @license: en.wikipedia.org/wiki/MIT_License. */
3
+ !function(a){"use strict";function b(a){var b=a.length,d=c.type(a);return"function"!==d&&!c.isWindow(a)&&(!(1!==a.nodeType||!b)||("array"===d||0===b||"number"==typeof b&&b>0&&b-1 in a))}if(!a.jQuery){var c=function(a,b){return new c.fn.init(a,b)};c.isWindow=function(a){return a&&a===a.window},c.type=function(a){return a?"object"==typeof a||"function"==typeof a?e[g.call(a)]||"object":typeof a:a+""},c.isArray=Array.isArray||function(a){return"array"===c.type(a)},c.isPlainObject=function(a){var b;if(!a||"object"!==c.type(a)||a.nodeType||c.isWindow(a))return!1;try{if(a.constructor&&!f.call(a,"constructor")&&!f.call(a.constructor.prototype,"isPrototypeOf"))return!1}catch(d){return!1}for(b in a);return b===undefined||f.call(a,b)},c.each=function(a,c,d){var e=0,f=a.length,g=b(a);if(d){if(g)for(;e<f&&c.apply(a[e],d)!==!1;e++);else for(e in a)if(a.hasOwnProperty(e)&&c.apply(a[e],d)===!1)break}else if(g)for(;e<f&&c.call(a[e],e,a[e])!==!1;e++);else for(e in a)if(a.hasOwnProperty(e)&&c.call(a[e],e,a[e])===!1)break;return a},c.data=function(a,b,e){if(e===undefined){var f=a[c.expando],g=f&&d[f];if(b===undefined)return g;if(g&&b in g)return g[b]}else if(b!==undefined){var h=a[c.expando]||(a[c.expando]=++c.uuid);return d[h]=d[h]||{},d[h][b]=e,e}},c.removeData=function(a,b){var e=a[c.expando],f=e&&d[e];f&&(b?c.each(b,function(a,b){delete f[b]}):delete d[e])},c.extend=function(){var a,b,d,e,f,g,h=arguments[0]||{},i=1,j=arguments.length,k=!1;for("boolean"==typeof h&&(k=h,h=arguments[i]||{},i++),"object"!=typeof h&&"function"!==c.type(h)&&(h={}),i===j&&(h=this,i--);i<j;i++)if(f=arguments[i])for(e in f)f.hasOwnProperty(e)&&(a=h[e],d=f[e],h!==d&&(k&&d&&(c.isPlainObject(d)||(b=c.isArray(d)))?(b?(b=!1,g=a&&c.isArray(a)?a:[]):g=a&&c.isPlainObject(a)?a:{},h[e]=c.extend(k,g,d)):d!==undefined&&(h[e]=d)));return h},c.queue=function(a,d,e){if(a){d=(d||"fx")+"queue";var f=c.data(a,d);return e?(!f||c.isArray(e)?f=c.data(a,d,function(a,c){var d=c||[];return a&&(b(Object(a))?function(a,b){for(var c=+b.length,d=0,e=a.length;d<c;)a[e++]=b[d++];if(c!==c)for(;b[d]!==undefined;)a[e++]=b[d++];a.length=e,a}(d,"string"==typeof a?[a]:a):[].push.call(d,a)),d}(e)):f.push(e),f):f||[]}},c.dequeue=function(a,b){c.each(a.nodeType?[a]:a,function(a,d){b=b||"fx";var e=c.queue(d,b),f=e.shift();"inprogress"===f&&(f=e.shift()),f&&("fx"===b&&e.unshift("inprogress"),f.call(d,function(){c.dequeue(d,b)}))})},c.fn=c.prototype={init:function(a){if(a.nodeType)return this[0]=a,this;throw new Error("Not a DOM node.")},offset:function(){var b=this[0].getBoundingClientRect?this[0].getBoundingClientRect():{top:0,left:0};return{top:b.top+(a.pageYOffset||document.scrollTop||0)-(document.clientTop||0),left:b.left+(a.pageXOffset||document.scrollLeft||0)-(document.clientLeft||0)}},position:function(){var a=this[0],b=function(a){for(var b=a.offsetParent;b&&"html"!==b.nodeName.toLowerCase()&&b.style&&"static"===b.style.position;)b=b.offsetParent;return b||document}(a),d=this.offset(),e=/^(?:body|html)$/i.test(b.nodeName)?{top:0,left:0}:c(b).offset();return d.top-=parseFloat(a.style.marginTop)||0,d.left-=parseFloat(a.style.marginLeft)||0,b.style&&(e.top+=parseFloat(b.style.borderTopWidth)||0,e.left+=parseFloat(b.style.borderLeftWidth)||0),{top:d.top-e.top,left:d.left-e.left}}};var d={};c.expando="velocity"+(new Date).getTime(),c.uuid=0;for(var e={},f=e.hasOwnProperty,g=e.toString,h="Boolean Number String Function Array Date RegExp Object Error".split(" "),i=0;i<h.length;i++)e["[object "+h[i]+"]"]=h[i].toLowerCase();c.fn.init.prototype=c.fn,a.Velocity={Utilities:c}}}(window),function(a){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=a():"function"==typeof define&&define.amd?define(a):a()}(function(){"use strict";return function(a,b,c,d){function e(a){for(var b=-1,c=a?a.length:0,d=[];++b<c;){var e=a[b];e&&d.push(e)}return d}function f(a){return u.isWrapped(a)?a=s.call(a):u.isNode(a)&&(a=[a]),a}function g(a){var b=o.data(a,"velocity");return null===b?d:b}function h(a,b){var c=g(a);c&&c.delayTimer&&!c.delayPaused&&(c.delayRemaining=c.delay-b+c.delayBegin,c.delayPaused=!0,clearTimeout(c.delayTimer.setTimeout))}function i(a,b){var c=g(a);c&&c.delayTimer&&c.delayPaused&&(c.delayPaused=!1,c.delayTimer.setTimeout=setTimeout(c.delayTimer.next,c.delayRemaining))}function j(a){return function(b){return Math.round(b*a)*(1/a)}}function k(a,c,d,e){function f(a,b){return 1-3*b+3*a}function g(a,b){return 3*b-6*a}function h(a){return 3*a}function i(a,b,c){return((f(b,c)*a+g(b,c))*a+h(b))*a}function j(a,b,c){return 3*f(b,c)*a*a+2*g(b,c)*a+h(b)}function k(b,c){for(var e=0;e<p;++e){var f=j(c,a,d);if(0===f)return c;c-=(i(c,a,d)-b)/f}return c}function l(){for(var b=0;b<t;++b)x[b]=i(b*u,a,d)}function m(b,c,e){var f,g,h=0;do{g=c+(e-c)/2,f=i(g,a,d)-b,f>0?e=g:c=g}while(Math.abs(f)>r&&++h<s);return g}function n(b){for(var c=0,e=1,f=t-1;e!==f&&x[e]<=b;++e)c+=u;--e;var g=(b-x[e])/(x[e+1]-x[e]),h=c+g*u,i=j(h,a,d);return i>=q?k(b,h):0===i?h:m(b,c,c+u)}function o(){y=!0,a===c&&d===e||l()}var p=4,q=.001,r=1e-7,s=10,t=11,u=1/(t-1),v="Float32Array"in b;if(4!==arguments.length)return!1;for(var w=0;w<4;++w)if("number"!=typeof arguments[w]||isNaN(arguments[w])||!isFinite(arguments[w]))return!1;a=Math.min(a,1),d=Math.min(d,1),a=Math.max(a,0),d=Math.max(d,0);var x=v?new Float32Array(t):new Array(t),y=!1,z=function(b){return y||o(),a===c&&d===e?b:0===b?0:1===b?1:i(n(b),c,e)};z.getControlPoints=function(){return[{x:a,y:c},{x:d,y:e}]};var A="generateBezier("+[a,c,d,e]+")";return z.toString=function(){return A},z}function l(a,b){var c=a;return u.isString(a)?y.Easings[a]||(c=!1):c=u.isArray(a)&&1===a.length?j.apply(null,a):u.isArray(a)&&2===a.length?z.apply(null,a.concat([b])):!(!u.isArray(a)||4!==a.length)&&k.apply(null,a),c===!1&&(c=y.Easings[y.defaults.easing]?y.defaults.easing:x),c}function m(a){if(a){var b=y.timestamp&&a!==!0?a:r.now(),c=y.State.calls.length;c>1e4&&(y.State.calls=e(y.State.calls),c=y.State.calls.length);for(var f=0;f<c;f++)if(y.State.calls[f]){var h=y.State.calls[f],i=h[0],j=h[2],k=h[3],l=!!k,q=null,s=h[5],t=h[6];if(k||(k=y.State.calls[f][3]=b-16),s){if(s.resume!==!0)continue;k=h[3]=Math.round(b-t-16),h[5]=null}t=h[6]=b-k;for(var v=Math.min(t/j.duration,1),w=0,x=i.length;w<x;w++){var z=i[w],B=z.element;if(g(B)){var D=!1;if(j.display!==d&&null!==j.display&&"none"!==j.display){if("flex"===j.display){var E=["-webkit-box","-moz-box","-ms-flexbox","-webkit-flex"];o.each(E,function(a,b){A.setPropertyValue(B,"display",b)})}A.setPropertyValue(B,"display",j.display)}j.visibility!==d&&"hidden"!==j.visibility&&A.setPropertyValue(B,"visibility",j.visibility);for(var F in z)if(z.hasOwnProperty(F)&&"element"!==F){var G,H=z[F],I=u.isString(H.easing)?y.Easings[H.easing]:H.easing;if(u.isString(H.pattern)){var J=1===v?function(a,b,c){var d=H.endValue[b];return c?Math.round(d):d}:function(a,b,c){var d=H.startValue[b],e=H.endValue[b]-d,f=d+e*I(v,j,e);return c?Math.round(f):f};G=H.pattern.replace(/{(\d+)(!)?}/g,J)}else if(1===v)G=H.endValue;else{var K=H.endValue-H.startValue;G=H.startValue+K*I(v,j,K)}if(!l&&G===H.currentValue)continue;if(H.currentValue=G,"tween"===F)q=G;else{var L;if(A.Hooks.registered[F]){L=A.Hooks.getRoot(F);var M=g(B).rootPropertyValueCache[L];M&&(H.rootPropertyValue=M)}var N=A.setPropertyValue(B,F,H.currentValue+(p<9&&0===parseFloat(G)?"":H.unitType),H.rootPropertyValue,H.scrollData);A.Hooks.registered[F]&&(A.Normalizations.registered[L]?g(B).rootPropertyValueCache[L]=A.Normalizations.registered[L]("extract",null,N[1]):g(B).rootPropertyValueCache[L]=N[1]),"transform"===N[0]&&(D=!0)}}j.mobileHA&&g(B).transformCache.translate3d===d&&(g(B).transformCache.translate3d="(0px, 0px, 0px)",D=!0),D&&A.flushTransformCache(B)}}j.display!==d&&"none"!==j.display&&(y.State.calls[f][2].display=!1),j.visibility!==d&&"hidden"!==j.visibility&&(y.State.calls[f][2].visibility=!1),j.progress&&j.progress.call(h[1],h[1],v,Math.max(0,k+j.duration-b),k,q),1===v&&n(f)}}y.State.isTicking&&C(m)}function n(a,b){if(!y.State.calls[a])return!1;for(var c=y.State.calls[a][0],e=y.State.calls[a][1],f=y.State.calls[a][2],h=y.State.calls[a][4],i=!1,j=0,k=c.length;j<k;j++){var l=c[j].element;b||f.loop||("none"===f.display&&A.setPropertyValue(l,"display",f.display),"hidden"===f.visibility&&A.setPropertyValue(l,"visibility",f.visibility));var m=g(l);if(f.loop!==!0&&(o.queue(l)[1]===d||!/\.velocityQueueEntryFlag/i.test(o.queue(l)[1]))&&m){m.isAnimating=!1,m.rootPropertyValueCache={};var n=!1;o.each(A.Lists.transforms3D,function(a,b){var c=/^scale/.test(b)?1:0,e=m.transformCache[b];m.transformCache[b]!==d&&new RegExp("^\\("+c+"[^.]").test(e)&&(n=!0,delete m.transformCache[b])}),f.mobileHA&&(n=!0,delete m.transformCache.translate3d),n&&A.flushTransformCache(l),A.Values.removeClass(l,"velocity-animating")}if(!b&&f.complete&&!f.loop&&j===k-1)try{f.complete.call(e,e)}catch(r){setTimeout(function(){throw r},1)}h&&f.loop!==!0&&h(e),m&&f.loop===!0&&!b&&(o.each(m.tweensContainer,function(a,b){if(/^rotate/.test(a)&&(parseFloat(b.startValue)-parseFloat(b.endValue))%360==0){var c=b.startValue;b.startValue=b.endValue,b.endValue=c}/^backgroundPosition/.test(a)&&100===parseFloat(b.endValue)&&"%"===b.unitType&&(b.endValue=0,b.startValue=100)}),y(l,"reverse",{loop:!0,delay:f.delay})),f.queue!==!1&&o.dequeue(l,f.queue)}y.State.calls[a]=!1;for(var p=0,q=y.State.calls.length;p<q;p++)if(y.State.calls[p]!==!1){i=!0;break}i===!1&&(y.State.isTicking=!1,delete y.State.calls,y.State.calls=[])}var o,p=function(){if(c.documentMode)return c.documentMode;for(var a=7;a>4;a--){var b=c.createElement("div");if(b.innerHTML="<!--[if IE "+a+"]><span></span><![endif]-->",b.getElementsByTagName("span").length)return b=null,a}return d}(),q=function(){var a=0;return b.webkitRequestAnimationFrame||b.mozRequestAnimationFrame||function(b){var c,d=(new Date).getTime();return c=Math.max(0,16-(d-a)),a=d+c,setTimeout(function(){b(d+c)},c)}}(),r=function(){var a=b.performance||{};if("function"!=typeof a.now){var c=a.timing&&a.timing.navigationStart?a.timing.navigationStart:(new Date).getTime();a.now=function(){return(new Date).getTime()-c}}return a}(),s=function(){var a=Array.prototype.slice;try{return a.call(c.documentElement),a}catch(b){return function(b,c){var d=this.length;if("number"!=typeof b&&(b=0),"number"!=typeof c&&(c=d),this.slice)return a.call(this,b,c);var e,f=[],g=b>=0?b:Math.max(0,d+b),h=c<0?d+c:Math.min(c,d),i=h-g;if(i>0)if(f=new Array(i),this.charAt)for(e=0;e<i;e++)f[e]=this.charAt(g+e);else for(e=0;e<i;e++)f[e]=this[g+e];return f}}}(),t=function(){return Array.prototype.includes?function(a,b){return a.includes(b)}:Array.prototype.indexOf?function(a,b){return a.indexOf(b)>=0}:function(a,b){for(var c=0;c<a.length;c++)if(a[c]===b)return!0;return!1}},u={isNumber:function(a){return"number"==typeof a},isString:function(a){return"string"==typeof a},isArray:Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},isFunction:function(a){return"[object Function]"===Object.prototype.toString.call(a)},isNode:function(a){return a&&a.nodeType},isWrapped:function(a){return a&&a!==b&&u.isNumber(a.length)&&!u.isString(a)&&!u.isFunction(a)&&!u.isNode(a)&&(0===a.length||u.isNode(a[0]))},isSVG:function(a){return b.SVGElement&&a instanceof b.SVGElement},isEmptyObject:function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0}},v=!1;if(a.fn&&a.fn.jquery?(o=a,v=!0):o=b.Velocity.Utilities,p<=8&&!v)throw new Error("Velocity: IE8 and below require jQuery to be loaded before Velocity.");if(p<=7)return void(jQuery.fn.velocity=jQuery.fn.animate);var w=400,x="swing",y={State:{isMobile:/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent),isAndroid:/Android/i.test(navigator.userAgent),isGingerbread:/Android 2\.3\.[3-7]/i.test(navigator.userAgent),isChrome:b.chrome,isFirefox:/Firefox/i.test(navigator.userAgent),prefixElement:c.createElement("div"),prefixMatches:{},scrollAnchor:null,scrollPropertyLeft:null,scrollPropertyTop:null,isTicking:!1,calls:[],delayedElements:{count:0}},CSS:{},Utilities:o,Redirects:{},Easings:{},Promise:b.Promise,defaults:{queue:"",duration:w,easing:x,begin:d,complete:d,progress:d,display:d,visibility:d,loop:!1,delay:!1,mobileHA:!0,_cacheValues:!0,promiseRejectEmpty:!0},init:function(a){o.data(a,"velocity",{isSVG:u.isSVG(a),isAnimating:!1,computedStyle:null,tweensContainer:null,rootPropertyValueCache:{},transformCache:{}})},hook:null,mock:!1,version:{major:1,minor:5,patch:0},debug:!1,timestamp:!0,pauseAll:function(a){var b=(new Date).getTime();o.each(y.State.calls,function(b,c){if(c){if(a!==d&&(c[2].queue!==a||c[2].queue===!1))return!0;c[5]={resume:!1}}}),o.each(y.State.delayedElements,function(a,c){c&&h(c,b)})},resumeAll:function(a){var b=(new Date).getTime();o.each(y.State.calls,function(b,c){if(c){if(a!==d&&(c[2].queue!==a||c[2].queue===!1))return!0;c[5]&&(c[5].resume=!0)}}),o.each(y.State.delayedElements,function(a,c){c&&i(c,b)})}};b.pageYOffset!==d?(y.State.scrollAnchor=b,y.State.scrollPropertyLeft="pageXOffset",y.State.scrollPropertyTop="pageYOffset"):(y.State.scrollAnchor=c.documentElement||c.body.parentNode||c.body,y.State.scrollPropertyLeft="scrollLeft",y.State.scrollPropertyTop="scrollTop");var z=function(){function a(a){return-a.tension*a.x-a.friction*a.v}function b(b,c,d){var e={x:b.x+d.dx*c,v:b.v+d.dv*c,tension:b.tension,friction:b.friction};return{dx:e.v,dv:a(e)}}function c(c,d){var e={dx:c.v,dv:a(c)},f=b(c,.5*d,e),g=b(c,.5*d,f),h=b(c,d,g),i=1/6*(e.dx+2*(f.dx+g.dx)+h.dx),j=1/6*(e.dv+2*(f.dv+g.dv)+h.dv);return c.x=c.x+i*d,c.v=c.v+j*d,c}return function d(a,b,e){var f,g,h,i={x:-1,v:0,tension:null,friction:null},j=[0],k=0;for(a=parseFloat(a)||500,b=parseFloat(b)||20,e=e||null,i.tension=a,i.friction=b,f=null!==e,f?(k=d(a,b),g=k/e*.016):g=.016;;)if(h=c(h||i,g),j.push(1+h.x),k+=16,!(Math.abs(h.x)>1e-4&&Math.abs(h.v)>1e-4))break;return f?function(a){return j[a*(j.length-1)|0]}:k}}();y.Easings={linear:function(a){return a},swing:function(a){return.5-Math.cos(a*Math.PI)/2},spring:function(a){return 1-Math.cos(4.5*a*Math.PI)*Math.exp(6*-a)}},o.each([["ease",[.25,.1,.25,1]],["ease-in",[.42,0,1,1]],["ease-out",[0,0,.58,1]],["ease-in-out",[.42,0,.58,1]],["easeInSine",[.47,0,.745,.715]],["easeOutSine",[.39,.575,.565,1]],["easeInOutSine",[.445,.05,.55,.95]],["easeInQuad",[.55,.085,.68,.53]],["easeOutQuad",[.25,.46,.45,.94]],["easeInOutQuad",[.455,.03,.515,.955]],["easeInCubic",[.55,.055,.675,.19]],["easeOutCubic",[.215,.61,.355,1]],["easeInOutCubic",[.645,.045,.355,1]],["easeInQuart",[.895,.03,.685,.22]],["easeOutQuart",[.165,.84,.44,1]],["easeInOutQuart",[.77,0,.175,1]],["easeInQuint",[.755,.05,.855,.06]],["easeOutQuint",[.23,1,.32,1]],["easeInOutQuint",[.86,0,.07,1]],["easeInExpo",[.95,.05,.795,.035]],["easeOutExpo",[.19,1,.22,1]],["easeInOutExpo",[1,0,0,1]],["easeInCirc",[.6,.04,.98,.335]],["easeOutCirc",[.075,.82,.165,1]],["easeInOutCirc",[.785,.135,.15,.86]]],function(a,b){y.Easings[b[0]]=k.apply(null,b[1])});var A=y.CSS={RegEx:{isHex:/^#([A-f\d]{3}){1,2}$/i,valueUnwrap:/^[A-z]+\((.*)\)$/i,wrappedValueAlreadyExtracted:/[0-9.]+ [0-9.]+ [0-9.]+( [0-9.]+)?/,valueSplit:/([A-z]+\(.+\))|(([A-z0-9#-.]+?)(?=\s|$))/gi},Lists:{colors:["fill","stroke","stopColor","color","backgroundColor","borderColor","borderTopColor","borderRightColor","borderBottomColor","borderLeftColor","outlineColor"],transformsBase:["translateX","translateY","scale","scaleX","scaleY","skewX","skewY","rotateZ"],transforms3D:["transformPerspective","translateZ","scaleZ","rotateX","rotateY"],units:["%","em","ex","ch","rem","vw","vh","vmin","vmax","cm","mm","Q","in","pc","pt","px","deg","grad","rad","turn","s","ms"],colorNames:{aliceblue:"240,248,255",antiquewhite:"250,235,215",aquamarine:"127,255,212",aqua:"0,255,255",azure:"240,255,255",beige:"245,245,220",bisque:"255,228,196",black:"0,0,0",blanchedalmond:"255,235,205",blueviolet:"138,43,226",blue:"0,0,255",brown:"165,42,42",burlywood:"222,184,135",cadetblue:"95,158,160",chartreuse:"127,255,0",chocolate:"210,105,30",coral:"255,127,80",cornflowerblue:"100,149,237",cornsilk:"255,248,220",crimson:"220,20,60",cyan:"0,255,255",darkblue:"0,0,139",darkcyan:"0,139,139",darkgoldenrod:"184,134,11",darkgray:"169,169,169",darkgrey:"169,169,169",darkgreen:"0,100,0",darkkhaki:"189,183,107",darkmagenta:"139,0,139",darkolivegreen:"85,107,47",darkorange:"255,140,0",darkorchid:"153,50,204",darkred:"139,0,0",darksalmon:"233,150,122",darkseagreen:"143,188,143",darkslateblue:"72,61,139",darkslategray:"47,79,79",darkturquoise:"0,206,209",darkviolet:"148,0,211",deeppink:"255,20,147",deepskyblue:"0,191,255",dimgray:"105,105,105",dimgrey:"105,105,105",dodgerblue:"30,144,255",firebrick:"178,34,34",floralwhite:"255,250,240",forestgreen:"34,139,34",fuchsia:"255,0,255",gainsboro:"220,220,220",ghostwhite:"248,248,255",gold:"255,215,0",goldenrod:"218,165,32",gray:"128,128,128",grey:"128,128,128",greenyellow:"173,255,47",green:"0,128,0",honeydew:"240,255,240",hotpink:"255,105,180",indianred:"205,92,92",indigo:"75,0,130",ivory:"255,255,240",khaki:"240,230,140",lavenderblush:"255,240,245",lavender:"230,230,250",lawngreen:"124,252,0",lemonchiffon:"255,250,205",lightblue:"173,216,230",lightcoral:"240,128,128",lightcyan:"224,255,255",lightgoldenrodyellow:"250,250,210",lightgray:"211,211,211",lightgrey:"211,211,211",lightgreen:"144,238,144",lightpink:"255,182,193",lightsalmon:"255,160,122",lightseagreen:"32,178,170",lightskyblue:"135,206,250",lightslategray:"119,136,153",lightsteelblue:"176,196,222",lightyellow:"255,255,224",limegreen:"50,205,50",lime:"0,255,0",linen:"250,240,230",magenta:"255,0,255",maroon:"128,0,0",mediumaquamarine:"102,205,170",mediumblue:"0,0,205",mediumorchid:"186,85,211",mediumpurple:"147,112,219",mediumseagreen:"60,179,113",mediumslateblue:"123,104,238",mediumspringgreen:"0,250,154",mediumturquoise:"72,209,204",mediumvioletred:"199,21,133",midnightblue:"25,25,112",mintcream:"245,255,250",mistyrose:"255,228,225",moccasin:"255,228,181",navajowhite:"255,222,173",navy:"0,0,128",oldlace:"253,245,230",olivedrab:"107,142,35",olive:"128,128,0",orangered:"255,69,0",orange:"255,165,0",orchid:"218,112,214",palegoldenrod:"238,232,170",palegreen:"152,251,152",paleturquoise:"175,238,238",palevioletred:"219,112,147",papayawhip:"255,239,213",peachpuff:"255,218,185",peru:"205,133,63",pink:"255,192,203",plum:"221,160,221",powderblue:"176,224,230",purple:"128,0,128",red:"255,0,0",rosybrown:"188,143,143",royalblue:"65,105,225",saddlebrown:"139,69,19",salmon:"250,128,114",sandybrown:"244,164,96",seagreen:"46,139,87",seashell:"255,245,238",sienna:"160,82,45",silver:"192,192,192",skyblue:"135,206,235",slateblue:"106,90,205",slategray:"112,128,144",snow:"255,250,250",springgreen:"0,255,127",steelblue:"70,130,180",tan:"210,180,140",teal:"0,128,128",thistle:"216,191,216",tomato:"255,99,71",turquoise:"64,224,208",violet:"238,130,238",wheat:"245,222,179",whitesmoke:"245,245,245",white:"255,255,255",yellowgreen:"154,205,50",yellow:"255,255,0"}},Hooks:{templates:{textShadow:["Color X Y Blur","black 0px 0px 0px"],boxShadow:["Color X Y Blur Spread","black 0px 0px 0px 0px"],clip:["Top Right Bottom Left","0px 0px 0px 0px"],backgroundPosition:["X Y","0% 0%"],transformOrigin:["X Y Z","50% 50% 0px"],perspectiveOrigin:["X Y","50% 50%"]},registered:{},register:function(){for(var a=0;a<A.Lists.colors.length;a++){var b="color"===A.Lists.colors[a]?"0 0 0 1":"255 255 255 1";A.Hooks.templates[A.Lists.colors[a]]=["Red Green Blue Alpha",b]}var c,d,e;if(p)for(c in A.Hooks.templates)if(A.Hooks.templates.hasOwnProperty(c)){d=A.Hooks.templates[c],e=d[0].split(" ");var f=d[1].match(A.RegEx.valueSplit);"Color"===e[0]&&(e.push(e.shift()),f.push(f.shift()),A.Hooks.templates[c]=[e.join(" "),f.join(" ")])}for(c in A.Hooks.templates)if(A.Hooks.templates.hasOwnProperty(c)){d=A.Hooks.templates[c],e=d[0].split(" ");for(var g in e)if(e.hasOwnProperty(g)){var h=c+e[g],i=g;A.Hooks.registered[h]=[c,i]}}},getRoot:function(a){var b=A.Hooks.registered[a];return b?b[0]:a},getUnit:function(a,b){var c=(a.substr(b||0,5).match(/^[a-z%]+/)||[])[0]||"";return c&&t(A.Lists.units,c)?c:""},fixColors:function(a){return a.replace(/(rgba?\(\s*)?(\b[a-z]+\b)/g,function(a,b,c){return A.Lists.colorNames.hasOwnProperty(c)?(b?b:"rgba(")+A.Lists.colorNames[c]+(b?"":",1)"):b+c})},cleanRootPropertyValue:function(a,b){return A.RegEx.valueUnwrap.test(b)&&(b=b.match(A.RegEx.valueUnwrap)[1]),A.Values.isCSSNullValue(b)&&(b=A.Hooks.templates[a][1]),b},extractValue:function(a,b){var c=A.Hooks.registered[a];if(c){var d=c[0],e=c[1];return b=A.Hooks.cleanRootPropertyValue(d,b),b.toString().match(A.RegEx.valueSplit)[e]}return b},injectValue:function(a,b,c){var d=A.Hooks.registered[a];if(d){var e,f=d[0],g=d[1];return c=A.Hooks.cleanRootPropertyValue(f,c),e=c.toString().match(A.RegEx.valueSplit),e[g]=b,e.join(" ")}return c}},Normalizations:{registered:{clip:function(a,b,c){switch(a){case"name":return"clip";case"extract":var d;return A.RegEx.wrappedValueAlreadyExtracted.test(c)?d=c:(d=c.toString().match(A.RegEx.valueUnwrap),d=d?d[1].replace(/,(\s+)?/g," "):c),d;case"inject":return"rect("+c+")"}},blur:function(a,b,c){switch(a){case"name":return y.State.isFirefox?"filter":"-webkit-filter";case"extract":var d=parseFloat(c);if(!d&&0!==d){var e=c.toString().match(/blur\(([0-9]+[A-z]+)\)/i);d=e?e[1]:0}return d;case"inject":return parseFloat(c)?"blur("+c+")":"none"}},opacity:function(a,b,c){if(p<=8)switch(a){case"name":return"filter";case"extract":var d=c.toString().match(/alpha\(opacity=(.*)\)/i);return c=d?d[1]/100:1;case"inject":return b.style.zoom=1,parseFloat(c)>=1?"":"alpha(opacity="+parseInt(100*parseFloat(c),10)+")"}else switch(a){case"name":return"opacity";case"extract":return c;case"inject":return c}}},register:function(){function a(a,b,c){if("border-box"===A.getPropertyValue(b,"boxSizing").toString().toLowerCase()===(c||!1)){var d,e,f=0,g="width"===a?["Left","Right"]:["Top","Bottom"],h=["padding"+g[0],"padding"+g[1],"border"+g[0]+"Width","border"+g[1]+"Width"];for(d=0;d<h.length;d++)e=parseFloat(A.getPropertyValue(b,h[d])),isNaN(e)||(f+=e);return c?-f:f}return 0}function b(b,c){return function(d,e,f){switch(d){case"name":return b;case"extract":return parseFloat(f)+a(b,e,c);case"inject":return parseFloat(f)-a(b,e,c)+"px"}}}p&&!(p>9)||y.State.isGingerbread||(A.Lists.transformsBase=A.Lists.transformsBase.concat(A.Lists.transforms3D));for(var c=0;c<A.Lists.transformsBase.length;c++)!function(){var a=A.Lists.transformsBase[c];A.Normalizations.registered[a]=function(b,c,e){switch(b){case"name":return"transform";case"extract":return g(c)===d||g(c).transformCache[a]===d?/^scale/i.test(a)?1:0:g(c).transformCache[a].replace(/[()]/g,"");case"inject":var f=!1;switch(a.substr(0,a.length-1)){case"translate":f=!/(%|px|em|rem|vw|vh|\d)$/i.test(e);break;case"scal":case"scale":y.State.isAndroid&&g(c).transformCache[a]===d&&e<1&&(e=1),f=!/(\d)$/i.test(e);break;case"skew":f=!/(deg|\d)$/i.test(e);break;case"rotate":f=!/(deg|\d)$/i.test(e)}return f||(g(c).transformCache[a]="("+e+")"),g(c).transformCache[a]}}}();for(var e=0;e<A.Lists.colors.length;e++)!function(){var a=A.Lists.colors[e];A.Normalizations.registered[a]=function(b,c,e){switch(b){case"name":return a;case"extract":var f;if(A.RegEx.wrappedValueAlreadyExtracted.test(e))f=e;else{var g,h={black:"rgb(0, 0, 0)",blue:"rgb(0, 0, 255)",gray:"rgb(128, 128, 128)",green:"rgb(0, 128, 0)",red:"rgb(255, 0, 0)",white:"rgb(255, 255, 255)"};/^[A-z]+$/i.test(e)?g=h[e]!==d?h[e]:h.black:A.RegEx.isHex.test(e)?g="rgb("+A.Values.hexToRgb(e).join(" ")+")":/^rgba?\(/i.test(e)||(g=h.black),f=(g||e).toString().match(A.RegEx.valueUnwrap)[1].replace(/,(\s+)?/g," ")}return(!p||p>8)&&3===f.split(" ").length&&(f+=" 1"),f;case"inject":return/^rgb/.test(e)?e:(p<=8?4===e.split(" ").length&&(e=e.split(/\s+/).slice(0,3).join(" ")):3===e.split(" ").length&&(e+=" 1"),(p<=8?"rgb":"rgba")+"("+e.replace(/\s+/g,",").replace(/\.(\d)+(?=,)/g,"")+")")}}}();A.Normalizations.registered.innerWidth=b("width",!0),A.Normalizations.registered.innerHeight=b("height",!0),A.Normalizations.registered.outerWidth=b("width"),A.Normalizations.registered.outerHeight=b("height")}},Names:{camelCase:function(a){return a.replace(/-(\w)/g,function(a,b){return b.toUpperCase()})},SVGAttribute:function(a){var b="width|height|x|y|cx|cy|r|rx|ry|x1|x2|y1|y2";return(p||y.State.isAndroid&&!y.State.isChrome)&&(b+="|transform"),new RegExp("^("+b+")$","i").test(a)},prefixCheck:function(a){if(y.State.prefixMatches[a])return[y.State.prefixMatches[a],!0];for(var b=["","Webkit","Moz","ms","O"],c=0,d=b.length;c<d;c++){var e;if(e=0===c?a:b[c]+a.replace(/^\w/,function(a){return a.toUpperCase()}),u.isString(y.State.prefixElement.style[e]))return y.State.prefixMatches[a]=e,[e,!0]}return[a,!1]}},Values:{hexToRgb:function(a){var b,c=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i;return a=a.replace(/^#?([a-f\d])([a-f\d])([a-f\d])$/i,function(a,b,c,d){return b+b+c+c+d+d}),b=c.exec(a),b?[parseInt(b[1],16),parseInt(b[2],16),parseInt(b[3],16)]:[0,0,0]},isCSSNullValue:function(a){return!a||/^(none|auto|transparent|(rgba\(0, ?0, ?0, ?0\)))$/i.test(a)},getUnitType:function(a){return/^(rotate|skew)/i.test(a)?"deg":/(^(scale|scaleX|scaleY|scaleZ|alpha|flexGrow|flexHeight|zIndex|fontWeight)$)|((opacity|red|green|blue|alpha)$)/i.test(a)?"":"px"},getDisplayType:function(a){var b=a&&a.tagName.toString().toLowerCase();return/^(b|big|i|small|tt|abbr|acronym|cite|code|dfn|em|kbd|strong|samp|var|a|bdo|br|img|map|object|q|script|span|sub|sup|button|input|label|select|textarea)$/i.test(b)?"inline":/^(li)$/i.test(b)?"list-item":/^(tr)$/i.test(b)?"table-row":/^(table)$/i.test(b)?"table":/^(tbody)$/i.test(b)?"table-row-group":"block"},addClass:function(a,b){if(a)if(a.classList)a.classList.add(b);else if(u.isString(a.className))a.className+=(a.className.length?" ":"")+b;else{var c=a.getAttribute(p<=7?"className":"class")||"";a.setAttribute("class",c+(c?" ":"")+b)}},removeClass:function(a,b){if(a)if(a.classList)a.classList.remove(b);else if(u.isString(a.className))a.className=a.className.toString().replace(new RegExp("(^|\\s)"+b.split(" ").join("|")+"(\\s|$)","gi")," ");else{var c=a.getAttribute(p<=7?"className":"class")||"";a.setAttribute("class",c.replace(new RegExp("(^|s)"+b.split(" ").join("|")+"(s|$)","gi")," "))}}},getPropertyValue:function(a,c,e,f){function h(a,c){var e=0;if(p<=8)e=o.css(a,c);else{var i=!1;/^(width|height)$/.test(c)&&0===A.getPropertyValue(a,"display")&&(i=!0,A.setPropertyValue(a,"display",A.Values.getDisplayType(a)));var j=function(){i&&A.setPropertyValue(a,"display","none")};if(!f){if("height"===c&&"border-box"!==A.getPropertyValue(a,"boxSizing").toString().toLowerCase()){var k=a.offsetHeight-(parseFloat(A.getPropertyValue(a,"borderTopWidth"))||0)-(parseFloat(A.getPropertyValue(a,"borderBottomWidth"))||0)-(parseFloat(A.getPropertyValue(a,"paddingTop"))||0)-(parseFloat(A.getPropertyValue(a,"paddingBottom"))||0);return j(),k}if("width"===c&&"border-box"!==A.getPropertyValue(a,"boxSizing").toString().toLowerCase()){var l=a.offsetWidth-(parseFloat(A.getPropertyValue(a,"borderLeftWidth"))||0)-(parseFloat(A.getPropertyValue(a,"borderRightWidth"))||0)-(parseFloat(A.getPropertyValue(a,"paddingLeft"))||0)-(parseFloat(A.getPropertyValue(a,"paddingRight"))||0);return j(),l}}var m;m=g(a)===d?b.getComputedStyle(a,null):g(a).computedStyle?g(a).computedStyle:g(a).computedStyle=b.getComputedStyle(a,null),"borderColor"===c&&(c="borderTopColor"),e=9===p&&"filter"===c?m.getPropertyValue(c):m[c],""!==e&&null!==e||(e=a.style[c]),j()}if("auto"===e&&/^(top|right|bottom|left)$/i.test(c)){var n=h(a,"position");("fixed"===n||"absolute"===n&&/top|left/i.test(c))&&(e=o(a).position()[c]+"px")}return e}var i;if(A.Hooks.registered[c]){var j=c,k=A.Hooks.getRoot(j);e===d&&(e=A.getPropertyValue(a,A.Names.prefixCheck(k)[0])),A.Normalizations.registered[k]&&(e=A.Normalizations.registered[k]("extract",a,e)),i=A.Hooks.extractValue(j,e)}else if(A.Normalizations.registered[c]){var l,m;l=A.Normalizations.registered[c]("name",a),"transform"!==l&&(m=h(a,A.Names.prefixCheck(l)[0]),A.Values.isCSSNullValue(m)&&A.Hooks.templates[c]&&(m=A.Hooks.templates[c][1])),i=A.Normalizations.registered[c]("extract",a,m)}if(!/^[\d-]/.test(i)){var n=g(a);if(n&&n.isSVG&&A.Names.SVGAttribute(c))if(/^(height|width)$/i.test(c))try{i=a.getBBox()[c]}catch(q){i=0}else i=a.getAttribute(c);else i=h(a,A.Names.prefixCheck(c)[0])}return A.Values.isCSSNullValue(i)&&(i=0),y.debug>=2&&console.log("Get "+c+": "+i),i},setPropertyValue:function(a,c,d,e,f){var h=c;if("scroll"===c)f.container?f.container["scroll"+f.direction]=d:"Left"===f.direction?b.scrollTo(d,f.alternateValue):b.scrollTo(f.alternateValue,d);else if(A.Normalizations.registered[c]&&"transform"===A.Normalizations.registered[c]("name",a))A.Normalizations.registered[c]("inject",a,d),h="transform",d=g(a).transformCache[c];else{if(A.Hooks.registered[c]){var i=c,j=A.Hooks.getRoot(c);e=e||A.getPropertyValue(a,j),d=A.Hooks.injectValue(i,d,e),c=j}if(A.Normalizations.registered[c]&&(d=A.Normalizations.registered[c]("inject",a,d),c=A.Normalizations.registered[c]("name",a)),h=A.Names.prefixCheck(c)[0],p<=8)try{a.style[h]=d}catch(l){y.debug&&console.log("Browser does not support ["+d+"] for ["+h+"]")}else{var k=g(a);k&&k.isSVG&&A.Names.SVGAttribute(c)?a.setAttribute(c,d):a.style[h]=d}y.debug>=2&&console.log("Set "+c+" ("+h+"): "+d)}return[h,d]},flushTransformCache:function(a){var b="",c=g(a);if((p||y.State.isAndroid&&!y.State.isChrome)&&c&&c.isSVG){var d=function(b){return parseFloat(A.getPropertyValue(a,b))},e={translate:[d("translateX"),d("translateY")],skewX:[d("skewX")],skewY:[d("skewY")],scale:1!==d("scale")?[d("scale"),d("scale")]:[d("scaleX"),d("scaleY")],rotate:[d("rotateZ"),0,0]};o.each(g(a).transformCache,function(a){/^translate/i.test(a)?a="translate":/^scale/i.test(a)?a="scale":/^rotate/i.test(a)&&(a="rotate"),e[a]&&(b+=a+"("+e[a].join(" ")+") ",delete e[a])})}else{var f,h;o.each(g(a).transformCache,function(c){if(f=g(a).transformCache[c],"transformPerspective"===c)return h=f,!0;9===p&&"rotateZ"===c&&(c="rotate"),b+=c+f+" "}),h&&(b="perspective"+h+" "+b)}A.setPropertyValue(a,"transform",b)}};A.Hooks.register(),A.Normalizations.register(),y.hook=function(a,b,c){var e;return a=f(a),o.each(a,function(a,f){if(g(f)===d&&y.init(f),c===d)e===d&&(e=A.getPropertyValue(f,b));else{var h=A.setPropertyValue(f,b,c);"transform"===h[0]&&y.CSS.flushTransformCache(f),e=h}}),e};var B=function(){function a(){return k?z.promise||null:p}function e(a,e){function f(f){var k,n;if(i.begin&&0===D)try{i.begin.call(r,r)}catch(V){setTimeout(function(){throw V},1)}if("scroll"===G){var p,q,w,x=/^x$/i.test(i.axis)?"Left":"Top",B=parseFloat(i.offset)||0;i.container?u.isWrapped(i.container)||u.isNode(i.container)?(i.container=i.container[0]||i.container,p=i.container["scroll"+x],w=p+o(a).position()[x.toLowerCase()]+B):i.container=null:(p=y.State.scrollAnchor[y.State["scrollProperty"+x]],q=y.State.scrollAnchor[y.State["scrollProperty"+("Left"===x?"Top":"Left")]],w=o(a).offset()[x.toLowerCase()]+B),j={scroll:{rootPropertyValue:!1,startValue:p,currentValue:p,endValue:w,unitType:"",easing:i.easing,scrollData:{container:i.container,direction:x,alternateValue:q}},element:a},y.debug&&console.log("tweensContainer (scroll): ",j.scroll,a)}else if("reverse"===G){if(!(k=g(a)))return;if(!k.tweensContainer)return void o.dequeue(a,i.queue);"none"===k.opts.display&&(k.opts.display="auto"),"hidden"===k.opts.visibility&&(k.opts.visibility="visible"),k.opts.loop=!1,k.opts.begin=null,k.opts.complete=null,v.easing||delete i.easing,v.duration||delete i.duration,i=o.extend({},k.opts,i),n=o.extend(!0,{},k?k.tweensContainer:null);for(var E in n)if(n.hasOwnProperty(E)&&"element"!==E){var F=n[E].startValue;n[E].startValue=n[E].currentValue=n[E].endValue,n[E].endValue=F,u.isEmptyObject(v)||(n[E].easing=i.easing),y.debug&&console.log("reverse tweensContainer ("+E+"): "+JSON.stringify(n[E]),a)}j=n}else if("start"===G){k=g(a),k&&k.tweensContainer&&k.isAnimating===!0&&(n=k.tweensContainer);var H=function(e,f){var g,l=A.Hooks.getRoot(e),m=!1,p=f[0],q=f[1],r=f[2]
4
+ ;if(!(k&&k.isSVG||"tween"===l||A.Names.prefixCheck(l)[1]!==!1||A.Normalizations.registered[l]!==d))return void(y.debug&&console.log("Skipping ["+l+"] due to a lack of browser support."));(i.display!==d&&null!==i.display&&"none"!==i.display||i.visibility!==d&&"hidden"!==i.visibility)&&/opacity|filter/.test(e)&&!r&&0!==p&&(r=0),i._cacheValues&&n&&n[e]?(r===d&&(r=n[e].endValue+n[e].unitType),m=k.rootPropertyValueCache[l]):A.Hooks.registered[e]?r===d?(m=A.getPropertyValue(a,l),r=A.getPropertyValue(a,e,m)):m=A.Hooks.templates[l][1]:r===d&&(r=A.getPropertyValue(a,e));var s,t,v,w=!1,x=function(a,b){var c,d;return d=(b||"0").toString().toLowerCase().replace(/[%A-z]+$/,function(a){return c=a,""}),c||(c=A.Values.getUnitType(a)),[d,c]};if(r!==p&&u.isString(r)&&u.isString(p)){g="";var z=0,B=0,C=[],D=[],E=0,F=0,G=0;for(r=A.Hooks.fixColors(r),p=A.Hooks.fixColors(p);z<r.length&&B<p.length;){var H=r[z],I=p[B];if(/[\d\.-]/.test(H)&&/[\d\.-]/.test(I)){for(var J=H,K=I,L=".",N=".";++z<r.length;){if((H=r[z])===L)L="..";else if(!/\d/.test(H))break;J+=H}for(;++B<p.length;){if((I=p[B])===N)N="..";else if(!/\d/.test(I))break;K+=I}var O=A.Hooks.getUnit(r,z),P=A.Hooks.getUnit(p,B);if(z+=O.length,B+=P.length,O===P)J===K?g+=J+O:(g+="{"+C.length+(F?"!":"")+"}"+O,C.push(parseFloat(J)),D.push(parseFloat(K)));else{var Q=parseFloat(J),R=parseFloat(K);g+=(E<5?"calc":"")+"("+(Q?"{"+C.length+(F?"!":"")+"}":"0")+O+" + "+(R?"{"+(C.length+(Q?1:0))+(F?"!":"")+"}":"0")+P+")",Q&&(C.push(Q),D.push(0)),R&&(C.push(0),D.push(R))}}else{if(H!==I){E=0;break}g+=H,z++,B++,0===E&&"c"===H||1===E&&"a"===H||2===E&&"l"===H||3===E&&"c"===H||E>=4&&"("===H?E++:(E&&E<5||E>=4&&")"===H&&--E<5)&&(E=0),0===F&&"r"===H||1===F&&"g"===H||2===F&&"b"===H||3===F&&"a"===H||F>=3&&"("===H?(3===F&&"a"===H&&(G=1),F++):G&&","===H?++G>3&&(F=G=0):(G&&F<(G?5:4)||F>=(G?4:3)&&")"===H&&--F<(G?5:4))&&(F=G=0)}}z===r.length&&B===p.length||(y.debug&&console.error('Trying to pattern match mis-matched strings ["'+p+'", "'+r+'"]'),g=d),g&&(C.length?(y.debug&&console.log('Pattern found "'+g+'" -> ',C,D,"["+r+","+p+"]"),r=C,p=D,t=v=""):g=d)}g||(s=x(e,r),r=s[0],v=s[1],s=x(e,p),p=s[0].replace(/^([+-\/*])=/,function(a,b){return w=b,""}),t=s[1],r=parseFloat(r)||0,p=parseFloat(p)||0,"%"===t&&(/^(fontSize|lineHeight)$/.test(e)?(p/=100,t="em"):/^scale/.test(e)?(p/=100,t=""):/(Red|Green|Blue)$/i.test(e)&&(p=p/100*255,t="")));if(/[\/*]/.test(w))t=v;else if(v!==t&&0!==r)if(0===p)t=v;else{h=h||function(){var d={myParent:a.parentNode||c.body,position:A.getPropertyValue(a,"position"),fontSize:A.getPropertyValue(a,"fontSize")},e=d.position===M.lastPosition&&d.myParent===M.lastParent,f=d.fontSize===M.lastFontSize;M.lastParent=d.myParent,M.lastPosition=d.position,M.lastFontSize=d.fontSize;var g={};if(f&&e)g.emToPx=M.lastEmToPx,g.percentToPxWidth=M.lastPercentToPxWidth,g.percentToPxHeight=M.lastPercentToPxHeight;else{var h=k&&k.isSVG?c.createElementNS("http://www.w3.org/2000/svg","rect"):c.createElement("div");y.init(h),d.myParent.appendChild(h),o.each(["overflow","overflowX","overflowY"],function(a,b){y.CSS.setPropertyValue(h,b,"hidden")}),y.CSS.setPropertyValue(h,"position",d.position),y.CSS.setPropertyValue(h,"fontSize",d.fontSize),y.CSS.setPropertyValue(h,"boxSizing","content-box"),o.each(["minWidth","maxWidth","width","minHeight","maxHeight","height"],function(a,b){y.CSS.setPropertyValue(h,b,"100%")}),y.CSS.setPropertyValue(h,"paddingLeft","100em"),g.percentToPxWidth=M.lastPercentToPxWidth=(parseFloat(A.getPropertyValue(h,"width",null,!0))||1)/100,g.percentToPxHeight=M.lastPercentToPxHeight=(parseFloat(A.getPropertyValue(h,"height",null,!0))||1)/100,g.emToPx=M.lastEmToPx=(parseFloat(A.getPropertyValue(h,"paddingLeft"))||1)/100,d.myParent.removeChild(h)}return null===M.remToPx&&(M.remToPx=parseFloat(A.getPropertyValue(c.body,"fontSize"))||16),null===M.vwToPx&&(M.vwToPx=parseFloat(b.innerWidth)/100,M.vhToPx=parseFloat(b.innerHeight)/100),g.remToPx=M.remToPx,g.vwToPx=M.vwToPx,g.vhToPx=M.vhToPx,y.debug>=1&&console.log("Unit ratios: "+JSON.stringify(g),a),g}();var S=/margin|padding|left|right|width|text|word|letter/i.test(e)||/X$/.test(e)||"x"===e?"x":"y";switch(v){case"%":r*="x"===S?h.percentToPxWidth:h.percentToPxHeight;break;case"px":break;default:r*=h[v+"ToPx"]}switch(t){case"%":r*=1/("x"===S?h.percentToPxWidth:h.percentToPxHeight);break;case"px":break;default:r*=1/h[t+"ToPx"]}}switch(w){case"+":p=r+p;break;case"-":p=r-p;break;case"*":p*=r;break;case"/":p=r/p}j[e]={rootPropertyValue:m,startValue:r,currentValue:r,endValue:p,unitType:t,easing:q},g&&(j[e].pattern=g),y.debug&&console.log("tweensContainer ("+e+"): "+JSON.stringify(j[e]),a)};for(var I in s)if(s.hasOwnProperty(I)){var J=A.Names.camelCase(I),K=function(b,c){var d,f,g;return u.isFunction(b)&&(b=b.call(a,e,C)),u.isArray(b)?(d=b[0],!u.isArray(b[1])&&/^[\d-]/.test(b[1])||u.isFunction(b[1])||A.RegEx.isHex.test(b[1])?g=b[1]:u.isString(b[1])&&!A.RegEx.isHex.test(b[1])&&y.Easings[b[1]]||u.isArray(b[1])?(f=c?b[1]:l(b[1],i.duration),g=b[2]):g=b[1]||b[2]):d=b,c||(f=f||i.easing),u.isFunction(d)&&(d=d.call(a,e,C)),u.isFunction(g)&&(g=g.call(a,e,C)),[d||0,f,g]}(s[I]);if(t(A.Lists.colors,J)){var L=K[0],O=K[1],P=K[2];if(A.RegEx.isHex.test(L)){for(var Q=["Red","Green","Blue"],R=A.Values.hexToRgb(L),S=P?A.Values.hexToRgb(P):d,T=0;T<Q.length;T++){var U=[R[T]];O&&U.push(O),S!==d&&U.push(S[T]),H(J+Q[T],U)}continue}}H(J,K)}j.element=a}j.element&&(A.Values.addClass(a,"velocity-animating"),N.push(j),k=g(a),k&&(""===i.queue&&(k.tweensContainer=j,k.opts=i),k.isAnimating=!0),D===C-1?(y.State.calls.push([N,r,i,null,z.resolver,null,0]),y.State.isTicking===!1&&(y.State.isTicking=!0,m())):D++)}var h,i=o.extend({},y.defaults,v),j={};switch(g(a)===d&&y.init(a),parseFloat(i.delay)&&i.queue!==!1&&o.queue(a,i.queue,function(b){y.velocityQueueEntryFlag=!0;var c=y.State.delayedElements.count++;y.State.delayedElements[c]=a;var d=function(a){return function(){y.State.delayedElements[a]=!1,b()}}(c);g(a).delayBegin=(new Date).getTime(),g(a).delay=parseFloat(i.delay),g(a).delayTimer={setTimeout:setTimeout(b,parseFloat(i.delay)),next:d}}),i.duration.toString().toLowerCase()){case"fast":i.duration=200;break;case"normal":i.duration=w;break;case"slow":i.duration=600;break;default:i.duration=parseFloat(i.duration)||1}if(y.mock!==!1&&(y.mock===!0?i.duration=i.delay=1:(i.duration*=parseFloat(y.mock)||1,i.delay*=parseFloat(y.mock)||1)),i.easing=l(i.easing,i.duration),i.begin&&!u.isFunction(i.begin)&&(i.begin=null),i.progress&&!u.isFunction(i.progress)&&(i.progress=null),i.complete&&!u.isFunction(i.complete)&&(i.complete=null),i.display!==d&&null!==i.display&&(i.display=i.display.toString().toLowerCase(),"auto"===i.display&&(i.display=y.CSS.Values.getDisplayType(a))),i.visibility!==d&&null!==i.visibility&&(i.visibility=i.visibility.toString().toLowerCase()),i.mobileHA=i.mobileHA&&y.State.isMobile&&!y.State.isGingerbread,i.queue===!1)if(i.delay){var k=y.State.delayedElements.count++;y.State.delayedElements[k]=a;var n=function(a){return function(){y.State.delayedElements[a]=!1,f()}}(k);g(a).delayBegin=(new Date).getTime(),g(a).delay=parseFloat(i.delay),g(a).delayTimer={setTimeout:setTimeout(f,parseFloat(i.delay)),next:n}}else f();else o.queue(a,i.queue,function(a,b){if(b===!0)return z.promise&&z.resolver(r),!0;y.velocityQueueEntryFlag=!0,f(a)});""!==i.queue&&"fx"!==i.queue||"inprogress"===o.queue(a)[0]||o.dequeue(a)}var j,k,p,q,r,s,v,x=arguments[0]&&(arguments[0].p||o.isPlainObject(arguments[0].properties)&&!arguments[0].properties.names||u.isString(arguments[0].properties));u.isWrapped(this)?(k=!1,q=0,r=this,p=this):(k=!0,q=1,r=x?arguments[0].elements||arguments[0].e:arguments[0]);var z={promise:null,resolver:null,rejecter:null};if(k&&y.Promise&&(z.promise=new y.Promise(function(a,b){z.resolver=a,z.rejecter=b})),x?(s=arguments[0].properties||arguments[0].p,v=arguments[0].options||arguments[0].o):(s=arguments[q],v=arguments[q+1]),!(r=f(r)))return void(z.promise&&(s&&v&&v.promiseRejectEmpty===!1?z.resolver():z.rejecter()));var C=r.length,D=0;if(!/^(stop|finish|finishAll|pause|resume)$/i.test(s)&&!o.isPlainObject(v)){var E=q+1;v={};for(var F=E;F<arguments.length;F++)u.isArray(arguments[F])||!/^(fast|normal|slow)$/i.test(arguments[F])&&!/^\d/.test(arguments[F])?u.isString(arguments[F])||u.isArray(arguments[F])?v.easing=arguments[F]:u.isFunction(arguments[F])&&(v.complete=arguments[F]):v.duration=arguments[F]}var G;switch(s){case"scroll":G="scroll";break;case"reverse":G="reverse";break;case"pause":var H=(new Date).getTime();return o.each(r,function(a,b){h(b,H)}),o.each(y.State.calls,function(a,b){var c=!1;b&&o.each(b[1],function(a,e){var f=v===d?"":v;return f!==!0&&b[2].queue!==f&&(v!==d||b[2].queue!==!1)||(o.each(r,function(a,d){if(d===e)return b[5]={resume:!1},c=!0,!1}),!c&&void 0)})}),a();case"resume":return o.each(r,function(a,b){i(b,H)}),o.each(y.State.calls,function(a,b){var c=!1;b&&o.each(b[1],function(a,e){var f=v===d?"":v;return f!==!0&&b[2].queue!==f&&(v!==d||b[2].queue!==!1)||(!b[5]||(o.each(r,function(a,d){if(d===e)return b[5].resume=!0,c=!0,!1}),!c&&void 0))})}),a();case"finish":case"finishAll":case"stop":o.each(r,function(a,b){g(b)&&g(b).delayTimer&&(clearTimeout(g(b).delayTimer.setTimeout),g(b).delayTimer.next&&g(b).delayTimer.next(),delete g(b).delayTimer),"finishAll"!==s||v!==!0&&!u.isString(v)||(o.each(o.queue(b,u.isString(v)?v:""),function(a,b){u.isFunction(b)&&b()}),o.queue(b,u.isString(v)?v:"",[]))});var I=[];return o.each(y.State.calls,function(a,b){b&&o.each(b[1],function(c,e){var f=v===d?"":v;if(f!==!0&&b[2].queue!==f&&(v!==d||b[2].queue!==!1))return!0;o.each(r,function(c,d){if(d===e)if((v===!0||u.isString(v))&&(o.each(o.queue(d,u.isString(v)?v:""),function(a,b){u.isFunction(b)&&b(null,!0)}),o.queue(d,u.isString(v)?v:"",[])),"stop"===s){var h=g(d);h&&h.tweensContainer&&f!==!1&&o.each(h.tweensContainer,function(a,b){b.endValue=b.currentValue}),I.push(a)}else"finish"!==s&&"finishAll"!==s||(b[2].duration=1)})})}),"stop"===s&&(o.each(I,function(a,b){n(b,!0)}),z.promise&&z.resolver(r)),a();default:if(!o.isPlainObject(s)||u.isEmptyObject(s)){if(u.isString(s)&&y.Redirects[s]){j=o.extend({},v);var J=j.duration,K=j.delay||0;return j.backwards===!0&&(r=o.extend(!0,[],r).reverse()),o.each(r,function(a,b){parseFloat(j.stagger)?j.delay=K+parseFloat(j.stagger)*a:u.isFunction(j.stagger)&&(j.delay=K+j.stagger.call(b,a,C)),j.drag&&(j.duration=parseFloat(J)||(/^(callout|transition)/.test(s)?1e3:w),j.duration=Math.max(j.duration*(j.backwards?1-a/C:(a+1)/C),.75*j.duration,200)),y.Redirects[s].call(b,b,j||{},a,C,r,z.promise?z:d)}),a()}var L="Velocity: First argument ("+s+") was not a property map, a known action, or a registered redirect. Aborting.";return z.promise?z.rejecter(new Error(L)):b.console&&console.log(L),a()}G="start"}var M={lastParent:null,lastPosition:null,lastFontSize:null,lastPercentToPxWidth:null,lastPercentToPxHeight:null,lastEmToPx:null,remToPx:null,vwToPx:null,vhToPx:null},N=[];o.each(r,function(a,b){u.isNode(b)&&e(b,a)}),j=o.extend({},y.defaults,v),j.loop=parseInt(j.loop,10);var O=2*j.loop-1;if(j.loop)for(var P=0;P<O;P++){var Q={delay:j.delay,progress:j.progress};P===O-1&&(Q.display=j.display,Q.visibility=j.visibility,Q.complete=j.complete),B(r,"reverse",Q)}return a()};y=o.extend(B,y),y.animate=B;var C=b.requestAnimationFrame||q;if(!y.State.isMobile&&c.hidden!==d){var D=function(){c.hidden?(C=function(a){return setTimeout(function(){a(!0)},16)},m()):C=b.requestAnimationFrame||q};D(),c.addEventListener("visibilitychange",D)}return a.Velocity=y,a!==b&&(a.fn.velocity=B,a.fn.velocity.defaults=y.defaults),o.each(["Down","Up"],function(a,b){y.Redirects["slide"+b]=function(a,c,e,f,g,h){var i=o.extend({},c),j=i.begin,k=i.complete,l={},m={height:"",marginTop:"",marginBottom:"",paddingTop:"",paddingBottom:""};i.display===d&&(i.display="Down"===b?"inline"===y.CSS.Values.getDisplayType(a)?"inline-block":"block":"none"),i.begin=function(){0===e&&j&&j.call(g,g);for(var c in m)if(m.hasOwnProperty(c)){l[c]=a.style[c];var d=A.getPropertyValue(a,c);m[c]="Down"===b?[d,0]:[0,d]}l.overflow=a.style.overflow,a.style.overflow="hidden"},i.complete=function(){for(var b in l)l.hasOwnProperty(b)&&(a.style[b]=l[b]);e===f-1&&(k&&k.call(g,g),h&&h.resolver(g))},y(a,m,i)}}),o.each(["In","Out"],function(a,b){y.Redirects["fade"+b]=function(a,c,e,f,g,h){var i=o.extend({},c),j=i.complete,k={opacity:"In"===b?1:0};0!==e&&(i.begin=null),i.complete=e!==f-1?null:function(){j&&j.call(g,g),h&&h.resolver(g)},i.display===d&&(i.display="In"===b?"auto":"none"),y(this,k,i)}}),y}(window.jQuery||window.Zepto||window,window,window?window.document:undefined)});
assets/js/extra/velocity.ui.js ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**********************
2
+ Velocity UI Pack
3
+ **********************/
4
+
5
+ /* VelocityJS.org UI Pack (5.2.0). (C) 2014 Julian Shapiro. MIT @license: en.wikipedia.org/wiki/MIT_License. Portions copyright Daniel Eden, Christian Pucci. */
6
+ (function(factory){"use strict";if(typeof require==="function"&&typeof exports==="object"){module.exports=factory();/* AMD module. */}else if(typeof define==="function"&&define.amd){define(["velocity"],factory);/* Browser globals. */}else{factory()}}(function(){"use strict";return function(global,window,document,undefined){var Velocity=global.Velocity;if(!Velocity||!Velocity.Utilities){if(window.console){console.log("Velocity UI Pack: Velocity must be loaded first. Aborting.")}
7
+ return}
8
+ var $=Velocity.Utilities;var velocityVersion=Velocity.version,requiredVersion={major:1,minor:1,patch:0};function greaterSemver(primary,secondary){var versionInts=[];if(!primary||!secondary){return!1}
9
+ $.each([primary,secondary],function(i,versionObject){var versionIntsComponents=[];$.each(versionObject,function(component,value){while(value.toString().length<5){value="0"+value}
10
+ versionIntsComponents.push(value)});versionInts.push(versionIntsComponents.join(""))});return(parseFloat(versionInts[0])>parseFloat(versionInts[1]))}
11
+ if(greaterSemver(requiredVersion,velocityVersion)){var abortError="Velocity UI Pack: You need to update Velocity (velocity.js) to a newer version. Visit http://github.com/julianshapiro/velocity.";alert(abortError);throw new Error(abortError)}
12
+ Velocity.RegisterEffect=Velocity.RegisterUI=function(effectName,properties){function animateParentHeight(elements,direction,totalDuration,stagger){var totalHeightDelta=0,parentNode;$.each(elements.nodeType?[elements]:elements,function(i,element){if(stagger){totalDuration+=i*stagger}
13
+ parentNode=element.parentNode;var propertiesToSum=["height","paddingTop","paddingBottom","marginTop","marginBottom"];if(Velocity.CSS.getPropertyValue(element,"boxSizing").toString().toLowerCase()==="border-box"){propertiesToSum=["height"]}
14
+ $.each(propertiesToSum,function(i,property){totalHeightDelta+=parseFloat(Velocity.CSS.getPropertyValue(element,property))})});Velocity.animate(parentNode,{height:(direction==="In"?"+":"-")+"="+totalHeightDelta},{queue:!1,easing:"ease-in-out",duration:totalDuration*(direction==="In"?0.6:1)})}
15
+ Velocity.Redirects[effectName]=function(element,redirectOptions,elementsIndex,elementsSize,elements,promiseData,loop){var finalElement=(elementsIndex===elementsSize-1),totalDuration=0;loop=loop||properties.loop;if(typeof properties.defaultDuration==="function"){properties.defaultDuration=properties.defaultDuration.call(elements,elements)}else{properties.defaultDuration=parseFloat(properties.defaultDuration)}
16
+ for(var callIndex=0;callIndex<properties.calls.length;callIndex++){durationPercentage=properties.calls[callIndex][1];if(typeof durationPercentage==="number"){totalDuration+=durationPercentage}}
17
+ var shareDuration=totalDuration>=1?0:properties.calls.length?(1-totalDuration)/properties.calls.length:1;for(callIndex=0;callIndex<properties.calls.length;callIndex++){var call=properties.calls[callIndex],propertyMap=call[0],redirectDuration=1000,durationPercentage=call[1],callOptions=call[2]||{},opts={};if(redirectOptions.duration!==undefined){redirectDuration=redirectOptions.duration}else if(properties.defaultDuration!==undefined){redirectDuration=properties.defaultDuration}
18
+ opts.duration=redirectDuration*(typeof durationPercentage==="number"?durationPercentage:shareDuration);opts.queue=redirectOptions.queue||"";opts.easing=callOptions.easing||"ease";opts.delay=parseFloat(callOptions.delay)||0;opts.loop=!properties.loop&&callOptions.loop;opts._cacheValues=callOptions._cacheValues||!0;if(callIndex===0){opts.delay+=(parseFloat(redirectOptions.delay)||0);if(elementsIndex===0){opts.begin=function(){if(redirectOptions.begin){redirectOptions.begin.call(elements,elements)}
19
+ var direction=effectName.match(/(In|Out)$/);if((direction&&direction[0]==="In")&&propertyMap.opacity!==undefined){$.each(elements.nodeType?[elements]:elements,function(i,element){Velocity.CSS.setPropertyValue(element,"opacity",0)})}
20
+ if(redirectOptions.animateParentHeight&&direction){animateParentHeight(elements,direction[0],redirectDuration+opts.delay,redirectOptions.stagger)}}}
21
+ if(redirectOptions.display!==null){if(redirectOptions.display!==undefined&&redirectOptions.display!=="none"){opts.display=redirectOptions.display}else if(/In$/.test(effectName)){var defaultDisplay=Velocity.CSS.Values.getDisplayType(element);opts.display=(defaultDisplay==="inline")?"inline-block":defaultDisplay}}
22
+ if(redirectOptions.visibility&&redirectOptions.visibility!=="hidden"){opts.visibility=redirectOptions.visibility}}
23
+ if(callIndex===properties.calls.length-1){var injectFinalCallbacks=function(){if((redirectOptions.display===undefined||redirectOptions.display==="none")&&/Out$/.test(effectName)){$.each(elements.nodeType?[elements]:elements,function(i,element){Velocity.CSS.setPropertyValue(element,"display","none")})}
24
+ if(redirectOptions.complete){redirectOptions.complete.call(elements,elements)}
25
+ if(promiseData){promiseData.resolver(elements||element)}};opts.complete=function(){if(loop){Velocity.Redirects[effectName](element,redirectOptions,elementsIndex,elementsSize,elements,promiseData,loop===!0?!0:Math.max(0,loop-1))}
26
+ if(properties.reset){for(var resetProperty in properties.reset){if(!properties.reset.hasOwnProperty(resetProperty)){continue}
27
+ var resetValue=properties.reset[resetProperty];if(Velocity.CSS.Hooks.registered[resetProperty]===undefined&&(typeof resetValue==="string"||typeof resetValue==="number")){properties.reset[resetProperty]=[properties.reset[resetProperty],properties.reset[resetProperty]]}}
28
+ var resetOptions={duration:0,queue:!1};if(finalElement){resetOptions.complete=injectFinalCallbacks}
29
+ Velocity.animate(element,properties.reset,resetOptions);/* Only trigger the user's complete callback on the last effect call with the last element in the set. */}else if(finalElement){injectFinalCallbacks()}};if(redirectOptions.visibility==="hidden"){opts.visibility=redirectOptions.visibility}}
30
+ Velocity.animate(element,propertyMap,opts)}};return Velocity};Velocity.RegisterEffect.packagedEffects={"callout.bounce":{defaultDuration:550,calls:[[{translateY:-30},0.25],[{translateY:0},0.125],[{translateY:-15},0.125],[{translateY:0},0.25]]},"callout.shake":{defaultDuration:800,calls:[[{translateX:-11}],[{translateX:11}],[{translateX:-11}],[{translateX:11}],[{translateX:-11}],[{translateX:11}],[{translateX:-11}],[{translateX:0}]]},"callout.flash":{defaultDuration:1100,calls:[[{opacity:[0,"easeInOutQuad",1]}],[{opacity:[1,"easeInOutQuad"]}],[{opacity:[0,"easeInOutQuad"]}],[{opacity:[1,"easeInOutQuad"]}]]},"callout.pulse":{defaultDuration:825,calls:[[{scaleX:1.1,scaleY:1.1},0.50,{easing:"easeInExpo"}],[{scaleX:1,scaleY:1},0.50]]},"callout.swing":{defaultDuration:950,calls:[[{rotateZ:15}],[{rotateZ:-10}],[{rotateZ:5}],[{rotateZ:-5}],[{rotateZ:0}]]},"callout.tada":{defaultDuration:1000,calls:[[{scaleX:0.9,scaleY:0.9,rotateZ:-3},0.10],[{scaleX:1.1,scaleY:1.1,rotateZ:3},0.10],[{scaleX:1.1,scaleY:1.1,rotateZ:-3},0.10],["reverse",0.125],["reverse",0.125],["reverse",0.125],["reverse",0.125],["reverse",0.125],[{scaleX:1,scaleY:1,rotateZ:0},0.20]]},"transition.fadeIn":{defaultDuration:1000,calls:[[{opacity:[1,0]}]]},"transition.fadeOut":{defaultDuration:500,calls:[[{opacity:[0,1]}]]},"transition.flipXIn":{defaultDuration:700,calls:[[{opacity:[1,0],transformPerspective:[800,800],rotateY:[0,-55]}]],reset:{transformPerspective:0}},"transition.flipXOut":{defaultDuration:700,calls:[[{opacity:[0,1],transformPerspective:[800,800],rotateY:55}]],reset:{transformPerspective:0,rotateY:0}},"transition.flipYIn":{defaultDuration:800,calls:[[{opacity:[1,0],transformPerspective:[800,800],rotateX:[0,-45]}]],reset:{transformPerspective:0}},"transition.flipYOut":{defaultDuration:800,calls:[[{opacity:[0,1],transformPerspective:[800,800],rotateX:25}]],reset:{transformPerspective:0,rotateX:0}},"transition.flipBounceXIn":{defaultDuration:900,calls:[[{opacity:[0.725,0],transformPerspective:[400,400],rotateY:[-10,90]},0.50],[{opacity:0.80,rotateY:10},0.25],[{opacity:1,rotateY:0},0.25]],reset:{transformPerspective:0}},"transition.flipBounceXOut":{defaultDuration:800,calls:[[{opacity:[0.9,1],transformPerspective:[400,400],rotateY:-10}],[{opacity:0,rotateY:90}]],reset:{transformPerspective:0,rotateY:0}},"transition.flipBounceYIn":{defaultDuration:850,calls:[[{opacity:[0.725,0],transformPerspective:[400,400],rotateX:[-10,90]},0.50],[{opacity:0.80,rotateX:10},0.25],[{opacity:1,rotateX:0},0.25]],reset:{transformPerspective:0}},"transition.flipBounceYOut":{defaultDuration:800,calls:[[{opacity:[0.9,1],transformPerspective:[400,400],rotateX:-15}],[{opacity:0,rotateX:90}]],reset:{transformPerspective:0,rotateX:0}},"transition.swoopIn":{defaultDuration:850,calls:[[{opacity:[1,0],transformOriginX:["100%","50%"],transformOriginY:["100%","100%"],scaleX:[1,0],scaleY:[1,0],translateX:[0,-700],translateZ:0}]],reset:{transformOriginX:"50%",transformOriginY:"50%"}},"transition.swoopOut":{defaultDuration:850,calls:[[{opacity:[0,1],transformOriginX:["50%","100%"],transformOriginY:["100%","100%"],scaleX:0,scaleY:0,translateX:-700,translateZ:0}]],reset:{transformOriginX:"50%",transformOriginY:"50%",scaleX:1,scaleY:1,translateX:0}},"transition.whirlIn":{defaultDuration:850,calls:[[{opacity:[1,0],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:[1,0],scaleY:[1,0],rotateY:[0,160]},1,{easing:"easeInOutSine"}]]},"transition.whirlOut":{defaultDuration:750,calls:[[{opacity:[0,"easeInOutQuint",1],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:0,scaleY:0,rotateY:160},1,{easing:"swing"}]],reset:{scaleX:1,scaleY:1,rotateY:0}},"transition.shrinkIn":{defaultDuration:750,calls:[[{opacity:[1,0],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:[1,1.5],scaleY:[1,1.5],translateZ:0}]]},"transition.shrinkOut":{defaultDuration:600,calls:[[{opacity:[0,1],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:1.3,scaleY:1.3,translateZ:0}]],reset:{scaleX:1,scaleY:1}},"transition.expandIn":{defaultDuration:700,calls:[[{opacity:[1,0],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:[1,0.625],scaleY:[1,0.625],translateZ:0}]]},"transition.expandOut":{defaultDuration:700,calls:[[{opacity:[0,1],transformOriginX:["50%","50%"],transformOriginY:["50%","50%"],scaleX:0.5,scaleY:0.5,translateZ:0}]],reset:{scaleX:1,scaleY:1}},"transition.bounceIn":{defaultDuration:800,calls:[[{opacity:[1,0],scaleX:[1.05,0.3],scaleY:[1.05,0.3]},0.35],[{scaleX:0.9,scaleY:0.9,translateZ:0},0.20],[{scaleX:1,scaleY:1},0.45]]},"transition.bounceOut":{defaultDuration:800,calls:[[{scaleX:0.95,scaleY:0.95},0.35],[{scaleX:1.1,scaleY:1.1,translateZ:0},0.35],[{opacity:[0,1],scaleX:0.3,scaleY:0.3},0.30]],reset:{scaleX:1,scaleY:1}},"transition.bounceUpIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateY:[-30,1000]},0.60,{easing:"easeOutCirc"}],[{translateY:10},0.20],[{translateY:0},0.20]]},"transition.bounceUpOut":{defaultDuration:1000,calls:[[{translateY:20},0.20],[{opacity:[0,"easeInCirc",1],translateY:-1000},0.80]],reset:{translateY:0}},"transition.bounceDownIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateY:[30,-1000]},0.60,{easing:"easeOutCirc"}],[{translateY:-10},0.20],[{translateY:0},0.20]]},"transition.bounceDownOut":{defaultDuration:1000,calls:[[{translateY:-20},0.20],[{opacity:[0,"easeInCirc",1],translateY:1000},0.80]],reset:{translateY:0}},"transition.bounceLeftIn":{defaultDuration:750,calls:[[{opacity:[1,0],translateX:[30,-1250]},0.60,{easing:"easeOutCirc"}],[{translateX:-10},0.20],[{translateX:0},0.20]]},"transition.bounceLeftOut":{defaultDuration:750,calls:[[{translateX:30},0.20],[{opacity:[0,"easeInCirc",1],translateX:-1250},0.80]],reset:{translateX:0}},"transition.bounceRightIn":{defaultDuration:750,calls:[[{opacity:[1,0],translateX:[-30,1250]},0.60,{easing:"easeOutCirc"}],[{translateX:10},0.20],[{translateX:0},0.20]]},"transition.bounceRightOut":{defaultDuration:750,calls:[[{translateX:-30},0.20],[{opacity:[0,"easeInCirc",1],translateX:1250},0.80]],reset:{translateX:0}},"transition.slideUpIn":{defaultDuration:900,calls:[[{opacity:[1,0],translateY:[0,20],translateZ:0}]]},"transition.slideUpOut":{defaultDuration:900,calls:[[{opacity:[0,1],translateY:-20,translateZ:0}]],reset:{translateY:0}},"transition.slideDownIn":{defaultDuration:900,calls:[[{opacity:[1,0],translateY:[0,-20],translateZ:0}]]},"transition.slideDownOut":{defaultDuration:900,calls:[[{opacity:[0,1],translateY:20,translateZ:0}]],reset:{translateY:0}},"transition.slideLeftIn":{defaultDuration:1000,calls:[[{opacity:[1,0],translateX:[0,-20],translateZ:0}]]},"transition.slideLeftOut":{defaultDuration:1050,calls:[[{opacity:[0,1],translateX:-20,translateZ:0}]],reset:{translateX:0}},"transition.slideRightIn":{defaultDuration:1000,calls:[[{opacity:[1,0],translateX:[0,20],translateZ:0}]]},"transition.slideRightOut":{defaultDuration:1050,calls:[[{opacity:[0,1],translateX:20,translateZ:0}]],reset:{translateX:0}},"transition.slideUpBigIn":{defaultDuration:850,calls:[[{opacity:[1,0],translateY:[0,75],translateZ:0}]]},"transition.slideUpBigOut":{defaultDuration:800,calls:[[{opacity:[0,1],translateY:-75,translateZ:0}]],reset:{translateY:0}},"transition.slideDownBigIn":{defaultDuration:850,calls:[[{opacity:[1,0],translateY:[0,-75],translateZ:0}]]},"transition.slideDownBigOut":{defaultDuration:800,calls:[[{opacity:[0,1],translateY:75,translateZ:0}]],reset:{translateY:0}},"transition.slideLeftBigIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateX:[0,-75],translateZ:0}]]},"transition.slideLeftBigOut":{defaultDuration:750,calls:[[{opacity:[0,1],translateX:-75,translateZ:0}]],reset:{translateX:0}},"transition.slideRightBigIn":{defaultDuration:800,calls:[[{opacity:[1,0],translateX:[0,75],translateZ:0}]]},"transition.slideRightBigOut":{defaultDuration:750,calls:[[{opacity:[0,1],translateX:75,translateZ:0}]],reset:{translateX:0}},"transition.perspectiveUpIn":{defaultDuration:800,calls:[[{opacity:[1,0],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:["100%","100%"],rotateX:[0,-180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveUpOut":{defaultDuration:850,calls:[[{opacity:[0,1],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:["100%","100%"],rotateX:-180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateX:0}},"transition.perspectiveDownIn":{defaultDuration:800,calls:[[{opacity:[1,0],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:[0,0],rotateX:[0,180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveDownOut":{defaultDuration:850,calls:[[{opacity:[0,1],transformPerspective:[800,800],transformOriginX:[0,0],transformOriginY:[0,0],rotateX:180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateX:0}},"transition.perspectiveLeftIn":{defaultDuration:950,calls:[[{opacity:[1,0],transformPerspective:[2000,2000],transformOriginX:[0,0],transformOriginY:[0,0],rotateY:[0,-180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveLeftOut":{defaultDuration:950,calls:[[{opacity:[0,1],transformPerspective:[2000,2000],transformOriginX:[0,0],transformOriginY:[0,0],rotateY:-180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateY:0}},"transition.perspectiveRightIn":{defaultDuration:950,calls:[[{opacity:[1,0],transformPerspective:[2000,2000],transformOriginX:["100%","100%"],transformOriginY:[0,0],rotateY:[0,180]}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%"}},"transition.perspectiveRightOut":{defaultDuration:950,calls:[[{opacity:[0,1],transformPerspective:[2000,2000],transformOriginX:["100%","100%"],transformOriginY:[0,0],rotateY:180}]],reset:{transformPerspective:0,transformOriginX:"50%",transformOriginY:"50%",rotateY:0}}};for(var effectName in Velocity.RegisterEffect.packagedEffects){if(Velocity.RegisterEffect.packagedEffects.hasOwnProperty(effectName)){Velocity.RegisterEffect(effectName,Velocity.RegisterEffect.packagedEffects[effectName])}}
31
+ Velocity.RunSequence=function(originalSequence){var sequence=$.extend(!0,[],originalSequence);if(sequence.length>1){$.each(sequence.reverse(),function(i,currentCall){var nextCall=sequence[i+1];if(nextCall){var currentCallOptions=currentCall.o||currentCall.options,nextCallOptions=nextCall.o||nextCall.options;var timing=(currentCallOptions&&currentCallOptions.sequenceQueue===!1)?"begin":"complete",callbackOriginal=nextCallOptions&&nextCallOptions[timing],options={};options[timing]=function(){var nextCallElements=nextCall.e||nextCall.elements;var elements=nextCallElements.nodeType?[nextCallElements]:nextCallElements;if(callbackOriginal){callbackOriginal.call(elements,elements)}
32
+ Velocity(currentCall)};if(nextCall.o){nextCall.o=$.extend({},nextCallOptions,options)}else{nextCall.options=$.extend({},nextCallOptions,options)}}});sequence.reverse()}
33
+ Velocity(sequence[0])}}((window.jQuery||window.Zepto||window),window,(window?window.document:undefined))}))
assets/js/main/theplus-custom.js ADDED
@@ -0,0 +1,1011 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function ($) {
2
+ /* ------------------------------ */
3
+ /* Advance accordion
4
+ /* ------------------------------ */
5
+ var WidgetAccordionHandler = function($scope, $) {
6
+
7
+ var $plusadv_accordion = $scope.find('.theplus-accordion-wrapper');
8
+ var $this = $plusadv_accordion,
9
+ $accordionID = $this.attr('id'),
10
+ $currentAccordion = $('#'+$accordionID),
11
+ $accordionType = $this.data('accordion-type'),
12
+ $accordionSpeed = $this.data('toogle-speed'),
13
+ $accrodionList = $this.find('.theplus-accordion-item'),
14
+ $PlusAccordionListHeader = $accrodionList.find('.plus-accordion-header');
15
+
16
+ $accrodionList.each(function(i) {
17
+ if( $(this).find($PlusAccordionListHeader).hasClass('active-default') ) {
18
+ $(this).find($PlusAccordionListHeader).addClass('active');
19
+ $(this).find('.plus-accordion-content').addClass('active').css('display', 'block').slideDown($accordionSpeed);
20
+ }
21
+ });
22
+
23
+ if( 'accordion' == $accordionType ) {
24
+ $PlusAccordionListHeader.on('click', function() {
25
+ //Check if 'active' class is already exists
26
+ if( $(this).hasClass('active') ) {
27
+ $(this).removeClass('active');
28
+ $(this).next('.plus-accordion-content').removeClass('active').slideUp($accordionSpeed);
29
+ }else {
30
+ $PlusAccordionListHeader.removeClass('active');
31
+ $PlusAccordionListHeader.next('.plus-accordion-content').removeClass('active').slideUp($accordionSpeed);
32
+
33
+ $(this).toggleClass('active');
34
+ $(this).next('.plus-accordion-content').slideToggle($accordionSpeed, function() {
35
+ $(this).toggleClass('active');
36
+ });
37
+ }
38
+ });
39
+ }
40
+ if( 'toggle' == $accordionType ) {
41
+ $PlusAccordionListHeader.on('click', function() {
42
+ if( $(this).hasClass('active') ) {
43
+ $(this).removeClass('active');
44
+ $(this).next('.plus-accordion-content').removeClass('active').slideUp($accordionSpeed);
45
+ }else {
46
+ $(this).toggleClass('active');
47
+ $(this).next('.plus-accordion-content').slideToggle($accordionSpeed, function() {
48
+ $(this).toggleClass('active');
49
+ });
50
+ }
51
+ });
52
+ }
53
+ }; // End of advance accordion
54
+ /* ------------------------------ */
55
+ /* Advance Tab
56
+ /* ------------------------------ */
57
+ var WidgetTabHandler = function ($scope, $) {
58
+
59
+ jQuery(document).ready(function($) {
60
+ var $currentTab = $scope.find('.theplus-tabs-wrapper'),
61
+ $TabHover = $currentTab.data('tab-hover'),
62
+
63
+ $currentTabId = '#' + $currentTab.attr('id').toString();
64
+
65
+ $($currentTabId + ' ul.plus-tabs-nav li .plus-tab-header').each( function(index) {
66
+ var default_active=$(this).closest('.theplus-tabs-wrapper').data("tab-default");
67
+ if( default_active == index ) {
68
+ $(this).removeClass('inactive').addClass('active');
69
+ }
70
+ } );
71
+
72
+ $($currentTabId + ' .theplus-tabs-content-wrapper .plus-tab-content').each( function(index) {
73
+ var default_active=$(this).closest('.theplus-tabs-wrapper').data("tab-default");
74
+ if( default_active == index ) {
75
+ $(this).removeClass('inactive').addClass('active');
76
+ }
77
+ } );
78
+ if('no' == $TabHover){
79
+ $($currentTabId + ' ul.plus-tabs-nav li .plus-tab-header').click(function(){
80
+ var currentTabIndex = $(this).data("tab");
81
+ var tabsContainer = $(this).closest('.theplus-tabs-wrapper');
82
+ var tabsNav = $(tabsContainer).children('ul.plus-tabs-nav').children('li').children('.plus-tab-header');
83
+ var tabsContent = $(tabsContainer).children('.theplus-tabs-content-wrapper').children('.plus-tab-content');
84
+
85
+ $(tabsContainer).find(".plus-tab-header").removeClass('active default-active').addClass('inactive');
86
+ $(this).addClass('active').removeClass('inactive');
87
+
88
+ $(tabsContainer).find(".plus-tab-content").removeClass('active').addClass('inactive');
89
+ $('.theplus-tabs-content-wrapper',tabsContainer).find("[data-tab='"+currentTabIndex+"']").addClass('active').removeClass('inactive');
90
+
91
+ $(tabsContent).each( function(index) {
92
+ $(this).removeClass('default-active');
93
+ });
94
+ $($currentTabId+" .list-carousel-slick > .post-inner-loop").slick('setPosition');
95
+ });
96
+ }
97
+
98
+ if($($currentTabId).hasClass("mobile-accordion")){
99
+ $(window).resize(function(){
100
+ if($(window).innerWidth() <= 600){
101
+ $($currentTabId).addClass("mobile-accordion-tab");
102
+ }
103
+ });
104
+ $($currentTabId + ' .theplus-tabs-content-wrapper .elementor-tab-mobile-title').click(function(){
105
+ var currentTabIndex = $(this).data("tab");
106
+ var tabsContainer = $(this).closest('.theplus-tabs-wrapper');
107
+ var tabsNav = $(tabsContainer).children('.theplus-tabs-content-wrapper').children('.elementor-tab-mobile-title');
108
+ var tabsContent = $(tabsContainer).children('.theplus-tabs-content-wrapper').children('.plus-tab-content');
109
+
110
+ $(tabsContainer).find(".elementor-tab-mobile-title").removeClass('active default-active').addClass('inactive');
111
+ $(this).addClass('active').removeClass('inactive');
112
+
113
+ $(tabsContainer).find(".plus-tab-content").removeClass('active').addClass('inactive');
114
+ $('.theplus-tabs-content-wrapper',tabsContainer).find("[data-tab='"+currentTabIndex+"']").addClass('active').removeClass('inactive');
115
+
116
+ $(tabsContent).each( function(index) {
117
+ $(this).removeClass('default-active');
118
+ });
119
+ $($currentTabId+" .list-carousel-slick > .post-inner-loop").slick('setPosition');
120
+ });
121
+ }
122
+
123
+ });
124
+ }; // End of advance tabs
125
+
126
+ /* smooth scroll page */
127
+ var WidgetSmoothScrollHandler = function ($scope, $) {
128
+
129
+ jQuery(document).ready(function($) {
130
+ var $container = $('.plus-smooth-scroll', $scope);
131
+ if($container.length){
132
+ var data_frameRate=($container.attr("data-frameRate") == undefined) ? 150 : $container.attr("data-frameRate"),
133
+ data_animationTime=($container.attr("data-animationTime") == undefined) ? 1000 : $container.attr("data-animationTime"),
134
+ data_stepSize=($container.attr("data-stepSize") == undefined) ? 100 : $container.attr("data-stepSize"),
135
+ data_pulseScale=($container.attr("data-pulseScale") == undefined) ? 4 : $container.attr("data-pulseScale"),
136
+ data_pulseNormalize=($container.attr("data-pulseNormalize") == undefined) ? 1 : $container.attr("data-pulseNormalize"),
137
+ data_accelerationDelta=($container.attr("data-accelerationDelta") == undefined) ? 50 : $container.attr("data-accelerationDelta"),
138
+ data_accelerationMax=($container.attr("data-accelerationMax") == undefined) ? 3 : $container.attr("data-accelerationMax"),
139
+ data_arrowScroll=($container.attr("data-arrowScroll") == undefined) ? 50 : $container.attr("data-arrowScroll");
140
+
141
+ $('head').append('<style>.magic-scroll .parallax-scroll, .magic-scroll .scale-scroll, .magic-scroll .both-scroll{-webkit-transition: -webkit-transform 1.3s ease .0s;-ms-transition: -ms-transform 1.3s ease .0s;-moz-transition: -moz-transform 1.3s ease .0s;-o-transition: -o-transform 1.3s ease .0s;transition: transform 0s ease .0s;will-change: transform;}</style>');
142
+
143
+ !function(){function e(){z.keyboardSupport&&m("keydown",a)}function t(){if(!Y&&document.body){Y=!0;var t=document.body,o=document.documentElement,n=window.innerHeight,r=t.scrollHeight;if(A=document.compatMode.indexOf("CSS")>=0?o:t,D=t,e(),top!=self)O=!0;else if(te&&r>n&&(t.offsetHeight<=n||o.offsetHeight<=n)){var a=document.createElement("div");a.style.cssText="position:absolute; z-index:-10000; top:0; left:0; right:0; height:"+A.scrollHeight+"px",document.body.appendChild(a);var i;T=function(){i||(i=setTimeout(function(){L||(a.style.height="0",a.style.height=A.scrollHeight+"px",i=null)},500))},setTimeout(T,10),m("resize",T);var l={attributes:!0,childList:!0,characterData:!1};if(M=new W(T),M.observe(t,l),A.offsetHeight<=n){var c=document.createElement("div");c.style.clear="both",t.appendChild(c)}}z.fixedBackground||L||(t.style.backgroundAttachment="scroll",o.style.backgroundAttachment="scroll")}}function o(){M&&M.disconnect(),w(I,r),w("mousedown",i),w("keydown",a),w("resize",T),w("load",t)}function n(e,t,o){if(p(t,o),1!=z.accelerationMax){var n=Date.now(),r=n-q;if(r<z.accelerationDelta){var a=(1+50/r)/2;a>1&&(a=Math.min(a,z.accelerationMax),t*=a,o*=a)}q=Date.now()}if(R.push({x:t,y:o,lastX:t<0?.99:-.99,lastY:o<0?.99:-.99,start:Date.now()}),!j){var i=e===document.body,l=function(n){for(var r=Date.now(),a=0,c=0,u=0;u<R.length;u++){var d=R[u],s=r-d.start,f=s>=z.animationTime,m=f?1:s/z.animationTime;z.pulseAlgorithm&&(m=x(m));var w=d.x*m-d.lastX>>0,h=d.y*m-d.lastY>>0;a+=w,c+=h,d.lastX+=w,d.lastY+=h,f&&(R.splice(u,1),u--)}i?window.scrollBy(a,c):(a&&(e.scrollLeft+=a),c&&(e.scrollTop+=c)),t||o||(R=[]),R.length?_(l,e,1e3/z.frameRate+1):j=!1};_(l,e,0),j=!0}}function r(e){Y||t();var o=e.target;if(e.defaultPrevented||e.ctrlKey)return!0;if(h(D,"embed")||h(o,"embed")&&/\.pdf/i.test(o.src)||h(D,"object")||o.shadowRoot)return!0;var r=-e.wheelDeltaX||e.deltaX||0,a=-e.wheelDeltaY||e.deltaY||0;N&&(e.wheelDeltaX&&y(e.wheelDeltaX,120)&&(r=-120*(e.wheelDeltaX/Math.abs(e.wheelDeltaX))),e.wheelDeltaY&&y(e.wheelDeltaY,120)&&(a=-120*(e.wheelDeltaY/Math.abs(e.wheelDeltaY)))),r||a||(a=-e.wheelDelta||0),1===e.deltaMode&&(r*=40,a*=40);var i=u(o);return i?!!v(a)||(Math.abs(r)>1.2&&(r*=z.stepSize/120),Math.abs(a)>1.2&&(a*=z.stepSize/120),n(i,r,a),e.preventDefault(),void l()):!O||!J||(Object.defineProperty(e,"target",{value:window.frameElement}),parent.wheel(e))}function a(e){var t=e.target,o=e.ctrlKey||e.altKey||e.metaKey||e.shiftKey&&e.keyCode!==K.spacebar;document.body.contains(D)||(D=document.activeElement);var r=/^(textarea|select|embed|object)$/i,a=/^(button|submit|radio|checkbox|file|color|image)$/i;if(e.defaultPrevented||r.test(t.nodeName)||h(t,"input")&&!a.test(t.type)||h(D,"video")||g(e)||t.isContentEditable||o)return!0;if((h(t,"button")||h(t,"input")&&a.test(t.type))&&e.keyCode===K.spacebar)return!0;if(h(t,"input")&&"radio"==t.type&&P[e.keyCode])return!0;var i,c=0,d=0,s=u(D);if(!s)return!O||!J||parent.keydown(e);var f=s.clientHeight;switch(s==document.body&&(f=window.innerHeight),e.keyCode){case K.up:d=-z.arrowScroll;break;case K.down:d=z.arrowScroll;break;case K.spacebar:i=e.shiftKey?1:-1,d=-i*f*.9;break;case K.pageup:d=.9*-f;break;case K.pagedown:d=.9*f;break;case K.home:d=-s.scrollTop;break;case K.end:var m=s.scrollHeight-s.scrollTop,w=m-f;d=w>0?w+10:0;break;case K.left:c=-z.arrowScroll;break;case K.right:c=z.arrowScroll;break;default:return!0}n(s,c,d),e.preventDefault(),l()}function i(e){D=e.target}function l(){clearTimeout(E),E=setInterval(function(){F={}},1e3)}function c(e,t){for(var o=e.length;o--;)F[V(e[o])]=t;return t}function u(e){var t=[],o=document.body,n=A.scrollHeight;do{var r=F[V(e)];if(r)return c(t,r);if(t.push(e),n===e.scrollHeight){var a=s(A)&&s(o),i=a||f(A);if(O&&d(A)||!O&&i)return c(t,$())}else if(d(e)&&f(e))return c(t,e)}while(e=e.parentElement)}function d(e){return e.clientHeight+10<e.scrollHeight}function s(e){var t=getComputedStyle(e,"").getPropertyValue("overflow-y");return"hidden"!==t}function f(e){var t=getComputedStyle(e,"").getPropertyValue("overflow-y");return"scroll"===t||"auto"===t}function m(e,t){window.addEventListener(e,t,!1)}function w(e,t){window.removeEventListener(e,t,!1)}function h(e,t){return(e.nodeName||"").toLowerCase()===t.toLowerCase()}function p(e,t){e=e>0?1:-1,t=t>0?1:-1,X.x===e&&X.y===t||(X.x=e,X.y=t,R=[],q=0)}function v(e){if(e)return B.length||(B=[e,e,e]),e=Math.abs(e),B.push(e),B.shift(),clearTimeout(C),C=setTimeout(function(){try{localStorage.SS_deltaBuffer=B.join(",")}catch(e){}},1e3),!b(120)&&!b(100)}function y(e,t){return Math.floor(e/t)==e/t}function b(e){return y(B[0],e)&&y(B[1],e)&&y(B[2],e)}function g(e){var t=e.target,o=!1;if(document.URL.indexOf("www.youtube.com/watch")!=-1)do if(o=t.classList&&t.classList.contains("html5-video-controls"))break;while(t=t.parentNode);return o}function S(e){var t,o,n;return e*=z.pulseScale,e<1?t=e-(1-Math.exp(-e)):(o=Math.exp(-1),e-=1,n=1-Math.exp(-e),t=o+n*(1-o)),t*z.pulseNormalize}function x(e){return e>=1?1:e<=0?0:(1==z.pulseNormalize&&(z.pulseNormalize/=S(1)),S(e))}function k(e){for(var t in e)H.hasOwnProperty(t)&&(z[t]=e[t])}var D,M,T,E,C,H={frameRate:data_frameRate,animationTime:data_animationTime,stepSize:data_stepSize,pulseAlgorithm:!0,pulseScale:data_pulseScale,pulseNormalize:data_pulseNormalize,accelerationDelta:data_accelerationDelta,accelerationMax:data_accelerationMax,keyboardSupport:!0,arrowScroll:data_arrowScroll,fixedBackground:!0,excluded:""},z=H,L=!1,O=!1,X={x:0,y:0},Y=!1,A=document.documentElement,B=[],N=/^Mac/.test(navigator.platform),K={left:37,up:38,right:39,down:40,spacebar:32,pageup:33,pagedown:34,end:35,home:36},P={37:1,38:1,39:1,40:1},R=[],j=!1,q=Date.now(),V=function(){var e=0;return function(t){return t.uniqueID||(t.uniqueID=e++)}}(),F={};if(window.localStorage&&localStorage.SS_deltaBuffer)try{B=localStorage.SS_deltaBuffer.split(",")}catch(e){}var I,_=function(){return window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(e,t,o){window.setTimeout(e,o||1e3/60)}}(),W=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver,$=function(){var e;return function(){if(!e){var t=document.createElement("div");t.style.cssText="height:10000px;width:1px;",document.body.appendChild(t);var o=document.body.scrollTop;document.documentElement.scrollTop;window.scrollBy(0,3),e=document.body.scrollTop!=o?document.body:document.documentElement,window.scrollBy(0,-3),document.body.removeChild(t)}return e}}(),U=window.navigator.userAgent,G=/Edge/.test(U),J=/chrome/i.test(U)&&!G,Q=/safari/i.test(U)&&!G,Z=/mobile/i.test(U),ee=/Windows NT 6.1/i.test(U)&&/rv:11/i.test(U),te=Q&&(/Version\/8/i.test(U)||/Version\/9/i.test(U)),oe=(J||Q||ee)&&!Z;"onwheel"in document.createElement("div")?I="wheel":"onmousewheel"in document.createElement("div")&&(I="mousewheel"),I&&oe&&(m(I,r),m("mousedown",i),m("load",t)),k.destroy=o,window.SmoothScrollOptions&&k(window.SmoothScrollOptions),"function"==typeof define&&define.amd?define(function(){return k}):"object"==typeof exports?module.exports=k:window.SmoothScroll=k}();
144
+
145
+ }
146
+ });
147
+ };
148
+ /* smooth scroll page */
149
+
150
+ $(window).on('elementor/frontend/init', function () {
151
+ elementorFrontend.hooks.addAction('frontend/element_ready/tp-accordion.default', WidgetAccordionHandler);
152
+ elementorFrontend.hooks.addAction('frontend/element_ready/tp-tabs-tours.default', WidgetTabHandler);
153
+ elementorFrontend.hooks.addAction('frontend/element_ready/tp-smooth-scroll.default', WidgetSmoothScrollHandler);
154
+ });
155
+
156
+ /* Default load WidgetThePlusHandler */
157
+ var WidgetThePlusHandler = function ($scope, $) {
158
+ var row_bg_elem = $scope.find('.pt-plus-row-set').eq(0);
159
+
160
+ var parent_row= row_bg_elem.parents('section.elementor-element');
161
+ var wid_sec=$scope.parents('section.elementor-element');
162
+
163
+ /* CountDown */
164
+ if(wid_sec.find('.pt_plus_countdown').length>0){
165
+ ( function ( $ ) {
166
+ "use strict";
167
+ $(document).ready(function () {
168
+ theplus_countdown();
169
+ $(".pt_plus_countdown").change(function () {
170
+ theplus_countdown();
171
+ });
172
+ });
173
+ function theplus_countdown(){
174
+ $(".pt_plus_countdown").each(function () {
175
+ var timer1 = $(this).attr("data-timer");
176
+ var res = timer1.split("-");
177
+ var text_days=$(this).data("days");
178
+ var text_hours=$(this).data("hours");
179
+ var text_minutes=$(this).data("minutes");
180
+ var text_seconds=$(this).data("seconds");
181
+ $(this).downCount({
182
+ date: res[1]+"/"+res[0]+"/"+res[2]+" 12:00:00",
183
+ offset: +1,
184
+ text_day:text_days,
185
+ text_hour:text_hours,
186
+ text_minute:text_minutes,
187
+ text_second:text_seconds,
188
+ });
189
+ });
190
+ }
191
+ } ( jQuery ) );
192
+ }
193
+ /* CountDown*/
194
+
195
+ /* post listing out*/
196
+ if(wid_sec.find('.list-isotope').length>0){
197
+ var b = window.theplus || {};
198
+ b.window = $(window),
199
+ b.document = $(document),
200
+ b.windowHeight = b.window.height(),
201
+ b.windowWidth = b.window.width();
202
+ b.list_isotope_Posts = function() {
203
+ var c = function(c) {
204
+ $('.list-isotope').each(function() {
205
+
206
+ var e, c = $(this), d = c.data("layout-type"),f = {
207
+ itemSelector: ".grid-item",
208
+ resizable: !0,
209
+ sortBy: "original-order"
210
+ };
211
+ var uid=c.data("id");
212
+ var inner_c=$('.'+uid).find(".post-inner-loop");
213
+ $('.'+uid).addClass("pt-plus-isotope layout-" + d),
214
+ e = "masonry" === d ? "packery" : "fitRows",
215
+ f.layoutMode = e,
216
+ function() {
217
+ //b.initMetroIsotope(),
218
+ inner_c.isotope(f)
219
+ }(),
220
+ $('.'+uid+' .post-filter-data').find(".filter-category-list").click(function(event) {
221
+ event.preventDefault();
222
+ var d = $(this).attr("data-filter");
223
+ $(this).parent().parent().find(".active").removeClass("active"),
224
+ $(this).addClass("active"),
225
+ inner_c.isotope({
226
+ filter: d
227
+ }),
228
+ $("body").trigger("isotope-sorted");
229
+ });
230
+ })
231
+ };
232
+ b.window.on("load resize", function() {
233
+ c('[data-enable-isotope="1"]')
234
+ }),
235
+ b.document.on("load resize", function() {
236
+ c('[data-enable-isotope="1"]')
237
+ }),
238
+ $(document).ready(function() {
239
+ c('[data-enable-isotope="1"]')
240
+ }),
241
+ $("body").on("post-load resort-isotope", function() {
242
+ setTimeout(function() {
243
+ c('[data-enable-isotope="1"]')
244
+ }, 800)
245
+ }),
246
+ $("body").on("tabs-reinited", function() {
247
+ setTimeout(function() {
248
+ c('[data-enable-isotope="1"]')
249
+ }, 800)
250
+ }),
251
+ $.browser.firefox = /firefox/.test(navigator.userAgent.toLowerCase()),
252
+ $.browser.firefox && setTimeout(function() {
253
+ c('[data-enable-isotope="1"]')
254
+ }, 2500);
255
+ },
256
+ b.init = function() {
257
+ b.list_isotope_Posts();
258
+ }
259
+ ,
260
+ b.init();
261
+ }
262
+ if(wid_sec.find('.list-isotope-metro').length>0){
263
+ if ($('.list-isotope-metro').size() > 0) {
264
+
265
+ $(window).on("load resize", function() {
266
+ theplus_setup_packery_portfolio('all');
267
+ $('.list-isotope-metro .post-inner-loop').isotope('layout').isotope("reloadItems");
268
+ });
269
+
270
+ $("body").on("post-load resort-isotope", function() {
271
+ setTimeout(function() {
272
+ theplus_setup_packery_portfolio('all');
273
+ $('.list-isotope-metro .post-inner-loop').isotope('layout');
274
+ }, 800)
275
+ });
276
+ $("body").on("tabs-reinited", function() {
277
+ setTimeout(function() {
278
+ theplus_setup_packery_portfolio('all');
279
+ $('.list-isotope-metro .post-inner-loop').isotope('layout');
280
+ }, 800)
281
+ });
282
+ $.browser.firefox = /firefox/.test(navigator.userAgent.toLowerCase()),
283
+ $.browser.firefox && setTimeout(function() {
284
+ theplus_setup_packery_portfolio('all');
285
+ $('.list-isotope-metro .post-inner-loop').isotope('layout');
286
+ }, 2500);
287
+ }
288
+ }
289
+ if(wid_sec.find('.list-carousel-slick').length>0){
290
+ var carousel_elem = $scope.find('.list-carousel-slick').eq(0);
291
+ $(document).ready(function() {
292
+ if (carousel_elem.length > 0) {
293
+ if(!carousel_elem.hasClass("done-carousel")){
294
+ theplus_carousel_list();
295
+ }
296
+ }
297
+ });
298
+ }
299
+ /* post listing out*/
300
+ if(wid_sec.find('.blog-list.blog-style-1').length>0){
301
+ jQuery(document).ready(function($) {
302
+ jQuery(document).on('mouseenter',".blog-list.blog-style-1 .grid-item .blog-list-content",function() {
303
+ jQuery(this).find(".post-hover-content").slideDown(300)
304
+ });
305
+ jQuery(document).on('mouseleave',".blog-list.blog-style-1 .grid-item .blog-list-content",function() {
306
+ jQuery(this).find(".post-hover-content").slideUp(300)
307
+ })
308
+ });
309
+ }
310
+
311
+ };
312
+ /* Default load WidgetThePlusHandler */
313
+ /* Backend load WidgetThePlusHandler */
314
+ var WidgetThePlusHandlerBackEnd = function ($scope, $) {
315
+ var wid_sec=$scope.parents('section.elementor-element');
316
+
317
+ /*--- on load animation ----*/
318
+ if(wid_sec.find(".animate-general").length){
319
+ jQuery(document).ready(function() {
320
+ "use strict";
321
+ jQuery('.animate-general').each(function() {
322
+ var c, p=jQuery(this);
323
+ if(!p.hasClass("animation-done")){
324
+ if(p.find('.animated-columns').length){
325
+ var b = jQuery('.animated-columns',this);
326
+ var delay_time=p.data("animate-delay");
327
+
328
+ c = p.find('.animated-columns');
329
+ c.each(function() {
330
+ jQuery(this).css("opacity", "0");
331
+ });
332
+
333
+ }else{
334
+ var b=jQuery(this);
335
+ var delay_time=b.data("animate-delay");
336
+
337
+ if(b.data("animate-item")){
338
+ c = b.find(b.data("animate-item"));
339
+ c.each(function() {
340
+ jQuery(this).css("opacity", "0");
341
+ });
342
+ }else{
343
+ b.css("opacity", "0");
344
+ }
345
+ }
346
+ }
347
+ });
348
+
349
+ var d = function() {
350
+ jQuery('.animate-general').each(function() {
351
+ var c, d, p=jQuery(this), e = "85%";
352
+ var id=jQuery(this).data("id");
353
+ if(p.data("animate-columns")=="stagger"){
354
+ var b = jQuery('.animated-columns',this);
355
+ var animation_stagger=p.data("animate-stagger");
356
+ var delay_time=p.data("animate-delay");
357
+ var duration_time=p.data("animate-duration");
358
+ var d = p.data("animate-type");
359
+ p.css("opacity","1");
360
+ c = p.find('.animated-columns');
361
+ p.waypoint(function(direction) {
362
+ if( direction === 'down'){
363
+ if(c.hasClass("animation-done")){
364
+ c.hasClass("animation-done");
365
+ }else{
366
+ c.addClass("animation-done").velocity(d,{ delay: delay_time,duration: duration_time,display:'auto',stagger: animation_stagger});
367
+ }
368
+ }
369
+ }, {triggerOnce: true, offset: '120%'} );
370
+ if(c){
371
+ jQuery('head').append("<style type='text/css'>."+id+" .animated-columns.animation-done{opacity:1;}</style>")
372
+ }
373
+ }else if(p.data("animate-columns")=="columns"){
374
+ var b = jQuery('.animated-columns',this);
375
+ var delay_time=p.data("animate-delay");
376
+ var d = p.data("animate-type");
377
+ var duration_time=p.data("animate-duration");
378
+ p.css("opacity","1");
379
+ c = p.find('.animated-columns');
380
+ c.each(function() {
381
+ var bc=jQuery(this);
382
+ bc.waypoint(function(direction) {
383
+ if( direction === 'down'){
384
+ if(bc.hasClass("animation-done")){
385
+ bc.hasClass("animation-done");
386
+ }else{
387
+ bc.addClass("animation-done").velocity(d,{ delay: delay_time,duration: duration_time,drag:true,display:'auto'});
388
+ }
389
+ }
390
+ }, {triggerOnce: true, offset: '90%'} );
391
+ });
392
+ if(c){
393
+ jQuery('head').append("<style type='text/css'>."+id+" .animated-columns.animation-done{opacity:1;}</style>")
394
+ }
395
+ }else{
396
+ var b = jQuery(this);
397
+ var delay_time=b.data("animate-delay");
398
+ var duration_time=b.data("animate-duration");
399
+ d = b.data("animate-type"),
400
+ b.waypoint(function(direction ) {
401
+ if( direction === 'down'){
402
+ if(b.hasClass("animation-done")){
403
+ b.hasClass("animation-done");
404
+ }else{
405
+ b.addClass("animation-done").velocity(d, {delay: delay_time,duration: duration_time,display:'auto'});
406
+ }
407
+ }
408
+ }, {triggerOnce: true, offset: '90%' } );
409
+ }
410
+ })
411
+ },
412
+ e = function() {
413
+ jQuery(".call-on-waypoint").each(function() {
414
+ var c = jQuery(this);
415
+ c.waypoint(function() {
416
+ c.trigger("on-waypoin")
417
+ }, {
418
+ triggerOnce: !0,
419
+ offset: "bottom-in-view"
420
+ })
421
+ })
422
+ };
423
+ jQuery(document).ready(e),jQuery(window).load(e),
424
+ jQuery(document.body).on('post-load', function() {
425
+ e()
426
+ }),
427
+ jQuery(document).ready(d),jQuery(window).load(d),
428
+ jQuery(document.body).on('post-load', function() {
429
+ d()
430
+ });
431
+ jQuery(document).ready(function(){
432
+ e(); d();
433
+ });
434
+ });
435
+ }
436
+ /*--- on load animation ----*/
437
+ /*Text Heading Animation*/
438
+ if(wid_sec.find('.pt-plus-cd-headline').length>0){
439
+ plus_heading_animation();
440
+ }
441
+ /*Text Heading Animation*/
442
+
443
+ if(wid_sec.find('.list-isotope-metro').length>0){
444
+ $(document).ready(function(){
445
+ "use strict";
446
+ var container=wid_sec.find('.list-isotope-metro');
447
+ var uid=container.data("id");
448
+ var columns=container.attr('data-columns');
449
+ var metro_style=container.attr('data-metro-style');
450
+ theplus_backend_packery_portfolio(uid,columns,metro_style);
451
+ });
452
+ }
453
+ if(wid_sec.find('.list-carousel-slick').length>0){
454
+ var carousel_elem = $scope.find('.list-carousel-slick').eq(0);
455
+ $(document).ready(function() {
456
+ if (carousel_elem.length > 0) {
457
+ if(!carousel_elem.hasClass("done-carousel")){
458
+ theplus_carousel_list();
459
+ }
460
+ }
461
+ });
462
+ }
463
+ if(wid_sec.find('.theplus-contact-form').length){
464
+ $(document).ready(function() {
465
+ plus_cf7_form();
466
+ });
467
+ }
468
+ };
469
+ /* Backend load WidgetThePlusHandler */
470
+ $(window).on('elementor/frontend/init', function () {
471
+ elementorFrontend.hooks.addAction('frontend/element_ready/global', WidgetThePlusHandler);
472
+ if (elementorFrontend.isEditMode()) {
473
+ elementorFrontend.hooks.addAction('frontend/element_ready/global', WidgetThePlusHandler);
474
+ elementorFrontend.hooks.addAction('frontend/element_ready/global', WidgetThePlusHandlerBackEnd);
475
+ }
476
+ });
477
+ })(jQuery);
478
+
479
+ /*--- on load animation ----*/
480
+ (function($) {
481
+ 'use strict';
482
+ jQuery(document).ready(function() {
483
+ "use strict";
484
+ jQuery('.animate-general').each(function() {
485
+ var c, p=jQuery(this);
486
+ if(!p.hasClass("animation-done")){
487
+ if(p.find('.animated-columns').length){
488
+ var b = jQuery('.animated-columns',this);
489
+ var delay_time=p.data("animate-delay");
490
+
491
+ c = p.find('.animated-columns');
492
+ c.each(function() {
493
+ jQuery(this).css("opacity", "0");
494
+ });
495
+
496
+ }else{
497
+ var b=jQuery(this);
498
+ var delay_time=b.data("animate-delay");
499
+
500
+ if(b.data("animate-item")){
501
+ c = b.find(b.data("animate-item"));
502
+ c.each(function() {
503
+ jQuery(this).css("opacity", "0");
504
+ });
505
+ }else{
506
+ b.css("opacity", "0");
507
+ }
508
+ }
509
+ }
510
+ });
511
+
512
+ var d = function() {
513
+ jQuery('.animate-general').each(function() {
514
+ var c, d, p=jQuery(this), e = "85%";
515
+ var id=jQuery(this).data("id");
516
+ if(p.data("animate-columns")=="stagger"){
517
+ var b = jQuery('.animated-columns',this);
518
+ var animation_stagger=p.data("animate-stagger");
519
+ var delay_time=p.data("animate-delay");
520
+ var duration_time=p.data("animate-duration");
521
+ var d = p.data("animate-type");
522
+ p.css("opacity","1");
523
+ c = p.find('.animated-columns');
524
+ p.waypoint(function(direction) {
525
+ if( direction === 'down'){
526
+ if(c.hasClass("animation-done")){
527
+ c.hasClass("animation-done");
528
+ }else{
529
+ c.addClass("animation-done").velocity(d,{ delay: delay_time,duration: duration_time,display:'auto',stagger: animation_stagger});
530
+ }
531
+ }
532
+ }, {triggerOnce: true, offset: '120%'} );
533
+ if(c){
534
+ jQuery('head').append("<style type='text/css'>."+id+" .animated-columns.animation-done{opacity:1;}</style>")
535
+ }
536
+ }else if(p.data("animate-columns")=="columns"){
537
+ var b = jQuery('.animated-columns',this);
538
+ var delay_time=p.data("animate-delay");
539
+ var d = p.data("animate-type");
540
+ var duration_time=p.data("animate-duration");
541
+ p.css("opacity","1");
542
+ c = p.find('.animated-columns');
543
+ c.each(function() {
544
+ var bc=jQuery(this);
545
+ bc.waypoint(function(direction) {
546
+ if( direction === 'down'){
547
+ if(bc.hasClass("animation-done")){
548
+ bc.hasClass("animation-done");
549
+ }else{
550
+ bc.addClass("animation-done").velocity(d,{ delay: delay_time,duration: duration_time,drag:true,display:'auto'});
551
+ }
552
+ }
553
+ }, {triggerOnce: true, offset: '90%'} );
554
+ });
555
+ if(c){
556
+ jQuery('head').append("<style type='text/css'>."+id+" .animated-columns.animation-done{opacity:1;}</style>")
557
+ }
558
+ }else{
559
+ var b = jQuery(this);
560
+ var delay_time=b.data("animate-delay");
561
+ var duration_time=b.data("animate-duration");
562
+ d = b.data("animate-type"),
563
+ b.waypoint(function(direction ) {
564
+ if( direction === 'down'){
565
+ if(b.hasClass("animation-done")){
566
+ b.hasClass("animation-done");
567
+ }else{
568
+ b.addClass("animation-done").velocity(d, {delay: delay_time,duration: duration_time,display:'auto'});
569
+ }
570
+ }
571
+ }, {triggerOnce: true, offset: '90%' } );
572
+ }
573
+ })
574
+ },
575
+ e = function() {
576
+ jQuery(".call-on-waypoint").each(function() {
577
+ var c = jQuery(this);
578
+ c.waypoint(function() {
579
+ c.trigger("on-waypoin")
580
+ }, {
581
+ triggerOnce: !0,
582
+ offset: "bottom-in-view"
583
+ })
584
+ })
585
+ };
586
+ jQuery(document).ready(e),jQuery(window).load(e),
587
+ jQuery(document.body).on('post-load', function() {
588
+ e()
589
+ }),
590
+ jQuery(document).ready(d),jQuery(window).load(d),
591
+ jQuery(document.body).on('post-load', function() {
592
+ d()
593
+ });
594
+ jQuery(document).ready(function(){
595
+ e(); d();
596
+ });
597
+ });
598
+ })(jQuery);
599
+ /*--- on load animation ----*/
600
+ /* list carosel slick*/
601
+ function theplus_carousel_list(){
602
+ jQuery('.list-carousel-slick').each(function() {
603
+ var $self=jQuery(this);
604
+ var $uid=$self.data("id");
605
+ var slide_speed=$self.data("slide_speed");
606
+ var default_active_slide=$self.data("default_active_slide");
607
+ var slider_desktop_column=$self.data("slider_desktop_column");
608
+ var steps_slide=$self.data("steps_slide");
609
+ var slider_padding=$self.data("slider_padding");
610
+
611
+ var slider_draggable=$self.data("slider_draggable");
612
+ var slider_infinite=$self.data("slider_infinite");
613
+ var slider_adaptive_height=$self.data("slider_adaptive_height");
614
+ var slider_autoplay=$self.data("slider_autoplay");
615
+ var autoplay_speed=$self.data("autoplay_speed");
616
+ var slider_rows=$self.data("slider_rows");
617
+
618
+ var slider_dots=$self.data("slider_dots");
619
+ var slider_dots_style=$self.data("slider_dots_style");
620
+
621
+ var slider_arrows=$self.data("slider_arrows");
622
+
623
+ if(steps_slide=='1'){
624
+ steps_slide=='1';
625
+ }else{
626
+ steps_slide=slider_desktop_column;
627
+ }
628
+
629
+ var prev_arrow='<button type="button" class="slick-nav slick-prev style-2"><span class="icon-wrap"></span></button>';
630
+ var next_arrow='<button type="button" class="slick-nav slick-next style-2"><span class="icon-wrap"></span></button>';
631
+
632
+ if(default_active_slide==undefined){
633
+ default_active_slide=0;
634
+ }
635
+ if(!jQuery(this).hasClass("done-carousel")){
636
+ jQuery('.'+$uid+' > .post-inner-loop').slick({
637
+ dots: slider_dots,
638
+ vertical: false,
639
+ fade:false,
640
+ arrows: slider_arrows,
641
+ infinite: slider_infinite,
642
+ speed: slide_speed,
643
+ initialSlide: default_active_slide,
644
+ adaptiveHeight: slider_adaptive_height,
645
+ autoplay: slider_autoplay,
646
+ autoplaySpeed: autoplay_speed,
647
+ pauseOnHover: false,
648
+ centerMode: false,
649
+ centerPadding: 0,
650
+ prevArrow: prev_arrow,
651
+ nextArrow: next_arrow,
652
+ slidesToShow: 1,
653
+ slidesToScroll: 1,
654
+ draggable:slider_draggable,
655
+ dotsClass:slider_dots_style,
656
+ });
657
+
658
+ jQuery(this).addClass("done-carousel");
659
+
660
+ }
661
+ });
662
+ }
663
+ /* list carosel slick*/
664
+
665
+ /*text Heading Animation*/
666
+ (function($) {
667
+ 'use strict';
668
+ $(document).ready(function() {
669
+ plus_heading_animation();
670
+ });
671
+ })(jQuery);
672
+ function plus_heading_animation(){
673
+ /*------ heading animation--------*/
674
+ jQuery(document).ready(function($){
675
+ "use strict";
676
+ //set animation timing
677
+ var animationDelay = 2500,
678
+ //loading bar effect
679
+ barAnimationDelay = 3800,
680
+ barWaiting = barAnimationDelay - 3000,
681
+ //letters effect
682
+ lettersDelay = 50,
683
+ //type effect
684
+ typeLettersDelay = 150,
685
+ selectionDuration = 500,
686
+ typeAnimationDelay = selectionDuration + 800,
687
+ //clip effect
688
+ revealDuration = 600,
689
+ revealAnimationDelay = 1500;
690
+
691
+ pt_plus_initHeadline();
692
+
693
+
694
+ function pt_plus_initHeadline() {
695
+ //insert <i> element for each letter of a changing word
696
+ singleLetters($('.pt-plus-cd-headline.letters').find('b'));
697
+ //initialise headline animation
698
+ animateHeadline($('.pt-plus-cd-headline'));
699
+ }
700
+
701
+ function singleLetters($words) {
702
+ $words.each(function(){
703
+ var i;
704
+ var word = $(this),
705
+ letters = word.text().split(''),
706
+ selected = word.hasClass('is-visible');
707
+ for (i in letters) {
708
+ if(word.parents('.rotate-2').length > 0) letters[i] = '<em>' + letters[i] + '</em>';
709
+ letters[i] = (selected) ? '<i class="in">' + letters[i] + '</i>': '<i>' + letters[i] + '</i>';
710
+ }
711
+ var newLetters = letters.join('');
712
+ word.html(newLetters).css('opacity', 1);
713
+ });
714
+ }
715
+
716
+ function animateHeadline($headlines) {
717
+ var duration = animationDelay;
718
+ $headlines.each(function(){
719
+ var headline = $(this);
720
+
721
+ if (!headline.hasClass('type') ) {
722
+ //assign to .cd-words-wrapper the width of its longest word
723
+ var words = headline.find('.cd-words-wrapper b'),
724
+ width = 0;
725
+ words.each(function(){
726
+ var wordWidth = $(this).width();
727
+ if (wordWidth > width) width = wordWidth;
728
+ });
729
+ headline.find('.cd-words-wrapper').css('width', width+12);
730
+ };
731
+
732
+ //trigger animation
733
+ setTimeout(function(){ hideWord( headline.find('.is-visible').eq(0) ) }, duration);
734
+ });
735
+ }
736
+
737
+ function hideWord($word) {
738
+ var nextWord = takeNext($word);
739
+
740
+ if($word.parents('.pt-plus-cd-headline').hasClass('type')) {
741
+ var parentSpan = $word.parent('.cd-words-wrapper');
742
+ parentSpan.addClass('selected').removeClass('waiting');
743
+ setTimeout(function(){
744
+ parentSpan.removeClass('selected');
745
+ $word.removeClass('is-visible').addClass('is-hidden').children('i').removeClass('in').addClass('out');
746
+ }, selectionDuration);
747
+ setTimeout(function(){ showWord(nextWord, typeLettersDelay) }, typeAnimationDelay);
748
+
749
+ } else if($word.parents('.pt-plus-cd-headline').hasClass('letters')) {
750
+ var bool = ($word.children('i').length >= nextWord.children('i').length) ? true : false;
751
+ hideLetter($word.find('i').eq(0), $word, bool, lettersDelay);
752
+ showLetter(nextWord.find('i').eq(0), nextWord, bool, lettersDelay);
753
+
754
+ } else {
755
+ switchWord($word, nextWord);
756
+ setTimeout(function(){ hideWord(nextWord) }, animationDelay);
757
+ }
758
+ }
759
+
760
+ function showWord($word, $duration) {
761
+ if($word.parents('.pt-plus-cd-headline').hasClass('type')) {
762
+ showLetter($word.find('i').eq(0), $word, false, $duration);
763
+ $word.addClass('is-visible').removeClass('is-hidden');
764
+
765
+ }
766
+ }
767
+
768
+ function hideLetter($letter, $word, $bool, $duration) {
769
+ $letter.removeClass('in').addClass('out');
770
+
771
+ if(!$letter.is(':last-child')) {
772
+ setTimeout(function(){ hideLetter($letter.next(), $word, $bool, $duration); }, $duration);
773
+ } else if($bool) {
774
+ setTimeout(function(){ hideWord(takeNext($word)) }, animationDelay);
775
+ }
776
+
777
+ if($letter.is(':last-child') && $('html').hasClass('no-csstransitions')) {
778
+ var nextWord = takeNext($word);
779
+ switchWord($word, nextWord);
780
+ }
781
+ }
782
+
783
+ function showLetter($letter, $word, $bool, $duration) {
784
+ $letter.addClass('in').removeClass('out');
785
+
786
+ if(!$letter.is(':last-child')) {
787
+ setTimeout(function(){ showLetter($letter.next(), $word, $bool, $duration); }, $duration);
788
+ } else {
789
+ if($word.parents('.pt-plus-cd-headline').hasClass('type')) { setTimeout(function(){ $word.parents('.cd-words-wrapper').addClass('waiting'); }, 200);}
790
+ if(!$bool) { setTimeout(function(){ hideWord($word) }, animationDelay) }
791
+ }
792
+ }
793
+
794
+ function takeNext($word) {
795
+ return (!$word.is(':last-child')) ? $word.next() : $word.parent().children().eq(0);
796
+ }
797
+
798
+ function takePrev($word) {
799
+ return (!$word.is(':first-child')) ? $word.prev() : $word.parent().children().last();
800
+ }
801
+
802
+ function switchWord($oldWord, $newWord) {
803
+ $oldWord.removeClass('is-visible').addClass('is-hidden');
804
+ $newWord.removeClass('is-hidden').addClass('is-visible');
805
+ }
806
+ });
807
+ /*----header animation element--------*/
808
+ }
809
+ /*text Heading Animation*/
810
+
811
+ /*- contact form-----------*/
812
+ ( function ( $ ) {
813
+ 'use strict';
814
+ $(document).ready(function() {
815
+ plus_cf7_form();
816
+ });
817
+ } ( jQuery ) );
818
+ function plus_cf7_form(){
819
+ jQuery('.theplus-contact-form').each(function(){
820
+ var radio_checkbox='plus-checkbox';
821
+ var i=0;
822
+ if(!jQuery(this).hasClass("tp-form-loaded")){
823
+ jQuery(".wpcf7-form-control.wpcf7-radio .wpcf7-list-item",this).each(function(){
824
+ var text_val=jQuery(this).find('.wpcf7-list-item-label').text();
825
+ jQuery(this).find('.wpcf7-list-item-label').remove();
826
+ var label_Tags=jQuery('input[type="radio"]',this);
827
+ if ( label_Tags.parent().is( 'label' )) {
828
+ label_Tags.unwrap();
829
+ }
830
+ var radio_name=jQuery(this).find('input[type="radio"]').attr('name');
831
+ jQuery(this).append('<label class="input__radio_btn" for="'+radio_name+i+'">'+text_val+'<div class="toggle-button__icon"></div></label>');
832
+ jQuery(this).find('input[type="radio"]').attr('id',radio_name+i);
833
+
834
+ jQuery(this).find('input[type="radio"]').addClass("input-radio-check");
835
+ jQuery(this).parents(".wpcf7-form-control-wrap").addClass(radio_checkbox);
836
+ i++;
837
+ });
838
+ var i=0;
839
+ jQuery(".wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item",this).each(function(){
840
+ var text_val=jQuery(this).find('.wpcf7-list-item-label').text();
841
+ jQuery(this).find('.wpcf7-list-item-label').remove();
842
+ var label_Tags=jQuery('input[type="checkbox"]',this);
843
+ if ( label_Tags.parent().is( 'label' )) {
844
+ label_Tags.unwrap();
845
+ }
846
+ jQuery(this).append('<label class="input__checkbox_btn" for="'+radio_checkbox+i+'">'+text_val+'<div class="toggle-button__icon"></div></label>');
847
+ jQuery(this).find('input[type="checkbox"]').attr('id',radio_checkbox+i);
848
+
849
+ jQuery(this).find('input[type="checkbox"]').addClass("input-checkbox-check");
850
+ jQuery(this).parents(".wpcf7-form-control-wrap").addClass(radio_checkbox);
851
+ i++;
852
+ });
853
+ jQuery(".wpcf7-form-control-wrap input[type='file']",this).each(function(){
854
+ var file_name=jQuery(this).attr('name');
855
+ jQuery(this).attr('id',file_name+i);
856
+ jQuery(this).attr('data-multiple-caption',"{count} files selected");
857
+ jQuery(this).parents(".wpcf7-form-control-wrap").append('<label class="input__file_btn" for="'+file_name+i+'"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="17" viewBox="0 0 20 17"><path d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"></path></svg><span>Choose a file…</span></label>');
858
+ jQuery(this).parents(".wpcf7-form-control-wrap").addClass("cf7-style-file");
859
+ i++;
860
+ });
861
+ jQuery(this).addClass("tp-form-loaded");
862
+ }
863
+ });
864
+ }
865
+ /*- contact form-----------*/
866
+
867
+ jQuery(window).on("load resize", function() {
868
+ "use strict";
869
+ if (jQuery('.list-isotope-metro').size() > 0) {
870
+ theplus_setup_packery_portfolio('all');
871
+ jQuery('.list-isotope-metro .post-inner-loop').isotope('layout');
872
+ }
873
+ });
874
+ jQuery(document).ready(function() {
875
+ if (jQuery('.list-isotope-metro').size() > 0) {
876
+ theplus_setup_packery_portfolio('all');
877
+ jQuery('.list-isotope-metro .post-inner-loop').isotope('layout').isotope("reloadItems");
878
+ }
879
+ });
880
+
881
+ function theplus_backend_packery_portfolio(uid,metro_column,metro_style) {
882
+ var setPad=0;
883
+ var myWindow=jQuery(window);
884
+ var container=jQuery("#"+uid);
885
+
886
+ if (metro_column == '3') {
887
+ var norm_size = Math.floor((container.width() - setPad*2)/3),
888
+ double_size = norm_size*2;
889
+ container.find('.grid-item').each(function(){
890
+ var set_w = norm_size,
891
+ set_h = norm_size;
892
+
893
+ if(metro_style=='style-1'){
894
+ if (jQuery(this).hasClass('metro-item1') || jQuery(this).hasClass('metro-item7')) {
895
+ set_w = double_size,
896
+ set_h = double_size;
897
+ }
898
+ if (jQuery(this).hasClass('metro-item4') || jQuery(this).hasClass('metro-item9')) {
899
+ set_w = double_size,
900
+ set_h = norm_size;
901
+ }
902
+ }
903
+ if (myWindow.width() < 760) {
904
+ set_w = myWindow.width() - setPad*2;
905
+ set_h = myWindow.width() - setPad*2;
906
+ }
907
+ jQuery(this).css({
908
+ 'width' : set_w+'px',
909
+ 'height' : set_h+'px'
910
+ });
911
+ });
912
+ }
913
+ if (myWindow.innerWidth() > 767) {
914
+ jQuery("#"+uid).isotope({
915
+ itemSelector: '.grid-item',
916
+ layoutMode: 'masonry',
917
+ masonry: {
918
+ columnWidth: norm_size
919
+ }
920
+ });
921
+ }else{
922
+ jQuery("#"+uid).isotope({
923
+ layoutMode: 'masonry',
924
+ masonry: {
925
+ columnWidth: '.grid-item'
926
+ }
927
+ });
928
+ }
929
+ jQuery("#"+uid).isotope('layout').isotope('layout').isotope( 'reloadItems' );
930
+
931
+ jQuery("#"+uid).imagesLoaded( function(){
932
+ jQuery("#"+uid).isotope('layout').isotope( 'reloadItems' );
933
+ });
934
+ }
935
+ function theplus_setup_packery_portfolio(packery_id) {
936
+ jQuery('.list-isotope-metro').each(function(){
937
+ var uid=jQuery(this).data("id");
938
+ var metro_column=jQuery(this).attr('data-columns');
939
+ var tablet_metro_column=jQuery(this).attr('data-tablet-metro-columns');
940
+ var setPad = 0;
941
+ var myWindow=jQuery(window);
942
+ var responsive_width=window.innerWidth;
943
+ if(responsive_width <= 1024 && tablet_metro_column!=undefined){
944
+ metro_column=tablet_metro_column;
945
+ }
946
+ if (metro_column == '3') {
947
+ var metro_style=jQuery(this).attr('data-metro-style');
948
+ if(responsive_width <= 1024 && tablet_metro_column!=undefined){
949
+ metro_style=jQuery(this).attr('data-tablet-metro-style');
950
+ }
951
+ var norm_size = Math.floor((jQuery(this).width() - setPad*2)/3),
952
+ double_size = norm_size*2;
953
+ jQuery(this).find('.grid-item').each(function(){
954
+ var set_w = norm_size,
955
+ set_h = norm_size;
956
+
957
+ if(metro_style=='style-1'){
958
+ if (jQuery(this).hasClass('metro-item1') || jQuery(this).hasClass('metro-item7')) {
959
+ set_w = double_size,
960
+ set_h = double_size;
961
+ }
962
+ if (jQuery(this).hasClass('metro-item4') || jQuery(this).hasClass('metro-item9')) {
963
+ set_w = double_size,
964
+ set_h = norm_size;
965
+ }
966
+ }
967
+ if (myWindow.width() < 760) {
968
+ set_w = myWindow.width() - setPad*2;
969
+ set_h = myWindow.width() - setPad*2;
970
+ }
971
+ jQuery(this).css({
972
+ 'width' : set_w+'px',
973
+ 'height' : set_h+'px'
974
+ });
975
+ });
976
+ }
977
+
978
+ if(jQuery(this).hasClass('list-isotope-metro')){
979
+ if (myWindow.innerWidth() > 767) {
980
+ jQuery("#"+uid).isotope({
981
+ itemSelector: '.grid-item',
982
+ layoutMode: 'masonry',
983
+ masonry: {
984
+ columnWidth: norm_size
985
+ }
986
+ });
987
+ }else{
988
+ jQuery("#"+uid).isotope({
989
+ layoutMode: 'masonry',
990
+ masonry: {
991
+ columnWidth: '.grid-item'
992
+ }
993
+ });
994
+ }
995
+ }else{
996
+ jQuery("#"+uid).isotope({
997
+ layoutMode: 'masonry',
998
+ masonry: {
999
+ columnWidth: norm_size
1000
+ }
1001
+ });
1002
+ }
1003
+ jQuery("#"+uid).isotope('layout');
1004
+
1005
+ jQuery("#"+uid).imagesLoaded( function(){
1006
+ jQuery("#"+uid).isotope('layout').isotope( 'reloadItems' );
1007
+ });
1008
+
1009
+ });
1010
+ }
1011
+ /*-Grid Masonry Metro list js-----*/
assets/js/main/theplus-custom.min.js ADDED
@@ -0,0 +1 @@
 
1
+ function theplus_carousel_list(){jQuery(".list-carousel-slick").each(function(){var t=jQuery(this),e=t.data("id"),a=t.data("slide_speed"),i=t.data("default_active_slide"),o=t.data("slider_desktop_column"),n=t.data("steps_slide"),s=(t.data("slider_padding"),t.data("slider_draggable")),r=t.data("slider_infinite"),l=t.data("slider_adaptive_height"),d=t.data("slider_autoplay"),c=t.data("autoplay_speed"),u=(t.data("slider_rows"),t.data("slider_dots")),p=t.data("slider_dots_style"),m=t.data("slider_arrows");"1"==n||(n=o);null==i&&(i=0),jQuery(this).hasClass("done-carousel")||(jQuery("."+e+" > .post-inner-loop").slick({dots:u,vertical:!1,fade:!1,arrows:m,infinite:r,speed:a,initialSlide:i,adaptiveHeight:l,autoplay:d,autoplaySpeed:c,pauseOnHover:!1,centerMode:!1,centerPadding:0,prevArrow:'<button type="button" class="slick-nav slick-prev style-2"><span class="icon-wrap"></span></button>',nextArrow:'<button type="button" class="slick-nav slick-next style-2"><span class="icon-wrap"></span></button>',slidesToShow:1,slidesToScroll:1,draggable:s,dotsClass:p}),jQuery(this).addClass("done-carousel"))})}function plus_heading_animation(){jQuery(document).ready(function(s){"use strict";var t,i,r=2500,o=50,n=150,l=500,d=l+800;function c(t){var a=p(t);if(t.parents(".pt-plus-cd-headline").hasClass("type")){var e=t.parent(".cd-words-wrapper");e.addClass("selected").removeClass("waiting"),setTimeout(function(){e.removeClass("selected"),t.removeClass("is-visible").addClass("is-hidden").children("i").removeClass("in").addClass("out")},l),setTimeout(function(){var t,e;e=n,(t=a).parents(".pt-plus-cd-headline").hasClass("type")&&(u(t.find("i").eq(0),t,!1,e),t.addClass("is-visible").removeClass("is-hidden"))},d)}else if(t.parents(".pt-plus-cd-headline").hasClass("letters")){var i=t.children("i").length>=a.children("i").length;!function t(e,a,i,o){e.removeClass("in").addClass("out");e.is(":last-child")?i&&setTimeout(function(){c(p(a))},r):setTimeout(function(){t(e.next(),a,i,o)},o);if(e.is(":last-child")&&s("html").hasClass("no-csstransitions")){var n=p(a);m(a,n)}}(t.find("i").eq(0),t,i,o),u(a.find("i").eq(0),a,i,o)}else m(t,a),setTimeout(function(){c(a)},r)}function u(t,e,a,i){t.addClass("in").removeClass("out"),t.is(":last-child")?(e.parents(".pt-plus-cd-headline").hasClass("type")&&setTimeout(function(){e.parents(".cd-words-wrapper").addClass("waiting")},200),a||setTimeout(function(){c(e)},r)):setTimeout(function(){u(t.next(),e,a,i)},i)}function p(t){return t.is(":last-child")?t.parent().children().eq(0):t.next()}function m(t,e){t.removeClass("is-visible").addClass("is-hidden"),e.removeClass("is-hidden").addClass("is-visible")}s(".pt-plus-cd-headline.letters").find("b").each(function(){var t,e=s(this),a=e.text().split(""),i=e.hasClass("is-visible");for(t in a)0<e.parents(".rotate-2").length&&(a[t]="<em>"+a[t]+"</em>"),a[t]=i?'<i class="in">'+a[t]+"</i>":"<i>"+a[t]+"</i>";var o=a.join("");e.html(o).css("opacity",1)}),t=s(".pt-plus-cd-headline"),i=r,t.each(function(){var t=s(this);if(!t.hasClass("type")){var e=t.find(".cd-words-wrapper b"),a=0;e.each(function(){var t=s(this).width();a<t&&(a=t)}),t.find(".cd-words-wrapper").css("width",a+12)}setTimeout(function(){c(t.find(".is-visible").eq(0))},i)})})}function plus_cf7_form(){jQuery(".theplus-contact-form").each(function(){var i="plus-checkbox",o=0;if(!jQuery(this).hasClass("tp-form-loaded")){jQuery(".wpcf7-form-control.wpcf7-radio .wpcf7-list-item",this).each(function(){var t=jQuery(this).find(".wpcf7-list-item-label").text();jQuery(this).find(".wpcf7-list-item-label").remove();var e=jQuery('input[type="radio"]',this);e.parent().is("label")&&e.unwrap();var a=jQuery(this).find('input[type="radio"]').attr("name");jQuery(this).append('<label class="input__radio_btn" for="'+a+o+'">'+t+'<div class="toggle-button__icon"></div></label>'),jQuery(this).find('input[type="radio"]').attr("id",a+o),jQuery(this).find('input[type="radio"]').addClass("input-radio-check"),jQuery(this).parents(".wpcf7-form-control-wrap").addClass(i),o++});o=0;jQuery(".wpcf7-form-control.wpcf7-checkbox .wpcf7-list-item",this).each(function(){var t=jQuery(this).find(".wpcf7-list-item-label").text();jQuery(this).find(".wpcf7-list-item-label").remove();var e=jQuery('input[type="checkbox"]',this);e.parent().is("label")&&e.unwrap(),jQuery(this).append('<label class="input__checkbox_btn" for="'+i+o+'">'+t+'<div class="toggle-button__icon"></div></label>'),jQuery(this).find('input[type="checkbox"]').attr("id",i+o),jQuery(this).find('input[type="checkbox"]').addClass("input-checkbox-check"),jQuery(this).parents(".wpcf7-form-control-wrap").addClass(i),o++}),jQuery(".wpcf7-form-control-wrap input[type='file']",this).each(function(){var t=jQuery(this).attr("name");jQuery(this).attr("id",t+o),jQuery(this).attr("data-multiple-caption","{count} files selected"),jQuery(this).parents(".wpcf7-form-control-wrap").append('<label class="input__file_btn" for="'+t+o+'"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="17" viewBox="0 0 20 17"><path d="M10 0l-5.2 4.9h3.3v5.1h3.8v-5.1h3.3l-5.2-4.9zm9.3 11.5l-3.2-2.1h-2l3.4 2.6h-3.5c-.1 0-.2.1-.2.1l-.8 2.3h-6l-.8-2.2c-.1-.1-.1-.2-.2-.2h-3.6l3.4-2.6h-2l-3.2 2.1c-.4.3-.7 1-.6 1.5l.6 3.1c.1.5.7.9 1.2.9h16.3c.6 0 1.1-.4 1.3-.9l.6-3.1c.1-.5-.2-1.2-.7-1.5z"></path></svg><span>Choose a file…</span></label>'),jQuery(this).parents(".wpcf7-form-control-wrap").addClass("cf7-style-file"),o++}),jQuery(this).addClass("tp-form-loaded")}})}function theplus_backend_packery_portfolio(t,e,a){var i=jQuery(window),o=jQuery("#"+t);if("3"==e){var n=Math.floor((o.width()-0)/3),s=2*n;o.find(".grid-item").each(function(){var t=n,e=n;"style-1"==a&&((jQuery(this).hasClass("metro-item1")||jQuery(this).hasClass("metro-item7"))&&(e=t=s),(jQuery(this).hasClass("metro-item4")||jQuery(this).hasClass("metro-item9"))&&(t=s,e=n)),i.width()<760&&(t=i.width()-0,e=i.width()-0),jQuery(this).css({width:t+"px",height:e+"px"})})}767<i.innerWidth()?jQuery("#"+t).isotope({itemSelector:".grid-item",layoutMode:"masonry",masonry:{columnWidth:n}}):jQuery("#"+t).isotope({layoutMode:"masonry",masonry:{columnWidth:".grid-item"}}),jQuery("#"+t).isotope("layout").isotope("layout").isotope("reloadItems"),jQuery("#"+t).imagesLoaded(function(){jQuery("#"+t).isotope("layout").isotope("reloadItems")})}function theplus_setup_packery_portfolio(t){jQuery(".list-isotope-metro").each(function(){var t=jQuery(this).data("id"),e=jQuery(this).attr("data-columns"),a=jQuery(this).attr("data-tablet-metro-columns"),i=jQuery(window),o=window.innerWidth;if(o<=1024&&null!=a&&(e=a),"3"==e){var n=jQuery(this).attr("data-metro-style");o<=1024&&null!=a&&(n=jQuery(this).attr("data-tablet-metro-style"));var s=Math.floor((jQuery(this).width()-0)/3),r=2*s;jQuery(this).find(".grid-item").each(function(){var t=s,e=s;"style-1"==n&&((jQuery(this).hasClass("metro-item1")||jQuery(this).hasClass("metro-item7"))&&(e=t=r),(jQuery(this).hasClass("metro-item4")||jQuery(this).hasClass("metro-item9"))&&(t=r,e=s)),i.width()<760&&(t=i.width()-0,e=i.width()-0),jQuery(this).css({width:t+"px",height:e+"px"})})}jQuery(this).hasClass("list-isotope-metro")?767<i.innerWidth()?jQuery("#"+t).isotope({itemSelector:".grid-item",layoutMode:"masonry",masonry:{columnWidth:s}}):jQuery("#"+t).isotope({layoutMode:"masonry",masonry:{columnWidth:".grid-item"}}):jQuery("#"+t).isotope({layoutMode:"masonry",masonry:{columnWidth:s}}),jQuery("#"+t).isotope("layout"),jQuery("#"+t).imagesLoaded(function(){jQuery("#"+t).isotope("layout").isotope("reloadItems")})})}!function(t){var e=function(t,e){var a=t.find(".theplus-accordion-wrapper"),i=a.attr("id"),o=(e("#"+i),a.data("accordion-type")),n=a.data("toogle-speed"),s=a.find(".theplus-accordion-item"),r=s.find(".plus-accordion-header");s.each(function(t){e(this).find(r).hasClass("active-default")&&(e(this).find(r).addClass("active"),e(this).find(".plus-accordion-content").addClass("active").css("display","block").slideDown(n))}),"accordion"==o&&r.on("click",function(){e(this).hasClass("active")?(e(this).removeClass("active"),e(this).next(".plus-accordion-content").removeClass("active").slideUp(n)):(r.removeClass("active"),r.next(".plus-accordion-content").removeClass("active").slideUp(n),e(this).toggleClass("active"),e(this).next(".plus-accordion-content").slideToggle(n,function(){e(this).toggleClass("active")}))}),"toggle"==o&&r.on("click",function(){e(this).hasClass("active")?(e(this).removeClass("active"),e(this).next(".plus-accordion-content").removeClass("active").slideUp(n)):(e(this).toggleClass("active"),e(this).next(".plus-accordion-content").slideToggle(n,function(){e(this).toggleClass("active")}))})},a=function(a,t){jQuery(document).ready(function(i){var t=a.find(".theplus-tabs-wrapper"),e=t.data("tab-hover"),o="#"+t.attr("id").toString();i(o+" ul.plus-tabs-nav li .plus-tab-header").each(function(t){i(this).closest(".theplus-tabs-wrapper").data("tab-default")==t&&i(this).removeClass("inactive").addClass("active")}),i(o+" .theplus-tabs-content-wrapper .plus-tab-content").each(function(t){i(this).closest(".theplus-tabs-wrapper").data("tab-default")==t&&i(this).removeClass("inactive").addClass("active")}),"no"==e&&i(o+" ul.plus-tabs-nav li .plus-tab-header").click(function(){var t=i(this).data("tab"),e=i(this).closest(".theplus-tabs-wrapper"),a=(i(e).children("ul.plus-tabs-nav").children("li").children(".plus-tab-header"),i(e).children(".theplus-tabs-content-wrapper").children(".plus-tab-content"));i(e).find(".plus-tab-header").removeClass("active default-active").addClass("inactive"),i(this).addClass("active").removeClass("inactive"),i(e).find(".plus-tab-content").removeClass("active").addClass("inactive"),i(".theplus-tabs-content-wrapper",e).find("[data-tab='"+t+"']").addClass("active").removeClass("inactive"),i(a).each(function(t){i(this).removeClass("default-active")}),i(o+" .list-carousel-slick > .post-inner-loop").slick("setPosition")}),i(o).hasClass("mobile-accordion")&&(i(window).resize(function(){i(window).innerWidth()<=600&&i(o).addClass("mobile-accordion-tab")}),i(o+" .theplus-tabs-content-wrapper .elementor-tab-mobile-title").click(function(){var t=i(this).data("tab"),e=i(this).closest(".theplus-tabs-wrapper"),a=(i(e).children(".theplus-tabs-content-wrapper").children(".elementor-tab-mobile-title"),i(e).children(".theplus-tabs-content-wrapper").children(".plus-tab-content"));i(e).find(".elementor-tab-mobile-title").removeClass("active default-active").addClass("inactive"),i(this).addClass("active").removeClass("inactive"),i(e).find(".plus-tab-content").removeClass("active").addClass("inactive"),i(".theplus-tabs-content-wrapper",e).find("[data-tab='"+t+"']").addClass("active").removeClass("inactive"),i(a).each(function(t){i(this).removeClass("default-active")}),i(o+" .list-carousel-slick > .post-inner-loop").slick("setPosition")}))})},i=function(a,t){jQuery(document).ready(function(t){var e=t(".plus-smooth-scroll",a);if(e.length){var Z=null==e.attr("data-frameRate")?150:e.attr("data-frameRate"),tt=null==e.attr("data-animationTime")?1e3:e.attr("data-animationTime"),et=null==e.attr("data-stepSize")?100:e.attr("data-stepSize"),at=null==e.attr("data-pulseScale")?4:e.attr("data-pulseScale"),it=null==e.attr("data-pulseNormalize")?1:e.attr("data-pulseNormalize"),ot=null==e.attr("data-accelerationDelta")?50:e.attr("data-accelerationDelta"),nt=null==e.attr("data-accelerationMax")?3:e.attr("data-accelerationMax"),st=null==e.attr("data-arrowScroll")?50:e.attr("data-arrowScroll");t("head").append("<style>.magic-scroll .parallax-scroll, .magic-scroll .scale-scroll, .magic-scroll .both-scroll{-webkit-transition: -webkit-transform 1.3s ease .0s;-ms-transition: -ms-transform 1.3s ease .0s;-moz-transition: -moz-transform 1.3s ease .0s;-o-transition: -o-transform 1.3s ease .0s;transition: transform 0s ease .0s;will-change: transform;}</style>"),function(){function n(){if(!M&&document.body){M=!0;var t=document.body,e=document.documentElement,a=window.innerHeight,i=t.scrollHeight;if(z=0<=document.compatMode.indexOf("CSS")?e:t,g=t,k.keyboardSupport&&h("keydown",r),top!=self)S=!0;else if(G&&a<i&&(t.offsetHeight<=a||e.offsetHeight<=a)){var o,n=document.createElement("div");n.style.cssText="position:absolute; z-index:-10000; top:0; left:0; right:0; height:"+z.scrollHeight+"px",document.body.appendChild(n),j=function(){o||(o=setTimeout(function(){x||(n.style.height="0",n.style.height=z.scrollHeight+"px",o=null)},500))},setTimeout(j,10),h("resize",j);if((b=new R(j)).observe(t,{attributes:!0,childList:!0,characterData:!1}),z.offsetHeight<=a){var s=document.createElement("div");s.style.clear="both",t.appendChild(s)}}k.fixedBackground||x||(t.style.backgroundAttachment="scroll",e.style.backgroundAttachment="scroll")}}function d(p,m,h){if(a=0<(a=m)?1:-1,i=0<(i=h)?1:-1,T.x===a&&T.y===i||(T.x=a,T.y=i,H=[],L=0),1!=k.accelerationMax){var t=Date.now()-L;if(t<k.accelerationDelta){var e=(1+50/t)/2;1<e&&(e=Math.min(e,k.accelerationMax),m*=e,h*=e)}L=Date.now()}var a,i;if(H.push({x:m,y:h,lastX:m<0?.99:-.99,lastY:h<0?.99:-.99,start:Date.now()}),!q){var f=p===document.body,y=function(t){for(var e=Date.now(),a=0,i=0,o=0;o<H.length;o++){var n=H[o],s=e-n.start,r=s>=k.animationTime,l=r?1:s/k.animationTime;k.pulseAlgorithm&&(l=1<=(u=l)?1:u<=0?0:(1==k.pulseNormalize&&(k.pulseNormalize/=v(1)),v(u)));var d=n.x*l-n.lastX>>0,c=n.y*l-n.lastY>>0;a+=d,i+=c,n.lastX+=d,n.lastY+=c,r&&(H.splice(o,1),o--)}var u;f?window.scrollBy(a,i):(a&&(p.scrollLeft+=a),i&&(p.scrollTop+=i)),m||h||(H=[]),H.length?N(y,p,1e3/k.frameRate+1):q=!1};N(y,p,0),q=!0}}function t(t){M||n();var e=t.target;if(t.defaultPrevented||t.ctrlKey)return!0;if(f(g,"embed")||f(e,"embed")&&/\.pdf/i.test(e.src)||f(g,"object")||e.shadowRoot)return!0;var a=-t.wheelDeltaX||t.deltaX||0,i=-t.wheelDeltaY||t.deltaY||0;A&&(t.wheelDeltaX&&y(t.wheelDeltaX,120)&&(a=t.wheelDeltaX/Math.abs(t.wheelDeltaX)*-120),t.wheelDeltaY&&y(t.wheelDeltaY,120)&&(i=t.wheelDeltaY/Math.abs(t.wheelDeltaY)*-120)),a||i||(i=-t.wheelDelta||0),1===t.deltaMode&&(a*=40,i*=40);var o=u(e);return o?!!function(t){if(t)return D.length||(D=[t,t,t]),t=Math.abs(t),D.push(t),D.shift(),clearTimeout(Q),Q=setTimeout(function(){try{localStorage.SS_deltaBuffer=D.join(",")}catch(t){}},1e3),!w(120)&&!w(100)}(i)||(1.2<Math.abs(a)&&(a*=k.stepSize/120),1.2<Math.abs(i)&&(i*=k.stepSize/120),d(o,a,i),t.preventDefault(),void c()):!S||!K||(Object.defineProperty(t,"target",{value:window.frameElement}),parent.wheel(t))}function r(t){var e=t.target,a=t.ctrlKey||t.altKey||t.metaKey||t.shiftKey&&t.keyCode!==O.spacebar;document.body.contains(g)||(g=document.activeElement);var i=/^(button|submit|radio|checkbox|file|color|image)$/i;if(t.defaultPrevented||/^(textarea|select|embed|object)$/i.test(e.nodeName)||f(e,"input")&&!i.test(e.type)||f(g,"video")||function(t){var e=t.target,a=!1;if(-1!=document.URL.indexOf("www.youtube.com/watch"))do{if(a=e.classList&&e.classList.contains("html5-video-controls"))break}while(e=e.parentNode);return a}(t)||e.isContentEditable||a)return!0;if((f(e,"button")||f(e,"input")&&i.test(e.type))&&t.keyCode===O.spacebar)return!0;if(f(e,"input")&&"radio"==e.type&&E[t.keyCode])return!0;var o=0,n=0,s=u(g);if(!s)return!S||!K||parent.keydown(t);var r=s.clientHeight;switch(s==document.body&&(r=window.innerHeight),t.keyCode){case O.up:n=-k.arrowScroll;break;case O.down:n=k.arrowScroll;break;case O.spacebar:n=-(t.shiftKey?1:-1)*r*.9;break;case O.pageup:n=.9*-r;break;case O.pagedown:n=.9*r;break;case O.home:n=-s.scrollTop;break;case O.end:var l=s.scrollHeight-s.scrollTop-r;n=0<l?l+10:0;break;case O.left:o=-k.arrowScroll;break;case O.right:o=k.arrowScroll;break;default:return!0}d(s,o,n),t.preventDefault(),c()}function e(t){g=t.target}function c(){clearTimeout(o),o=setInterval(function(){P={}},1e3)}function s(t,e){for(var a=t.length;a--;)P[W(t[a])]=e;return e}function u(t){var e=[],a=document.body,i=z.scrollHeight;do{var o=P[W(t)];if(o)return s(e,o);if(e.push(t),i===t.scrollHeight){var n=p(z)&&p(a)||m(z);if(S&&l(z)||!S&&n)return s(e,X())}else if(l(t)&&m(t))return s(e,t)}while(t=t.parentElement)}function l(t){return t.clientHeight+10<t.scrollHeight}function p(t){return"hidden"!==getComputedStyle(t,"").getPropertyValue("overflow-y")}function m(t){var e=getComputedStyle(t,"").getPropertyValue("overflow-y");return"scroll"===e||"auto"===e}function h(t,e){window.addEventListener(t,e,!1)}function a(t,e){window.removeEventListener(t,e,!1)}function f(t,e){return(t.nodeName||"").toLowerCase()===e.toLowerCase()}function y(t,e){return Math.floor(t/e)==t/e}function w(t){return y(D[0],t)&&y(D[1],t)&&y(D[2],t)}function v(t){var e,a;return(t*=k.pulseScale)<1?e=t-(1-Math.exp(-t)):(t-=1,e=(a=Math.exp(-1))+(1-Math.exp(-t))*(1-a)),e*k.pulseNormalize}function i(t){for(var e in t)_.hasOwnProperty(e)&&(k[e]=t[e])}var g,b,j,o,Q,C,_={frameRate:Z,animationTime:tt,stepSize:et,pulseAlgorithm:!0,pulseScale:at,pulseNormalize:it,accelerationDelta:ot,accelerationMax:nt,keyboardSupport:!0,arrowScroll:st,fixedBackground:!0,excluded:""},k=_,x=!1,S=!1,T={x:0,y:0},M=!1,z=document.documentElement,D=[],A=/^Mac/.test(navigator.platform),O={left:37,up:38,right:39,down:40,spacebar:32,pageup:33,pagedown:34,end:35,home:36},E={37:1,38:1,39:1,40:1},H=[],q=!1,L=Date.now(),W=(C=0,function(t){return t.uniqueID||(t.uniqueID=C++)}),P={};if(window.localStorage&&localStorage.SS_deltaBuffer)try{D=localStorage.SS_deltaBuffer.split(",")}catch(t){}var B,F,N=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||function(t,e,a){window.setTimeout(t,a||1e3/60)},R=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver,X=function(){if(!F){var t=document.createElement("div");t.style.cssText="height:10000px;width:1px;",document.body.appendChild(t);var e=document.body.scrollTop;document.documentElement.scrollTop,window.scrollBy(0,3),F=document.body.scrollTop!=e?document.body:document.documentElement,window.scrollBy(0,-3),document.body.removeChild(t)}return F},Y=window.navigator.userAgent,I=/Edge/.test(Y),K=/chrome/i.test(Y)&&!I,U=/safari/i.test(Y)&&!I,V=/mobile/i.test(Y),$=/Windows NT 6.1/i.test(Y)&&/rv:11/i.test(Y),G=U&&(/Version\/8/i.test(Y)||/Version\/9/i.test(Y)),J=(K||U||$)&&!V;"onwheel"in document.createElement("div")?B="wheel":"onmousewheel"in document.createElement("div")&&(B="mousewheel"),B&&J&&(h(B,t),h("mousedown",e),h("load",n)),i.destroy=function(){b&&b.disconnect(),a(B,t),a("mousedown",e),a("keydown",r),a("resize",j),a("load",n)},window.SmoothScrollOptions&&i(window.SmoothScrollOptions),"function"==typeof define&&define.amd?define(function(){return i}):"object"==typeof exports?module.exports=i:window.SmoothScroll=i}()}})};t(window).on("elementor/frontend/init",function(){elementorFrontend.hooks.addAction("frontend/element_ready/tp-accordion.default",e),elementorFrontend.hooks.addAction("frontend/element_ready/tp-tabs-tours.default",a),elementorFrontend.hooks.addAction("frontend/element_ready/tp-smooth-scroll.default",i)});var o=function(t,s){t.find(".pt-plus-row-set").eq(0).parents("section.elementor-element");var e=t.parents("section.elementor-element");if(0<e.find(".pt_plus_countdown").length&&function(n){"use strict";function t(){n(".pt_plus_countdown").each(function(){var t=n(this).attr("data-timer").split("-"),e=n(this).data("days"),a=n(this).data("hours"),i=n(this).data("minutes"),o=n(this).data("seconds");n(this).downCount({date:t[1]+"/"+t[0]+"/"+t[2]+" 12:00:00",offset:1,text_day:e,text_hour:a,text_minute:i,text_second:o})})}n(document).ready(function(){t(),n(".pt_plus_countdown").change(function(){t()})})}(jQuery),0<e.find(".list-isotope").length){var a=window.theplus||{};a.window=s(window),a.document=s(document),a.windowHeight=a.window.height(),a.windowWidth=a.window.width(),a.list_isotope_Posts=function(){var t=function(t){s(".list-isotope").each(function(){var t,e=s(this),a=e.data("layout-type"),i={itemSelector:".grid-item",resizable:!0,sortBy:"original-order"},o=e.data("id"),n=s("."+o).find(".post-inner-loop");s("."+o).addClass("pt-plus-isotope layout-"+a),t="masonry"===a?"packery":"fitRows",i.layoutMode=t,n.isotope(i),s("."+o+" .post-filter-data").find(".filter-category-list").click(function(t){t.preventDefault();var e=s(this).attr("data-filter");s(this).parent().parent().find(".active").removeClass("active"),s(this).addClass("active"),n.isotope({filter:e}),s("body").trigger("isotope-sorted")})})};a.window.on("load resize",function(){t()}),a.document.on("load resize",function(){t()}),s(document).ready(function(){t()}),s("body").on("post-load resort-isotope",function(){setTimeout(function(){t()},800)}),s("body").on("tabs-reinited",function(){setTimeout(function(){t()},800)}),s.browser.firefox=/firefox/.test(navigator.userAgent.toLowerCase()),s.browser.firefox&&setTimeout(function(){t()},2500)},a.init=function(){a.list_isotope_Posts()},a.init()}if(0<e.find(".list-isotope-metro").length&&0<s(".list-isotope-metro").size()&&(s(window).on("load resize",function(){theplus_setup_packery_portfolio("all"),s(".list-isotope-metro .post-inner-loop").isotope("layout").isotope("reloadItems")}),s("body").on("post-load resort-isotope",function(){setTimeout(function(){theplus_setup_packery_portfolio("all"),s(".list-isotope-metro .post-inner-loop").isotope("layout")},800)}),s("body").on("tabs-reinited",function(){setTimeout(function(){theplus_setup_packery_portfolio("all"),s(".list-isotope-metro .post-inner-loop").isotope("layout")},800)}),s.browser.firefox=/firefox/.test(navigator.userAgent.toLowerCase()),s.browser.firefox&&setTimeout(function(){theplus_setup_packery_portfolio("all"),s(".list-isotope-metro .post-inner-loop").isotope("layout")},2500)),0<e.find(".list-carousel-slick").length){var i=t.find(".list-carousel-slick").eq(0);s(document).ready(function(){0<i.length&&(i.hasClass("done-carousel")||theplus_carousel_list())})}0<e.find(".blog-list.blog-style-1").length&&jQuery(document).ready(function(t){jQuery(document).on("mouseenter",".blog-list.blog-style-1 .grid-item .blog-list-content",function(){jQuery(this).find(".post-hover-content").slideDown(300)}),jQuery(document).on("mouseleave",".blog-list.blog-style-1 .grid-item .blog-list-content",function(){jQuery(this).find(".post-hover-content").slideUp(300)})})},n=function(t,e){var a=t.parents("section.elementor-element");if(a.find(".animate-general").length&&jQuery(document).ready(function(){"use strict";jQuery(".animate-general").each(function(){var t=jQuery(this);if(!t.hasClass("animation-done"))if(t.find(".animated-columns").length){var e=jQuery(".animated-columns",this);t.data("animate-delay");t.find(".animated-columns").each(function(){jQuery(this).css("opacity","0")})}else{(e=jQuery(this)).data("animate-delay");e.data("animate-item")?e.find(e.data("animate-item")).each(function(){jQuery(this).css("opacity","0")}):e.css("opacity","0")}});var t=function(){jQuery(".animate-general").each(function(){var e,t=jQuery(this),a=jQuery(this).data("id");if("stagger"==t.data("animate-columns")){var i=jQuery(".animated-columns",this),o=t.data("animate-stagger"),n=t.data("animate-delay"),s=t.data("animate-duration"),r=t.data("animate-type");t.css("opacity","1"),e=t.find(".animated-columns"),t.waypoint(function(t){"down"===t&&(e.hasClass("animation-done")?e.hasClass("animation-done"):e.addClass("animation-done").velocity(r,{delay:n,duration:s,display:"auto",stagger:o}))},{triggerOnce:!0,offset:"120%"}),e&&jQuery("head").append("<style type='text/css'>."+a+" .animated-columns.animation-done{opacity:1;}</style>")}else if("columns"==t.data("animate-columns")){i=jQuery(".animated-columns",this),n=t.data("animate-delay"),r=t.data("animate-type"),s=t.data("animate-duration");t.css("opacity","1"),(e=t.find(".animated-columns")).each(function(){var e=jQuery(this);e.waypoint(function(t){"down"===t&&(e.hasClass("animation-done")?e.hasClass("animation-done"):e.addClass("animation-done").velocity(r,{delay:n,duration:s,drag:!0,display:"auto"}))},{triggerOnce:!0,offset:"90%"})}),e&&jQuery("head").append("<style type='text/css'>."+a+" .animated-columns.animation-done{opacity:1;}</style>")}else{n=(i=jQuery(this)).data("animate-delay"),s=i.data("animate-duration");r=i.data("animate-type"),i.waypoint(function(t){"down"===t&&(i.hasClass("animation-done")?i.hasClass("animation-done"):i.addClass("animation-done").velocity(r,{delay:n,duration:s,display:"auto"}))},{triggerOnce:!0,offset:"90%"})}})},e=function(){jQuery(".call-on-waypoint").each(function(){var t=jQuery(this);t.waypoint(function(){t.trigger("on-waypoin")},{triggerOnce:!0,offset:"bottom-in-view"})})};jQuery(document).ready(e),jQuery(window).load(e),jQuery(document.body).on("post-load",function(){e()}),jQuery(document).ready(t),jQuery(window).load(t),jQuery(document.body).on("post-load",function(){t()}),jQuery(document).ready(function(){e(),t()})}),0<a.find(".pt-plus-cd-headline").length&&plus_heading_animation(),0<a.find(".list-isotope-metro").length&&e(document).ready(function(){"use strict";var t=a.find(".list-isotope-metro");theplus_backend_packery_portfolio(t.data("id"),t.attr("data-columns"),t.attr("data-metro-style"))}),0<a.find(".list-carousel-slick").length){var i=t.find(".list-carousel-slick").eq(0);e(document).ready(function(){0<i.length&&(i.hasClass("done-carousel")||theplus_carousel_list())})}a.find(".theplus-contact-form").length&&e(document).ready(function(){plus_cf7_form()})};t(window).on("elementor/frontend/init",function(){elementorFrontend.hooks.addAction("frontend/element_ready/global",o),elementorFrontend.isEditMode()&&(elementorFrontend.hooks.addAction("frontend/element_ready/global",o),elementorFrontend.hooks.addAction("frontend/element_ready/global",n))})}(jQuery),function(t){"use strict";jQuery(document).ready(function(){jQuery(".animate-general").each(function(){var t=jQuery(this);if(!t.hasClass("animation-done"))if(t.find(".animated-columns").length){var e=jQuery(".animated-columns",this);t.data("animate-delay");t.find(".animated-columns").each(function(){jQuery(this).css("opacity","0")})}else{(e=jQuery(this)).data("animate-delay");e.data("animate-item")?e.find(e.data("animate-item")).each(function(){jQuery(this).css("opacity","0")}):e.css("opacity","0")}});var t=function(){jQuery(".animate-general").each(function(){var e,t=jQuery(this),a=jQuery(this).data("id");if("stagger"==t.data("animate-columns")){var i=jQuery(".animated-columns",this),o=t.data("animate-stagger"),n=t.data("animate-delay"),s=t.data("animate-duration"),r=t.data("animate-type");t.css("opacity","1"),e=t.find(".animated-columns"),t.waypoint(function(t){"down"===t&&(e.hasClass("animation-done")?e.hasClass("animation-done"):e.addClass("animation-done").velocity(r,{delay:n,duration:s,display:"auto",stagger:o}))},{triggerOnce:!0,offset:"120%"}),e&&jQuery("head").append("<style type='text/css'>."+a+" .animated-columns.animation-done{opacity:1;}</style>")}else if("columns"==t.data("animate-columns")){i=jQuery(".animated-columns",this),n=t.data("animate-delay"),r=t.data("animate-type"),s=t.data("animate-duration");t.css("opacity","1"),(e=t.find(".animated-columns")).each(function(){var e=jQuery(this);e.waypoint(function(t){"down"===t&&(e.hasClass("animation-done")?e.hasClass("animation-done"):e.addClass("animation-done").velocity(r,{delay:n,duration:s,drag:!0,display:"auto"}))},{triggerOnce:!0,offset:"90%"})}),e&&jQuery("head").append("<style type='text/css'>."+a+" .animated-columns.animation-done{opacity:1;}</style>")}else{n=(i=jQuery(this)).data("animate-delay"),s=i.data("animate-duration");r=i.data("animate-type"),i.waypoint(function(t){"down"===t&&(i.hasClass("animation-done")?i.hasClass("animation-done"):i.addClass("animation-done").velocity(r,{delay:n,duration:s,display:"auto"}))},{triggerOnce:!0,offset:"90%"})}})},e=function(){jQuery(".call-on-waypoint").each(function(){var t=jQuery(this);t.waypoint(function(){t.trigger("on-waypoin")},{triggerOnce:!0,offset:"bottom-in-view"})})};jQuery(document).ready(e),jQuery(window).load(e),jQuery(document.body).on("post-load",function(){e()}),jQuery(document).ready(t),jQuery(window).load(t),jQuery(document.body).on("post-load",function(){t()}),jQuery(document).ready(function(){e(),t()})})}(jQuery),function(t){"use strict";jQuery(document).ready(function(){plus_heading_animation()})}(),function(t){"use strict";jQuery(document).ready(function(){plus_cf7_form()})}(),jQuery(window).on("load resize",function(){"use strict";0<jQuery(".list-isotope-metro").size()&&(theplus_setup_packery_portfolio("all"),jQuery(".list-isotope-metro .post-inner-loop").isotope("layout"))}),jQuery(document).ready(function(){0<jQuery(".list-isotope-metro").size()&&(theplus_setup_packery_portfolio("all"),jQuery(".list-isotope-metro .post-inner-loop").isotope("layout").isotope("reloadItems"))});
includes/blog/blog-style-1.php ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $postid=get_the_ID();
3
+ $bg_attr='';
4
+ if($layout=='metro'){
5
+ $featured_image=get_the_post_thumbnail_url($postid,'full');
6
+ if ( !empty($featured_image) ) {
7
+ $bg_attr=theplus_loading_bg_image($postid);
8
+ }else{
9
+ $bg_attr = theplus_loading_image_grid($postid,'background');
10
+ }
11
+ }
12
+ ?>
13
+ <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
14
+ <div class="blog-list-content">
15
+ <?php if($layout!='metro'){ ?>
16
+ <div class="post-content-image">
17
+ <a href="<?php echo esc_url(get_the_permalink()); ?>">
18
+ <?php include THEPLUS_INCLUDES_URL. 'blog/format-image.php'; ?>
19
+ </a>
20
+ </div>
21
+ <?php } ?>
22
+ <div class="post-content-bottom">
23
+ <?php if(!empty($display_post_meta) && $display_post_meta=='yes'){ ?>
24
+ <div class="post-meta-info style-1">
25
+ <?php include THEPLUS_INCLUDES_URL. 'blog/meta-date.php'; ?>
26
+ <span>|</span> <span class="post-author"><?php echo __('By ', 'theplus'); ?> <a href="<?php echo get_author_posts_url(get_the_author_meta('ID')); ?>" rel="author" class="fn"><?php echo get_the_author(); ?></a> </span>
27
+ </div>
28
+ <?php } ?>
29
+ <?php include THEPLUS_INCLUDES_URL. 'blog/post-meta-title.php'; ?>
30
+ <div class="post-hover-content">
31
+ <?php if(!empty($display_excerpt) && $display_excerpt=='yes' && get_the_excerpt()){
32
+ include THEPLUS_INCLUDES_URL. 'blog/get-excerpt.php';
33
+ } ?>
34
+ </div>
35
+ </div>
36
+ <?php if($layout=='metro'){ ?>
37
+ <div class="blog-bg-image-metro" <?php echo $bg_attr; ?>></div>
38
+ <?php } ?>
39
+ </div>
40
+ </article>
includes/blog/format-image.php ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ global $post;
3
+ $postid = get_the_ID();
4
+ $featured_image_url = wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ) );
5
+
6
+ if(! empty( $featured_image_url )){
7
+ if(!empty($layout) && $layout=='grid'){
8
+
9
+ $featured_image=get_the_post_thumbnail_url(get_the_ID(),'tp-image-grid');
10
+ $featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr(get_the_title()).'">';
11
+
12
+ }else if(!empty($layout) && $layout=='masonry'){
13
+
14
+ $featured_image=get_the_post_thumbnail_url(get_the_ID(),'full');
15
+ $featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr(get_the_title()).'">';
16
+
17
+ }else{
18
+
19
+ $featured_image=get_the_post_thumbnail_url(get_the_ID(),'full');
20
+ $featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr(get_the_title()).'">';
21
+
22
+ }
23
+ }else{
24
+ $featured_image=theplus_get_thumb_url();
25
+ $featured_image=$featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr(get_the_title()).'">';
26
+ }
27
+
28
+ ?>
29
+ <div class="blog-featured-image">
30
+ <span class="thumb-wrap">
31
+ <?php echo $featured_image; ?>
32
+ </span>
33
+ </div>
includes/blog/get-excerpt.php ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ <div class="entry-content">
2
+ <p><?php echo theplus_excerpt($post_excerpt_count); ?></p>
3
+ </div>
includes/blog/meta-date.php ADDED
@@ -0,0 +1 @@
 
1
+ <span class="meta-date"><a href="<?php echo esc_url(get_the_permalink()); ?> "><span class="entry-date"><?php echo get_the_date(); ?></span></a></span>
includes/blog/post-meta-title.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php if(!isset($post_title_tag) && empty($post_title_tag)){
2
+ $post_title_tag='h3';
3
+ } ?>
4
+ <<?php echo $post_title_tag; ?> class="post-title">
5
+ <a href="<?php echo esc_url(get_the_permalink()); ?>"><?php echo esc_html(get_the_title()); ?></a>
6
+ </<?php echo $post_title_tag; ?>>
includes/client/client-style-1.php ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $postid=get_the_ID();
3
+ $client_url = get_post_meta(get_the_id(), 'theplus_clients_url', true);
4
+ ?>
5
+ <article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
6
+ <div class="client-post-content">
7
+ <div class="client-content-logo">
8
+ <a href="<?php echo esc_url($client_url); ?>" target="_blank">
9
+ <?php include THEPLUS_INCLUDES_URL. 'client/format-image.php'; ?>
10
+ </a>
11
+ </div>
12
+ <?php if(!empty($display_post_title) && $display_post_title=='yes'){ ?>
13
+ <div class="post-content-bottom">
14
+ <?php include THEPLUS_INCLUDES_URL. 'client/post-meta-title.php'; ?>
15
+ </div>
16
+ <?php } ?>
17
+ </div>
18
+ </article>
includes/client/format-image.php ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ global $post;
3
+ $postid = get_the_ID();
4
+ $featured_image_url = wp_get_attachment_url( get_post_thumbnail_id( get_the_ID() ) );
5
+
6
+ if(! empty( $featured_image_url )){
7
+ $featured_image=get_the_post_thumbnail_url(get_the_ID(),'full');
8
+ $featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr(get_the_title()).'">';
9
+ }else{
10
+ $featured_image=theplus_get_thumb_url();
11
+ $featured_image=$featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr(get_the_title()).'">';
12
+ }
13
+
14
+ ?>
15
+ <div class="client-featured-logo">
16
+ <span class="thumb-wrap">
17
+ <?php echo $featured_image; ?>
18
+ </span>
19
+ </div>
includes/client/post-meta-title.php ADDED
@@ -0,0 +1,8 @@
 
 
 
 
 
 
 
 
1
+ <?php if(!isset($post_title_tag) && empty($post_title_tag)){
2
+ $post_title_tag='h3';
3
+ }
4
+ $client_url = get_post_meta(get_the_id(), 'theplus_clients_url', true);
5
+ ?>
6
+ <<?php echo $post_title_tag; ?> class="post-title">
7
+ <a href="<?php echo esc_url($client_url); ?>" target="_blank"><?php echo esc_html(get_the_title()); ?></a>
8
+ </<?php echo $post_title_tag; ?>>
includes/gallery/format-image.php ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if($attachment){
3
+ $featured_image_id = $attachment->ID;
4
+ }else{
5
+ $featured_image_id = $image_id;
6
+ }
7
+ if(! empty( $featured_image_id )){
8
+ if(!empty($layout) && $layout=='grid'){
9
+ $featured_image=wp_get_attachment_image( $featured_image_id, 'tp-image-grid' );
10
+ }else if(!empty($layout) && $layout=='masonry'){
11
+ $featured_image=wp_get_attachment_image($featured_image_id ,'full');
12
+ }else{
13
+ $featured_image=wp_get_attachment_image($featured_image_id ,'full');
14
+ }
15
+ }else{
16
+ $featured_image=theplus_get_thumb_url();
17
+ $featured_image=$featured_image='<img src="'.esc_url($featured_image).'" alt="'.esc_attr($image_alt).'">';
18
+ }
19
+
20
+ ?>
21
+ <div class="gallery-image">
22
+ <span class="thumb-wrap">
23
+ <?php echo $featured_image; ?>
24
+ </span>
25
+ </div>
includes/gallery/gallery-style-1.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ $full_image='';
3
+ $full_image=wp_get_attachment_url($image_id ,'full');
4
+
5
+ $bg_attr='';
6
+ if($layout=='metro'){
7
+ if ( !empty($full_image) ) {
8
+ $bg_attr='style="background:url('.$full_image.')"';
9
+ }else{
10
+ $bg_attr = theplus_loading_image_grid($postid,'background');
11
+ }
12
+ }
13
+ ?>
14
+ <div class="gallery-list-content">
15
+ <?php if($layout!='metro'){ ?>
16
+ <div class="post-content-image">
17
+ <?php include THEPLUS_INCLUDES_URL. 'gallery/format-image.php'; ?>
18
+ </div>
19
+ <?php } ?>
20
+ <div class="post-content-center">
21
+ <div class="post-hover-content">
22
+ <?php if(!empty($display_icon_zoom) && $display_icon_zoom=='yes'){
23
+ include THEPLUS_INCLUDES_URL. 'gallery/meta-icon.php';
24
+ } ?>
25
+ <?php if(!empty($image_icon) && !empty($list_img)){ ?>
26
+ <div class="gallery-list-icon"><?php echo $list_img; ?></div>
27
+ <?php } ?>
28
+ <?php if(!empty($display_title) && $display_title=='yes'){
29
+ include THEPLUS_INCLUDES_URL. 'gallery/meta-title.php';
30
+ } ?>
31
+ <?php if(!empty($display_excerpt) && $display_excerpt=='yes' && !empty($caption)){
32
+ include THEPLUS_INCLUDES_URL. 'gallery/get-excerpt.php';
33
+ } ?>
34
+ </div>
35
+ </div>
36
+ <?php if($layout=='metro'){ ?>
37
+ <div class="gallery-bg-image-metro" <?php echo $bg_attr; ?>></div>
38
+ <?php } ?>
39
+ </div>
includes/gallery/get-excerpt.php ADDED
@@ -0,0 +1,3 @@
 
 
 
1
+ <div class="entry-content">
2
+ <?php echo $caption; ?>
3
+ </div>
includes/gallery/meta-icon.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php if(!empty($settings["custom_icon_image"]["url"])){
2
+ $icon_content ='<img src="'.esc_url($settings["custom_icon_image"]["url"]).'" alt="'.esc_attr('zoom','theplus').'"/>';
3
+ }else{
4
+ $icon_content ='<i class="fa fa-search-plus" aria-hidden="true"></i>';
5
+ } ?>
6
+ <div class="meta-search-icon"><a href="<?php echo esc_url($full_image); ?>" <?php echo $popup_attr; ?>><?php echo $icon_content; ?></a></div>
includes/gallery/meta-title.php ADDED
@@ -0,0 +1,6 @@
 
 
 
 
 
 
1
+ <?php if(!isset($post_title_tag) && empty($post_title_tag)){
2
+ $post_title_tag='h3';
3
+ } ?>
4
+ <<?php echo $post_title_tag; ?> class="post-title">
5
+ <?php if(empty($display_icon_zoom) || $display_icon_zoom!='yes'){ ?><a href="<?php echo esc_url($full_image); ?>" <?php echo $popup_attr; ?>><?php } ?><?php echo esc_html($title); ?><?php if(empty($display_icon_zoom) || $display_icon_zoom!='yes'){ ?></a><?php } ?>
6
+ </<?php echo $post_title_tag; ?>>
includes/plus-options/cmb2-conditionals.js ADDED
@@ -0,0 +1,21 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ jQuery( document ).ready( function( $ ) {
2
+ 'use strict';
3
+ $( 'input[data-conditional-id]' ).each(function () {
4
+ var $this=$(this);
5
+ var ids=$(this).data('conditional-id');
6
+ var values=$(this).data('conditional-value');
7
+ $( "#"+ids ).change(function () {
8
+
9
+ $( "#"+ids+" option:selected" ).each(function() {
10
+ var value = $( this ).val();
11
+ if(value==values){
12
+ $this.parent('td').parent('tr').removeClass("hidden").addClass("show");
13
+ }else{
14
+ $this.parent('td').parent('tr').removeClass("show").addClass("hidden");
15
+ }
16
+ });
17
+
18
+ })
19
+ .change();
20
+ });
21
+ });
includes/plus-options/cmb2-conditionals.php ADDED
@@ -0,0 +1,210 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ if ( ! class_exists( 'CMB2_Conditionals' ) ) {
3
+
4
+ /**
5
+ * CMB2_Conditionals Plugin.
6
+ */
7
+ class CMB2_Conditionals {
8
+
9
+ /**
10
+ * Priority on which our actions are hooked in.
11
+ *
12
+ * @const int
13
+ */
14
+ const PRIORITY = 99999;
15
+
16
+ /**
17
+ * Version number of the plugin.
18
+ *
19
+ * @const string
20
+ */
21
+ const VERSION = '1.0.4';
22
+
23
+ /**
24
+ * CMB2 Form elements which can be set to "required".
25
+ *
26
+ * @var array
27
+ */
28
+ protected $maybe_required_form_elms = array(
29
+ 'list_input',
30
+ 'input',
31
+ 'textarea',
32
+ 'input',
33
+ 'select',
34
+ 'checkbox',
35
+ 'radio',
36
+ 'radio_inline',
37
+ 'taxonomy_radio',
38
+ 'taxonomy_multicheck',
39
+ 'multicheck_inline',
40
+ );
41
+
42
+
43
+ /**
44
+ * Constructor - Set up the actions for the plugin.
45
+ */
46
+ public function __construct() {
47
+ if ( ! defined( 'CMB2_LOADED' ) || false === CMB2_LOADED ) {
48
+ return;
49
+ }
50
+
51
+ add_action( 'admin_init', array( $this, 'admin_init' ), self::PRIORITY );
52
+
53
+ foreach ( $this->maybe_required_form_elms as $element ) {
54
+ add_filter( "cmb2_{$element}_attributes", array( $this, 'maybe_set_required_attribute' ), self::PRIORITY );
55
+ }
56
+ }
57
+
58
+
59
+
60
+ /**
61
+ * Ensure valid html for the required attribute.
62
+ *
63
+ * @param array $args Array of HTML attributes.
64
+ *
65
+ * @return array
66
+ */
67
+ public function maybe_set_required_attribute( $args ) {
68
+ if ( ! isset( $args['required'] ) ) {
69
+ return $args;
70
+ }
71
+
72
+ // Comply with HTML specs.
73
+ if ( true === $args['required'] ) {
74
+ $args['required'] = 'required';
75
+ }
76
+
77
+ return $args;
78
+ }
79
+
80
+
81
+ /**
82
+ * Hook in the filtering of the data being saved.
83
+ */
84
+ public function admin_init() {
85
+ $cmb2_boxes = CMB2_Boxes::get_all();
86
+
87
+ foreach ( $cmb2_boxes as $cmb_id => $cmb2_box ) {
88
+ add_action(
89
+ "cmb2_{$cmb2_box->object_type()}_process_fields_{$cmb_id}",
90
+ array( $this, 'filter_data_to_save' ),
91
+ self::PRIORITY,
92
+ 2
93
+ );
94
+ }
95
+ }
96
+
97
+
98
+ /**
99
+ * Filter the data received from the form in order to remove those values
100
+ * which are not suppose to be enabled to edit according to the declared conditionals.
101
+ *
102
+ * @param \CMB2 $cmb2 An instance of the CMB2 class.
103
+ * @param int $object_id The id of the object being saved, could post_id, comment_id, user_id.
104
+ *
105
+ * The potentially adjusted array is returned via reference $cmb2.
106
+ */
107
+ public function filter_data_to_save( CMB2 $cmb2, $object_id ) {
108
+ foreach ( $cmb2->prop( 'fields' ) as $field_args ) {
109
+ if ( ! ( 'group' === $field_args['type'] || ( array_key_exists( 'attributes', $field_args ) && array_key_exists( 'data-conditional-id', $field_args['attributes'] ) ) ) ) {
110
+ continue;
111
+ }
112
+
113
+ if ( 'group' === $field_args['type'] ) {
114
+ foreach ( $field_args['fields'] as $group_field ) {
115
+ if ( ! ( array_key_exists( 'attributes', $group_field ) && array_key_exists( 'data-conditional-id', $group_field['attributes'] ) ) ) {
116
+ continue;
117
+ }
118
+
119
+ $field_id = $group_field['id'];
120
+ $conditional_id = $group_field['attributes']['data-conditional-id'];
121
+ $decoded_conditional_id = @json_decode( $conditional_id );
122
+ if ( $decoded_conditional_id ) {
123
+ $conditional_id = $decoded_conditional_id;
124
+ }
125
+
126
+ if ( is_array( $conditional_id ) && ! empty( $conditional_id ) && ! empty( $cmb2->data_to_save[ $conditional_id[0] ] ) ) {
127
+ foreach ( $cmb2->data_to_save[ $conditional_id[0] ] as $key => $group_data ) {
128
+ $cmb2->data_to_save[ $conditional_id[0] ][ $key ] = $this->filter_field_data_to_save( $group_data, $field_id, $conditional_id[1], $group_field['attributes'] );
129
+ }
130
+ }
131
+ continue;
132
+ }
133
+ } else {
134
+ $field_id = $field_args['id'];
135
+ $conditional_id = $field_args['attributes']['data-conditional-id'];
136
+
137
+ $cmb2->data_to_save = $this->filter_field_data_to_save( $cmb2->data_to_save, $field_id, $conditional_id, $field_args['attributes'] );
138
+ }
139
+ }
140
+ }
141
+
142
+
143
+ /**
144
+ * Determine if the data for one individual field should be saved or not.
145
+ *
146
+ * @param array $data_to_save The received $_POST data.
147
+ * @param string $field_id The CMB2 id of this field.
148
+ * @param string $conditional_id The CMB2 id of the field this field is conditional on.
149
+ * @param array $attributes The CMB2 field attributes.
150
+ *
151
+ * @return array Array of data to save.
152
+ */
153
+ protected function filter_field_data_to_save( $data_to_save, $field_id, $conditional_id, $attributes ) {
154
+ if ( array_key_exists( 'data-conditional-value', $attributes ) ) {
155
+
156
+ $conditional_value = $attributes['data-conditional-value'];
157
+ $decoded_conditional_value = @json_decode( $conditional_value );
158
+ if ( $decoded_conditional_value ) {
159
+ $conditional_value = $decoded_conditional_value;
160
+ }
161
+
162
+ if ( ! isset( $data_to_save[ $conditional_id ] ) ) {
163
+ if ( 'off' !== $conditional_value ) {
164
+ unset( $data_to_save[ $field_id ] );
165
+ }
166
+ return $data_to_save;
167
+ }
168
+
169
+ if ( ( ! is_array( $conditional_value ) && ! is_array( $data_to_save[ $conditional_id ] ) ) && $data_to_save[ $conditional_id ] != $conditional_value ) {
170
+ unset( $data_to_save[ $field_id ] );
171
+ return $data_to_save;
172
+ }
173
+
174
+ if ( is_array( $conditional_value ) || is_array( $data_to_save[ $conditional_id ] ) ) {
175
+ $match = array_intersect( (array) $conditional_value, (array) $data_to_save[ $conditional_id ] );
176
+ if ( empty( $match ) ) {
177
+ unset( $data_to_save[ $field_id ] );
178
+ return $data_to_save;
179
+ }
180
+ }
181
+ }
182
+
183
+ if ( ! isset( $data_to_save[ $conditional_id ] ) || ! $data_to_save[ $conditional_id ] ) {
184
+ unset( $data_to_save[ $field_id ] );
185
+ }
186
+
187
+ return $data_to_save;
188
+ }
189
+ } /* End of class. */
190
+
191
+
192
+ /**
193
+ * Instantiate our class.
194
+ *
195
+ * {@internal wp_installing() function was introduced in WP 4.4. The function exists and constant
196
+ * check can be removed once the min version for this plugin has been upped to 4.4.}}
197
+ */
198
+ if ( ( function_exists( 'wp_installing' ) && wp_installing() === false ) || ( ! function_exists( 'wp_installing' ) && ( ! defined( 'WP_INSTALLING' ) || WP_INSTALLING === false ) ) ) {
199
+ add_action( 'plugins_loaded', 'cmb2_conditionals_init' );
200
+ }
201
+
202
+ if ( ! function_exists( 'cmb2_conditionals_init' ) ) {
203
+ /**
204
+ * Initialize the class.
205
+ */
206
+ function cmb2_conditionals_init() {
207
+ $cmb2_conditionals = new CMB2_Conditionals();
208
+ }
209
+ }
210
+ } /* End of class-exists wrapper. */
includes/plus-options/custom-metabox/clients_options.php ADDED
@@ -0,0 +1,28 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ add_filter( 'cmb_meta_boxes', 'theplus_ele_clients_setting_metaboxes' );
3
+
4
+
5
+ function theplus_ele_clients_setting_metaboxes( array $meta_boxes ) {
6
+
7
+ $prefix = 'theplus_clients_';
8
+ $post_name=theplus_client_post_name();
9
+ $meta_boxes[] = array(
10
+ 'id' => 'clients_setting_metaboxes',
11
+ 'title' => __('TP Clients options', 'theplus'),
12
+ 'pages' => array($post_name),
13
+ 'context' => 'normal',
14
+ 'priority' => 'high',
15
+ 'show_names' => true,
16
+ 'fields' => array(
17
+ array(
18
+ 'name' => __('Url', 'theplus'),
19
+ 'desc' => '',
20
+ 'id' => $prefix . 'url',
21
+ 'type' => 'text_url',
22
+ 'default' => '#',
23
+ ),
24
+ ),
25
+ );
26
+
27
+ return $meta_boxes;
28
+ }
includes/plus-options/custom-metabox/teammember_options.php ADDED
@@ -0,0 +1,64 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ add_filter( 'cmb_meta_boxes', 'theplus_ele_team_memmber_setting_metaboxes' );
3
+ /**
4
+ * Define the metabox and field configurations.
5
+ *
6
+ * @param array $meta_boxes
7
+ * @return array
8
+ */
9
+
10
+ function theplus_ele_team_memmber_setting_metaboxes( array $meta_boxes ) {
11
+
12
+ $prefix = 'theplus_tm_';
13
+ $post_name=theplus_team_member_post_name();
14
+ $meta_boxes[] = array(
15
+ 'id' => 'team_memmber_setting_metaboxes',
16
+ 'title' => __('TP Team member options', 'theplus'),
17
+ 'pages' => array($post_name),
18
+ 'context' => 'normal',
19
+ 'priority' => 'core',
20
+ 'show_names' => true,
21
+ 'fields' => array(
22
+ array(
23
+ 'name' => __('Designation', 'theplus'),
24
+ 'desc' => '',
25
+ 'id' => $prefix . 'designation',
26
+ 'type' => 'text_medium',
27
+ ),
28
+ array(
29
+ 'name' => __('Website Url', 'theplus'),
30
+ 'desc' => '',
31
+ 'id' => $prefix . 'website_url',
32
+ 'type' => 'text',
33
+ ),
34
+ array(
35
+ 'name' => __( 'Facebook Link', 'theplus' ),
36
+ 'type' => 'text',
37
+ 'id' => $prefix . 'face_link',
38
+ ),
39
+ array(
40
+ 'name' => __('Google plus Link', 'theplus'),
41
+ 'desc' => '',
42
+ 'id' => $prefix . 'googgle_link',
43
+ 'type' => 'text',
44
+ ),
45
+ array(
46
+ 'name' => __( 'Instagram Link', 'theplus' ),
47
+ 'type' => 'text',
48
+ 'id' => $prefix . 'insta_link',
49
+ ),
50
+ array(
51
+ 'name' => __( 'Twitter Link', 'theplus' ),
52
+ 'type' => 'text',
53
+ 'id' => $prefix . 'twit_link',
54
+ ),
55
+ array(
56
+ 'name' => __( 'Linkedin Link', 'theplus' ),
57
+ 'type' => 'text',
58
+ 'id' => $prefix . 'linked_link',
59
+ ),
60
+ ),
61
+ );
62
+
63
+ return $meta_boxes;
64
+ }
includes/plus-options/custom-metabox/testimonial_option.php ADDED
@@ -0,0 +1,50 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ add_filter( 'cmb_meta_boxes', 'theplus_ele_testimonial_setting_metaboxes' );
3
+
4
+
5
+ function theplus_ele_testimonial_setting_metaboxes( array $meta_boxes ) {
6
+
7
+ $prefix = 'theplus_testimonial_';
8
+ $post_name=theplus_testimonial_post_name();
9
+ $meta_boxes[] = array(
10
+ 'id' => 'testimonial_setting_metaboxes',
11
+ 'title' => __('ThePlus Testimonial Options', 'theplus'),
12
+ 'pages' => array($post_name),
13
+ 'context' => 'normal',
14
+ 'priority' => 'high',
15
+ 'show_names' => true,
16
+ 'fields' => array(
17
+ array(
18
+ 'name' => __('Author Text', 'theplus'),
19
+ 'desc' => '',
20
+ 'id' => $prefix . 'author_text',
21
+ 'type' => 'wysiwyg',
22
+ 'options' => array(
23
+ 'wpautop' => false,
24
+ 'media_buttons' => false,
25
+ 'textarea_rows' => get_option('default_post_edit_rows', 7),
26
+ ),
27
+ ),
28
+ array(
29
+ 'name' => __('Title', 'theplus'),
30
+ 'desc' => __('Enter title of testimonial.', 'theplus'),
31
+ 'id' => $prefix . 'title',
32
+ 'type' => 'text',
33
+ ),
34
+ array(
35
+ 'name' => __('Logo Upload', 'theplus'),
36
+ 'desc' => '',
37
+ 'id' => $prefix . 'logo',
38
+ 'type' => 'file',
39
+ ),
40
+ array(
41
+ 'name' => __('Designation', 'theplus'),
42
+ 'desc' => __('Enter author Designation', 'theplus'),
43
+ 'id' => $prefix . 'designation',
44
+ 'type' => 'text',
45
+ ),
46
+ ),
47
+ );
48
+
49
+ return $meta_boxes;
50
+ }
includes/plus-options/includes.php ADDED
@@ -0,0 +1,24 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ require_once THEPLUS_INCLUDES_URL.'plus-options/post-type.php';
3
+ add_action( 'init', 'theplus_cmb_initialize_cmb_meta_boxes', 9999 );
4
+ /**
5
+ * Initialize the metabox class.
6
+ */
7
+ function theplus_cmb_initialize_cmb_meta_boxes() {
8
+ if ( ! class_exists( 'cmb_Meta_Box' ) )
9
+ require_once THEPLUS_INCLUDES_URL.'plus-options/metabox/init.php';
10
+
11
+ }
12
+ $client_post=theplus_get_option('post_type','client_post_type');
13
+ if(isset($client_post) && !empty($client_post) && ($client_post=='themes' || $client_post=='plugin' || $client_post=='themes_pro')){
14
+ require_once THEPLUS_INCLUDES_URL.'plus-options/custom-metabox/clients_options.php';
15
+ }
16
+ $testimonial_post=theplus_get_option('post_type','testimonial_post_type');
17
+ if(isset($testimonial_post) && !empty($testimonial_post) && ($testimonial_post=='themes' || $testimonial_post=='plugin' || $client_post=='themes_pro')){
18
+ require_once THEPLUS_INCLUDES_URL.'plus-options/custom-metabox/testimonial_option.php';
19
+ }
20
+ $team_member_post=theplus_get_option('post_type','team_member_post_type');
21
+ if(isset($team_member_post) && !empty($team_member_post) && ($team_member_post=='themes' || $team_member_post=='plugin' || $client_post=='themes_pro')){
22
+ require_once THEPLUS_INCLUDES_URL.'plus-options/custom-metabox/teammember_options.php';
23
+ }
24
+ ?>
includes/plus-options/metabox/Gruntfile.js ADDED
@@ -0,0 +1,112 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ module.exports = function(grunt) {
2
+ grunt.initConfig({
3
+ pkg: grunt.file.readJSON('package.json'),
4
+ phpunit: {
5
+ classes: {}
6
+ },
7
+ githooks: {
8
+ all: {
9
+ 'pre-commit': 'default'
10
+ }
11
+ },
12
+ // concat: {
13
+ // options: {
14
+ // stripBanners: true,
15
+ // // banner: '/*! <%= pkg.title %> - v<%= pkg.version %> - <%= grunt.template.today("yyyy-mm-dd") %>\n' +
16
+ // // ' * <%= pkg.homepage %>\n' +
17
+ // // ' * Copyright (c) <%= grunt.template.today("yyyy") %>;' +
18
+ // // ' * Licensed GPLv2+' +
19
+ // // ' */\n'
20
+ // },
21
+ // '': {
22
+ // src: [
23
+ // 'js/cmb.js',
24
+ // 'js/cmb.js',
25
+ // ],
26
+ // dest: 'assets/js/{%= dir_name %}.js'
27
+ // }
28
+ // },
29
+ cssmin: {
30
+ options: {
31
+ // banner: '/*! <%= pkg.title %> - v<%= pkg.version %> - <%= grunt.template.today("yyyy-mm-dd") %>\n' +
32
+ // ' * <%= pkg.homepage %>\n' +
33
+ // ' * Copyright (c) <%= grunt.template.today("yyyy") %>;' +
34
+ // ' * Licensed GPLv2+' +
35
+ // ' */\n'
36
+ },
37
+ minify: {
38
+ expand: true,
39
+ src: ['style.css'],
40
+ // dest: '',
41
+ ext: '.min.css'
42
+ }
43
+ },
44
+ jshint: {
45
+ all: [
46
+ 'Gruntfile.js',
47
+ 'js/cmb.js'
48
+ ],
49
+ options: {
50
+ curly : true,
51
+ eqeqeq : true,
52
+ immed : true,
53
+ latedef : true,
54
+ newcap : true,
55
+ noarg : true,
56
+ sub : true,
57
+ unused : true,
58
+ undef : true,
59
+ boss : true,
60
+ eqnull : true,
61
+ globals : {
62
+ exports : true,
63
+ module : false
64
+ },
65
+ predef :['document','window','jQuery','cmb_l10','wp','tinyMCEPreInit','tinyMCE','console']
66
+ }
67
+ },
68
+ uglify: {
69
+ all: {
70
+ files: {
71
+ 'js/cmb.min.js': ['js/cmb.js']
72
+ },
73
+ options: {
74
+ // banner: '/*! <%= pkg.title %> - v<%= pkg.version %> - <%= grunt.template.today("yyyy-mm-dd") %>\n' +
75
+ // ' * <%= pkg.homepage %>\n' +
76
+ // ' * Copyright (c) <%= grunt.template.today("yyyy") %>;' +
77
+ // ' * Licensed GPLv2+' +
78
+ // ' */\n',
79
+ mangle: false
80
+ }
81
+ }
82
+ },
83
+ watch: {
84
+
85
+ css: {
86
+ files: ['style.css'],
87
+ tasks: ['cssmin']
88
+ },
89
+
90
+ scripts: {
91
+ files: ['js/cmb.js'],
92
+ tasks: ['jshint', 'uglify'],
93
+ options: {
94
+ debounceDelay: 500
95
+ }
96
+ }
97
+ }
98
+
99
+
100
+ });
101
+
102
+ grunt.loadNpmTasks('grunt-phpunit');
103
+ grunt.loadNpmTasks('grunt-githooks');
104
+ grunt.loadNpmTasks('grunt-contrib-jshint');
105
+ grunt.loadNpmTasks('grunt-contrib-uglify');
106
+ grunt.loadNpmTasks('grunt-contrib-cssmin');
107
+ grunt.loadNpmTasks('grunt-contrib-watch');
108
+ // grunt.loadNpmTasks('grunt-contrib-concat');
109
+
110
+ grunt.registerTask('default', ['jshint', 'cssmin', 'uglify', 'phpunit']);
111
+ grunt.registerTask('tests', ['jshint', 'phpunit']);
112
+ };
includes/plus-options/metabox/helpers/cmb_Meta_Box_Sanitize.php ADDED
@@ -0,0 +1,346 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * CMB field validation
5
+ * @since 0.0.4
6
+ */
7
+ class cmb_Meta_Box_Sanitize {
8
+
9
+ /**
10
+ * A CMB field object
11
+ * @var cmb_Meta_Box_field object
12
+ */
13
+ public $field;
14
+
15
+ /**
16
+ * Field's $_POST value
17
+ * @var mixed
18
+ */
19
+ public $value;
20
+
21
+ /**
22
+ * Setup our class vars
23
+ * @since 1.1.0
24
+ * @param object $field A CMB field object
25
+ * @param mixed $value Field value
26
+ */
27
+ public function __construct( $field, $value ) {
28
+ $this->field = $field;
29
+ $this->value = $value;
30
+ $this->object_id = cmb_Meta_Box::get_object_id();
31
+ $this->object_type = cmb_Meta_Box::get_object_type();
32
+ }
33
+
34
+ /**
35
+ * Catchall method if field's 'sanitization_cb' is NOT defined, or field type does not have a corresponding validation method
36
+ * @since 1.0.0
37
+ * @param string $name Non-existent method name
38
+ * @param array $arguments All arguments passed to the method
39
+ */
40
+ public function __call( $name, $arguments ) {
41
+ list( $value ) = $arguments;
42
+ return $this->default_sanitization( $value );
43
+ }
44
+
45
+ /**
46
+ * Default fallback sanitization method. Applies filters.
47
+ * @since 1.0.2
48
+ * @param mixed $value Meta value
49
+ */
50
+ public function default_sanitization( $value ) {
51
+
52
+ // Allow field type validation via filter
53
+ $updated = apply_filters( 'cmb_validate_'. $this->field->type(), null, $value, $this->object_id, $this->field->args(), $this );
54
+
55
+ if ( null !== $updated )
56
+ return $updated;
57
+
58
+ switch ( $this->field->type() ) {
59
+ case 'wysiwyg':
60
+ // $value = wp_kses( $value );
61
+ // break;
62
+ case 'textarea_small':
63
+ return $this->textarea( $value );
64
+ case 'taxonomy_select':
65
+ case 'taxonomy_radio':
66
+ case 'taxonomy_multicheck':
67
+ if ( $this->field->args( 'taxonomy' ) ) {
68
+ return wp_set_object_terms( $this->object_id, $value, $this->field->args( 'taxonomy' ) );
69
+ }
70
+ case 'multicheck':
71
+ case 'file_list':
72
+ case 'oembed':
73
+ // no filtering
74
+ return $value;
75
+ default:
76
+ // Handle repeatable fields array
77
+ // We'll fallback to 'sanitize_text_field'
78
+ return is_array( $value ) ? array_map( 'sanitize_text_field', $value ) : call_user_func( 'sanitize_text_field', $value );
79
+ }
80
+ }
81
+
82
+ /**
83
+ * Simple checkbox validation
84
+ * @since 1.0.1
85
+ * @param mixed $val 'on' or false
86
+ * @return mixed 'on' or false
87
+ */
88
+ public function checkbox( $value ) {
89
+ return $value === 'on' ? 'on' : false;
90
+ }
91
+
92
+ /**
93
+ * Validate url in a meta value
94
+ * @since 1.0.1
95
+ * @param string $value Meta value
96
+ * @return string Empty string or escaped url
97
+ */
98
+ public function text_url( $value ) {
99
+ $protocols = $this->field->args( 'protocols' );
100
+ // for repeatable
101
+ if ( is_array( $value ) ) {
102
+ foreach ( $value as $key => $val ) {
103
+ $value[ $key ] = $val ? esc_url_raw( $val, $protocols ) : $this->field->args( 'default' );
104
+ }
105
+ } else {
106
+ $value = $value ? esc_url_raw( $value, $protocols ) : $this->field->args( 'default' );
107
+ }
108
+
109
+ return $value;
110
+ }
111
+
112
+ public function colorpicker( $value ) {
113
+ // for repeatable
114
+ if ( is_array( $value ) ) {
115
+ $check = $value;
116
+ $value = array();
117
+ foreach ( $check as $key => $val ) {
118
+ if ( $val && '#' != $val ) {
119
+ $value[ $key ] = esc_attr( $val );
120
+ }
121
+ }
122
+ } else {
123
+ $value = ! $value || '#' == $value ? '' : esc_attr( $value );
124
+ }
125
+ return $value;
126
+ }
127
+
128
+ /**
129
+ * Validate email in a meta value
130
+ * @since 1.0.1
131
+ * @param string $value Meta value
132
+ * @return string Empty string or validated email
133
+ */
134
+ public function text_email( $value ) {
135
+ // for repeatable
136
+ if ( is_array( $value ) ) {
137
+ foreach ( $value as $key => $val ) {
138
+ $val = trim( $val );
139
+ $value[ $key ] = is_email( $val ) ? $val : '';
140
+ }
141
+ } else {
142
+ $value = trim( $value );
143
+ $value = is_email( $value ) ? $value : '';
144
+ }
145
+
146
+ return $value;
147
+ }
148
+
149
+ /**
150
+ * Validate money in a meta value
151
+ * @since 1.0.1
152
+ * @param string $value Meta value
153
+ * @return string Empty string or validated money value
154
+ */
155
+ public function text_money( $value ) {
156
+
157
+ global $wp_locale;
158
+
159
+ $search = array( $wp_locale->number_format['thousands_sep'], $wp_locale->number_format['decimal_point'] );
160
+ $replace = array( '', '.' );
161
+
162
+ // for repeatable
163
+ if ( is_array( $value ) ) {
164
+ foreach ( $value as $key => $val ) {
165
+ $value[ $key ] = number_format_i18n( (float) str_ireplace( $search, $replace, $val ), 2 );
166
+ }
167
+ } else {
168
+ $value = number_format_i18n( (float) str_ireplace( $search, $replace, $value ), 2 );
169
+ }
170
+
171
+ return $value;
172
+ }
173
+
174
+ /**
175
+ * Converts text date to timestamp
176
+ * @since 1.0.2
177
+ * @param string $value Meta value
178
+ * @return string Timestring
179
+ */
180
+ public function text_date_timestamp( $value ) {
181
+ return is_array( $value ) ? array_map( 'strtotime', $value ) : strtotime( $value );
182
+ }
183
+
184
+ /**
185
+ * Datetime to timestamp
186
+ * @since 1.0.1
187
+ * @param string $value Meta value
188
+ * @return string Timestring
189
+ */
190
+ public function text_datetime_timestamp( $value, $repeat = false ) {
191
+
192
+ $test = is_array( $value ) ? array_filter( $value ) : '';
193
+ if ( empty( $test ) )
194
+ return '';
195
+
196
+ if ( $repeat_value = $this->_check_repeat( $value, __FUNCTION__, $repeat ) )
197
+ return $repeat_value;
198
+
199
+ $value = strtotime( $value['date'] .' '. $value['time'] );
200
+
201
+ if ( $tz_offset = $this->field->field_timezone_offset() )
202
+ $value += $tz_offset;
203
+
204
+ return $value;
205
+ }
206
+
207
+ /**
208
+ * Datetime to imestamp with timezone
209
+ * @since 1.0.1
210
+ * @param string $value Meta value
211
+ * @return string Timestring
212
+ */
213
+ public function text_datetime_timestamp_timezone( $value, $repeat = false ) {
214
+
215
+ $test = is_array( $value ) ? array_filter( $value ) : '';
216
+ if ( empty( $test ) )
217
+ return '';
218
+
219
+ if ( $repeat_value = $this->_check_repeat( $value, __FUNCTION__, $repeat ) )
220
+ return $repeat_value;
221
+
222
+ $tzstring = null;
223
+
224
+ if ( is_array( $value ) && array_key_exists( 'timezone', $value ) )
225
+ $tzstring = $value['timezone'];
226
+
227
+ if ( empty( $tzstring ) )
228
+ $tzstring = cmb_Meta_Box::timezone_string();
229
+
230
+ $offset = cmb_Meta_Box::timezone_offset( $tzstring, true );
231
+
232
+ if ( substr( $tzstring, 0, 3 ) === 'UTC' )
233
+ $tzstring = timezone_name_from_abbr( '', $offset, 0 );
234
+
235
+ $value = new DateTime( $value['date'] .' '. $value['time'], new DateTimeZone( $tzstring ) );
236
+ $value = serialize( $value );
237
+
238
+ return $value;
239
+ }
240
+
241
+ /**
242
+ * Sanitize textareas and wysiwyg fields
243
+ * @since 1.0.1
244
+ * @param string $value Meta value
245
+ * @return string Sanitized data
246
+ */
247
+ public function textarea( $value ) {
248
+ return is_array( $value ) ? array_map( 'wp_kses_post', $value ) : wp_kses_post( $value );
249
+ }
250
+
251
+ /**
252
+ * Sanitize code textareas
253
+ * @since 1.0.2
254
+ * @param string $value Meta value
255
+ * @return string Sanitized data
256
+ */
257
+ public function textarea_code( $value, $repeat = false ) {
258
+ if ( $repeat_value = $this->_check_repeat( $value, __FUNCTION__, $repeat ) )
259
+ return $repeat_value;
260
+
261
+ return htmlspecialchars_decode( stripslashes( $value ) );
262
+ }
263
+
264
+ /**
265
+ * Peforms saving of `file` attachement's ID
266
+ * @since 1.1.0
267
+ * @param string $value File url
268
+ */
269
+ public function _save_file_id( $value ) {
270
+ $group = $this->field->group;
271
+ $args = $this->field->args();
272
+ $args['id'] = $args['_id'] . '_id';
273
+
274
+ unset( $args['_id'], $args['_name'] );
275
+ // And get new field object
276
+ $field = new cmb_Meta_Box_field( $args, $group );
277
+ $id_key = $field->_id();
278
+ $id_val_old = $field->escaped_value( 'absint' );
279
+
280
+ if ( $group ) {
281
+ // Check group $_POST data
282
+ $i = $group->index;
283
+ $base_id = $group->_id();
284
+ $id_val = isset( $_POST[ $base_id ][ $i ][ $id_key ] ) ? absint( $_POST[ $base_id ][ $i ][ $id_key ] ) : 0;
285
+
286
+ } else {
287
+ // Check standard $_POST data
288
+ $id_val = isset( $_POST[ $field->id() ] ) ? $_POST[ $field->id() ] : null;
289
+
290
+ }
291
+
292
+ // If there is no ID saved yet, try to get it from the url
293
+ if ( $value && ! $id_val ) {
294
+ $id_val = cmb_Meta_Box::image_id_from_url( $value );
295
+ }
296
+
297
+ if ( $group ) {
298
+ return array(
299
+ 'attach_id' => $id_val,
300
+ 'field_id' => $id_key
301
+ );
302
+ }
303
+
304
+ if ( $id_val && $id_val != $id_val_old ) {
305
+ return $field->update_data( $id_val );
306
+ } elseif ( empty( $id_val ) && $id_val_old ) {
307
+ return $field->remove_data( $old );
308
+ }
309
+ }
310
+
311
+ /**
312
+ * Handles saving of attachment post ID and sanitizing file url
313
+ * @since 1.1.0
314
+ * @param string $value File url
315
+ * @return string Sanitized url
316
+ */
317
+ public function file( $value ) {
318
+ // If NOT specified to NOT save the file ID
319
+ if ( $this->field->args( 'save_id' ) ) {
320
+ $id_value = $this->_save_file_id( $value );
321
+ }
322
+ $clean = $this->text_url( $value );
323
+
324
+ // Return an array with url/id if saving a group field
325
+ return $this->field->group ? array_merge( array( 'url' => $clean), $id_value ) : $clean;
326
+ }
327
+
328
+ /**
329
+ * If repeating, loop through and re-apply sanitization method
330
+ * @since 1.1.0
331
+ * @param mixed $value Meta value
332
+ * @param string $method Class method
333
+ * @param bool $repeat Whether repeating or not
334
+ * @return mixed Sanitized value
335
+ */
336
+ public function _check_repeat( $value, $method, $repeat ) {
337
+ if ( $repeat || ! $this->field->args( 'repeatable' ) )
338
+ return;
339
+ $new_value = array();
340
+ foreach ( $value as $iterator => $val ) {
341
+ $new_value[] = $this->$method( $val, true );
342
+ }
343
+ return $new_value;
344
+ }
345
+
346
+ }
includes/plus-options/metabox/helpers/cmb_Meta_Box_Show_Filters.php ADDED
@@ -0,0 +1,105 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Show On Filters
5
+ * Use the 'cmb_show_on' filter to further refine the conditions under which a metabox is displayed.
6
+ * Below you can limit it by ID and page template
7
+ *
8
+ * All methods in this class are automatically filtered
9
+ *
10
+ * @since 1.0.0
11
+ */
12
+ class cmb_Meta_Box_Show_Filters {
13
+
14
+ /**
15
+ * Add metaboxes for an specific ID
16
+ * @since 1.0.0
17
+ * @param bool $display To display or not
18
+ * @param array $meta_box Metabox config array
19
+ * @return bool Whether to display this metabox on the current page.
20
+ */
21
+ public static function check_id( $display, $meta_box ) {
22
+
23
+ if ( ! isset( $meta_box['show_on']['key'] ) || 'id' !== $meta_box['show_on']['key'] )
24
+ return $display;
25
+
26
+ $object_id = is_admin() ? cmb_Meta_Box::get_object_id() : @get_the_id();
27
+
28
+ if ( ! $object_id )
29
+ return false;
30
+
31
+ // If current page id is in the included array, display the metabox
32
+ return in_array( $object_id, (array) $meta_box['show_on']['value'] );
33
+ }
34
+
35
+ /**
36
+ * Add metaboxes for an specific Page Template
37
+ * @since 1.0.0
38
+ * @param bool $display To display or not
39
+ * @param array $meta_box Metabox config array
40
+ * @return bool Whether to display this metabox on the current page.
41
+ */
42
+ public static function check_page_template( $display, $meta_box ) {
43
+
44
+ if ( ! isset( $meta_box['show_on']['key'] ) || 'page-template' !== $meta_box['show_on']['key'] )
45
+ return $display;
46
+
47
+ $object_id = cmb_Meta_Box::get_object_id();
48
+
49
+ if ( ! $object_id || cmb_Meta_Box::get_object_type() !== 'post' )
50
+ return false;
51
+
52
+ // Get current template
53
+ $current_template = get_post_meta( $object_id, '_wp_page_template', true );
54
+
55
+ // See if there's a match
56
+ if ( $current_template && in_array( $current_template, (array) $meta_box['show_on']['value'] ) )
57
+ return true;
58
+
59
+ return false;
60
+ }
61
+
62
+ /**
63
+ * Only show options-page metaboxes on their options page (but only enforce on the admin side)
64
+ * @since 1.0.0
65
+ * @param bool $display To display or not
66
+ * @param array $meta_box Metabox config array
67
+ * @return bool Whether to display this metabox on the current page.
68
+ */
69
+ public static function check_admin_page( $display, $meta_box ) {
70
+
71
+ // check if this is a 'options-page' metabox
72
+ if ( ! isset( $meta_box['show_on']['key'] ) || 'options-page' !== $meta_box['show_on']['key'] )
73
+ return $display;
74
+
75
+ // Enforce 'show_on' filter in the admin
76
+ if ( is_admin() ) {
77
+
78
+ // If there is no 'page' query var, our filter isn't applicable
79
+ if ( ! isset( $_GET['page'] ) )
80
+ return $display;
81
+
82
+ if ( ! isset( $meta_box['show_on']['value'] ) )
83
+ return false;
84
+
85
+ $pages = $meta_box['show_on']['value'];
86
+
87
+ if ( is_array( $pages ) ) {
88
+ foreach ( $pages as $page ) {
89
+ if ( $_GET['page'] == $page )
90
+ return true;
91
+ }
92
+ } else {
93
+ if ( $_GET['page'] == $pages )
94
+ return true;
95
+ }
96
+
97
+ return false;
98
+
99
+ }
100
+
101
+ // Allow options-page metaboxes to be displayed anywhere on the front-end
102
+ return true;
103
+ }
104
+
105
+ }
includes/plus-options/metabox/helpers/cmb_Meta_Box_ajax.php ADDED
@@ -0,0 +1,203 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * CMB ajax methods
5
+ * (i.e. a lot of work to get oEmbeds to work with non-post objects)
6
+ *
7
+ * @since 0.9.5
8
+ */
9
+ class cmb_Meta_Box_ajax {
10
+
11
+ // A single instance of this class.
12
+ public static $instance = null;
13
+ // Whether to hijack the oembed cache system
14
+ public static $hijack = false;
15
+ public static $object_id = 0;
16
+ public static $embed_args = array();
17
+ public static $object_type = 'post';
18
+
19
+ /**
20
+ * Creates or returns an instance of this class.
21
+ * @since 0.1.0
22
+ * @return cmb_Meta_Box_ajax A single instance of this class.
23
+ */
24
+ public static function get() {
25
+ if ( self::$instance === null )
26
+ self::$instance = new self();
27
+
28
+ return self::$instance;
29
+ }
30
+
31
+ /**
32
+ * Handles our oEmbed ajax request
33
+ * @since 0.9.5
34
+ * @return object oEmbed embed code | fallback | error message
35
+ */
36
+ public function oembed_handler() {
37
+
38
+ // verify our nonce
39
+ if ( ! ( isset( $_REQUEST['cmb_ajax_nonce'], $_REQUEST['oembed_url'] ) && wp_verify_nonce( $_REQUEST['cmb_ajax_nonce'], 'ajax_nonce' ) ) )
40
+ die();
41
+
42
+ // sanitize our search string
43
+ $oembed_string = sanitize_text_field( $_REQUEST['oembed_url'] );
44
+
45
+ // send back error if empty
46
+ if ( empty( $oembed_string ) )
47
+ self::send_result( '<p class="ui-state-error-text">'. __( 'Please Try Again', 'cmb' ) .'</p>', false );
48
+
49
+ // Set width of embed
50
+ $embed_width = isset( $_REQUEST['oembed_width'] ) && intval( $_REQUEST['oembed_width'] ) < 640 ? intval( $_REQUEST['oembed_width'] ) : '640';
51
+
52
+ // set url
53
+ $oembed_url = esc_url( $oembed_string );
54
+ // set args
55
+ $embed_args = array( 'width' => $embed_width );
56
+
57
+ // Get embed code (or fallback link)
58
+ $html = self::get_oembed( $oembed_url, $_REQUEST['object_id'], array(
59
+ 'object_type' => isset( $_REQUEST['object_type'] ) ? $_REQUEST['object_type'] : 'post',
60
+ 'oembed_args' => $embed_args,
61
+ 'field_id' => $_REQUEST['field_id'],
62
+ ) );
63
+
64
+ self::send_result( $html );
65
+
66
+ }
67
+
68
+ /**
69
+ * Retrieves oEmbed from url/object ID
70
+ * @since 0.9.5
71
+ * @param string $url URL to retrieve oEmbed
72
+ * @param int $object_id Object ID
73
+ * @param array $args Arguments for method
74
+ * @return string html markup with embed or fallback
75
+ */
76
+ public static function get_oembed( $url, $object_id, $args = array() ) {
77
+ global $wp_embed;
78
+
79
+ $oembed_url = esc_url( $url );
80
+
81
+ // Sanitize object_id
82
+ self::$object_id = is_numeric( $object_id ) ? absint( $object_id ) : sanitize_text_field( $object_id );
83
+
84
+ $args = wp_parse_args( $args, array(
85
+ 'object_type' => 'post',
86
+ 'oembed_args' => self::$embed_args,
87
+ 'field_id' => false,
88
+ 'cache_key' => false,
89
+ ) );
90
+
91
+ self::$embed_args =& $args;
92
+
93
+ // set the post_ID so oEmbed won't fail
94
+ // wp-includes/class-wp-embed.php, WP_Embed::shortcode(), line 162
95
+ $wp_embed->post_ID = self::$object_id;
96
+
97
+ // Special scenario if NOT a post object
98
+ if ( isset( $args['object_type'] ) && $args['object_type'] != 'post' ) {
99
+
100
+ if ( 'options-page' == $args['object_type'] ) {
101
+ // bogus id to pass some numeric checks
102
+ // Issue with a VERY large WP install?
103
+ $wp_embed->post_ID = 1987645321;
104
+ // Use our own cache key to correspond to this field (vs one cache key per url)
105
+ $args['cache_key'] = $args['field_id'] .'_cache';
106
+ }
107
+ // Ok, we need to hijack the oembed cache system
108
+ self::$hijack = true;
109
+ self::$object_type = $args['object_type'];
110
+
111
+ // Gets ombed cache from our object's meta (vs postmeta)
112
+ add_filter( 'get_post_metadata', array( 'cmb_Meta_Box_ajax', 'hijack_oembed_cache_get' ), 10, 3 );
113
+ // Sets ombed cache in our object's meta (vs postmeta)
114
+ add_filter( 'update_post_metadata', array( 'cmb_Meta_Box_ajax', 'hijack_oembed_cache_set' ), 10, 4 );
115
+
116
+ }
117
+
118
+ $embed_args = '';
119
+ foreach ( $args['oembed_args'] as $key => $val ) {
120
+ $embed_args .= " $key=\"$val\"";
121
+ }
122
+
123
+ // ping WordPress for an embed
124
+ $check_embed = $wp_embed->run_shortcode( '[embed'. $embed_args .']'. $oembed_url .'[/embed]' );
125
+
126
+ // fallback that WordPress creates when no oEmbed was found
127
+ $fallback = $wp_embed->maybe_make_link( $oembed_url );
128
+
129
+ // Send back our embed
130
+ if ( $check_embed && $check_embed != $fallback )
131
+ return '<div class="embed_status">'. $check_embed .'<p class="cmb_remove_wrapper"><a href="#" class="cmb_remove_file_button" rel="'. $args['field_id'] .'">'. __( 'Remove Embed', 'cmb' ) .'</a></p></div>';
132
+
133
+ // Otherwise, send back error info that no oEmbeds were found
134
+ return '<p class="ui-state-error-text">'. sprintf( __( 'No oEmbed Results Found for %s. View more info at', 'cmb' ), $fallback ) .' <a href="http://codex.wordpress.org/Embeds" target="_blank">codex.wordpress.org/Embeds</a>.</p>';
135
+
136
+ }
137
+
138
+ /**
139
+ * Hijacks retrieving of cached oEmbed.
140
+ * Returns cached data from relevant object metadata (vs postmeta)
141
+ *
142
+ * @since 0.9.5
143
+ * @param boolean $check Whether to retrieve postmeta or override
144
+ * @param int $object_id Object ID
145
+ * @param string $meta_key Object metakey
146
+ * @return mixed Object's oEmbed cached data
147
+ */
148
+ public static function hijack_oembed_cache_get( $check, $object_id, $meta_key ) {
149
+
150
+ if ( ! self::$hijack || ( self::$object_id != $object_id && 1987645321 !== $object_id ) )
151
+ return $check;
152
+
153
+ // get cached data
154
+ $data = 'options-page' === self::$object_type
155
+ ? cmb_Meta_Box::get_option( self::$object_id, self::$embed_args['cache_key'] )
156
+ : get_metadata( self::$object_type, self::$object_id, $meta_key, true );
157
+
158
+ return $data;
159
+ }
160
+
161
+ /**
162
+ * Hijacks saving of cached oEmbed.
163
+ * Saves cached data to relevant object metadata (vs postmeta)
164
+ *
165
+ * @since 0.9.5
166
+ * @param boolean $check Whether to continue setting postmeta
167
+ * @param int $object_id Object ID to get postmeta from
168
+ * @param string $meta_key Postmeta's key
169
+ * @param mixed $meta_value Value of the postmeta to be saved
170
+ * @return boolean Whether to continue setting
171
+ */
172
+ public static function hijack_oembed_cache_set( $check, $object_id, $meta_key, $meta_value ) {
173
+ if ( ! self::$hijack || ( self::$object_id != $object_id && 1987645321 !== $object_id ) )
174
+ return $check;
175
+
176
+ // Cache the result to our metadata
177
+ if ( 'options-page' === self::$object_type ) {
178
+ // Set the option
179
+ cmb_Meta_Box::update_option( self::$object_id, self::$embed_args['cache_key'], $meta_value, array( 'type' => 'oembed' ) );
180
+ // Save the option
181
+ cmb_Meta_Box::save_option( self::$object_id );
182
+ } else {
183
+ update_metadata( self::$object_type, self::$object_id, $meta_key, $meta_value );
184
+ }
185
+
186
+ // Anything other than `null` to cancel saving to postmeta
187
+ return true;
188
+ }
189
+
190
+ /**
191
+ * Helper to send json encoded response to ajax
192
+ * @since 0.9.5
193
+ * @param string $data Data to be shown via ajax
194
+ * @param boolean $success Success or fail
195
+ */
196
+ public static function send_result( $data, $success = true ) {
197
+ $found = $success ? 'found' : 'not found';
198
+ // send back our encoded data
199
+ echo json_encode( array( 'result' => $data, 'id' => $found ) );
200
+ die();
201
+ }
202
+
203
+ }
includes/plus-options/metabox/helpers/cmb_Meta_Box_field.php ADDED
@@ -0,0 +1,497 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * CMB field class
5
+ * @since 1.1.0
6
+ */
7
+ class cmb_Meta_Box_field {
8
+
9
+ /**
10
+ * Metabox object id
11
+ * @var mixed
12
+ * @since 1.1.0
13
+ */
14
+ public $object_id;
15
+
16
+ /**
17
+ * Metabox object type
18
+ * @var mixed
19
+ * @since 1.1.0
20
+ */
21
+ public $object_type;
22
+
23
+ /**
24
+ * Field arguments
25
+ * @var mixed
26
+ * @since 1.1.0
27
+ */
28
+ public $args;
29
+
30
+ /**
31
+ * Field group object
32
+ * @var mixed
33
+ * @since 1.1.0
34
+ */
35
+ public $group;
36
+
37
+ /**
38
+ * Field meta value
39
+ * @var mixed
40
+ * @since 1.1.0
41
+ */
42
+ public $value;
43
+
44
+ /**
45
+ * Constructs our field object
46
+ * @since 1.1.0
47
+ * @param array $field_args Field arguments
48
+ * @param array $group_field (optional) Group field object
49
+ */
50
+ public function __construct( $field_args, $group_field = null ) {
51
+ $this->object_id = cmb_Meta_Box::get_object_id();
52
+ $this->object_type = cmb_Meta_Box::get_object_type();
53
+ $this->group = ! empty( $group_field ) ? $group_field : false;
54
+ $this->args = $this->_set_field_defaults( $field_args );
55
+
56
+ // Allow an override for the field's value
57
+ // (assuming no one would want to save 'cmb_no_override_val' as a value)
58
+ $this->value = apply_filters( 'cmb_override_meta_value', 'cmb_no_override_val', $this->object_id, $this->args(), $this->object_type, $this );
59
+
60
+ // If no override, get our meta
61
+ $this->value = 'cmb_no_override_val' === $this->value
62
+ ? $this->get_data()
63
+ : $this->value;
64
+ }
65
+
66
+ /**
67
+ * Non-existent methods fallback to checking for field arguments of the same name
68
+ * @since 1.1.0
69
+ * @param string $name Method name
70
+ * @param array $arguments Array of passed-in arguments
71
+ * @return mixed Value of field argument
72
+ */
73
+ public function __call( $name, $arguments ) {
74
+ $key = isset( $arguments[0] ) ? $arguments[0] : false;
75
+ return $this->args( $name, $key );
76
+ }
77
+
78
+ /**
79
+ * Retrieves the field id
80
+ * @since 1.1.0
81
+ * @param boolean $raw Whether to retrieve pre-modidifed id
82
+ * @return string Field id
83
+ */
84
+ public function id( $raw = false ) {
85
+ $id = $raw ? '_id' : 'id';
86
+ return $this->args( $id );
87
+ }
88
+
89
+ /**
90
+ * Get a field argument
91
+ * @since 1.1.0
92
+ * @param string $key Argument to check
93
+ * @param string $key Sub argument to check
94
+ * @return mixed Argument value or false if non-existent
95
+ */
96
+ public function args( $key = '', $_key = '' ) {
97
+ $vars = $this->_data( 'args', $key );
98
+ if ( $_key ) {
99
+ return isset( $vars[ $_key ] ) ? $vars[ $_key ] : false;
100
+ }
101
+ return $vars;
102
+ }
103
+
104
+ /**
105
+ * Get Field's value
106
+ * @since 1.1.0
107
+ * @param string $key If value is an array, is used to get array key->value
108
+ * @return mixed Field value or false if non-existent
109
+ */
110
+ public function value( $key = '' ) {
111
+ return $this->_data( 'value', $key );
112
+ }
113
+
114
+ /**
115
+ * Retrieve a portion of a field property
116
+ * @since 1.1.0
117
+ * @param string $var Field property to check
118
+ * @param string $key Field property array key to check
119
+ * @return mixed Queried property value or false
120
+ */
121
+ public function _data( $var, $key = '' ) {
122
+ $vars = $this->$var;
123
+ if ( $key ) {
124
+ return isset( $vars[ $key ] ) ? $vars[ $key ] : false;
125
+ }
126
+ return $vars;
127
+ }
128
+
129
+ /**
130
+ * Retrieves metadata/option data
131
+ * @since 1.0.1
132
+ * @param string $field_id Meta key/Option array key
133
+ * @return mixed Meta/Option value
134
+ */
135
+ public function get_data( $field_id = '', $args = array() ) {
136
+ if ( $field_id ) {
137
+ $args['field_id'] = $field_id;
138
+ } else if ( $this->group ) {
139
+ $args['field_id'] = $this->group->id();
140
+ }
141
+ extract( $this->data_args( $args ) );
142
+
143
+ $data = 'options-page' === $type
144
+ ? cmb_Meta_Box::get_option( $id, $field_id )
145
+ : get_metadata( $type, $id, $field_id, ( $single || $repeat ) /* If multicheck this can be multiple values */ );
146
+
147
+ if ( $this->group && $data ) {
148
+ $data = isset( $data[ $this->group->args( 'count' ) ][ $this->args( '_id' ) ] )
149
+ ? $data[ $this->group->args( 'count' ) ][ $this->args( '_id' ) ]
150
+ : false;
151
+ }
152
+ return $data;
153
+ }
154
+
155
+ /**
156
+ * Updates metadata/option data
157
+ * @since 1.0.1
158
+ * @param mixed $value Value to update data with
159
+ * @param bool $single Whether data is an array (add_metadata)
160
+ */
161
+ public function update_data( $new_value, $single = true ) {
162
+ extract( $this->data_args( array( 'new_value' => $new_value, 'single' => $single ) ) );
163
+
164
+ $new_value = $repeat ? array_values( $new_value ) : $new_value;
165
+
166
+ if ( 'options-page' === $type )
167
+ return cmb_Meta_Box::update_option( $id, $field_id, $new_value, $single );
168
+
169
+ if ( ! $single )
170
+ return add_metadata( $type, $id, $field_id, $new_value, false );
171
+
172
+ return update_metadata( $type, $id, $field_id, $new_value );
173
+ }
174
+
175
+ /**
176
+ * Removes/updates metadata/option data
177
+ * @since 1.0.1
178
+ * @param string $old Old value
179
+ */
180
+ public function remove_data( $old = '' ) {
181
+ extract( $this->data_args() );
182
+
183
+ return 'options-page' === $type
184
+ ? cmb_Meta_Box::remove_option( $id, $field_id )
185
+ : delete_metadata( $type, $id, $field_id, $old );
186
+ }
187
+
188
+ /**
189
+ * data variables for get/set data methods
190
+ * @since 1.1.0
191
+ * @param array $args Override arguments
192
+ * @return array Updated arguments
193
+ */
194
+ public function data_args( $args = array() ) {
195
+ $args = wp_parse_args( $args, array(
196
+ 'type' => $this->object_type,
197
+ 'id' => $this->object_id,
198
+ 'field_id' => $this->id( true ),
199
+ 'repeat' => $this->args( 'repeatable' ),
200
+ 'single' => ! $this->args( 'multiple' ),
201
+ ) );
202
+ return $args;
203
+ }
204
+
205
+ /**
206
+ * Checks if field has a registered validation callback
207
+ * @since 1.0.1
208
+ * @param mixed $meta_value Meta value
209
+ * @return mixed Possibly validated meta value
210
+ */
211
+ public function sanitization_cb( $meta_value ) {
212
+ if ( empty( $meta_value ) )
213
+ return $meta_value;
214
+
215
+ // Check if the field has a registered validation callback
216
+ $cb = $this->maybe_callback( 'sanitization_cb' );
217
+ if ( false === $cb ) {
218
+ // If requestion NO validation, return meta value
219
+ return $meta_value;
220
+ } elseif ( $cb ) {
221
+ // Ok, callback is good, let's run it.
222
+ return call_user_func( $cb, $meta_value, $this->args(), $this );
223
+ }
224
+
225
+ $clean = new cmb_Meta_Box_Sanitize( $this, $meta_value );
226
+ // Validation via 'cmb_Meta_Box_Sanitize' (with fallback filter)
227
+ return $clean->{$this->type()}( $meta_value );
228
+ }
229
+
230
+ /**
231
+ * Checks if field has a callback value
232
+ * @since 1.0.1
233
+ * @param string $cb Callback string
234
+ * @return mixed NULL, false for NO validation, or $cb string if it exists.
235
+ */
236
+ public function maybe_callback( $cb ) {
237
+ $field_args = $this->args();
238
+ if ( ! isset( $field_args[ $cb ] ) )
239
+ return;
240
+
241
+ // Check if metabox is requesting NO validation
242
+ $cb = false !== $field_args[ $cb ] && 'false' !== $field_args[ $cb ] ? $field_args[ $cb ] : false;
243
+
244
+ // If requestion NO validation, return false
245
+ if ( ! $cb )
246
+ return false;
247
+
248
+ if ( is_callable( $cb ) )
249
+ return $cb;
250
+ }
251
+
252
+ /**
253
+ * Determine if current type is excempt from escaping
254
+ * @since 1.1.0
255
+ * @return bool True if exempt
256
+ */
257
+ public function escaping_exception() {
258
+ // These types cannot be escaped
259
+ return in_array( $this->type(), array(
260
+ 'file_list',
261
+ 'multicheck',
262
+ 'text_datetime_timestamp_timezone',
263
+ ) );
264
+ }
265
+
266
+ /**
267
+ * Determine if current type cannot be repeatable
268
+ * @since 1.1.0
269
+ * @param string $type Field type to check
270
+ * @return bool True if type cannot be repeatable
271
+ */
272
+ public function repeatable_exception( $type ) {
273
+ // These types cannot be escaped
274
+ return in_array( $type, array(
275
+ 'file', // Use file_list
276
+ 'radio',
277
+ 'title',
278
+ 'group',
279
+ // @todo Ajax load wp_editor: http://wordpress.stackexchange.com/questions/51776/how-to-load-wp-editor-through-ajax-jquery
280
+ 'wysiwyg',
281
+ 'checkbox',
282
+ 'radio_inline',
283
+ 'taxonomy_radio',
284
+ 'taxonomy_select',
285
+ 'taxonomy_multicheck',
286
+ ) );
287
+ }
288
+
289
+ /**
290
+ * Escape the value before output. Defaults to 'esc_attr()'
291
+ * @since 1.0.1
292
+ * @param mixed $meta_value Meta value
293
+ * @param mixed $func Escaping function (if not esc_attr())
294
+ * @return mixed Final value
295
+ */
296
+ public function escaped_value( $func = 'esc_attr', $meta_value = '' ) {
297
+
298
+ if ( isset( $this->escaped_value ) )
299
+ return $this->escaped_value;
300
+
301
+ $meta_value = $meta_value ? $meta_value : $this->value();
302
+ // Check if the field has a registered escaping callback
303
+ $cb = $this->maybe_callback( 'escape_cb' );
304
+ if ( false === $cb || $this->escaping_exception() ) {
305
+ // If requesting NO escaping, return meta value
306
+ return ! empty( $meta_value ) ? $meta_value : $this->args( 'default' );
307
+ } elseif ( $cb ) {
308
+ // Ok, callback is good, let's run it.
309
+ return call_user_func( $cb, $meta_value, $this->args(), $this );
310
+ }
311
+
312
+ // Or custom escaping filter can be used
313
+ $esc = apply_filters( 'cmb_types_esc_'. $this->type(), null, $meta_value, $this->args(), $this );
314
+ if ( null !== $esc ) {
315
+ return $esc;
316
+ }
317
+
318
+ // escaping function passed in?
319
+ $func = $func ? $func : 'esc_attr';
320
+ $meta_value = ! empty( $meta_value ) ? $meta_value : $this->args( 'default' );
321
+
322
+ if ( is_array( $meta_value ) ) {
323
+ foreach ( $meta_value as $key => $value ) {
324
+ $meta_value[ $key ] = call_user_func( $func, $value );
325
+ }
326
+ } else {
327
+ $meta_value = call_user_func( $func, $meta_value );
328
+ }
329
+
330
+ $this->escaped_value = $meta_value;
331
+ return $this->escaped_value;
332
+ }
333
+
334
+ /**
335
+ * Offset a time value based on timezone
336
+ * @since 1.0.0
337
+ * @return string Offset time string
338
+ */
339
+ public function field_timezone_offset() {
340
+ return cmb_Meta_Box::timezone_offset( $this->field_timezone() );
341
+ }
342
+
343
+ /**
344
+ * Return timezone string
345
+ * @since 1.0.0
346
+ * @return string Timezone string
347
+ */
348
+ public function field_timezone() {
349
+
350
+ // Is timezone arg set?
351
+ if ( $this->args( 'timezone' ) ) {
352
+ return $this->args( 'timezone' ) ;
353
+ }
354
+ // Is there another meta key with a timezone stored as its value we should use?
355
+ else if ( $this->args( 'timezone_meta_key' ) ) {
356
+ return $this->get_data( $this->args( 'timezone_meta_key' ) );
357
+ }
358
+
359
+ return false;
360
+ }
361
+
362
+ /**
363
+ * Render a field row
364
+ * @since 1.0.0
365
+ */
366
+ public function render_field() {
367
+
368
+ // If field is requesting to not be shown on the front-end
369
+ if ( ! is_admin() && ! $this->args( 'on_front' ) )
370
+ return;
371
+
372
+ // If field is requesting to be conditionally shown
373
+ if ( is_callable( $this->args( 'show_on_cb' ) ) && ! call_user_func( $this->args( 'show_on_cb' ), $this ) )
374
+ return;
375
+
376
+ $classes = 'cmb-type-'. sanitize_html_class( $this->type() );
377
+ $classes .= ' cmb_id_'. sanitize_html_class( $this->id() );
378
+ $classes .= $this->args( 'repeatable' ) ? ' cmb-repeat' : '';
379
+ // 'inline' flag, or _inline in the field type, set to true
380
+ $classes .= $this->args( 'inline' ) ? ' cmb-inline' : '';
381
+ $is_side = 'side' === $this->args( 'context' );
382
+
383
+ printf( "<tr class=\"%s\">\n", $classes );
384
+
385
+ if ( 'title' == $this->type() || ! $this->args( 'show_names' ) || $is_side ) {
386
+ echo "\t<td colspan=\"2\">\n";
387
+
388
+ if ( ! $this->args( 'show_names' ) || $is_side ) {
389
+ $style = ! $is_side || 'title' == $this->type() ? ' style="display:none;"' : '';
390
+ printf( "\n<label%s for=\"%s\">%s</label>\n", $style, $this->id(), $this->args( 'name' ) );
391
+ }
392
+ } else {
393
+
394
+ $style = 'post' == $this->object_type ? ' style="width:18%"' : '';
395
+ // $tag = 'side' !== $this->args( 'context' ) ? 'th' : 'p';
396
+ $tag = 'th';
397
+ printf( '<%1$s%2$s><label for="%3$s">%4$s</label></%1$s>', $tag, $style, $this->id(), $this->args( 'name' ) );
398
+
399
+ echo "\n\t<td>\n";
400
+ }
401
+
402
+ echo $this->args( 'before' );
403
+
404
+ $this_type = new cmb_Meta_Box_types( $this );
405
+ $this_type->render();
406
+
407
+ echo $this->args( 'after' );
408
+
409
+ echo "\n\t</td>\n</tr>";
410
+ }
411
+
412
+ /**
413
+ * Replaces a hash key - {#} - with the repeatable count
414
+ * @since 1.2.0
415
+ * @param string $value Value to update
416
+ * @return string Updated value
417
+ */
418
+ public function replace_hash( $value ) {
419
+ // Replace hash with 1 based count
420
+ return str_ireplace( '{#}', ( $this->count() + 1 ), $value );
421
+ }
422
+
423
+ /**
424
+ * Fills in empty field parameters with defaults
425
+ * @since 1.1.0
426
+ * @param array $args Metabox field config array
427
+ */
428
+ public function _set_field_defaults( $args ) {
429
+
430
+ // Set up blank or default values for empty ones
431
+ if ( ! isset( $args['name'] ) ) $args['name'] = '';
432
+ if ( ! isset( $args['desc'] ) ) $args['desc'] = '';
433
+ if ( ! isset( $args['before'] ) ) $args['before'] = '';
434
+ if ( ! isset( $args['after'] ) ) $args['after'] = '';
435
+ if ( ! isset( $args['protocols'] ) ) $args['protocols'] = null;
436
+ if ( ! isset( $args['description'] ) ) {
437
+ $args['description'] = isset( $args['desc'] ) ? $args['desc'] : '';
438
+ }
439
+ if ( ! isset( $args['default'] ) ) {
440
+ // Phase out 'std', and use 'default' instead
441
+ $args['default'] = isset( $args['std'] ) ? $args['std'] : '';
442
+ }
443
+ if ( ! isset( $args['preview_size'] ) ) $args['preview_size'] = array( 50, 50 );
444
+ if ( ! isset( $args['date_format'] ) ) $args['date_format'] = 'm\/d\/Y';
445
+ if ( ! isset( $args['time_format'] ) ) $args['time_format'] = 'h:i A';
446
+ // Allow a filter override of the default value
447
+ $args['default'] = apply_filters( 'cmb_default_filter', $args['default'], $args, $this->object_type, $this->object_type );
448
+ $args['allow'] = 'file' == $args['type'] && ! isset( $args['allow'] ) ? array( 'url', 'attachment' ) : array();
449
+ $args['save_id'] = 'file' == $args['type'] && ! ( isset( $args['save_id'] ) && ! $args['save_id'] );
450
+ // $args['multiple'] = isset( $args['multiple'] ) ? $args['multiple'] : ( 'multicheck' == $args['type'] ? true : false );
451
+ $args['multiple'] = isset( $args['multiple'] ) ? $args['multiple'] : false;
452
+ $args['repeatable'] = isset( $args['repeatable'] ) && $args['repeatable'] && ! $this->repeatable_exception( $args['type'] );
453
+ $args['inline'] = isset( $args['inline'] ) && $args['inline'] || false !== stripos( $args['type'], '_inline' );
454
+ $args['on_front'] = ! ( isset( $args['on_front'] ) && ! $args['on_front'] );
455
+ $args['attributes'] = isset( $args['attributes'] ) && is_array( $args['attributes'] ) ? $args['attributes'] : array();
456
+ $args['options'] = isset( $args['options'] ) && is_array( $args['options'] ) ? $args['options'] : array();
457
+
458
+ $args['options'] = 'group' == $args['type'] ? wp_parse_args( $args['options'], array(
459
+ 'add_button' => __( 'Add Group', 'cmb' ),
460
+ 'remove_button' => __( 'Remove Group', 'cmb' ),
461
+ ) ) : $args['options'];
462
+
463
+ $args['_id'] = $args['id'];
464
+ $args['_name'] = $args['id'];
465
+
466
+ if ( $this->group ) {
467
+ $args['id'] = $this->group->args( 'id' ) .'_'. $this->group->args( 'count' ) .'_'. $args['id'];
468
+ $args['_name'] = $this->group->args( 'id' ) .'['. $this->group->args( 'count' ) .']['. $args['_name'] .']';
469
+ }
470
+
471
+ if ( 'wysiwyg' == $args['type'] ) {
472
+ $args['id'] = strtolower( str_ireplace( '-', '_', $args['id'] ) );
473
+ $args['options']['textarea_name'] = $args['_name'];
474
+ }
475
+
476
+ $option_types = array( 'taxonomy_select', 'taxonomy_radio', 'taxonomy_radio_inline' );
477
+ if ( in_array( $args['type'], $option_types, true ) ) {
478
+
479
+ // @todo implemention
480
+ $args['show_option_all'] = isset( $args['show_option_all'] ) && ! $args['show_option_all'] ? false : true;
481
+ $args['show_option_none'] = isset( $args['show_option_none'] ) && ! $args['show_option_none'] ? false : true;
482
+
483
+ }
484
+
485
+ return $args;
486
+ }
487
+
488
+ /**
489
+ * Updates attributes array values unless they exist from the field config array
490
+ * @since 1.1.0
491
+ * @param array $attrs Array of attributes to update
492
+ */
493
+ public function maybe_set_attributes( $attrs = array() ) {
494
+ return wp_parse_args( $this->args['attributes'], $attrs );
495
+ }
496
+
497
+ }
includes/plus-options/metabox/helpers/cmb_Meta_Box_types.php ADDED
@@ -0,0 +1,794 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * CMB field types
5
+ *
6
+ * @todo test taxonomy methods with non-post objects
7
+ * @todo test all methods with non-post objects
8
+ * @todo Date/Time fields should store date format as data attribute for JS
9
+ *
10
+ * @since 1.0.0
11
+ */
12
+ class cmb_Meta_Box_types {
13
+
14
+ /**
15
+ * An iterator value for repeatable fields
16
+ * @var integer
17
+ * @since 1.0.0
18
+ */
19
+ public $iterator = 0;
20
+
21
+ /**
22
+ * Current field
23
+ * @var array
24
+ * @since 1.0.0
25
+ */
26
+ public $field;
27
+
28
+ public function __construct( $field ) {
29
+ $this->field = $field;
30
+ }
31
+
32
+ /**
33
+ * Default fallback. Allows rendering fields via "cmb_render_$name" hook
34
+ * @since 1.0.0
35
+ * @param string $name Non-existent method name
36
+ * @param array $arguments All arguments passed to the method
37
+ */
38
+ public function __call( $name, $arguments ) {
39
+ // When a non-registered field is called, send it through an action.
40
+ do_action( "cmb_render_$name", $this->field->args(), $this->field->escaped_value(), $this->field->object_id, $this->field->object_type, $this );
41
+ }
42
+
43
+ /**
44
+ * Render a field (and handle repeatable)
45
+ * @since 1.1.0
46
+ */
47
+ public function render() {
48
+ if ( $this->field->args( 'repeatable' ) ) {
49
+ $this->render_repeatable_field();
50
+ } else {
51
+ $this->_render();
52
+ }
53
+ }
54
+
55
+ /**
56
+ * Render a field type
57
+ * @since 1.1.0
58
+ */
59
+ protected function _render() {
60
+ echo $this->{$this->field->type()}();
61
+ }
62
+
63
+ /**
64
+ * Checks if we can get a post object, and if so, uses `get_the_terms` which utilizes caching
65
+ * @since 1.0.2
66
+ * @return mixed Array of terms on success
67
+ */
68
+ public function get_object_terms() {
69
+ $object_id = $this->field->object_id;
70
+ $taxonomy = $this->field->args( 'taxonomy' );
71
+
72
+ if ( ! $post = get_post( $object_id ) ) {
73
+
74
+ $cache_key = 'cmb-cache-'. $taxonomy .'-'. $object_id;
75
+
76
+ // Check cache
77
+ $cached = $test = get_transient( $cache_key );
78
+ if ( $cached )
79
+ return $cached;
80
+
81
+ $cached = wp_get_object_terms( $object_id, $taxonomy );
82
+ // Do our own (minimal) caching. Long enough for a page-load.
83
+ $set = set_transient( $cache_key, $cached, 60 );
84
+ return $cached;
85
+ }
86
+
87
+ // WP caches internally so it's better to use
88
+ return get_the_terms( $post, $taxonomy );
89
+
90
+ }
91
+
92
+ /**
93
+ * Determine a file's extension
94
+ * @since 1.0.0
95
+ * @param string $file File url
96
+ * @return string|false File extension or false
97
+ */
98
+ public function get_file_ext( $file ) {
99
+ $parsed = @parse_url( $file, PHP_URL_PATH );
100
+ return $parsed ? strtolower( pathinfo( $parsed, PATHINFO_EXTENSION ) ) : false;
101
+ }
102
+
103
+ /**
104
+ * Determines if a file has a valid image extension
105
+ * @since 1.0.0
106
+ * @param string $file File url
107
+ * @return bool Whether file has a valid image extension
108
+ */
109
+ public function is_valid_img_ext( $file ) {
110
+ $file_ext = $this->get_file_ext( $file );
111
+
112
+ $this->valid = empty( $this->valid )
113
+ ? (array) apply_filters( 'cmb_valid_img_types', array( 'jpg', 'jpeg', 'png', 'gif', 'ico', 'icon' ) )
114
+ : $this->valid;
115
+
116
+ return ( $file_ext && in_array( $file_ext, $this->valid ) );
117
+ }
118
+
119
+ /**
120
+ * Handles parsing and filtering attributes while preserving any passed in via field config.
121
+ * @since 1.1.0
122
+ * @param array $args Override arguments
123
+ * @param string $element Element for filter
124
+ * @param array $defaults Default arguments
125
+ * @return array Parsed and filtered arguments
126
+ */
127
+ public function parse_args( $args, $element, $defaults ) {
128
+ return wp_parse_args( apply_filters( "cmb_{$element}_attributes", $this->field->maybe_set_attributes( $args ), $this->field, $this ), $defaults );
129
+ }
130
+
131
+ /**
132
+ * Combines attributes into a string for a form element
133
+ * @since 1.1.0
134
+ * @param array $attrs Attributes to concatenate
135
+ * @param array $attr_exclude Attributes that should NOT be concatenated
136
+ * @return string String of attributes for form element
137
+ */
138
+ public function concat_attrs( $attrs, $attr_exclude = array() ) {
139
+ $attributes = '';
140
+ foreach ( $attrs as $attr => $val ) {
141
+ if ( ! in_array( $attr, (array) $attr_exclude, true ) )
142
+ $attributes .= sprintf( ' %s="%s"', $attr, $val );
143
+ }
144
+ return $attributes;
145
+ }
146
+
147
+ /**
148
+ * Generates html for an option element
149
+ * @since 1.1.0
150
+ * @param string $opt_label Option label
151
+ * @param string $opt_value Option value
152
+ * @param mixed $selected Selected attribute if option is selected
153
+ * @return string Generated option element html
154
+ */
155
+ public function option( $opt_label, $opt_value, $selected ) {
156
+ return sprintf( "\t".'<option value="%s" %s>%s</option>', $opt_value, selected( $selected, true, false ), $opt_label )."\n";
157
+ }
158
+
159
+ /**
160
+ * Generates options html
161
+ * @since 1.1.0
162
+ * @param array $args Optional arguments
163
+ * @param string $method Method to generate individual option item
164
+ * @return string Concatenated html options
165
+ */
166
+ public function concat_options( $args = array(), $method = 'list_input' ) {
167
+
168
+ $options = (array) $this->field->args( 'options' );
169
+ $saved_value = $this->field->escaped_value();
170
+ $value = $saved_value ? $saved_value : $this->field->args( 'default' );
171
+
172
+ $_options = ''; $i = 1;
173
+ foreach ( $options as $option_key => $option ) {
174
+
175
+ // Check for the "old" way
176
+ $opt_label = is_array( $option ) && array_key_exists( 'name', $option ) ? $option['name'] : $option;
177
+ $opt_value = is_array( $option ) && array_key_exists( 'value', $option ) ? $option['value'] : $option_key;
178
+ // Check if this option is the value of the input
179
+ $is_current = $value == $opt_value;
180
+
181
+ if ( ! empty( $args ) ) {
182
+ // Clone args & modify for just this item
183
+ $this_args = $args;
184
+ $this_args['value'] = $opt_value;
185
+ $this_args['label'] = $opt_label;
186
+ if ( $is_current )
187
+ $this_args['checked'] = 'checked';
188
+
189
+ $_options .= $this->$method( $this_args, $i );
190
+ } else {
191
+ $_options .= $this->option( $opt_label, $opt_value, $is_current );
192
+ }
193
+ $i++;
194
+ }
195
+ return $_options;
196
+ }
197
+
198
+ /**
199
+ * Generates html for list item with input
200
+ * @since 1.1.0
201
+ * @param array $args Override arguments
202
+ * @param int $i Iterator value
203
+ * @return string Gnerated list item html
204
+ */
205
+ public function list_input( $args = array(), $i ) {
206
+ $args = $this->parse_args( $args, 'list_input', array(
207
+ 'type' => 'radio',
208
+ 'class' => 'cmb_option',
209
+ 'name' => $this->_name(),
210
+ 'id' => $this->_id( $i ),
211
+ 'value' => $this->field->escaped_value(),
212
+ 'label' => '',
213
+ ) );
214
+
215
+ return sprintf( "\t".'<li><input%s/> <label for="%s">%s</label></li>'."\n", $this->concat_attrs( $args, 'label' ), $args['id'], $args['label'] );
216
+ }
217
+
218
+ /**
219
+ * Generates html for list item with checkbox input
220
+ * @since 1.1.0
221
+ * @param array $args Override arguments
222
+ * @param int $i Iterator value
223
+ * @return string Gnerated list item html
224
+ */
225
+ public function list_input_checkbox( $args, $i ) {
226
+ unset( $args['selected'] );
227
+ $saved_value = $this->field->escaped_value();
228
+ if ( is_array( $saved_value ) && in_array( $args['value'], $saved_value ) ) {
229
+ $args['checked'] = 'checked';
230
+ }
231
+ return $this->list_input( $args, $i );
232
+ }
233
+
234
+ /**
235
+ * Generates repeatable field table markup
236
+ * @since 1.0.0
237
+ */
238
+ public function render_repeatable_field() {
239
+ $table_id = $this->field->id() .'_repeat';
240
+
241
+ $this->_desc( true, true );
242
+ ?>
243
+
244
+ <table id="<?php echo $table_id; ?>" class="cmb-repeat-table">
245
+ <tbody>
246
+ <?php $this->repeatable_rows(); ?>
247
+ </tbody>
248
+ </table>
249
+ <p class="add-row">
250
+ <a data-selector="<?php echo $table_id; ?>" class="add-row-button button" href="#"><?php _e( 'Add Row', 'cmb' ); ?></a>
251
+ </p>
252
+
253
+ <?php
254
+ // reset iterator
255
+ $this->iterator = 0;
256
+ }
257
+
258
+ /**
259
+ * Generates repeatable field rows
260
+ * @since 1.1.0
261
+ */
262
+ public function repeatable_rows() {
263
+ $meta_value = $this->field->escaped_value();
264
+ // check for default content
265
+ $default = $this->field->args( 'default' );
266
+
267
+ // check for saved data
268
+ if ( ! empty( $meta_value ) ) {
269
+ $meta_value = is_array( $meta_value ) ? array_filter( $meta_value ) : $meta_value;
270
+ $meta_value = ! empty( $meta_value ) ? $meta_value : $default;
271
+ } else {
272
+ $meta_value = $default;
273
+ }
274
+
275
+ // Loop value array and add a row
276
+ if ( ! empty( $meta_value ) ) {
277
+ foreach ( (array) $meta_value as $val ) {
278
+ $this->field->escaped_value = $val;
279
+ $this->repeat_row();
280
+ $this->iterator++;
281
+ }
282
+ } else {
283
+ // Otherwise add one row
284
+ $this->repeat_row();
285
+ }
286
+
287
+ // Then add an empty row
288
+ $this->field->escaped_value = '';
289
+ $this->iterator = $this->iterator ? $this->iterator : 1;
290
+ $this->repeat_row( 'empty-row' );
291
+ }
292
+
293
+ /**
294
+ * Generates a repeatable row's markup
295
+ * @since 1.1.0
296
+ * @param string $class Repeatable table row's class
297
+ */
298
+ protected function repeat_row( $class = 'repeat-row' ) {
299
+ ?>
300
+
301
+ <tr class="<?php echo $class; ?>">
302
+ <td>
303
+ <?php $this->_render(); ?>
304
+ </td>
305
+ <td class="remove-row">
306
+ <a class="button remove-row-button" href="#"><?php _e( 'Remove', 'cmb' ); ?></a>
307
+ </td>
308
+ </tr>
309
+
310
+ <?php
311
+ }
312
+
313
+ /**
314
+ * Generates description markup
315
+ * @since 1.0.0
316
+ * @param boolean $paragraph Paragraph tag or span
317
+ * @param boolean $echo Whether to echo description or only return it
318
+ * @return string Field's description markup
319
+ */
320
+ public function _desc( $paragraph = false, $echo = false ) {
321
+ // Prevent description from printing multiple times for repeatable fields
322
+ if ( $this->field->args( 'repeatable' ) || $this->iterator > 0 ) {
323
+ return '';
324
+ }
325
+ $tag = $paragraph ? 'p' : 'span';
326
+ $desc = "\n<$tag class=\"cmb_metabox_description\">{$this->field->args( 'description' )}</$tag>\n";
327
+ if ( $echo )
328
+ echo $desc;
329
+ return $desc;
330
+ }
331
+
332
+ /**
333
+ * Generate field name attribute
334
+ * @since 1.1.0
335
+ * @param string $suffix For multi-part fields
336
+ * @return string Name attribute
337
+ */
338
+ public function _name( $suffix = '' ) {
339
+ return $this->field->args( '_name' ) . ( $this->field->args( 'repeatable' ) ? '['. $this->iterator .']' : '' ) . $suffix;
340
+ }
341
+
342
+ /**
343
+ * Generate field id attribute
344
+ * @since 1.1.0
345
+ * @param string $suffix For multi-part fields
346
+ * @return string Id attribute
347
+ */
348
+ public function _id( $suffix = '' ) {
349
+ return $this->field->id() . $suffix . ( $this->field->args( 'repeatable' ) ? '_'. $this->iterator .'" data-iterator="'. $this->iterator : '' );
350
+ }
351
+
352
+ /**
353
+ * Handles outputting an 'input' element
354
+ * @since 1.1.0
355
+ * @param array $args Override arguments
356
+ * @return string Form input element
357
+ */
358
+ public function input( $args = array() ) {
359
+ $args = $this->parse_args( $args, 'input', array(
360
+ 'type' => 'text',
361
+ 'class' => 'regular-text',
362
+ 'name' => $this->_name(),
363
+ 'id' => $this->_id(),
364
+ 'value' => $this->field->escaped_value(),
365
+ 'desc' => $this->_desc( true ),
366
+ ) );
367
+
368
+ return sprintf( '<input%s/>%s', $this->concat_attrs( $args, 'desc' ), $args['desc'] );
369
+ }
370
+
371
+ /**
372
+ * Handles outputting an 'textarea' element
373
+ * @since 1.1.0
374
+ * @param array $args Override arguments
375
+ * @return string Form textarea element
376
+ */
377
+ public function textarea( $args = array() ) {
378
+ $args = $this->parse_args( $args, 'textarea', array(
379
+ 'class' => 'cmb_textarea',
380
+ 'name' => $this->_name(),
381
+ 'id' => $this->_id(),
382
+ 'cols' => 60,
383
+ 'rows' => 10,
384
+ 'value' => $this->field->escaped_value( 'esc_textarea' ),
385
+ 'desc' => $this->_desc( true ),
386
+ ) );
387
+ return sprintf( '<textarea%s>%s</textarea>%s', $this->concat_attrs( $args, array( 'desc', 'value' ) ), $args['value'], $args['desc'] );
388
+ }
389
+
390
+ /**
391
+ * Begin Field Types
392
+ */
393
+
394
+ public function text() {
395
+ return $this->input();
396
+ }
397
+
398
+ public function text_small() {
399
+ return $this->input( array( 'class' => 'cmb_text_small', 'desc' => $this->_desc() ) );
400
+ }
401
+
402
+ public function text_medium() {
403
+ return $this->input( array( 'class' => 'cmb_text_medium', 'desc' => $this->_desc() ) );
404
+ }
405
+
406
+ public function text_email() {
407
+ return $this->input( array( 'class' => 'cmb_text_email cmb_text_medium', 'type' => 'email' ) );
408
+ }
409
+
410
+ public function text_url() {
411
+ return $this->input( array( 'class' => 'cmb_text_url cmb_text_medium regular-text', 'value' => $this->field->escaped_value( 'esc_url' ) ) );
412
+ }
413
+
414
+ public function text_date() {
415
+ return $this->input( array( 'class' => 'cmb_text_small cmb_datepicker', 'desc' => $this->_desc() ) );
416
+ }
417
+
418
+ public function text_time() {
419
+ return $this->input( array( 'class' => 'cmb_timepicker text_time', 'desc' => $this->_desc() ) );
420
+ }
421
+
422
+ public function text_money() {
423
+ return ( ! $this->field->args( 'before' ) ? '$ ' : ' ' ) . $this->input( array( 'class' => 'cmb_text_money', 'desc' => $this->_desc() ) );
424
+ }
425
+
426
+ public function textarea_small() {
427
+ return $this->textarea( array( 'class' => 'cmb_textarea_small', 'rows' => 4 ) );
428
+ }
429
+
430
+ public function textarea_code() {
431
+ return sprintf( '<pre>%s</pre>', $this->textarea( array( 'class' => 'cmb_textarea_code' ) ) );
432
+ }
433
+
434
+ public function wysiwyg( $args = array() ) {
435
+ extract( $this->parse_args( $args, 'input', array(
436
+ 'id' => $this->_id(),
437
+ 'value' => $this->field->escaped_value( 'stripslashes' ),
438
+ 'desc' => $this->_desc( true ),
439
+ 'options' => $this->field->args( 'options' ),
440
+ ) ) );
441
+
442
+ wp_editor( $value, $id, $options );
443
+ echo $desc;
444
+ }
445
+
446
+ public function text_date_timestamp() {
447
+ $meta_value = $this->field->escaped_value();
448
+ $value = ! empty( $meta_value ) ? date( $this->field->args( 'date_format' ), $meta_value ) : '';
449
+ return $this->input( array( 'class' => 'cmb_text_small cmb_datepicker', 'value' => $value ) );
450
+ }
451
+
452
+ public function text_datetime_timestamp( $meta_value = '' ) {
453
+ $desc = '';
454
+ if ( ! $meta_value ) {
455
+ $meta_value = $this->field->escaped_value();
456
+ // This will be used if there is a select_timezone set for this field
457
+ $tz_offset = $this->field->field_timezone_offset();
458
+ if ( ! empty( $tz_offset ) ) {
459
+ $meta_value -= $tz_offset;
460
+ }
461
+ $desc = $this->_desc();
462
+ }
463
+
464
+ $inputs = array(
465
+ $this->input( array(
466
+ 'class' => 'cmb_text_small cmb_datepicker',
467
+ 'name' => $this->_name( '[date]' ),
468
+ 'id' => $this->_id( '_date' ),
469
+ 'value' => ! empty( $meta_value ) ? date( $this->field->args( 'date_format' ), $meta_value ) : '',
470
+ 'desc' => '',
471
+ ) ),
472
+ $this->input( array(
473
+ 'class' => 'cmb_timepicker text_time',
474
+ 'name' => $this->_name( '[time]' ),
475
+ 'id' => $this->_id( '_time' ),
476
+ 'value' => ! empty( $meta_value ) ? date( $this->field->args( 'time_format' ), $meta_value ) : '',
477
+ 'desc' => $desc,
478
+ ) )
479
+ );
480
+
481
+ return implode( "\n", $inputs );
482
+ }
483
+
484
+ public function text_datetime_timestamp_timezone() {
485
+ $meta_value = $this->field->escaped_value();
486
+ $datetime = unserialize( $meta_value );
487
+ $meta_value = $tzstring = false;
488
+
489
+ if ( $datetime && $datetime instanceof DateTime ) {
490
+ $tz = $datetime->getTimezone();
491
+ $tzstring = $tz->getName();
492
+ $meta_value = $datetime->getTimestamp() + $tz->getOffset( new DateTime( 'NOW' ) );
493
+ }
494
+
495
+ $inputs = $this->text_datetime_timestamp( $meta_value );
496
+ $inputs .= '<select name="'. $this->_name( '[timezone]' ) .'" id="'. $this->_id( '_timezone' ) .'">';
497
+ $inputs .= wp_timezone_choice( $tzstring );
498
+ $inputs .= '</select>'. $this->_desc();
499
+
500
+ return $inputs;
501
+ }
502
+
503
+ public function select_timezone() {
504
+ $this->field->args['default'] = $this->field->args( 'default' )
505
+ ? $this->field->args( 'default' )
506
+ : cmb_Meta_Box::timezone_string();
507
+
508
+ $meta_value = $this->field->escaped_value();
509
+
510
+ return '<select name="'. $this->_name() .'" id="'. $this->_id() .'">'. wp_timezone_choice( $meta_value ) .'</select>';
511
+ }
512
+
513
+ public function colorpicker() {
514
+ $meta_value = $this->field->escaped_value();
515
+ $hex_color = '(([a-fA-F0-9]){3}){1,2}$';
516
+ if ( preg_match( '/^' . $hex_color . '/i', $meta_value ) ) // Value is just 123abc, so prepend #.
517
+ $meta_value = '#' . $meta_value;
518
+ elseif ( ! preg_match( '/^#' . $hex_color . '/i', $meta_value ) ) // Value doesn't match #123abc, so sanitize to just #.
519
+ $meta_value = "#";
520
+
521
+ return $this->input( array( 'class' => 'cmb_colorpicker cmb_text_small', 'value' => $meta_value ) );
522
+ }
523
+
524
+ public function title() {
525
+ extract( $this->parse_args( array(), 'title', array(
526
+ 'tag' => $this->field->object_type == 'post' ? 'h5' : 'h3',
527
+ 'class' => 'cmb_metabox_title',
528
+ 'name' => $this->field->args( 'name' ),
529
+ 'desc' => $this->_desc( true ),
530
+ ) ) );
531
+
532
+ return sprintf( '<%1$s class="%2$s">%3$s</%1$s>%4$s', $tag, $class, $name, $desc );
533
+ }
534
+
535
+ public function select( $args = array() ) {
536
+ $args = $this->parse_args( $args, 'select', array(
537
+ 'class' => 'cmb_select',
538
+ 'name' => $this->_name(),
539
+ 'id' => $this->_id(),
540
+ 'desc' => $this->_desc( true ),
541
+ 'options' => $this->concat_options(),
542
+ ) );
543
+
544
+ $attrs = $this->concat_attrs( $args, array( 'desc', 'options' ) );
545
+ return sprintf( '<select%s>%s</select>%s', $attrs, $args['options'], $args['desc'] );
546
+ }
547
+
548
+ public function taxonomy_select() {
549
+
550
+ $names = $this->get_object_terms();
551
+ $saved_term = is_wp_error( $names ) || empty( $names ) ? $this->field->args( 'default' ) : $names[0]->slug;
552
+ $terms = get_terms( $this->field->args( 'taxonomy' ), 'hide_empty=0' );
553
+ $options = '';
554
+
555
+ foreach ( $terms as $term ) {
556
+ $selected = $saved_term == $term->slug;
557
+ $options .= $this->option( $term->name, $term->slug, $selected );
558
+ }
559
+
560
+ return $this->select( array( 'options' => $options ) );
561
+ }
562
+
563
+ public function radio( $args = array(), $type = 'radio' ) {
564
+ extract( $this->parse_args( $args, $type, array(
565
+ 'class' => 'cmb_radio_list cmb_list',
566
+ 'options' => $this->concat_options( array( 'label' => 'test' ) ),
567
+ 'desc' => $this->_desc( true ),
568
+ ) ) );
569
+
570
+ return sprintf( '<ul class="%s">%s</ul>%s', $class, $options, $desc );
571
+ }
572
+
573
+ public function radio_inline() {
574
+ return $this->radio( array(), 'radio_inline' );
575
+ }
576
+
577
+ public function multicheck( $type = 'checkbox' ) {
578
+ return $this->radio( array( 'class' => 'cmb_checkbox_list cmb_list', 'options' => $this->concat_options( array( 'type' => 'checkbox', 'name' => $this->_name() .'[]' ), 'list_input_checkbox' ) ), $type );
579
+ }
580
+
581
+ public function multicheck_inline() {
582
+ $this->multicheck( 'multicheck_inline' );
583
+ }
584
+
585
+ public function checkbox() {
586
+ $meta_value = $this->field->escaped_value();
587
+ $args = array( 'type' => 'checkbox', 'class' => 'cmb_option cmb_list', 'value' => 'on', 'desc' => '' );
588
+ if ( ! empty( $meta_value ) ) {
589
+ $args['checked'] = 'checked';
590
+ }
591
+ return sprintf( '%s <label for="%s">%s</label>', $this->input( $args ), $this->_id(), $this->_desc() );
592
+ }
593
+
594
+ public function taxonomy_radio() {
595
+ $names = $this->get_object_terms();
596
+ $saved_term = is_wp_error( $names ) || empty( $names ) ? $this->field->args( 'default' ) : $names[0]->slug;
597
+ $terms = get_terms( $this->field->args( 'taxonomy' ), 'hide_empty=0' );
598
+ $options = ''; $i = 1;
599
+
600
+ if ( ! $terms ) {
601
+ $options .= '<li><label>'. __( 'No terms', 'cmb' ) .'</label></li>';
602
+ } else {
603
+ foreach ( $terms as $term ) {
604
+ $args = array(
605
+ 'value' => $term->slug,
606
+ 'label' => $term->name,
607
+ );
608
+
609
+ if ( $saved_term == $term->slug ) {
610
+ $args['checked'] = 'checked';
611
+ }
612
+ $options .= $this->list_input( $args, $i );
613
+ $i++;
614
+ }
615
+ }
616
+
617
+ return $this->radio( array( 'options' => $options ), 'taxonomy_radio' );
618
+ }
619
+
620
+ public function taxonomy_radio_inline() {
621
+ $this->taxonomy_radio();
622
+ }
623
+
624
+ public function taxonomy_multicheck() {
625
+
626
+ $names = $this->get_object_terms();
627
+ $saved_terms = is_wp_error( $names ) || empty( $names )
628
+ ? $this->field->args( 'default' )
629
+ : wp_list_pluck( $names, 'slug' );
630
+ $terms = get_terms( $this->field->args( 'taxonomy' ), 'hide_empty=0' );
631
+ $name = $this->_name() .'[]';
632
+ $options = ''; $i = 1;
633
+
634
+ if ( ! $terms ) {
635
+ $options .= '<li><label>'. __( 'No terms', 'cmb' ) .'</label></li>';
636
+ } else {
637
+
638
+ foreach ( $terms as $term ) {
639
+ $args = array(
640
+ 'value' => $term->slug,
641
+ 'label' => $term->name,
642
+ 'type' => 'checkbox',
643
+ 'name' => $name,
644
+ );
645
+
646
+ if ( is_array( $saved_terms ) && in_array( $term->slug, $saved_terms ) ) {
647
+ $args['checked'] = 'checked';
648
+ }
649
+ $options .= $this->list_input( $args, $i );
650
+ $i++;
651
+ }
652
+ }
653
+
654
+ return $this->radio( array( 'class' => 'cmb_checkbox_list cmb_list', 'options' => $options ), 'taxonomy_multicheck' );
655
+ }
656
+
657
+ public function taxonomy_multicheck_inline() {
658
+ $this->taxonomy_multicheck();
659
+ }
660
+
661
+ public function file_list() {
662
+ $meta_value = $this->field->escaped_value();
663
+
664
+ $name = $this->_name();
665
+
666
+ echo $this->input( array(
667
+ 'type' => 'hidden',
668
+ 'class' => 'cmb_upload_file cmb_upload_list',
669
+ 'size' => 45, 'desc' => '', 'value' => '',
670
+ ) ),
671
+ $this->input( array(
672
+ 'type' => 'button',
673
+ 'class' => 'cmb_upload_button button cmb_upload_list',
674
+ 'value' => __( 'Add or Upload File', 'cmb' ),
675
+ 'name' => '', 'id' => '',
676
+ ) );
677
+
678
+ echo '<ul id="', $this->_id( '_status' ) ,'" class="cmb_media_status attach_list">';
679
+
680
+ if ( $meta_value && is_array( $meta_value ) ) {
681
+
682
+ foreach ( $meta_value as $id => $fullurl ) {
683
+ $id_input = $this->input( array(
684
+ 'type' => 'hidden',
685
+ 'value' => $fullurl,
686
+ 'name' => $name .'['. $id .']',
687
+ 'id' => 'filelist-'. $id,
688
+ 'desc' => '', 'class' => '',
689
+ ) );
690
+
691
+ if ( $this->is_valid_img_ext( $fullurl ) ) {
692
+ echo
693
+ '<li class="img_status">',
694
+ wp_get_attachment_image( $id, $this->field->args( 'preview_size' ) ),
695
+ '<p class="cmb_remove_wrapper"><a href="#" class="cmb_remove_file_button">'. __( 'Remove Image', 'cmb' ) .'</a></p>
696
+ '. $id_input .'
697
+ </li>';
698
+
699
+ } else {
700
+ $parts = explode( '/', $fullurl );
701
+ for ( $i = 0; $i < count( $parts ); ++$i ) {
702
+ $title = $parts[$i];
703
+ }
704
+ echo
705
+ '<li>',
706
+ __( 'File:', 'cmb' ), ' <strong>', $title, '</strong>&nbsp;&nbsp;&nbsp; (<a href="', $fullurl, '" target="_blank" rel="external">'. __( 'Download', 'cmb' ) .'</a> / <a href="#" class="cmb_remove_file_button">'. __( 'Remove', 'cmb' ) .'</a>)
707
+ '. $id_input .'
708
+ </li>';
709
+ }
710
+ }
711
+ }
712
+
713
+ echo '</ul>';
714
+ }
715
+
716
+ public function file() {
717
+ $meta_value = $this->field->escaped_value();
718
+ $allow = $this->field->args( 'allow' );
719
+ $input_type = ( 'url' == $allow || ( is_array( $allow ) && in_array( 'url', $allow ) ) )
720
+ ? 'text' : 'hidden';
721
+
722
+ echo $this->input( array(
723
+ 'type' => $input_type,
724
+ 'class' => 'cmb_upload_file',
725
+ 'size' => 45,
726
+ 'desc' => '',
727
+ ) ),
728
+ '<input class="cmb_upload_button button" type="button" value="'. __( 'Add or Upload File', 'cmb' ) .'" />',
729
+ $this->_desc( true );
730
+
731
+ $cached_id = $this->_id();
732
+ // Reset field args for attachment ID
733
+ $args = $this->field->args();
734
+ $args['id'] = $args['_id'] . '_id';
735
+ unset( $args['_id'], $args['_name'] );
736
+
737
+ // And get new field object
738
+ $this->field = new cmb_Meta_Box_field( $args, $this->field->group );
739
+
740
+ // Get ID value
741
+ $_id_value = $this->field->escaped_value( 'absint' );
742
+
743
+ // If there is no ID saved yet, try to get it from the url
744
+ if ( $meta_value && ! $_id_value ) {
745
+ $_id_value = cmb_Meta_Box::image_id_from_url( esc_url_raw( $meta_value ) );
746
+ }
747
+
748
+ echo $this->input( array(
749
+ 'type' => 'hidden',
750
+ 'class' => 'cmb_upload_file_id',
751
+ 'value' => $_id_value,
752
+ 'desc' => '',
753
+ ) ),
754
+ '<div id="', $this->_id( '_status' ) ,'" class="cmb_media_status">';
755
+ if ( ! empty( $meta_value ) ) {
756
+
757
+ if ( $this->is_valid_img_ext( $meta_value ) ) {
758
+ echo '<div class="img_status">';
759
+ echo '<img style="max-width: 350px; width: 100%; height: auto;" src="', $meta_value, '" alt="" />';
760
+ echo '<p class="cmb_remove_wrapper"><a href="#" class="cmb_remove_file_button" rel="', $cached_id, '">'. __( 'Remove Image', 'cmb' ) .'</a></p>';
761
+ echo '</div>';
762
+ } else {
763
+ // $file_ext = $this->get_file_ext( $meta_value );
764
+ $parts = explode( '/', $meta_value );
765
+ for ( $i = 0; $i < count( $parts ); ++$i ) {
766
+ $title = $parts[$i];
767
+ }
768
+ echo __( 'File:', 'cmb' ), ' <strong>', $title, '</strong>&nbsp;&nbsp;&nbsp; (<a href="', $meta_value, '" target="_blank" rel="external">'. __( 'Download', 'cmb' ) .'</a> / <a href="#" class="cmb_remove_file_button" rel="', $cached_id, '">'. __( 'Remove', 'cmb' ) .'</a>)';
769
+ }
770
+ }
771
+ echo '</div>';
772
+ }
773
+
774
+ public function oembed() {
775
+ echo $this->input( array(
776
+ 'class' => 'cmb_oembed regular-text',
777
+ 'data-objectid' => $this->field->object_id,
778
+ 'data-objecttype' => $this->field->object_type
779
+ ) ),
780
+ '<p class="cmb-spinner spinner" style="display:none;"><img src="'. admin_url( '/images/wpspin_light.gif' ) .'" alt="spinner"/></p>',
781
+ '<div id="',$this->_id( '_status' ) ,'" class="cmb_media_status ui-helper-clearfix embed_wrap">';
782
+
783
+ if ( $meta_value = $this->field->escaped_value() ) {
784
+ echo cmb_Meta_Box_ajax::get_oembed( $meta_value, $this->field->object_id, array(
785
+ 'object_type' => $this->field->object_type,
786
+ 'oembed_args' => array( 'width' => '640' ),
787
+ 'field_id' => $this->_id(),
788
+ ) );
789
+ }
790
+
791
+ echo '</div>';
792
+ }
793
+
794
+ }
includes/plus-options/metabox/images/ico-delete.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_flat_0_aaaaaa_40x100.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_flat_75_ffffff_40x100.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_glass_55_fbf9ee_1x400.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_glass_65_ffffff_1x400.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_glass_75_dadada_1x400.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_glass_75_e6e6e6_1x400.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_glass_95_fef1ec_1x400.png ADDED
Binary file
includes/plus-options/metabox/images/ui-bg_highlight-soft_75_cccccc_1x100.png ADDED
Binary file
includes/plus-options/metabox/images/ui-icons_222222_256x240.png ADDED
Binary file
includes/plus-options/metabox/images/ui-icons_2e83ff_256x240.png ADDED
Binary file
includes/plus-options/metabox/images/ui-icons_454545_256x240.png ADDED
Binary file
includes/plus-options/metabox/images/ui-icons_888888_256x240.png ADDED
Binary file
includes/plus-options/metabox/images/ui-icons_cd0a0a_256x240.png ADDED
Binary file
includes/plus-options/metabox/init.php ADDED
@@ -0,0 +1,1187 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /*
3
+ Script Name: Custom Metaboxes and Fields
4
+ Contributors: WebDevStudios (@webdevstudios / webdevstudios.com)
5
+ Justin Sternberg (@jtsternberg / dsgnwrks.pro)
6
+ Jared Atchison (@jaredatch / jaredatchison.com)
7
+ Bill Erickson (@billerickson / billerickson.net)
8
+ Andrew Norcross (@norcross / andrewnorcross.com)
9
+ Description: This will create metaboxes with custom fields that will blow your mind.
10
+ Version: 1.2.0
11
+ */
12
+
13
+ /**
14
+ * Released under the GPL license
15
+ * http://www.opensource.org/licenses/gpl-license.php
16
+ *
17
+ * This is an add-on for WordPress
18
+ * http://wordpress.org/
19
+ *
20
+ * **********************************************************************
21
+ * This program is free software; you can redistribute it and/or modify
22
+ * it under the terms of the GNU General Public License as published by
23
+ * the Free Software Foundation; either version 2 of the License, or
24
+ * (at your option) any later version.
25
+ *
26
+ * This program is distributed in the hope that it will be useful,
27
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
28
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
29
+ * GNU General Public License for more details.
30
+ * **********************************************************************
31
+ */
32
+
33
+ /************************************************************************
34
+ You should not edit the code below or things might explode!
35
+ *************************************************************************/
36
+
37
+ // Autoload helper classes
38
+ spl_autoload_register('cmb_Meta_Box::autoload_helpers');
39
+
40
+ $meta_boxes = array();
41
+ $meta_boxes = apply_filters( 'cmb_meta_boxes', $meta_boxes );
42
+ foreach ( $meta_boxes as $meta_box ) {
43
+ $my_box = new cmb_Meta_Box( $meta_box );
44
+ }
45
+
46
+ define( 'CMB_META_BOX_URL', cmb_Meta_Box::get_meta_box_url() );
47
+
48
+ /**
49
+ * Create meta boxes
50
+ */
51
+ class cmb_Meta_Box {
52
+
53
+ /**
54
+ * Current version number
55
+ * @var string
56
+ * @since 1.0.0
57
+ */
58
+ const CMB_VERSION = '1.2.0';
59
+
60
+ /**
61
+ * Metabox Config array
62
+ * @var array
63
+ * @since 0.9.0
64
+ */
65
+ protected $_meta_box;
66
+
67
+ /**
68
+ * Metabox Defaults
69
+ * @var array
70
+ * @since 1.0.1
71
+ */
72
+ protected static $mb_defaults = array(
73
+ 'id' => '',
74
+ 'title' => '',
75
+ 'type' => '',
76
+ 'pages' => array(), // Post type
77
+ 'context' => 'normal',
78
+ 'priority' => 'high',
79
+ 'show_names' => true, // Show field names on the left
80
+ 'show_on' => array( 'key' => false, 'value' => false ), // Specific post IDs or page templates to display this metabox
81
+ 'cmb_styles' => true, // Include cmb bundled stylesheet
82
+ 'fields' => array(),
83
+ );
84
+
85
+ /**
86
+ * Metabox Form ID
87
+ * @var string
88
+ * @since 0.9.4
89
+ */
90
+ protected $form_id = 'post';
91
+
92
+ /**
93
+ * Current field config array
94
+ * @var array
95
+ * @since 1.0.0
96
+ */
97
+ public static $field = array();
98
+
99
+ /**
100
+ * Object ID for metabox meta retrieving/saving
101
+ * @var int
102
+ * @since 1.0.0
103
+ */
104
+ protected static $object_id = 0;
105
+
106
+ /**
107
+ * Type of object being saved. (e.g., post, user, or comment)
108
+ * @var string
109
+ * @since 1.0.0
110
+ */
111
+ protected static $object_type = '';
112
+
113
+ /**
114
+ * Whether scripts/styles have been enqueued yet
115
+ * @var bool
116
+ * @since 1.0.0
117
+ */
118
+ protected static $is_enqueued = false;
119
+
120
+ /**
121
+ * Whether CMB nonce has been added to the page. (oly add once)
122
+ * @var bool
123
+ * @since 1.2.0
124
+ */
125
+ protected static $nonce_added = false;
126
+
127
+ /**
128
+ * Type of object specified by the metabox Config
129
+ * @var string
130
+ * @since 1.0.0
131
+ */
132
+ protected static $mb_object_type = 'post';
133
+
134
+ /**
135
+ * Array of all options from manage-options metaboxes
136
+ * @var array
137
+ * @since 1.0.0
138
+ */
139
+ protected static $options = array();
140
+
141
+ /**
142
+ * List of fields that are changed/updated on save
143
+ * @var array
144
+ * @since 1.1.0
145
+ */
146
+ protected static $updated = array();
147
+
148
+ /**
149
+ * Get started
150
+ */
151
+ function __construct( $meta_box ) {
152
+
153
+ $meta_box = self::set_mb_defaults( $meta_box );
154
+
155
+ $allow_frontend = apply_filters( 'cmb_allow_frontend', true, $meta_box );
156
+
157
+ if ( ! is_admin() && ! $allow_frontend )
158
+ return;
159
+
160
+ $this->_meta_box = $meta_box;
161
+
162
+ self::set_mb_type( $meta_box );
163
+
164
+ $types = wp_list_pluck( $meta_box['fields'], 'type' );
165
+ $upload = in_array( 'file', $types ) || in_array( 'file_list', $types );
166
+
167
+ global $pagenow;
168
+
169
+ $show_filters = 'cmb_Meta_Box_Show_Filters';
170
+ foreach ( get_class_methods( $show_filters ) as $filter ) {
171
+ add_filter( 'cmb_show_on', array( $show_filters, $filter ), 10, 2 );
172
+ }
173
+
174
+ // register our scripts and styles for cmb
175
+ add_action( 'admin_enqueue_scripts', array( $this, 'register_scripts' ), 8 );
176
+
177
+ if ( self::get_object_type() == 'post' ) {
178
+ add_action( 'admin_menu', array( $this, 'add_metaboxes' ) );
179
+ add_action( 'add_attachment', array( $this, 'save_post' ) );
180
+ add_action( 'edit_attachment', array( $this, 'save_post' ) );
181
+ add_action( 'save_post', array( $this, 'save_post' ), 10, 2 );
182
+ add_action( 'admin_enqueue_scripts', array( $this, 'do_scripts' ) );
183
+
184
+ if ( $upload && in_array( $pagenow, array( 'page.php', 'page-new.php', 'post.php', 'post-new.php' ) ) ) {
185
+ add_action( 'admin_head', array( $this, 'add_post_enctype' ) );
186
+ }
187
+
188
+ }
189
+ if ( self::get_object_type() == 'user' ) {
190
+
191
+ $priority = 10;
192
+ if ( isset( $meta_box['priority'] ) ) {
193
+ if ( is_numeric( $meta_box['priority'] ) )
194
+ $priority = $meta_box['priority'];
195
+ elseif ( $meta_box['priority'] == 'high' )
196
+ $priority = 5;
197
+ elseif ( $meta_box['priority'] == 'low' )
198
+ $priority = 20;
199
+ }
200
+ add_action( 'show_user_profile', array( $this, 'user_metabox' ), $priority );
201
+ add_action( 'edit_user_profile', array( $this, 'user_metabox' ), $priority );
202
+
203
+ add_action( 'personal_options_update', array( $this, 'save_user' ) );
204
+ add_action( 'edit_user_profile_update', array( $this, 'save_user' ) );
205
+ if ( $upload && in_array( $pagenow, array( 'profile.php', 'user-edit.php' ) ) ) {
206
+ $this->form_id = 'your-profile';
207
+ add_action( 'admin_head', array( $this, 'add_post_enctype' ) );
208
+ }
209
+ }
210
+
211
+ }
212
+
213
+ /**
214
+ * Autoloads files with classes when needed
215
+ * @since 1.0.0
216
+ * @param string $class_name Name of the class being requested
217
+ */
218
+ public static function autoload_helpers( $class_name ) {
219
+ if ( class_exists( $class_name, false ) )
220
+ return;
221
+
222
+ // for PHP versions < 5.3
223
+ $dir = dirname( __FILE__ );
224
+
225
+ $file = "$dir/helpers/$class_name.php";
226
+ if ( file_exists( $file ) )
227
+ @include( $file );
228
+ }
229
+
230
+ /**
231
+ * Registers scripts and styles for CMB
232
+ * @since 1.0.0
233
+ */
234
+ public function register_scripts() {
235
+
236
+ // Should only be run once
237
+ if ( self::$is_enqueued )
238
+ return;
239
+
240
+ global $wp_version;
241
+ // Only use minified files if SCRIPT_DEBUG is off
242
+ $min = defined('SCRIPT_DEBUG') && SCRIPT_DEBUG ? '' : '.min';
243
+
244
+ // scripts required for cmb
245
+ $scripts = array( 'jquery', 'jquery-ui-core', 'cmb-datepicker', /*'media-upload', */'cmb-timepicker' );
246
+ // styles required for cmb
247
+ $styles = array();
248
+
249
+ // if we're 3.5 or later, user wp-color-picker
250
+ if ( 3.5 <= $wp_version ) {
251
+ $scripts[] = 'wp-color-picker';
252
+ $styles[] = 'wp-color-picker';
253
+ if ( ! is_admin() ) {
254
+ // we need to register colorpicker on the front-end
255
+ wp_register_script( 'iris', admin_url( 'js/iris.min.js' ), array( 'jquery-ui-draggable', 'jquery-ui-slider', 'jquery-touch-punch' ), self::CMB_VERSION );
256
+ wp_register_script( 'wp-color-picker', admin_url( 'js/color-picker.min.js' ), array( 'iris' ), self::CMB_VERSION );
257
+ wp_localize_script( 'wp-color-picker', 'wpColorPickerL10n', array(
258
+ 'clear' => __( 'Clear', 'theplus' ),
259
+ 'defaultString' => __( 'Default', 'theplus' ),
260
+ 'pick' => __( 'Select Color', 'theplus' ),
261
+ 'current' => __( 'Current Color', 'theplus' ),
262
+ ) );
263
+ }
264
+ } else {
265
+ // otherwise use the older 'farbtastic'
266
+ $scripts[] = 'farbtastic';
267
+ $styles[] = 'farbtastic';
268
+ }
269
+ wp_register_script( 'cmb-datepicker', CMB_META_BOX_URL . 'js/jquery.datePicker.min.js' );
270
+ wp_register_script( 'cmb-timepicker', CMB_META_BOX_URL . 'js/jquery.timePicker.min.js' );
271
+ wp_register_script( 'cmb-scripts', CMB_META_BOX_URL .'js/cmb'. $min .'.js', $scripts, self::CMB_VERSION );
272
+
273
+ wp_enqueue_media();
274
+
275
+ wp_localize_script( 'cmb-scripts', 'cmb_l10', apply_filters( 'cmb_localized_data', array(
276
+ 'ajax_nonce' => wp_create_nonce( 'ajax_nonce' ),
277
+ 'script_debug' => defined('SCRIPT_DEBUG') && SCRIPT_DEBUG,
278
+ 'new_admin_style' => version_compare( $wp_version, '3.7', '>' ),
279
+ 'object_type' => self::get_object_type(),
280
+ 'upload_file' => 'Use this file',
281
+ 'remove_image' => 'Remove Image',
282
+ 'remove_file' => 'Remove',
283
+ 'file' => 'File:',
284
+ 'download' => 'Download',
285
+ 'ajaxurl' => admin_url( '/admin-ajax.php' ),
286
+ 'up_arrow' => '[ ↑ ]&nbsp;',
287
+ 'down_arrow' => '&nbsp;[ ↓ ]',
288
+ 'check_toggle' => __( 'Select / Deselect All', 'cmb' ),
289
+ ) ) );
290
+
291
+ wp_register_style( 'cmb-styles', CMB_META_BOX_URL . 'style'. $min .'.css', $styles );
292
+
293
+ // Ok, we've enqueued our scripts/styles
294
+ self::$is_enqueued = true;
295
+ }
296
+
297
+ /**
298
+ * Enqueues scripts and styles for CMB
299
+ * @since 1.0.0
300
+ */
301
+ public function do_scripts( $hook ) {
302
+ // only enqueue our scripts/styles on the proper pages
303
+ if ( $hook == 'post.php' || $hook == 'post-new.php' || $hook == 'page-new.php' || $hook == 'page.php' ) {
304
+ wp_enqueue_script( 'cmb-scripts' );
305
+
306
+ // default is to show cmb styles on post pages
307
+ if ( $this->_meta_box['cmb_styles'] )
308
+ wp_enqueue_style( 'cmb-styles' );
309
+ }
310
+ }
311
+
312
+ /**
313
+ * Add encoding attribute
314
+ */
315
+ public function add_post_enctype() {
316
+ echo '
317
+ <script >
318
+ jQuery(document).ready(function(){
319
+ jQuery("#'. $this->form_id .'").attr("enctype", "multipart/form-data");
320
+ jQuery("#'. $this->form_id .'").attr("encoding", "multipart/form-data");
321
+ });
322
+ </script>';
323
+ }
324
+
325
+ /**
326
+ * Add metaboxes (to 'post' object type)
327
+ */
328
+ public function add_metaboxes() {
329
+
330
+ foreach ( $this->_meta_box['pages'] as $page ) {
331
+ if ( apply_filters( 'cmb_show_on', true, $this->_meta_box ) )
332
+ add_meta_box( $this->_meta_box['id'], $this->_meta_box['title'], array( $this, 'post_metabox' ), $page, $this->_meta_box['context'], $this->_meta_box['priority']) ;
333
+ }
334
+ }
335
+
336
+ /**
337
+ * Display metaboxes for a post object
338
+ * @since 1.0.0
339
+ */
340
+ public function post_metabox() {
341
+ if ( ! $this->_meta_box )
342
+ return;
343
+
344
+ self::show_form( $this->_meta_box, get_the_ID(), 'post' );
345
+
346
+ }
347
+
348
+ /**
349
+ * Display metaboxes for a user object
350
+ * @since 1.0.0
351
+ */
352
+ public function user_metabox() {
353
+ if ( ! $this->_meta_box )
354
+ return;
355
+
356
+ if ( 'user' != self::set_mb_type( $this->_meta_box ) )
357
+ return;
358
+
359
+ if ( ! apply_filters( 'cmb_show_on', true, $this->_meta_box ) )
360
+ return;
361
+
362
+ wp_enqueue_script( 'cmb-scripts' );
363
+
364
+ // default is to NOT show cmb styles on user profile page
365
+ if ( $this->_meta_box['cmb_styles'] != false )
366
+ wp_enqueue_style( 'cmb-styles' );
367
+
368
+ self::show_form( $this->_meta_box );
369
+
370
+ }
371
+
372
+ /**
373
+ * Loops through and displays fields
374
+ * @since 1.0.0
375
+ * @param array $meta_box Metabox config array
376
+ * @param int $object_id Object ID
377
+ * @param string $object_type Type of object being saved. (e.g., post, user, or comment)
378
+ */
379
+ public static function show_form( $meta_box, $object_id = 0, $object_type = '' ) {
380
+ $meta_box = self::set_mb_defaults( $meta_box );
381
+ // Set/get type
382
+ $object_type = self::set_object_type( $object_type ? $object_type : self::set_mb_type( $meta_box ) );
383
+ // Set/get ID
384
+ $object_id = self::set_object_id( $object_id ? $object_id : self::get_object_id() );
385
+
386
+ // Add nonce only once per page.
387
+ if ( ! self::$nonce_added ) {
388
+ wp_nonce_field( self::nonce(), 'wp_meta_box_nonce', false, true );
389
+ self::$nonce_added = true;
390
+ }
391
+
392
+ // Use nonce for verification
393
+ echo "\n<!-- Begin CMB Fields -->\n";
394
+ do_action( 'cmb_before_table', $meta_box, $object_id, $object_type );
395
+ echo '<table class="form-table cmb_metabox">';
396
+
397
+ foreach ( $meta_box['fields'] as $field_args ) {
398
+
399
+ $field_args['context'] = $meta_box['context'];
400
+
401
+ if ( 'group' == $field_args['type'] ) {
402
+
403
+ if ( ! isset( $field_args['show_names'] ) ) {
404
+ $field_args['show_names'] = $meta_box['show_names'];
405
+ }
406
+ self::render_group( $field_args );
407
+ } else {
408
+
409
+ $field_args['show_names'] = $meta_box['show_names'];
410
+ // Render default fields
411
+ $field = new cmb_Meta_Box_field( $field_args );
412
+ $field->render_field();
413
+ }
414
+ }
415
+ echo '</table>';
416
+ do_action( 'cmb_after_table', $meta_box, $object_id, $object_type );
417
+ echo "\n<!-- End CMB Fields -->\n";
418
+
419
+ }
420
+
421
+ /**
422
+ * Render a repeatable group
423
+ */
424
+ public static function render_group( $args ) {
425
+ if ( ! isset( $args['id'], $args['fields'] ) || ! is_array( $args['fields'] ) )
426
+ return;
427
+
428
+ $args['count'] = 0;
429
+ $field_group = new cmb_Meta_Box_field( $args );
430
+ $desc = $field_group->args( 'description' );
431
+ $label = $field_group->args( 'name' );
432
+ $sortable = $field_group->options( 'sortable' ) ? ' sortable' : '';
433
+ $group_val = (array) $field_group->value();
434
+ $nrows = count( $group_val );
435
+ $remove_disabled = $nrows <= 1 ? 'disabled="disabled" ' : '';
436
+
437
+ echo '<tr><td colspan="2"><table id="', $field_group->id(), '_repeat" class="repeatable-group'. $sortable .'" style="width:100%;">';
438
+ if ( $desc || $label ) {
439
+ echo '<tr><th>';
440
+ if ( $label )
441
+ echo '<h2 class="cmb-group-name">'. $label .'</h2>';
442
+ if ( $desc )
443
+ echo '<p class="cmb_metabox_description">'. $desc .'</p>';
444
+ echo '</th></tr>';
445
+ }
446
+
447
+ if ( ! empty( $group_val ) ) {
448
+
449
+ foreach ( $group_val as $iterator => $field_id ) {
450
+ self::render_group_row( $field_group, $remove_disabled );
451
+ }
452
+ } else {
453
+ self::render_group_row( $field_group, $remove_disabled );
454
+ }
455
+
456
+ echo '<tr><td><p class="add-row"><button data-selector="', $field_group->id() ,'_repeat" data-grouptitle="', $field_group->options( 'group_title' ) ,'" class="add-group-row button">'. $field_group->options( 'add_button' ) .'</button></p></td></tr>';
457
+
458
+ echo '</table></td></tr>';
459
+
460
+ }
461
+
462
+ public static function render_group_row( $field_group, $remove_disabled ) {
463
+
464
+ echo '
465
+ <tr class="repeatable-grouping" data-iterator="'. $field_group->count() .'">
466
+ <td>
467
+ <table class="cmb-nested-table" style="width: 100%;">';
468
+ if ( $field_group->options( 'group_title' ) ) {
469
+ echo '
470
+ <tr class="cmb-group-title">
471
+ <th colspan="2">
472
+ ', sprintf( '<h4>%1$s</h4>', $field_group->replace_hash( $field_group->options( 'group_title' ) ) ), '
473
+ <th>
474
+ </tr>
475
+ ';
476
+ }
477
+ // Render repeatable group fields
478
+ foreach ( array_values( $field_group->args( 'fields' ) ) as $field_args ) {
479
+ $field_args['show_names'] = $field_group->args( 'show_names' );
480
+ $field_args['context'] = $field_group->args( 'context' );
481
+ $field = new cmb_Meta_Box_field( $field_args, $field_group );
482
+ $field->render_field();
483
+ }
484
+ echo '
485
+ <tr>
486
+ <td class="remove-row" colspan="2">
487
+ <button '. $remove_disabled .'data-selector="'. $field_group->id() .'_repeat" class="button remove-group-row alignright">'. $field_group->options( 'remove_button' ) .'</button>
488
+ </td>
489
+ </tr>
490
+ </table>
491
+ </td>
492
+ </tr>
493
+ ';
494
+
495
+ $field_group->args['count']++;
496
+ }
497
+
498
+ /**
499
+ * Save data from metabox
500
+ */
501
+ public function save_post( $post_id, $post = false ) {
502
+
503
+ $post_type = $post ? $post->post_type : get_post_type( $post_id );
504
+
505
+ // check permissions
506
+ if (
507
+ // check nonce
508
+ ! isset( $_POST['wp_meta_box_nonce'] )
509
+ || ! wp_verify_nonce( $_POST['wp_meta_box_nonce'], self::nonce() )
510
+ // check if autosave
511
+ || defined('DOING_AUTOSAVE' ) && DOING_AUTOSAVE
512
+ // check user editing permissions
513
+ || ( 'page' == $_POST['post_type'] && ! current_user_can( 'edit_page', $post_id ) )
514
+ || ! current_user_can( 'edit_post', $post_id )
515
+ // get the metabox post_types & compare it to this post_type
516
+ || ! in_array( $post_type, $this->_meta_box['pages'] )
517
+ )
518
+ return $post_id;
519
+
520
+ self::save_fields( $this->_meta_box, $post_id, 'post' );
521
+ }
522
+
523
+ /**
524
+ * Save data from metabox
525
+ */
526
+ public function save_user( $user_id ) {
527
+
528
+ // check permissions
529
+ // @todo more hardening?
530
+ if (
531
+ // check nonce
532
+ ! isset( $_POST['wp_meta_box_nonce'] )
533
+ || ! wp_verify_nonce( $_POST['wp_meta_box_nonce'], self::nonce() )
534
+ )
535
+ return $user_id;
536
+
537
+ self::save_fields( $this->_meta_box, $user_id, 'user' );
538
+ }
539
+
540
+ /**
541
+ * Loops through and saves field data
542
+ * @since 1.0.0
543
+ * @param array $meta_box Metabox config array
544
+ * @param int $object_id Object ID
545
+ * @param string $object_type Type of object being saved. (e.g., post, user, or comment)
546
+ */
547
+ public static function save_fields( $meta_box, $object_id, $object_type = '' ) {
548
+ $meta_box = self::set_mb_defaults( $meta_box );
549
+
550
+ $meta_box['show_on'] = empty( $meta_box['show_on'] ) ? array( 'key' => false, 'value' => false ) : $meta_box['show_on'];
551
+
552
+ self::set_object_id( $object_id );
553
+ // Set/get type
554
+ $object_type = self::set_object_type( $object_type ? $object_type : self::set_mb_type( $meta_box ) );
555
+
556
+ if ( ! apply_filters( 'cmb_show_on', true, $meta_box ) )
557
+ return;
558
+
559
+ // save field ids of those that are updated
560
+ self::$updated = array();
561
+
562
+ foreach ( $meta_box['fields'] as $field_args ) {
563
+
564
+ if ( 'group' == $field_args['type'] ) {
565
+ self::save_group( $field_args );
566
+ } else {
567
+ // Save default fields
568
+ $field = new cmb_Meta_Box_field( $field_args );
569
+ self::save_field( self::sanitize_field( $field ), $field );
570
+ }
571
+
572
+ }
573
+
574
+ // If options page, save the updated options
575
+ if ( $object_type == 'options-page' )
576
+ self::save_option( $object_id );
577
+
578
+ do_action( "cmb_save_{$object_type}_fields", $object_id, $meta_box['id'], self::$updated, $meta_box );
579
+
580
+ }
581
+
582
+ /**
583
+ * Save a repeatable group
584
+ */
585
+ public static function save_group( $args ) {
586
+ if ( ! isset( $args['id'], $args['fields'], $_POST[ $args['id'] ] ) || ! is_array( $args['fields'] ) )
587
+ return;
588
+
589
+ $field_group = new cmb_Meta_Box_field( $args );
590
+ $base_id = $field_group->id();
591
+ $old = $field_group->get_data();
592
+ $group_vals = $_POST[ $base_id ];
593
+ $saved = array();
594
+ $is_updated = false;
595
+ $field_group->index = 0;
596
+
597
+ // $group_vals[0]['color'] = '333';
598
+ foreach ( array_values( $field_group->fields() ) as $field_args ) {
599
+ $field = new cmb_Meta_Box_field( $field_args, $field_group );
600
+ $sub_id = $field->id( true );
601
+
602
+ foreach ( (array) $group_vals as $field_group->index => $post_vals ) {
603
+
604
+ // Get value
605
+ $new_val = isset( $group_vals[ $field_group->index ][ $sub_id ] )
606
+ ? $group_vals[ $field_group->index ][ $sub_id ]
607
+ : false;
608
+
609
+ // Sanitize
610
+ $new_val = self::sanitize_field( $field, $new_val, $field_group->index );
611
+
612
+ if ( 'file' == $field->type() && is_array( $new_val ) ) {
613
+ // Add image ID to the array stack
614
+ $saved[ $field_group->index ][ $new_val['field_id'] ] = $new_val['attach_id'];
615
+ // Reset var to url string
616
+ $new_val = $new_val['url'];
617
+ }
618
+
619
+ // Get old value
620
+ $old_val = is_array( $old ) && isset( $old[ $field_group->index ][ $sub_id ] )
621
+ ? $old[ $field_group->index ][ $sub_id ]
622
+ : false;
623
+
624
+ $is_updated = ( ! empty( $new_val ) && $new_val != $old_val );
625
+ $is_removed = ( empty( $new_val ) && ! empty( $old_val ) );
626
+ // Compare values and add to `$updated` array
627
+ if ( $is_updated || $is_removed )
628
+ self::$updated[] = $base_id .'::'. $field_group->index .'::'. $sub_id;
629
+
630
+ // Add to `$saved` array
631
+ $saved[ $field_group->index ][ $sub_id ] = $new_val;
632
+
633
+ }
634
+ $saved[ $field_group->index ] = array_filter( $saved[ $field_group->index ] );
635
+ }
636
+ $saved = array_filter( $saved );
637
+
638
+ $field_group->update_data( $saved, true );
639
+ }
640
+
641
+ public static function sanitize_field( $field, $new_value = null ) {
642
+
643
+ $new_value = null !== $new_value
644
+ ? $new_value
645
+ : ( isset( $_POST[ $field->id( true ) ] ) ? $_POST[ $field->id( true ) ] : null );
646
+
647
+ if ( $field->args( 'repeatable' ) && is_array( $new_value ) ) {
648
+ // Remove empties
649
+ $new_value = array_filter( $new_value );
650
+ }
651
+
652
+ // Check if this metabox field has a registered validation callback, or perform default sanitization
653
+ return $field->sanitization_cb( $new_value );
654
+ }
655
+
656
+ public static function save_field( $new_value, $field ) {
657
+ $name = $field->id();
658
+ $old = $field->get_data();
659
+
660
+ // if ( $field->args( 'multiple' ) && ! $field->args( 'repeatable' ) && ! $field->group ) {
661
+ // $field->remove_data();
662
+ // if ( ! empty( $new_value ) ) {
663
+ // foreach ( $new_value as $add_new ) {
664
+ // self::$updated[] = $name;
665
+ // $field->update_data( $add_new, $name, false );
666
+ // }
667
+ // }
668
+ // } else
669
+ if ( ! empty( $new_value ) && $new_value != $old ) {
670
+ self::$updated[] = $name;
671
+ return $field->update_data( $new_value );
672
+ } elseif ( empty( $new_value ) ) {
673
+ if ( ! empty( $old ) )
674
+ self::$updated[] = $name;
675
+ return $field->remove_data();
676
+ }
677
+ }
678
+
679
+ /**
680
+ * Get object id from global space if no id is provided
681
+ * @since 1.0.0
682
+ * @param integer $object_id Object ID
683
+ * @return integer $object_id Object ID
684
+ */
685
+ public static function get_object_id( $object_id = 0 ) {
686
+
687
+ if ( $object_id )
688
+ return $object_id;
689
+
690
+ if ( self::$object_id )
691
+ return self::$object_id;
692
+
693
+ // Try to get our object ID from the global space
694
+ switch ( self::get_object_type() ) {
695
+ case 'user':
696
+ $object_id = isset( $GLOBALS['user_ID'] ) ? $GLOBALS['user_ID'] : $object_id;
697
+ $object_id = isset( $_REQUEST['user_id'] ) ? $_REQUEST['user_id'] : $object_id;
698
+ break;
699
+
700
+ default:
701
+ $object_id = isset( $GLOBALS['post']->ID ) ? $GLOBALS['post']->ID : $object_id;
702
+ $object_id = isset( $_REQUEST['post'] ) ? $_REQUEST['post'] : $object_id;
703
+ break;
704
+ }
705
+
706
+ // reset to id or 0
707
+ self::set_object_id( $object_id ? $object_id : 0 );
708
+
709
+ return self::$object_id;
710
+ }
711
+
712
+ /**
713
+ * Explicitly Set object id
714
+ * @since 1.0.0
715
+ * @param integer $object_id Object ID
716
+ * @return integer $object_id Object ID
717
+ */
718
+ public static function set_object_id( $object_id ) {
719
+ return self::$object_id = $object_id;
720
+ }
721
+
722
+ /**
723
+ * Sets the $object_type based on metabox settings
724
+ * @since 1.0.0
725
+ * @param array|string $meta_box Metabox config array or explicit setting
726
+ * @return string Object type
727
+ */
728
+ public static function set_mb_type( $meta_box ) {
729
+
730
+ if ( is_string( $meta_box ) ) {
731
+ self::$mb_object_type = $meta_box;
732
+ return self::get_mb_type();
733
+ }
734
+
735
+ if ( ! isset( $meta_box['pages'] ) )
736
+ return self::get_mb_type();
737
+
738
+ $type = false;
739
+ // check if 'pages' is a string
740
+ if ( self::is_options_page_mb( $meta_box ) )
741
+ $type = 'options-page';
742
+ // check if 'pages' is a string
743
+ elseif ( is_string( $meta_box['pages'] ) )
744
+ $type = $meta_box['pages'];
745
+ // if it's an array of one, extract it
746
+ elseif ( is_array( $meta_box['pages'] ) && count( $meta_box['pages'] === 1 ) )
747
+ $type = is_string( end( $meta_box['pages'] ) ) ? end( $meta_box['pages'] ) : false;
748
+
749
+ if ( !$type )
750
+ return self::get_mb_type();
751
+
752
+ // Get our object type
753
+ if ( 'user' == $type )
754
+ self::$mb_object_type = 'user';
755
+ elseif ( 'comment' == $type )
756
+ self::$mb_object_type = 'comment';
757
+ elseif ( 'options-page' == $type )
758
+ self::$mb_object_type = 'options-page';
759
+ else
760
+ self::$mb_object_type = 'post';
761
+
762
+ return self::get_mb_type();
763
+ }
764
+
765
+ /**
766
+ * Determines if metabox is for an options page
767
+ * @since 1.0.1
768
+ * @param array $meta_box Metabox config array
769
+ * @return boolean True/False
770
+ */
771
+ public static function is_options_page_mb( $meta_box ) {
772
+ return ( isset( $meta_box['show_on']['key'] ) && 'options-page' === $meta_box['show_on']['key'] );
773
+ }
774
+
775
+ /**
776
+ * Returns the object type
777
+ * @since 1.0.0
778
+ * @return string Object type
779
+ */
780
+ public static function get_object_type() {
781
+ if ( self::$object_type )
782
+ return self::$object_type;
783
+
784
+ global $pagenow;
785
+
786
+ if (
787
+ $pagenow == 'user-edit.php'
788
+ || $pagenow == 'profile.php'
789
+ )
790
+ self::set_object_type( 'user' );
791
+
792
+ elseif (
793
+ $pagenow == 'edit-comments.php'
794
+ || $pagenow == 'comment.php'
795
+ )
796
+ self::set_object_type( 'comment' );
797
+ else
798
+ self::set_object_type( 'post' );
799
+
800
+ return self::$object_type;
801
+ }
802
+
803
+ /**
804
+ * Sets the object type
805
+ * @since 1.0.0
806
+ * @return string Object type
807
+ */
808
+ public static function set_object_type( $object_type ) {
809
+ return self::$object_type = $object_type;
810
+ }
811
+
812
+ /**
813
+ * Returns the object type
814
+ * @since 1.0.0
815
+ * @return string Object type
816
+ */
817
+ public static function get_mb_type() {
818
+ return self::$mb_object_type;
819
+ }
820
+
821
+ /**
822
+ * Returns the nonce value for wp_meta_box_nonce
823
+ * @since 1.0.0
824
+ * @return string Nonce value
825
+ */
826
+ public static function nonce() {
827
+ return basename( __FILE__ );
828
+ }
829
+
830
+ /**
831
+ * Defines the url which is used to load local resources.
832
+ * This may need to be filtered for local Window installations.
833
+ * If resources do not load, please check the wiki for details.
834
+ * @since 1.0.1
835
+ * @return string URL to CMB resources
836
+ */
837
+ public static function get_meta_box_url() {
838
+
839
+ if ( strtoupper( substr( PHP_OS, 0, 3 ) ) === 'WIN' ) {
840
+ // Windows
841
+ $content_dir = str_replace( '/', DIRECTORY_SEPARATOR, WP_CONTENT_DIR );
842
+ $content_url = str_replace( $content_dir, WP_CONTENT_URL, dirname(__FILE__) );
843
+ $cmb_url = str_replace( DIRECTORY_SEPARATOR, '/', $content_url );
844
+
845
+ } else {
846
+ $cmb_url = str_replace(
847
+ array(WP_CONTENT_DIR, WP_PLUGIN_DIR),
848
+ array(WP_CONTENT_URL, WP_PLUGIN_URL),
849
+ dirname( __FILE__ )
850
+ );
851
+ }
852
+
853
+ $cmb_url = set_url_scheme( $cmb_url );
854
+
855
+ return trailingslashit( apply_filters('cmb_meta_box_url', $cmb_url ) );
856
+ }
857
+
858
+ /**
859
+ * Fills in empty metabox parameters with defaults
860
+ * @since 1.0.1
861
+ * @param array $meta_box Metabox config array
862
+ * @return array Modified Metabox config array
863
+ */
864
+ public static function set_mb_defaults( $meta_box ) {
865
+ return wp_parse_args( $meta_box, self::$mb_defaults );
866
+ }
867
+
868
+ /**
869
+ * Removes an option from an option array
870
+ * @since 1.0.1
871
+ * @param string $option_key Option key
872
+ * @param string $field_id Option array field key
873
+ * @return array Modified options
874
+ */
875
+ public static function remove_option( $option_key, $field_id ) {
876
+
877
+ self::$options[ $option_key ] = ! isset( self::$options[ $option_key ] ) || empty( self::$options[ $option_key ] ) ? self::_get_option( $option_key ) : self::$options[ $option_key ];
878
+
879
+ if ( isset( self::$options[ $option_key ][ $field_id ] ) )
880
+ unset( self::$options[ $option_key ][ $field_id ] );
881
+
882
+ return self::$options[ $option_key ];
883
+ }
884
+
885
+ /**
886
+ * Retrieves an option from an option array
887
+ * @since 1.0.1
888
+ * @param string $option_key Option key
889
+ * @param string $field_id Option array field key
890
+ * @return array Options array or specific field
891
+ */
892
+ public static function get_option( $option_key, $field_id = '' ) {
893
+
894
+ self::$options[ $option_key ] = ! isset( self::$options[ $option_key ] ) || empty( self::$options[ $option_key ] ) ? self::_get_option( $option_key ) : self::$options[ $option_key ];
895
+
896
+ if ( $field_id ) {
897
+ return isset( self::$options[ $option_key ][ $field_id ] ) ? self::$options[ $option_key ][ $field_id ] : false;
898
+ }
899
+
900
+ return self::$options[ $option_key ];
901
+ }
902
+
903
+ /**
904
+ * Updates Option data
905
+ * @since 1.0.1
906
+ * @param string $option_key Option key
907
+ * @param string $field_id Option array field key
908
+ * @param mixed $value Value to update data with
909
+ * @param bool $single Whether data should be an array
910
+ * @return array Modified options
911
+ */
912
+ public static function update_option( $option_key, $field_id, $value, $single = true ) {
913
+
914
+ if ( ! $single ) {
915
+ // If multiple, add to array
916
+ self::$options[ $option_key ][ $field_id ][] = $value;
917
+ } else {
918
+ self::$options[ $option_key ][ $field_id ] = $value;
919
+ }
920
+
921
+ return self::$options[ $option_key ];
922
+ }
923
+
924
+ /**
925
+ * Retrieve option value based on name of option.
926
+ * @uses apply_filters() Calls 'cmb_override_option_get_$option_key' hook to allow
927
+ * overwriting the option value to be retrieved.
928
+ *
929
+ * @since 1.0.1
930
+ * @param string $option Name of option to retrieve. Expected to not be SQL-escaped.
931
+ * @param mixed $default Optional. Default value to return if the option does not exist.
932
+ * @return mixed Value set for the option.
933
+ */
934
+ public static function _get_option( $option_key, $default = false ) {
935
+
936
+ $test_get = apply_filters( "cmb_override_option_get_$option_key", 'cmb_no_override_option_get', $default );
937
+
938
+ if ( $test_get !== 'cmb_no_override_option_get' )
939
+ return $test_get;
940
+
941
+ // If no override, get the option
942
+ return get_option( $option_key, $default );
943
+ }
944
+
945
+ /**
946
+ * Saves the option array
947
+ * Needs to be run after finished using remove/update_option
948
+ * @uses apply_filters() Calls 'cmb_override_option_save_$option_key' hook to allow
949
+ * overwriting the option value to be stored.
950
+ *
951
+ * @since 1.0.1
952
+ * @param string $option_key Option key
953
+ * @return boolean Success/Failure
954
+ */
955
+ public static function save_option( $option_key ) {
956
+
957
+ $to_save = self::get_option( $option_key );
958
+
959
+ $test_save = apply_filters( "cmb_override_option_save_$option_key", 'cmb_no_override_option_save', $to_save );
960
+
961
+ if ( $test_save !== 'cmb_no_override_option_save' )
962
+ return $test_save;
963
+
964
+ // If no override, update the option
965
+ return update_option( $option_key, $to_save );
966
+ }
967
+
968
+ /**
969
+ * Utility method that returns a timezone string representing the default timezone for the site.
970
+ *
971
+ * Roughly copied from WordPress, as get_option('timezone_string') will return
972
+ * and empty string if no value has beens set on the options page.
973
+ * A timezone string is required by the wp_timezone_choice() used by the
974
+ * select_timezone field.
975
+ *
976
+ * @since 1.0.0
977
+ * @return string Timezone string
978
+ */
979
+ public static function timezone_string() {
980
+ $current_offset = get_option( 'gmt_offset' );
981
+ $tzstring = get_option( 'timezone_string' );
982
+
983
+ if ( empty( $tzstring ) ) { // Create a UTC+- zone if no timezone string exists
984
+ if ( 0 == $current_offset )
985
+ $tzstring = 'UTC+0';
986
+ elseif ( $current_offset < 0 )
987
+ $tzstring = 'UTC' . $current_offset;
988
+ else
989
+ $tzstring = 'UTC+' . $current_offset;
990
+ }
991
+
992
+ return $tzstring;
993
+ }
994
+
995
+ /**
996
+ * Utility method that returns time string offset by timezone
997
+ * @since 1.0.0
998
+ * @param string $tzstring Time string
999
+ * @return string Offset time string
1000
+ */
1001
+ public static function timezone_offset( $tzstring ) {
1002
+ if ( ! empty( $tzstring ) && is_string( $tzstring ) ) {
1003
+ if ( substr( $tzstring, 0, 3 ) === 'UTC' ) {
1004
+ $tzstring = str_replace( array( ':15',':30',':45' ), array( '.25','.5','.75' ), $tzstring );
1005
+ return intval( floatval( substr( $tzstring, 3 ) ) * HOUR_IN_SECONDS );
1006
+ }
1007
+
1008
+ $date_time_zone_selected = new DateTimeZone( $tzstring );
1009
+ $tz_offset = timezone_offset_get( $date_time_zone_selected, date_create() );
1010
+
1011
+ return $tz_offset;
1012
+ }
1013
+
1014
+ return 0;
1015
+ }
1016
+
1017
+ /**
1018
+ * Utility method that attempts to get an attachment's ID by it's url
1019
+ * @since 1.0.0
1020
+ * @param string $img_url Attachment url
1021
+ * @return mixed Attachment ID or false
1022
+ */
1023
+ public static function image_id_from_url( $img_url ) {
1024
+ global $wpdb;
1025
+
1026
+ $img_url = esc_url_raw( $img_url );
1027
+ // Get just the file name
1028
+ if ( false !== strpos( $img_url, '/' ) ) {
1029
+ $explode = explode( '/', $img_url );
1030
+ $img_url = end( $explode );
1031
+ }
1032
+
1033
+ // And search for a fuzzy match of the file name
1034
+ $attachment = $wpdb->get_col( $wpdb->prepare( "SELECT ID FROM $wpdb->posts WHERE guid LIKE '%%%s%%' LIMIT 1;", $img_url ) );
1035
+
1036
+ // If we found an attachement ID, return it
1037
+ if ( !empty( $attachment ) && is_array( $attachment ) )
1038
+ return $attachment[0];
1039
+
1040
+ // No luck
1041
+ return false;
1042
+ }
1043
+
1044
+ }
1045
+
1046
+ // Handle oembed Ajax
1047
+ add_action( 'wp_ajax_cmb_oembed_handler', array( 'cmb_Meta_Box_ajax', 'oembed_handler' ) );
1048
+ add_action( 'wp_ajax_nopriv_cmb_oembed_handler', array( 'cmb_Meta_Box_ajax', 'oembed_handler' ) );
1049
+
1050
+ /**
1051
+ * A helper function to get an option from a CMB options array
1052
+ * @since 1.0.1
1053
+ * @param string $option_key Option key
1054
+ * @param string $field_id Option array field key
1055
+ * @return array Options array or specific field
1056
+ */
1057
+ function cmb_get_option( $option_key, $field_id = '' ) {
1058
+ return cmb_Meta_Box::get_option( $option_key, $field_id );
1059
+ }
1060
+
1061
+ /**
1062
+ * Get a CMB field object.
1063
+ * @since 1.1.0
1064
+ * @param array $field_args Field arguments
1065
+ * @param int $object_id Object ID
1066
+ * @param string $object_type Type of object being saved. (e.g., post, user, or comment)
1067
+ * @return object cmb_Meta_Box_field object
1068
+ */
1069
+ function cmb_get_field( $field_args, $object_id = 0, $object_type = 'post' ) {
1070
+ // Default to the loop post ID
1071
+ $object_id = $object_id ? $object_id : get_the_ID();
1072
+ cmb_Meta_Box::set_object_id( $object_id );
1073
+ cmb_Meta_Box::set_object_type( $object_type );
1074
+ // Send back field object
1075
+ return new cmb_Meta_Box_field( $field_args );
1076
+ }
1077
+
1078
+ /**
1079
+ * Get a field's value.
1080
+ * @since 1.1.0
1081
+ * @param array $field_args Field arguments
1082
+ * @param int $object_id Object ID
1083
+ * @param string $object_type Type of object being saved. (e.g., post, user, comment, or options-page)
1084
+ * @return mixed Maybe escaped value
1085
+ */
1086
+ function cmb_get_field_value( $field_args, $object_id = 0, $object_type = 'post' ) {
1087
+ $field = cmb_get_field( $field_args, $object_id, $object_type );
1088
+ return $field->escaped_value();
1089
+ }
1090
+
1091
+ /**
1092
+ * Loop and output multiple metaboxes
1093
+ * @since 1.0.0
1094
+ * @param array $meta_boxes Metaboxes config array
1095
+ * @param int $object_id Object ID
1096
+ */
1097
+ function cmb_print_metaboxes( $meta_boxes, $object_id ) {
1098
+ foreach ( (array) $meta_boxes as $meta_box ) {
1099
+ cmb_print_metabox( $meta_box, $object_id );
1100
+ }
1101
+ }
1102
+
1103
+ /**
1104
+ * Output a metabox
1105
+ * @since 1.0.0
1106
+ * @param array $meta_box Metabox config array
1107
+ * @param int $object_id Object ID
1108
+ */
1109
+ function cmb_print_metabox( $meta_box, $object_id ) {
1110
+ $cmb = new cmb_Meta_Box( $meta_box );
1111
+ if ( $cmb ) {
1112
+
1113
+ cmb_Meta_Box::set_object_id( $object_id );
1114
+
1115
+ if ( ! wp_script_is( 'cmb-scripts', 'registered' ) )
1116
+ $cmb->register_scripts();
1117
+
1118
+ wp_enqueue_script( 'cmb-scripts' );
1119
+
1120
+ // default is to show cmb styles
1121
+ if ( $meta_box['cmb_styles'] != false )
1122
+ wp_enqueue_style( 'cmb-styles' );
1123
+
1124
+ cmb_Meta_Box::show_form( $meta_box );
1125
+ }
1126
+
1127
+ }
1128
+
1129
+ /**
1130
+ * Saves a particular metabox's fields
1131
+ * @since 1.0.0
1132
+ * @param array $meta_box Metabox config array
1133
+ * @param int $object_id Object ID
1134
+ */
1135
+ function cmb_save_metabox_fields( $meta_box, $object_id ) {
1136
+ cmb_Meta_Box::save_fields( $meta_box, $object_id );
1137
+ }
1138
+
1139
+ /**
1140
+ * Display a metabox form & save it on submission
1141
+ * @since 1.0.0
1142
+ * @param array $meta_box Metabox config array
1143
+ * @param int $object_id Object ID
1144
+ * @param boolean $return Whether to return or echo form
1145
+ * @return string CMB html form markup
1146
+ */
1147
+ function cmb_metabox_form( $meta_box, $object_id, $echo = true ) {
1148
+
1149
+ $meta_box = cmb_Meta_Box::set_mb_defaults( $meta_box );
1150
+
1151
+ // Make sure form should be shown
1152
+ if ( ! apply_filters( 'cmb_show_on', true, $meta_box ) )
1153
+ return '';
1154
+
1155
+ // Make sure that our object type is explicitly set by the metabox config
1156
+ cmb_Meta_Box::set_object_type( cmb_Meta_Box::set_mb_type( $meta_box ) );
1157
+
1158
+ // Save the metabox if it's been submitted
1159
+ // check permissions
1160
+ // @todo more hardening?
1161
+ if (
1162
+ // check nonce
1163
+ isset( $_POST['submit-cmb'], $_POST['object_id'], $_POST['wp_meta_box_nonce'] )
1164
+ && wp_verify_nonce( $_POST['wp_meta_box_nonce'], cmb_Meta_Box::nonce() )
1165
+ && $_POST['object_id'] == $object_id
1166
+ )
1167
+ cmb_save_metabox_fields( $meta_box, $object_id );
1168
+
1169
+ // Show specific metabox form
1170
+
1171
+ // Get cmb form
1172
+ ob_start();
1173
+ cmb_print_metabox( $meta_box, $object_id );
1174
+ $form = ob_get_contents();
1175
+ ob_end_clean();
1176
+
1177
+ $form_format = apply_filters( 'cmb_frontend_form_format', '<form class="cmb-form" method="post" id="%s" enctype="multipart/form-data" encoding="multipart/form-data"><input type="hidden" name="object_id" value="%s">%s<input type="submit" name="submit-cmb" value="%s" class="button-primary"></form>', $object_id, $meta_box, $form );
1178
+
1179
+ $form = sprintf( $form_format, $meta_box['id'], $object_id, $form, __( 'Save' ) );
1180
+
1181
+ if ( $echo )
1182
+ echo $form;
1183
+
1184
+ return $form;
1185
+ }
1186
+
1187
+ // End. That's it, folks! //
includes/plus-options/metabox/js/cmb.js ADDED
@@ -0,0 +1,797 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /**
2
+ * Controls the behaviours of custom metabox fields.
3
+ *
4
+ * @author Andrew Norcross
5
+ * @author Jared Atchison
6
+ * @author Bill Erickson
7
+ * @author Justin Sternberg
8
+ * @see https://github.com/webdevstudios/Custom-Metaboxes-and-Fields-for-WordPress
9
+ */
10
+
11
+ /**
12
+ * Custom jQuery for Custom Metaboxes and Fields
13
+ */
14
+ window.CMB = (function(window, document, $, undefined){
15
+ 'use strict';
16
+
17
+ // localization strings
18
+ var l10n = window.cmb_l10;
19
+ var setTimeout = window.setTimeout;
20
+
21
+ // CMB functionality object
22
+ var cmb = {
23
+ formfield : '',
24
+ idNumber : false,
25
+ file_frames : {},
26
+ repeatEls : 'input:not([type="button"]),select,textarea,.cmb_media_status'
27
+ };
28
+
29
+ cmb.metabox = function() {
30
+ if ( cmb.$metabox ) {
31
+ return cmb.$metabox;
32
+ }
33
+ cmb.$metabox = $('table.cmb_metabox');
34
+ return cmb.$metabox;
35
+ };
36
+
37
+ cmb.init = function() {
38
+
39
+ var $metabox = cmb.metabox();
40
+ var $repeatGroup = $metabox.find('.repeatable-group');
41
+
42
+ // hide our spinner gif if we're on a MP6 dashboard
43
+ if ( l10n.new_admin_style ) {
44
+ $metabox.find('.cmb-spinner img').hide();
45
+ }
46
+
47
+ /**
48
+ * Initialize time/date/color pickers
49
+ */
50
+ cmb.initPickers( $metabox.find('input:text.cmb_timepicker'), $metabox.find('input:text.cmb_datepicker'), $metabox.find('input:text.cmb_colorpicker') );
51
+
52
+ // Wrap date picker in class to narrow the scope of jQuery UI CSS and prevent conflicts
53
+ $("#ui-datepicker-div").wrap('<div class="cmb_element" />');
54
+
55
+ // Insert toggle button into DOM wherever there is multicheck. credit: Genesis Framework
56
+ $( '<p><span class="button cmb-multicheck-toggle">' + l10n.check_toggle + '</span></p>' ).insertBefore( 'ul.cmb_checkbox_list' );
57
+
58
+ $metabox
59
+ .on( 'change', '.cmb_upload_file', function() {
60
+ cmb.formfield = $(this).attr('id');
61
+ $('#' + cmb.formfield + '_id').val('');
62
+ })
63
+ // Media/file management
64
+ .on( 'click', '.cmb-multicheck-toggle', cmb.toggleCheckBoxes )
65
+ .on( 'click', '.cmb_upload_button', cmb.handleMedia )
66
+ .on( 'click', '.cmb_remove_file_button', cmb.handleRemoveMedia )
67
+ // Repeatable content
68
+ .on( 'click', '.add-group-row', cmb.addGroupRow )
69
+ .on( 'click', '.add-row-button', cmb.addAjaxRow )
70
+ .on( 'click', '.remove-group-row', cmb.removeGroupRow )
71
+ .on( 'click', '.remove-row-button', cmb.removeAjaxRow )
72
+ // Ajax oEmbed display
73
+ .on( 'keyup paste focusout', '.cmb_oembed', cmb.maybeOembed )
74
+ // Reset titles when removing a row
75
+ .on( 'cmb_remove_row', '.repeatable-group', cmb.resetTitlesAndIterator );
76
+
77
+ if ( $repeatGroup.length ) {
78
+ $repeatGroup
79
+ .filter('.sortable').each( function() {
80
+ // Add sorting arrows
81
+ $(this).find( '.remove-group-row' ).before( '<a class="shift-rows move-up alignleft" href="#">'+ l10n.up_arrow +'</a> <a class="shift-rows move-down alignleft" href="#">'+ l10n.down_arrow +'</a>' );
82
+ })
83
+ .on( 'click', '.shift-rows', cmb.shiftRows )
84
+ .on( 'cmb_add_row', cmb.emptyValue );
85
+ }
86
+
87
+ // on pageload
88
+ setTimeout( cmb.resizeoEmbeds, 500);
89
+ // and on window resize
90
+ $(window).on( 'resize', cmb.resizeoEmbeds );
91
+
92
+ };
93
+
94
+ cmb.resetTitlesAndIterator = function() {
95
+ // Loop repeatable group tables
96
+ $( '.repeatable-group' ).each( function() {
97
+ var $table = $(this);
98
+ // Loop repeatable group table rows
99
+ $table.find( '.repeatable-grouping' ).each( function( rowindex ) {
100
+ var $row = $(this);
101
+ // Reset rows iterator
102
+ $row.data( 'iterator', rowindex );
103
+ // Reset rows title
104
+ $row.find( '.cmb-group-title h4' ).text( $table.find( '.add-group-row' ).data( 'grouptitle' ).replace( '{#}', ( rowindex + 1 ) ) );
105
+ });
106
+ });
107
+ };
108
+
109
+ cmb.toggleCheckBoxes = function( event ) {
110
+ event.preventDefault();
111
+ var $self = $(this);
112
+ var $multicheck = $self.parents( 'td' ).find( 'input[type=checkbox]' );
113
+
114
+ // If the button has already been clicked once...
115
+ if ( $self.data( 'checked' ) ) {
116
+ // clear the checkboxes and remove the flag
117
+ $multicheck.prop( 'checked', false );
118
+ $self.data( 'checked', false );
119
+ }
120
+ // Otherwise mark the checkboxes and add a flag
121
+ else {
122
+ $multicheck.prop( 'checked', true );
123
+ $self.data( 'checked', true );
124
+ }
125
+ };
126
+
127
+ cmb.handleMedia = function(event) {
128
+
129
+ if ( ! wp ) {
130
+ return;
131
+ }
132
+
133
+ event.preventDefault();
134
+
135
+ var $metabox = cmb.metabox();
136
+ var $self = $(this);
137
+ cmb.formfield = $self.prev('input').attr('id');
138
+ var $formfield = $('#'+cmb.formfield);
139
+ var formName = $formfield.attr('name');
140
+ var uploadStatus = true;
141
+ var attachment = true;
142
+ var isList = $self.hasClass( 'cmb_upload_list' );
143
+
144
+ // If this field's media frame already exists, reopen it.
145
+ if ( cmb.formfield in cmb.file_frames ) {
146
+ cmb.file_frames[cmb.formfield].open();
147
+ return;
148
+ }
149
+
150
+ // Create the media frame.
151
+ cmb.file_frames[cmb.formfield] = wp.media.frames.file_frame = wp.media({
152
+ title: $metabox.find('label[for=' + cmb.formfield + ']').text(),
153
+ button: {
154
+ text: l10n.upload_file
155
+ },
156
+ multiple: isList ? true : false
157
+ });
158
+
159
+ var handlers = {
160
+ list : function( selection ) {
161
+ // Get all of our selected files
162
+ attachment = selection.toJSON();
163
+
164
+ $formfield.val(attachment.url);
165
+ $('#'+ cmb.formfield +'_id').val(attachment.id);
166
+
167
+ // Setup our fileGroup array
168
+ var fileGroup = [];
169
+
170
+ // Loop through each attachment
171
+ $( attachment ).each( function() {
172
+ if ( this.type && this.type === 'image' ) {
173
+ // image preview
174
+ uploadStatus = '<li class="img_status">'+
175
+ '<img width="50" height="50" src="' + this.url + '" class="attachment-50x50" alt="'+ this.filename +'">'+
176
+ '<p><a href="#" class="cmb_remove_file_button" rel="'+ cmb.formfield +'['+ this.id +']">'+ l10n.remove_image +'</a></p>'+
177
+ '<input type="hidden" id="filelist-'+ this.id +'" name="'+ formName +'['+ this.id +']" value="' + this.url + '">'+
178
+ '</li>';
179
+
180
+ } else {
181
+ // Standard generic output if it's not an image.
182
+ uploadStatus = '<li>'+ l10n.file +' <strong>'+ this.filename +'</strong>&nbsp;&nbsp;&nbsp; (<a href="' + this.url + '" target="_blank" rel="external">'+ l10n.download +'</a> / <a href="#" class="cmb_remove_file_button" rel="'+ cmb.formfield +'['+ this.id +']">'+ l10n.remove_file +'</a>)'+
183
+ '<input type="hidden" id="filelist-'+ this.id +'" name="'+ formName +'['+ this.id +']" value="' + this.url + '">'+
184
+ '</li>';
185
+
186
+ }
187
+
188
+ // Add our file to our fileGroup array
189
+ fileGroup.push( uploadStatus );
190
+ });
191
+
192
+ // Append each item from our fileGroup array to .cmb_media_status
193
+ $( fileGroup ).each( function() {
194
+ $formfield.siblings('.cmb_media_status').slideDown().append(this);
195
+ });
196
+ },
197
+ single : function( selection ) {
198
+ // Only get one file from the uploader
199
+ attachment = selection.first().toJSON();
200
+
201
+ $formfield.val(attachment.url);
202
+ $('#'+ cmb.formfield +'_id').val(attachment.id);
203
+
204
+ if ( attachment.type && attachment.type === 'image' ) {
205
+ // image preview
206
+ uploadStatus = '<div class="img_status"><img style="max-width: 350px; width: 100%; height: auto;" src="' + attachment.url + '" alt="'+ attachment.filename +'" title="'+ attachment.filename +'" /><p><a href="#" class="cmb_remove_file_button" rel="' + cmb.formfield + '">'+ l10n.remove_image +'</a></p></div>';
207
+ } else {
208
+ // Standard generic output if it's not an image.
209
+ uploadStatus = l10n.file +' <strong>'+ attachment.filename +'</strong>&nbsp;&nbsp;&nbsp; (<a href="'+ attachment.url +'" target="_blank" rel="external">'+ l10n.download +'</a> / <a href="#" class="cmb_remove_file_button" rel="'+ cmb.formfield +'">'+ l10n.remove_file +'</a>)';
210
+ }
211
+
212
+ // add/display our output
213
+ $formfield.siblings('.cmb_media_status').slideDown().html(uploadStatus);
214
+ }
215
+ };
216
+
217
+ // When an file is selected, run a callback.
218
+ cmb.file_frames[cmb.formfield].on( 'select', function() {
219
+ var selection = cmb.file_frames[cmb.formfield].state().get('selection');
220
+ var type = isList ? 'list' : 'single';
221
+ handlers[type]( selection );
222
+ });
223
+
224
+ // Finally, open the modal
225
+ cmb.file_frames[cmb.formfield].open();
226
+ };
227
+
228
+ cmb.handleRemoveMedia = function( event ) {
229
+ event.preventDefault();
230
+ var $self = $(this);
231
+ if ( $self.is( '.attach_list .cmb_remove_file_button' ) ){
232
+ $self.parents('li').remove();
233
+ return false;
234
+ }
235
+ cmb.formfield = $self.attr('rel');
236
+ var $container = $self.parents('.img_status');
237
+
238
+ cmb.metabox().find('input#' + cmb.formfield).val('');
239
+ cmb.metabox().find('input#' + cmb.formfield + '_id').val('');
240
+ if ( ! $container.length ) {
241
+ $self.parents('.cmb_media_status').html('');
242
+ } else {
243
+ $container.html('');
244
+ }
245
+ return false;
246
+ };
247
+
248
+ // src: http://www.benalman.com/projects/jquery-replacetext-plugin/
249
+ $.fn.replaceText = function(b, a, c) {
250
+ return this.each(function() {
251
+ var f = this.firstChild, g, e, d = [];
252
+ if (f) {
253
+ do {
254
+ if (f.nodeType === 3) {
255
+ g = f.nodeValue;
256
+ e = g.replace(b, a);
257
+ if (e !== g) {
258
+ if (!c && /</.test(e)) {
259
+ $(f).before(e);
260
+ d.push(f);
261
+ } else {
262
+ f.nodeValue = e;
263
+ }
264
+ }
265
+ }
266
+ } while (f = f.nextSibling);
267
+ }
268
+ if ( d.length ) { $(d).remove(); }
269
+ });
270
+ };
271
+
272
+ $.fn.cleanRow = function( prevNum, group ) {
273
+ var $self = $(this);
274
+ var $inputs = $self.find('input:not([type="button"]), select, textarea, label');
275
+ if ( group ) {
276
+ // Remove extra ajaxed rows
277
+ $self.find('.cmb-repeat-table .repeat-row:not(:first-child)').remove();
278
+ }
279
+ cmb.$focus = false;
280
+ cmb.neweditor_id = [];
281
+
282
+ $inputs.filter(':checked').removeAttr( 'checked' );
283
+ $inputs.filter(':selected').removeAttr( 'selected' );
284
+
285
+ if ( $self.find('.cmb-group-title') ) {
286
+ $self.find( '.cmb-group-title h4' ).text( $self.data( 'title' ).replace( '{#}', ( cmb.idNumber + 1 ) ) );
287
+ }
288
+
289
+ $inputs.each( function(){
290
+ var $newInput = $(this);
291
+ var isEditor = $newInput.hasClass( 'wp-editor-area' );
292
+ var oldFor = $newInput.attr( 'for' );
293
+ // var $next = $newInput.next();
294
+ var attrs = {};
295
+ var newID, oldID;
296
+ if ( oldFor ) {
297
+ attrs = { 'for' : oldFor.replace( '_'+ prevNum, '_'+ cmb.idNumber ) };
298
+ } else {
299
+ var oldName = $newInput.attr( 'name' );
300
+ // Replace 'name' attribute key
301
+ var newName = oldName ? oldName.replace( '['+ prevNum +']', '['+ cmb.idNumber +']' ) : '';
302
+ oldID = $newInput.attr( 'id' );
303
+ newID = oldID ? oldID.replace( '_'+ prevNum, '_'+ cmb.idNumber ) : '';
304
+ attrs = {
305
+ id: newID,
306
+ name: newName,
307
+ // value: '',
308
+ 'data-iterator': cmb.idNumber,
309
+ };
310
+ }
311
+
312
+ $newInput
313
+ .removeClass( 'hasDatepicker' )
314
+ .attr( attrs ).val('');
315
+
316
+ // wysiwyg field
317
+ if ( isEditor ) {
318
+ // Get new wysiwyg ID
319
+ newID = newID ? oldID.replace( 'zx'+ prevNum, 'zx'+ cmb.idNumber ) : '';
320
+ // Empty the contents
321
+ $newInput.html('');
322
+ // Get wysiwyg field
323
+ var $wysiwyg = $newInput.parents( '.cmb-type-wysiwyg' );
324
+ // Remove extra mce divs
325
+ $wysiwyg.find('.mce-tinymce:not(:first-child)').remove();
326
+ // Replace id instances
327
+ var html = $wysiwyg.html().replace( new RegExp( oldID, 'g' ), newID );
328
+ // Update field html
329
+ $wysiwyg.html( html );
330
+ // Save ids for later to re-init tinymce
331
+ cmb.neweditor_id.push( { 'id': newID, 'old': oldID } );
332
+ }
333
+
334
+ cmb.$focus = cmb.$focus ? cmb.$focus : $newInput;
335
+ });
336
+
337
+ return this;
338
+ };
339
+
340
+ $.fn.newRowHousekeeping = function() {
341
+ var $row = $(this);
342
+ var $colorPicker = $row.find( '.wp-picker-container' );
343
+ var $list = $row.find( '.cmb_media_status' );
344
+
345
+ if ( $colorPicker.length ) {
346
+ // Need to clean-up colorpicker before appending
347
+ $colorPicker.each( function() {
348
+ var $td = $(this).parent();
349
+ $td.html( $td.find( 'input:text.cmb_colorpicker' ).attr('style', '') );
350
+ });
351
+ }
352
+
353
+ // Need to clean-up colorpicker before appending
354
+ if ( $list.length ) {
355
+ $list.empty();
356
+ }
357
+
358
+ return this;
359
+ };
360
+
361
+ cmb.afterRowInsert = function( $row ) {
362
+ if ( cmb.$focus ) {
363
+ cmb.$focus.focus();
364
+ }
365
+
366
+ var _prop;
367
+
368
+ // Need to re-init wp_editor instances
369
+ if ( cmb.neweditor_id.length ) {
370
+ var i;
371
+ for ( i = cmb.neweditor_id.length - 1; i >= 0; i-- ) {
372
+ var id = cmb.neweditor_id[i].id;
373
+ var old = cmb.neweditor_id[i].old;
374
+
375
+ if ( typeof( tinyMCEPreInit.mceInit[ id ] ) === 'undefined' ) {
376
+ var newSettings = jQuery.extend( {}, tinyMCEPreInit.mceInit[ old ] );
377
+
378
+ for ( _prop in newSettings ) {
379
+ if ( 'string' === typeof( newSettings[_prop] ) ) {
380
+ newSettings[_prop] = newSettings[_prop].replace( new RegExp( old, 'g' ), id );
381
+ }
382
+ }
383
+ tinyMCEPreInit.mceInit[ id ] = newSettings;
384
+ }
385
+ if ( typeof( tinyMCEPreInit.qtInit[ id ] ) === 'undefined' ) {
386
+ var newQTS = jQuery.extend( {}, tinyMCEPreInit.qtInit[ old ] );
387
+ for ( _prop in newQTS ) {
388
+ if ( 'string' === typeof( newQTS[_prop] ) ) {
389
+ newQTS[_prop] = newQTS[_prop].replace( new RegExp( old, 'g' ), id );
390
+ }
391
+ }
392
+ tinyMCEPreInit.qtInit[ id ] = newQTS;
393
+ }
394
+ tinyMCE.init({
395
+ id : tinyMCEPreInit.mceInit[ id ],
396
+ });
397
+
398
+ }
399
+ }
400
+
401
+ // Init pickers from new row
402
+ cmb.initPickers( $row.find('input:text.cmb_timepicker'), $row.find('input:text.cmb_datepicker'), $row.find('input:text.cmb_colorpicker') );
403
+ };
404
+
405
+ cmb.updateNameAttr = function () {
406
+
407
+ var $this = $(this);
408
+ var name = $this.attr( 'name' ); // get current name
409
+
410
+ // No name? bail
411
+ if ( typeof name === 'undefined' ) {
412
+ return false;
413
+ }
414
+
415
+ var prevNum = parseInt( $this.parents( '.repeatable-grouping' ).data( 'iterator' ) );
416
+ var newNum = prevNum - 1; // Subtract 1 to get new iterator number
417
+
418
+ // Update field name attributes so data is not orphaned when a row is removed and post is saved
419
+ var $newName = name.replace( '[' + prevNum + ']', '[' + newNum + ']' );
420
+
421
+ // New name with replaced iterator
422
+ $this.attr( 'name', $newName );
423
+
424
+ };
425
+
426
+ cmb.emptyValue = function( event, row ) {
427
+ $('input:not([type="button"]), textarea', row).val('');
428
+ };
429
+
430
+ cmb.addGroupRow = function( event ) {
431
+
432
+ event.preventDefault();
433
+
434
+ var $self = $(this);
435
+ var $table = $('#'+ $self.data('selector'));
436
+ var $oldRow = $table.find('.repeatable-grouping').last();
437
+ var prevNum = parseInt( $oldRow.data('iterator') );
438
+ cmb.idNumber = prevNum + 1;
439
+ var $row = $oldRow.clone();
440
+
441
+ $row.data( 'title', $self.data( 'grouptitle' ) ).newRowHousekeeping().cleanRow( prevNum, true );
442
+
443
+ // console.log( '$row.html()', $row.html() );
444
+ var $newRow = $( '<tr class="repeatable-grouping" data-iterator="'+ cmb.idNumber +'">'+ $row.html() +'</tr>' );
445
+ $oldRow.after( $newRow );
446
+ // console.log( '$newRow.html()', $row.html() );
447
+
448
+ cmb.afterRowInsert( $newRow );
449
+
450
+ if ( $table.find('.repeatable-grouping').length <= 1 ) {
451
+ $table.find('.remove-group-row').prop('disabled', true);
452
+ } else {
453
+ $table.find('.remove-group-row').removeAttr( 'disabled' );
454
+ }
455
+
456
+ $table.trigger( 'cmb_add_row', $newRow );
457
+ };
458
+
459
+ cmb.addAjaxRow = function( event ) {
460
+
461
+ event.preventDefault();
462
+
463
+ var $self = $(this);
464
+ var tableselector = '#'+ $self.data('selector');
465
+ var $table = $(tableselector);
466
+ var $emptyrow = $table.find('.empty-row');
467
+ var prevNum = parseInt( $emptyrow.find('[data-iterator]').data('iterator') );
468
+ cmb.idNumber = prevNum + 1;
469
+ var $row = $emptyrow.clone();
470
+
471
+ $row.newRowHousekeeping().cleanRow( prevNum );
472
+
473
+ $emptyrow.removeClass('empty-row').addClass('repeat-row');
474
+ $emptyrow.after( $row );
475
+
476
+ cmb.afterRowInsert( $row );
477
+ $table.trigger( 'cmb_add_row', $row );
478
+ };
479
+
480
+ cmb.removeGroupRow = function( event ) {
481
+ event.preventDefault();
482
+ var $self = $(this);
483
+ var $table = $('#'+ $self.data('selector'));
484
+ var $parent = $self.parents('.repeatable-grouping');
485
+ var noRows = $table.find('.repeatable-grouping').length;
486
+
487
+ // when a group is removed loop through all next groups and update fields names
488
+ $parent.nextAll( '.repeatable-grouping' ).find( cmb.repeatEls ).each( cmb.updateNameAttr );
489
+
490
+ if ( noRows > 1 ) {
491
+ $parent.remove();
492
+ if ( noRows < 3 ) {
493
+ $table.find('.remove-group-row').prop('disabled', true);
494
+ } else {
495
+ $table.find('.remove-group-row').prop('disabled', false);
496
+ }
497
+ $table.trigger( 'cmb_remove_row' );
498
+ }
499
+ };
500
+
501
+ cmb.removeAjaxRow = function( event ) {
502
+ event.preventDefault();
503
+ var $self = $(this);
504
+ var $parent = $self.parents('tr');
505
+ var $table = $self.parents('.cmb-repeat-table');
506
+
507
+ // cmb.log( 'number of tbodys', $table.length );
508
+ // cmb.log( 'number of trs', $('tr', $table).length );
509
+ if ( $table.find('tr').length > 1 ) {
510
+ if ( $parent.hasClass('empty-row') ) {
511
+ $parent.prev().addClass( 'empty-row' ).removeClass('repeat-row');
512
+ }
513
+ $self.parents('.cmb-repeat-table tr').remove();
514
+ $table.trigger( 'cmb_remove_row' );
515
+ }
516
+ };
517
+
518
+ cmb.shiftRows = function( event ) {
519
+
520
+ event.preventDefault();
521
+
522
+ var $self = $(this);
523
+ var $parent = $self.parents( '.repeatable-grouping' );
524
+ var $goto = $self.hasClass( 'move-up' ) ? $parent.prev( '.repeatable-grouping' ) : $parent.next( '.repeatable-grouping' );
525
+
526
+ if ( ! $goto.length ) {
527
+ return;
528
+ }
529
+
530
+ var inputVals = [];
531
+ // Loop this items fields
532
+ $parent.find( cmb.repeatEls ).each( function() {
533
+ var $element = $(this);
534
+ var val;
535
+ if ( $element.hasClass('cmb_media_status') ) {
536
+ // special case for image previews
537
+ val = $element.html();
538
+ } else if ( 'checkbox' === $element.attr('type') ) {
539
+ val = $element.is(':checked');
540
+ cmb.log( 'checked', val );
541
+ } else if ( 'select' === $element.prop('tagName') ) {
542
+ val = $element.is(':selected');
543
+ cmb.log( 'checked', val );
544
+ } else {
545
+ val = $element.val();
546
+ }
547
+ // Get all the current values per element
548
+ inputVals.push( { val: val, $: $element } );
549
+ });
550
+ // And swap them all
551
+ $goto.find( cmb.repeatEls ).each( function( index ) {
552
+ var $element = $(this);
553
+ var val;
554
+
555
+ if ( $element.hasClass('cmb_media_status') ) {
556
+ // special case for image previews
557
+ val = $element.html();
558
+ $element.html( inputVals[ index ]['val'] );
559
+ inputVals[ index ]['$'].html( val );
560
+
561
+ }
562
+ // handle checkbox swapping
563
+ else if ( 'checkbox' === $element.attr('type') ) {
564
+ inputVals[ index ]['$'].prop( 'checked', $element.is(':checked') );
565
+ $element.prop( 'checked', inputVals[ index ]['val'] );
566
+ }
567
+ // handle select swapping
568
+ else if ( 'select' === $element.prop('tagName') ) {
569
+ inputVals[ index ]['$'].prop( 'selected', $element.is(':selected') );
570
+ $element.prop( 'selected', inputVals[ index ]['val'] );
571
+ }
572
+ // handle normal input swapping
573
+ else {
574
+ inputVals[ index ]['$'].val( $element.val() );
575
+ $element.val( inputVals[ index ]['val'] );
576
+ }
577
+ });
578
+ };
579
+
580
+ /**
581
+ * @todo make work, always
582
+ */
583
+ cmb.initPickers = function( $timePickers, $datePickers, $colorPickers ) {
584
+ // Initialize timepicker
585
+ cmb.initTimePickers( $timePickers );
586
+
587
+ // Initialize jQuery UI datepicker
588
+ cmb.initDatePickers( $datePickers );
589
+
590
+ // Initialize color picker
591
+ cmb.initColorPickers( $colorPickers );
592
+ };
593
+
594
+ cmb.initTimePickers = function( $selector ) {
595
+ if ( ! $selector.length ) {
596
+ return;
597
+ }
598
+
599
+ $selector.timePicker({
600
+ startTime: "00:00",
601
+ endTime: "23:59",
602
+ show24Hours: false,
603
+ separator: ':',
604
+ step: 30
605
+ });
606
+ };
607
+
608
+ cmb.initDatePickers = function( $selector ) {
609
+ if ( ! $selector.length ) {
610
+ return;
611
+ }
612
+
613
+ $selector.datepicker( "destroy" );
614
+ $selector.datepicker();
615
+ };
616
+
617
+ cmb.initColorPickers = function( $selector ) {
618
+ if ( ! $selector.length ) {
619
+ return;
620
+ }
621
+ if (typeof jQuery.wp === 'object' && typeof jQuery.wp.wpColorPicker === 'function') {
622
+
623
+ $selector.wpColorPicker();
624
+
625
+ } else {
626
+ $selector.each( function(i) {
627
+ $(this).after('<div id="picker-' + i + '" style="z-index: 1000; background: #EEE; border: 1px solid #CCC; position: absolute; display: block;"></div>');
628
+ $('#picker-' + i).hide().farbtastic($(this));
629
+ })
630
+ .focus( function() {
631
+ $(this).next().show();
632
+ })
633
+ .blur( function() {
634
+ $(this).next().hide();
635
+ });
636
+ }
637
+ };
638
+
639
+ cmb.maybeOembed = function( evt ) {
640
+ var $self = $(this);
641
+ var type = evt.type;
642
+
643
+ var m = {
644
+ focusout : function() {
645
+ setTimeout( function() {
646
+ // if it's been 2 seconds, hide our spinner
647
+ cmb.spinner( '.postbox table.cmb_metabox', true );
648
+ }, 2000);
649
+ },
650
+ keyup : function() {
651
+ var betw = function( min, max ) {
652
+ return ( evt.which <= max && evt.which >= min );
653
+ };
654
+ // Only Ajax on normal keystrokes
655
+ if ( betw( 48, 90 ) || betw( 96, 111 ) || betw( 8, 9 ) || evt.which === 187 || evt.which === 190 ) {
656
+ // fire our ajax function
657
+ cmb.doAjax( $self, evt);
658
+ }
659
+ },
660
+ paste : function() {
661
+ // paste event is fired before the value is filled, so wait a bit
662
+ setTimeout( function() { cmb.doAjax( $self ); }, 100);
663
+ }
664
+ };
665
+ m[type]();
666
+
667
+ };
668
+
669
+ /**
670
+ * Resize oEmbed videos to fit in their respective metaboxes
671
+ */
672
+ cmb.resizeoEmbeds = function() {
673
+ cmb.metabox().each( function() {
674
+ var $self = $(this);
675
+ var $tableWrap = $self.parents('.inside');
676
+ if ( ! $tableWrap.length ) {
677
+ return true; // continue
678
+ }
679
+
680
+ // Calculate new width
681
+ var newWidth = Math.round(($tableWrap.width() * 0.82)*0.97) - 30;
682
+ if ( newWidth > 639 ) {
683
+ return true; // continue
684
+ }
685
+
686
+ var $embeds = $self.find('.cmb-type-oembed .embed_status');
687
+ var $children = $embeds.children().not('.cmb_remove_wrapper');
688
+ if ( ! $children.length ) {
689
+ return true; // continue
690
+ }
691
+
692
+ $children.each( function() {
693
+ var $self = $(this);
694
+ var iwidth = $self.width();
695
+ var iheight = $self.height();
696
+ var _newWidth = newWidth;
697
+ if ( $self.parents( '.repeat-row' ).length ) {
698
+ // Make room for our repeatable "remove" button column
699
+ _newWidth = newWidth - 91;
700
+ }
701
+ // Calc new height
702
+ var newHeight = Math.round((_newWidth * iheight)/iwidth);
703
+ $self.width(_newWidth).height(newHeight);
704
+ });
705
+
706
+ });
707
+ };
708
+
709
+ /**
710
+ * Safely log things if query var is set
711
+ * @since 1.0.0
712
+ */
713
+ cmb.log = function() {
714
+ if ( l10n.script_debug && console && typeof console.log === 'function' ) {
715
+ console.log.apply(console, arguments);
716
+ }
717
+ };
718
+
719
+ cmb.spinner = function( $context, hide ) {
720
+ if ( hide ) {
721
+ $('.cmb-spinner', $context ).hide();
722
+ }
723
+ else {
724
+ $('.cmb-spinner', $context ).show();
725
+ }
726
+ };
727
+
728
+ // function for running our ajax
729
+ cmb.doAjax = function($obj) {
730
+ // get typed value
731
+ var oembed_url = $obj.val();
732
+ // only proceed if the field contains more than 6 characters
733
+ if ( oembed_url.length < 6 ) {
734
+ return;
735
+ }
736
+
737
+ // only proceed if the user has pasted, pressed a number, letter, or whitelisted characters
738
+
739
+ // get field id
740
+ var field_id = $obj.attr('id');
741
+ // get our inputs $context for pinpointing
742
+ var $context = $obj.parents('.cmb-repeat-table tr td');
743
+ $context = $context.length ? $context : $obj.parents('.cmb_metabox tr td');
744
+
745
+ var embed_container = $('.embed_status', $context);
746
+ var oembed_width = $obj.width();
747
+ var child_el = $(':first-child', embed_container);
748
+
749
+ // http://www.youtube.com/watch?v=dGG7aru2S6U
750
+ cmb.log( 'oembed_url', oembed_url, field_id );
751
+ oembed_width = ( embed_container.length && child_el.length ) ? child_el.width() : $obj.width();
752
+
753
+ // show our spinner
754
+ cmb.spinner( $context );
755
+ // clear out previous results
756
+ $('.embed_wrap', $context).html('');
757
+ // and run our ajax function
758
+ setTimeout( function() {
759
+ // if they haven't typed in 500 ms
760
+ if ( $('.cmb_oembed:focus').val() !== oembed_url ) {
761
+ return;
762
+ }
763
+ $.ajax({
764
+ type : 'post',
765
+ dataType : 'json',
766
+ url : l10n.ajaxurl,
767
+ data : {
768
+ 'action': 'cmb_oembed_handler',
769
+ 'oembed_url': oembed_url,
770
+ 'oembed_width': oembed_width > 300 ? oembed_width : 300,
771
+ 'field_id': field_id,
772
+ 'object_id': $obj.data('objectid'),
773
+ 'object_type': $obj.data('objecttype'),
774
+ 'cmb_ajax_nonce': l10n.ajax_nonce
775
+ },
776
+ success: function(response) {
777
+ cmb.log( response );
778
+ // Make sure we have a response id
779
+ if ( typeof response.id === 'undefined' ) {
780
+ return;
781
+ }
782
+
783
+ // hide our spinner
784
+ cmb.spinner( $context, true );
785
+ // and populate our results from ajax response
786
+ $('.embed_wrap', $context).html(response.result);
787
+ }
788
+ });
789
+
790
+ }, 500);
791
+ };
792
+
793
+ $(document).ready(cmb.init);
794
+
795
+ return cmb;
796
+
797
+ })(window, document, jQuery);
includes/plus-options/metabox/js/cmb.min.js ADDED
@@ -0,0 +1 @@
 
1
+ window.CMB=function(window,document,$){"use strict";var l10n=window.cmb_l10,setTimeout=window.setTimeout,cmb={formfield:"",idNumber:!1,file_frames:{},repeatEls:'input:not([type="button"]),select,textarea,.cmb_media_status'};return cmb.metabox=function(){return cmb.$metabox?cmb.$metabox:(cmb.$metabox=$("table.cmb_metabox"),cmb.$metabox)},cmb.init=function(){var $metabox=cmb.metabox(),$repeatGroup=$metabox.find(".repeatable-group");l10n.new_admin_style&&$metabox.find(".cmb-spinner img").hide(),cmb.initPickers($metabox.find("input:text.cmb_timepicker"),$metabox.find("input:text.cmb_datepicker"),$metabox.find("input:text.cmb_colorpicker")),$("#ui-datepicker-div").wrap('<div class="cmb_element" />'),$('<p><span class="button cmb-multicheck-toggle">'+l10n.check_toggle+"</span></p>").insertBefore("ul.cmb_checkbox_list"),$metabox.on("change",".cmb_upload_file",function(){cmb.formfield=$(this).attr("id"),$("#"+cmb.formfield+"_id").val("")}).on("click",".cmb-multicheck-toggle",cmb.toggleCheckBoxes).on("click",".cmb_upload_button",cmb.handleMedia).on("click",".cmb_remove_file_button",cmb.handleRemoveMedia).on("click",".add-group-row",cmb.addGroupRow).on("click",".add-row-button",cmb.addAjaxRow).on("click",".remove-group-row",cmb.removeGroupRow).on("click",".remove-row-button",cmb.removeAjaxRow).on("keyup paste focusout",".cmb_oembed",cmb.maybeOembed).on("cmb_remove_row",".repeatable-group",cmb.resetTitlesAndIterator),$repeatGroup.length&&$repeatGroup.filter(".sortable").each(function(){$(this).find(".remove-group-row").before('<a class="shift-rows move-up alignleft" href="#">'+l10n.up_arrow+'</a> <a class="shift-rows move-down alignleft" href="#">'+l10n.down_arrow+"</a>")}).on("click",".shift-rows",cmb.shiftRows).on("cmb_add_row",cmb.emptyValue),setTimeout(cmb.resizeoEmbeds,500),$(window).on("resize",cmb.resizeoEmbeds)},cmb.resetTitlesAndIterator=function(){$(".repeatable-group").each(function(){var $table=$(this);$table.find(".repeatable-grouping").each(function(rowindex){var $row=$(this);$row.data("iterator",rowindex),$row.find(".cmb-group-title h4").text($table.find(".add-group-row").data("grouptitle").replace("{#}",rowindex+1))})})},cmb.toggleCheckBoxes=function(event){event.preventDefault();var $self=$(this),$multicheck=$self.parents("td").find("input[type=checkbox]");$self.data("checked")?($multicheck.prop("checked",!1),$self.data("checked",!1)):($multicheck.prop("checked",!0),$self.data("checked",!0))},cmb.handleMedia=function(event){if(wp){event.preventDefault();var $metabox=cmb.metabox(),$self=$(this);cmb.formfield=$self.prev("input").attr("id");var $formfield=$("#"+cmb.formfield),formName=$formfield.attr("name"),uploadStatus=!0,attachment=!0,isList=$self.hasClass("cmb_upload_list");if(cmb.formfield in cmb.file_frames)return void cmb.file_frames[cmb.formfield].open();cmb.file_frames[cmb.formfield]=wp.media.frames.file_frame=wp.media({title:$metabox.find("label[for="+cmb.formfield+"]").text(),button:{text:l10n.upload_file},multiple:isList?!0:!1});var handlers={list:function(selection){attachment=selection.toJSON(),$formfield.val(attachment.url),$("#"+cmb.formfield+"_id").val(attachment.id);var fileGroup=[];$(attachment).each(function(){uploadStatus=this.type&&"image"===this.type?'<li class="img_status"><img width="50" height="50" src="'+this.url+'" class="attachment-50x50" alt="'+this.filename+'"><p><a href="#" class="cmb_remove_file_button" rel="'+cmb.formfield+"["+this.id+']">'+l10n.remove_image+'</a></p><input type="hidden" id="filelist-'+this.id+'" name="'+formName+"["+this.id+']" value="'+this.url+'"></li>':"<li>"+l10n.file+" <strong>"+this.filename+'</strong>&nbsp;&nbsp;&nbsp; (<a href="'+this.url+'" target="_blank" rel="external">'+l10n.download+'</a> / <a href="#" class="cmb_remove_file_button" rel="'+cmb.formfield+"["+this.id+']">'+l10n.remove_file+'</a>)<input type="hidden" id="filelist-'+this.id+'" name="'+formName+"["+this.id+']" value="'+this.url+'"></li>',fileGroup.push(uploadStatus)}),$(fileGroup).each(function(){$formfield.siblings(".cmb_media_status").slideDown().append(this)})},single:function(selection){attachment=selection.first().toJSON(),$formfield.val(attachment.url),$("#"+cmb.formfield+"_id").val(attachment.id),uploadStatus=attachment.type&&"image"===attachment.type?'<div class="img_status"><img style="max-width: 350px; width: 100%; height: auto;" src="'+attachment.url+'" alt="'+attachment.filename+'" title="'+attachment.filename+'" /><p><a href="#" class="cmb_remove_file_button" rel="'+cmb.formfield+'">'+l10n.remove_image+"</a></p></div>":l10n.file+" <strong>"+attachment.filename+'</strong>&nbsp;&nbsp;&nbsp; (<a href="'+attachment.url+'" target="_blank" rel="external">'+l10n.download+'</a> / <a href="#" class="cmb_remove_file_button" rel="'+cmb.formfield+'">'+l10n.remove_file+"</a>)",$formfield.siblings(".cmb_media_status").slideDown().html(uploadStatus)}};cmb.file_frames[cmb.formfield].on("select",function(){var selection=cmb.file_frames[cmb.formfield].state().get("selection"),type=isList?"list":"single";handlers[type](selection)}),cmb.file_frames[cmb.formfield].open()}},cmb.handleRemoveMedia=function(event){event.preventDefault();var $self=$(this);if($self.is(".attach_list .cmb_remove_file_button"))return $self.parents("li").remove(),!1;cmb.formfield=$self.attr("rel");var $container=$self.parents(".img_status");return cmb.metabox().find("input#"+cmb.formfield).val(""),cmb.metabox().find("input#"+cmb.formfield+"_id").val(""),$container.length?$container.html(""):$self.parents(".cmb_media_status").html(""),!1},$.fn.replaceText=function(b,a,c){return this.each(function(){var g,e,f=this.firstChild,d=[];if(f)do 3===f.nodeType&&(g=f.nodeValue,e=g.replace(b,a),e!==g&&(!c&&/</.test(e)?($(f).before(e),d.push(f)):f.nodeValue=e));while(f=f.nextSibling);d.length&&$(d).remove()})},$.fn.cleanRow=function(prevNum,group){var $self=$(this),$inputs=$self.find('input:not([type="button"]), select, textarea, label');return group&&$self.find(".cmb-repeat-table .repeat-row:not(:first-child)").remove(),cmb.$focus=!1,cmb.neweditor_id=[],$inputs.filter(":checked").removeAttr("checked"),$inputs.filter(":selected").removeAttr("selected"),$self.find(".cmb-group-title")&&$self.find(".cmb-group-title h4").text($self.data("title").replace("{#}",cmb.idNumber+1)),$inputs.each(function(){var newID,oldID,$newInput=$(this),isEditor=$newInput.hasClass("wp-editor-area"),oldFor=$newInput.attr("for"),attrs={};if(oldFor)attrs={"for":oldFor.replace("_"+prevNum,"_"+cmb.idNumber)};else{var oldName=$newInput.attr("name"),newName=oldName?oldName.replace("["+prevNum+"]","["+cmb.idNumber+"]"):"";oldID=$newInput.attr("id"),newID=oldID?oldID.replace("_"+prevNum,"_"+cmb.idNumber):"",attrs={id:newID,name:newName,"data-iterator":cmb.idNumber}}if($newInput.removeClass("hasDatepicker").attr(attrs).val(""),isEditor){newID=newID?oldID.replace("zx"+prevNum,"zx"+cmb.idNumber):"",$newInput.html("");var $wysiwyg=$newInput.parents(".cmb-type-wysiwyg");$wysiwyg.find(".mce-tinymce:not(:first-child)").remove();var html=$wysiwyg.html().replace(new RegExp(oldID,"g"),newID);$wysiwyg.html(html),cmb.neweditor_id.push({id:newID,old:oldID})}cmb.$focus=cmb.$focus?cmb.$focus:$newInput}),this},$.fn.newRowHousekeeping=function(){var $row=$(this),$colorPicker=$row.find(".wp-picker-container"),$list=$row.find(".cmb_media_status");return $colorPicker.length&&$colorPicker.each(function(){var $td=$(this).parent();$td.html($td.find("input:text.cmb_colorpicker").attr("style",""))}),$list.length&&$list.empty(),this},cmb.afterRowInsert=function($row){cmb.$focus&&cmb.$focus.focus();var _prop;if(cmb.neweditor_id.length){var i;for(i=cmb.neweditor_id.length-1;i>=0;i--){var id=cmb.neweditor_id[i].id,old=cmb.neweditor_id[i].old;if("undefined"==typeof tinyMCEPreInit.mceInit[id]){var newSettings=jQuery.extend({},tinyMCEPreInit.mceInit[old]);for(_prop in newSettings)"string"==typeof newSettings[_prop]&&(newSettings[_prop]=newSettings[_prop].replace(new RegExp(old,"g"),id));tinyMCEPreInit.mceInit[id]=newSettings}if("undefined"==typeof tinyMCEPreInit.qtInit[id]){var newQTS=jQuery.extend({},tinyMCEPreInit.qtInit[old]);for(_prop in newQTS)"string"==typeof newQTS[_prop]&&(newQTS[_prop]=newQTS[_prop].replace(new RegExp(old,"g"),id));tinyMCEPreInit.qtInit[id]=newQTS}tinyMCE.init({id:tinyMCEPreInit.mceInit[id]})}}cmb.initPickers($row.find("input:text.cmb_timepicker"),$row.find("input:text.cmb_datepicker"),$row.find("input:text.cmb_colorpicker"))},cmb.updateNameAttr=function(){var $this=$(this),name=$this.attr("name");if("undefined"==typeof name)return!1;var prevNum=parseInt($this.parents(".repeatable-grouping").data("iterator")),newNum=prevNum-1,$newName=name.replace("["+prevNum+"]","["+newNum+"]");$this.attr("name",$newName)},cmb.emptyValue=function(event,row){$('input:not([type="button"]), textarea',row).val("")},cmb.addGroupRow=function(event){event.preventDefault();var $self=$(this),$table=$("#"+$self.data("selector")),$oldRow=$table.find(".repeatable-grouping").last(),prevNum=parseInt($oldRow.data("iterator"));cmb.idNumber=prevNum+1;var $row=$oldRow.clone();$row.data("title",$self.data("grouptitle")).newRowHousekeeping().cleanRow(prevNum,!0);var $newRow=$('<tr class="repeatable-grouping" data-iterator="'+cmb.idNumber+'">'+$row.html()+"</tr>");$oldRow.after($newRow),cmb.afterRowInsert($newRow),$table.find(".repeatable-grouping").length<=1?$table.find(".remove-group-row").prop("disabled",!0):$table.find(".remove-group-row").removeAttr("disabled"),$table.trigger("cmb_add_row",$newRow)},cmb.addAjaxRow=function(event){event.preventDefault();var $self=$(this),tableselector="#"+$self.data("selector"),$table=$(tableselector),$emptyrow=$table.find(".empty-row"),prevNum=parseInt($emptyrow.find("[data-iterator]").data("iterator"));cmb.idNumber=prevNum+1;var $row=$emptyrow.clone();$row.newRowHousekeeping().cleanRow(prevNum),$emptyrow.removeClass("empty-row").addClass("repeat-row"),$emptyrow.after($row),cmb.afterRowInsert($row),$table.trigger("cmb_add_row",$row)},cmb.removeGroupRow=function(event){event.preventDefault();var $self=$(this),$table=$("#"+$self.data("selector")),$parent=$self.parents(".repeatable-grouping"),noRows=$table.find(".repeatable-grouping").length;$parent.nextAll(".repeatable-grouping").find(cmb.repeatEls).each(cmb.updateNameAttr),noRows>1&&($parent.remove(),3>noRows?$table.find(".remove-group-row").prop("disabled",!0):$table.find(".remove-group-row").prop("disabled",!1),$table.trigger("cmb_remove_row"))},cmb.removeAjaxRow=function(event){event.preventDefault();var $self=$(this),$parent=$self.parents("tr"),$table=$self.parents(".cmb-repeat-table");$table.find("tr").length>1&&($parent.hasClass("empty-row")&&$parent.prev().addClass("empty-row").removeClass("repeat-row"),$self.parents(".cmb-repeat-table tr").remove(),$table.trigger("cmb_remove_row"))},cmb.shiftRows=function(event){event.preventDefault();var $self=$(this),$parent=$self.parents(".repeatable-grouping"),$goto=$self.hasClass("move-up")?$parent.prev(".repeatable-grouping"):$parent.next(".repeatable-grouping");if($goto.length){var inputVals=[];$parent.find(cmb.repeatEls).each(function(){var val,$element=$(this);$element.hasClass("cmb_media_status")?val=$element.html():"checkbox"===$element.attr("type")?(val=$element.is(":checked"),cmb.log("checked",val)):"select"===$element.prop("tagName")?(val=$element.is(":selected"),cmb.log("checked",val)):val=$element.val(),inputVals.push({val:val,$:$element})}),$goto.find(cmb.repeatEls).each(function(index){var val,$element=$(this);$element.hasClass("cmb_media_status")?(val=$element.html(),$element.html(inputVals[index].val),inputVals[index].$.html(val)):"checkbox"===$element.attr("type")?(inputVals[index].$.prop("checked",$element.is(":checked")),$element.prop("checked",inputVals[index].val)):"select"===$element.prop("tagName")?(inputVals[index].$.prop("selected",$element.is(":selected")),$element.prop("selected",inputVals[index].val)):(inputVals[index].$.val($element.val()),$element.val(inputVals[index].val))})}},cmb.initPickers=function($timePickers,$datePickers,$colorPickers){cmb.initTimePickers($timePickers),cmb.initDatePickers($datePickers),cmb.initColorPickers($colorPickers)},cmb.initTimePickers=function($selector){$selector.length&&$selector.timePicker({startTime:"00:00",endTime:"23:59",show24Hours:!1,separator:":",step:30})},cmb.initDatePickers=function($selector){$selector.length&&($selector.datepicker("destroy"),$selector.datepicker())},cmb.initColorPickers=function($selector){$selector.length&&("object"==typeof jQuery.wp&&"function"==typeof jQuery.wp.wpColorPicker?$selector.wpColorPicker():$selector.each(function(i){$(this).after('<div id="picker-'+i+'" style="z-index: 1000; background: #EEE; border: 1px solid #CCC; position: absolute; display: block;"></div>'),$("#picker-"+i).hide().farbtastic($(this))}).focus(function(){$(this).next().show()}).blur(function(){$(this).next().hide()}))},cmb.maybeOembed=function(evt){var $self=$(this),type=evt.type,m={focusout:function(){setTimeout(function(){cmb.spinner(".postbox table.cmb_metabox",!0)},2e3)},keyup:function(){var betw=function(min,max){return evt.which<=max&&evt.which>=min};(betw(48,90)||betw(96,111)||betw(8,9)||187===evt.which||190===evt.which)&&cmb.doAjax($self,evt)},paste:function(){setTimeout(function(){cmb.doAjax($self)},100)}};m[type]()},cmb.resizeoEmbeds=function(){cmb.metabox().each(function(){var $self=$(this),$tableWrap=$self.parents(".inside");if(!$tableWrap.length)return!0;var newWidth=Math.round(.82*$tableWrap.width()*.97)-30;if(newWidth>639)return!0;var $embeds=$self.find(".cmb-type-oembed .embed_status"),$children=$embeds.children().not(".cmb_remove_wrapper");return $children.length?void $children.each(function(){var $self=$(this),iwidth=$self.width(),iheight=$self.height(),_newWidth=newWidth;$self.parents(".repeat-row").length&&(_newWidth=newWidth-91);var newHeight=Math.round(_newWidth*iheight/iwidth);$self.width(_newWidth).height(newHeight)}):!0})},cmb.log=function(){l10n.script_debug&&console&&"function"==typeof console.log&&console.log.apply(console,arguments)},cmb.spinner=function($context,hide){hide?$(".cmb-spinner",$context).hide():$(".cmb-spinner",$context).show()},cmb.doAjax=function($obj){var oembed_url=$obj.val();if(!(oembed_url.length<6)){var field_id=$obj.attr("id"),$context=$obj.parents(".cmb-repeat-table tr td");$context=$context.length?$context:$obj.parents(".cmb_metabox tr td");var embed_container=$(".embed_status",$context),oembed_width=$obj.width(),child_el=$(":first-child",embed_container);cmb.log("oembed_url",oembed_url,field_id),oembed_width=embed_container.length&&child_el.length?child_el.width():$obj.width(),cmb.spinner($context),$(".embed_wrap",$context).html(""),setTimeout(function(){$(".cmb_oembed:focus").val()===oembed_url&&$.ajax({type:"post",dataType:"json",url:l10n.ajaxurl,data:{action:"cmb_oembed_handler",oembed_url:oembed_url,oembed_width:oembed_width>300?oembed_width:300,field_id:field_id,object_id:$obj.data("objectid"),object_type:$obj.data("objecttype"),cmb_ajax_nonce:l10n.ajax_nonce},success:function(response){cmb.log(response),"undefined"!=typeof response.id&&(cmb.spinner($context,!0),$(".embed_wrap",$context).html(response.result))}})},500)}},$(document).ready(cmb.init),cmb}(window,document,jQuery);
includes/plus-options/metabox/js/jquery.datePicker.min.js ADDED
@@ -0,0 +1,2038 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!
2
+ * jQuery UI Datepicker 1.10.4
3
+ * http://jqueryui.com
4
+ *
5
+ * Copyright 2014 jQuery Foundation and other contributors
6
+ * Released under the MIT license.
7
+ * http://jquery.org/license
8
+ *
9
+ * http://api.jqueryui.com/datepicker/
10
+ *
11
+ * Depends:
12
+ * jquery.ui.core.js
13
+ */
14
+ (function( $, undefined ) {
15
+
16
+ $.extend($.ui, { datepicker: { version: "1.10.4" } });
17
+
18
+ var PROP_NAME = "datepicker",
19
+ instActive;
20
+
21
+ /* Date picker manager.
22
+ Use the singleton instance of this class, $.datepicker, to interact with the date picker.
23
+ Settings for (groups of) date pickers are maintained in an instance object,
24
+ allowing multiple different settings on the same page. */
25
+
26
+ function Datepicker() {
27
+ this._curInst = null; // The current instance in use
28
+ this._keyEvent = false; // If the last event was a key event
29
+ this._disabledInputs = []; // List of date picker inputs that have been disabled
30
+ this._datepickerShowing = false; // True if the popup picker is showing , false if not
31
+ this._inDialog = false; // True if showing within a "dialog", false if not
32
+ this._mainDivId = "ui-datepicker-div"; // The ID of the main datepicker division
33
+ this._inlineClass = "ui-datepicker-inline"; // The name of the inline marker class
34
+ this._appendClass = "ui-datepicker-append"; // The name of the append marker class
35
+ this._triggerClass = "ui-datepicker-trigger"; // The name of the trigger marker class
36
+ this._dialogClass = "ui-datepicker-dialog"; // The name of the dialog marker class
37
+ this._disableClass = "ui-datepicker-disabled"; // The name of the disabled covering marker class
38
+ this._unselectableClass = "ui-datepicker-unselectable"; // The name of the unselectable cell marker class
39
+ this._currentClass = "ui-datepicker-current-day"; // The name of the current day marker class
40
+ this._dayOverClass = "ui-datepicker-days-cell-over"; // The name of the day hover marker class
41
+ this.regional = []; // Available regional settings, indexed by language code
42
+ this.regional[""] = { // Default regional settings
43
+ closeText: "Done", // Display text for close link
44
+ prevText: "Prev", // Display text for previous month link
45
+ nextText: "Next", // Display text for next month link
46
+ currentText: "Today", // Display text for current month link
47
+ monthNames: ["January","February","March","April","May","June",
48
+ "July","August","September","October","November","December"], // Names of months for drop-down and formatting
49
+ monthNamesShort: ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], // For formatting
50
+ dayNames: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], // For formatting
51
+ dayNamesShort: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], // For formatting
52
+ dayNamesMin: ["Su","Mo","Tu","We","Th","Fr","Sa"], // Column headings for days starting at Sunday
53
+ weekHeader: "Wk", // Column header for week of the year
54
+ dateFormat: "mm/dd/yy", // See format options on parseDate
55
+ firstDay: 0, // The first day of the week, Sun = 0, Mon = 1, ...
56
+ isRTL: false, // True if right-to-left language, false if left-to-right
57
+ showMonthAfterYear: false, // True if the year select precedes month, false for month then year
58
+ yearSuffix: "" // Additional text to append to the year in the month headers
59
+ };
60
+ this._defaults = { // Global defaults for all the date picker instances
61
+ showOn: "focus", // "focus" for popup on focus,
62
+ // "button" for trigger button, or "both" for either
63
+ showAnim: "fadeIn", // Name of jQuery animation for popup
64
+ showOptions: {}, // Options for enhanced animations
65
+ defaultDate: null, // Used when field is blank: actual date,
66
+ // +/-number for offset from today, null for today
67
+ appendText: "", // Display text following the input box, e.g. showing the format
68
+ buttonText: "...", // Text for trigger button
69
+ buttonImage: "", // URL for trigger button image
70
+ buttonImageOnly: false, // True if the image appears alone, false if it appears on a button
71
+ hideIfNoPrevNext: false, // True to hide next/previous month links
72
+ // if not applicable, false to just disable them
73
+ navigationAsDateFormat: false, // True if date formatting applied to prev/today/next links
74
+ gotoCurrent: false, // True if today link goes back to current selection instead
75
+ changeMonth: false, // True if month can be selected directly, false if only prev/next
76
+ changeYear: false, // True if year can be selected directly, false if only prev/next
77
+ yearRange: "c-10:c+10", // Range of years to display in drop-down,
78
+ // either relative to today's year (-nn:+nn), relative to currently displayed year
79
+ // (c-nn:c+nn), absolute (nnnn:nnnn), or a combination of the above (nnnn:-n)
80
+ showOtherMonths: false, // True to show dates in other months, false to leave blank
81
+ selectOtherMonths: false, // True to allow selection of dates in other months, false for unselectable
82
+ showWeek: false, // True to show week of the year, false to not show it
83
+ calculateWeek: this.iso8601Week, // How to calculate the week of the year,
84
+ // takes a Date and returns the number of the week for it
85
+ shortYearCutoff: "+10", // Short year values < this are in the current century,
86
+ // > this are in the previous century,
87
+ // string value starting with "+" for current year + value
88
+ minDate: null, // The earliest selectable date, or null for no limit
89
+ maxDate: null, // The latest selectable date, or null for no limit
90
+ duration: "fast", // Duration of display/closure
91
+ beforeShowDay: null, // Function that takes a date and returns an array with
92
+ // [0] = true if selectable, false if not, [1] = custom CSS class name(s) or "",
93
+ // [2] = cell title (optional), e.g. $.datepicker.noWeekends
94
+ beforeShow: null, // Function that takes an input field and
95
+ // returns a set of custom settings for the date picker
96
+ onSelect: null, // Define a callback function when a date is selected
97
+ onChangeMonthYear: null, // Define a callback function when the month or year is changed
98
+ onClose: null, // Define a callback function when the datepicker is closed
99
+ numberOfMonths: 1, // Number of months to show at a time
100
+ showCurrentAtPos: 0, // The position in multipe months at which to show the current month (starting at 0)
101
+ stepMonths: 1, // Number of months to step back/forward
102
+ stepBigMonths: 12, // Number of months to step back/forward for the big links
103
+ altField: "", // Selector for an alternate field to store selected dates into
104
+ altFormat: "", // The date format to use for the alternate field
105
+ constrainInput: true, // The input is constrained by the current date format
106
+ showButtonPanel: false, // True to show button panel, false to not show it
107
+ autoSize: false, // True to size the input for the date format, false to leave as is
108
+ disabled: false // The initial disabled state
109
+ };
110
+ $.extend(this._defaults, this.regional[""]);
111
+ this.dpDiv = bindHover($("<div id='" + this._mainDivId + "' class='ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>"));
112
+ }
113
+
114
+ $.extend(Datepicker.prototype, {
115
+ /* Class name added to elements to indicate already configured with a date picker. */
116
+ markerClassName: "hasDatepicker",
117
+
118
+ //Keep track of the maximum number of rows displayed (see #7043)
119
+ maxRows: 4,
120
+
121
+ // TODO rename to "widget" when switching to widget factory
122
+ _widgetDatepicker: function() {
123
+ return this.dpDiv;
124
+ },
125
+
126
+ /* Override the default settings for all instances of the date picker.
127
+ * @param settings object - the new settings to use as defaults (anonymous object)
128
+ * @return the manager object
129
+ */
130
+ setDefaults: function(settings) {
131
+ extendRemove(this._defaults, settings || {});
132
+ return this;
133
+ },
134
+
135
+ /* Attach the date picker to a jQuery selection.
136
+ * @param target element - the target input field or division or span
137
+ * @param settings object - the new settings to use for this date picker instance (anonymous)
138
+ */
139
+ _attachDatepicker: function(target, settings) {
140
+ var nodeName, inline, inst;
141
+ nodeName = target.nodeName.toLowerCase();
142
+ inline = (nodeName === "div" || nodeName === "span");
143
+ if (!target.id) {
144
+ this.uuid += 1;
145
+ target.id = "dp" + this.uuid;
146
+ }
147
+ inst = this._newInst($(target), inline);
148
+ inst.settings = $.extend({}, settings || {});
149
+ if (nodeName === "input") {
150
+ this._connectDatepicker(target, inst);
151
+ } else if (inline) {
152
+ this._inlineDatepicker(target, inst);
153
+ }
154
+ },
155
+
156
+ /* Create a new instance object. */
157
+ _newInst: function(target, inline) {
158
+ var id = target[0].id.replace(/([^A-Za-z0-9_\-])/g, "\\\\$1"); // escape jQuery meta chars
159
+ return {id: id, input: target, // associated target
160
+ selectedDay: 0, selectedMonth: 0, selectedYear: 0, // current selection
161
+ drawMonth: 0, drawYear: 0, // month being drawn
162
+ inline: inline, // is datepicker inline or not
163
+ dpDiv: (!inline ? this.dpDiv : // presentation div
164
+ bindHover($("<div class='" + this._inlineClass + " ui-datepicker ui-widget ui-widget-content ui-helper-clearfix ui-corner-all'></div>")))};
165
+ },
166
+
167
+ /* Attach the date picker to an input field. */
168
+ _connectDatepicker: function(target, inst) {
169
+ var input = $(target);
170
+ inst.append = $([]);
171
+ inst.trigger = $([]);
172
+ if (input.hasClass(this.markerClassName)) {
173
+ return;
174
+ }
175
+ this._attachments(input, inst);
176
+ input.addClass(this.markerClassName).keydown(this._doKeyDown).
177
+ keypress(this._doKeyPress).keyup(this._doKeyUp);
178
+ this._autoSize(inst);
179
+ $.data(target, PROP_NAME, inst);
180
+ //If disabled option is true, disable the datepicker once it has been attached to the input (see ticket #5665)
181
+ if( inst.settings.disabled ) {
182
+ this._disableDatepicker( target );
183
+ }
184
+ },
185
+
186
+ /* Make attachments based on settings. */
187
+ _attachments: function(input, inst) {
188
+ var showOn, buttonText, buttonImage,
189
+ appendText = this._get(inst, "appendText"),
190
+ isRTL = this._get(inst, "isRTL");
191
+
192
+ if (inst.append) {
193
+ inst.append.remove();
194
+ }
195
+ if (appendText) {
196
+ inst.append = $("<span class='" + this._appendClass + "'>" + appendText + "</span>");
197
+ input[isRTL ? "before" : "after"](inst.append);
198
+ }
199
+
200
+ input.unbind("focus", this._showDatepicker);
201
+
202
+ if (inst.trigger) {
203
+ inst.trigger.remove();
204
+ }
205
+
206
+ showOn = this._get(inst, "showOn");
207
+ if (showOn === "focus" || showOn === "both") { // pop-up date picker when in the marked field
208
+ input.focus(this._showDatepicker);
209
+ }
210
+ if (showOn === "button" || showOn === "both") { // pop-up date picker when button clicked
211
+ buttonText = this._get(inst, "buttonText");
212
+ buttonImage = this._get(inst, "buttonImage");
213
+ inst.trigger = $(this._get(inst, "buttonImageOnly") ?
214
+ $("<img/>").addClass(this._triggerClass).
215
+ attr({ src: buttonImage, alt: buttonText, title: buttonText }) :
216
+ $("<button type='button'></button>").addClass(this._triggerClass).
217
+ html(!buttonImage ? buttonText : $("<img/>").attr(
218
+ { src:buttonImage, alt:buttonText, title:buttonText })));
219
+ input[isRTL ? "before" : "after"](inst.trigger);
220
+ inst.trigger.click(function() {
221
+ if ($.datepicker._datepickerShowing && $.datepicker._lastInput === input[0]) {
222
+ $.datepicker._hideDatepicker();
223
+ } else if ($.datepicker._datepickerShowing && $.datepicker._lastInput !== input[0]) {
224
+ $.datepicker._hideDatepicker();
225
+ $.datepicker._showDatepicker(input[0]);
226
+ } else {
227
+ $.datepicker._showDatepicker(input[0]);
228
+ }
229
+ return false;
230
+ });
231
+ }
232
+ },
233
+
234
+ /* Apply the maximum length for the date format. */
235
+ _autoSize: function(inst) {
236
+ if (this._get(inst, "autoSize") && !inst.inline) {
237
+ var findMax, max, maxI, i,
238
+ date = new Date(2009, 12 - 1, 20), // Ensure double digits
239
+ dateFormat = this._get(inst, "dateFormat");
240
+
241
+ if (dateFormat.match(/[DM]/)) {
242
+ findMax = function(names) {
243
+ max = 0;
244
+ maxI = 0;
245
+ for (i = 0; i < names.length; i++) {
246
+ if (names[i].length > max) {
247
+ max = names[i].length;
248
+ maxI = i;
249
+ }
250
+ }
251
+ return maxI;
252
+ };
253
+ date.setMonth(findMax(this._get(inst, (dateFormat.match(/MM/) ?
254
+ "monthNames" : "monthNamesShort"))));
255
+ date.setDate(findMax(this._get(inst, (dateFormat.match(/DD/) ?
256
+ "dayNames" : "dayNamesShort"))) + 20 - date.getDay());
257
+ }
258
+ inst.input.attr("size", this._formatDate(inst, date).length);
259
+ }
260
+ },
261
+
262
+ /* Attach an inline date picker to a div. */
263
+ _inlineDatepicker: function(target, inst) {
264
+ var divSpan = $(target);
265
+ if (divSpan.hasClass(this.markerClassName)) {
266
+ return;
267
+ }
268
+ divSpan.addClass(this.markerClassName).append(inst.dpDiv);
269
+ $.data(target, PROP_NAME, inst);
270
+ this._setDate(inst, this._getDefaultDate(inst), true);
271
+ this._updateDatepicker(inst);
272
+ this._updateAlternate(inst);
273
+ //If disabled option is true, disable the datepicker before showing it (see ticket #5665)
274
+ if( inst.settings.disabled ) {
275
+ this._disableDatepicker( target );
276
+ }
277
+ // Set display:block in place of inst.dpDiv.show() which won't work on disconnected elements
278
+ // http://bugs.jqueryui.com/ticket/7552 - A Datepicker created on a detached div has zero height
279
+ inst.dpDiv.css( "display", "block" );
280
+ },
281
+
282
+ /* Pop-up the date picker in a "dialog" box.
283
+ * @param input element - ignored
284
+ * @param date string or Date - the initial date to display
285
+ * @param onSelect function - the function to call when a date is selected
286
+ * @param settings object - update the dialog date picker instance's settings (anonymous object)
287
+ * @param pos int[2] - coordinates for the dialog's position within the screen or
288
+ * event - with x/y coordinates or
289
+ * leave empty for default (screen centre)
290
+ * @return the manager object
291
+ */
292
+ _dialogDatepicker: function(input, date, onSelect, settings, pos) {
293
+ var id, browserWidth, browserHeight, scrollX, scrollY,
294
+ inst = this._dialogInst; // internal instance
295
+
296
+ if (!inst) {
297
+ this.uuid += 1;
298
+ id = "dp" + this.uuid;
299
+ this._dialogInput = $("<input type='text' id='" + id +
300
+ "' style='position: absolute; top: -100px; width: 0px;'/>");
301
+ this._dialogInput.keydown(this._doKeyDown);
302
+ $("body").append(this._dialogInput);
303
+ inst = this._dialogInst = this._newInst(this._dialogInput, false);
304
+ inst.settings = {};
305
+ $.data(this._dialogInput[0], PROP_NAME, inst);
306
+ }
307
+ extendRemove(inst.settings, settings || {});
308
+ date = (date && date.constructor === Date ? this._formatDate(inst, date) : date);
309
+ this._dialogInput.val(date);
310
+
311
+ this._pos = (pos ? (pos.length ? pos : [pos.pageX, pos.pageY]) : null);
312
+ if (!this._pos) {
313
+ browserWidth = document.documentElement.clientWidth;
314
+ browserHeight = document.documentElement.clientHeight;
315
+ scrollX = document.documentElement.scrollLeft || document.body.scrollLeft;
316
+ scrollY = document.documentElement.scrollTop || document.body.scrollTop;
317
+ this._pos = // should use actual width/height below
318
+ [(browserWidth / 2) - 100 + scrollX, (browserHeight / 2) - 150 + scrollY];
319
+ }
320
+
321
+ // move input on screen for focus, but hidden behind dialog
322
+ this._dialogInput.css("left", (this._pos[0] + 20) + "px").css("top", this._pos[1] + "px");
323
+ inst.settings.onSelect = onSelect;
324
+ this._inDialog = true;
325
+ this.dpDiv.addClass(this._dialogClass);
326
+ this._showDatepicker(this._dialogInput[0]);
327
+ if ($.blockUI) {
328
+ $.blockUI(this.dpDiv);
329
+ }
330
+ $.data(this._dialogInput[0], PROP_NAME, inst);
331
+ return this;
332
+ },
333
+
334
+ /* Detach a datepicker from its control.
335
+ * @param target element - the target input field or division or span
336
+ */
337
+ _destroyDatepicker: function(target) {
338
+ var nodeName,
339
+ $target = $(target),
340
+ inst = $.data(target, PROP_NAME);
341
+
342
+ if (!$target.hasClass(this.markerClassName)) {
343
+ return;
344
+ }
345
+
346
+ nodeName = target.nodeName.toLowerCase();
347
+ $.removeData(target, PROP_NAME);
348
+ if (nodeName === "input") {
349
+ inst.append.remove();
350
+ inst.trigger.remove();
351
+ $target.removeClass(this.markerClassName).
352
+ unbind("focus", this._showDatepicker).
353
+ unbind("keydown", this._doKeyDown).
354
+ unbind("keypress", this._doKeyPress).
355
+ unbind("keyup", this._doKeyUp);
356
+ } else if (nodeName === "div" || nodeName === "span") {
357
+ $target.removeClass(this.markerClassName).empty();
358
+ }
359
+ },
360
+
361
+ /* Enable the date picker to a jQuery selection.
362
+ * @param target element - the target input field or division or span
363
+ */
364
+ _enableDatepicker: function(target) {
365
+ var nodeName, inline,
366
+ $target = $(target),
367
+ inst = $.data(target, PROP_NAME);
368
+
369
+ if (!$target.hasClass(this.markerClassName)) {
370
+ return;
371
+ }
372
+
373
+ nodeName = target.nodeName.toLowerCase();
374
+ if (nodeName === "input") {
375
+ target.disabled = false;
376
+ inst.trigger.filter("button").
377
+ each(function() { this.disabled = false; }).end().
378
+ filter("img").css({opacity: "1.0", cursor: ""});
379
+ } else if (nodeName === "div" || nodeName === "span") {
380
+ inline = $target.children("." + this._inlineClass);
381
+ inline.children().removeClass("ui-state-disabled");
382
+ inline.find("select.ui-datepicker-month, select.ui-datepicker-year").
383
+ prop("disabled", false);
384
+ }
385
+ this._disabledInputs = $.map(this._disabledInputs,
386
+ function(value) { return (value === target ? null : value); }); // delete entry
387
+ },
388
+
389
+ /* Disable the date picker to a jQuery selection.
390
+ * @param target element - the target input field or division or span
391
+ */
392
+ _disableDatepicker: function(target) {
393
+ var nodeName, inline,
394
+ $target = $(target),
395
+ inst = $.data(target, PROP_NAME);
396
+
397
+ if (!$target.hasClass(this.markerClassName)) {
398
+ return;
399
+ }
400
+
401
+ nodeName = target.nodeName.toLowerCase();
402
+ if (nodeName === "input") {
403
+ target.disabled = true;
404
+ inst.trigger.filter("button").
405
+ each(function() { this.disabled = true; }).end().
406
+ filter("img").css({opacity: "0.5", cursor: "default"});
407
+ } else if (nodeName === "div" || nodeName === "span") {
408
+ inline = $target.children("." + this._inlineClass);
409
+ inline.children().addClass("ui-state-disabled");
410
+ inline.find("select.ui-datepicker-month, select.ui-datepicker-year").
411
+ prop("disabled", true);
412
+ }
413
+ this._disabledInputs = $.map(this._disabledInputs,
414
+ function(value) { return (value === target ? null : value); }); // delete entry
415
+ this._disabledInputs[this._disabledInputs.length] = target;
416
+ },
417
+
418
+ /* Is the first field in a jQuery collection disabled as a datepicker?
419
+ * @param target element - the target input field or division or span
420
+ * @return boolean - true if disabled, false if enabled
421
+ */
422
+ _isDisabledDatepicker: function(target) {
423
+ if (!target) {
424
+ return false;
425
+ }
426
+ for (var i = 0; i < this._disabledInputs.length; i++) {
427
+ if (this._disabledInputs[i] === target) {
428
+ return true;
429
+ }
430
+ }
431
+ return false;
432
+ },
433
+
434
+ /* Retrieve the instance data for the target control.
435
+ * @param target element - the target input field or division or span
436
+ * @return object - the associated instance data
437
+ * @throws error if a jQuery problem getting data
438
+ */
439
+ _getInst: function(target) {
440
+ try {
441
+ return $.data(target, PROP_NAME);
442
+ }
443
+ catch (err) {
444
+ throw "Missing instance data for this datepicker";
445
+ }
446
+ },
447
+
448
+ /* Update or retrieve the settings for a date picker attached to an input field or division.
449
+ * @param target element - the target input field or division or span
450
+ * @param name object - the new settings to update or
451
+ * string - the name of the setting to change or retrieve,
452
+ * when retrieving also "all" for all instance settings or
453
+ * "defaults" for all global defaults
454
+ * @param value any - the new value for the setting
455
+ * (omit if above is an object or to retrieve a value)
456
+ */
457
+ _optionDatepicker: function(target, name, value) {
458
+ var settings, date, minDate, maxDate,
459
+ inst = this._getInst(target);
460
+
461
+ if (arguments.length === 2 && typeof name === "string") {
462
+ return (name === "defaults" ? $.extend({}, $.datepicker._defaults) :
463
+ (inst ? (name === "all" ? $.extend({}, inst.settings) :
464
+ this._get(inst, name)) : null));
465
+ }
466
+
467
+ settings = name || {};
468
+ if (typeof name === "string") {
469
+ settings = {};
470
+ settings[name] = value;
471
+ }
472
+
473
+ if (inst) {
474
+ if (this._curInst === inst) {
475
+ this._hideDatepicker();
476
+ }
477
+
478
+ date = this._getDateDatepicker(target, true);
479
+ minDate = this._getMinMaxDate(inst, "min");
480
+ maxDate = this._getMinMaxDate(inst, "max");
481
+ extendRemove(inst.settings, settings);
482
+ // reformat the old minDate/maxDate values if dateFormat changes and a new minDate/maxDate isn't provided
483
+ if (minDate !== null && settings.dateFormat !== undefined && settings.minDate === undefined) {
484
+ inst.settings.minDate = this._formatDate(inst, minDate);
485
+ }
486
+ if (maxDate !== null && settings.dateFormat !== undefined && settings.maxDate === undefined) {
487
+ inst.settings.maxDate = this._formatDate(inst, maxDate);
488
+ }
489
+ if ( "disabled" in settings ) {
490
+ if ( settings.disabled ) {
491
+ this._disableDatepicker(target);
492
+ } else {
493
+ this._enableDatepicker(target);
494
+ }
495
+ }
496
+ this._attachments($(target), inst);
497
+ this._autoSize(inst);
498
+ this._setDate(inst, date);
499
+ this._updateAlternate(inst);
500
+ this._updateDatepicker(inst);
501
+ }
502
+ },
503
+
504
+ // change method deprecated
505
+ _changeDatepicker: function(target, name, value) {
506
+ this._optionDatepicker(target, name, value);
507
+ },
508
+
509
+ /* Redraw the date picker attached to an input field or division.
510
+ * @param target element - the target input field or division or span
511
+ */
512
+ _refreshDatepicker: function(target) {
513
+ var inst = this._getInst(target);
514
+ if (inst) {
515
+ this._updateDatepicker(inst);
516
+ }
517
+ },
518
+
519
+ /* Set the dates for a jQuery selection.
520
+ * @param target element - the target input field or division or span
521
+ * @param date Date - the new date
522
+ */
523
+ _setDateDatepicker: function(target, date) {
524
+ var inst = this._getInst(target);
525
+ if (inst) {
526
+ this._setDate(inst, date);
527
+ this._updateDatepicker(inst);
528
+ this._updateAlternate(inst);
529
+ }
530
+ },
531
+
532
+ /* Get the date(s) for the first entry in a jQuery selection.
533
+ * @param target element - the target input field or division or span
534
+ * @param noDefault boolean - true if no default date is to be used
535
+ * @return Date - the current date
536
+ */
537
+ _getDateDatepicker: function(target, noDefault) {
538
+ var inst = this._getInst(target);
539
+ if (inst && !inst.inline) {
540
+ this._setDateFromField(inst, noDefault);
541
+ }
542
+ return (inst ? this._getDate(inst) : null);
543
+ },
544
+
545
+ /* Handle keystrokes. */
546
+ _doKeyDown: function(event) {
547
+ var onSelect, dateStr, sel,
548
+ inst = $.datepicker._getInst(event.target),
549
+ handled = true,
550
+ isRTL = inst.dpDiv.is(".ui-datepicker-rtl");
551
+
552
+ inst._keyEvent = true;
553
+ if ($.datepicker._datepickerShowing) {
554
+ switch (event.keyCode) {
555
+ case 9: $.datepicker._hideDatepicker();
556
+ handled = false;
557
+ break; // hide on tab out
558
+ case 13: sel = $("td." + $.datepicker._dayOverClass + ":not(." +
559
+ $.datepicker._currentClass + ")", inst.dpDiv);
560
+ if (sel[0]) {
561
+ $.datepicker._selectDay(event.target, inst.selectedMonth, inst.selectedYear, sel[0]);
562
+ }
563
+
564
+ onSelect = $.datepicker._get(inst, "onSelect");
565
+ if (onSelect) {
566
+ dateStr = $.datepicker._formatDate(inst);
567
+
568
+ // trigger custom callback
569
+ onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]);
570
+ } else {
571
+ $.datepicker._hideDatepicker();
572
+ }
573
+
574
+ return false; // don't submit the form
575
+ case 27: $.datepicker._hideDatepicker();
576
+ break; // hide on escape
577
+ case 33: $.datepicker._adjustDate(event.target, (event.ctrlKey ?
578
+ -$.datepicker._get(inst, "stepBigMonths") :
579
+ -$.datepicker._get(inst, "stepMonths")), "M");
580
+ break; // previous month/year on page up/+ ctrl
581
+ case 34: $.datepicker._adjustDate(event.target, (event.ctrlKey ?
582
+ +$.datepicker._get(inst, "stepBigMonths") :
583
+ +$.datepicker._get(inst, "stepMonths")), "M");
584
+ break; // next month/year on page down/+ ctrl
585
+ case 35: if (event.ctrlKey || event.metaKey) {
586
+ $.datepicker._clearDate(event.target);
587
+ }
588
+ handled = event.ctrlKey || event.metaKey;
589
+ break; // clear on ctrl or command +end
590
+ case 36: if (event.ctrlKey || event.metaKey) {
591
+ $.datepicker._gotoToday(event.target);
592
+ }
593
+ handled = event.ctrlKey || event.metaKey;
594
+ break; // current on ctrl or command +home
595
+ case 37: if (event.ctrlKey || event.metaKey) {
596
+ $.datepicker._adjustDate(event.target, (isRTL ? +1 : -1), "D");
597
+ }
598
+ handled = event.ctrlKey || event.metaKey;
599
+ // -1 day on ctrl or command +left
600
+ if (event.originalEvent.altKey) {
601
+ $.datepicker._adjustDate(event.target, (event.ctrlKey ?
602
+ -$.datepicker._get(inst, "stepBigMonths") :
603
+ -$.datepicker._get(inst, "stepMonths")), "M");
604
+ }
605
+ // next month/year on alt +left on Mac
606
+ break;
607
+ case 38: if (event.ctrlKey || event.metaKey) {
608
+ $.datepicker._adjustDate(event.target, -7, "D");
609
+ }
610
+ handled = event.ctrlKey || event.metaKey;
611
+ break; // -1 week on ctrl or command +up
612
+ case 39: if (event.ctrlKey || event.metaKey) {
613
+ $.datepicker._adjustDate(event.target, (isRTL ? -1 : +1), "D");
614
+ }
615
+ handled = event.ctrlKey || event.metaKey;
616
+ // +1 day on ctrl or command +right
617
+ if (event.originalEvent.altKey) {
618
+ $.datepicker._adjustDate(event.target, (event.ctrlKey ?
619
+ +$.datepicker._get(inst, "stepBigMonths") :
620
+ +$.datepicker._get(inst, "stepMonths")), "M");
621
+ }
622
+ // next month/year on alt +right
623
+ break;
624
+ case 40: if (event.ctrlKey || event.metaKey) {
625
+ $.datepicker._adjustDate(event.target, +7, "D");
626
+ }
627
+ handled = event.ctrlKey || event.metaKey;
628
+ break; // +1 week on ctrl or command +down
629
+ default: handled = false;
630
+ }
631
+ } else if (event.keyCode === 36 && event.ctrlKey) { // display the date picker on ctrl+home
632
+ $.datepicker._showDatepicker(this);
633
+ } else {
634
+ handled = false;
635
+ }
636
+
637
+ if (handled) {
638
+ event.preventDefault();
639
+ event.stopPropagation();
640
+ }
641
+ },
642
+
643
+ /* Filter entered characters - based on date format. */
644
+ _doKeyPress: function(event) {
645
+ var chars, chr,
646
+ inst = $.datepicker._getInst(event.target);
647
+
648
+ if ($.datepicker._get(inst, "constrainInput")) {
649
+ chars = $.datepicker._possibleChars($.datepicker._get(inst, "dateFormat"));
650
+ chr = String.fromCharCode(event.charCode == null ? event.keyCode : event.charCode);
651
+ return event.ctrlKey || event.metaKey || (chr < " " || !chars || chars.indexOf(chr) > -1);
652
+ }
653
+ },
654
+
655
+ /* Synchronise manual entry and field/alternate field. */
656
+ _doKeyUp: function(event) {
657
+ var date,
658
+ inst = $.datepicker._getInst(event.target);
659
+
660
+ if (inst.input.val() !== inst.lastVal) {
661
+ try {
662
+ date = $.datepicker.parseDate($.datepicker._get(inst, "dateFormat"),
663
+ (inst.input ? inst.input.val() : null),
664
+ $.datepicker._getFormatConfig(inst));
665
+
666
+ if (date) { // only if valid
667
+ $.datepicker._setDateFromField(inst);
668
+ $.datepicker._updateAlternate(inst);
669
+ $.datepicker._updateDatepicker(inst);
670
+ }
671
+ }
672
+ catch (err) {
673
+ }
674
+ }
675
+ return true;
676
+ },
677
+
678
+ /* Pop-up the date picker for a given input field.
679
+ * If false returned from beforeShow event handler do not show.
680
+ * @param input element - the input field attached to the date picker or
681
+ * event - if triggered by focus
682
+ */
683
+ _showDatepicker: function(input) {
684
+ input = input.target || input;
685
+ if (input.nodeName.toLowerCase() !== "input") { // find from button/image trigger
686
+ input = $("input", input.parentNode)[0];
687
+ }
688
+
689
+ if ($.datepicker._isDisabledDatepicker(input) || $.datepicker._lastInput === input) { // already here
690
+ return;
691
+ }
692
+
693
+ var inst, beforeShow, beforeShowSettings, isFixed,
694
+ offset, showAnim, duration;
695
+
696
+ inst = $.datepicker._getInst(input);
697
+ if ($.datepicker._curInst && $.datepicker._curInst !== inst) {
698
+ $.datepicker._curInst.dpDiv.stop(true, true);
699
+ if ( inst && $.datepicker._datepickerShowing ) {
700
+ $.datepicker._hideDatepicker( $.datepicker._curInst.input[0] );
701
+ }
702
+ }
703
+
704
+ beforeShow = $.datepicker._get(inst, "beforeShow");
705
+ beforeShowSettings = beforeShow ? beforeShow.apply(input, [input, inst]) : {};
706
+ if(beforeShowSettings === false){
707
+ return;
708
+ }
709
+ extendRemove(inst.settings, beforeShowSettings);
710
+
711
+ inst.lastVal = null;
712
+ $.datepicker._lastInput = input;
713
+ $.datepicker._setDateFromField(inst);
714
+
715
+ if ($.datepicker._inDialog) { // hide cursor
716
+ input.value = "";
717
+ }
718
+ if (!$.datepicker._pos) { // position below input
719
+ $.datepicker._pos = $.datepicker._findPos(input);
720
+ $.datepicker._pos[1] += input.offsetHeight; // add the height
721
+ }
722
+
723
+ isFixed = false;
724
+ $(input).parents().each(function() {
725
+ isFixed |= $(this).css("position") === "fixed";
726
+ return !isFixed;
727
+ });
728
+
729
+ offset = {left: $.datepicker._pos[0], top: $.datepicker._pos[1]};
730
+ $.datepicker._pos = null;
731
+ //to avoid flashes on Firefox
732
+ inst.dpDiv.empty();
733
+ // determine sizing offscreen
734
+ inst.dpDiv.css({position: "absolute", display: "block", top: "-1000px"});
735
+ $.datepicker._updateDatepicker(inst);
736
+ // fix width for dynamic number of date pickers
737
+ // and adjust position before showing
738
+ offset = $.datepicker._checkOffset(inst, offset, isFixed);
739
+ inst.dpDiv.css({position: ($.datepicker._inDialog && $.blockUI ?
740
+ "static" : (isFixed ? "fixed" : "absolute")), display: "none",
741
+ left: offset.left + "px", top: offset.top + "px"});
742
+
743
+ if (!inst.inline) {
744
+ showAnim = $.datepicker._get(inst, "showAnim");
745
+ duration = $.datepicker._get(inst, "duration");
746
+ inst.dpDiv.zIndex($(input).zIndex()+1);
747
+ $.datepicker._datepickerShowing = true;
748
+
749
+ if ( $.effects && $.effects.effect[ showAnim ] ) {
750
+ inst.dpDiv.show(showAnim, $.datepicker._get(inst, "showOptions"), duration);
751
+ } else {
752
+ inst.dpDiv[showAnim || "show"](showAnim ? duration : null);
753
+ }
754
+
755
+ if ( $.datepicker._shouldFocusInput( inst ) ) {
756
+ inst.input.focus();
757
+ }
758
+
759
+ $.datepicker._curInst = inst;
760
+ }
761
+ },
762
+
763
+ /* Generate the date picker content. */
764
+ _updateDatepicker: function(inst) {
765
+ this.maxRows = 4; //Reset the max number of rows being displayed (see #7043)
766
+ instActive = inst; // for delegate hover events
767
+ inst.dpDiv.empty().append(this._generateHTML(inst));
768
+ this._attachHandlers(inst);
769
+ inst.dpDiv.find("." + this._dayOverClass + " a").mouseover();
770
+
771
+ var origyearshtml,
772
+ numMonths = this._getNumberOfMonths(inst),
773
+ cols = numMonths[1],
774
+ width = 17;
775
+
776
+ inst.dpDiv.removeClass("ui-datepicker-multi-2 ui-datepicker-multi-3 ui-datepicker-multi-4").width("");
777
+ if (cols > 1) {
778
+ inst.dpDiv.addClass("ui-datepicker-multi-" + cols).css("width", (width * cols) + "em");
779
+ }
780
+ inst.dpDiv[(numMonths[0] !== 1 || numMonths[1] !== 1 ? "add" : "remove") +
781
+ "Class"]("ui-datepicker-multi");
782
+ inst.dpDiv[(this._get(inst, "isRTL") ? "add" : "remove") +
783
+ "Class"]("ui-datepicker-rtl");
784
+
785
+ if (inst === $.datepicker._curInst && $.datepicker._datepickerShowing && $.datepicker._shouldFocusInput( inst ) ) {
786
+ inst.input.focus();
787
+ }
788
+
789
+ // deffered render of the years select (to avoid flashes on Firefox)
790
+ if( inst.yearshtml ){
791
+ origyearshtml = inst.yearshtml;
792
+ setTimeout(function(){
793
+ //assure that inst.yearshtml didn't change.
794
+ if( origyearshtml === inst.yearshtml && inst.yearshtml ){
795
+ inst.dpDiv.find("select.ui-datepicker-year:first").replaceWith(inst.yearshtml);
796
+ }
797
+ origyearshtml = inst.yearshtml = null;
798
+ }, 0);
799
+ }
800
+ },
801
+
802
+ // #6694 - don't focus the input if it's already focused
803
+ // this breaks the change event in IE
804
+ // Support: IE and jQuery <1.9
805
+ _shouldFocusInput: function( inst ) {
806
+ return inst.input && inst.input.is( ":visible" ) && !inst.input.is( ":disabled" ) && !inst.input.is( ":focus" );
807
+ },
808
+
809
+ /* Check positioning to remain on screen. */
810
+ _checkOffset: function(inst, offset, isFixed) {
811
+ var dpWidth = inst.dpDiv.outerWidth(),
812
+ dpHeight = inst.dpDiv.outerHeight(),
813
+ inputWidth = inst.input ? inst.input.outerWidth() : 0,
814
+ inputHeight = inst.input ? inst.input.outerHeight() : 0,
815
+ viewWidth = document.documentElement.clientWidth + (isFixed ? 0 : $(document).scrollLeft()),
816
+ viewHeight = document.documentElement.clientHeight + (isFixed ? 0 : $(document).scrollTop());
817
+
818
+ offset.left -= (this._get(inst, "isRTL") ? (dpWidth - inputWidth) : 0);
819
+ offset.left -= (isFixed && offset.left === inst.input.offset().left) ? $(document).scrollLeft() : 0;
820
+ offset.top -= (isFixed && offset.top === (inst.input.offset().top + inputHeight)) ? $(document).scrollTop() : 0;
821
+
822
+ // now check if datepicker is showing outside window viewport - move to a better place if so.
823
+ offset.left -= Math.min(offset.left, (offset.left + dpWidth > viewWidth && viewWidth > dpWidth) ?
824
+ Math.abs(offset.left + dpWidth - viewWidth) : 0);
825
+ offset.top -= Math.min(offset.top, (offset.top + dpHeight > viewHeight && viewHeight > dpHeight) ?
826
+ Math.abs(dpHeight + inputHeight) : 0);
827
+
828
+ return offset;
829
+ },
830
+
831
+ /* Find an object's position on the screen. */
832
+ _findPos: function(obj) {
833
+ var position,
834
+ inst = this._getInst(obj),
835
+ isRTL = this._get(inst, "isRTL");
836
+
837
+ while (obj && (obj.type === "hidden" || obj.nodeType !== 1 || $.expr.filters.hidden(obj))) {
838
+ obj = obj[isRTL ? "previousSibling" : "nextSibling"];
839
+ }
840
+
841
+ position = $(obj).offset();
842
+ return [position.left, position.top];
843
+ },
844
+
845
+ /* Hide the date picker from view.
846
+ * @param input element - the input field attached to the date picker
847
+ */
848
+ _hideDatepicker: function(input) {
849
+ var showAnim, duration, postProcess, onClose,
850
+ inst = this._curInst;
851
+
852
+ if (!inst || (input && inst !== $.data(input, PROP_NAME))) {
853
+ return;
854
+ }
855
+
856
+ if (this._datepickerShowing) {
857
+ showAnim = this._get(inst, "showAnim");
858
+ duration = this._get(inst, "duration");
859
+ postProcess = function() {
860
+ $.datepicker._tidyDialog(inst);
861
+ };
862
+
863
+ // DEPRECATED: after BC for 1.8.x $.effects[ showAnim ] is not needed
864
+ if ( $.effects && ( $.effects.effect[ showAnim ] || $.effects[ showAnim ] ) ) {
865
+ inst.dpDiv.hide(showAnim, $.datepicker._get(inst, "showOptions"), duration, postProcess);
866
+ } else {
867
+ inst.dpDiv[(showAnim === "slideDown" ? "slideUp" :
868
+ (showAnim === "fadeIn" ? "fadeOut" : "hide"))]((showAnim ? duration : null), postProcess);
869
+ }
870
+
871
+ if (!showAnim) {
872
+ postProcess();
873
+ }
874
+ this._datepickerShowing = false;
875
+
876
+ onClose = this._get(inst, "onClose");
877
+ if (onClose) {
878
+ onClose.apply((inst.input ? inst.input[0] : null), [(inst.input ? inst.input.val() : ""), inst]);
879
+ }
880
+
881
+ this._lastInput = null;
882
+ if (this._inDialog) {
883
+ this._dialogInput.css({ position: "absolute", left: "0", top: "-100px" });
884
+ if ($.blockUI) {
885
+ $.unblockUI();
886
+ $("body").append(this.dpDiv);
887
+ }
888
+ }
889
+ this._inDialog = false;
890
+ }
891
+ },
892
+
893
+ /* Tidy up after a dialog display. */
894
+ _tidyDialog: function(inst) {
895
+ inst.dpDiv.removeClass(this._dialogClass).unbind(".ui-datepicker-calendar");
896
+ },
897
+
898
+ /* Close date picker if clicked elsewhere. */
899
+ _checkExternalClick: function(event) {
900
+ if (!$.datepicker._curInst) {
901
+ return;
902
+ }
903
+
904
+ var $target = $(event.target),
905
+ inst = $.datepicker._getInst($target[0]);
906
+
907
+ if ( ( ( $target[0].id !== $.datepicker._mainDivId &&
908
+ $target.parents("#" + $.datepicker._mainDivId).length === 0 &&
909
+ !$target.hasClass($.datepicker.markerClassName) &&
910
+ !$target.closest("." + $.datepicker._triggerClass).length &&
911
+ $.datepicker._datepickerShowing && !($.datepicker._inDialog && $.blockUI) ) ) ||
912
+ ( $target.hasClass($.datepicker.markerClassName) && $.datepicker._curInst !== inst ) ) {
913
+ $.datepicker._hideDatepicker();
914
+ }
915
+ },
916
+
917
+ /* Adjust one of the date sub-fields. */
918
+ _adjustDate: function(id, offset, period) {
919
+ var target = $(id),
920
+ inst = this._getInst(target[0]);
921
+
922
+ if (this._isDisabledDatepicker(target[0])) {
923
+ return;
924
+ }
925
+ this._adjustInstDate(inst, offset +
926
+ (period === "M" ? this._get(inst, "showCurrentAtPos") : 0), // undo positioning
927
+ period);
928
+ this._updateDatepicker(inst);
929
+ },
930
+
931
+ /* Action for current link. */
932
+ _gotoToday: function(id) {
933
+ var date,
934
+ target = $(id),
935
+ inst = this._getInst(target[0]);
936
+
937
+ if (this._get(inst, "gotoCurrent") && inst.currentDay) {
938
+ inst.selectedDay = inst.currentDay;
939
+ inst.drawMonth = inst.selectedMonth = inst.currentMonth;
940
+ inst.drawYear = inst.selectedYear = inst.currentYear;
941
+ } else {
942
+ date = new Date();
943
+ inst.selectedDay = date.getDate();
944
+ inst.drawMonth = inst.selectedMonth = date.getMonth();
945
+ inst.drawYear = inst.selectedYear = date.getFullYear();
946
+ }
947
+ this._notifyChange(inst);
948
+ this._adjustDate(target);
949
+ },
950
+
951
+ /* Action for selecting a new month/year. */
952
+ _selectMonthYear: function(id, select, period) {
953
+ var target = $(id),
954
+ inst = this._getInst(target[0]);
955
+
956
+ inst["selected" + (period === "M" ? "Month" : "Year")] =
957
+ inst["draw" + (period === "M" ? "Month" : "Year")] =
958
+ parseInt(select.options[select.selectedIndex].value,10);
959
+
960
+ this._notifyChange(inst);
961
+ this._adjustDate(target);
962
+ },
963
+
964
+ /* Action for selecting a day. */
965
+ _selectDay: function(id, month, year, td) {
966
+ var inst,
967
+ target = $(id);
968
+
969
+ if ($(td).hasClass(this._unselectableClass) || this._isDisabledDatepicker(target[0])) {
970
+ return;
971
+ }
972
+
973
+ inst = this._getInst(target[0]);
974
+ inst.selectedDay = inst.currentDay = $("a", td).html();
975
+ inst.selectedMonth = inst.currentMonth = month;
976
+ inst.selectedYear = inst.currentYear = year;
977
+ this._selectDate(id, this._formatDate(inst,
978
+ inst.currentDay, inst.currentMonth, inst.currentYear));
979
+ },
980
+
981
+ /* Erase the input field and hide the date picker. */
982
+ _clearDate: function(id) {
983
+ var target = $(id);
984
+ this._selectDate(target, "");
985
+ },
986
+
987
+ /* Update the input field with the selected date. */
988
+ _selectDate: function(id, dateStr) {
989
+ var onSelect,
990
+ target = $(id),
991
+ inst = this._getInst(target[0]);
992
+
993
+ dateStr = (dateStr != null ? dateStr : this._formatDate(inst));
994
+ if (inst.input) {
995
+ inst.input.val(dateStr);
996
+ }
997
+ this._updateAlternate(inst);
998
+
999
+ onSelect = this._get(inst, "onSelect");
1000
+ if (onSelect) {
1001
+ onSelect.apply((inst.input ? inst.input[0] : null), [dateStr, inst]); // trigger custom callback
1002
+ } else if (inst.input) {
1003
+ inst.input.trigger("change"); // fire the change event
1004
+ }
1005
+
1006
+ if (inst.inline){
1007
+ this._updateDatepicker(inst);
1008
+ } else {
1009
+ this._hideDatepicker();
1010
+ this._lastInput = inst.input[0];
1011
+ if (typeof(inst.input[0]) !== "object") {
1012
+ inst.input.focus(); // restore focus
1013
+ }
1014
+ this._lastInput = null;
1015
+ }
1016
+ },
1017
+
1018
+ /* Update any alternate field to synchronise with the main field. */
1019
+ _updateAlternate: function(inst) {
1020
+ var altFormat, date, dateStr,
1021
+ altField = this._get(inst, "altField");
1022
+
1023
+ if (altField) { // update alternate field too
1024
+ altFormat = this._get(inst, "altFormat") || this._get(inst, "dateFormat");
1025
+ date = this._getDate(inst);
1026
+ dateStr = this.formatDate(altFormat, date, this._getFormatConfig(inst));
1027
+ $(altField).each(function() { $(this).val(dateStr); });
1028
+ }
1029
+ },
1030
+
1031
+ /* Set as beforeShowDay function to prevent selection of weekends.
1032
+ * @param date Date - the date to customise
1033
+ * @return [boolean, string] - is this date selectable?, what is its CSS class?
1034
+ */
1035
+ noWeekends: function(date) {
1036
+ var day = date.getDay();
1037
+ return [(day > 0 && day < 6), ""];
1038
+ },
1039
+
1040
+ /* Set as calculateWeek to determine the week of the year based on the ISO 8601 definition.
1041
+ * @param date Date - the date to get the week for
1042
+ * @return number - the number of the week within the year that contains this date
1043
+ */
1044
+ iso8601Week: function(date) {
1045
+ var time,
1046
+ checkDate = new Date(date.getTime());
1047
+
1048
+ // Find Thursday of this week starting on Monday
1049
+ checkDate.setDate(checkDate.getDate() + 4 - (checkDate.getDay() || 7));
1050
+
1051
+ time = checkDate.getTime();
1052
+ checkDate.setMonth(0); // Compare with Jan 1
1053
+ checkDate.setDate(1);
1054
+ return Math.floor(Math.round((time - checkDate) / 86400000) / 7) + 1;
1055
+ },
1056
+
1057
+ /* Parse a string value into a date object.
1058
+ * See formatDate below for the possible formats.
1059
+ *
1060
+ * @param format string - the expected format of the date
1061
+ * @param value string - the date in the above format
1062
+ * @param settings Object - attributes include:
1063
+ * shortYearCutoff number - the cutoff year for determining the century (optional)
1064
+ * dayNamesShort string[7] - abbreviated names of the days from Sunday (optional)
1065
+ * dayNames string[7] - names of the days from Sunday (optional)
1066
+ * monthNamesShort string[12] - abbreviated names of the months (optional)
1067
+ * monthNames string[12] - names of the months (optional)
1068
+ * @return Date - the extracted date value or null if value is blank
1069
+ */
1070
+ parseDate: function (format, value, settings) {
1071
+ if (format == null || value == null) {
1072
+ throw "Invalid arguments";
1073
+ }
1074
+
1075
+ value = (typeof value === "object" ? value.toString() : value + "");
1076
+ if (value === "") {
1077
+ return null;
1078
+ }
1079
+
1080
+ var iFormat, dim, extra,
1081
+ iValue = 0,
1082
+ shortYearCutoffTemp = (settings ? settings.shortYearCutoff : null) || this._defaults.shortYearCutoff,
1083
+ shortYearCutoff = (typeof shortYearCutoffTemp !== "string" ? shortYearCutoffTemp :
1084
+ new Date().getFullYear() % 100 + parseInt(shortYearCutoffTemp, 10)),
1085
+ dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort,
1086
+ dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames,
1087
+ monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort,
1088
+ monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames,
1089
+ year = -1,
1090
+ month = -1,
1091
+ day = -1,
1092
+ doy = -1,
1093
+ literal = false,
1094
+ date,
1095
+ // Check whether a format character is doubled
1096
+ lookAhead = function(match) {
1097
+ var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);
1098
+ if (matches) {
1099
+ iFormat++;
1100
+ }
1101
+ return matches;
1102
+ },
1103
+ // Extract a number from the string value
1104
+ getNumber = function(match) {
1105
+ var isDoubled = lookAhead(match),
1106
+ size = (match === "@" ? 14 : (match === "!" ? 20 :
1107
+ (match === "y" && isDoubled ? 4 : (match === "o" ? 3 : 2)))),
1108
+ digits = new RegExp("^\\d{1," + size + "}"),
1109
+ num = value.substring(iValue).match(digits);
1110
+ if (!num) {
1111
+ throw "Missing number at position " + iValue;
1112
+ }
1113
+ iValue += num[0].length;
1114
+ return parseInt(num[0], 10);
1115
+ },
1116
+ // Extract a name from the string value and convert to an index
1117
+ getName = function(match, shortNames, longNames) {
1118
+ var index = -1,
1119
+ names = $.map(lookAhead(match) ? longNames : shortNames, function (v, k) {
1120
+ return [ [k, v] ];
1121
+ }).sort(function (a, b) {
1122
+ return -(a[1].length - b[1].length);
1123
+ });
1124
+
1125
+ $.each(names, function (i, pair) {
1126
+ var name = pair[1];
1127
+ if (value.substr(iValue, name.length).toLowerCase() === name.toLowerCase()) {
1128
+ index = pair[0];
1129
+ iValue += name.length;
1130
+ return false;
1131
+ }
1132
+ });
1133
+ if (index !== -1) {
1134
+ return index + 1;
1135
+ } else {
1136
+ throw "Unknown name at position " + iValue;
1137
+ }
1138
+ },
1139
+ // Confirm that a literal character matches the string value
1140
+ checkLiteral = function() {
1141
+ if (value.charAt(iValue) !== format.charAt(iFormat)) {
1142
+ throw "Unexpected literal at position " + iValue;
1143
+ }
1144
+ iValue++;
1145
+ };
1146
+
1147
+ for (iFormat = 0; iFormat < format.length; iFormat++) {
1148
+ if (literal) {
1149
+ if (format.charAt(iFormat) === "'" && !lookAhead("'")) {
1150
+ literal = false;
1151
+ } else {
1152
+ checkLiteral();
1153
+ }
1154
+ } else {
1155
+ switch (format.charAt(iFormat)) {
1156
+ case "d":
1157
+ day = getNumber("d");
1158
+ break;
1159
+ case "D":
1160
+ getName("D", dayNamesShort, dayNames);
1161
+ break;
1162
+ case "o":
1163
+ doy = getNumber("o");
1164
+ break;
1165
+ case "m":
1166
+ month = getNumber("m");
1167
+ break;
1168
+ case "M":
1169
+ month = getName("M", monthNamesShort, monthNames);
1170
+ break;
1171
+ case "y":
1172
+ year = getNumber("y");
1173
+ break;
1174
+ case "@":
1175
+ date = new Date(getNumber("@"));
1176
+ year = date.getFullYear();
1177
+ month = date.getMonth() + 1;
1178
+ day = date.getDate();
1179
+ break;
1180
+ case "!":
1181
+ date = new Date((getNumber("!") - this._ticksTo1970) / 10000);
1182
+ year = date.getFullYear();
1183
+ month = date.getMonth() + 1;
1184
+ day = date.getDate();
1185
+ break;
1186
+ case "'":
1187
+ if (lookAhead("'")){
1188
+ checkLiteral();
1189
+ } else {
1190
+ literal = true;
1191
+ }
1192
+ break;
1193
+ default:
1194
+ checkLiteral();
1195
+ }
1196
+ }
1197
+ }
1198
+
1199
+ if (iValue < value.length){
1200
+ extra = value.substr(iValue);
1201
+ if (!/^\s+/.test(extra)) {
1202
+ throw "Extra/unparsed characters found in date: " + extra;
1203
+ }
1204
+ }
1205
+
1206
+ if (year === -1) {
1207
+ year = new Date().getFullYear();
1208
+ } else if (year < 100) {
1209
+ year += new Date().getFullYear() - new Date().getFullYear() % 100 +
1210
+ (year <= shortYearCutoff ? 0 : -100);
1211
+ }
1212
+
1213
+ if (doy > -1) {
1214
+ month = 1;
1215
+ day = doy;
1216
+ do {
1217
+ dim = this._getDaysInMonth(year, month - 1);
1218
+ if (day <= dim) {
1219
+ break;
1220
+ }
1221
+ month++;
1222
+ day -= dim;
1223
+ } while (true);
1224
+ }
1225
+
1226
+ date = this._daylightSavingAdjust(new Date(year, month - 1, day));
1227
+ if (date.getFullYear() !== year || date.getMonth() + 1 !== month || date.getDate() !== day) {
1228
+ throw "Invalid date"; // E.g. 31/02/00
1229
+ }
1230
+ return date;
1231
+ },
1232
+
1233
+ /* Standard date formats. */
1234
+ ATOM: "yy-mm-dd", // RFC 3339 (ISO 8601)
1235
+ COOKIE: "D, dd M yy",
1236
+ ISO_8601: "yy-mm-dd",
1237
+ RFC_822: "D, d M y",
1238
+ RFC_850: "DD, dd-M-y",
1239
+ RFC_1036: "D, d M y",
1240
+ RFC_1123: "D, d M yy",
1241
+ RFC_2822: "D, d M yy",
1242
+ RSS: "D, d M y", // RFC 822
1243
+ TICKS: "!",
1244
+ TIMESTAMP: "@",
1245
+ W3C: "yy-mm-dd", // ISO 8601
1246
+
1247
+ _ticksTo1970: (((1970 - 1) * 365 + Math.floor(1970 / 4) - Math.floor(1970 / 100) +
1248
+ Math.floor(1970 / 400)) * 24 * 60 * 60 * 10000000),
1249
+
1250
+ /* Format a date object into a string value.
1251
+ * The format can be combinations of the following:
1252
+ * d - day of month (no leading zero)
1253
+ * dd - day of month (two digit)
1254
+ * o - day of year (no leading zeros)
1255
+ * oo - day of year (three digit)
1256
+ * D - day name short
1257
+ * DD - day name long
1258
+ * m - month of year (no leading zero)
1259
+ * mm - month of year (two digit)
1260
+ * M - month name short
1261
+ * MM - month name long
1262
+ * y - year (two digit)
1263
+ * yy - year (four digit)
1264
+ * @ - Unix timestamp (ms since 01/01/1970)
1265
+ * ! - Windows ticks (100ns since 01/01/0001)
1266
+ * "..." - literal text
1267
+ * '' - single quote
1268
+ *
1269
+ * @param format string - the desired format of the date
1270
+ * @param date Date - the date value to format
1271
+ * @param settings Object - attributes include:
1272
+ * dayNamesShort string[7] - abbreviated names of the days from Sunday (optional)
1273
+ * dayNames string[7] - names of the days from Sunday (optional)
1274
+ * monthNamesShort string[12] - abbreviated names of the months (optional)
1275
+ * monthNames string[12] - names of the months (optional)
1276
+ * @return string - the date in the above format
1277
+ */
1278
+ formatDate: function (format, date, settings) {
1279
+ if (!date) {
1280
+ return "";
1281
+ }
1282
+
1283
+ var iFormat,
1284
+ dayNamesShort = (settings ? settings.dayNamesShort : null) || this._defaults.dayNamesShort,
1285
+ dayNames = (settings ? settings.dayNames : null) || this._defaults.dayNames,
1286
+ monthNamesShort = (settings ? settings.monthNamesShort : null) || this._defaults.monthNamesShort,
1287
+ monthNames = (settings ? settings.monthNames : null) || this._defaults.monthNames,
1288
+ // Check whether a format character is doubled
1289
+ lookAhead = function(match) {
1290
+ var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);
1291
+ if (matches) {
1292
+ iFormat++;
1293
+ }
1294
+ return matches;
1295
+ },
1296
+ // Format a number, with leading zero if necessary
1297
+ formatNumber = function(match, value, len) {
1298
+ var num = "" + value;
1299
+ if (lookAhead(match)) {
1300
+ while (num.length < len) {
1301
+ num = "0" + num;
1302
+ }
1303
+ }
1304
+ return num;
1305
+ },
1306
+ // Format a name, short or long as requested
1307
+ formatName = function(match, value, shortNames, longNames) {
1308
+ return (lookAhead(match) ? longNames[value] : shortNames[value]);
1309
+ },
1310
+ output = "",
1311
+ literal = false;
1312
+
1313
+ if (date) {
1314
+ for (iFormat = 0; iFormat < format.length; iFormat++) {
1315
+ if (literal) {
1316
+ if (format.charAt(iFormat) === "'" && !lookAhead("'")) {
1317
+ literal = false;
1318
+ } else {
1319
+ output += format.charAt(iFormat);
1320
+ }
1321
+ } else {
1322
+ switch (format.charAt(iFormat)) {
1323
+ case "d":
1324
+ output += formatNumber("d", date.getDate(), 2);
1325
+ break;
1326
+ case "D":
1327
+ output += formatName("D", date.getDay(), dayNamesShort, dayNames);
1328
+ break;
1329
+ case "o":
1330
+ output += formatNumber("o",
1331
+ Math.round((new Date(date.getFullYear(), date.getMonth(), date.getDate()).getTime() - new Date(date.getFullYear(), 0, 0).getTime()) / 86400000), 3);
1332
+ break;
1333
+ case "m":
1334
+ output += formatNumber("m", date.getMonth() + 1, 2);
1335
+ break;
1336
+ case "M":
1337
+ output += formatName("M", date.getMonth(), monthNamesShort, monthNames);
1338
+ break;
1339
+ case "y":
1340
+ output += (lookAhead("y") ? date.getFullYear() :
1341
+ (date.getYear() % 100 < 10 ? "0" : "") + date.getYear() % 100);
1342
+ break;
1343
+ case "@":
1344
+ output += date.getTime();
1345
+ break;
1346
+ case "!":
1347
+ output += date.getTime() * 10000 + this._ticksTo1970;
1348
+ break;
1349
+ case "'":
1350
+ if (lookAhead("'")) {
1351
+ output += "'";
1352
+ } else {
1353
+ literal = true;
1354
+ }
1355
+ break;
1356
+ default:
1357
+ output += format.charAt(iFormat);
1358
+ }
1359
+ }
1360
+ }
1361
+ }
1362
+ return output;
1363
+ },
1364
+
1365
+ /* Extract all possible characters from the date format. */
1366
+ _possibleChars: function (format) {
1367
+ var iFormat,
1368
+ chars = "",
1369
+ literal = false,
1370
+ // Check whether a format character is doubled
1371
+ lookAhead = function(match) {
1372
+ var matches = (iFormat + 1 < format.length && format.charAt(iFormat + 1) === match);
1373
+ if (matches) {
1374
+ iFormat++;
1375
+ }
1376
+ return matches;
1377
+ };
1378
+
1379
+ for (iFormat = 0; iFormat < format.length; iFormat++) {
1380
+ if (literal) {
1381
+ if (format.charAt(iFormat) === "'" && !lookAhead("'")) {
1382
+ literal = false;
1383
+ } else {
1384
+ chars += format.charAt(iFormat);
1385
+ }
1386
+ } else {
1387
+ switch (format.charAt(iFormat)) {
1388
+ case "d": case "m": case "y": case "@":
1389
+ chars += "0123456789";
1390
+ break;
1391
+ case "D": case "M":
1392
+ return null; // Accept anything
1393
+ case "'":
1394
+ if (lookAhead("'")) {
1395
+ chars += "'";
1396
+ } else {
1397
+ literal = true;
1398
+ }
1399
+ break;
1400
+ default:
1401
+ chars += format.charAt(iFormat);
1402
+ }
1403
+ }
1404
+ }
1405
+ return chars;
1406
+ },
1407
+
1408
+ /* Get a setting value, defaulting if necessary. */
1409
+ _get: function(inst, name) {
1410
+ return inst.settings[name] !== undefined ?
1411
+ inst.settings[name] : this._defaults[name];
1412
+ },
1413
+
1414
+ /* Parse existing date and initialise date picker. */
1415
+ _setDateFromField: function(inst, noDefault) {
1416
+ if (inst.input.val() === inst.lastVal) {
1417
+ return;
1418
+ }
1419
+
1420
+ var dateFormat = this._get(inst, "dateFormat"),
1421
+ dates = inst.lastVal = inst.input ? inst.input.val() : null,
1422
+ defaultDate = this._getDefaultDate(inst),
1423
+ date = defaultDate,
1424
+ settings = this._getFormatConfig(inst);
1425
+
1426
+ try {
1427
+ date = this.parseDate(dateFormat, dates, settings) || defaultDate;
1428
+ } catch (event) {
1429
+ dates = (noDefault ? "" : dates);
1430
+ }
1431
+ inst.selectedDay = date.getDate();
1432
+ inst.drawMonth = inst.selectedMonth = date.getMonth();
1433
+ inst.drawYear = inst.selectedYear = date.getFullYear();
1434
+ inst.currentDay = (dates ? date.getDate() : 0);
1435
+ inst.currentMonth = (dates ? date.getMonth() : 0);
1436
+ inst.currentYear = (dates ? date.getFullYear() : 0);
1437
+ this._adjustInstDate(inst);
1438
+ },
1439
+
1440
+ /* Retrieve the default date shown on opening. */
1441
+ _getDefaultDate: function(inst) {
1442
+ return this._restrictMinMax(inst,
1443
+ this._determineDate(inst, this._get(inst, "defaultDate"), new Date()));
1444
+ },
1445
+
1446
+ /* A date may be specified as an exact value or a relative one. */
1447
+ _determineDate: function(inst, date, defaultDate) {
1448
+ var offsetNumeric = function(offset) {
1449
+ var date = new Date();
1450
+ date.setDate(date.getDate() + offset);
1451
+ return date;
1452
+ },
1453
+ offsetString = function(offset) {
1454
+ try {
1455
+ return $.datepicker.parseDate($.datepicker._get(inst, "dateFormat"),
1456
+ offset, $.datepicker._getFormatConfig(inst));
1457
+ }
1458
+ catch (e) {
1459
+ // Ignore
1460
+ }
1461
+
1462
+ var date = (offset.toLowerCase().match(/^c/) ?
1463
+ $.datepicker._getDate(inst) : null) || new Date(),
1464
+ year = date.getFullYear(),
1465
+ month = date.getMonth(),
1466
+ day = date.getDate(),
1467
+ pattern = /([+\-]?[0-9]+)\s*(d|D|w|W|m|M|y|Y)?/g,
1468
+ matches = pattern.exec(offset);
1469
+
1470
+ while (matches) {
1471
+ switch (matches[2] || "d") {
1472
+ case "d" : case "D" :
1473
+ day += parseInt(matches[1],10); break;
1474
+ case "w" : case "W" :
1475
+ day += parseInt(matches[1],10) * 7; break;
1476
+ case "m" : case "M" :
1477
+ month += parseInt(matches[1],10);
1478
+ day = Math.min(day, $.datepicker._getDaysInMonth(year, month));
1479
+ break;
1480
+ case "y": case "Y" :
1481
+ year += parseInt(matches[1],10);
1482
+ day = Math.min(day, $.datepicker._getDaysInMonth(year, month));
1483
+ break;
1484
+ }
1485
+ matches = pattern.exec(offset);
1486
+ }
1487
+ return new Date(year, month, day);
1488
+ },
1489
+ newDate = (date == null || date === "" ? defaultDate : (typeof date === "string" ? offsetString(date) :
1490
+ (typeof date === "number" ? (isNaN(date) ? defaultDate : offsetNumeric(date)) : new Date(date.getTime()))));
1491
+
1492
+ newDate = (newDate && newDate.toString() === "Invalid Date" ? defaultDate : newDate);
1493
+ if (newDate) {
1494
+ newDate.setHours(0);
1495
+ newDate.setMinutes(0);
1496
+ newDate.setSeconds(0);
1497
+ newDate.setMilliseconds(0);
1498
+ }
1499
+ return this._daylightSavingAdjust(newDate);
1500
+ },
1501
+
1502
+ /* Handle switch to/from daylight saving.
1503
+ * Hours may be non-zero on daylight saving cut-over:
1504
+ * > 12 when midnight changeover, but then cannot generate
1505
+ * midnight datetime, so jump to 1AM, otherwise reset.
1506
+ * @param date (Date) the date to check
1507
+ * @return (Date) the corrected date
1508
+ */
1509
+ _daylightSavingAdjust: function(date) {
1510
+ if (!date) {
1511
+ return null;
1512
+ }
1513
+ date.setHours(date.getHours() > 12 ? date.getHours() + 2 : 0);
1514
+ return date;
1515
+ },
1516
+
1517
+ /* Set the date(s) directly. */
1518
+ _setDate: function(inst, date, noChange) {
1519
+ var clear = !date,
1520
+ origMonth = inst.selectedMonth,
1521
+ origYear = inst.selectedYear,
1522
+ newDate = this._restrictMinMax(inst, this._determineDate(inst, date, new Date()));
1523
+
1524
+ inst.selectedDay = inst.currentDay = newDate.getDate();
1525
+ inst.drawMonth = inst.selectedMonth = inst.currentMonth = newDate.getMonth();
1526
+ inst.drawYear = inst.selectedYear = inst.currentYear = newDate.getFullYear();
1527
+ if ((origMonth !== inst.selectedMonth || origYear !== inst.selectedYear) && !noChange) {
1528
+ this._notifyChange(inst);
1529
+ }
1530
+ this._adjustInstDate(inst);
1531
+ if (inst.input) {
1532
+ inst.input.val(clear ? "" : this._formatDate(inst));
1533
+ }
1534
+ },
1535
+
1536
+ /* Retrieve the date(s) directly. */
1537
+ _getDate: function(inst) {
1538
+ var startDate = (!inst.currentYear || (inst.input && inst.input.val() === "") ? null :
1539
+ this._daylightSavingAdjust(new Date(
1540
+ inst.currentYear, inst.currentMonth, inst.currentDay)));
1541
+ return startDate;
1542
+ },
1543
+
1544
+ /* Attach the onxxx handlers. These are declared statically so
1545
+ * they work with static code transformers like Caja.
1546
+ */
1547
+ _attachHandlers: function(inst) {
1548
+ var stepMonths = this._get(inst, "stepMonths"),
1549
+ id = "#" + inst.id.replace( /\\\\/g, "\\" );
1550
+ inst.dpDiv.find("[data-handler]").map(function () {
1551
+ var handler = {
1552
+ prev: function () {
1553
+ $.datepicker._adjustDate(id, -stepMonths, "M");
1554
+ },
1555
+ next: function () {
1556
+ $.datepicker._adjustDate(id, +stepMonths, "M");
1557
+ },
1558
+ hide: function () {
1559
+ $.datepicker._hideDatepicker();
1560
+ },
1561
+ today: function () {
1562
+ $.datepicker._gotoToday(id);
1563
+ },
1564
+ selectDay: function () {
1565
+ $.datepicker._selectDay(id, +this.getAttribute("data-month"), +this.getAttribute("data-year"), this);
1566
+ return false;
1567
+ },
1568
+ selectMonth: function () {
1569
+ $.datepicker._selectMonthYear(id, this, "M");
1570
+ return false;
1571
+ },
1572
+ selectYear: function () {
1573
+ $.datepicker._selectMonthYear(id, this, "Y");
1574
+ return false;
1575
+ }
1576
+ };
1577
+ $(this).bind(this.getAttribute("data-event"), handler[this.getAttribute("data-handler")]);
1578
+ });
1579
+ },
1580
+
1581
+ /* Generate the HTML for the current state of the date picker. */
1582
+ _generateHTML: function(inst) {
1583
+ var maxDraw, prevText, prev, nextText, next, currentText, gotoDate,
1584
+ controls, buttonPanel, firstDay, showWeek, dayNames, dayNamesMin,
1585
+ monthNames, monthNamesShort, beforeShowDay, showOtherMonths,
1586
+ selectOtherMonths, defaultDate, html, dow, row, group, col, selectedDate,
1587
+ cornerClass, calender, thead, day, daysInMonth, leadDays, curRows, numRows,
1588
+ printDate, dRow, tbody, daySettings, otherMonth, unselectable,
1589
+ tempDate = new Date(),
1590
+ today = this._daylightSavingAdjust(
1591
+ new Date(tempDate.getFullYear(), tempDate.getMonth(), tempDate.getDate())), // clear time
1592
+ isRTL = this._get(inst, "isRTL"),
1593
+ showButtonPanel = this._get(inst, "showButtonPanel"),
1594
+ hideIfNoPrevNext = this._get(inst, "hideIfNoPrevNext"),
1595
+ navigationAsDateFormat = this._get(inst, "navigationAsDateFormat"),
1596
+ numMonths = this._getNumberOfMonths(inst),
1597
+ showCurrentAtPos = this._get(inst, "showCurrentAtPos"),
1598
+ stepMonths = this._get(inst, "stepMonths"),
1599
+ isMultiMonth = (numMonths[0] !== 1 || numMonths[1] !== 1),
1600
+ currentDate = this._daylightSavingAdjust((!inst.currentDay ? new Date(9999, 9, 9) :
1601
+ new Date(inst.currentYear, inst.currentMonth, inst.currentDay))),
1602
+ minDate = this._getMinMaxDate(inst, "min"),
1603
+ maxDate = this._getMinMaxDate(inst, "max"),
1604
+ drawMonth = inst.drawMonth - showCurrentAtPos,
1605
+ drawYear = inst.drawYear;
1606
+
1607
+ if (drawMonth < 0) {
1608
+ drawMonth += 12;
1609
+ drawYear--;
1610
+ }
1611
+ if (maxDate) {
1612
+ maxDraw = this._daylightSavingAdjust(new Date(maxDate.getFullYear(),
1613
+ maxDate.getMonth() - (numMonths[0] * numMonths[1]) + 1, maxDate.getDate()));
1614
+ maxDraw = (minDate && maxDraw < minDate ? minDate : maxDraw);
1615
+ while (this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1)) > maxDraw) {
1616
+ drawMonth--;
1617
+ if (drawMonth < 0) {
1618
+ drawMonth = 11;
1619
+ drawYear--;
1620
+ }
1621
+ }
1622
+ }
1623
+ inst.drawMonth = drawMonth;
1624
+ inst.drawYear = drawYear;
1625
+
1626
+ prevText = this._get(inst, "prevText");
1627
+ prevText = (!navigationAsDateFormat ? prevText : this.formatDate(prevText,
1628
+ this._daylightSavingAdjust(new Date(drawYear, drawMonth - stepMonths, 1)),
1629
+ this._getFormatConfig(inst)));
1630
+
1631
+ prev = (this._canAdjustMonth(inst, -1, drawYear, drawMonth) ?
1632
+ "<a class='ui-datepicker-prev ui-corner-all' data-handler='prev' data-event='click'" +
1633
+ " title='" + prevText + "'><span class='ui-icon ui-icon-circle-triangle-" + ( isRTL ? "e" : "w") + "'>" + prevText + "</span></a>" :
1634
+ (hideIfNoPrevNext ? "" : "<a class='ui-datepicker-prev ui-corner-all ui-state-disabled' title='"+ prevText +"'><span class='ui-icon ui-icon-circle-triangle-" + ( isRTL ? "e" : "w") + "'>" + prevText + "</span></a>"));
1635
+
1636
+ nextText = this._get(inst, "nextText");
1637
+ nextText = (!navigationAsDateFormat ? nextText : this.formatDate(nextText,
1638
+ this._daylightSavingAdjust(new Date(drawYear, drawMonth + stepMonths, 1)),
1639
+ this._getFormatConfig(inst)));
1640
+
1641
+ next = (this._canAdjustMonth(inst, +1, drawYear, drawMonth) ?
1642
+ "<a class='ui-datepicker-next ui-corner-all' data-handler='next' data-event='click'" +
1643
+ " title='" + nextText + "'><span class='ui-icon ui-icon-circle-triangle-" + ( isRTL ? "w" : "e") + "'>" + nextText + "</span></a>" :
1644
+ (hideIfNoPrevNext ? "" : "<a class='ui-datepicker-next ui-corner-all ui-state-disabled' title='"+ nextText + "'><span class='ui-icon ui-icon-circle-triangle-" + ( isRTL ? "w" : "e") + "'>" + nextText + "</span></a>"));
1645
+
1646
+ currentText = this._get(inst, "currentText");
1647
+ gotoDate = (this._get(inst, "gotoCurrent") && inst.currentDay ? currentDate : today);
1648
+ currentText = (!navigationAsDateFormat ? currentText :
1649
+ this.formatDate(currentText, gotoDate, this._getFormatConfig(inst)));
1650
+
1651
+ controls = (!inst.inline ? "<button type='button' class='ui-datepicker-close ui-state-default ui-priority-primary ui-corner-all' data-handler='hide' data-event='click'>" +
1652
+ this._get(inst, "closeText") + "</button>" : "");
1653
+
1654
+ buttonPanel = (showButtonPanel) ? "<div class='ui-datepicker-buttonpane ui-widget-content'>" + (isRTL ? controls : "") +
1655
+ (this._isInRange(inst, gotoDate) ? "<button type='button' class='ui-datepicker-current ui-state-default ui-priority-secondary ui-corner-all' data-handler='today' data-event='click'" +
1656
+ ">" + currentText + "</button>" : "") + (isRTL ? "" : controls) + "</div>" : "";
1657
+
1658
+ firstDay = parseInt(this._get(inst, "firstDay"),10);
1659
+ firstDay = (isNaN(firstDay) ? 0 : firstDay);
1660
+
1661
+ showWeek = this._get(inst, "showWeek");
1662
+ dayNames = this._get(inst, "dayNames");
1663
+ dayNamesMin = this._get(inst, "dayNamesMin");
1664
+ monthNames = this._get(inst, "monthNames");
1665
+ monthNamesShort = this._get(inst, "monthNamesShort");
1666
+ beforeShowDay = this._get(inst, "beforeShowDay");
1667
+ showOtherMonths = this._get(inst, "showOtherMonths");
1668
+ selectOtherMonths = this._get(inst, "selectOtherMonths");
1669
+ defaultDate = this._getDefaultDate(inst);
1670
+ html = "";
1671
+ dow;
1672
+ for (row = 0; row < numMonths[0]; row++) {
1673
+ group = "";
1674
+ this.maxRows = 4;
1675
+ for (col = 0; col < numMonths[1]; col++) {
1676
+ selectedDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, inst.selectedDay));
1677
+ cornerClass = " ui-corner-all";
1678
+ calender = "";
1679
+ if (isMultiMonth) {
1680
+ calender += "<div class='ui-datepicker-group";
1681
+ if (numMonths[1] > 1) {
1682
+ switch (col) {
1683
+ case 0: calender += " ui-datepicker-group-first";
1684
+ cornerClass = " ui-corner-" + (isRTL ? "right" : "left"); break;
1685
+ case numMonths[1]-1: calender += " ui-datepicker-group-last";
1686
+ cornerClass = " ui-corner-" + (isRTL ? "left" : "right"); break;
1687
+ default: calender += " ui-datepicker-group-middle"; cornerClass = ""; break;
1688
+ }
1689
+ }
1690
+ calender += "'>";
1691
+ }
1692
+ calender += "<div class='ui-datepicker-header ui-widget-header ui-helper-clearfix" + cornerClass + "'>" +
1693
+ (/all|left/.test(cornerClass) && row === 0 ? (isRTL ? next : prev) : "") +
1694
+ (/all|right/.test(cornerClass) && row === 0 ? (isRTL ? prev : next) : "") +
1695
+ this._generateMonthYearHeader(inst, drawMonth, drawYear, minDate, maxDate,
1696
+ row > 0 || col > 0, monthNames, monthNamesShort) + // draw month headers
1697
+ "</div><table class='ui-datepicker-calendar'><thead>" +
1698
+ "<tr>";
1699
+ thead = (showWeek ? "<th class='ui-datepicker-week-col'>" + this._get(inst, "weekHeader") + "</th>" : "");
1700
+ for (dow = 0; dow < 7; dow++) { // days of the week
1701
+ day = (dow + firstDay) % 7;
1702
+ thead += "<th" + ((dow + firstDay + 6) % 7 >= 5 ? " class='ui-datepicker-week-end'" : "") + ">" +
1703
+ "<span title='" + dayNames[day] + "'>" + dayNamesMin[day] + "</span></th>";
1704
+ }
1705
+ calender += thead + "</tr></thead><tbody>";
1706
+ daysInMonth = this._getDaysInMonth(drawYear, drawMonth);
1707
+ if (drawYear === inst.selectedYear && drawMonth === inst.selectedMonth) {
1708
+ inst.selectedDay = Math.min(inst.selectedDay, daysInMonth);
1709
+ }
1710
+ leadDays = (this._getFirstDayOfMonth(drawYear, drawMonth) - firstDay + 7) % 7;
1711
+ curRows = Math.ceil((leadDays + daysInMonth) / 7); // calculate the number of rows to generate
1712
+ numRows = (isMultiMonth ? this.maxRows > curRows ? this.maxRows : curRows : curRows); //If multiple months, use the higher number of rows (see #7043)
1713
+ this.maxRows = numRows;
1714
+ printDate = this._daylightSavingAdjust(new Date(drawYear, drawMonth, 1 - leadDays));
1715
+ for (dRow = 0; dRow < numRows; dRow++) { // create date picker rows
1716
+ calender += "<tr>";
1717
+ tbody = (!showWeek ? "" : "<td class='ui-datepicker-week-col'>" +
1718
+ this._get(inst, "calculateWeek")(printDate) + "</td>");
1719
+ for (dow = 0; dow < 7; dow++) { // create date picker days
1720
+ daySettings = (beforeShowDay ?
1721
+ beforeShowDay.apply((inst.input ? inst.input[0] : null), [printDate]) : [true, ""]);
1722
+ otherMonth = (printDate.getMonth() !== drawMonth);
1723
+ unselectable = (otherMonth && !selectOtherMonths) || !daySettings[0] ||
1724
+ (minDate && printDate < minDate) || (maxDate && printDate > maxDate);
1725
+ tbody += "<td class='" +
1726
+ ((dow + firstDay + 6) % 7 >= 5 ? " ui-datepicker-week-end" : "") + // highlight weekends
1727
+ (otherMonth ? " ui-datepicker-other-month" : "") + // highlight days from other months
1728
+ ((printDate.getTime() === selectedDate.getTime() && drawMonth === inst.selectedMonth && inst._keyEvent) || // user pressed key
1729
+ (defaultDate.getTime() === printDate.getTime() && defaultDate.getTime() === selectedDate.getTime()) ?
1730
+ // or defaultDate is current printedDate and defaultDate is selectedDate
1731
+ " " + this._dayOverClass : "") + // highlight selected day
1732
+ (unselectable ? " " + this._unselectableClass + " ui-state-disabled": "") + // highlight unselectable days
1733
+ (otherMonth && !showOtherMonths ? "" : " " + daySettings[1] + // highlight custom dates
1734
+ (printDate.getTime() === currentDate.getTime() ? " " + this._currentClass : "") + // highlight selected day
1735
+ (printDate.getTime() === today.getTime() ? " ui-datepicker-today" : "")) + "'" + // highlight today (if different)
1736
+ ((!otherMonth || showOtherMonths) && daySettings[2] ? " title='" + daySettings[2].replace(/'/g, "&#39;") + "'" : "") + // cell title
1737
+ (unselectable ? "" : " data-handler='selectDay' data-event='click' data-month='" + printDate.getMonth() + "' data-year='" + printDate.getFullYear() + "'") + ">" + // actions
1738
+ (otherMonth && !showOtherMonths ? "&#xa0;" : // display for other months
1739
+ (unselectable ? "<span class='ui-state-default'>" + printDate.getDate() + "</span>" : "<a class='ui-state-default" +
1740
+ (printDate.getTime() === today.getTime() ? " ui-state-highlight" : "") +
1741
+ (printDate.getTime() === currentDate.getTime() ? " ui-state-active" : "") + // highlight selected day
1742
+ (otherMonth ? " ui-priority-secondary" : "") + // distinguish dates from other months
1743
+ "' href='#'>" + printDate.getDate() + "</a>")) + "</td>"; // display selectable date
1744
+ printDate.setDate(printDate.getDate() + 1);
1745
+ printDate = this._daylightSavingAdjust(printDate);
1746
+ }
1747
+ calender += tbody + "</tr>";
1748
+ }
1749
+ drawMonth++;
1750
+ if (drawMonth > 11) {
1751
+ drawMonth = 0;
1752
+ drawYear++;
1753
+ }
1754
+ calender += "</tbody></table>" + (isMultiMonth ? "</div>" +
1755
+ ((numMonths[0] > 0 && col === numMonths[1]-1) ? "<div class='ui-datepicker-row-break'></div>" : "") : "");
1756
+ group += calender;
1757
+ }
1758
+ html += group;
1759
+ }
1760
+ html += buttonPanel;
1761
+ inst._keyEvent = false;
1762
+ return html;
1763
+ },
1764
+
1765
+ /* Generate the month and year header. */
1766
+ _generateMonthYearHeader: function(inst, drawMonth, drawYear, minDate, maxDate,
1767
+ secondary, monthNames, monthNamesShort) {
1768
+
1769
+ var inMinYear, inMaxYear, month, years, thisYear, determineYear, year, endYear,
1770
+ changeMonth = this._get(inst, "changeMonth"),
1771
+ changeYear = this._get(inst, "changeYear"),
1772
+ showMonthAfterYear = this._get(inst, "showMonthAfterYear"),
1773
+ html = "<div class='ui-datepicker-title'>",
1774
+ monthHtml = "";
1775
+
1776
+ // month selection
1777
+ if (secondary || !changeMonth) {
1778
+ monthHtml += "<span class='ui-datepicker-month'>" + monthNames[drawMonth] + "</span>";
1779
+ } else {
1780
+ inMinYear = (minDate && minDate.getFullYear() === drawYear);
1781
+ inMaxYear = (maxDate && maxDate.getFullYear() === drawYear);
1782
+ monthHtml += "<select class='ui-datepicker-month' data-handler='selectMonth' data-event='change'>";
1783
+ for ( month = 0; month < 12; month++) {
1784
+ if ((!inMinYear || month >= minDate.getMonth()) && (!inMaxYear || month <= maxDate.getMonth())) {
1785
+ monthHtml += "<option value='" + month + "'" +
1786
+ (month === drawMonth ? " selected='selected'" : "") +
1787
+ ">" + monthNamesShort[month] + "</option>";
1788
+ }
1789
+ }
1790
+ monthHtml += "</select>";
1791
+ }
1792
+
1793
+ if (!showMonthAfterYear) {
1794
+ html += monthHtml + (secondary || !(changeMonth && changeYear) ? "&#xa0;" : "");
1795
+ }
1796
+
1797
+ // year selection
1798
+ if ( !inst.yearshtml ) {
1799
+ inst.yearshtml = "";
1800
+ if (secondary || !changeYear) {
1801
+ html += "<span class='ui-datepicker-year'>" + drawYear + "</span>";
1802
+ } else {
1803
+ // determine range of years to display
1804
+ years = this._get(inst, "yearRange").split(":");
1805
+ thisYear = new Date().getFullYear();
1806
+ determineYear = function(value) {
1807
+ var year = (value.match(/c[+\-].*/) ? drawYear + parseInt(value.substring(1), 10) :
1808
+ (value.match(/[+\-].*/) ? thisYear + parseInt(value, 10) :
1809
+ parseInt(value, 10)));
1810
+ return (isNaN(year) ? thisYear : year);
1811
+ };
1812
+ year = determineYear(years[0]);
1813
+ endYear = Math.max(year, determineYear(years[1] || ""));
1814
+ year = (minDate ? Math.max(year, minDate.getFullYear()) : year);
1815
+ endYear = (maxDate ? Math.min(endYear, maxDate.getFullYear()) : endYear);
1816
+ inst.yearshtml += "<select class='ui-datepicker-year' data-handler='selectYear' data-event='change'>";
1817
+ for (; year <= endYear; year++) {
1818
+ inst.yearshtml += "<option value='" + year + "'" +
1819
+ (year === drawYear ? " selected='selected'" : "") +
1820
+ ">" + year + "</option>";
1821
+ }
1822
+ inst.yearshtml += "</select>";
1823
+
1824
+ html += inst.yearshtml;
1825
+ inst.yearshtml = null;
1826
+ }
1827
+ }
1828
+
1829
+ html += this._get(inst, "yearSuffix");
1830
+ if (showMonthAfterYear) {
1831
+ html += (secondary || !(changeMonth && changeYear) ? "&#xa0;" : "") + monthHtml;
1832
+ }
1833
+ html += "</div>"; // Close datepicker_header
1834
+ return html;
1835
+ },
1836
+
1837
+ /* Adjust one of the date sub-fields. */
1838
+ _adjustInstDate: function(inst, offset, period) {
1839
+ var year = inst.drawYear + (period === "Y" ? offset : 0),
1840
+ month = inst.drawMonth + (period === "M" ? offset : 0),
1841
+ day = Math.min(inst.selectedDay, this._getDaysInMonth(year, month)) + (period === "D" ? offset : 0),
1842
+ date = this._restrictMinMax(inst, this._daylightSavingAdjust(new Date(year, month, day)));
1843
+
1844
+ inst.selectedDay = date.getDate();
1845
+ inst.drawMonth = inst.selectedMonth = date.getMonth();
1846
+ inst.drawYear = inst.selectedYear = date.getFullYear();
1847
+ if (period === "M" || period === "Y") {
1848
+ this._notifyChange(inst);
1849
+ }
1850
+ },
1851
+
1852
+ /* Ensure a date is within any min/max bounds. */
1853
+ _restrictMinMax: function(inst, date) {
1854
+ var minDate = this._getMinMaxDate(inst, "min"),
1855
+ maxDate = this._getMinMaxDate(inst, "max"),
1856
+ newDate = (minDate && date < minDate ? minDate : date);
1857
+ return (maxDate && newDate > maxDate ? maxDate : newDate);
1858
+ },
1859
+
1860
+ /* Notify change of month/year. */
1861
+ _notifyChange: function(inst) {
1862
+ var onChange = this._get(inst, "onChangeMonthYear");
1863
+ if (onChange) {
1864
+ onChange.apply((inst.input ? inst.input[0] : null),
1865
+ [inst.selectedYear, inst.selectedMonth + 1, inst]);
1866
+ }
1867
+ },
1868
+
1869
+ /* Determine the number of months to show. */
1870
+ _getNumberOfMonths: function(inst) {
1871
+ var numMonths = this._get(inst, "numberOfMonths");
1872
+ return (numMonths == null ? [1, 1] : (typeof numMonths === "number" ? [1, numMonths] : numMonths));
1873
+ },
1874
+
1875
+ /* Determine the current maximum date - ensure no time components are set. */
1876
+ _getMinMaxDate: function(inst, minMax) {
1877
+ return this._determineDate(inst, this._get(inst, minMax + "Date"), null);
1878
+ },
1879
+
1880
+ /* Find the number of days in a given month. */
1881
+ _getDaysInMonth: function(year, month) {
1882
+ return 32 - this._daylightSavingAdjust(new Date(year, month, 32)).getDate();
1883
+ },
1884
+
1885
+ /* Find the day of the week of the first of a month. */
1886
+ _getFirstDayOfMonth: function(year, month) {
1887
+ return new Date(year, month, 1).getDay();
1888
+ },
1889
+
1890
+ /* Determines if we should allow a "next/prev" month display change. */
1891
+ _canAdjustMonth: function(inst, offset, curYear, curMonth) {
1892
+ var numMonths = this._getNumberOfMonths(inst),
1893
+ date = this._daylightSavingAdjust(new Date(curYear,
1894
+ curMonth + (offset < 0 ? offset : numMonths[0] * numMonths[1]), 1));
1895
+
1896
+ if (offset < 0) {
1897
+ date.setDate(this._getDaysInMonth(date.getFullYear(), date.getMonth()));
1898
+ }
1899
+ return this._isInRange(inst, date);
1900
+ },
1901
+
1902
+ /* Is the given date in the accepted range? */
1903
+ _isInRange: function(inst, date) {
1904
+ var yearSplit, currentYear,
1905
+ minDate = this._getMinMaxDate(inst, "min"),
1906
+ maxDate = this._getMinMaxDate(inst, "max"),
1907
+ minYear = null,
1908
+ maxYear = null,
1909
+ years = this._get(inst, "yearRange");
1910
+ if (years){
1911
+ yearSplit = years.split(":");
1912
+ currentYear = new Date().getFullYear();
1913
+ minYear = parseInt(yearSplit[0], 10);
1914
+ maxYear = parseInt(yearSplit[1], 10);
1915
+ if ( yearSplit[0].match(/[+\-].*/) ) {
1916
+ minYear += currentYear;
1917
+ }
1918
+ if ( yearSplit[1].match(/[+\-].*/) ) {
1919
+ maxYear += currentYear;
1920
+ }
1921
+ }
1922
+
1923
+ return ((!minDate || date.getTime() >= minDate.getTime()) &&
1924
+ (!maxDate || date.getTime() <= maxDate.getTime()) &&
1925
+ (!minYear || date.getFullYear() >= minYear) &&
1926
+ (!maxYear || date.getFullYear() <= maxYear));
1927
+ },
1928
+
1929
+ /* Provide the configuration settings for formatting/parsing. */
1930
+ _getFormatConfig: function(inst) {
1931
+ var shortYearCutoff = this._get(inst, "shortYearCutoff");
1932
+ shortYearCutoff = (typeof shortYearCutoff !== "string" ? shortYearCutoff :
1933
+ new Date().getFullYear() % 100 + parseInt(shortYearCutoff, 10));
1934
+ return {shortYearCutoff: shortYearCutoff,
1935
+ dayNamesShort: this._get(inst, "dayNamesShort"), dayNames: this._get(inst, "dayNames"),
1936
+ monthNamesShort: this._get(inst, "monthNamesShort"), monthNames: this._get(inst, "monthNames")};
1937
+ },
1938
+
1939
+ /* Format the given date for display. */
1940
+ _formatDate: function(inst, day, month, year) {
1941
+ if (!day) {
1942
+ inst.currentDay = inst.selectedDay;
1943
+ inst.currentMonth = inst.selectedMonth;
1944
+ inst.currentYear = inst.selectedYear;
1945
+ }
1946
+ var date = (day ? (typeof day === "object" ? day :
1947
+ this._daylightSavingAdjust(new Date(year, month, day))) :
1948
+ this._daylightSavingAdjust(new Date(inst.currentYear, inst.currentMonth, inst.currentDay)));
1949
+ return this.formatDate(this._get(inst, "dateFormat"), date, this._getFormatConfig(inst));
1950
+ }
1951
+ });
1952
+
1953
+ /*
1954
+ * Bind hover events for datepicker elements.
1955
+ * Done via delegate so the binding only occurs once in the lifetime of the parent div.
1956
+ * Global instActive, set by _updateDatepicker allows the handlers to find their way back to the active picker.
1957
+ */
1958
+ function bindHover(dpDiv) {
1959
+ var selector = "button, .ui-datepicker-prev, .ui-datepicker-next, .ui-datepicker-calendar td a";
1960
+ return