Premium Addons for Elementor - Version 4.9.7

Version Description

  • New: Added Premium Navigation/Mega Menu widget - here.
Download this release

Release Info

Developer leap13
Plugin Icon 128x128 Premium Addons for Elementor
Version 4.9.7
Comparing to
See all releases

Code changes from version 4.9.6 to 4.9.7

Files changed (44) hide show
  1. admin/assets/css/admin-rtl.css +390 -1
  2. admin/assets/css/admin.css +495 -1
  3. admin/assets/css/jquery-fonticonpicker.css +262 -0
  4. admin/assets/fonts/iconpicker.eot +0 -0
  5. admin/assets/fonts/iconpicker.svg +19 -0
  6. admin/assets/fonts/iconpicker.ttf +0 -0
  7. admin/assets/fonts/iconpicker.woff +0 -0
  8. admin/assets/fonts/pa-dashboard.eot +0 -0
  9. admin/assets/fonts/pa-dashboard.svg +1 -0
  10. admin/assets/fonts/pa-dashboard.ttf +0 -0
  11. admin/assets/fonts/pa-dashboard.woff +0 -0
  12. admin/assets/fonts/style.css +4 -4
  13. admin/assets/js/jquery-fonticonpicker.js +1 -0
  14. admin/assets/js/mega-content-handler.js +127 -0
  15. admin/assets/js/menu-editor.js +248 -0
  16. admin/assets/js/pa-notice.js +1 -1
  17. admin/assets/js/premium-icons-list.js +1507 -0
  18. admin/includes/admin-helper.php +165 -13
  19. admin/includes/admin-notices.php +11 -11
  20. admin/includes/beta-testers.php +143 -143
  21. admin/includes/elements.php +1126 -1112
  22. admin/includes/templates/features.php +185 -185
  23. admin/includes/templates/nav-menu-settings.php +207 -0
  24. admin/includes/templates/white-label.php +121 -121
  25. assets/editor/css/style.css +528 -524
  26. assets/editor/fonts/pa-elements.eot +0 -0
  27. assets/editor/fonts/pa-elements.svg +2 -1
  28. assets/editor/fonts/pa-elements.ttf +0 -0
  29. assets/editor/fonts/pa-elements.woff +0 -0
  30. assets/editor/js/live-editor.js +0 -2
  31. assets/editor/js/premium-cross-cp.js +158 -158
  32. assets/frontend/css/common.css +251 -251
  33. assets/frontend/css/premium-addons-rtl.css +3024 -1658
  34. assets/frontend/css/premium-addons.css +1389 -490
  35. assets/frontend/css/premium-carousel-widget.css +154 -154
  36. assets/frontend/css/premium-icon-list-rtl.css +329 -329
  37. assets/frontend/css/premium-image-scroll.css +2 -2
  38. assets/frontend/css/premium-img-gallery-rtl.css +450 -450
  39. assets/frontend/css/premium-img-gallery.css +2 -2
  40. assets/frontend/css/premium-nav-menu-rtl.css +1365 -0
  41. assets/frontend/css/premium-nav-menu.css +898 -0
  42. assets/frontend/css/premium-pricing-table-rtl.css +289 -289
  43. assets/frontend/css/premium-title-rtl.css +253 -253
  44. assets/frontend/js/lottie.js +0 -6801
admin/assets/css/admin-rtl.css CHANGED
@@ -19,7 +19,8 @@
19
  }
20
 
21
  .pa-switcher .switch,
22
- .pa-section-info-cta .switch {
 
23
  position: relative;
24
  display: inline-block;
25
  width: 44px;
@@ -1985,12 +1986,400 @@ input:checked+.slider:before {
1985
  content: "\e951";
1986
  }
1987
 
 
 
 
 
 
 
 
 
 
 
 
 
1988
  @keyframes spin {
1989
  0% {
 
1990
  transform: rotateZ(-180deg) rotateY(180deg);
1991
  }
1992
 
1993
  100% {
 
1994
  transform: rotateZ(180deg) rotateY(180deg);
1995
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1996
  }
19
  }
20
 
21
  .pa-switcher .switch,
22
+ .pa-section-info-cta .switch,
23
+ .premium-menu-control .switch {
24
  position: relative;
25
  display: inline-block;
26
  width: 44px;
1986
  content: "\e951";
1987
  }
1988
 
1989
+ @-webkit-keyframes spin {
1990
+ 0% {
1991
+ -webkit-transform: rotateZ(-180deg) rotateY(180deg);
1992
+ transform: rotateZ(-180deg) rotateY(180deg);
1993
+ }
1994
+
1995
+ 100% {
1996
+ -webkit-transform: rotateZ(180deg) rotateY(180deg);
1997
+ transform: rotateZ(180deg) rotateY(180deg);
1998
+ }
1999
+ }
2000
+
2001
  @keyframes spin {
2002
  0% {
2003
+ -webkit-transform: rotateZ(-180deg) rotateY(180deg);
2004
  transform: rotateZ(-180deg) rotateY(180deg);
2005
  }
2006
 
2007
  100% {
2008
+ -webkit-transform: rotateZ(180deg) rotateY(180deg);
2009
  transform: rotateZ(180deg) rotateY(180deg);
2010
  }
2011
+ }
2012
+
2013
+ /*Live Editor*/
2014
+ .papro-btn-block {
2015
+ width: 100% !important;
2016
+ margin: -10px 0 10px;
2017
+
2018
+ }
2019
+
2020
+ .elementor-template-pa-live-editor-modal-container {
2021
+ -js-display: flex;
2022
+ display: -webkit-box;
2023
+ display: -webkit-flex;
2024
+ display: -moz-box;
2025
+ display: -ms-flexbox;
2026
+ display: flex;
2027
+ }
2028
+
2029
+ .premium-live-editor-iframe-modal {
2030
+ display: none;
2031
+ }
2032
+
2033
+ .premium-dynamic-content-modal {
2034
+ -js-display: flex;
2035
+ display: -webkit-box;
2036
+ display: -webkit-flex;
2037
+ display: -moz-box;
2038
+ display: -ms-flexbox;
2039
+ display: flex;
2040
+ }
2041
+
2042
+ .premium-live-editor-iframe-modal .elementor-templates-modal__header__logo__title {
2043
+ margin-left: 35px;
2044
+ }
2045
+
2046
+ .premium-live-editor-iframe-modal .dialog-lightbox-header {
2047
+ background-color: #f1f3f5;
2048
+ }
2049
+
2050
+ .premium-live-editor-iframe-modal .dialog-message {
2051
+ position: relative;
2052
+ }
2053
+
2054
+ .premium-live-editor-iframe-modal iframe {
2055
+ position: absolute;
2056
+ top: 0;
2057
+ bottom: 0;
2058
+ right: 0;
2059
+ left: 0;
2060
+ width: 100%;
2061
+ height: 100%;
2062
+ }
2063
+
2064
+ /* .premium-live-editor-iframe-modal .dialog-widget-content {
2065
+ margin-top: 10px;
2066
+ } */
2067
+
2068
+ .premium-dynamic-content-modal .dialog-widget-content {
2069
+ position: static !important;
2070
+ max-width: calc(100vw - 70px) !important;
2071
+ width: calc(100vw - 70px) !important;
2072
+ -webkit-border-radius: 0;
2073
+ border-radius: 0;
2074
+ }
2075
+
2076
+ .elementor-device-desktop #elementor-preview-responsive-wrapper {
2077
+ min-width: auto !important;
2078
+ }
2079
+
2080
+ .premium-dynamic-content-modal .dialog-message {
2081
+ overflow: unset !important;
2082
+ }
2083
+
2084
+ .premium-live-editor-iframe-modal {
2085
+ display: none;
2086
+ }
2087
+
2088
+ .premium-live-editor-iframe-modal .elementor-templates-modal__header__close {
2089
+ margin-right: 15px;
2090
+ }
2091
+
2092
+ /* .premium-live-editor-iframe-modal .dialog-widget-content {
2093
+ position: static !important;
2094
+ margin-top: 10px;
2095
+ } */
2096
+
2097
+ #pa-live-editor-logo .premium-template-modal-header-logo-icon img {
2098
+ width: 30px;
2099
+ height: 30px;
2100
+ }
2101
+
2102
+ #premium-live-temp-title {
2103
+ width: 400px;
2104
+ -webkit-border-radius: 3px 0 0 3px;
2105
+ border-radius: 3px 0 0 3px;
2106
+ font-size: 12px;
2107
+ color: #6d7882;
2108
+ background: none;
2109
+ box-shadow: none;
2110
+ border: 1px solid #d5dadf;
2111
+ outline: 0;
2112
+ font-weight: normal;
2113
+ }
2114
+
2115
+ .premium-live-temp-notice {
2116
+ margin: 0 10px;
2117
+ font-style: italic;
2118
+ font-weight: normal;
2119
+ text-transform: none;
2120
+ }
2121
+
2122
+ #pa-insert-live-temp {
2123
+ white-space: nowrap;
2124
+ -webkit-border-radius: 0 3px 3px 0;
2125
+ border-radius: 0 3px 3px 0;
2126
+ }
2127
+
2128
+ #premium-live-temp-title {
2129
+ padding: 8px 10px;
2130
+ }
2131
+
2132
+ .premium-live-editor-title {
2133
+ display: none;
2134
+ -webkit-box-align: center;
2135
+ -webkit-align-items: center;
2136
+ -moz-box-align: center;
2137
+ -ms-flex-align: center;
2138
+ align-items: center;
2139
+ }
2140
+
2141
+ .premium-modal-expanded .dialog-lightbox-widget-content {
2142
+ max-width: 100% !important;
2143
+ margin: 0 !important;
2144
+ }
2145
+
2146
+ .premium-modal-expanded .dialog-lightbox-message {
2147
+ max-height: 100vh;
2148
+ }
2149
+
2150
+ .premium-modal-expanded #pa-live-editor-control-iframe {
2151
+ height: -webkit-calc(100vh - 50px);
2152
+ height: calc(100vh - 50px);
2153
+ }
2154
+
2155
+ .premium-live-temp-title.control-hidden {
2156
+ display: none;
2157
+ }
2158
+
2159
+ .premium-live-temp-label label {
2160
+ font-weight: 900;
2161
+ }
2162
+
2163
+ .premium-live-editor-iframe-modal .dialog-message {
2164
+ height: calc(100vh - 50px) !important;
2165
+ max-height: calc(100vh - 50px) !important;
2166
+ }
2167
+
2168
+ /**Premium Menu*/
2169
+ .premium-menu-item-settings {
2170
+ position: absolute;
2171
+ top: 50%;
2172
+ z-index: 99999;
2173
+ background-color: #d4f0fc;
2174
+ display: none;
2175
+ border: 1px solid #007cba;
2176
+ background-color: #f6f7f7;
2177
+ color: #007cba;
2178
+ font-size: 14px;
2179
+ line-height: 19px;
2180
+ padding: 8px 10px;
2181
+ min-width: 100px;
2182
+ cursor: pointer;
2183
+ -webkit-transform: translateY(-50%);
2184
+ -ms-transform: translateY(-50%);
2185
+ transform: translateY(-50%);
2186
+ -webkit-border-radius: 5px;
2187
+ border-radius: 5px;
2188
+ }
2189
+
2190
+ .menu-item:hover .premium-menu-item-settings {
2191
+ -js-display: flex;
2192
+ display: -webkit-box;
2193
+ display: -webkit-flex;
2194
+ display: -moz-box;
2195
+ display: -ms-flexbox;
2196
+ display: flex;
2197
+ }
2198
+
2199
+ #pa-menu-logo img {
2200
+ width: 25px;
2201
+ }
2202
+
2203
+ .premium-menu-settings-modal #elementor-template-nav-menu-modal-container .dialog-widget-content {
2204
+ max-width: 900px !important;
2205
+ position: absolute !important;
2206
+ left: 50% !important;
2207
+ top: 20% !important;
2208
+ -webkit-transform: translate(-50%, -18%);
2209
+ -ms-transform: translate(-50%, -18%);
2210
+ transform: translate(-50%, -18%);
2211
+ }
2212
+
2213
+ #elementor-template-nav-menu-modal-container .dialog-message {
2214
+ height: auto;
2215
+ min-height: 50vh;
2216
+ }
2217
+
2218
+ #elementor-template-nav-menu-modal-container .wp-picker-holder {
2219
+ position: relative;
2220
+ }
2221
+
2222
+ #elementor-template-nav-menu-modal-container .wp-picker-container .iris-picker {
2223
+ position: absolute;
2224
+ z-index: 100;
2225
+ }
2226
+
2227
+ #elementor-template-nav-menu-modal-container .button.wp-color-result {
2228
+ margin-right: 0;
2229
+ }
2230
+
2231
+ #elementor-template-nav-menu-modal-container .wp-picker-container .wp-color-result.button {
2232
+ height: 30px;
2233
+ }
2234
+
2235
+ #elementor-template-nav-menu-modal-container .wp-color-result-text {
2236
+ line-height: 28px;
2237
+ }
2238
+
2239
+ #elementor-template-nav-menu-modal-container .option-table {
2240
+ width: 100%;
2241
+ margin: auto;
2242
+ max-width: 400px;
2243
+ }
2244
+
2245
+ .premium-setting-container {
2246
+ -js-display: flex;
2247
+ display: -webkit-box;
2248
+ display: -webkit-flex;
2249
+ display: -moz-box;
2250
+ display: -ms-flexbox;
2251
+ display: flex;
2252
+ width: 100%;
2253
+ height: 50px;
2254
+ -webkit-box-pack: justify;
2255
+ -webkit-justify-content: space-between;
2256
+ -moz-box-pack: justify;
2257
+ -ms-flex-pack: justify;
2258
+ justify-content: space-between;
2259
+ }
2260
+
2261
+ .premium-menu-control-meta,
2262
+ .premium-menu-control {
2263
+ -js-display: flex;
2264
+ display: -webkit-box;
2265
+ display: -webkit-flex;
2266
+ display: -moz-box;
2267
+ display: -ms-flexbox;
2268
+ display: flex;
2269
+ -webkit-box-pack: start;
2270
+ -webkit-justify-content: flex-start;
2271
+ -moz-box-pack: start;
2272
+ -ms-flex-pack: start;
2273
+ justify-content: flex-start;
2274
+ -webkit-box-align: center;
2275
+ -webkit-align-items: center;
2276
+ -moz-box-align: center;
2277
+ -ms-flex-align: center;
2278
+ align-items: center;
2279
+ max-width: 49%;
2280
+ -webkit-box-flex: 0;
2281
+ -webkit-flex: 0 0 49%;
2282
+ -moz-box-flex: 0;
2283
+ -ms-flex: 0 0 49%;
2284
+ flex: 0 0 49%;
2285
+ }
2286
+
2287
+ .premium-menu-control-meta label {
2288
+ font-size: 14px;
2289
+ color: #474747;
2290
+ font-family: "Poppins";
2291
+ }
2292
+
2293
+ .premium-menu-dialog-footer {
2294
+ background-color: #fff;
2295
+ height: 50px;
2296
+ -js-display: flex;
2297
+ display: -webkit-box;
2298
+ display: -webkit-flex;
2299
+ display: -moz-box;
2300
+ display: -ms-flexbox;
2301
+ display: flex;
2302
+ -webkit-box-align: center;
2303
+ -webkit-align-items: center;
2304
+ -moz-box-align: center;
2305
+ -ms-flex-align: center;
2306
+ align-items: center;
2307
+ -webkit-box-pack: end;
2308
+ -webkit-justify-content: flex-end;
2309
+ -moz-box-pack: end;
2310
+ -ms-flex-pack: end;
2311
+ justify-content: flex-end;
2312
+ padding: 5px 15px;
2313
+
2314
+ }
2315
+
2316
+ /* .premium-menu-btn {
2317
+ display: inline-block;
2318
+ border: 1px solid black;
2319
+ padding: 9px;
2320
+ font-size: 12px;
2321
+ cursor: pointer;
2322
+ text-align: center;
2323
+ } */
2324
+
2325
+ .premium-menu-btn,
2326
+ #premium-menu-save {
2327
+ border: 1px solid #007cba;
2328
+ background-color: transparent;
2329
+ color: #007cba;
2330
+ font-size: 14px;
2331
+ line-height: 19px;
2332
+ padding: 8px 20px;
2333
+ min-width: 100px;
2334
+ width: 100%;
2335
+ cursor: pointer;
2336
+ -webkit-border-radius: 5px;
2337
+ border-radius: 5px;
2338
+ }
2339
+
2340
+ .premium-menu-btn i.loading {
2341
+ -webkit-animation: spin 3s linear infinite;
2342
+ animation: spin 3s linear infinite;
2343
+ }
2344
+
2345
+ .premium-menu-btn i.loader-hidden {
2346
+ display: none;
2347
+ }
2348
+
2349
+ #pa-insert-live-temp {
2350
+ display: none;
2351
+ }
2352
+
2353
+ .premium-has-desc {
2354
+ -webkit-box-orient: vertical;
2355
+ -webkit-box-direction: normal;
2356
+ -webkit-flex-direction: column;
2357
+ -moz-box-orient: vertical;
2358
+ -moz-box-direction: normal;
2359
+ -ms-flex-direction: column;
2360
+ flex-direction: column;
2361
+ -webkit-box-pack: center;
2362
+ -webkit-justify-content: center;
2363
+ -moz-box-pack: center;
2364
+ -ms-flex-pack: center;
2365
+ justify-content: center;
2366
+ -webkit-box-align: start;
2367
+ -webkit-align-items: flex-start;
2368
+ -moz-box-align: start;
2369
+ -ms-flex-align: start;
2370
+ align-items: flex-start;
2371
+
2372
+ }
2373
+
2374
+ .premium-has-desc .premium-megamenu-des {
2375
+ font-size: 11px;
2376
+ color: gray;
2377
+ }
2378
+
2379
+ .premium-menu-settings-modal .dialog-message {
2380
+ overflow-y: scroll !important;
2381
+ }
2382
+
2383
+ .premium-setting-hidden {
2384
+ display: none;
2385
  }
admin/assets/css/admin.css CHANGED
@@ -19,7 +19,8 @@
19
  }
20
 
21
  .pa-switcher .switch,
22
- .pa-section-info-cta .switch {
 
23
  position: relative;
24
  display: inline-block;
25
  width: 44px;
@@ -28,6 +29,65 @@
28
  border-radius: 12px;
29
  }
30
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
31
  .switch input {
32
  display: none;
33
  }
@@ -1989,6 +2049,10 @@ input:checked+.slider:before {
1989
  content: "\e951";
1990
  }
1991
 
 
 
 
 
1992
  @-webkit-keyframes spin {
1993
  0% {
1994
  -webkit-transform: rotateZ(-180deg) rotateY(180deg);
@@ -2011,4 +2075,434 @@ input:checked+.slider:before {
2011
  -webkit-transform: rotateZ(180deg) rotateY(180deg);
2012
  transform: rotateZ(180deg) rotateY(180deg);
2013
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2014
  }
19
  }
20
 
21
  .pa-switcher .switch,
22
+ .pa-section-info-cta .switch,
23
+ .premium-menu-control .switch {
24
  position: relative;
25
  display: inline-block;
26
  width: 44px;
29
  border-radius: 12px;
30
  }
31
 
32
+ .premium-menu-control select,
33
+ .premium-menu-control input {
34
+ width: 100%;
35
+ max-width: 100%;
36
+ border-color: #dcdcdc;
37
+ -webkit-border-radius: 10px;
38
+ border-radius: 10px;
39
+ padding: 5px 10px;
40
+ border: 1px solid #dcdcdc;
41
+
42
+ }
43
+
44
+ .premium-menu-control select:focus,
45
+ .premium-menu-control input:focus {
46
+ outline: none;
47
+ -webkit-box-shadow: none;
48
+ box-shadow: none;
49
+ border-color: #dcdcdc;
50
+ }
51
+
52
+ .premium-menu-control select {
53
+ -webkit-border-bottom-right-radius: 0px;
54
+ border-bottom-right-radius: 0px
55
+ }
56
+
57
+ .premium-menu-control input {
58
+ padding: 5px 10px;
59
+ }
60
+
61
+ .premium-menu-control input::-webkit-input-placeholder {
62
+ font-weight: 300;
63
+ font-family: "Poppins";
64
+ }
65
+
66
+ .premium-menu-control input:-moz-placeholder {
67
+ font-weight: 300;
68
+ font-family: "Poppins";
69
+ }
70
+
71
+ .premium-menu-control input::-moz-placeholder {
72
+ font-weight: 300;
73
+ font-family: "Poppins";
74
+ }
75
+
76
+ .premium-menu-control input:-ms-input-placeholder {
77
+ font-weight: 300;
78
+ font-family: "Poppins";
79
+ }
80
+
81
+ .premium-menu-control input::-ms-input-placeholder {
82
+ font-weight: 300;
83
+ font-family: "Poppins";
84
+ }
85
+
86
+ .premium-menu-control input::placeholder {
87
+ font-weight: 300;
88
+ font-family: "Poppins";
89
+ }
90
+
91
  .switch input {
92
  display: none;
93
  }
2049
  content: "\e951";
2050
  }
2051
 
2052
+ .pa-dash-premium-nav-menu:before {
2053
+ content: "\e952";
2054
+ }
2055
+
2056
  @-webkit-keyframes spin {
2057
  0% {
2058
  -webkit-transform: rotateZ(-180deg) rotateY(180deg);
2075
  -webkit-transform: rotateZ(180deg) rotateY(180deg);
2076
  transform: rotateZ(180deg) rotateY(180deg);
2077
  }
2078
+ }
2079
+
2080
+ /*Live Editor*/
2081
+ .papro-btn-block {
2082
+ width: 100% !important;
2083
+ margin: -10px 0 10px;
2084
+
2085
+ }
2086
+
2087
+ .elementor-template-pa-live-editor-modal-container {
2088
+ -js-display: flex;
2089
+ display: -webkit-box;
2090
+ display: -webkit-flex;
2091
+ display: -moz-box;
2092
+ display: -ms-flexbox;
2093
+ display: flex;
2094
+ }
2095
+
2096
+ .premium-live-editor-iframe-modal {
2097
+ display: none;
2098
+ position: relative;
2099
+ }
2100
+
2101
+ .premium-dynamic-content-modal {
2102
+ -js-display: flex;
2103
+ display: -webkit-box;
2104
+ display: -webkit-flex;
2105
+ display: -moz-box;
2106
+ display: -ms-flexbox;
2107
+ display: flex;
2108
+ }
2109
+
2110
+ .premium-live-editor-iframe-modal .elementor-templates-modal__header__logo__title {
2111
+ margin-right: 35px;
2112
+ }
2113
+
2114
+ .premium-live-editor-iframe-modal .dialog-lightbox-header {
2115
+ background-color: #f1f3f5 !important;
2116
+ }
2117
+
2118
+ .premium-live-editor-iframe-modal .dialog-message {
2119
+ position: relative;
2120
+ }
2121
+
2122
+ .premium-live-editor-iframe-modal iframe {
2123
+ position: absolute;
2124
+ top: 0;
2125
+ bottom: 0;
2126
+ right: 0;
2127
+ left: 0;
2128
+ width: 100%;
2129
+ height: 100%;
2130
+ }
2131
+
2132
+ /* .premium-live-editor-iframe-modal .dialog-widget-content {
2133
+ margin-top: 10px;
2134
+ } */
2135
+
2136
+ .premium-dynamic-content-modal .dialog-widget-content {
2137
+ position: static !important;
2138
+ max-width: -webkit-calc(100vw - 70px) !important;
2139
+ max-width: calc(100vw - 70px) !important;
2140
+ width: -webkit-calc(100vw - 70px) !important;
2141
+ width: calc(100vw - 70px) !important;
2142
+ -webkit-border-radius: 0;
2143
+ border-radius: 0;
2144
+ }
2145
+
2146
+ .elementor-device-desktop #elementor-preview-responsive-wrapper {
2147
+ min-width: auto !important;
2148
+ }
2149
+
2150
+ /* .premium-dynamic-content-modal .dialog-message {
2151
+ overflow: unset !important;
2152
+ } */
2153
+
2154
+ .premium-live-editor-iframe-modal {
2155
+ display: none;
2156
+ }
2157
+
2158
+ .premium-live-editor-iframe-modal .elementor-templates-modal__header__close {
2159
+ margin-left: 15px;
2160
+ }
2161
+
2162
+ /* .premium-live-editor-iframe-modal .dialog-widget-content {
2163
+ position: static !important;
2164
+ margin-top: 10px;
2165
+ } */
2166
+
2167
+ #pa-live-editor-logo .premium-template-modal-header-logo-icon img {
2168
+ width: 30px;
2169
+ height: 30px;
2170
+ }
2171
+
2172
+ #premium-live-temp-title {
2173
+ width: 400px;
2174
+ -webkit-border-radius: 3px 0 0 3px;
2175
+ border-radius: 3px 0 0 3px;
2176
+ font-size: 12px;
2177
+ color: #6d7882;
2178
+ background: none;
2179
+ -webkit-box-shadow: none;
2180
+ box-shadow: none;
2181
+ border: 1px solid #d5dadf;
2182
+ outline: 0;
2183
+ font-weight: normal;
2184
+ }
2185
+
2186
+ .premium-live-temp-notice {
2187
+ margin: 0 10px;
2188
+ font-style: italic;
2189
+ font-weight: normal;
2190
+ text-transform: none;
2191
+ }
2192
+
2193
+ #premium-live-temp-title {
2194
+ padding: 8px 10px;
2195
+ }
2196
+
2197
+ .premium-live-editor-title {
2198
+ display: none;
2199
+ -webkit-box-align: center;
2200
+ -webkit-align-items: center;
2201
+ -moz-box-align: center;
2202
+ -ms-flex-align: center;
2203
+ align-items: center;
2204
+ }
2205
+
2206
+ .premium-modal-expanded .dialog-lightbox-widget-content {
2207
+ max-width: 100% !important;
2208
+ margin: 0 !important;
2209
+ }
2210
+
2211
+ .premium-modal-expanded .dialog-lightbox-message {
2212
+ max-height: 100vh;
2213
+ }
2214
+
2215
+ .premium-modal-expanded #pa-live-editor-control-iframe {
2216
+ height: -webkit-calc(100vh - 50px);
2217
+ height: calc(100vh - 50px);
2218
+ }
2219
+
2220
+ .premium-live-temp-title.control-hidden {
2221
+ display: none;
2222
+ }
2223
+
2224
+ .premium-live-temp-label label {
2225
+ font-weight: 900;
2226
+ }
2227
+
2228
+ .premium-live-editor-iframe-modal .dialog-message {
2229
+ height: -webkit-calc(100vh - 50px) !important;
2230
+ height: calc(100vh - 50px) !important;
2231
+ max-height: -webkit-calc(100vh - 50px) !important;
2232
+ max-height: calc(100vh - 50px) !important;
2233
+ }
2234
+
2235
+ /**Premium Menu*/
2236
+ .premium-menu-item-settings {
2237
+ position: absolute;
2238
+ top: 50%;
2239
+ z-index: 99999;
2240
+ background-color: #d4f0fc;
2241
+ display: none;
2242
+ border: 1px solid #007cba;
2243
+ background-color: #f6f7f7;
2244
+ color: #007cba;
2245
+ font-size: 14px;
2246
+ line-height: 19px;
2247
+ padding: 8px 10px;
2248
+ min-width: 100px;
2249
+ cursor: pointer;
2250
+ -webkit-transform: translateY(-50%);
2251
+ -ms-transform: translateY(-50%);
2252
+ transform: translateY(-50%);
2253
+ -webkit-border-radius: 5px;
2254
+ border-radius: 5px;
2255
+ }
2256
+
2257
+ .menu-item:hover .premium-menu-item-settings {
2258
+ -js-display: flex;
2259
+ display: -webkit-box;
2260
+ display: -webkit-flex;
2261
+ display: -moz-box;
2262
+ display: -ms-flexbox;
2263
+ display: flex;
2264
+ }
2265
+
2266
+ #pa-menu-logo img {
2267
+ width: 25px;
2268
+ }
2269
+
2270
+ .premium-menu-settings-modal #elementor-template-nav-menu-modal-container .dialog-widget-content {
2271
+ max-width: 900px !important;
2272
+ position: absolute !important;
2273
+ left: 50% !important;
2274
+ top: 20% !important;
2275
+ -webkit-transform: translate(-50%, -18%);
2276
+ -ms-transform: translate(-50%, -18%);
2277
+ transform: translate(-50%, -18%);
2278
+ max-height: 90vh;
2279
+ overflow: auto;
2280
+ }
2281
+
2282
+ #elementor-template-nav-menu-modal-container .dialog-message {
2283
+ height: auto;
2284
+ min-height: 50vh;
2285
+ }
2286
+
2287
+ #elementor-template-nav-menu-modal-container .option-table {
2288
+ width: 100%;
2289
+ margin: auto;
2290
+ max-width: 400px;
2291
+ }
2292
+
2293
+ .premium-setting-container {
2294
+ -js-display: flex;
2295
+ display: -webkit-box;
2296
+ display: -webkit-flex;
2297
+ display: -moz-box;
2298
+ display: -ms-flexbox;
2299
+ display: flex;
2300
+ width: 100%;
2301
+ height: 50px;
2302
+ -webkit-box-pack: justify;
2303
+ -webkit-justify-content: space-between;
2304
+ -moz-box-pack: justify;
2305
+ -ms-flex-pack: justify;
2306
+ justify-content: space-between;
2307
+ }
2308
+
2309
+ .premium-menu-control-meta,
2310
+ .premium-menu-control {
2311
+ -js-display: flex;
2312
+ display: -webkit-box;
2313
+ display: -webkit-flex;
2314
+ display: -moz-box;
2315
+ display: -ms-flexbox;
2316
+ display: flex;
2317
+ -webkit-box-pack: start;
2318
+ -webkit-justify-content: flex-start;
2319
+ -moz-box-pack: start;
2320
+ -ms-flex-pack: start;
2321
+ justify-content: flex-start;
2322
+ -webkit-box-align: center;
2323
+ -webkit-align-items: center;
2324
+ -moz-box-align: center;
2325
+ -ms-flex-align: center;
2326
+ align-items: center;
2327
+ max-width: 49%;
2328
+ -webkit-box-flex: 0;
2329
+ -webkit-flex: 0 0 49%;
2330
+ -moz-box-flex: 0;
2331
+ -ms-flex: 0 0 49%;
2332
+ flex: 0 0 49%;
2333
+ }
2334
+
2335
+ .premium-menu-control-meta label {
2336
+ font-size: 14px;
2337
+ color: #474747;
2338
+ font-family: "Poppins";
2339
+ }
2340
+
2341
+ .premium-menu-dialog-footer {
2342
+ background-color: #fff;
2343
+ height: 50px;
2344
+ -js-display: flex;
2345
+ display: -webkit-box;
2346
+ display: -webkit-flex;
2347
+ display: -moz-box;
2348
+ display: -ms-flexbox;
2349
+ display: flex;
2350
+ -webkit-box-align: center;
2351
+ -webkit-align-items: center;
2352
+ -moz-box-align: center;
2353
+ -ms-flex-align: center;
2354
+ align-items: center;
2355
+ -webkit-box-pack: end;
2356
+ -webkit-justify-content: flex-end;
2357
+ -moz-box-pack: end;
2358
+ -ms-flex-pack: end;
2359
+ justify-content: flex-end;
2360
+ padding: 5px 15px;
2361
+
2362
+ }
2363
+
2364
+ /* .premium-menu-btn {
2365
+ display: inline-block;
2366
+ border: 1px solid black;
2367
+ padding: 9px;
2368
+ font-size: 12px;
2369
+ cursor: pointer;
2370
+ text-align: center;
2371
+ } */
2372
+
2373
+ .premium-menu-btn,
2374
+ #premium-menu-save {
2375
+ border: 1px solid #007cba;
2376
+ background-color: transparent;
2377
+ color: #007cba;
2378
+ font-size: 14px;
2379
+ line-height: 19px;
2380
+ padding: 8px 20px;
2381
+ min-width: 100px;
2382
+ width: 100%;
2383
+ cursor: pointer;
2384
+ -webkit-border-radius: 5px;
2385
+ border-radius: 5px;
2386
+ }
2387
+
2388
+ .premium-menu-btn i.loading {
2389
+ -webkit-animation: spin 3s linear infinite;
2390
+ animation: spin 3s linear infinite;
2391
+ }
2392
+
2393
+ .premium-menu-btn i.loader-hidden {
2394
+ display: none;
2395
+ }
2396
+
2397
+ #pa-insert-live-temp {
2398
+ display: none;
2399
+ }
2400
+
2401
+ .premium-has-desc {
2402
+ -webkit-box-orient: vertical;
2403
+ -webkit-box-direction: normal;
2404
+ -webkit-flex-direction: column;
2405
+ -moz-box-orient: vertical;
2406
+ -moz-box-direction: normal;
2407
+ -ms-flex-direction: column;
2408
+ flex-direction: column;
2409
+ -webkit-box-pack: center;
2410
+ -webkit-justify-content: center;
2411
+ -moz-box-pack: center;
2412
+ -ms-flex-pack: center;
2413
+ justify-content: center;
2414
+ -webkit-box-align: start;
2415
+ -webkit-align-items: flex-start;
2416
+ -moz-box-align: start;
2417
+ -ms-flex-align: start;
2418
+ align-items: flex-start;
2419
+
2420
+ }
2421
+
2422
+ .premium-has-desc .premium-megamenu-des {
2423
+ font-size: 11px;
2424
+ color: gray;
2425
+ }
2426
+
2427
+ /* .premium-menu-settings-modal .dialog-message {
2428
+ overflow-y: scroll !important;
2429
+ } */
2430
+
2431
+ .premium-setting-hidden {
2432
+ display: none;
2433
+ }
2434
+
2435
+ .premium-menu-temp-close {
2436
+ position: absolute;
2437
+ top: 24px;
2438
+ right: 40px;
2439
+ color: #a4afb7;
2440
+ font-size: 20px;
2441
+ z-index: 1000;
2442
+ cursor: pointer;
2443
+ }
2444
+
2445
+ .premium-menu-temp-close:hover {
2446
+ color: #495157;
2447
+ }
2448
+
2449
+ .premium-menu-control .icons-selector {
2450
+ border: 1px solid #dcdcdc;
2451
+ -webkit-border-radius: 5px;
2452
+ border-radius: 5px;
2453
+ }
2454
+
2455
+ .premium-menu-control .wp-picker-container {
2456
+ -js-display: flex;
2457
+ display: -webkit-box;
2458
+ display: -webkit-flex;
2459
+ display: -moz-box;
2460
+ display: -ms-flexbox;
2461
+ display: flex;
2462
+ width: 100%;
2463
+ -webkit-flex-wrap: wrap;
2464
+ -ms-flex-wrap: wrap;
2465
+ flex-wrap: wrap;
2466
+ -webkit-box-pack: justify;
2467
+ -webkit-justify-content: space-between;
2468
+ -moz-box-pack: justify;
2469
+ -ms-flex-pack: justify;
2470
+ justify-content: space-between;
2471
+ }
2472
+
2473
+ .premium-menu-control .wp-picker-open+.wp-picker-input-wrap {
2474
+ width: 68%;
2475
+ -js-display: flex;
2476
+ display: -webkit-box;
2477
+ display: -webkit-flex;
2478
+ display: -moz-box;
2479
+ display: -ms-flexbox;
2480
+ display: flex;
2481
+ }
2482
+
2483
+ #elementor-template-nav-menu-modal-container .wp-picker-holder {
2484
+ position: relative;
2485
+ min-width: 100%;
2486
+ }
2487
+
2488
+ #elementor-template-nav-menu-modal-container .wp-picker-container .iris-picker {
2489
+ position: absolute;
2490
+ z-index: 100;
2491
+ }
2492
+
2493
+ #elementor-template-nav-menu-modal-container .button.wp-color-result {
2494
+ margin: 0;
2495
+ width: 30%;
2496
+ height: 100%;
2497
+ }
2498
+
2499
+ #elementor-template-nav-menu-modal-container .wp-color-result-text {
2500
+ line-height: 28px;
2501
+ }
2502
+
2503
+ .premium-menu-control .wp-picker-input-wrap .premium-color-picker {
2504
+ min-width: 170px;
2505
+ border: 1px solid #dcdcdc;
2506
+ -webkit-border-radius: 0;
2507
+ border-radius: 0;
2508
  }
admin/assets/css/jquery-fonticonpicker.css ADDED
@@ -0,0 +1,262 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ .icons-selector * {
2
+ margin: 0;
3
+ padding: 0;
4
+ border: 0;
5
+ font-size: 100%;
6
+ vertical-align: baseline
7
+ }
8
+
9
+ .icons-selector,
10
+ .icons-selector *,
11
+ .icons-selector :after,
12
+ .icons-selector :before,
13
+ .icons-selector:after,
14
+ .icons-selector:before {
15
+ -webkit-box-sizing: content-box;
16
+ box-sizing: content-box
17
+ }
18
+
19
+ .icons-selector {
20
+ display: inline-block;
21
+ vertical-align: middle;
22
+ text-align: left
23
+ }
24
+
25
+ .icons-selector .selector {
26
+ width: 71px;
27
+ height: 40px
28
+ }
29
+
30
+ .icons-selector .selector-button {
31
+ width: 30px;
32
+ height: 100%;
33
+ display: block;
34
+ text-align: center;
35
+ cursor: pointer;
36
+ float: left
37
+ }
38
+
39
+ .icons-selector .selector-button i {
40
+ line-height: 38px;
41
+ text-align: center
42
+ }
43
+
44
+ .icons-selector .selected-icon {
45
+ display: block;
46
+ width: 40px;
47
+ height: 100%;
48
+ float: left;
49
+ text-align: center;
50
+ border-right: 1px solid #dcdcdc;
51
+ }
52
+
53
+ .icons-selector .selected-icon i {
54
+ line-height: 40px;
55
+ font-size: 18px;
56
+ cursor: default
57
+ }
58
+
59
+ .icons-selector .selector-popup {
60
+ position: absolute;
61
+ z-index: 10000;
62
+ background-color: #fefefe;
63
+ padding: 5px;
64
+ height: auto;
65
+ width: 342px;
66
+ margin-top: -1px
67
+ }
68
+
69
+ .icons-selector .selector-category select,
70
+ .icons-selector .selector-search input[type=text] {
71
+ border: 0;
72
+ line-height: 20px;
73
+ padding: 10px 2.5%;
74
+ width: 100%;
75
+ -webkit-box-sizing: border-box;
76
+ box-sizing: border-box;
77
+ margin-bottom: 5px;
78
+ font-size: 12px;
79
+ display: block
80
+ }
81
+
82
+ .icons-selector .selector-category select {
83
+ height: 40px
84
+ }
85
+
86
+ .icons-selector .selector-category select option {
87
+ padding: 10px
88
+ }
89
+
90
+ .icons-selector input::-webkit-input-placeholder {
91
+ text-transform: uppercase
92
+ }
93
+
94
+ .icons-selector input:-moz-placeholder {
95
+ text-transform: uppercase
96
+ }
97
+
98
+ .icons-selector input::-moz-placeholder {
99
+ text-transform: uppercase
100
+ }
101
+
102
+ .icons-selector input:-ms-input-placeholder {
103
+ text-transform: uppercase
104
+ }
105
+
106
+ .icons-selector .selector-search {
107
+ position: relative
108
+ }
109
+
110
+ .icons-selector .selector-search i {
111
+ position: absolute;
112
+ right: 10px;
113
+ top: 7px
114
+ }
115
+
116
+ .icons-selector .fip-icons-container {
117
+ width: 100%;
118
+ -webkit-box-sizing: border-box;
119
+ box-sizing: border-box;
120
+ padding: 5px
121
+ }
122
+
123
+ .icons-selector .fip-icons-container .loading {
124
+ font-size: 24px;
125
+ margin: 0 auto;
126
+ padding: 20px 0;
127
+ text-align: center;
128
+ width: 100%
129
+ }
130
+
131
+ .icons-selector .fip-box {
132
+ display: inline-block;
133
+ margin: 2px;
134
+ width: 60px;
135
+ line-height: 42px;
136
+ text-align: center;
137
+ cursor: pointer;
138
+ vertical-align: top;
139
+ height: 40px
140
+ }
141
+
142
+ .icons-selector .selector-footer {
143
+ line-height: 12px;
144
+ padding: 5px 5px 0 5px;
145
+ text-align: center
146
+ }
147
+
148
+ .icons-selector .selector-footer,
149
+ .icons-selector .selector-footer i {
150
+ font-size: 14px
151
+ }
152
+
153
+ .icons-selector .selector-arrows {
154
+ float: right
155
+ }
156
+
157
+ .icons-selector .selector-pages {
158
+ font-size: 11px;
159
+ float: left
160
+ }
161
+
162
+ .icons-selector .selector-arrows i {
163
+ cursor: pointer
164
+ }
165
+
166
+ .icons-selector .selector-footer em {
167
+ font-style: italic
168
+ }
169
+
170
+ .icons-selector .icons-picker-error i:before {
171
+ color: #eee
172
+ }
173
+
174
+ @font-face {
175
+ font-family: iconpicker;
176
+ src: url(../fonts/iconpicker.eot?90190138);
177
+ src: url(../fonts/iconpicker.eot?90190138#iefix) format('embedded-opentype'), url(../fonts/iconpicker.woff?90190138) format('woff'), url(../fonts/iconpicker.ttf?90190138) format('truetype'), url(../fonts/iconpicker.svg?90190138#iconpicker) format('svg');
178
+ font-weight: 400;
179
+ font-style: normal
180
+ }
181
+
182
+ .icons-selector [class*=" fip-icon-"]:before,
183
+ .icons-selector [class^=fip-icon-]:before {
184
+ font-family: iconpicker;
185
+ font-style: normal;
186
+ font-weight: 400;
187
+ speak: none;
188
+ display: inline-block;
189
+ text-decoration: inherit;
190
+ width: 1em;
191
+ margin-right: .2em;
192
+ text-align: center;
193
+ font-variant: normal;
194
+ text-transform: none;
195
+ line-height: 1em;
196
+ margin-left: .2em
197
+ }
198
+
199
+ .icons-selector .fip-icon-search:before {
200
+ content: '\e812';
201
+ cursor: default
202
+ }
203
+
204
+ .icons-selector .fip-icon-cancel:before {
205
+ content: '\e814';
206
+ cursor: pointer
207
+ }
208
+
209
+ .icons-selector .fip-icon-block:before {
210
+ content: '\e84e';
211
+ color: #8e8e8e;
212
+ }
213
+
214
+ .icons-selector .fip-icon-down-dir:before {
215
+ content: '\e800'
216
+ }
217
+
218
+ .icons-selector .fip-icon-up-dir:before {
219
+ content: '\e813'
220
+ }
221
+
222
+ .icons-selector .fip-icon-left-dir:before {
223
+ content: '\e801'
224
+ }
225
+
226
+ .icons-selector .fip-icon-right-dir:before {
227
+ content: '\e802'
228
+ }
229
+
230
+ .icons-selector .fip-icon-spin3:before {
231
+ content: '\e815'
232
+ }
233
+
234
+ .icons-selector .fip-icon-spin3 {
235
+ -webkit-animation: spin 2s infinite linear;
236
+ animation: spin 2s infinite linear;
237
+ display: inline-block
238
+ }
239
+
240
+ @-webkit-keyframes spin {
241
+ 0% {
242
+ -webkit-transform: rotate(0);
243
+ transform: rotate(0)
244
+ }
245
+
246
+ 100% {
247
+ -webkit-transform: rotate(359deg);
248
+ transform: rotate(359deg)
249
+ }
250
+ }
251
+
252
+ @keyframes spin {
253
+ 0% {
254
+ -webkit-transform: rotate(0);
255
+ transform: rotate(0)
256
+ }
257
+
258
+ 100% {
259
+ -webkit-transform: rotate(359deg);
260
+ transform: rotate(359deg)
261
+ }
262
+ }
admin/assets/fonts/iconpicker.eot ADDED
Binary file
admin/assets/fonts/iconpicker.svg ADDED
@@ -0,0 +1,19 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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>Copyright (C) 2014 by original authors @ fontello.com</metadata>
5
+ <defs>
6
+ <font id="iconpicker" horiz-adv-x="1000" >
7
+ <font-face font-family="iconpicker" font-weight="400" font-stretch="normal" units-per-em="1000" ascent="850" descent="-150" />
8
+ <missing-glyph horiz-adv-x="1000" />
9
+ <glyph glyph-name="spin3" unicode="&#xe815;" d="m494 850c-266 0-483-210-494-472c-1-19 13-20 13-20l84 0c16 0 19 10 19 18c10 199 176 358 378 358c107 0 205-45 273-118l-58-57c-11-12-11-27 5-31l247-50c21-5 46 11 37 44l-58 227c-2 9-16 22-29 13l-65-60c-89 91-214 148-352 148z m409-508c-16 0-19-10-19-18c-10-199-176-358-377-358c-108 0-205 45-274 118l59 57c10 12 10 27-5 31l-248 50c-21 5-46-11-37-44l58-227c2-9 16-22 30-13l64 60c89-91 214-148 353-148c265 0 482 210 493 473c1 18-13 19-13 19l-84 0z" horiz-adv-x="1000" />
10
+ <glyph glyph-name="search" unicode="&#xe812;" d="m643 386q0 103-74 176t-176 74t-177-74t-73-176t73-177t177-73t176 73t74 177z m286-465q0-29-22-50t-50-21q-30 0-50 21l-191 191q-100-69-223-69q-80 0-153 31t-125 84t-84 125t-31 153t31 152t84 126t125 84t153 31t152-31t126-84t84-126t31-152q0-123-69-223l191-191q21-21 21-51z" horiz-adv-x="928.6" />
11
+ <glyph glyph-name="cancel" unicode="&#xe814;" d="m724 112q0-22-15-38l-76-76q-16-15-38-15t-38 15l-164 165l-164-165q-16-15-38-15t-38 15l-76 76q-16 16-16 38t16 38l164 164l-164 164q-16 16-16 38t16 38l76 76q16 16 38 16t38-16l164-164l164 164q16 16 38 16t38-16l76-76q15-15 15-38t-15-38l-164-164l164-164q15-15 15-38z" horiz-adv-x="785.7" />
12
+ <glyph glyph-name="block" unicode="&#xe84e;" d="m732 352q0 90-48 164l-421-420q76-50 166-50q62 0 118 25t96 65t65 97t24 119z m-557-167l421 421q-75 50-167 50q-83 0-153-40t-110-112t-41-152q0-91 50-167z m682 167q0-88-34-168t-91-137t-137-92t-166-34t-167 34t-137 92t-91 137t-34 168t34 167t91 137t137 91t167 34t166-34t137-91t91-137t34-167z" horiz-adv-x="857.1" />
13
+ <glyph glyph-name="down-dir" unicode="&#xe800;" d="m571 457q0-14-10-25l-250-250q-11-11-25-11t-25 11l-250 250q-11 11-11 25t11 25t25 11h500q14 0 25-11t10-25z" horiz-adv-x="571.4" />
14
+ <glyph glyph-name="up-dir" unicode="&#xe813;" d="m571 171q0-14-10-25t-25-10h-500q-15 0-25 10t-11 25t11 26l250 250q10 10 25 10t25-10l250-250q10-11 10-26z" horiz-adv-x="571.4" />
15
+ <glyph glyph-name="left-dir" unicode="&#xe801;" d="m357 600v-500q0-14-10-25t-26-11t-25 11l-250 250q-10 11-10 25t10 25l250 250q11 11 25 11t26-11t10-25z" horiz-adv-x="357.1" />
16
+ <glyph glyph-name="right-dir" unicode="&#xe802;" d="m321 350q0-14-10-25l-250-250q-11-11-25-11t-25 11t-11 25v500q0 15 11 25t25 11t25-11l250-250q10-10 10-25z" horiz-adv-x="357.1" />
17
+ </font>
18
+ </defs>
19
+ </svg>
admin/assets/fonts/iconpicker.ttf ADDED
Binary file
admin/assets/fonts/iconpicker.woff ADDED
Binary file
admin/assets/fonts/pa-dashboard.eot CHANGED
Binary file
admin/assets/fonts/pa-dashboard.svg CHANGED
@@ -89,4 +89,5 @@
89
  <glyph unicode="&#xe94f;" glyph-name="testimonials-and-reviews-widgets" d="M512 960c0.379 0.001 0.827 0.002 1.276 0.002 282.77 0 512-229.23 512-512s-229.23-512-512-512c-87.909 0-170.643 22.155-242.924 61.186l2.715-1.341h-1.593c-15.246 6.144-27.534 17.067-41.87 24.121-8.435 3.656-18.258 5.783-28.578 5.783-7.749 0-15.219-1.199-22.233-3.422l0.521 0.142c-29.627-10.816-68.275-22.231-107.704-31.635l-7.894-1.589c-20.48 0-26.624 11.833-26.624 31.858 10.827 47.474 23.027 87.476 37.679 126.274l-2.18-6.58c2.107 6.024 3.323 12.969 3.323 20.197 0 11.030-2.833 21.398-7.811 30.417l0.164-0.325-10.24 19.797c-36.341 67.827-57.787 148.346-58.026 233.851v3.262c0 282.77 229.23 512 512 512v0zM747.975 513.081c-36.195 0-65.536-29.341-65.536-65.536s29.341-65.536 65.536-65.536c36.195 0 65.536 29.341 65.536 65.536v0c-0.129 36.143-29.393 65.407-65.524 65.536h-0.012zM512 513.081c-36.195 0-65.536-29.341-65.536-65.536s29.341-65.536 65.536-65.536c36.195 0 65.536 29.341 65.536 65.536v0c0 0.068 0 0.148 0 0.228 0 36.069-29.24 65.308-65.308 65.308-0.080 0-0.16 0-0.24 0h0.012zM276.025 513.081c-36.195 0-65.536-29.341-65.536-65.536s29.341-65.536 65.536-65.536v0c36.195 0 65.536 29.341 65.536 65.536s-29.341 65.536-65.536 65.536v0z" />
90
  <glyph unicode="&#xe950;" glyph-name="pa-admin-icon" d="M1024.437 448.219c-0.596-158.073-72.763-299.17-185.761-392.653l-0.858-0.689h-13.548l-104.891 323.851 285.828 207.597 3.059-11.8c9.961-37.82 15.839-81.301 16.17-126.103l0.001-0.204zM798.047 22.972l-10.489-6.556c-77.973-50.165-173.175-79.974-275.339-79.974s-197.366 29.808-277.383 81.202l2.043-1.228-10.489 6.556 285.828 206.723zM305.058 380.913l-107.076-329.533h-9.178c-115.562 94.543-188.753 237.138-188.804 396.829v0.009c0.139 45.7 6.029 89.961 16.983 132.181l-0.813-3.69 3.059 11.8zM493.426 960l-109.262-336.963h-352.697l4.37 13.111c73.442 181.603 242.662 310.074 443.369 323.333l1.545 0.082zM992.97 623.037h-352.697l-109.262 336.963h12.674c202.344-13.418 371.597-142.068 443.682-320.403l1.232-3.448z" />
91
  <glyph unicode="&#xe951;" glyph-name="custom-mouse-cursor" horiz-adv-x="1031" d="M1030.639 511.469c-2.728-43.984-33.933-79.971-75.279-89.889l-0.672-0.136-228.647-55.768c-3.744-1.006-8.044-1.587-12.478-1.593h-0.003c-0.181-0.002-0.396-0.004-0.61-0.004-28.453 0-51.519 23.066-51.519 51.519 0 24.337 16.875 44.733 39.563 50.124l0.35 0.070 219.353 53.112-813.942 334.871 400.996-805.975 19.386 292.116c0.042 0.789 0.066 1.713 0.066 2.642 0 14.356-5.696 27.382-14.951 36.941l0.014-0.014-119.502 121.627c-9.209 9.308-14.899 22.114-14.899 36.249 0 28.468 23.078 51.546 51.546 51.546 14.333 0 27.3-5.85 36.643-15.293l0.004-0.004 119.237-120.033c27.782-27.937 44.955-66.45 44.955-108.974 0-3.611-0.124-7.193-0.368-10.742l0.026 0.479-20.183-303.801c-2.539-45.595-35.64-82.773-79.036-91.512l-0.632-0.106c-5.952-1.184-12.795-1.861-19.796-1.861-0.229 0-0.458 0.001-0.687 0.002h0.035c-0.019 0-0.041 0-0.063 0-38.759 0-72.291 22.382-88.376 54.926l-0.257 0.576-410.025 822.971c-6.644 12.967-10.537 28.289-10.537 44.52 0 26.372 10.278 50.343 27.048 68.126l-0.046-0.049c18.078 19.733 43.964 32.059 72.728 32.059 13.72 0 26.786-2.805 38.654-7.872l-0.643 0.244 830.672-341.245c36.758-14.769 62.238-50.118 62.238-91.417 0-2.969-0.132-5.907-0.389-8.809l0.027 0.375z" />
 
92
  </font></defs></svg>
89
  <glyph unicode="&#xe94f;" glyph-name="testimonials-and-reviews-widgets" d="M512 960c0.379 0.001 0.827 0.002 1.276 0.002 282.77 0 512-229.23 512-512s-229.23-512-512-512c-87.909 0-170.643 22.155-242.924 61.186l2.715-1.341h-1.593c-15.246 6.144-27.534 17.067-41.87 24.121-8.435 3.656-18.258 5.783-28.578 5.783-7.749 0-15.219-1.199-22.233-3.422l0.521 0.142c-29.627-10.816-68.275-22.231-107.704-31.635l-7.894-1.589c-20.48 0-26.624 11.833-26.624 31.858 10.827 47.474 23.027 87.476 37.679 126.274l-2.18-6.58c2.107 6.024 3.323 12.969 3.323 20.197 0 11.030-2.833 21.398-7.811 30.417l0.164-0.325-10.24 19.797c-36.341 67.827-57.787 148.346-58.026 233.851v3.262c0 282.77 229.23 512 512 512v0zM747.975 513.081c-36.195 0-65.536-29.341-65.536-65.536s29.341-65.536 65.536-65.536c36.195 0 65.536 29.341 65.536 65.536v0c-0.129 36.143-29.393 65.407-65.524 65.536h-0.012zM512 513.081c-36.195 0-65.536-29.341-65.536-65.536s29.341-65.536 65.536-65.536c36.195 0 65.536 29.341 65.536 65.536v0c0 0.068 0 0.148 0 0.228 0 36.069-29.24 65.308-65.308 65.308-0.080 0-0.16 0-0.24 0h0.012zM276.025 513.081c-36.195 0-65.536-29.341-65.536-65.536s29.341-65.536 65.536-65.536v0c36.195 0 65.536 29.341 65.536 65.536s-29.341 65.536-65.536 65.536v0z" />
90
  <glyph unicode="&#xe950;" glyph-name="pa-admin-icon" d="M1024.437 448.219c-0.596-158.073-72.763-299.17-185.761-392.653l-0.858-0.689h-13.548l-104.891 323.851 285.828 207.597 3.059-11.8c9.961-37.82 15.839-81.301 16.17-126.103l0.001-0.204zM798.047 22.972l-10.489-6.556c-77.973-50.165-173.175-79.974-275.339-79.974s-197.366 29.808-277.383 81.202l2.043-1.228-10.489 6.556 285.828 206.723zM305.058 380.913l-107.076-329.533h-9.178c-115.562 94.543-188.753 237.138-188.804 396.829v0.009c0.139 45.7 6.029 89.961 16.983 132.181l-0.813-3.69 3.059 11.8zM493.426 960l-109.262-336.963h-352.697l4.37 13.111c73.442 181.603 242.662 310.074 443.369 323.333l1.545 0.082zM992.97 623.037h-352.697l-109.262 336.963h12.674c202.344-13.418 371.597-142.068 443.682-320.403l1.232-3.448z" />
91
  <glyph unicode="&#xe951;" glyph-name="custom-mouse-cursor" horiz-adv-x="1031" d="M1030.639 511.469c-2.728-43.984-33.933-79.971-75.279-89.889l-0.672-0.136-228.647-55.768c-3.744-1.006-8.044-1.587-12.478-1.593h-0.003c-0.181-0.002-0.396-0.004-0.61-0.004-28.453 0-51.519 23.066-51.519 51.519 0 24.337 16.875 44.733 39.563 50.124l0.35 0.070 219.353 53.112-813.942 334.871 400.996-805.975 19.386 292.116c0.042 0.789 0.066 1.713 0.066 2.642 0 14.356-5.696 27.382-14.951 36.941l0.014-0.014-119.502 121.627c-9.209 9.308-14.899 22.114-14.899 36.249 0 28.468 23.078 51.546 51.546 51.546 14.333 0 27.3-5.85 36.643-15.293l0.004-0.004 119.237-120.033c27.782-27.937 44.955-66.45 44.955-108.974 0-3.611-0.124-7.193-0.368-10.742l0.026 0.479-20.183-303.801c-2.539-45.595-35.64-82.773-79.036-91.512l-0.632-0.106c-5.952-1.184-12.795-1.861-19.796-1.861-0.229 0-0.458 0.001-0.687 0.002h0.035c-0.019 0-0.041 0-0.063 0-38.759 0-72.291 22.382-88.376 54.926l-0.257 0.576-410.025 822.971c-6.644 12.967-10.537 28.289-10.537 44.52 0 26.372 10.278 50.343 27.048 68.126l-0.046-0.049c18.078 19.733 43.964 32.059 72.728 32.059 13.72 0 26.786-2.805 38.654-7.872l-0.643 0.244 830.672-341.245c36.758-14.769 62.238-50.118 62.238-91.417 0-2.969-0.132-5.907-0.389-8.809l0.027 0.375z" />
92
+ <glyph unicode="&#xe952;" glyph-name="nav-menu-for-pa-dashboard" d="M119.059 937.766c-45.907-7.795-86.285-42.701-101.587-87.84l-4.627-13.651-0.538-92.083c-0.461-79.411-0.154-93.965 2.227-105.677 4.973-24.576 17.453-46.637 36.941-65.28 27.302-26.131 55.066-36.48 97.786-36.48h21.408v-232.186c0-263.654-0.902-245.914 14.035-276.307 7.488-15.226 10.886-19.93 23.386-32.429 20.851-20.813 40.934-31.757 67.757-36.883 19.2-3.686 453.101-3.686 472.301 0 26.784 5.126 46.906 16.070 67.661 36.787 11.808 11.808 16.032 17.53 22.675 30.72 15.149 30.048 13.786 5.184 14.803 272.218l0.902 237.216 25.594 0.998c26.266 1.037 39.187 3.456 54.778 10.33 28.397 12.48 54.259 38.246 67.334 67.104 9.869 21.754 10.387 28.474 9.792 129.869l-0.518 92.083-4.627 13.651c-13.67 40.282-44.582 70.195-87.494 84.71l-11.962 4.032-389.971 0.23c-214.483 0.134-393.6-0.365-398.054-1.133zM896.525 833.165c13.709-8.294 13.114-3.878 13.114-94.694 0.019-91.162 0.557-87.322-13.229-95.424l-8.083-4.762h-752.64l-8.102 4.762c-13.766 8.102-13.248 4.262-13.229 95.424 0.019 90.816-0.595 86.4 13.133 94.694l6.49 3.936h756.057l6.49-3.936zM201.024 786.95c12.634 2.726 116.698 3.149 131.040 0.538 26.477-4.8 37.69-21.293 36.288-53.395-0.883-20.141-5.376-30.048-17.299-38.074-12.768-8.621-19.987-9.331-88.55-8.755l-61.978 0.518-9.638 4.742c-16.512 8.102-23.635 21.85-23.635 45.6 0 28.013 11.021 43.93 33.773 48.826zM446.035 787.603c3.898 0.806 35.117 1.344 69.37 1.171l62.304-0.288 10.157-5.126c5.606-2.822 12.288-7.814 14.88-11.098 6.528-8.294 10.618-25.306 9.408-39.245-2.054-23.942-11.155-36.941-29.914-42.72-9.946-3.072-16.013-3.36-71.098-3.36-55.584 0-61.075 0.269-71.386 3.437-8.947 2.765-12.48 4.954-17.875 11.078-8.429 9.6-11.462 19.872-11.309 38.381 0.25 27.264 11.846 42.931 35.462 47.77zM689.472 787.027c12.442 2.669 115.987 3.014 130.867 0.422 24.557-4.282 36.403-20.314 36.403-49.325 0-23.75-7.123-37.498-23.635-45.6l-9.638-4.742-61.978-0.518c-68.563-0.576-75.763 0.134-88.55 8.755-11.904 8.026-16.416 17.933-17.28 38.074-1.382 31.219 9.082 47.597 33.811 52.934zM750.528 305.606l-0.442-231.149-5.126-5.434c-10.138-10.771 4.243-10.138-232.954-10.138-237.216 0-222.835-0.634-232.973 10.138l-5.107 5.434-0.461 231.149-0.442 231.149h477.946l-0.442-231.149zM363.994 440.448c6.931 1.709 41.299 2.112 154.829 1.882l145.92-0.307 9.581-4.474c16.762-7.872 23.501-20.525 23.635-44.314 0.115-25.728-6.317-38.688-23.386-47.078l-9.83-4.819h-147.629c-164.122 0-158.054-0.403-171.494 11.424-6.125 5.395-8.314 8.928-11.078 17.875l0.141-0.508c-2.23 6.929-3.435 14.318-3.435 21.989 0 6.423 0.845 12.648 2.315 18.071 4.454 16.762 13.997 26.246 30.432 30.259zM362.131 240.691c6.010 1.901 34.733 2.266 155.846 1.997 163.354-0.384 153.178 0.288 166.272-10.733 9.293-7.834 12.634-16.55 13.44-35.155 0.922-21.062-2.362-32.698-11.923-42.259-13.382-13.382-5.683-12.749-160.973-13.363-143.021-0.576-158.899 0-171.091 6.24-12.941 6.643-20.467 19.968-22.061 39.091-2.362 27.994 8.486 47.251 30.49 54.182z" />
93
  </font></defs></svg>
admin/assets/fonts/pa-dashboard.ttf CHANGED
Binary file
admin/assets/fonts/pa-dashboard.woff CHANGED
Binary file
admin/assets/fonts/style.css CHANGED
@@ -1,9 +1,9 @@
1
  @font-face {
2
  font-family: "pa-dash";
3
- src: url("pa-dashboard.eot?ht21ru");
4
- src: url("pa-dashboard.eot?ht21ru#iefix") format("embedded-opentype"),
5
- url("pa-dashboard.ttf?ht21ru") format("truetype"), url("pa-dashboard.woff?ht21ru") format("woff"),
6
- url("pa-dashboard.svg?ht21ru#pa-dashboard") format("svg");
7
  font-weight: normal;
8
  font-style: normal;
9
  font-display: block;
1
  @font-face {
2
  font-family: "pa-dash";
3
+ src: url("pa-dashboard.eot?w3ucku");
4
+ src: url("pa-dashboard.eot?w3ucku#iefix") format("embedded-opentype"),
5
+ url("pa-dashboard.ttf?w3ucku") format("truetype"), url("pa-dashboard.woff?w3ucku") format("woff"),
6
+ url("pa-dashboard.svg?w3ucku#pa-dashboard") format("svg");
7
  font-weight: normal;
8
  font-style: normal;
9
  font-display: block;
admin/assets/js/jquery-fonticonpicker.js ADDED
@@ -0,0 +1 @@
 
1
+ !function(t){"use strict";var e={theme:"fip-grey",source:!1,emptyIcon:!0,emptyIconValue:"",iconsPerPage:20,hasSearch:!0,searchSource:!1,useAttribute:!1,attributeName:"data-icon",convertToHex:!0,allCategoryText:"From all categories",unCategorizedText:"Uncategorized"};function i(i,s){this.element=t(i),this.settings=t.extend({},e,s),this.settings.emptyIcon&&this.settings.iconsPerPage--,this.iconPicker=t("<div/>",{"class":"icons-selector",style:"position: relative",html:'<div class="selector"><span class="selected-icon"><i class="fip-icon-block"></i></span><span class="selector-button"><i class="fip-icon-down-dir"></i></span></div><div class="selector-popup" style="display: none;">'+(this.settings.hasSearch?'<div class="selector-search"><input type="text" name="" value="" placeholder="Search icon" class="icons-search-input"/><i class="fip-icon-search"></i></div>':"")+'<div class="selector-category"><select name="" class="icon-category-select" style="display: none"></select></div><div class="fip-icons-container"></div><div class="selector-footer" style="display:none;"><span class="selector-pages">1/2</span><span class="selector-arrows"><span class="selector-arrow-left" style="display:none;"><i class="fip-icon-left-dir"></i></span><span class="selector-arrow-right"><i class="fip-icon-right-dir"></i></span></span></div></div>'}),this.iconContainer=this.iconPicker.find(".fip-icons-container"),this.searchIcon=this.iconPicker.find(".selector-search i"),this.iconsSearched=[],this.isSearch=!1,this.totalPage=1,this.currentPage=1,this.currentIcon=!1,this.iconsCount=0,this.open=!1,this.searchValues=[],this.availableCategoriesSearch=[],this.triggerEvent=null,this.backupSource=[],this.backupSearch=[],this.isCategorized=!1,this.selectCategory=this.iconPicker.find(".icon-category-select"),this.selectedCategory=!1,this.availableCategories=[],this.unCategorizedKey=null,this.init()}i.prototype={init:function(){this.iconPicker.addClass(this.settings.theme),this.iconPicker.css({left:-9999}).appendTo("body");var e=this.iconPicker.outerHeight(),i=this.iconPicker.outerWidth();if(this.iconPicker.css({left:""}),this.element.before(this.iconPicker),this.element.css({visibility:"hidden",top:0,position:"relative",zIndex:"-1",left:"-"+i+"px",display:"inline-block",height:e+"px",width:i+"px",padding:"0",margin:"0 -"+i+"px 0 0",border:"0 none",verticalAlign:"top"}),!this.element.is("select")){var s=function(){for(var t=3,e=document.createElement("div"),i=e.all||[];e.innerHTML="\x3c!--[if gt IE "+ ++t+"]><br><![endif]--\x3e",i[0];);return t>4?t:!t}(),n=document.createElement("div");this.triggerEvent=9!==s&&"oninput"in n?["input","keyup"]:["keyup"]}!this.settings.source&&this.element.is("select")?(this.settings.source=[],this.settings.searchSource=[],this.element.find("optgroup").length?(this.isCategorized=!0,this.element.find("optgroup").each(t.proxy((function(e,i){var s=this.availableCategories.length,n=t("<option />");n.attr("value",s),n.html(t(i).attr("label")),this.selectCategory.append(n),this.availableCategories[s]=[],this.availableCategoriesSearch[s]=[],t(i).find("option").each(t.proxy((function(e,i){var n=t(i).val(),c=t(i).html();n&&n!==this.settings.emptyIconValue&&(this.settings.source.push(n),this.availableCategories[s].push(n),this.searchValues.push(c),this.availableCategoriesSearch[s].push(c))}),this))}),this)),this.element.find("> option").length&&this.element.find("> option").each(t.proxy((function(e,i){var s=t(i).val(),n=t(i).html();if(!s||""===s||s==this.settings.emptyIconValue)return!0;null===this.unCategorizedKey&&(this.unCategorizedKey=this.availableCategories.length,this.availableCategories[this.unCategorizedKey]=[],this.availableCategoriesSearch[this.unCategorizedKey]=[],t("<option />").attr("value",this.unCategorizedKey).html(this.settings.unCategorizedText).appendTo(this.selectCategory)),this.settings.source.push(s),this.availableCategories[this.unCategorizedKey].push(s),this.searchValues.push(n),this.availableCategoriesSearch[this.unCategorizedKey].push(n)}),this))):this.element.find("option").each(t.proxy((function(e,i){var s=t(i).val(),n=t(i).html();s&&(this.settings.source.push(s),this.searchValues.push(n))}),this)),this.backupSource=this.settings.source.slice(0),this.backupSearch=this.searchValues.slice(0),this.loadCategories()):this.initSourceIndex(),this.loadIcons(),this.selectCategory.on("change keyup",t.proxy((function(e){if(!1===this.isCategorized)return!1;var i=t(e.currentTarget),s=i.val();if("all"===i.val())this.settings.source=this.backupSource,this.searchValues=this.backupSearch;else{var n=parseInt(s,10);this.availableCategories[n]&&(this.settings.source=this.availableCategories[n],this.searchValues=this.availableCategoriesSearch[n])}this.resetSearch(),this.loadIcons()}),this)),this.iconPicker.find(".selector-button").on("click",t.proxy((function(){this.toggleIconSelector()}),this)),this.iconPicker.find(".selector-arrow-right").on("click",t.proxy((function(e){this.currentPage<this.totalPage&&(this.iconPicker.find(".selector-arrow-left").show(),this.currentPage=this.currentPage+1,this.renderIconContainer()),this.currentPage===this.totalPage&&t(e.currentTarget).hide()}),this)),this.iconPicker.find(".selector-arrow-left").on("click",t.proxy((function(e){this.currentPage>1&&(this.iconPicker.find(".selector-arrow-right").show(),this.currentPage=this.currentPage-1,this.renderIconContainer()),1===this.currentPage&&t(e.currentTarget).hide()}),this)),this.iconPicker.find(".icons-search-input").keyup(t.proxy((function(e){var i=t(e.currentTarget).val();""!==i?(this.searchIcon.removeClass("fip-icon-search"),this.searchIcon.addClass("fip-icon-cancel"),this.isSearch=!0,this.currentPage=1,this.iconsSearched=[],t.grep(this.searchValues,t.proxy((function(t,e){if(t.toLowerCase().search(i.toLowerCase())>=0)return this.iconsSearched[this.iconsSearched.length]=this.settings.source[e],!0}),this)),this.renderIconContainer()):this.resetSearch()}),this)),this.iconPicker.find(".selector-search").on("click",".fip-icon-cancel",t.proxy((function(){this.iconPicker.find(".icons-search-input").trigger("focus"),this.resetSearch()}),this)),this.iconContainer.on("click",".fip-box",t.proxy((function(e){this.setSelectedIcon(t(e.currentTarget).find("i").attr("data-fip-value")),this.toggleIconSelector()}),this)),this.iconPicker.on("click",(function(t){return t.stopPropagation(),!1})),t("html").on("click",t.proxy((function(){this.open&&this.toggleIconSelector()}),this))},initSourceIndex:function(){if("object"==typeof this.settings.source){if(t.isArray(this.settings.source))this.isCategorized=!1,this.selectCategory.html("").hide(),this.settings.source=t.map(this.settings.source,(function(t,e){return"function"==typeof t.toString?t.toString():t})),t.isArray(this.settings.searchSource)?this.searchValues=t.map(this.settings.searchSource,(function(t,e){return"function"==typeof t.toString?t.toString():t})):this.searchValues=this.settings.source.slice(0);else{var e=t.extend(!0,{},this.settings.source);for(var i in this.settings.source=[],this.searchValues=[],this.availableCategoriesSearch=[],this.selectedCategory=!1,this.availableCategories=[],this.unCategorizedKey=null,this.isCategorized=!0,this.selectCategory.html(""),e){var s=this.availableCategories.length,n=t("<option />");for(var c in n.attr("value",s),n.html(i),this.selectCategory.append(n),this.availableCategories[s]=[],this.availableCategoriesSearch[s]=[],e[i]){var o=e[i][c],r=this.settings.searchSource&&this.settings.searchSource[i]&&this.settings.searchSource[i][c]?this.settings.searchSource[i][c]:o;"function"==typeof o.toString&&(o=o.toString()),o&&o!==this.settings.emptyIconValue&&(this.settings.source.push(o),this.availableCategories[s].push(o),this.searchValues.push(r),this.availableCategoriesSearch[s].push(r))}}}this.backupSource=this.settings.source.slice(0),this.backupSearch=this.searchValues.slice(0),this.loadCategories()}},loadCategories:function(){!1!==this.isCategorized&&(t('<option value="all">'+this.settings.allCategoryText+"</option>").prependTo(this.selectCategory),this.selectCategory.show().val("all").trigger("change"))},loadIcons:function(){this.iconContainer.html('<i class="fip-icon-spin3 animate-spin loading"></i>'),this.settings.source instanceof Array&&this.renderIconContainer()},renderIconContainer:function(){var e,i=[];if(i=this.isSearch?this.iconsSearched:this.settings.source,this.iconsCount=i.length,this.totalPage=Math.ceil(this.iconsCount/this.settings.iconsPerPage),this.totalPage>1?this.iconPicker.find(".selector-footer").show():this.iconPicker.find(".selector-footer").hide(),this.iconPicker.find(".selector-pages").html(this.currentPage+"/"+this.totalPage+" <em>("+this.iconsCount+")</em>"),e=(this.currentPage-1)*this.settings.iconsPerPage,this.settings.emptyIcon)this.iconContainer.html('<span class="fip-box"><i class="fip-icon-block" data-fip-value="fip-icon-block"></i></span>');else{if(i.length<1)return void this.iconContainer.html('<span class="icons-picker-error"><i class="fip-icon-block" data-fip-value="fip-icon-block"></i></span>');this.iconContainer.html("")}i=i.slice(e,e+this.settings.iconsPerPage);for(var s,n=0;s=i[n++];){var c=s;t.grep(this.settings.source,t.proxy((function(t,e){return t===s&&(c=this.searchValues[e],!0)}),this)),t("<span/>",{html:'<i data-fip-value="'+s+'" '+(this.settings.useAttribute?this.settings.attributeName+'="'+(this.settings.convertToHex?"&#x"+parseInt(s,10).toString(16)+";":s)+'"':'class="'+s+'"')+"></i>","class":"fip-box",title:c}).appendTo(this.iconContainer)}this.settings.emptyIcon||this.element.val()&&-1!==t.inArray(this.element.val(),this.settings.source)?-1===t.inArray(this.element.val(),this.settings.source)?this.setSelectedIcon():this.setSelectedIcon(this.element.val()):this.setSelectedIcon(i[0])},setHighlightedIcon:function(){this.iconContainer.find(".current-icon").removeClass("current-icon"),this.currentIcon&&this.iconContainer.find('[data-fip-value="'+this.currentIcon+'"]').parent("span").addClass("current-icon")},setSelectedIcon:function(t){if("fip-icon-block"===t&&(t=""),this.settings.useAttribute?t?this.iconPicker.find(".selected-icon").html("<i "+this.settings.attributeName+'="'+(this.settings.convertToHex?"&#x"+parseInt(t,10).toString(16)+";":t)+'"></i>'):this.iconPicker.find(".selected-icon").html('<i class="fip-icon-block"></i>'):this.iconPicker.find(".selected-icon").html('<i class="'+(t||"fip-icon-block")+'"></i>'),this.element.val(""===t?this.settings.emptyIconValue:t).trigger("change"),null!==this.triggerEvent)for(var e in this.triggerEvent)this.element.trigger(this.triggerEvent[e]);this.currentIcon=t,this.setHighlightedIcon()},toggleIconSelector:function(){this.open=this.open?0:1,this.iconPicker.find(".selector-popup").slideToggle(300),this.iconPicker.find(".selector-button i").toggleClass("fip-icon-down-dir"),this.iconPicker.find(".selector-button i").toggleClass("fip-icon-up-dir"),this.open&&this.iconPicker.find(".icons-search-input").trigger("focus").select()},resetSearch:function(){this.iconPicker.find(".icons-search-input").val(""),this.searchIcon.removeClass("fip-icon-cancel"),this.searchIcon.addClass("fip-icon-search"),this.iconPicker.find(".selector-arrow-left").hide(),this.currentPage=1,this.isSearch=!1,this.renderIconContainer(),this.totalPage>1&&this.iconPicker.find(".selector-arrow-right").show()}},t.fn.fontIconPicker=function(e){return this.each((function(){t.data(this,"fontIconPicker")||t.data(this,"fontIconPicker",new i(this,e))})),this.setIcons=t.proxy((function(e,i){undefined===e&&(e=!1),undefined===i&&(i=!1),this.each((function(){t.data(this,"fontIconPicker").settings.source=e,t.data(this,"fontIconPicker").settings.searchSource=i,t.data(this,"fontIconPicker").initSourceIndex(),t.data(this,"fontIconPicker").resetSearch(),t.data(this,"fontIconPicker").loadIcons()}))}),this),this.destroyPicker=t.proxy((function(){this.each((function(){t.data(this,"fontIconPicker")&&(t.data(this,"fontIconPicker").iconPicker.remove(),t.data(this,"fontIconPicker").element.css({visibility:"",top:"",position:"",zIndex:"",left:"",display:"",height:"",width:"",padding:"",margin:"",border:"",verticalAlign:""}),t.removeData(this,"fontIconPicker"))}))}),this),this.refreshPicker=t.proxy((function(s){s||(s=e),this.destroyPicker(),this.each((function(){t.data(this,"fontIconPicker")||t.data(this,"fontIconPicker",new i(this,s))}))}),this),this}}(jQuery);
admin/assets/js/mega-content-handler.js ADDED
@@ -0,0 +1,127 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function ($) {
2
+ 'use strict';
3
+
4
+ $(document).ready(function() {
5
+
6
+ window.PaMegaContentHandler = {
7
+
8
+ initEvents: function () {
9
+ let _this = this;
10
+
11
+ $('.premium-live-editor-iframe-modal .eicon-close').on('click', this.closeModal);
12
+
13
+ $(document).on('click', '.premium-live-editor-iframe-modal', function (e) {
14
+ if ($(e.target).closest(".dialog-lightbox-widget-content").length < 1) {
15
+ _this.closeModal();
16
+ }
17
+ });
18
+
19
+ $('#pa-megamenu-content .premium-menu-btn').on('click', function (e) {
20
+ _this.handleMegaContent(e);
21
+ });
22
+ },
23
+
24
+ handleMegaContent: function (e) {
25
+ var widgetId = window.PremiumNavMenuSettings.currentItemId,
26
+ $modalContainer = $('.premium-live-editor-iframe-modal'),
27
+ paIframe = $modalContainer.find("#pa-live-editor-control-iframe"),
28
+ lightboxType = $modalContainer.find(".dialog-type-lightbox");
29
+
30
+ $('.elementor-loader-wrapper').hide();
31
+ lightboxType.show();
32
+ $modalContainer.show();
33
+ paIframe.css("z-index", "-1");
34
+
35
+ $.ajax({
36
+ type: 'POST',
37
+ url: paMegaContent.ajaxurl,
38
+ dataType: 'JSON',
39
+ data: {
40
+ action: 'handle_live_editor',
41
+ security: paMegaContent.nonce,
42
+ key: widgetId,
43
+ },
44
+ success: function (res) {
45
+ paIframe.attr("src", res.data.url);
46
+ paIframe.attr("data-premium-temp-id", res.data.id);
47
+
48
+ window.PaMegaContentHandler.saveMegaContentId( res.data.id, widgetId );
49
+
50
+ paIframe.on("load", function () {
51
+ paIframe.show();
52
+ paIframe.css("z-index", "1");
53
+ });
54
+ },
55
+ error: function (err) {
56
+ console.log(err);
57
+ }
58
+ });
59
+ },
60
+
61
+ saveMegaContentId: function ( tempID, itemID ) {
62
+
63
+ $.ajax({
64
+ type: 'POST',
65
+ url: paMegaContent.ajaxurl,
66
+ dataType: 'JSON',
67
+ data: {
68
+ action: 'save_pa_mega_item_content',
69
+ security: paMegaContent.nonce,
70
+ template_id: tempID,
71
+ menu_item_id: itemID
72
+ },
73
+ success: function (res) {
74
+ console.log(res);
75
+ },
76
+ error: function (err) {
77
+ console.log(err);
78
+ }
79
+ });
80
+ },
81
+
82
+ closeModal: function (inserted = false) {
83
+
84
+ $('.premium-live-editor-iframe-modal').css('display', 'none');
85
+
86
+ if (!inserted) {
87
+ var tempId = $(".premium-live-editor-iframe-modal #pa-live-editor-control-iframe").attr('data-premium-temp-id');
88
+
89
+ if (undefined !== tempId && '' !== tempId) {
90
+ window.PaMegaContentHandler.checkTempValidity(tempId);
91
+ }
92
+ }
93
+
94
+ // reset temp id/src attribute.
95
+ $(".premium-live-editor-iframe-modal #pa-live-editor-control-iframe").attr({
96
+ 'data-premium-temp-id': '',
97
+ 'src': ''
98
+ });
99
+ },
100
+
101
+ checkTempValidity: function (tempID) {
102
+
103
+ if ('' !== tempID) {
104
+ $.ajax({
105
+ type: 'POST',
106
+ url: paMegaContent.ajaxurl,
107
+ dataType: 'JSON',
108
+ data: {
109
+ action: 'check_temp_validity',
110
+ security: paMegaContent.nonce,
111
+ templateID: tempID,
112
+ },
113
+ success: function (res) {
114
+ console.log(res.data);
115
+ },
116
+ error: function (err) {
117
+ console.log(err);
118
+ }
119
+ });
120
+ }
121
+ },
122
+ };
123
+
124
+ window.PaMegaContentHandler.initEvents();
125
+ });
126
+
127
+ })(jQuery);
admin/assets/js/menu-editor.js ADDED
@@ -0,0 +1,248 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ (function ($) {
2
+ 'use strict';
3
+
4
+ var poppinsfontLink = document.createElement('link');
5
+ poppinsfontLink.rel = 'stylesheet';
6
+ poppinsfontLink.href = 'https://fonts.googleapis.com/css?family=Poppins:100,100italic,200,200italic,300,300italic,400,400italic,500,500italic,600,600italic,700,700italic,800,800italic,900,900italic';
7
+ poppinsfontLink.type = 'text/css';
8
+ document.head.appendChild(poppinsfontLink);
9
+
10
+ $(document).ready(function () {
11
+
12
+ window.PremiumNavMenuSettings = {
13
+
14
+ itemsData: {},
15
+
16
+ currentItemId: null,
17
+
18
+ currenItemDepth: null,
19
+
20
+ init: function () {
21
+ this.initControls();
22
+ this.addSettingsTriggers();
23
+ this.initEvents();
24
+ },
25
+
26
+ initControls: function () {
27
+ // Color Controls.
28
+ $('#premium-icon-color-field, #premium-badge-color-field, #premium-badge-bg-field').wpColorPicker();
29
+
30
+ // Icon Picker.
31
+ this.iconPicker = $('#premium-icon-field').fontIconPicker({
32
+ source: PremiumIconsList,
33
+ hasSearch: true,
34
+ emptyIcon: true,
35
+ });
36
+ },
37
+
38
+ addSettingsTriggers: function () {
39
+ let _this = this,
40
+ pos = $('body').hasClass('rtl') ? 'right' : 'left';
41
+
42
+ $('#menu-to-edit .menu-item').each(function () {
43
+
44
+ let itemTrigger = _this.getTriggerHtml(this);
45
+
46
+ $(this).addClass('premium-menu-item');
47
+ $(this).append(itemTrigger);
48
+
49
+ $(this).find('.premium-menu-item-settings').css(pos, $(this).find('.menu-item-handle').outerWidth() + 10 + 'px');
50
+ });
51
+ },
52
+
53
+ initEvents: function () {
54
+ var _this = this;
55
+
56
+ $('.premium-menu-item-settings').on('click', function (e) {
57
+ _this.triggerSettingsPopup(_this, e);
58
+ });
59
+
60
+ $('#premium-menu-save').on('click', function () {
61
+ var $button = $(this);
62
+ _this.saveItemSettings(_this, $button);
63
+ });
64
+
65
+ $('.premium-menu-settings-modal .eicon-close').on('click', this.closeModal);
66
+
67
+ $(document).on('click', '.premium-menu-settings-modal', function (e) {
68
+ if ($(e.target).closest(".dialog-lightbox-widget-content").length < 1) {
69
+ window.PremiumNavMenuSettings.closeModal();
70
+ }
71
+ });
72
+ },
73
+
74
+ triggerSettingsPopup: function (_this, e) {
75
+
76
+ _this.currentItemId = $(e.target).data('id');
77
+ _this.currenItemDepth = $(e.target).data('item-depth');
78
+
79
+ _this.handlePopupControls(_this);
80
+
81
+ $(".premium-menu-btn i").addClass("loader-hidden dashicons-admin-generic").removeClass("dashicons-yes");
82
+ $(".premium-menu-btn span").text('Save Settings');
83
+ // $('#elementor-template-nav-menu-modal-container').show();
84
+ // show the container and show a spinner till controls are prepared.
85
+ },
86
+
87
+ handlePopupControls: function (_this) {
88
+
89
+ if (_this.itemsData[_this.currentItemId]) {
90
+ _this.setControlsVal(_this.itemsData[_this.currentItemId]);
91
+
92
+ } else {
93
+ $.ajax({
94
+ url: paMenuSettings.ajaxurl,
95
+ type: 'POST',
96
+ data: {
97
+ action: 'get_pa_menu_item_settings',
98
+ security: paMenuSettings.nonce,
99
+ item_id: _this.currentItemId
100
+ },
101
+ success: function (res) {
102
+ _this.itemsData[_this.currentItemId] = res.data;
103
+ _this.setControlsVal(res.data);
104
+ },
105
+ error: function (error) {
106
+ console.log(error);
107
+ }
108
+ });
109
+ }
110
+ },
111
+
112
+ setControlsVal: function (settings) {
113
+
114
+ var _this = this;
115
+
116
+ if (settings) {
117
+
118
+ let isChecked = 'true' == settings.mega_content_enabled ? true : false;
119
+
120
+ $('#pa-megamenu-icon-type').val(settings.item_icon_type)
121
+ _this.iconPicker.val(settings.item_icon);
122
+ _this.iconPicker.refreshPicker();
123
+ $('#premium-lottie-url').val(settings.item_lottie_url);
124
+ $('#premium-badge-text-field').val(settings.item_badge);
125
+ $('#premium-badge-bg-field').wpColorPicker("color", settings.item_badge_bg);
126
+ $('#pa-megamenu-position').val(settings.mega_content_pos);
127
+ $('#premium-icon-color-field').wpColorPicker("color", settings.item_icon_color);
128
+ $('#premium-badge-color-field').wpColorPicker("color", settings.item_badge_color);
129
+ $('#pa-mega-content-width').val(settings.mega_content_width.replace('px', ''));
130
+ $('#pa-megamenu-switcher input').prop('checked', isChecked);
131
+
132
+ } else {
133
+ $('#pa-megamenu-icon-type').val('icon');
134
+ _this.iconPicker.val('');
135
+ _this.iconPicker.refreshPicker();
136
+ $('#premium-lottie-url').val('');
137
+ $('#premium-badge-text-field').val('');
138
+ $('#premium-badge-bg-field').wpColorPicker("color", '#bada55');
139
+ $('#pa-megamenu-position').val('default');
140
+ $('#premium-icon-color-field').wpColorPicker("color", '#bada55');
141
+ $('#premium-badge-color-field').wpColorPicker("color", '#bada55');
142
+ $('#pa-mega-content-width').val('');
143
+ $('#pa-megamenu-switcher input').prop('checked', false);
144
+ }
145
+
146
+ this.checkIconType();
147
+
148
+ $("#pa-megamenu-icon-type").on('change', function () {
149
+ _this.checkIconType();
150
+ });
151
+
152
+ $('#elementor-template-nav-menu-modal-container').show();
153
+ },
154
+
155
+ checkIconType: function () {
156
+
157
+ if ('icon' === $("#pa-megamenu-icon-type").val()) {
158
+
159
+ $(".premium-lottie-settings").addClass("premium-setting-hidden");
160
+ $(".premium-icon-settings").removeClass("premium-setting-hidden");
161
+ } else {
162
+ $(".premium-lottie-settings").removeClass("premium-setting-hidden");
163
+ $(".premium-icon-settings").addClass("premium-setting-hidden");
164
+ }
165
+
166
+ },
167
+ saveItemSettings: function (_this, $btn) {
168
+
169
+ var $btnIcon = $btn.find("i");
170
+ if (!$btnIcon.hasClass("loader-hidden"))
171
+ return;
172
+
173
+ $btnIcon.addClass("loading").removeClass("loader-hidden");
174
+
175
+ let itemSettings = {
176
+ item_id: _this.currentItemId,
177
+ item_depth: _this.currenItemDepth,
178
+ item_icon_type: $('#pa-megamenu-icon-type').val(),
179
+ item_icon: $('#premium-icon-field').val(),
180
+ item_lottie_url: $('#premium-lottie-url').val(),
181
+ item_badge: $('#premium-badge-text-field').val(),
182
+ item_badge_bg: $('#premium-badge-bg-field').val(),
183
+ mega_content_pos: $('#pa-megamenu-position').val(),
184
+ item_icon_color: $('#premium-icon-color-field').val(),
185
+ item_badge_color: $('#premium-badge-color-field').val(),
186
+ mega_content_enabled: $('#pa-megamenu-switcher input').prop('checked'),
187
+ mega_content_width: '' === $('#pa-mega-content-width').val() ? '1170px' : $('#pa-mega-content-width').val() + 'px',
188
+ };
189
+
190
+ _this.itemsData[_this.currentItemId] = itemSettings;
191
+
192
+ $.ajax({
193
+ url: paMenuSettings.ajaxurl,
194
+ type: 'POST',
195
+ data: {
196
+ action: 'save_pa_menu_item_settings',
197
+ security: paMenuSettings.nonce,
198
+ settings: itemSettings
199
+ },
200
+ success: function (res) {
201
+ $btnIcon.removeClass("loading dashicons-admin-generic").addClass("dashicons-yes");
202
+
203
+ $btn.find("span").text('Settings Saved');
204
+
205
+ setTimeout(function () {
206
+ $btnIcon.addClass("loader-hidden dashicons-admin-generic").removeClass("dashicons-yes");
207
+ $btn.find("span").text('Save Settings');
208
+ }, 2000);
209
+ },
210
+ error: function (error) {
211
+ console.log(error);
212
+ }
213
+ });
214
+ },
215
+
216
+ closeModal: function () {
217
+ $('#elementor-template-nav-menu-modal-container').hide();
218
+ },
219
+
220
+ getItemId: function ($item) {
221
+ let id = $($item).attr('id').replace('menu-item-', '');
222
+
223
+ return id;
224
+ },
225
+
226
+ getItemDepth: function ($item) {
227
+ let depth = $($item).attr('class').match(/menu-item-depth-\d/);
228
+
229
+ if (depth.length) {
230
+ return depth[0].replace('menu-item-depth-', '');
231
+ } else {
232
+ return 0;
233
+ }
234
+ },
235
+
236
+ getTriggerHtml: function ($item) {
237
+ let itemId = this.getItemId($item),
238
+ itemDepth = this.getItemDepth($item);
239
+
240
+ return `<span class="premium-menu-item-settings" data-id="${itemId}" data-item-depth="${itemDepth}">Premium Menu</span>`;
241
+ // add a logo or an icon to the trigger.
242
+ },
243
+ }
244
+
245
+ window.PremiumNavMenuSettings.init();
246
+ });
247
+
248
+ })(jQuery);
admin/assets/js/pa-notice.js CHANGED
@@ -5,7 +5,7 @@
5
 
6
  var adminNotices = {
7
  'radius': 'radius_notice',
8
- 'badge': 'badge_notice',
9
  };
10
 
11
  if (undefined !== notice) {
5
 
6
  var adminNotices = {
7
  'radius': 'radius_notice',
8
+ 'nav': 'nav_menu_notice',
9
  };
10
 
11
  if (undefined !== notice) {
admin/assets/js/premium-icons-list.js ADDED
@@ -0,0 +1,1507 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const PremiumIconsList = {
2
+ Dashicons: [
3
+ "",
4
+ "dashicons dashicons-menu",
5
+ "dashicons dashicons-admin-site",
6
+ "dashicons dashicons-dashboard",
7
+ "dashicons dashicons-admin-post",
8
+ "dashicons dashicons-admin-media",
9
+ "dashicons dashicons-admin-links",
10
+ "dashicons dashicons-admin-page",
11
+ "dashicons dashicons-admin-comments",
12
+ "dashicons dashicons-admin-appearance",
13
+ "dashicons dashicons-admin-plugins",
14
+ "dashicons dashicons-admin-users",
15
+ "dashicons dashicons-admin-tools",
16
+ "dashicons dashicons-admin-settings",
17
+ "dashicons dashicons-admin-network",
18
+ "dashicons dashicons-admin-home",
19
+ "dashicons dashicons-admin-generic",
20
+ "dashicons dashicons-admin-collapse",
21
+ "dashicons dashicons-filter",
22
+ "dashicons dashicons-admin-customizer",
23
+ "dashicons dashicons-admin-multisite",
24
+ "dashicons dashicons-welcome-write-blog",
25
+ "dashicons dashicons-welcome-add-page",
26
+ "dashicons dashicons-welcome-view-site",
27
+ "dashicons dashicons-welcome-widgets-menus",
28
+ "dashicons dashicons-welcome-comments",
29
+ "dashicons dashicons-welcome-learn-more",
30
+ "dashicons dashicons-format-aside",
31
+ "dashicons dashicons-format-image",
32
+ "dashicons dashicons-format-gallery",
33
+ "dashicons dashicons-format-video",
34
+ "dashicons dashicons-format-status",
35
+ "dashicons dashicons-format-quote",
36
+ "dashicons dashicons-format-chat",
37
+ "dashicons dashicons-format-audio",
38
+ "dashicons dashicons-camera",
39
+ "dashicons dashicons-images-alt",
40
+ "dashicons dashicons-images-alt2",
41
+ "dashicons dashicons-video-alt",
42
+ "dashicons dashicons-video-alt2",
43
+ "dashicons dashicons-video-alt3",
44
+ "dashicons dashicons-media-archive",
45
+ "dashicons dashicons-media-audio",
46
+ "dashicons dashicons-media-code",
47
+ "dashicons dashicons-media-default",
48
+ "dashicons dashicons-media-document",
49
+ "dashicons dashicons-media-interactive",
50
+ "dashicons dashicons-media-spreadsheet",
51
+ "dashicons dashicons-media-text",
52
+ "dashicons dashicons-media-video",
53
+ "dashicons dashicons-playlist-audio",
54
+ "dashicons dashicons-playlist-video",
55
+ "dashicons dashicons-controls-play",
56
+ "dashicons dashicons-controls-pause",
57
+ "dashicons dashicons-controls-forward",
58
+ "dashicons dashicons-controls-skipforward",
59
+ "dashicons dashicons-controls-back",
60
+ "dashicons dashicons-controls-skipback",
61
+ "dashicons dashicons-controls-repeat",
62
+ "dashicons dashicons-controls-volumeon",
63
+ "dashicons dashicons-controls-volumeoff",
64
+ "dashicons dashicons-image-crop",
65
+ "dashicons dashicons-image-rotate",
66
+ "dashicons dashicons-image-rotate-left",
67
+ "dashicons dashicons-image-rotate-right",
68
+ "dashicons dashicons-image-flip-vertical",
69
+ "dashicons dashicons-image-flip-horizontal",
70
+ "dashicons dashicons-image-filter",
71
+ "dashicons dashicons-undo",
72
+ "dashicons dashicons-redo",
73
+ "dashicons dashicons-editor-bold",
74
+ "dashicons dashicons-editor-italic",
75
+ "dashicons dashicons-editor-ul",
76
+ "dashicons dashicons-editor-ol",
77
+ "dashicons dashicons-editor-quote",
78
+ "dashicons dashicons-editor-alignleft",
79
+ "dashicons dashicons-editor-aligncenter",
80
+ "dashicons dashicons-editor-alignright",
81
+ "dashicons dashicons-editor-insertmore",
82
+ "dashicons dashicons-editor-spellcheck",
83
+ "dashicons dashicons-editor-expand",
84
+ "dashicons dashicons-editor-contract",
85
+ "dashicons dashicons-editor-kitchensink",
86
+ "dashicons dashicons-editor-underline",
87
+ "dashicons dashicons-editor-justify",
88
+ "dashicons dashicons-editor-textcolor",
89
+ "dashicons dashicons-editor-paste-word",
90
+ "dashicons dashicons-editor-paste-text",
91
+ "dashicons dashicons-editor-removeformatting",
92
+ "dashicons dashicons-editor-video",
93
+ "dashicons dashicons-editor-customchar",
94
+ "dashicons dashicons-editor-outdent",
95
+ "dashicons dashicons-editor-indent",
96
+ "dashicons dashicons-editor-help",
97
+ "dashicons dashicons-editor-strikethrough",
98
+ "dashicons dashicons-editor-unlink",
99
+ "dashicons dashicons-editor-rtl",
100
+ "dashicons dashicons-editor-break",
101
+ "dashicons dashicons-editor-code",
102
+ "dashicons dashicons-editor-paragraph",
103
+ "dashicons dashicons-editor-table",
104
+ "dashicons dashicons-align-left",
105
+ "dashicons dashicons-align-right",
106
+ "dashicons dashicons-align-center",
107
+ "dashicons dashicons-align-none",
108
+ "dashicons dashicons-lock",
109
+ "dashicons dashicons-unlock",
110
+ "dashicons dashicons-calendar",
111
+ "dashicons dashicons-calendar-alt",
112
+ "dashicons dashicons-visibility",
113
+ "dashicons dashicons-hidden",
114
+ "dashicons dashicons-post-status",
115
+ "dashicons dashicons-edit",
116
+ "dashicons dashicons-trash",
117
+ "dashicons dashicons-sticky",
118
+ "dashicons dashicons-external",
119
+ "dashicons dashicons-arrow-up",
120
+ "dashicons dashicons-arrow-down",
121
+ "dashicons dashicons-arrow-right",
122
+ "dashicons dashicons-arrow-left",
123
+ "dashicons dashicons-arrow-up-alt",
124
+ "dashicons dashicons-arrow-down-alt",
125
+ "dashicons dashicons-arrow-right-alt",
126
+ "dashicons dashicons-arrow-left-alt",
127
+ "dashicons dashicons-arrow-up-alt2",
128
+ "dashicons dashicons-arrow-down-alt2",
129
+ "dashicons dashicons-arrow-right-alt2",
130
+ "dashicons dashicons-arrow-left-alt2",
131
+ "dashicons dashicons-sort",
132
+ "dashicons dashicons-leftright",
133
+ "dashicons dashicons-randomize",
134
+ "dashicons dashicons-list-view",
135
+ "dashicons dashicons-exerpt-view",
136
+ "dashicons dashicons-grid-view",
137
+ "dashicons dashicons-move",
138
+ "dashicons dashicons-share",
139
+ "dashicons dashicons-share-alt",
140
+ "dashicons dashicons-share-alt2",
141
+ "dashicons dashicons-twitter",
142
+ "dashicons dashicons-rss",
143
+ "dashicons dashicons-email",
144
+ "dashicons dashicons-email-alt",
145
+ "dashicons dashicons-facebook",
146
+ "dashicons dashicons-facebook-alt",
147
+ "dashicons dashicons-googleplus",
148
+ "dashicons dashicons-networking",
149
+ "dashicons dashicons-hammer",
150
+ "dashicons dashicons-art",
151
+ "dashicons dashicons-migrate",
152
+ "dashicons dashicons-performance",
153
+ "dashicons dashicons-universal-access",
154
+ "dashicons dashicons-universal-access-alt",
155
+ "dashicons dashicons-tickets",
156
+ "dashicons dashicons-nametag",
157
+ "dashicons dashicons-clipboard",
158
+ "dashicons dashicons-heart",
159
+ "dashicons dashicons-megaphone",
160
+ "dashicons dashicons-schedule",
161
+ "dashicons dashicons-wordpress",
162
+ "dashicons dashicons-wordpress-alt",
163
+ "dashicons dashicons-pressthis",
164
+ "dashicons dashicons-update",
165
+ "dashicons dashicons-screenoptions",
166
+ "dashicons dashicons-info",
167
+ "dashicons dashicons-cart",
168
+ "dashicons dashicons-feedback",
169
+ "dashicons dashicons-cloud",
170
+ "dashicons dashicons-translation",
171
+ "dashicons dashicons-tag",
172
+ "dashicons dashicons-category",
173
+ "dashicons dashicons-archive",
174
+ "dashicons dashicons-tagcloud",
175
+ "dashicons dashicons-text",
176
+ "dashicons dashicons-yes",
177
+ "dashicons dashicons-no",
178
+ "dashicons dashicons-no-alt",
179
+ "dashicons dashicons-plus",
180
+ "dashicons dashicons-plus-alt",
181
+ "dashicons dashicons-minus",
182
+ "dashicons dashicons-dismiss",
183
+ "dashicons dashicons-marker",
184
+ "dashicons dashicons-star-filled",
185
+ "dashicons dashicons-star-half",
186
+ "dashicons dashicons-star-empty",
187
+ "dashicons dashicons-flag",
188
+ "dashicons dashicons-warning",
189
+ "dashicons dashicons-location",
190
+ "dashicons dashicons-location-alt",
191
+ "dashicons dashicons-vault",
192
+ "dashicons dashicons-shield",
193
+ "dashicons dashicons-shield-alt",
194
+ "dashicons dashicons-sos",
195
+ "dashicons dashicons-search",
196
+ "dashicons dashicons-slides",
197
+ "dashicons dashicons-analytics",
198
+ "dashicons dashicons-chart-pie",
199
+ "dashicons dashicons-chart-bar",
200
+ "dashicons dashicons-chart-line",
201
+ "dashicons dashicons-chart-area",
202
+ "dashicons dashicons-groups",
203
+ "dashicons dashicons-businessman",
204
+ "dashicons dashicons-id",
205
+ "dashicons dashicons-id-alt",
206
+ "dashicons dashicons-products",
207
+ "dashicons dashicons-awards",
208
+ "dashicons dashicons-forms",
209
+ "dashicons dashicons-testimonial",
210
+ "dashicons dashicons-portfolio",
211
+ "dashicons dashicons-book",
212
+ "dashicons dashicons-book-alt",
213
+ "dashicons dashicons-download",
214
+ "dashicons dashicons-upload",
215
+ "dashicons dashicons-backup",
216
+ "dashicons dashicons-clock",
217
+ "dashicons dashicons-lightbulb",
218
+ "dashicons dashicons-microphone",
219
+ "dashicons dashicons-desktop",
220
+ "dashicons dashicons-laptop",
221
+ "dashicons dashicons-tablet",
222
+ "dashicons dashicons-smartphone",
223
+ "dashicons dashicons-phone",
224
+ "dashicons dashicons-index-card",
225
+ "dashicons dashicons-carrot",
226
+ "dashicons dashicons-building",
227
+ "dashicons dashicons-store",
228
+ "dashicons dashicons-album",
229
+ "dashicons dashicons-palmtree",
230
+ "dashicons dashicons-tickets-alt",
231
+ "dashicons dashicons-money",
232
+ "dashicons dashicons-smiley",
233
+ "dashicons dashicons-thumbs-up",
234
+ "dashicons dashicons-thumbs-down",
235
+ "dashicons dashicons-layout",
236
+ "dashicons dashicons-paperclip"
237
+ ],
238
+ "Font Awesome Icons": [
239
+ "fa fa-glass",
240
+
241
+ "fa fa-music",
242
+
243
+ "fa fa-search",
244
+
245
+ "fa fa-envelope-o",
246
+
247
+ "fa fa-heart",
248
+
249
+ "fa fa-star",
250
+
251
+ "fa fa-star-o",
252
+
253
+ "fa fa-user",
254
+
255
+ "fa fa-film",
256
+
257
+ "fa fa-th-large",
258
+
259
+ "fa fa-th",
260
+
261
+ "fa fa-th-list",
262
+
263
+ "fa fa-check",
264
+
265
+ "fa fa-times",
266
+
267
+ "fa fa-search-plus",
268
+
269
+ "fa fa-search-minus",
270
+
271
+ "fa fa-power-off",
272
+
273
+ "fa fa-signal",
274
+
275
+ "fa fa-cog",
276
+
277
+ "fa fa-trash-o",
278
+
279
+ "fa fa-home",
280
+
281
+ "fa fa-file-o",
282
+
283
+ "fa fa-clock-o",
284
+
285
+ "fa fa-road",
286
+
287
+ "fa fa-download",
288
+
289
+ "fa fa-arrow-circle-o-down",
290
+
291
+ "fa fa-arrow-circle-o-up",
292
+
293
+ "fa fa-inbox",
294
+
295
+ "fa fa-play-circle-o",
296
+
297
+ "fa fa-repeat",
298
+
299
+ "fa fa-refresh",
300
+
301
+ "fa fa-list-alt",
302
+
303
+ "fa fa-lock",
304
+
305
+ "fa fa-flag",
306
+
307
+ "fa fa-headphones",
308
+
309
+ "fa fa-volume-off",
310
+
311
+ "fa fa-volume-down",
312
+
313
+ "fa fa-volume-up",
314
+
315
+ "fa fa-qrcode",
316
+
317
+ "fa fa-barcode",
318
+
319
+ "fa fa-tag",
320
+
321
+ "fa fa-tags",
322
+
323
+ "fa fa-book",
324
+
325
+ "fa fa-bookmark",
326
+
327
+ "fa fa-print",
328
+
329
+ "fa fa-camera",
330
+
331
+ "fa fa-font",
332
+
333
+ "fa fa-bold",
334
+
335
+ "fa fa-italic",
336
+
337
+ "fa fa-text-height",
338
+
339
+ "fa fa-text-width",
340
+
341
+ "fa fa-align-left",
342
+
343
+ "fa fa-align-center",
344
+
345
+ "fa fa-align-right",
346
+
347
+ "fa fa-align-justify",
348
+
349
+ "fa fa-list",
350
+
351
+ "fa fa-outdent",
352
+
353
+ "fa fa-indent",
354
+
355
+ "fa fa-video-camera",
356
+
357
+ "fa fa-picture-o",
358
+
359
+ "fa fa-pencil",
360
+
361
+ "fa fa-map-marker",
362
+
363
+ "fa fa-adjust",
364
+
365
+ "fa fa-tint",
366
+
367
+ "fa fa-pencil-square-o",
368
+
369
+ "fa fa-share-square-o",
370
+
371
+ "fa fa-check-square-o",
372
+
373
+ "fa fa-arrows",
374
+
375
+ "fa fa-step-backward",
376
+
377
+ "fa fa-fast-backward",
378
+
379
+ "fa fa-backward",
380
+
381
+ "fa fa-play",
382
+
383
+ "fa fa-pause",
384
+
385
+ "fa fa-stop",
386
+
387
+ "fa fa-forward",
388
+
389
+ "fa fa-fast-forward",
390
+
391
+ "fa fa-step-forward",
392
+
393
+ "fa fa-eject",
394
+
395
+ "fa fa-chevron-left",
396
+
397
+ "fa fa-chevron-right",
398
+
399
+ "fa fa-plus-circle",
400
+
401
+ "fa fa-minus-circle",
402
+
403
+ "fa fa-times-circle",
404
+
405
+ "fa fa-check-circle",
406
+
407
+ "fa fa-question-circle",
408
+
409
+ "fa fa-info-circle",
410
+
411
+ "fa fa-crosshairs",
412
+
413
+ "fa fa-times-circle-o",
414
+
415
+ "fa fa-check-circle-o",
416
+
417
+ "fa fa-ban",
418
+
419
+ "fa fa-arrow-left",
420
+
421
+ "fa fa-arrow-right",
422
+
423
+ "fa fa-arrow-up",
424
+
425
+ "fa fa-arrow-down",
426
+
427
+ "fa fa-share",
428
+
429
+ "fa fa-expand",
430
+
431
+ "fa fa-compress",
432
+
433
+ "fa fa-plus",
434
+
435
+ "fa fa-minus",
436
+
437
+ "fa fa-asterisk",
438
+
439
+ "fa fa-exclamation-circle",
440
+
441
+ "fa fa-gift",
442
+
443
+ "fa fa-leaf",
444
+
445
+ "fa fa-fire",
446
+
447
+ "fa fa-eye",
448
+
449
+ "fa fa-eye-slash",
450
+
451
+ "fa fa-exclamation-triangle",
452
+
453
+ "fa fa-plane",
454
+
455
+ "fa fa-calendar",
456
+
457
+ "fa fa-random",
458
+
459
+ "fa fa-comment",
460
+
461
+ "fa fa-magnet",
462
+
463
+ "fa fa-chevron-up",
464
+
465
+ "fa fa-chevron-down",
466
+
467
+ "fa fa-retweet",
468
+
469
+ "fa fa-shopping-cart",
470
+
471
+ "fa fa-folder",
472
+
473
+ "fa fa-folder-open",
474
+
475
+ "fa fa-arrows-v",
476
+
477
+ "fa fa-arrows-h",
478
+
479
+ "fa fa-bar-chart",
480
+
481
+ "fa fa-twitter-square",
482
+
483
+ "fa fa-facebook-square",
484
+
485
+ "fa fa-camera-retro",
486
+
487
+ "fa fa-key",
488
+
489
+ "fa fa-cogs",
490
+
491
+ "fa fa-comments",
492
+
493
+ "fa fa-thumbs-o-up",
494
+
495
+ "fa fa-thumbs-o-down",
496
+
497
+ "fa fa-star-half",
498
+
499
+ "fa fa-heart-o",
500
+
501
+ "fa fa-sign-out",
502
+
503
+ "fa fa-linkedin-square",
504
+
505
+ "fa fa-thumb-tack",
506
+
507
+ "fa fa-external-link",
508
+
509
+ "fa fa-sign-in",
510
+
511
+ "fa fa-trophy",
512
+
513
+ "fa fa-github-square",
514
+
515
+ "fa fa-upload",
516
+
517
+ "fa fa-lemon-o",
518
+
519
+ "fa fa-phone",
520
+
521
+ "fa fa-square-o",
522
+
523
+ "fa fa-bookmark-o",
524
+
525
+ "fa fa-phone-square",
526
+
527
+ "fa fa-twitter",
528
+
529
+ "fa fa-facebook",
530
+
531
+ "fa fa-github",
532
+
533
+ "fa fa-unlock",
534
+
535
+ "fa fa-credit-card",
536
+
537
+ "fa fa-rss",
538
+
539
+ "fa fa-hdd-o",
540
+
541
+ "fa fa-bullhorn",
542
+
543
+ "fa fa-bell",
544
+
545
+ "fa fa-certificate",
546
+
547
+ "fa fa-hand-o-right",
548
+
549
+ "fa fa-hand-o-left",
550
+
551
+ "fa fa-hand-o-up",
552
+
553
+ "fa fa-hand-o-down",
554
+
555
+ "fa fa-arrow-circle-left",
556
+
557
+ "fa fa-arrow-circle-right",
558
+
559
+ "fa fa-arrow-circle-up",
560
+
561
+ "fa fa-arrow-circle-down",
562
+
563
+ "fa fa-globe",
564
+
565
+ "fa fa-wrench",
566
+
567
+ "fa fa-tasks",
568
+
569
+ "fa fa-filter",
570
+
571
+ "fa fa-briefcase",
572
+
573
+ "fa fa-arrows-alt",
574
+
575
+ "fa fa-users",
576
+
577
+ "fa fa-link",
578
+
579
+ "fa fa-cloud",
580
+
581
+ "fa fa-flask",
582
+
583
+ "fa fa-scissors",
584
+
585
+ "fa fa-files-o",
586
+
587
+ "fa fa-paperclip",
588
+
589
+ "fa fa-floppy-o",
590
+
591
+ "fa fa-square",
592
+
593
+ "fa fa-bars",
594
+
595
+ "fa fa-list-ul",
596
+
597
+ "fa fa-list-ol",
598
+
599
+ "fa fa-strikethrough",
600
+
601
+ "fa fa-underline",
602
+
603
+ "fa fa-table",
604
+
605
+ "fa fa-magic",
606
+
607
+ "fa fa-truck",
608
+
609
+ "fa fa-pinterest",
610
+
611
+ "fa fa-pinterest-square",
612
+
613
+ "fa fa-google-plus-square",
614
+
615
+ "fa fa-google-plus",
616
+
617
+ "fa fa-money",
618
+
619
+ "fa fa-caret-down",
620
+
621
+ "fa fa-caret-up",
622
+
623
+ "fa fa-caret-left",
624
+
625
+ "fa fa-caret-right",
626
+
627
+ "fa fa-columns",
628
+
629
+ "fa fa-sort",
630
+
631
+ "fa fa-sort-desc",
632
+
633
+ "fa fa-sort-asc",
634
+
635
+ "fa fa-envelope",
636
+
637
+ "fa fa-linkedin",
638
+
639
+ "fa fa-undo",
640
+
641
+ "fa fa-gavel",
642
+
643
+ "fa fa-tachometer",
644
+
645
+ "fa fa-comment-o",
646
+
647
+ "fa fa-comments-o",
648
+
649
+ "fa fa-bolt",
650
+
651
+ "fa fa-sitemap",
652
+
653
+ "fa fa-umbrella",
654
+
655
+ "fa fa-clipboard",
656
+
657
+ "fa fa-lightbulb-o",
658
+
659
+ "fa fa-exchange",
660
+
661
+ "fa fa-cloud-download",
662
+
663
+ "fa fa-cloud-upload",
664
+
665
+ "fa fa-user-md",
666
+
667
+ "fa fa-stethoscope",
668
+
669
+ "fa fa-suitcase",
670
+
671
+ "fa fa-bell-o",
672
+
673
+ "fa fa-coffee",
674
+
675
+ "fa fa-cutlery",
676
+
677
+ "fa fa-file-text-o",
678
+
679
+ "fa fa-building-o",
680
+
681
+ "fa fa-hospital-o",
682
+
683
+ "fa fa-ambulance",
684
+
685
+ "fa fa-medkit",
686
+
687
+ "fa fa-fighter-jet",
688
+
689
+ "fa fa-beer",
690
+
691
+ "fa fa-h-square",
692
+
693
+ "fa fa-plus-square",
694
+
695
+ "fa fa-angle-double-left",
696
+
697
+ "fa fa-angle-double-right",
698
+
699
+ "fa fa-angle-double-up",
700
+
701
+ "fa fa-angle-double-down",
702
+
703
+ "fa fa-angle-left",
704
+
705
+ "fa fa-angle-right",
706
+
707
+ "fa fa-angle-up",
708
+
709
+ "fa fa-angle-down",
710
+
711
+ "fa fa-desktop",
712
+
713
+ "fa fa-laptop",
714
+
715
+ "fa fa-tablet",
716
+
717
+ "fa fa-mobile",
718
+
719
+ "fa fa-circle-o",
720
+
721
+ "fa fa-quote-left",
722
+
723
+ "fa fa-quote-right",
724
+
725
+ "fa fa-spinner",
726
+
727
+ "fa fa-circle",
728
+
729
+ "fa fa-reply",
730
+
731
+ "fa fa-github-alt",
732
+
733
+ "fa fa-folder-o",
734
+
735
+ "fa fa-folder-open-o",
736
+
737
+ "fa fa-smile-o",
738
+
739
+ "fa fa-frown-o",
740
+
741
+ "fa fa-meh-o",
742
+
743
+ "fa fa-gamepad",
744
+
745
+ "fa fa-keyboard-o",
746
+
747
+ "fa fa-flag-o",
748
+
749
+ "fa fa-flag-checkered",
750
+
751
+ "fa fa-terminal",
752
+
753
+ "fa fa-code",
754
+
755
+ "fa fa-reply-all",
756
+
757
+ "fa fa-star-half-o",
758
+
759
+ "fa fa-location-arrow",
760
+
761
+ "fa fa-crop",
762
+
763
+ "fa fa-code-fork",
764
+
765
+ "fa fa-chain-broken",
766
+
767
+ "fa fa-question",
768
+
769
+ "fa fa-info",
770
+
771
+ "fa fa-exclamation",
772
+
773
+ "fa fa-superscript",
774
+
775
+ "fa fa-subscript",
776
+
777
+ "fa fa-eraser",
778
+
779
+ "fa fa-puzzle-piece",
780
+
781
+ "fa fa-microphone",
782
+
783
+ "fa fa-microphone-slash",
784
+
785
+ "fa fa-shield",
786
+
787
+ "fa fa-calendar-o",
788
+
789
+ "fa fa-fire-extinguisher",
790
+
791
+ "fa fa-rocket",
792
+
793
+ "fa fa-maxcdn",
794
+
795
+ "fa fa-chevron-circle-left",
796
+
797
+ "fa fa-chevron-circle-right",
798
+
799
+ "fa fa-chevron-circle-up",
800
+
801
+ "fa fa-chevron-circle-down",
802
+
803
+ "fa fa-html5",
804
+
805
+ "fa fa-css3",
806
+
807
+ "fa fa-anchor",
808
+
809
+ "fa fa-unlock-alt",
810
+
811
+ "fa fa-bullseye",
812
+
813
+ "fa fa-ellipsis-h",
814
+
815
+ "fa fa-ellipsis-v",
816
+
817
+ "fa fa-rss-square",
818
+
819
+ "fa fa-play-circle",
820
+
821
+ "fa fa-ticket",
822
+
823
+ "fa fa-minus-square",
824
+
825
+ "fa fa-minus-square-o",
826
+
827
+ "fa fa-level-up",
828
+
829
+ "fa fa-level-down",
830
+
831
+ "fa fa-check-square",
832
+
833
+ "fa fa-pencil-square",
834
+
835
+ "fa fa-external-link-square",
836
+
837
+ "fa fa-share-square",
838
+
839
+ "fa fa-compass",
840
+
841
+ "fa fa-caret-square-o-down",
842
+
843
+ "fa fa-caret-square-o-up",
844
+
845
+ "fa fa-caret-square-o-right",
846
+
847
+ "fa fa-eur",
848
+
849
+ "fa fa-gbp",
850
+
851
+ "fa fa-usd",
852
+
853
+ "fa fa-inr",
854
+
855
+ "fa fa-jpy",
856
+
857
+ "fa fa-rub",
858
+
859
+ "fa fa-krw",
860
+
861
+ "fa fa-btc",
862
+
863
+ "fa fa-file",
864
+
865
+ "fa fa-file-text",
866
+
867
+ "fa fa-sort-alpha-asc",
868
+
869
+ "fa fa-sort-alpha-desc",
870
+
871
+ "fa fa-sort-amount-asc",
872
+
873
+ "fa fa-sort-amount-desc",
874
+
875
+ "fa fa-sort-numeric-asc",
876
+
877
+ "fa fa-sort-numeric-desc",
878
+
879
+ "fa fa-thumbs-up",
880
+
881
+ "fa fa-thumbs-down",
882
+
883
+ "fa fa-youtube-square",
884
+
885
+ "fa fa-youtube",
886
+
887
+ "fa fa-xing",
888
+
889
+ "fa fa-xing-square",
890
+
891
+ "fa fa-youtube-play",
892
+
893
+ "fa fa-dropbox",
894
+
895
+ "fa fa-stack-overflow",
896
+
897
+ "fa fa-instagram",
898
+
899
+ "fa fa-flickr",
900
+
901
+ "fa fa-adn",
902
+
903
+ "fa fa-bitbucket",
904
+
905
+ "fa fa-bitbucket-square",
906
+
907
+ "fa fa-tumblr",
908
+
909
+ "fa fa-tumblr-square",
910
+
911
+ "fa fa-long-arrow-down",
912
+
913
+ "fa fa-long-arrow-up",
914
+
915
+ "fa fa-long-arrow-left",
916
+
917
+ "fa fa-long-arrow-right",
918
+
919
+ "fa fa-apple",
920
+
921
+ "fa fa-windows",
922
+
923
+ "fa fa-android",
924
+
925
+ "fa fa-linux",
926
+
927
+ "fa fa-dribbble",
928
+
929
+ "fa fa-skype",
930
+
931
+ "fa fa-foursquare",
932
+
933
+ "fa fa-trello",
934
+
935
+ "fa fa-female",
936
+
937
+ "fa fa-male",
938
+
939
+ "fa fa-gratipay",
940
+
941
+ "fa fa-sun-o",
942
+
943
+ "fa fa-moon-o",
944
+
945
+ "fa fa-archive",
946
+
947
+ "fa fa-bug",
948
+
949
+ "fa fa-vk",
950
+
951
+ "fa fa-weibo",
952
+
953
+ "fa fa-renren",
954
+
955
+ "fa fa-pagelines",
956
+
957
+ "fa fa-stack-exchange",
958
+
959
+ "fa fa-arrow-circle-o-right",
960
+
961
+ "fa fa-arrow-circle-o-left",
962
+
963
+ "fa fa-caret-square-o-left",
964
+
965
+ "fa fa-dot-circle-o",
966
+
967
+ "fa fa-wheelchair",
968
+
969
+ "fa fa-vimeo-square",
970
+
971
+ "fa fa-try",
972
+
973
+ "fa fa-plus-square-o",
974
+
975
+ "fa fa-space-shuttle",
976
+
977
+ "fa fa-slack",
978
+
979
+ "fa fa-envelope-square",
980
+
981
+ "fa fa-wordpress",
982
+
983
+ "fa fa-openid",
984
+
985
+ "fa fa-university",
986
+
987
+ "fa fa-graduation-cap",
988
+
989
+ "fa fa-yahoo",
990
+
991
+ "fa fa-google",
992
+
993
+ "fa fa-reddit",
994
+
995
+ "fa fa-reddit-square",
996
+
997
+ "fa fa-stumbleupon-circle",
998
+
999
+ "fa fa-stumbleupon",
1000
+
1001
+ "fa fa-delicious",
1002
+
1003
+ "fa fa-digg",
1004
+
1005
+ "fa fa-pied-piper-pp",
1006
+
1007
+ "fa fa-pied-piper-alt",
1008
+
1009
+ "fa fa-drupal",
1010
+
1011
+ "fa fa-joomla",
1012
+
1013
+ "fa fa-language",
1014
+
1015
+ "fa fa-fax",
1016
+
1017
+ "fa fa-building",
1018
+
1019
+ "fa fa-child",
1020
+
1021
+ "fa fa-paw",
1022
+
1023
+ "fa fa-spoon",
1024
+
1025
+ "fa fa-cube",
1026
+
1027
+ "fa fa-cubes",
1028
+
1029
+ "fa fa-behance",
1030
+
1031
+ "fa fa-behance-square",
1032
+
1033
+ "fa fa-steam",
1034
+
1035
+ "fa fa-steam-square",
1036
+
1037
+ "fa fa-recycle",
1038
+
1039
+ "fa fa-car",
1040
+
1041
+ "fa fa-taxi",
1042
+
1043
+ "fa fa-tree",
1044
+
1045
+ "fa fa-spotify",
1046
+
1047
+ "fa fa-deviantart",
1048
+
1049
+ "fa fa-soundcloud",
1050
+
1051
+ "fa fa-database",
1052
+
1053
+ "fa fa-file-pdf-o",
1054
+
1055
+ "fa fa-file-word-o",
1056
+
1057
+ "fa fa-file-excel-o",
1058
+
1059
+ "fa fa-file-powerpoint-o",
1060
+
1061
+ "fa fa-file-image-o",
1062
+
1063
+ "fa fa-file-archive-o",
1064
+
1065
+ "fa fa-file-audio-o",
1066
+
1067
+ "fa fa-file-video-o",
1068
+
1069
+ "fa fa-file-code-o",
1070
+
1071
+ "fa fa-vine",
1072
+
1073
+ "fa fa-codepen",
1074
+
1075
+ "fa fa-jsfiddle",
1076
+
1077
+ "fa fa-life-ring",
1078
+
1079
+ "fa fa-circle-o-notch",
1080
+
1081
+ "fa fa-rebel",
1082
+
1083
+ "fa fa-empire",
1084
+
1085
+ "fa fa-git-square",
1086
+
1087
+ "fa fa-git",
1088
+
1089
+ "fa fa-hacker-news",
1090
+
1091
+ "fa fa-tencent-weibo",
1092
+
1093
+ "fa fa-qq",
1094
+
1095
+ "fa fa-weixin",
1096
+
1097
+ "fa fa-paper-plane",
1098
+
1099
+ "fa fa-paper-plane-o",
1100
+
1101
+ "fa fa-history",
1102
+
1103
+ "fa fa-circle-thin",
1104
+
1105
+ "fa fa-header",
1106
+
1107
+ "fa fa-paragraph",
1108
+
1109
+ "fa fa-sliders",
1110
+
1111
+ "fa fa-share-alt",
1112
+
1113
+ "fa fa-share-alt-square",
1114
+
1115
+ "fa fa-bomb",
1116
+
1117
+ "fa fa-futbol-o",
1118
+
1119
+ "fa fa-tty",
1120
+
1121
+ "fa fa-binoculars",
1122
+
1123
+ "fa fa-plug",
1124
+
1125
+ "fa fa-slideshare",
1126
+
1127
+ "fa fa-twitch",
1128
+
1129
+ "fa fa-yelp",
1130
+
1131
+ "fa fa-newspaper-o",
1132
+
1133
+ "fa fa-wifi",
1134
+
1135
+ "fa fa-calculator",
1136
+
1137
+ "fa fa-paypal",
1138
+
1139
+ "fa fa-google-wallet",
1140
+
1141
+ "fa fa-cc-visa",
1142
+
1143
+ "fa fa-cc-mastercard",
1144
+
1145
+ "fa fa-cc-discover",
1146
+
1147
+ "fa fa-cc-amex",
1148
+
1149
+ "fa fa-cc-paypal",
1150
+
1151
+ "fa fa-cc-stripe",
1152
+
1153
+ "fa fa-bell-slash",
1154
+
1155
+ "fa fa-bell-slash-o",
1156
+
1157
+ "fa fa-trash",
1158
+
1159
+ "fa fa-copyright",
1160
+
1161
+ "fa fa-at",
1162
+
1163
+ "fa fa-eyedropper",
1164
+
1165
+ "fa fa-paint-brush",
1166
+
1167
+ "fa fa-birthday-cake",
1168
+
1169
+ "fa fa-area-chart",
1170
+
1171
+ "fa fa-pie-chart",
1172
+
1173
+ "fa fa-line-chart",
1174
+
1175
+ "fa fa-lastfm",
1176
+
1177
+ "fa fa-lastfm-square",
1178
+
1179
+ "fa fa-toggle-off",
1180
+
1181
+ "fa fa-toggle-on",
1182
+
1183
+ "fa fa-bicycle",
1184
+
1185
+ "fa fa-bus",
1186
+
1187
+ "fa fa-ioxhost",
1188
+
1189
+ "fa fa-angellist",
1190
+
1191
+ "fa fa-cc",
1192
+
1193
+ "fa fa-ils",
1194
+
1195
+ "fa fa-meanpath",
1196
+
1197
+ "fa fa-buysellads",
1198
+
1199
+ "fa fa-connectdevelop",
1200
+
1201
+ "fa fa-dashcube",
1202
+
1203
+ "fa fa-forumbee",
1204
+
1205
+ "fa fa-leanpub",
1206
+
1207
+ "fa fa-sellsy",
1208
+
1209
+ "fa fa-shirtsinbulk",
1210
+
1211
+ "fa fa-simplybuilt",
1212
+
1213
+ "fa fa-skyatlas",
1214
+
1215
+ "fa fa-cart-plus",
1216
+
1217
+ "fa fa-cart-arrow-down",
1218
+
1219
+ "fa fa-diamond",
1220
+
1221
+ "fa fa-ship",
1222
+
1223
+ "fa fa-user-secret",
1224
+
1225
+ "fa fa-motorcycle",
1226
+
1227
+ "fa fa-street-view",
1228
+
1229
+ "fa fa-heartbeat",
1230
+
1231
+ "fa fa-venus",
1232
+
1233
+ "fa fa-mars",
1234
+
1235
+ "fa fa-mercury",
1236
+
1237
+ "fa fa-transgender",
1238
+
1239
+ "fa fa-transgender-alt",
1240
+
1241
+ "fa fa-venus-double",
1242
+
1243
+ "fa fa-mars-double",
1244
+
1245
+ "fa fa-venus-mars",
1246
+
1247
+ "fa fa-mars-stroke",
1248
+
1249
+ "fa fa-mars-stroke-v",
1250
+
1251
+ "fa fa-mars-stroke-h",
1252
+
1253
+ "fa fa-neuter",
1254
+
1255
+ "fa fa-genderless",
1256
+
1257
+ "fa fa-facebook-official",
1258
+
1259
+ "fa fa-pinterest-p",
1260
+
1261
+ "fa fa-whatsapp",
1262
+
1263
+ "fa fa-server",
1264
+
1265
+ "fa fa-user-plus",
1266
+
1267
+ "fa fa-user-times",
1268
+
1269
+ "fa fa-bed",
1270
+
1271
+ "fa fa-viacoin",
1272
+
1273
+ "fa fa-train",
1274
+
1275
+ "fa fa-subway",
1276
+
1277
+ "fa fa-medium",
1278
+
1279
+ "fa fa-y-combinator",
1280
+
1281
+ "fa fa-optin-monster",
1282
+
1283
+ "fa fa-opencart",
1284
+
1285
+ "fa fa-expeditedssl",
1286
+
1287
+ "fa fa-battery-full",
1288
+
1289
+ "fa fa-battery-three-quarters",
1290
+
1291
+ "fa fa-battery-half",
1292
+
1293
+ "fa fa-battery-quarter",
1294
+
1295
+ "fa fa-battery-empty",
1296
+
1297
+ "fa fa-mouse-pointer",
1298
+
1299
+ "fa fa-i-cursor",
1300
+
1301
+ "fa fa-object-group",
1302
+
1303
+ "fa fa-object-ungroup",
1304
+
1305
+ "fa fa-sticky-note",
1306
+
1307
+ "fa fa-sticky-note-o",
1308
+
1309
+ "fa fa-cc-jcb",
1310
+
1311
+ "fa fa-cc-diners-club",
1312
+
1313
+ "fa fa-clone",
1314
+
1315
+ "fa fa-balance-scale",
1316
+
1317
+ "fa fa-hourglass-o",
1318
+
1319
+ "fa fa-hourglass-start",
1320
+
1321
+ "fa fa-hourglass-half",
1322
+
1323
+ "fa fa-hourglass-end",
1324
+
1325
+ "fa fa-hourglass",
1326
+
1327
+ "fa fa-hand-rock-o",
1328
+
1329
+ "fa fa-hand-paper-o",
1330
+
1331
+ "fa fa-hand-scissors-o",
1332
+
1333
+ "fa fa-hand-lizard-o",
1334
+
1335
+ "fa fa-hand-spock-o",
1336
+
1337
+ "fa fa-hand-pointer-o",
1338
+
1339
+ "fa fa-hand-peace-o",
1340
+
1341
+ "fa fa-trademark",
1342
+
1343
+ "fa fa-registered",
1344
+
1345
+ "fa fa-creative-commons",
1346
+
1347
+ "fa fa-gg",
1348
+
1349
+ "fa fa-gg-circle",
1350
+
1351
+ "fa fa-tripadvisor",
1352
+
1353
+ "fa fa-odnoklassniki",
1354
+
1355
+ "fa fa-odnoklassniki-square",
1356
+
1357
+ "fa fa-get-pocket",
1358
+
1359
+ "fa fa-wikipedia-w",
1360
+
1361
+ "fa fa-safari",
1362
+
1363
+ "fa fa-chrome",
1364
+
1365
+ "fa fa-firefox",
1366
+
1367
+ "fa fa-opera",
1368
+
1369
+ "fa fa-internet-explorer",
1370
+
1371
+ "fa fa-television",
1372
+
1373
+ "fa fa-contao",
1374
+
1375
+ "fa fa-500px",
1376
+
1377
+ "fa fa-amazon",
1378
+
1379
+ "fa fa-calendar-plus-o",
1380
+
1381
+ "fa fa-calendar-minus-o",
1382
+
1383
+ "fa fa-calendar-times-o",
1384
+
1385
+ "fa fa-calendar-check-o",
1386
+
1387
+ "fa fa-industry",
1388
+
1389
+ "fa fa-map-pin",
1390
+
1391
+ "fa fa-map-signs",
1392
+
1393
+ "fa fa-map-o",
1394
+
1395
+ "fa fa-map",
1396
+
1397
+ "fa fa-commenting",
1398
+
1399
+ "fa fa-commenting-o",
1400
+
1401
+ "fa fa-houzz",
1402
+
1403
+ "fa fa-vimeo",
1404
+
1405
+ "fa fa-black-tie",
1406
+
1407
+ "fa fa-fonticons",
1408
+
1409
+ "fa fa-reddit-alien",
1410
+
1411
+ "fa fa-edge",
1412
+
1413
+ "fa fa-credit-card-alt",
1414
+
1415
+ "fa fa-codiepie",
1416
+
1417
+ "fa fa-modx",
1418
+
1419
+ "fa fa-fort-awesome",
1420
+
1421
+ "fa fa-usb",
1422
+
1423
+ "fa fa-product-hunt",
1424
+
1425
+ "fa fa-mixcloud",
1426
+
1427
+ "fa fa-scribd",
1428
+
1429
+ "fa fa-pause-circle",
1430
+
1431
+ "fa fa-pause-circle-o",
1432
+
1433
+ "fa fa-stop-circle",
1434
+
1435
+ "fa fa-stop-circle-o",
1436
+
1437
+ "fa fa-shopping-bag",
1438
+
1439
+ "fa fa-shopping-basket",
1440
+
1441
+ "fa fa-hashtag",
1442
+
1443
+ "fa fa-bluetooth",
1444
+
1445
+ "fa fa-bluetooth-b",
1446
+
1447
+ "fa fa-percent",
1448
+
1449
+ "fa fa-gitlab",
1450
+
1451
+ "fa fa-wpbeginner",
1452
+
1453
+ "fa fa-wpforms",
1454
+
1455
+ "fa fa-envira",
1456
+
1457
+ "fa fa-universal-access",
1458
+
1459
+ "fa fa-wheelchair-alt",
1460
+
1461
+ "fa fa-question-circle-o",
1462
+
1463
+ "fa fa-blind",
1464
+
1465
+ "fa fa-audio-description",
1466
+
1467
+ "fa fa-volume-control-phone",
1468
+
1469
+ "fa fa-braille",
1470
+
1471
+ "fa fa-assistive-listening-systems",
1472
+
1473
+ "fa fa-american-sign-language-interpreting",
1474
+
1475
+ "fa fa-deaf",
1476
+
1477
+ "fa fa-glide",
1478
+
1479
+ "fa fa-glide-g",
1480
+
1481
+ "fa fa-sign-language",
1482
+
1483
+ "fa fa-low-vision",
1484
+
1485
+ "fa fa-viadeo",
1486
+
1487
+ "fa fa-viadeo-square",
1488
+
1489
+ "fa fa-snapchat",
1490
+
1491
+ "fa fa-snapchat-ghost",
1492
+
1493
+ "fa fa-snapchat-square",
1494
+
1495
+ "fa fa-pied-piper",
1496
+
1497
+ "fa fa-first-order",
1498
+
1499
+ "fa fa-yoast",
1500
+
1501
+ "fa fa-themeisle",
1502
+
1503
+ "fa fa-google-plus-official",
1504
+
1505
+ "fa fa-font-awesome"
1506
+ ]
1507
+ };
admin/includes/admin-helper.php CHANGED
@@ -90,8 +90,11 @@ class Admin_Helper {
90
  add_action( 'wp_ajax_pa_elements_settings', array( $this, 'save_settings' ) );
91
  add_action( 'wp_ajax_pa_additional_settings', array( $this, 'save_additional_settings' ) );
92
  add_action( 'wp_ajax_pa_get_unused_widgets', array( $this, 'get_unused_widgets' ) );
 
 
 
93
 
94
- // Register AJAX Hooks for regenerate assets
95
  add_action( 'wp_ajax_pa_clear_cached_assets', array( $this, 'clear_cached_assets' ) );
96
 
97
  // Register AJAX Hooks for Newsletter.
@@ -108,7 +111,7 @@ class Admin_Helper {
108
  if ( false === strpos( $current_page, 'action=elementor' ) ) {
109
  Admin_Notices::get_instance();
110
 
111
- // Beta tester
112
  Beta_Testers::get_instance();
113
 
114
  // PA Duplicator.
@@ -133,6 +136,8 @@ class Admin_Helper {
133
  *
134
  * @since 2.6.8
135
  *
 
 
136
  * @return boolean
137
  */
138
  public static function check_user_can( $action ) {
@@ -200,6 +205,10 @@ class Admin_Helper {
200
  */
201
  public function admin_enqueue_scripts() {
202
 
 
 
 
 
203
  wp_enqueue_style(
204
  'pa_admin_icon',
205
  PREMIUM_ADDONS_URL . 'admin/assets/fonts/style.css',
@@ -208,10 +217,6 @@ class Admin_Helper {
208
  'all'
209
  );
210
 
211
- $suffix = is_rtl() ? '-rtl' : '';
212
-
213
- $current_screen = self::get_current_screen();
214
-
215
  wp_enqueue_style(
216
  'pa-notice-css',
217
  PREMIUM_ADDONS_URL . 'admin/assets/css/notice' . $suffix . '.css',
@@ -220,15 +225,23 @@ class Admin_Helper {
220
  'all'
221
  );
222
 
 
 
 
 
 
 
 
 
223
  if ( strpos( $current_screen, $this->page_slug ) !== false ) {
224
 
225
- wp_enqueue_style(
226
- 'pa-admin',
227
- PREMIUM_ADDONS_URL . 'admin/assets/css/admin' . $suffix . '.css',
228
- array(),
229
- PREMIUM_ADDONS_VERSION,
230
- 'all'
231
- );
232
 
233
  wp_enqueue_style(
234
  'pa-sweetalert-style',
@@ -293,6 +306,145 @@ class Admin_Helper {
293
  wp_localize_script( 'pa-admin', 'premiumAddonsSettings', $localized_data );
294
 
295
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
296
  }
297
 
298
  /**
90
  add_action( 'wp_ajax_pa_elements_settings', array( $this, 'save_settings' ) );
91
  add_action( 'wp_ajax_pa_additional_settings', array( $this, 'save_additional_settings' ) );
92
  add_action( 'wp_ajax_pa_get_unused_widgets', array( $this, 'get_unused_widgets' ) );
93
+ add_action( 'wp_ajax_get_pa_menu_item_settings', array( $this, 'get_pa_menu_item_settings' ) );
94
+ add_action( 'wp_ajax_save_pa_menu_item_settings', array( $this, 'save_pa_menu_item_settings' ) );
95
+ add_action( 'wp_ajax_save_pa_mega_item_content', array( $this, 'save_pa_mega_item_content' ) );
96
 
97
+ // Register AJAX Hooks for regenerate assets.
98
  add_action( 'wp_ajax_pa_clear_cached_assets', array( $this, 'clear_cached_assets' ) );
99
 
100
  // Register AJAX Hooks for Newsletter.
111
  if ( false === strpos( $current_page, 'action=elementor' ) ) {
112
  Admin_Notices::get_instance();
113
 
114
+ // Beta tester.
115
  Beta_Testers::get_instance();
116
 
117
  // PA Duplicator.
136
  *
137
  * @since 2.6.8
138
  *
139
+ * @param string $action action.
140
+ *
141
  * @return boolean
142
  */
143
  public static function check_user_can( $action ) {
205
  */
206
  public function admin_enqueue_scripts() {
207
 
208
+ $suffix = is_rtl() ? '-rtl' : '';
209
+ $current_screen = self::get_current_screen();
210
+ $enabled_elements = self::get_enabled_elements();
211
+
212
  wp_enqueue_style(
213
  'pa_admin_icon',
214
  PREMIUM_ADDONS_URL . 'admin/assets/fonts/style.css',
217
  'all'
218
  );
219
 
 
 
 
 
220
  wp_enqueue_style(
221
  'pa-notice-css',
222
  PREMIUM_ADDONS_URL . 'admin/assets/css/notice' . $suffix . '.css',
225
  'all'
226
  );
227
 
228
+ wp_enqueue_style(
229
+ 'pa-admin-css',
230
+ PREMIUM_ADDONS_URL . 'admin/assets/css/admin' . $suffix . '.css',
231
+ array(),
232
+ PREMIUM_ADDONS_VERSION,
233
+ 'all'
234
+ );
235
+
236
  if ( strpos( $current_screen, $this->page_slug ) !== false ) {
237
 
238
+ // wp_enqueue_style(
239
+ // 'pa-admin-css',
240
+ // PREMIUM_ADDONS_URL . 'admin/assets/css/admin' . $suffix . '.css',
241
+ // array(),
242
+ // PREMIUM_ADDONS_VERSION,
243
+ // 'all'
244
+ // );
245
 
246
  wp_enqueue_style(
247
  'pa-sweetalert-style',
306
  wp_localize_script( 'pa-admin', 'premiumAddonsSettings', $localized_data );
307
 
308
  }
309
+
310
+ if ( 'nav-menus' === $current_screen && $enabled_elements['premium-nav-menu'] ) {
311
+
312
+ wp_enqueue_style( 'wp-color-picker' );
313
+
314
+ wp_enqueue_style(
315
+ 'jquery-fonticonpicker',
316
+ PREMIUM_ADDONS_URL . 'admin/assets/css/jquery-fonticonpicker.css',
317
+ array(),
318
+ PREMIUM_ADDONS_VERSION,
319
+ 'all'
320
+ );
321
+
322
+ wp_enqueue_script(
323
+ 'jquery-fonticonpicker',
324
+ PREMIUM_ADDONS_URL . 'admin/assets/js/jquery-fonticonpicker.js',
325
+ array( 'jquery' ),
326
+ PREMIUM_ADDONS_VERSION,
327
+ true
328
+ );
329
+
330
+ wp_enqueue_script(
331
+ 'pa-icon-list',
332
+ PREMIUM_ADDONS_URL . 'admin/assets/js/premium-icons-list.js',
333
+ array(),
334
+ PREMIUM_ADDONS_VERSION,
335
+ true
336
+ );
337
+
338
+ wp_enqueue_script(
339
+ 'mega-content-handler',
340
+ PREMIUM_ADDONS_URL . 'admin/assets/js/mega-content-handler.js',
341
+ array( 'jquery' ),
342
+ PREMIUM_ADDONS_VERSION,
343
+ true
344
+ );
345
+
346
+ wp_enqueue_script(
347
+ 'menu-editor',
348
+ PREMIUM_ADDONS_URL . 'admin/assets/js/menu-editor.js',
349
+ array( 'jquery', 'wp-color-picker' ),
350
+ PREMIUM_ADDONS_VERSION,
351
+ true
352
+ );
353
+
354
+ $pa_menu_localized = array(
355
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
356
+ 'nonce' => wp_create_nonce( 'pa-menu-nonce' ),
357
+ );
358
+
359
+ $menu_content_localized = array(
360
+ 'ajaxurl' => admin_url( 'admin-ajax.php' ),
361
+ 'nonce' => wp_create_nonce( 'pa-live-editor' ),
362
+ );
363
+
364
+ wp_localize_script( 'mega-content-handler', 'paMegaContent', $menu_content_localized );
365
+ wp_localize_script( 'menu-editor', 'paMenuSettings', $pa_menu_localized );
366
+
367
+ // menu screen popups.
368
+ include_once PREMIUM_ADDONS_PATH . 'admin/includes/templates/nav-menu-settings.php';
369
+ }
370
+ }
371
+
372
+ /**
373
+ * Get PA menu item settings.
374
+ * Retrieve menu items settings from postmeta table.
375
+ *
376
+ * @access public
377
+ * @since 4.9.4
378
+ */
379
+ public function get_pa_menu_item_settings() {
380
+
381
+ check_ajax_referer( 'pa-menu-nonce', 'security' );
382
+
383
+ if ( ! current_user_can( 'manage_options' ) ) {
384
+ wp_send_json_error( 'User is not authorized!' );
385
+ }
386
+
387
+ if ( ! isset( $_POST['item_id'] ) ) {
388
+ wp_send_json_error( 'Settings are not set!' );
389
+ }
390
+
391
+ $item_settings = json_decode( get_post_meta( $_POST['item_id'], 'pa_megamenu_item_meta', true ) );
392
+
393
+ wp_send_json_success( $item_settings );
394
+ }
395
+
396
+ /**
397
+ * Save PA menu item settings.
398
+ * Save/Update menu items settings in postmeta table.
399
+ *
400
+ * @access public
401
+ * @since 4.9.4
402
+ */
403
+ public function save_pa_menu_item_settings() {
404
+
405
+ check_ajax_referer( 'pa-menu-nonce', 'security' );
406
+
407
+ if ( ! current_user_can( 'manage_options' ) ) {
408
+ wp_send_json_error( 'User is not authorized!' );
409
+ }
410
+
411
+ if ( ! isset( $_POST['settings'] ) ) {
412
+ wp_send_json_error( 'Settings are not set!' );
413
+ }
414
+
415
+ $settings = $_POST['settings'];
416
+
417
+ update_post_meta( $settings['item_id'], 'pa_megamenu_item_meta', json_encode( $settings, JSON_UNESCAPED_UNICODE ) );
418
+
419
+ wp_send_json_success( 'Item Settings Saved' );
420
+ }
421
+
422
+ /**
423
+ * Save Pa Mega Item Content.
424
+ * Saves mega content's id in postmeta table.
425
+ *
426
+ * @access public
427
+ * @since 4.9.4
428
+ */
429
+ public function save_pa_mega_item_content() {
430
+
431
+ check_ajax_referer( 'pa-live-editor', 'security' );
432
+
433
+ if ( ! isset( $_POST['template_id'] ) ) {
434
+ wp_send_json_error( 'template id is not set!' );
435
+ }
436
+
437
+ if ( ! isset( $_POST['menu_item_id'] ) ) {
438
+ wp_send_json_error( 'item id is not set!' );
439
+ }
440
+
441
+ $item_id = $_POST['menu_item_id'];
442
+ $temp_id = $_POST['template_id'];
443
+
444
+ update_post_meta( $item_id, 'pa_mega_content_temp', $temp_id );
445
+
446
+ wp_send_json_success( 'Item Mega Content Saved' );
447
+
448
  }
449
 
450
  /**
admin/includes/admin-notices.php CHANGED
@@ -61,10 +61,10 @@ class Admin_Notices {
61
 
62
  self::$notices = array(
63
  'pa-review',
64
- 'badge_notice',
65
  );
66
 
67
- delete_option( 'woo_notice' );
68
 
69
  }
70
 
@@ -102,7 +102,7 @@ class Admin_Notices {
102
  }
103
  }
104
 
105
- $this->get_badge_notice();
106
 
107
  }
108
 
@@ -231,22 +231,22 @@ class Admin_Notices {
231
 
232
  /**
233
  *
234
- * Shows admin notice for Premium Badge Addon.
235
  *
236
  * @since 4.8.8
237
  * @access public
238
  *
239
  * @return void
240
  */
241
- public function get_badge_notice() {
242
 
243
- $badge_notice = get_option( 'badge_notice' );
244
 
245
- if ( '1' === $badge_notice ) {
246
  return;
247
  }
248
 
249
- $notice_url = Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-badge-global-addon', 'badge-notification', 'wp-dash', 'badge' );
250
 
251
  ?>
252
 
@@ -256,11 +256,11 @@ class Admin_Notices {
256
  </div>
257
  <div class="pa-text-wrap">
258
  <p>
259
- <strong><?php echo __( 'Premium Badge Global Addon', 'premium-addons-for-elemetor' ); ?></strong>
260
- <?php echo sprintf( __( 'is now available in Premium Addons Pro. <a href="%s" target="_blank">Check it out now!</a>', 'premium-addons-for-elementor' ), $notice_url ); ?>
261
  </p>
262
  </div>
263
- <div class="pa-notice-close" data-notice="badge">
264
  <span class="dashicons dashicons-dismiss"></span>
265
  </div>
266
  </div>
61
 
62
  self::$notices = array(
63
  'pa-review',
64
+ 'nav_menu_notice',
65
  );
66
 
67
+ delete_option( 'badge_notice' );
68
 
69
  }
70
 
102
  }
103
  }
104
 
105
+ $this->get_menu_notice();
106
 
107
  }
108
 
231
 
232
  /**
233
  *
234
+ * Shows admin notice for Premium Navigation Menu.
235
  *
236
  * @since 4.8.8
237
  * @access public
238
  *
239
  * @return void
240
  */
241
+ public function get_menu_notice() {
242
 
243
+ $nav_notice = get_option( 'nav_menu_notice' );
244
 
245
+ if ( '1' === $nav_notice ) {
246
  return;
247
  }
248
 
249
+ $notice_url = Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-mega-menu-widget', 'menu-notification', 'wp-dash', 'mega-menu' );
250
 
251
  ?>
252
 
256
  </div>
257
  <div class="pa-text-wrap">
258
  <p>
259
+ <strong><?php echo __( 'Premium Navigation/Mega Menu Widget', 'premium-addons-for-elemetor' ); ?></strong>
260
+ <?php echo sprintf( __( 'is now available in Premium Addons for Elementor. <a href="%s" target="_blank">Check it out now!</a>', 'premium-addons-for-elementor' ), $notice_url ); ?>
261
  </p>
262
  </div>
263
+ <div class="pa-notice-close" data-notice="nav">
264
  <span class="dashicons dashicons-dismiss"></span>
265
  </div>
266
  </div>
admin/includes/beta-testers.php CHANGED
@@ -1,143 +1,143 @@
1
- <?php
2
- /**
3
- * PA Beta Tester.
4
- */
5
-
6
- namespace PremiumAddons\Admin\Includes;
7
-
8
- if ( ! defined( 'ABSPATH' ) ) {
9
- exit;
10
- }
11
-
12
- /**
13
- * Class Beta_Testers.
14
- */
15
- class Beta_Testers {
16
-
17
- /**
18
- * Class object
19
- *
20
- * @var instance
21
- */
22
- private static $instance = null;
23
-
24
- /**
25
- * Transient key
26
- *
27
- * @var transient_key
28
- */
29
- private $transient_key;
30
-
31
- /**
32
- * Class Constructor
33
- */
34
- public function __construct() {
35
-
36
- $settings = Admin_Helper::get_integrations_settings();
37
-
38
- $is_beta_tester = isset( $settings['is-beta-tester'] ) ? $settings['is-beta-tester'] : 0;
39
-
40
- if ( ! $is_beta_tester ) {
41
- return;
42
- }
43
-
44
- $this->transient_key = md5( 'premium_addons_beta_response_key' );
45
-
46
- add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'compare_version' ) );
47
-
48
- }
49
-
50
- /**
51
- * Get beta version
52
- *
53
- * Checks if the version in trunk is beta
54
- *
55
- * @since 2.1.3
56
- * @access public
57
- */
58
- private function get_beta_version() {
59
-
60
- $beta_version = get_site_transient( $this->transient_key );
61
-
62
- if ( false === $beta_version ) {
63
-
64
- $beta_version = 'false';
65
-
66
- $response = wp_remote_get( 'https://plugins.svn.wordpress.org/premium-addons-for-elementor/trunk/readme.txt' );
67
-
68
- if ( ! is_wp_error( $response ) && ! empty( $response['body'] ) ) {
69
- preg_match( '/Beta tag: (.*)/i', $response['body'], $matches );
70
- if ( isset( $matches[1] ) ) {
71
- $beta_version = trim( $matches[1] );
72
- }
73
- }
74
-
75
- set_site_transient( $this->transient_key, $beta_version, 12 * HOUR_IN_SECONDS );
76
-
77
- }
78
-
79
- return $beta_version;
80
- }
81
-
82
- /**
83
- * Get version
84
- *
85
- * Checks if the version in trunk is beta
86
- *
87
- * @since 2.1.3
88
- * @access public
89
- *
90
- * @param object $transient Plugin updates data.
91
- *
92
- * @return object Plugin updates data.
93
- */
94
- public function compare_version( $transient ) {
95
-
96
- if ( empty( $transient->checked ) ) {
97
- return $transient;
98
- }
99
-
100
- delete_site_transient( $this->transient_key );
101
-
102
- $plugin_slug = basename( PREMIUM_ADDONS_FILE, '.php' );
103
-
104
- $beta_version = $this->get_beta_version();
105
-
106
- if ( 'false' !== $beta_version && version_compare( $beta_version, PREMIUM_ADDONS_VERSION, '>' ) ) {
107
-
108
- $response = new \stdClass();
109
-
110
- $response->plugin = $plugin_slug;
111
-
112
- $response->slug = $plugin_slug;
113
-
114
- $response->new_version = $beta_version;
115
-
116
- $response->url = 'https://premiumaddons.com/';
117
-
118
- $response->package = sprintf( 'https://downloads.wordpress.org/plugin/premium-addons-for-elementor.%s.zip', $beta_version );
119
-
120
- $transient->response[ PREMIUM_ADDONS_BASENAME ] = $response;
121
- }
122
-
123
- return $transient;
124
- }
125
-
126
- /**
127
- * Creates and returns an instance of the class
128
- *
129
- * @since 2.6.8
130
- * @access public
131
- *
132
- * @return object
133
- */
134
- public static function get_instance() {
135
-
136
- if ( ! isset( self::$instance ) ) {
137
-
138
- self::$instance = new self();
139
-
140
- }
141
- return self::$instance;
142
- }
143
- }
1
+ <?php
2
+ /**
3
+ * PA Beta Tester.
4
+ */
5
+
6
+ namespace PremiumAddons\Admin\Includes;
7
+
8
+ if ( ! defined( 'ABSPATH' ) ) {
9
+ exit;
10
+ }
11
+
12
+ /**
13
+ * Class Beta_Testers.
14
+ */
15
+ class Beta_Testers {
16
+
17
+ /**
18
+ * Class object
19
+ *
20
+ * @var instance
21
+ */
22
+ private static $instance = null;
23
+
24
+ /**
25
+ * Transient key
26
+ *
27
+ * @var transient_key
28
+ */
29
+ private $transient_key;
30
+
31
+ /**
32
+ * Class Constructor
33
+ */
34
+ public function __construct() {
35
+
36
+ $settings = Admin_Helper::get_integrations_settings();
37
+
38
+ $is_beta_tester = isset( $settings['is-beta-tester'] ) ? $settings['is-beta-tester'] : 0;
39
+
40
+ if ( ! $is_beta_tester ) {
41
+ return;
42
+ }
43
+
44
+ $this->transient_key = md5( 'premium_addons_beta_response_key' );
45
+
46
+ add_filter( 'pre_set_site_transient_update_plugins', array( $this, 'compare_version' ) );
47
+
48
+ }
49
+
50
+ /**
51
+ * Get beta version
52
+ *
53
+ * Checks if the version in trunk is beta
54
+ *
55
+ * @since 2.1.3
56
+ * @access public
57
+ */
58
+ private function get_beta_version() {
59
+
60
+ $beta_version = get_site_transient( $this->transient_key );
61
+
62
+ if ( false === $beta_version ) {
63
+
64
+ $beta_version = 'false';
65
+
66
+ $response = wp_remote_get( 'https://plugins.svn.wordpress.org/premium-addons-for-elementor/trunk/readme.txt' );
67
+
68
+ if ( ! is_wp_error( $response ) && ! empty( $response['body'] ) ) {
69
+ preg_match( '/Beta tag: (.*)/i', $response['body'], $matches );
70
+ if ( isset( $matches[1] ) ) {
71
+ $beta_version = trim( $matches[1] );
72
+ }
73
+ }
74
+
75
+ set_site_transient( $this->transient_key, $beta_version, 12 * HOUR_IN_SECONDS );
76
+
77
+ }
78
+
79
+ return $beta_version;
80
+ }
81
+
82
+ /**
83
+ * Get version
84
+ *
85
+ * Checks if the version in trunk is beta
86
+ *
87
+ * @since 2.1.3
88
+ * @access public
89
+ *
90
+ * @param object $transient Plugin updates data.
91
+ *
92
+ * @return object Plugin updates data.
93
+ */
94
+ public function compare_version( $transient ) {
95
+
96
+ if ( empty( $transient->checked ) ) {
97
+ return $transient;
98
+ }
99
+
100
+ delete_site_transient( $this->transient_key );
101
+
102
+ $plugin_slug = basename( PREMIUM_ADDONS_FILE, '.php' );
103
+
104
+ $beta_version = $this->get_beta_version();
105
+
106
+ if ( 'false' !== $beta_version && version_compare( $beta_version, PREMIUM_ADDONS_VERSION, '>' ) ) {
107
+
108
+ $response = new \stdClass();
109
+
110
+ $response->plugin = $plugin_slug;
111
+
112
+ $response->slug = $plugin_slug;
113
+
114
+ $response->new_version = $beta_version;
115
+
116
+ $response->url = 'https://premiumaddons.com/';
117
+
118
+ $response->package = sprintf( 'https://downloads.wordpress.org/plugin/premium-addons-for-elementor.%s.zip', $beta_version );
119
+
120
+ $transient->response[ PREMIUM_ADDONS_BASENAME ] = $response;
121
+ }
122
+
123
+ return $transient;
124
+ }
125
+
126
+ /**
127
+ * Creates and returns an instance of the class
128
+ *
129
+ * @since 2.6.8
130
+ * @access public
131
+ *
132
+ * @return object
133
+ */
134
+ public static function get_instance() {
135
+
136
+ if ( ! isset( self::$instance ) ) {
137
+
138
+ self::$instance = new self();
139
+
140
+ }
141
+ return self::$instance;
142
+ }
143
+ }
admin/includes/elements.php CHANGED
@@ -1,1112 +1,1126 @@
1
- <?php
2
- /**
3
- * PA Elements.
4
- */
5
-
6
- use PremiumAddons\Includes\Helper_Functions;
7
-
8
- $prefix = Helper_Functions::get_prefix();
9
-
10
- $elements = array(
11
- 'cat-1' => array(
12
- 'icon' => 'all',
13
- 'title' => __( 'All Widgets', 'premium-addons-for-elementor' ),
14
- 'elements' => array(
15
- array(
16
- 'key' => 'premium-lottie-widget',
17
- 'name' => 'premium-lottie',
18
- 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ),
19
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
20
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/lottie-animations-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
21
- 'tutorial' => 'https://www.youtube.com/watch?v=0QWzUpF57dw',
22
- ),
23
- array(
24
- 'key' => 'premium-carousel',
25
- 'name' => 'premium-carousel-widget',
26
- 'title' => __( 'Carousel', 'premium-addons-for-elementor' ),
27
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/carousel-widget-for-elementor-page-builder', 'settings-page', 'wp-dash', 'dashboard' ),
28
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/carousel/', 'settings-page', 'wp-dash', 'dashboard' ),
29
- 'tutorial' => 'https://www.youtube.com/watch?v=ZMgprLKvq24',
30
- ),
31
- array(
32
- 'key' => 'premium-blog',
33
- 'name' => 'premium-addon-blog',
34
- 'title' => __( 'Blog', 'premium-addons-for-elementor' ),
35
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/blog-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
36
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/blog/', 'settings-page', 'wp-dash', 'dashboard' ),
37
- ),
38
- array(
39
- 'key' => 'premium-maps',
40
- 'name' => 'premium-addon-maps',
41
- 'title' => __( 'Google Maps', 'premium-addons-for-elementor' ),
42
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-maps-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
43
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-maps/', 'settings-page', 'wp-dash', 'dashboard' ),
44
- 'tutorial' => 'https://www.youtube.com/watch?v=z4taEeCY77Q',
45
- ),
46
- array(
47
- 'key' => 'premium-person',
48
- 'name' => 'premium-addon-person',
49
- 'title' => __( 'Team Members', 'premium-addons-for-elementor' ),
50
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/persons-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
51
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/persons-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
52
- ),
53
- array(
54
- 'key' => 'premium-tabs',
55
- 'name' => 'premium-addon-tabs',
56
- 'title' => __( 'Tabs', 'premium-addons-for-elementor' ),
57
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
58
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/tabs-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
59
- 'is_pro' => true,
60
- 'icon' => 'pa-pro-tabs',
61
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
62
- ),
63
- array(
64
- 'key' => 'premium-content-toggle',
65
- 'name' => 'premium-addon-content-toggle',
66
- 'title' => __( 'Content Switcher', 'premium-addons-for-elementor' ),
67
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
68
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-content-switcher/', 'settings-page', 'wp-dash', 'dashboard' ),
69
- 'is_pro' => true,
70
- 'icon' => 'pa-pro-content-switcher',
71
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
72
- ),
73
- array(
74
- 'key' => 'premium-fancytext',
75
- 'name' => 'premium-addon-fancy-text',
76
- 'title' => __( 'Fancy Text', 'premium-addons-for-elementor' ),
77
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
78
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/fancy-text-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
79
- ),
80
- array(
81
- 'key' => 'premium-title',
82
- 'name' => 'premium-addon-title',
83
- 'title' => __( 'Heading', 'premium-addons-for-elementor' ),
84
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/heading-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
85
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
86
- ),
87
- array(
88
- 'key' => 'premium-dual-header',
89
- 'name' => 'premium-addon-dual-header',
90
- 'title' => __( 'Dual Heading', 'premium-addons-for-elementor' ),
91
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
92
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/dual-heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
93
- ),
94
- array(
95
- 'key' => 'premium-divider',
96
- 'name' => 'premium-divider',
97
- 'title' => __( 'Divider', 'premium-addons-for-elementor' ),
98
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
99
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/divider-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
100
- 'is_pro' => true,
101
- 'icon' => 'pa-pro-separator',
102
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
103
- ),
104
- array(
105
- 'key' => 'premium-grid',
106
- 'name' => 'premium-img-gallery',
107
- 'title' => __( 'Media Grid', 'premium-addons-for-elementor' ),
108
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/grid-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
109
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/grid/', 'settings-page', 'wp-dash', 'dashboard' ),
110
- ),
111
- array(
112
- 'key' => 'premium-image-scroll',
113
- 'name' => 'premium-image-scroll',
114
- 'title' => __( 'Image Scroll', 'premium-addons-for-elementor' ),
115
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
116
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
117
- ),
118
- array(
119
- 'key' => 'premium-image-separator',
120
- 'name' => 'premium-addon-image-separator',
121
- 'title' => __( 'Image Separator', 'premium-addons-for-elementor' ),
122
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-separator-widget-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
123
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-separator-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
124
- ),
125
- array(
126
- 'key' => 'premium-image-comparison',
127
- 'name' => 'premium-addon-image-comparison',
128
- 'title' => __( 'Image Comparison', 'premium-addons-for-elementor' ),
129
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
130
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-image-comparison-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
131
- 'is_pro' => true,
132
- 'icon' => 'pa-pro-image-comparison',
133
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
134
- ),
135
- array(
136
- 'key' => 'premium-image-hotspots',
137
- 'name' => 'premium-addon-image-hotspots',
138
- 'title' => __( 'Image Hotspots', 'premium-addons-for-elementor' ),
139
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
140
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-hotspots-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
141
- 'is_pro' => true,
142
- 'icon' => 'pa-pro-hot-spot',
143
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
144
- ),
145
- array(
146
- 'key' => 'premium-img-layers',
147
- 'name' => 'premium-img-layers-addon',
148
- 'title' => __( 'Image Layers', 'premium-addons-for-elementor' ),
149
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
150
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-layers/', 'settings-page', 'wp-dash', 'dashboard' ),
151
- 'tutorial' => 'https://www.youtube.com/watch?v=D3INxWw_jKI',
152
- 'is_pro' => true,
153
- 'icon' => 'pa-pro-image-layers',
154
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
155
- ),
156
- array(
157
- 'key' => 'premium-image-accordion',
158
- 'name' => 'premium-image-accordion',
159
- 'title' => __( 'Image Accordion', 'premium-addons-for-elementor' ),
160
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
161
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-accordion-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
162
- 'is_pro' => true,
163
- 'icon' => 'pa-pro-image-accordion',
164
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
165
- ),
166
- array(
167
- 'key' => 'premium-videobox',
168
- 'name' => 'premium-addon-video-box',
169
- 'title' => __( 'Video Box', 'premium-addons-for-elementor' ),
170
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/video-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
171
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/video-box/', 'settings-page', 'wp-dash', 'dashboard' ),
172
- ),
173
- array(
174
- 'key' => 'premium-hscroll',
175
- 'name' => 'premium-hscroll',
176
- 'title' => __( 'Horizontal Scroll', 'premium-addons-for-elementor' ),
177
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
178
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/horizontal-scroll/', 'settings-page', 'wp-dash', 'dashboard' ),
179
- 'tutorial' => 'https://www.youtube.com/watch?v=4HqT_3s-ZXg',
180
- 'is_pro' => true,
181
- 'icon' => 'pa-pro-horizontal-scroll',
182
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
183
- ),
184
- array(
185
- 'key' => 'premium-vscroll',
186
- 'name' => 'premium-vscroll',
187
- 'title' => __( 'Vertical Scroll', 'premium-addons-for-elementor' ),
188
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/vertical-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
189
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/vertical-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
190
- 'tutorial' => 'https://www.youtube.com/watch?v=MuLaIn1QXfQ',
191
- ),
192
- array(
193
- 'key' => 'premium-color-transition',
194
- 'name' => 'premium-color-transition',
195
- 'title' => __( 'Background Transition', 'premium-addons-for-elementor' ),
196
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
197
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/background-transition-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
198
- 'is_pro' => true,
199
- 'icon' => 'pa-pro-color-transition',
200
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
201
- ),
202
- array(
203
- 'key' => 'premium-multi-scroll',
204
- 'name' => 'premium-multi-scroll',
205
- 'title' => __( 'Multi Scroll', 'premium-addons-for-elementor' ),
206
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
207
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/multi-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
208
- 'tutorial' => 'https://www.youtube.com/watch?v=IzYnD6oDYXw',
209
- 'is_pro' => true,
210
- 'icon' => 'pa-pro-multi-scroll',
211
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
212
- ),
213
- array(
214
- 'key' => 'premium-lottie',
215
- 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ),
216
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-section-addon/', 'settings-page', 'wp-dash', 'dashboard' ),
217
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/lottie-background/', 'settings-page', 'wp-dash', 'dashboard' ),
218
- 'tutorial' => 'https://www.youtube.com/watch?v=KVrenWNEdkY',
219
- 'is_pro' => true,
220
- 'is_global' => true,
221
- ),
222
- array(
223
- 'key' => 'premium-parallax',
224
- 'title' => __( 'Parallax', 'premium-addons-for-elementor' ),
225
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/parallax-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
226
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/parallax-section-addon-tutorial-2/', 'settings-page', 'wp-dash', 'dashboard' ),
227
- 'tutorial' => 'https://www.youtube.com/watch?v=hkMNjxLoZ2w',
228
- 'is_pro' => true,
229
- 'is_global' => true,
230
- ),
231
- array(
232
- 'key' => 'premium-particles',
233
- 'title' => __( 'Particles', 'premium-addons-for-elementor' ),
234
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
235
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/particles/', 'settings-page', 'wp-dash', 'dashboard' ),
236
- 'tutorial' => 'https://www.youtube.com/watch?v=bPmWKv4VWrI',
237
- 'is_pro' => true,
238
- 'is_global' => true,
239
- ),
240
- array(
241
- 'key' => 'premium-gradient',
242
- 'title' => __( 'Animated Gradient', 'premium-addons-for-elementor' ),
243
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/animated-section-gradients-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
244
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/animated-gradient-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
245
- 'tutorial' => 'https://www.youtube.com/watch?v=IL4USvwR6K4',
246
- 'is_pro' => true,
247
- 'is_global' => true,
248
- ),
249
- array(
250
- 'key' => 'premium-kenburns',
251
- 'title' => __( 'Animated Ken Burns', 'premium-addons-for-elementor' ),
252
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ken-burns-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
253
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/ken-burns-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
254
- 'tutorial' => 'https://www.youtube.com/watch?v=DUNFjWphZfs',
255
- 'is_pro' => true,
256
- 'is_global' => true,
257
- ),
258
- array(
259
- 'key' => 'premium-blob',
260
- 'title' => __( 'Blob Generator', 'premium-addons-for-elementor' ),
261
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-animated-blob-generator/', 'settings-page', 'wp-dash', 'dashboard' ),
262
- 'is_pro' => true,
263
- 'is_global' => true,
264
- ),
265
- array(
266
- 'key' => 'premium-modalbox',
267
- 'name' => 'premium-addon-modal-box',
268
- 'title' => __( 'Modal Box', 'premium-addons-for-elementor' ),
269
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
270
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/modal-box/', 'settings-page', 'wp-dash', 'dashboard' ),
271
- 'tutorial' => 'https://www.youtube.com/watch?v=3lLxSyf2nyk',
272
- ),
273
- array(
274
- 'key' => 'premium-notbar',
275
- 'name' => 'premium-notbar',
276
- 'title' => __( 'Alert Box', 'premium-addons-for-elementor' ),
277
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
278
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/alert-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
279
- 'is_pro' => true,
280
- 'icon' => 'pa-pro-notification-bar',
281
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
282
- ),
283
- array(
284
- 'key' => 'premium-magic-section',
285
- 'name' => 'premium-addon-magic-section',
286
- 'title' => __( 'Magic Section', 'premium-addons-for-elementor' ),
287
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
288
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/magic-section-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
289
- 'is_pro' => true,
290
- 'icon' => 'pa-pro-magic-section',
291
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
292
- ),
293
- array(
294
- 'key' => 'premium-prev-img',
295
- 'name' => 'premium-addon-preview-image',
296
- 'title' => __( 'Preview Window', 'premium-addons-for-elementor' ),
297
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
298
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/preview-window-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
299
- 'tutorial' => 'https://www.youtube.com/watch?v=EmptjFjrc4E',
300
- 'is_pro' => true,
301
- 'icon' => 'pa-pro-preview-window',
302
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
303
- ),
304
- array(
305
- 'key' => 'premium-testimonials',
306
- 'name' => 'premium-addon-testimonials',
307
- 'title' => __( 'Testimonials', 'premium-addons-for-elementor' ),
308
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
309
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/testimonials-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
310
- ),
311
- array(
312
- 'key' => 'premium-facebook-reviews',
313
- 'name' => 'premium-facebook-reviews',
314
- 'title' => __( 'Facebook Reviews', 'premium-addons-for-elementor' ),
315
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
316
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
317
- 'tutorial' => 'https://www.youtube.com/watch?v=zl-OFo3IFd8',
318
- 'is_pro' => true,
319
- 'icon' => 'pa-pro-facebook-reviews',
320
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
321
- ),
322
- array(
323
- 'key' => 'premium-google-reviews',
324
- 'name' => 'premium-google-reviews',
325
- 'title' => __( 'Google Reviews', 'premium-addons-for-elementor' ),
326
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
327
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
328
- 'tutorial' => 'https://www.youtube.com/watch?v=Z0EeGyD34Zk',
329
- 'is_pro' => true,
330
- 'icon' => 'pa-pro-google-reviews',
331
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
332
- ),
333
- array(
334
- 'key' => 'premium-yelp-reviews',
335
- 'name' => 'premium-yelp-reviews',
336
- 'title' => __( 'Yelp Reviews', 'premium-addons-for-elementor' ),
337
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
338
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/yelp-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
339
- 'tutorial' => 'https://www.youtube.com/watch?v=5T-MveVFvns',
340
- 'is_pro' => true,
341
- 'icon' => 'pa-pro-yelp-reviews',
342
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
343
- ),
344
- array(
345
- 'key' => 'premium-trustpilot-reviews',
346
- 'name' => 'premium-trustpilot-reviews',
347
- 'title' => __( 'Trustpilot Reviews', 'premium-addons-for-elementor' ),
348
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-trustpilot-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
349
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-trustpilot-reviews-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
350
- 'is_pro' => true,
351
- 'is_new' => true,
352
- 'icon' => 'pa-pro-trust-reviews',
353
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-trustpilot-reviews-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
354
- ),
355
- array(
356
- 'key' => 'premium-countdown',
357
- 'name' => 'premium-countdown-timer',
358
- 'title' => __( 'Countdown', 'premium-addons-for-elementor' ),
359
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/countdown-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
360
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/countdown-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
361
- ),
362
- array(
363
- 'key' => 'premium-banner',
364
- 'name' => 'premium-addon-banner',
365
- 'title' => __( 'Banner', 'premium-addons-for-elementor' ),
366
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/banner-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
367
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-banner-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
368
- ),
369
- array(
370
- 'key' => 'premium-button',
371
- 'name' => 'premium-addon-button',
372
- 'title' => __( 'Button', 'premium-addons-for-elementor' ),
373
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
374
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/button/', 'settings-page', 'wp-dash', 'dashboard' ),
375
- 'tutorial' => 'https://www.youtube.com/watch?v=w4NuCUkCIV4',
376
- ),
377
- array(
378
- 'key' => 'premium-image-button',
379
- 'name' => 'premium-addon-image-button',
380
- 'title' => __( 'Image Button', 'premium-addons-for-elementor' ),
381
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
382
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-button/', 'settings-page', 'wp-dash', 'dashboard' ),
383
- ),
384
- array(
385
- 'key' => 'premium-flipbox',
386
- 'name' => 'premium-addon-flip-box',
387
- 'title' => __( '3D Hover Box', 'premium-addons-for-elementor' ),
388
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ),
389
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/flip-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
390
- 'is_pro' => true,
391
- 'icon' => 'pa-pro-flip-box',
392
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'editor-page', 'wp-editor', 'get-pro' ),
393
- ),
394
- array(
395
- 'key' => 'premium-iconbox',
396
- 'name' => 'premium-addon-icon-box',
397
- 'title' => __( 'Icon Box', 'premium-addons-for-elementor' ),
398
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
399
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/icon-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
400
- 'is_pro' => true,
401
- 'icon' => 'pa-pro-icon-box',
402
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
403
- ),
404
- array(
405
- 'key' => 'premium-ihover',
406
- 'name' => 'premium-ihover',
407
- 'title' => __( 'iHover', 'premium-addons-for-elementor' ),
408
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
409
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-ihover-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
410
- 'is_pro' => true,
411
- 'icon' => 'pa-pro-ihover',
412
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
413
- ),
414
- array(
415
- 'key' => 'premium-unfold',
416
- 'name' => 'premium-unfold-addon',
417
- 'title' => __( 'Unfold', 'premium-addons-for-elementor' ),
418
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
419
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-unfold-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
420
- 'is_pro' => true,
421
- 'icon' => 'pa-pro-unfold',
422
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
423
- ),
424
- array(
425
- 'key' => 'premium-icon-list',
426
- 'name' => 'premium-icon-list',
427
- 'title' => __( 'Bullet List', 'premium-addons-for-elementor' ),
428
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-bullet-list-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
429
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/bullet-list-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
430
- 'tutorial' => 'https://www.youtube.com/watch?v=MPeXJiZ14sI',
431
- ),
432
- array(
433
- 'key' => 'premium-facebook-feed',
434
- 'name' => 'premium-facebook-feed',
435
- 'title' => __( 'Facebook Feed', 'premium-addons-for-elementor' ),
436
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
437
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/facebook-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
438
- 'is_pro' => true,
439
- 'icon' => 'pa-pro-facebook-feed',
440
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
441
- ),
442
- array(
443
- 'key' => 'premium-twitter-feed',
444
- 'name' => 'premium-twitter-feed',
445
- 'title' => __( 'Twitter Feed', 'premium-addons-for-elementor' ),
446
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
447
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/twitter-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
448
- 'tutorial' => 'https://www.youtube.com/watch?v=wsurRDuR6pg',
449
- 'is_pro' => true,
450
- 'icon' => 'pa-pro-twitter-feed',
451
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
452
- ),
453
- array(
454
- 'key' => 'premium-instagram-feed',
455
- 'name' => 'premium-addon-instagram-feed',
456
- 'title' => __( 'Instagram Feed', 'premium-addons-for-elementor' ),
457
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
458
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/instagram-feed/', 'settings-page', 'wp-dash', 'dashboard' ),
459
- 'is_pro' => true,
460
- 'icon' => 'pa-pro-instagram-feed',
461
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
462
- ),
463
- array(
464
- 'key' => 'premium-behance',
465
- 'name' => 'premium-behance-feed',
466
- 'title' => __( 'Behance Feed', 'premium-addons-for-elementor' ),
467
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
468
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/behance-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
469
- 'tutorial' => 'https://www.youtube.com/watch?v=AXATK3oIXl0',
470
- 'is_pro' => true,
471
- 'icon' => 'pa-pro-behance-feed',
472
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
473
- ),
474
- array(
475
- 'key' => 'premium-progressbar',
476
- 'name' => 'premium-addon-progressbar',
477
- 'title' => __( 'Progress Bar', 'premium-addons-for-elementor' ),
478
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
479
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-progress-bar-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
480
- 'tutorial' => 'https://www.youtube.com/watch?v=Y7xqwhgDQJg',
481
- ),
482
- array(
483
- 'key' => 'premium-pricing-table',
484
- 'name' => 'premium-addon-pricing-table',
485
- 'title' => __( 'Pricing Table', 'premium-addons-for-elementor' ),
486
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pricing-table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
487
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/pricing-table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
488
- ),
489
- array(
490
- 'key' => 'premium-charts',
491
- 'name' => 'premium-chart',
492
- 'title' => __( 'Charts', 'premium-addons-for-elementor' ),
493
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
494
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/charts-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
495
- 'tutorial' => 'https://www.youtube.com/watch?v=lZZvslQ2UYU',
496
- 'is_pro' => true,
497
- 'icon' => 'pa-pro-charts',
498
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
499
- ),
500
- array(
501
- 'key' => 'premium-tables',
502
- 'name' => 'premium-tables-addon',
503
- 'title' => __( 'Table', 'premium-addons-for-elementor' ),
504
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
505
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
506
- 'is_pro' => true,
507
- 'icon' => 'pa-pro-table',
508
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
509
- ),
510
- array(
511
- 'key' => 'premium-counter',
512
- 'name' => 'premium-counter',
513
- 'title' => __( 'Counter', 'premium-addons-for-elementor' ),
514
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/counter-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
515
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/counter-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
516
- ),
517
- array(
518
- 'key' => 'premium-contactform',
519
- 'name' => 'premium-contact-form',
520
- 'title' => __( 'Contact Form 7', 'premium-addons-for-elementor' ),
521
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/contact-form-7-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
522
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/contact-form-7-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
523
- ),
524
- array(
525
- 'key' => 'premium-fb-chat',
526
- 'name' => 'premium-addon-facebook-chat',
527
- 'title' => __( 'Facebook Messenger Chat', 'premium-addons-for-elementor' ),
528
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
529
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-messenger/', 'settings-page', 'wp-dash', 'dashboard' ),
530
- 'is_pro' => true,
531
- 'icon' => 'pa-pro-messenger-chat',
532
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
533
- ),
534
- array(
535
- 'key' => 'premium-whatsapp-chat',
536
- 'name' => 'premium-whatsapp-chat',
537
- 'title' => __( 'WhatsApp Chat', 'premium-addons-for-elementor' ),
538
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
539
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/whatsapp-chat-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
540
- 'is_pro' => true,
541
- 'icon' => 'pa-pro-whatsapp',
542
- 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
543
- ),
544
- array(
545
- 'key' => 'woo-products',
546
- 'title' => __( 'Woo Products', 'premium-addons-for-elementor' ),
547
- 'name' => 'premium-woo-products',
548
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-woocommerce-products/', 'settings-page', 'wp-dash', 'dashboard' ),
549
- ),
550
- ),
551
- ),
552
- 'cat-2' => array(
553
- 'icon' => 'content',
554
- 'title' => __( 'Content Widgets', 'premium-addons-for-elementor' ),
555
- 'elements' => array(
556
- array(
557
- 'key' => 'premium-carousel',
558
- 'name' => 'premium-carousel-widget',
559
- 'title' => __( 'Carousel', 'premium-addons-for-elementor' ),
560
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/carousel-widget-for-elementor-page-builder', 'settings-page', 'wp-dash', 'dashboard' ),
561
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/carousel/', 'settings-page', 'wp-dash', 'dashboard' ),
562
- 'tutorial' => 'https://www.youtube.com/watch?v=ZMgprLKvq24',
563
- ),
564
- array(
565
- 'key' => 'premium-blog',
566
- 'name' => 'premium-addon-blog',
567
- 'title' => __( 'Blog', 'premium-addons-for-elementor' ),
568
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/blog-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
569
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/blog/', 'settings-page', 'wp-dash', 'dashboard' ),
570
- ),
571
- array(
572
- 'key' => 'premium-maps',
573
- 'name' => 'premium-addon-maps',
574
- 'title' => __( 'Google Maps', 'premium-addons-for-elementor' ),
575
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-maps-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
576
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-maps/', 'settings-page', 'wp-dash', 'dashboard' ),
577
- 'tutorial' => 'https://www.youtube.com/watch?v=z4taEeCY77Q',
578
- ),
579
- array(
580
- 'key' => 'premium-person',
581
- 'name' => 'premium-addon-person',
582
- 'title' => __( 'Team Members', 'premium-addons-for-elementor' ),
583
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/persons-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
584
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/persons-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
585
- ),
586
- array(
587
- 'key' => 'premium-tabs',
588
- 'name' => 'premium-addon-tabs',
589
- 'title' => __( 'Tabs', 'premium-addons-for-elementor' ),
590
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
591
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/tabs-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
592
- 'is_pro' => true,
593
- ),
594
- array(
595
- 'key' => 'premium-content-toggle',
596
- 'name' => 'premium-addon-content-toggle',
597
- 'title' => __( 'Content Switcher', 'premium-addons-for-elementor' ),
598
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
599
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-content-switcher/', 'settings-page', 'wp-dash', 'dashboard' ),
600
- 'is_pro' => true,
601
- ),
602
- array(
603
- 'key' => 'premium-fancytext',
604
- 'name' => 'premium-addon-fancy-text',
605
- 'title' => __( 'Fancy Text', 'premium-addons-for-elementor' ),
606
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
607
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/fancy-text-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
608
- ),
609
- array(
610
- 'key' => 'premium-title',
611
- 'name' => 'premium-addon-title',
612
- 'title' => __( 'Heading', 'premium-addons-for-elementor' ),
613
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/heading-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
614
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
615
- ),
616
- array(
617
- 'key' => 'premium-dual-header',
618
- 'name' => 'premium-addon-dual-header',
619
- 'title' => __( 'Dual Heading', 'premium-addons-for-elementor' ),
620
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
621
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/dual-heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
622
- ),
623
- array(
624
- 'key' => 'premium-divider',
625
- 'name' => 'premium-divider',
626
- 'title' => __( 'Divider', 'premium-addons-for-elementor' ),
627
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
628
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/divider-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
629
- 'is_pro' => true,
630
- ),
631
- ),
632
- ),
633
- 'cat-3' => array(
634
- 'icon' => 'images',
635
- 'title' => __( 'Image & Video Widgets', 'premium-addons-for-elementor' ),
636
- 'elements' => array(
637
- array(
638
- 'key' => 'premium-grid',
639
- 'name' => 'premium-img-gallery',
640
- 'title' => __( 'Media Grid', 'premium-addons-for-elementor' ),
641
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/grid-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
642
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/grid-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
643
- ),
644
- array(
645
- 'key' => 'premium-image-scroll',
646
- 'name' => 'premium-image-scroll',
647
- 'title' => __( 'Image Scroll', 'premium-addons-for-elementor' ),
648
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
649
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
650
- ),
651
- array(
652
- 'key' => 'premium-image-separator',
653
- 'name' => 'premium-addon-image-separator',
654
- 'title' => __( 'Image Separator', 'premium-addons-for-elementor' ),
655
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-separator-widget-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
656
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-separator-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
657
- ),
658
- array(
659
- 'key' => 'premium-image-comparison',
660
- 'name' => 'premium-addon-image-comparison',
661
- 'title' => __( 'Image Comparison', 'premium-addons-for-elementor' ),
662
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
663
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-image-comparison-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
664
- 'is_pro' => true,
665
- ),
666
- array(
667
- 'key' => 'premium-image-hotspots',
668
- 'name' => 'premium-addon-image-hotspots',
669
- 'title' => __( 'Image Hotspots', 'premium-addons-for-elementor' ),
670
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
671
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-hotspots-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
672
- 'is_pro' => true,
673
- ),
674
- array(
675
- 'key' => 'premium-img-layers',
676
- 'name' => 'premium-img-layers-addon',
677
- 'title' => __( 'Image Layers', 'premium-addons-for-elementor' ),
678
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
679
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-layers/', 'settings-page', 'wp-dash', 'dashboard' ),
680
- 'tutorial' => 'https://www.youtube.com/watch?v=D3INxWw_jKI',
681
- 'is_pro' => true,
682
- ),
683
- array(
684
- 'key' => 'premium-image-accordion',
685
- 'name' => 'premium-image-accordion',
686
- 'title' => __( 'Image Accordion', 'premium-addons-for-elementor' ),
687
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
688
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-accordion-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
689
- 'is_pro' => true,
690
- ),
691
- array(
692
- 'key' => 'premium-videobox',
693
- 'name' => 'premium-addon-video-box',
694
- 'title' => __( 'Video Box', 'premium-addons-for-elementor' ),
695
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/video-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
696
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/video-box/', 'settings-page', 'wp-dash', 'dashboard' ),
697
- ),
698
- ),
699
- ),
700
- 'cat-4' => array(
701
- 'icon' => 'section',
702
- 'title' => __( 'Section Addons & Widgets', 'premium-addons-for-elementor' ),
703
- 'elements' => array(
704
- array(
705
- 'key' => 'premium-hscroll',
706
- 'name' => 'premium-hscroll',
707
- 'title' => __( 'Horizontal Scroll', 'premium-addons-for-elementor' ),
708
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
709
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/horizontal-scroll/', 'settings-page', 'wp-dash', 'dashboard' ),
710
- 'tutorial' => 'https://www.youtube.com/watch?v=4HqT_3s-ZXg',
711
- 'is_pro' => true,
712
- ),
713
- array(
714
- 'key' => 'premium-vscroll',
715
- 'name' => 'premium-vscroll',
716
- 'title' => __( 'Vertical Scroll', 'premium-addons-for-elementor' ),
717
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/vertical-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
718
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/vertical-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
719
- 'tutorial' => 'https://www.youtube.com/watch?v=MuLaIn1QXfQ',
720
- ),
721
- array(
722
- 'key' => 'premium-color-transition',
723
- 'name' => 'premium-color-transition',
724
- 'title' => __( 'Background Transition', 'premium-addons-for-elementor' ),
725
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
726
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/background-transition-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
727
- 'is_pro' => true,
728
- ),
729
- array(
730
- 'key' => 'premium-multi-scroll',
731
- 'name' => 'premium-multi-scroll',
732
- 'title' => __( 'Multi Scroll', 'premium-addons-for-elementor' ),
733
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
734
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/multi-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
735
- 'tutorial' => 'https://www.youtube.com/watch?v=IzYnD6oDYXw',
736
- 'is_pro' => true,
737
- ),
738
- array(
739
- 'key' => 'premium-lottie',
740
- 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ),
741
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-section-addon/', 'settings-page', 'wp-dash', 'dashboard' ),
742
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/lottie-background/', 'settings-page', 'wp-dash', 'dashboard' ),
743
- 'tutorial' => 'https://www.youtube.com/watch?v=KVrenWNEdkY',
744
- 'is_pro' => true,
745
- 'is_global' => true,
746
- ),
747
- array(
748
- 'key' => 'premium-parallax',
749
- 'title' => __( 'Parallax', 'premium-addons-for-elementor' ),
750
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/parallax-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
751
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/parallax-section-addon-tutorial-2/', 'settings-page', 'wp-dash', 'dashboard' ),
752
- 'tutorial' => 'https://www.youtube.com/watch?v=hkMNjxLoZ2w',
753
- 'is_pro' => true,
754
- 'is_global' => true,
755
- ),
756
- array(
757
- 'key' => 'premium-particles',
758
- 'title' => __( 'Particles', 'premium-addons-for-elementor' ),
759
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
760
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/particles/', 'settings-page', 'wp-dash', 'dashboard' ),
761
- 'tutorial' => 'https://www.youtube.com/watch?v=bPmWKv4VWrI',
762
- 'is_pro' => true,
763
- 'is_global' => true,
764
- ),
765
- array(
766
- 'key' => 'premium-gradient',
767
- 'title' => __( 'Animated Gradient', 'premium-addons-for-elementor' ),
768
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/animated-section-gradients-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
769
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/animated-gradient-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
770
- 'tutorial' => 'https://www.youtube.com/watch?v=IL4USvwR6K4',
771
- 'is_pro' => true,
772
- 'is_global' => true,
773
- ),
774
- array(
775
- 'key' => 'premium-kenburns',
776
- 'title' => __( 'Animated Ken Burns', 'premium-addons-for-elementor' ),
777
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ken-burns-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
778
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/ken-burns-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
779
- 'tutorial' => 'https://www.youtube.com/watch?v=DUNFjWphZfs',
780
- 'is_pro' => true,
781
- 'is_global' => true,
782
- ),
783
- array(
784
- 'key' => 'premium-blob',
785
- 'title' => __( 'Blob Generator', 'premium-addons-for-elementor' ),
786
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-animated-blob-generator/', 'settings-page', 'wp-dash', 'dashboard' ),
787
- 'is_pro' => true,
788
- 'is_global' => true,
789
- ),
790
- ),
791
- ),
792
- 'cat-5' => array(
793
- 'icon' => 'off-grid',
794
- 'title' => __( 'Off-Grid Widgets', 'premium-addons-for-elementor' ),
795
- 'elements' => array(
796
- array(
797
- 'key' => 'premium-modalbox',
798
- 'name' => 'premium-addon-modal-box',
799
- 'title' => __( 'Modal Box', 'premium-addons-for-elementor' ),
800
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
801
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/modal-box/', 'settings-page', 'wp-dash', 'dashboard' ),
802
- 'tutorial' => 'https://www.youtube.com/watch?v=3lLxSyf2nyk',
803
- ),
804
- array(
805
- 'key' => 'premium-notbar',
806
- 'name' => 'premium-notbar',
807
- 'title' => __( 'Alert Box', 'premium-addons-for-elementor' ),
808
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
809
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/alert-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
810
- 'is_pro' => true,
811
- ),
812
- array(
813
- 'key' => 'premium-magic-section',
814
- 'name' => 'premium-addon-magic-section',
815
- 'title' => __( 'Magic Section', 'premium-addons-for-elementor' ),
816
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
817
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/magic-section-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
818
- 'is_pro' => true,
819
- ),
820
- array(
821
- 'key' => 'premium-prev-img',
822
- 'name' => 'premium-addon-preview-image',
823
- 'title' => __( 'Preview Window', 'premium-addons-for-elementor' ),
824
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
825
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/preview-window-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
826
- 'tutorial' => 'https://www.youtube.com/watch?v=EmptjFjrc4E',
827
- 'is_pro' => true,
828
- ),
829
- ),
830
- ),
831
- 'cat-6' => array(
832
- 'icon' => 'social',
833
- 'title' => __( 'Reviews & Testimonials Widgets', 'premium-addons-for-elementor' ),
834
- 'elements' => array(
835
- array(
836
- 'key' => 'premium-testimonials',
837
- 'name' => 'premium-addon-testimonials',
838
- 'title' => __( 'Testimonials', 'premium-addons-for-elementor' ),
839
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
840
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/testimonials-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
841
- ),
842
- array(
843
- 'key' => 'premium-facebook-reviews',
844
- 'name' => 'premium-facebook-reviews',
845
- 'title' => __( 'Facebook Reviews', 'premium-addons-for-elementor' ),
846
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
847
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
848
- 'tutorial' => 'https://www.youtube.com/watch?v=zl-OFo3IFd8',
849
- 'is_pro' => true,
850
- ),
851
- array(
852
- 'key' => 'premium-google-reviews',
853
- 'name' => 'premium-google-reviews',
854
- 'title' => __( 'Google Reviews', 'premium-addons-for-elementor' ),
855
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
856
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
857
- 'tutorial' => 'https://www.youtube.com/watch?v=Z0EeGyD34Zk',
858
- 'is_pro' => true,
859
- ),
860
- array(
861
- 'key' => 'premium-yelp-reviews',
862
- 'name' => 'premium-yelp-reviews',
863
- 'title' => __( 'Yelp Reviews', 'premium-addons-for-elementor' ),
864
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
865
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/yelp-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
866
- 'tutorial' => 'https://www.youtube.com/watch?v=5T-MveVFvns',
867
- 'is_pro' => true,
868
- ),
869
- array(
870
- 'key' => 'premium-trustpilot-reviews',
871
- 'name' => 'premium-trustpilot-reviews',
872
- 'title' => __( 'Trustpilot Reviews', 'premium-addons-for-elementor' ),
873
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-trustpilot-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
874
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-trustpilot-reviews-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
875
- 'is_pro' => true,
876
- 'is_new' => true,
877
- ),
878
- ),
879
- ),
880
- 'cat-7' => array(
881
- 'icon' => 'blurbs',
882
- 'title' => __( 'Blurbs & CTA Widgets', 'premium-addons-for-elementor' ),
883
- 'elements' => array(
884
- array(
885
- 'key' => 'premium-countdown',
886
- 'name' => 'premium-countdown-timer',
887
- 'title' => __( 'Countdown', 'premium-addons-for-elementor' ),
888
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/countdown-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
889
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/countdown-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
890
- ),
891
- array(
892
- 'key' => 'premium-banner',
893
- 'name' => 'premium-addon-banner',
894
- 'title' => __( 'Banner', 'premium-addons-for-elementor' ),
895
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/banner-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
896
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-banner-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
897
- ),
898
- array(
899
- 'key' => 'premium-button',
900
- 'name' => 'premium-addon-button',
901
- 'title' => __( 'Button', 'premium-addons-for-elementor' ),
902
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
903
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/button/', 'settings-page', 'wp-dash', 'dashboard' ),
904
- 'tutorial' => 'https://www.youtube.com/watch?v=w4NuCUkCIV4',
905
- ),
906
- array(
907
- 'key' => 'premium-image-button',
908
- 'title' => __( 'Image Button', 'premium-addons-for-elementor' ),
909
- 'name' => 'premium-addon-image-button',
910
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
911
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-button/', 'settings-page', 'wp-dash', 'dashboard' ),
912
- ),
913
- array(
914
- 'key' => 'premium-flipbox',
915
- 'name' => 'premium-addon-flip-box',
916
- 'title' => __( '3D Hover Box', 'premium-addons-for-elementor' ),
917
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ),
918
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/flip-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
919
- 'is_pro' => true,
920
- ),
921
- array(
922
- 'key' => 'premium-iconbox',
923
- 'name' => 'premium-addon-icon-box',
924
- 'title' => __( 'Icon Box', 'premium-addons-for-elementor' ),
925
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
926
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/icon-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
927
- 'is_pro' => true,
928
- ),
929
- array(
930
- 'key' => 'premium-ihover',
931
- 'name' => 'premium-ihover',
932
- 'title' => __( 'iHover', 'premium-addons-for-elementor' ),
933
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
934
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-ihover-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
935
- 'is_pro' => true,
936
- ),
937
- array(
938
- 'key' => 'premium-unfold',
939
- 'name' => 'premium-unfold-addon',
940
- 'title' => __( 'Unfold', 'premium-addons-for-elementor' ),
941
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
942
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-unfold-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
943
- 'is_pro' => true,
944
- ),
945
- array(
946
- 'key' => 'premium-icon-list',
947
- 'name' => 'premium-icon-list',
948
- 'title' => __( 'Bullet List', 'premium-addons-for-elementor' ),
949
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-bullet-list-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
950
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/bullet-list-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
951
- 'tutorial' => 'https://www.youtube.com/watch?v=MPeXJiZ14sI',
952
- ),
953
- ),
954
- ),
955
- 'cat-8' => array(
956
- 'icon' => 'feed',
957
- 'title' => __( 'Social Feed Widgets', 'premium-addons-for-elementor' ),
958
- 'elements' => array(
959
- array(
960
- 'key' => 'premium-facebook-feed',
961
- 'name' => 'premium-facebook-feed',
962
- 'title' => __( 'Facebook Feed', 'premium-addons-for-elementor' ),
963
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
964
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/facebook-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
965
- 'is_pro' => true,
966
- ),
967
- array(
968
- 'key' => 'premium-twitter-feed',
969
- 'name' => 'premium-twitter-feed',
970
- 'title' => __( 'Twitter Feed', 'premium-addons-for-elementor' ),
971
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
972
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/twitter-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
973
- 'tutorial' => 'https://www.youtube.com/watch?v=wsurRDuR6pg',
974
- 'is_pro' => true,
975
- ),
976
- array(
977
- 'key' => 'premium-instagram-feed',
978
- 'name' => 'premium-addon-instagram-feed',
979
- 'title' => __( 'Instagram Feed', 'premium-addons-for-elementor' ),
980
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
981
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/instagram-feed/', 'settings-page', 'wp-dash', 'dashboard' ),
982
- 'is_pro' => true,
983
- ),
984
- array(
985
- 'key' => 'premium-behance',
986
- 'name' => 'premium-behance-feed',
987
- 'title' => __( 'Behance Feed', 'premium-addons-for-elementor' ),
988
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
989
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/behance-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
990
- 'tutorial' => 'https://www.youtube.com/watch?v=AXATK3oIXl0',
991
- 'is_pro' => true,
992
- ),
993
- ),
994
- ),
995
- 'cat-9' => array(
996
- 'icon' => 'data',
997
- 'title' => __( 'Tables, Charts & Anything Data Widgets', 'premium-addons-for-elementor' ),
998
- 'elements' => array(
999
- array(
1000
- 'key' => 'premium-progressbar',
1001
- 'name' => 'premium-addon-progressbar',
1002
- 'title' => __( 'Progress Bar', 'premium-addons-for-elementor' ),
1003
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1004
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-progress-bar-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
1005
- 'tutorial' => 'https://www.youtube.com/watch?v=Y7xqwhgDQJg',
1006
- ),
1007
- array(
1008
- 'key' => 'premium-pricing-table',
1009
- 'name' => 'premium-addon-pricing-table',
1010
- 'title' => __( 'Pricing Table', 'premium-addons-for-elementor' ),
1011
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pricing-table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1012
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/pricing-table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1013
- ),
1014
- array(
1015
- 'key' => 'premium-charts',
1016
- 'name' => 'premium-chart',
1017
- 'title' => __( 'Charts', 'premium-addons-for-elementor' ),
1018
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1019
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/charts-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1020
- 'tutorial' => 'https://www.youtube.com/watch?v=lZZvslQ2UYU',
1021
- 'is_pro' => true,
1022
- ),
1023
- array(
1024
- 'key' => 'premium-tables',
1025
- 'name' => 'premium-tables-addon',
1026
- 'title' => __( 'Table', 'premium-addons-for-elementor' ),
1027
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1028
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1029
- 'is_pro' => true,
1030
- ),
1031
- array(
1032
- 'key' => 'premium-counter',
1033
- 'name' => 'premium-counter',
1034
- 'title' => __( 'Counter', 'premium-addons-for-elementor' ),
1035
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/counter-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1036
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/counter-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1037
- ),
1038
- ),
1039
- ),
1040
- 'cat-10' => array(
1041
- 'icon' => 'contact',
1042
- 'title' => __( 'Contact Widgets', 'premium-addons-for-elementor' ),
1043
- 'elements' => array(
1044
- array(
1045
- 'key' => 'premium-contactform',
1046
- 'name' => 'premium-contact-form',
1047
- 'title' => __( 'Contact Form 7', 'premium-addons-for-elementor' ),
1048
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/contact-form-7-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1049
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/contact-form-7-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1050
- ),
1051
- array(
1052
- 'key' => 'premium-fb-chat',
1053
- 'name' => 'premium-addon-facebook-chat',
1054
- 'title' => __( 'Facebook Messenger Chat', 'premium-addons-for-elementor' ),
1055
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1056
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-messenger/', 'settings-page', 'wp-dash', 'dashboard' ),
1057
- 'is_pro' => true,
1058
- ),
1059
- array(
1060
- 'key' => 'premium-whatsapp-chat',
1061
- 'name' => 'premium-whatsapp-chat',
1062
- 'title' => __( 'WhatsApp Chat', 'premium-addons-for-elementor' ),
1063
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1064
- 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/whatsapp-chat-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1065
- 'is_pro' => true,
1066
- ),
1067
- ),
1068
- ),
1069
- 'cat-11' => array(
1070
- 'icon' => 'extensions',
1071
- 'elements' => array(
1072
- array(
1073
- 'key' => 'premium-templates',
1074
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-templates-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ),
1075
- ),
1076
- array(
1077
- 'key' => 'premium-equal-height',
1078
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-addons-global-features-for-elementor/#equal-height-feature', 'settings-page', 'wp-dash', 'dashboard' ),
1079
- ),
1080
- array(
1081
- 'key' => 'pa-display-conditions',
1082
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-display-conditions/', 'settings-page', 'wp-dash', 'dashboard' ),
1083
- ),
1084
- array(
1085
- 'key' => 'premium-global-cursor',
1086
- 'is_pro' => true,
1087
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-custom-mouse-cursor-global-feature/', 'settings-page', 'wp-dash', 'dashboard' ),
1088
- ),
1089
- array(
1090
- 'key' => 'premium-global-badge',
1091
- 'is_pro' => true,
1092
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-badge-global-addon/', 'settings-page', 'wp-dash', 'dashboard' ),
1093
- ),
1094
- array(
1095
- 'key' => 'premium-floating-effects',
1096
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-floating-effects-animation/', 'settings-page', 'wp-dash', 'dashboard' ),
1097
- ),
1098
- array(
1099
- 'key' => 'premium-cross-domain',
1100
- 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-addons-global-features-for-elementor/#common-features', 'settings-page', 'wp-dash', 'dashboard' ),
1101
- ),
1102
- array(
1103
- 'key' => 'premium-duplicator',
1104
- ),
1105
- array(
1106
- 'key' => 'premium-assets-generator',
1107
- ),
1108
- ),
1109
- ),
1110
- );
1111
-
1112
- return $elements;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * PA Elements.
4
+ */
5
+
6
+ use PremiumAddons\Includes\Helper_Functions;
7
+
8
+ $prefix = Helper_Functions::get_prefix();
9
+
10
+ $elements = array(
11
+ 'cat-1' => array(
12
+ 'icon' => 'all',
13
+ 'title' => __( 'All Widgets', 'premium-addons-for-elementor' ),
14
+ 'elements' => array(
15
+ array(
16
+ 'key' => 'premium-lottie-widget',
17
+ 'name' => 'premium-lottie',
18
+ 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ),
19
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
20
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/lottie-animations-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
21
+ 'tutorial' => 'https://www.youtube.com/watch?v=0QWzUpF57dw',
22
+ ),
23
+ array(
24
+ 'key' => 'premium-carousel',
25
+ 'name' => 'premium-carousel-widget',
26
+ 'title' => __( 'Carousel', 'premium-addons-for-elementor' ),
27
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/carousel-widget-for-elementor-page-builder', 'settings-page', 'wp-dash', 'dashboard' ),
28
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/carousel/', 'settings-page', 'wp-dash', 'dashboard' ),
29
+ 'tutorial' => 'https://www.youtube.com/watch?v=ZMgprLKvq24',
30
+ ),
31
+ array(
32
+ 'key' => 'premium-blog',
33
+ 'name' => 'premium-addon-blog',
34
+ 'title' => __( 'Blog', 'premium-addons-for-elementor' ),
35
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/blog-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
36
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/blog/', 'settings-page', 'wp-dash', 'dashboard' ),
37
+ ),
38
+ array(
39
+ 'key' => 'premium-nav-menu',
40
+ 'name' => 'premium-nav-menu',
41
+ 'title' => __( 'Nav/Mega Menu', 'premium-addons-for-elementor' ),
42
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-mega-menu-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
43
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-mega-menu-widget-tutorial', 'settings-page', 'wp-dash', 'dashboard' ),
44
+ ),
45
+ array(
46
+ 'key' => 'premium-maps',
47
+ 'name' => 'premium-addon-maps',
48
+ 'title' => __( 'Google Maps', 'premium-addons-for-elementor' ),
49
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-maps-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
50
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-maps/', 'settings-page', 'wp-dash', 'dashboard' ),
51
+ 'tutorial' => 'https://www.youtube.com/watch?v=z4taEeCY77Q',
52
+ ),
53
+ array(
54
+ 'key' => 'premium-person',
55
+ 'name' => 'premium-addon-person',
56
+ 'title' => __( 'Team Members', 'premium-addons-for-elementor' ),
57
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/persons-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
58
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/persons-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
59
+ ),
60
+ array(
61
+ 'key' => 'premium-tabs',
62
+ 'name' => 'premium-addon-tabs',
63
+ 'title' => __( 'Tabs', 'premium-addons-for-elementor' ),
64
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
65
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/tabs-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
66
+ 'is_pro' => true,
67
+ 'icon' => 'pa-pro-tabs',
68
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
69
+ ),
70
+ array(
71
+ 'key' => 'premium-content-toggle',
72
+ 'name' => 'premium-addon-content-toggle',
73
+ 'title' => __( 'Content Switcher', 'premium-addons-for-elementor' ),
74
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
75
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-content-switcher/', 'settings-page', 'wp-dash', 'dashboard' ),
76
+ 'is_pro' => true,
77
+ 'icon' => 'pa-pro-content-switcher',
78
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
79
+ ),
80
+ array(
81
+ 'key' => 'premium-fancytext',
82
+ 'name' => 'premium-addon-fancy-text',
83
+ 'title' => __( 'Fancy Text', 'premium-addons-for-elementor' ),
84
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
85
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/fancy-text-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
86
+ ),
87
+ array(
88
+ 'key' => 'premium-title',
89
+ 'name' => 'premium-addon-title',
90
+ 'title' => __( 'Heading', 'premium-addons-for-elementor' ),
91
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/heading-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
92
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
93
+ ),
94
+ array(
95
+ 'key' => 'premium-dual-header',
96
+ 'name' => 'premium-addon-dual-header',
97
+ 'title' => __( 'Dual Heading', 'premium-addons-for-elementor' ),
98
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
99
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/dual-heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
100
+ ),
101
+ array(
102
+ 'key' => 'premium-divider',
103
+ 'name' => 'premium-divider',
104
+ 'title' => __( 'Divider', 'premium-addons-for-elementor' ),
105
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
106
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/divider-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
107
+ 'is_pro' => true,
108
+ 'icon' => 'pa-pro-separator',
109
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
110
+ ),
111
+ array(
112
+ 'key' => 'premium-grid',
113
+ 'name' => 'premium-img-gallery',
114
+ 'title' => __( 'Media Grid', 'premium-addons-for-elementor' ),
115
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/grid-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
116
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/grid/', 'settings-page', 'wp-dash', 'dashboard' ),
117
+ ),
118
+ array(
119
+ 'key' => 'premium-image-scroll',
120
+ 'name' => 'premium-image-scroll',
121
+ 'title' => __( 'Image Scroll', 'premium-addons-for-elementor' ),
122
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
123
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
124
+ ),
125
+ array(
126
+ 'key' => 'premium-image-separator',
127
+ 'name' => 'premium-addon-image-separator',
128
+ 'title' => __( 'Image Separator', 'premium-addons-for-elementor' ),
129
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-separator-widget-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
130
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-separator-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
131
+ ),
132
+ array(
133
+ 'key' => 'premium-image-comparison',
134
+ 'name' => 'premium-addon-image-comparison',
135
+ 'title' => __( 'Image Comparison', 'premium-addons-for-elementor' ),
136
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
137
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-image-comparison-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
138
+ 'is_pro' => true,
139
+ 'icon' => 'pa-pro-image-comparison',
140
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
141
+ ),
142
+ array(
143
+ 'key' => 'premium-image-hotspots',
144
+ 'name' => 'premium-addon-image-hotspots',
145
+ 'title' => __( 'Image Hotspots', 'premium-addons-for-elementor' ),
146
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
147
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-hotspots-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
148
+ 'is_pro' => true,
149
+ 'icon' => 'pa-pro-hot-spot',
150
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
151
+ ),
152
+ array(
153
+ 'key' => 'premium-img-layers',
154
+ 'name' => 'premium-img-layers-addon',
155
+ 'title' => __( 'Image Layers', 'premium-addons-for-elementor' ),
156
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
157
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-layers/', 'settings-page', 'wp-dash', 'dashboard' ),
158
+ 'tutorial' => 'https://www.youtube.com/watch?v=D3INxWw_jKI',
159
+ 'is_pro' => true,
160
+ 'icon' => 'pa-pro-image-layers',
161
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
162
+ ),
163
+ array(
164
+ 'key' => 'premium-image-accordion',
165
+ 'name' => 'premium-image-accordion',
166
+ 'title' => __( 'Image Accordion', 'premium-addons-for-elementor' ),
167
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
168
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-accordion-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
169
+ 'is_pro' => true,
170
+ 'icon' => 'pa-pro-image-accordion',
171
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
172
+ ),
173
+ array(
174
+ 'key' => 'premium-videobox',
175
+ 'name' => 'premium-addon-video-box',
176
+ 'title' => __( 'Video Box', 'premium-addons-for-elementor' ),
177
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/video-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
178
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/video-box/', 'settings-page', 'wp-dash', 'dashboard' ),
179
+ ),
180
+ array(
181
+ 'key' => 'premium-hscroll',
182
+ 'name' => 'premium-hscroll',
183
+ 'title' => __( 'Horizontal Scroll', 'premium-addons-for-elementor' ),
184
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
185
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/horizontal-scroll/', 'settings-page', 'wp-dash', 'dashboard' ),
186
+ 'tutorial' => 'https://www.youtube.com/watch?v=4HqT_3s-ZXg',
187
+ 'is_pro' => true,
188
+ 'icon' => 'pa-pro-horizontal-scroll',
189
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
190
+ ),
191
+ array(
192
+ 'key' => 'premium-vscroll',
193
+ 'name' => 'premium-vscroll',
194
+ 'title' => __( 'Vertical Scroll', 'premium-addons-for-elementor' ),
195
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/vertical-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
196
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/vertical-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
197
+ 'tutorial' => 'https://www.youtube.com/watch?v=MuLaIn1QXfQ',
198
+ ),
199
+ array(
200
+ 'key' => 'premium-color-transition',
201
+ 'name' => 'premium-color-transition',
202
+ 'title' => __( 'Background Transition', 'premium-addons-for-elementor' ),
203
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
204
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/background-transition-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
205
+ 'is_pro' => true,
206
+ 'icon' => 'pa-pro-color-transition',
207
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
208
+ ),
209
+ array(
210
+ 'key' => 'premium-multi-scroll',
211
+ 'name' => 'premium-multi-scroll',
212
+ 'title' => __( 'Multi Scroll', 'premium-addons-for-elementor' ),
213
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
214
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/multi-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
215
+ 'tutorial' => 'https://www.youtube.com/watch?v=IzYnD6oDYXw',
216
+ 'is_pro' => true,
217
+ 'icon' => 'pa-pro-multi-scroll',
218
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
219
+ ),
220
+ array(
221
+ 'key' => 'premium-lottie',
222
+ 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ),
223
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-section-addon/', 'settings-page', 'wp-dash', 'dashboard' ),
224
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/lottie-background/', 'settings-page', 'wp-dash', 'dashboard' ),
225
+ 'tutorial' => 'https://www.youtube.com/watch?v=KVrenWNEdkY',
226
+ 'is_pro' => true,
227
+ 'is_global' => true,
228
+ ),
229
+ array(
230
+ 'key' => 'premium-parallax',
231
+ 'title' => __( 'Parallax', 'premium-addons-for-elementor' ),
232
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/parallax-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
233
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/parallax-section-addon-tutorial-2/', 'settings-page', 'wp-dash', 'dashboard' ),
234
+ 'tutorial' => 'https://www.youtube.com/watch?v=hkMNjxLoZ2w',
235
+ 'is_pro' => true,
236
+ 'is_global' => true,
237
+ ),
238
+ array(
239
+ 'key' => 'premium-particles',
240
+ 'title' => __( 'Particles', 'premium-addons-for-elementor' ),
241
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
242
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/particles/', 'settings-page', 'wp-dash', 'dashboard' ),
243
+ 'tutorial' => 'https://www.youtube.com/watch?v=bPmWKv4VWrI',
244
+ 'is_pro' => true,
245
+ 'is_global' => true,
246
+ ),
247
+ array(
248
+ 'key' => 'premium-gradient',
249
+ 'title' => __( 'Animated Gradient', 'premium-addons-for-elementor' ),
250
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/animated-section-gradients-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
251
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/animated-gradient-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
252
+ 'tutorial' => 'https://www.youtube.com/watch?v=IL4USvwR6K4',
253
+ 'is_pro' => true,
254
+ 'is_global' => true,
255
+ ),
256
+ array(
257
+ 'key' => 'premium-kenburns',
258
+ 'title' => __( 'Animated Ken Burns', 'premium-addons-for-elementor' ),
259
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ken-burns-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
260
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/ken-burns-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
261
+ 'tutorial' => 'https://www.youtube.com/watch?v=DUNFjWphZfs',
262
+ 'is_pro' => true,
263
+ 'is_global' => true,
264
+ ),
265
+ array(
266
+ 'key' => 'premium-blob',
267
+ 'title' => __( 'Blob Generator', 'premium-addons-for-elementor' ),
268
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-animated-blob-generator/', 'settings-page', 'wp-dash', 'dashboard' ),
269
+ 'is_pro' => true,
270
+ 'is_global' => true,
271
+ ),
272
+ array(
273
+ 'key' => 'premium-modalbox',
274
+ 'name' => 'premium-addon-modal-box',
275
+ 'title' => __( 'Modal Box', 'premium-addons-for-elementor' ),
276
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
277
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/modal-box/', 'settings-page', 'wp-dash', 'dashboard' ),
278
+ 'tutorial' => 'https://www.youtube.com/watch?v=3lLxSyf2nyk',
279
+ ),
280
+ array(
281
+ 'key' => 'premium-notbar',
282
+ 'name' => 'premium-notbar',
283
+ 'title' => __( 'Alert Box', 'premium-addons-for-elementor' ),
284
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
285
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/alert-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
286
+ 'is_pro' => true,
287
+ 'icon' => 'pa-pro-notification-bar',
288
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
289
+ ),
290
+ array(
291
+ 'key' => 'premium-magic-section',
292
+ 'name' => 'premium-addon-magic-section',
293
+ 'title' => __( 'Magic Section', 'premium-addons-for-elementor' ),
294
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
295
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/magic-section-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
296
+ 'is_pro' => true,
297
+ 'icon' => 'pa-pro-magic-section',
298
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
299
+ ),
300
+ array(
301
+ 'key' => 'premium-prev-img',
302
+ 'name' => 'premium-addon-preview-image',
303
+ 'title' => __( 'Preview Window', 'premium-addons-for-elementor' ),
304
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
305
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/preview-window-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
306
+ 'tutorial' => 'https://www.youtube.com/watch?v=EmptjFjrc4E',
307
+ 'is_pro' => true,
308
+ 'icon' => 'pa-pro-preview-window',
309
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
310
+ ),
311
+ array(
312
+ 'key' => 'premium-testimonials',
313
+ 'name' => 'premium-addon-testimonials',
314
+ 'title' => __( 'Testimonials', 'premium-addons-for-elementor' ),
315
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
316
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/testimonials-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
317
+ ),
318
+ array(
319
+ 'key' => 'premium-facebook-reviews',
320
+ 'name' => 'premium-facebook-reviews',
321
+ 'title' => __( 'Facebook Reviews', 'premium-addons-for-elementor' ),
322
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
323
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
324
+ 'tutorial' => 'https://www.youtube.com/watch?v=zl-OFo3IFd8',
325
+ 'is_pro' => true,
326
+ 'icon' => 'pa-pro-facebook-reviews',
327
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
328
+ ),
329
+ array(
330
+ 'key' => 'premium-google-reviews',
331
+ 'name' => 'premium-google-reviews',
332
+ 'title' => __( 'Google Reviews', 'premium-addons-for-elementor' ),
333
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
334
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
335
+ 'tutorial' => 'https://www.youtube.com/watch?v=Z0EeGyD34Zk',
336
+ 'is_pro' => true,
337
+ 'icon' => 'pa-pro-google-reviews',
338
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
339
+ ),
340
+ array(
341
+ 'key' => 'premium-yelp-reviews',
342
+ 'name' => 'premium-yelp-reviews',
343
+ 'title' => __( 'Yelp Reviews', 'premium-addons-for-elementor' ),
344
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
345
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/yelp-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
346
+ 'tutorial' => 'https://www.youtube.com/watch?v=5T-MveVFvns',
347
+ 'is_pro' => true,
348
+ 'icon' => 'pa-pro-yelp-reviews',
349
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
350
+ ),
351
+ array(
352
+ 'key' => 'premium-trustpilot-reviews',
353
+ 'name' => 'premium-trustpilot-reviews',
354
+ 'title' => __( 'Trustpilot Reviews', 'premium-addons-for-elementor' ),
355
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-trustpilot-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
356
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-trustpilot-reviews-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
357
+ 'is_pro' => true,
358
+ 'is_new' => true,
359
+ 'icon' => 'pa-pro-trust-reviews',
360
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-trustpilot-reviews-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
361
+ ),
362
+ array(
363
+ 'key' => 'premium-countdown',
364
+ 'name' => 'premium-countdown-timer',
365
+ 'title' => __( 'Countdown', 'premium-addons-for-elementor' ),
366
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/countdown-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
367
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/countdown-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
368
+ ),
369
+ array(
370
+ 'key' => 'premium-banner',
371
+ 'name' => 'premium-addon-banner',
372
+ 'title' => __( 'Banner', 'premium-addons-for-elementor' ),
373
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/banner-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
374
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-banner-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
375
+ ),
376
+ array(
377
+ 'key' => 'premium-button',
378
+ 'name' => 'premium-addon-button',
379
+ 'title' => __( 'Button', 'premium-addons-for-elementor' ),
380
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
381
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/button/', 'settings-page', 'wp-dash', 'dashboard' ),
382
+ 'tutorial' => 'https://www.youtube.com/watch?v=w4NuCUkCIV4',
383
+ ),
384
+ array(
385
+ 'key' => 'premium-image-button',
386
+ 'name' => 'premium-addon-image-button',
387
+ 'title' => __( 'Image Button', 'premium-addons-for-elementor' ),
388
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
389
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-button/', 'settings-page', 'wp-dash', 'dashboard' ),
390
+ ),
391
+ array(
392
+ 'key' => 'premium-flipbox',
393
+ 'name' => 'premium-addon-flip-box',
394
+ 'title' => __( '3D Hover Box', 'premium-addons-for-elementor' ),
395
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ),
396
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/flip-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
397
+ 'is_pro' => true,
398
+ 'icon' => 'pa-pro-flip-box',
399
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'editor-page', 'wp-editor', 'get-pro' ),
400
+ ),
401
+ array(
402
+ 'key' => 'premium-iconbox',
403
+ 'name' => 'premium-addon-icon-box',
404
+ 'title' => __( 'Icon Box', 'premium-addons-for-elementor' ),
405
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
406
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/icon-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
407
+ 'is_pro' => true,
408
+ 'icon' => 'pa-pro-icon-box',
409
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
410
+ ),
411
+ array(
412
+ 'key' => 'premium-ihover',
413
+ 'name' => 'premium-ihover',
414
+ 'title' => __( 'iHover', 'premium-addons-for-elementor' ),
415
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
416
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-ihover-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
417
+ 'is_pro' => true,
418
+ 'icon' => 'pa-pro-ihover',
419
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
420
+ ),
421
+ array(
422
+ 'key' => 'premium-unfold',
423
+ 'name' => 'premium-unfold-addon',
424
+ 'title' => __( 'Unfold', 'premium-addons-for-elementor' ),
425
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
426
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-unfold-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
427
+ 'is_pro' => true,
428
+ 'icon' => 'pa-pro-unfold',
429
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
430
+ ),
431
+ array(
432
+ 'key' => 'premium-icon-list',
433
+ 'name' => 'premium-icon-list',
434
+ 'title' => __( 'Bullet List', 'premium-addons-for-elementor' ),
435
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-bullet-list-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
436
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/bullet-list-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
437
+ 'tutorial' => 'https://www.youtube.com/watch?v=MPeXJiZ14sI',
438
+ ),
439
+ array(
440
+ 'key' => 'premium-facebook-feed',
441
+ 'name' => 'premium-facebook-feed',
442
+ 'title' => __( 'Facebook Feed', 'premium-addons-for-elementor' ),
443
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
444
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/facebook-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
445
+ 'is_pro' => true,
446
+ 'icon' => 'pa-pro-facebook-feed',
447
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'editor-page', 'wp-editor', 'get-pro' ),
448
+ ),
449
+ array(
450
+ 'key' => 'premium-twitter-feed',
451
+ 'name' => 'premium-twitter-feed',
452
+ 'title' => __( 'Twitter Feed', 'premium-addons-for-elementor' ),
453
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
454
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/twitter-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
455
+ 'tutorial' => 'https://www.youtube.com/watch?v=wsurRDuR6pg',
456
+ 'is_pro' => true,
457
+ 'icon' => 'pa-pro-twitter-feed',
458
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
459
+ ),
460
+ array(
461
+ 'key' => 'premium-instagram-feed',
462
+ 'name' => 'premium-addon-instagram-feed',
463
+ 'title' => __( 'Instagram Feed', 'premium-addons-for-elementor' ),
464
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
465
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/instagram-feed/', 'settings-page', 'wp-dash', 'dashboard' ),
466
+ 'is_pro' => true,
467
+ 'icon' => 'pa-pro-instagram-feed',
468
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
469
+ ),
470
+ array(
471
+ 'key' => 'premium-behance',
472
+ 'name' => 'premium-behance-feed',
473
+ 'title' => __( 'Behance Feed', 'premium-addons-for-elementor' ),
474
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
475
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/behance-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
476
+ 'tutorial' => 'https://www.youtube.com/watch?v=AXATK3oIXl0',
477
+ 'is_pro' => true,
478
+ 'icon' => 'pa-pro-behance-feed',
479
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
480
+ ),
481
+ array(
482
+ 'key' => 'premium-progressbar',
483
+ 'name' => 'premium-addon-progressbar',
484
+ 'title' => __( 'Progress Bar', 'premium-addons-for-elementor' ),
485
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
486
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-progress-bar-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
487
+ 'tutorial' => 'https://www.youtube.com/watch?v=Y7xqwhgDQJg',
488
+ ),
489
+ array(
490
+ 'key' => 'premium-pricing-table',
491
+ 'name' => 'premium-addon-pricing-table',
492
+ 'title' => __( 'Pricing Table', 'premium-addons-for-elementor' ),
493
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pricing-table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
494
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/pricing-table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
495
+ ),
496
+ array(
497
+ 'key' => 'premium-charts',
498
+ 'name' => 'premium-chart',
499
+ 'title' => __( 'Charts', 'premium-addons-for-elementor' ),
500
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
501
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/charts-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
502
+ 'tutorial' => 'https://www.youtube.com/watch?v=lZZvslQ2UYU',
503
+ 'is_pro' => true,
504
+ 'icon' => 'pa-pro-charts',
505
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
506
+ ),
507
+ array(
508
+ 'key' => 'premium-tables',
509
+ 'name' => 'premium-tables-addon',
510
+ 'title' => __( 'Table', 'premium-addons-for-elementor' ),
511
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
512
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
513
+ 'is_pro' => true,
514
+ 'icon' => 'pa-pro-table',
515
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
516
+ ),
517
+ array(
518
+ 'key' => 'premium-counter',
519
+ 'name' => 'premium-counter',
520
+ 'title' => __( 'Counter', 'premium-addons-for-elementor' ),
521
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/counter-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
522
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/counter-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
523
+ ),
524
+ array(
525
+ 'key' => 'premium-contactform',
526
+ 'name' => 'premium-contact-form',
527
+ 'title' => __( 'Contact Form 7', 'premium-addons-for-elementor' ),
528
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/contact-form-7-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
529
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/contact-form-7-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
530
+ ),
531
+ array(
532
+ 'key' => 'premium-fb-chat',
533
+ 'name' => 'premium-addon-facebook-chat',
534
+ 'title' => __( 'Facebook Messenger Chat', 'premium-addons-for-elementor' ),
535
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
536
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-messenger/', 'settings-page', 'wp-dash', 'dashboard' ),
537
+ 'is_pro' => true,
538
+ 'icon' => 'pa-pro-messenger-chat',
539
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
540
+ ),
541
+ array(
542
+ 'key' => 'premium-whatsapp-chat',
543
+ 'name' => 'premium-whatsapp-chat',
544
+ 'title' => __( 'WhatsApp Chat', 'premium-addons-for-elementor' ),
545
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
546
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/whatsapp-chat-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
547
+ 'is_pro' => true,
548
+ 'icon' => 'pa-pro-whatsapp',
549
+ 'action_url' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'editor-page', 'wp-editor', 'get-pro' ),
550
+ ),
551
+ array(
552
+ 'key' => 'woo-products',
553
+ 'title' => __( 'Woo Products', 'premium-addons-for-elementor' ),
554
+ 'name' => 'premium-woo-products',
555
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-woocommerce-products/', 'settings-page', 'wp-dash', 'dashboard' ),
556
+ ),
557
+ ),
558
+ ),
559
+ 'cat-2' => array(
560
+ 'icon' => 'content',
561
+ 'title' => __( 'Content Widgets', 'premium-addons-for-elementor' ),
562
+ 'elements' => array(
563
+ array(
564
+ 'key' => 'premium-carousel',
565
+ 'name' => 'premium-carousel-widget',
566
+ 'title' => __( 'Carousel', 'premium-addons-for-elementor' ),
567
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/carousel-widget-for-elementor-page-builder', 'settings-page', 'wp-dash', 'dashboard' ),
568
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/carousel/', 'settings-page', 'wp-dash', 'dashboard' ),
569
+ 'tutorial' => 'https://www.youtube.com/watch?v=ZMgprLKvq24',
570
+ ),
571
+ array(
572
+ 'key' => 'premium-blog',
573
+ 'name' => 'premium-addon-blog',
574
+ 'title' => __( 'Blog', 'premium-addons-for-elementor' ),
575
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/blog-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
576
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/blog/', 'settings-page', 'wp-dash', 'dashboard' ),
577
+ ),
578
+ array(
579
+ 'key' => 'premium-nav-menu',
580
+ 'name' => 'premium-nav-menu',
581
+ 'title' => __( 'Nav/Mega Menu', 'premium-addons-for-elementor' ),
582
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-mega-menu-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
583
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-mega-menu-widget-tutorial', 'settings-page', 'wp-dash', 'dashboard' ),
584
+ ),
585
+ array(
586
+ 'key' => 'premium-maps',
587
+ 'name' => 'premium-addon-maps',
588
+ 'title' => __( 'Google Maps', 'premium-addons-for-elementor' ),
589
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-maps-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
590
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-maps/', 'settings-page', 'wp-dash', 'dashboard' ),
591
+ 'tutorial' => 'https://www.youtube.com/watch?v=z4taEeCY77Q',
592
+ ),
593
+ array(
594
+ 'key' => 'premium-person',
595
+ 'name' => 'premium-addon-person',
596
+ 'title' => __( 'Team Members', 'premium-addons-for-elementor' ),
597
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/persons-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
598
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/persons-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
599
+ ),
600
+ array(
601
+ 'key' => 'premium-tabs',
602
+ 'name' => 'premium-addon-tabs',
603
+ 'title' => __( 'Tabs', 'premium-addons-for-elementor' ),
604
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-tabs-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
605
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/tabs-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
606
+ 'is_pro' => true,
607
+ ),
608
+ array(
609
+ 'key' => 'premium-content-toggle',
610
+ 'name' => 'premium-addon-content-toggle',
611
+ 'title' => __( 'Content Switcher', 'premium-addons-for-elementor' ),
612
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/content-switcher-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
613
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-content-switcher/', 'settings-page', 'wp-dash', 'dashboard' ),
614
+ 'is_pro' => true,
615
+ ),
616
+ array(
617
+ 'key' => 'premium-fancytext',
618
+ 'name' => 'premium-addon-fancy-text',
619
+ 'title' => __( 'Fancy Text', 'premium-addons-for-elementor' ),
620
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/fancy-text-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
621
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/fancy-text-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
622
+ ),
623
+ array(
624
+ 'key' => 'premium-title',
625
+ 'name' => 'premium-addon-title',
626
+ 'title' => __( 'Heading', 'premium-addons-for-elementor' ),
627
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/heading-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
628
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
629
+ ),
630
+ array(
631
+ 'key' => 'premium-dual-header',
632
+ 'name' => 'premium-addon-dual-header',
633
+ 'title' => __( 'Dual Heading', 'premium-addons-for-elementor' ),
634
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/dual-header-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
635
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/dual-heading-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
636
+ ),
637
+ array(
638
+ 'key' => 'premium-divider',
639
+ 'name' => 'premium-divider',
640
+ 'title' => __( 'Divider', 'premium-addons-for-elementor' ),
641
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/divider-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
642
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/divider-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
643
+ 'is_pro' => true,
644
+ ),
645
+ ),
646
+ ),
647
+ 'cat-3' => array(
648
+ 'icon' => 'images',
649
+ 'title' => __( 'Image & Video Widgets', 'premium-addons-for-elementor' ),
650
+ 'elements' => array(
651
+ array(
652
+ 'key' => 'premium-grid',
653
+ 'name' => 'premium-img-gallery',
654
+ 'title' => __( 'Media Grid', 'premium-addons-for-elementor' ),
655
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/grid-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
656
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/grid-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
657
+ ),
658
+ array(
659
+ 'key' => 'premium-image-scroll',
660
+ 'name' => 'premium-image-scroll',
661
+ 'title' => __( 'Image Scroll', 'premium-addons-for-elementor' ),
662
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
663
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
664
+ ),
665
+ array(
666
+ 'key' => 'premium-image-separator',
667
+ 'name' => 'premium-addon-image-separator',
668
+ 'title' => __( 'Image Separator', 'premium-addons-for-elementor' ),
669
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-separator-widget-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
670
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-separator-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
671
+ ),
672
+ array(
673
+ 'key' => 'premium-image-comparison',
674
+ 'name' => 'premium-addon-image-comparison',
675
+ 'title' => __( 'Image Comparison', 'premium-addons-for-elementor' ),
676
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-comparison-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
677
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-image-comparison-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
678
+ 'is_pro' => true,
679
+ ),
680
+ array(
681
+ 'key' => 'premium-image-hotspots',
682
+ 'name' => 'premium-addon-image-hotspots',
683
+ 'title' => __( 'Image Hotspots', 'premium-addons-for-elementor' ),
684
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-hotspots-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
685
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-hotspots-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
686
+ 'is_pro' => true,
687
+ ),
688
+ array(
689
+ 'key' => 'premium-img-layers',
690
+ 'name' => 'premium-img-layers-addon',
691
+ 'title' => __( 'Image Layers', 'premium-addons-for-elementor' ),
692
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-layers-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
693
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-layers/', 'settings-page', 'wp-dash', 'dashboard' ),
694
+ 'tutorial' => 'https://www.youtube.com/watch?v=D3INxWw_jKI',
695
+ 'is_pro' => true,
696
+ ),
697
+ array(
698
+ 'key' => 'premium-image-accordion',
699
+ 'name' => 'premium-image-accordion',
700
+ 'title' => __( 'Image Accordion', 'premium-addons-for-elementor' ),
701
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-image-accordion-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
702
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/image-accordion-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
703
+ 'is_pro' => true,
704
+ ),
705
+ array(
706
+ 'key' => 'premium-videobox',
707
+ 'name' => 'premium-addon-video-box',
708
+ 'title' => __( 'Video Box', 'premium-addons-for-elementor' ),
709
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/video-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
710
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/video-box/', 'settings-page', 'wp-dash', 'dashboard' ),
711
+ ),
712
+ ),
713
+ ),
714
+ 'cat-4' => array(
715
+ 'icon' => 'section',
716
+ 'title' => __( 'Section Addons & Widgets', 'premium-addons-for-elementor' ),
717
+ 'elements' => array(
718
+ array(
719
+ 'key' => 'premium-hscroll',
720
+ 'name' => 'premium-hscroll',
721
+ 'title' => __( 'Horizontal Scroll', 'premium-addons-for-elementor' ),
722
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-horizontal-scroll-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
723
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/horizontal-scroll/', 'settings-page', 'wp-dash', 'dashboard' ),
724
+ 'tutorial' => 'https://www.youtube.com/watch?v=4HqT_3s-ZXg',
725
+ 'is_pro' => true,
726
+ ),
727
+ array(
728
+ 'key' => 'premium-vscroll',
729
+ 'name' => 'premium-vscroll',
730
+ 'title' => __( 'Vertical Scroll', 'premium-addons-for-elementor' ),
731
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/vertical-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
732
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/vertical-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
733
+ 'tutorial' => 'https://www.youtube.com/watch?v=MuLaIn1QXfQ',
734
+ ),
735
+ array(
736
+ 'key' => 'premium-color-transition',
737
+ 'name' => 'premium-color-transition',
738
+ 'title' => __( 'Background Transition', 'premium-addons-for-elementor' ),
739
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-background-transition-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
740
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/background-transition-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
741
+ 'is_pro' => true,
742
+ ),
743
+ array(
744
+ 'key' => 'premium-multi-scroll',
745
+ 'name' => 'premium-multi-scroll',
746
+ 'title' => __( 'Multi Scroll', 'premium-addons-for-elementor' ),
747
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/multi-scroll-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
748
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/multi-scroll-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
749
+ 'tutorial' => 'https://www.youtube.com/watch?v=IzYnD6oDYXw',
750
+ 'is_pro' => true,
751
+ ),
752
+ array(
753
+ 'key' => 'premium-lottie',
754
+ 'title' => __( 'Lottie Animations', 'premium-addons-for-elementor' ),
755
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-lottie-animations-section-addon/', 'settings-page', 'wp-dash', 'dashboard' ),
756
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/lottie-background/', 'settings-page', 'wp-dash', 'dashboard' ),
757
+ 'tutorial' => 'https://www.youtube.com/watch?v=KVrenWNEdkY',
758
+ 'is_pro' => true,
759
+ 'is_global' => true,
760
+ ),
761
+ array(
762
+ 'key' => 'premium-parallax',
763
+ 'title' => __( 'Parallax', 'premium-addons-for-elementor' ),
764
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/parallax-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
765
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/parallax-section-addon-tutorial-2/', 'settings-page', 'wp-dash', 'dashboard' ),
766
+ 'tutorial' => 'https://www.youtube.com/watch?v=hkMNjxLoZ2w',
767
+ 'is_pro' => true,
768
+ 'is_global' => true,
769
+ ),
770
+ array(
771
+ 'key' => 'premium-particles',
772
+ 'title' => __( 'Particles', 'premium-addons-for-elementor' ),
773
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/particles-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
774
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/particles/', 'settings-page', 'wp-dash', 'dashboard' ),
775
+ 'tutorial' => 'https://www.youtube.com/watch?v=bPmWKv4VWrI',
776
+ 'is_pro' => true,
777
+ 'is_global' => true,
778
+ ),
779
+ array(
780
+ 'key' => 'premium-gradient',
781
+ 'title' => __( 'Animated Gradient', 'premium-addons-for-elementor' ),
782
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/animated-section-gradients-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
783
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/animated-gradient-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
784
+ 'tutorial' => 'https://www.youtube.com/watch?v=IL4USvwR6K4',
785
+ 'is_pro' => true,
786
+ 'is_global' => true,
787
+ ),
788
+ array(
789
+ 'key' => 'premium-kenburns',
790
+ 'title' => __( 'Animated Ken Burns', 'premium-addons-for-elementor' ),
791
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ken-burns-section-addon-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
792
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/ken-burns-section-addon-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
793
+ 'tutorial' => 'https://www.youtube.com/watch?v=DUNFjWphZfs',
794
+ 'is_pro' => true,
795
+ 'is_global' => true,
796
+ ),
797
+ array(
798
+ 'key' => 'premium-blob',
799
+ 'title' => __( 'Blob Generator', 'premium-addons-for-elementor' ),
800
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-animated-blob-generator/', 'settings-page', 'wp-dash', 'dashboard' ),
801
+ 'is_pro' => true,
802
+ 'is_global' => true,
803
+ ),
804
+ ),
805
+ ),
806
+ 'cat-5' => array(
807
+ 'icon' => 'off-grid',
808
+ 'title' => __( 'Off-Grid Widgets', 'premium-addons-for-elementor' ),
809
+ 'elements' => array(
810
+ array(
811
+ 'key' => 'premium-modalbox',
812
+ 'name' => 'premium-addon-modal-box',
813
+ 'title' => __( 'Modal Box', 'premium-addons-for-elementor' ),
814
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/modal-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
815
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/modal-box/', 'settings-page', 'wp-dash', 'dashboard' ),
816
+ 'tutorial' => 'https://www.youtube.com/watch?v=3lLxSyf2nyk',
817
+ ),
818
+ array(
819
+ 'key' => 'premium-notbar',
820
+ 'name' => 'premium-notbar',
821
+ 'title' => __( 'Alert Box', 'premium-addons-for-elementor' ),
822
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/alert-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
823
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/alert-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
824
+ 'is_pro' => true,
825
+ ),
826
+ array(
827
+ 'key' => 'premium-magic-section',
828
+ 'name' => 'premium-addon-magic-section',
829
+ 'title' => __( 'Magic Section', 'premium-addons-for-elementor' ),
830
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/magic-section-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
831
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/magic-section-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
832
+ 'is_pro' => true,
833
+ ),
834
+ array(
835
+ 'key' => 'premium-prev-img',
836
+ 'name' => 'premium-addon-preview-image',
837
+ 'title' => __( 'Preview Window', 'premium-addons-for-elementor' ),
838
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/preview-window-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
839
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/preview-window-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
840
+ 'tutorial' => 'https://www.youtube.com/watch?v=EmptjFjrc4E',
841
+ 'is_pro' => true,
842
+ ),
843
+ ),
844
+ ),
845
+ 'cat-6' => array(
846
+ 'icon' => 'social',
847
+ 'title' => __( 'Reviews & Testimonials Widgets', 'premium-addons-for-elementor' ),
848
+ 'elements' => array(
849
+ array(
850
+ 'key' => 'premium-testimonials',
851
+ 'name' => 'premium-addon-testimonials',
852
+ 'title' => __( 'Testimonials', 'premium-addons-for-elementor' ),
853
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/testimonials-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
854
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/testimonials-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
855
+ ),
856
+ array(
857
+ 'key' => 'premium-facebook-reviews',
858
+ 'name' => 'premium-facebook-reviews',
859
+ 'title' => __( 'Facebook Reviews', 'premium-addons-for-elementor' ),
860
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-reviews-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
861
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
862
+ 'tutorial' => 'https://www.youtube.com/watch?v=zl-OFo3IFd8',
863
+ 'is_pro' => true,
864
+ ),
865
+ array(
866
+ 'key' => 'premium-google-reviews',
867
+ 'name' => 'premium-google-reviews',
868
+ 'title' => __( 'Google Reviews', 'premium-addons-for-elementor' ),
869
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/google-reviews-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
870
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/google-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
871
+ 'tutorial' => 'https://www.youtube.com/watch?v=Z0EeGyD34Zk',
872
+ 'is_pro' => true,
873
+ ),
874
+ array(
875
+ 'key' => 'premium-yelp-reviews',
876
+ 'name' => 'premium-yelp-reviews',
877
+ 'title' => __( 'Yelp Reviews', 'premium-addons-for-elementor' ),
878
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-yelp-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
879
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/yelp-reviews/', 'settings-page', 'wp-dash', 'dashboard' ),
880
+ 'tutorial' => 'https://www.youtube.com/watch?v=5T-MveVFvns',
881
+ 'is_pro' => true,
882
+ ),
883
+ array(
884
+ 'key' => 'premium-trustpilot-reviews',
885
+ 'name' => 'premium-trustpilot-reviews',
886
+ 'title' => __( 'Trustpilot Reviews', 'premium-addons-for-elementor' ),
887
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-trustpilot-reviews-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
888
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/elementor-trustpilot-reviews-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
889
+ 'is_pro' => true,
890
+ 'is_new' => true,
891
+ ),
892
+ ),
893
+ ),
894
+ 'cat-7' => array(
895
+ 'icon' => 'blurbs',
896
+ 'title' => __( 'Blurbs & CTA Widgets', 'premium-addons-for-elementor' ),
897
+ 'elements' => array(
898
+ array(
899
+ 'key' => 'premium-countdown',
900
+ 'name' => 'premium-countdown-timer',
901
+ 'title' => __( 'Countdown', 'premium-addons-for-elementor' ),
902
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/countdown-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
903
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/countdown-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
904
+ ),
905
+ array(
906
+ 'key' => 'premium-banner',
907
+ 'name' => 'premium-addon-banner',
908
+ 'title' => __( 'Banner', 'premium-addons-for-elementor' ),
909
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/banner-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
910
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-banner-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
911
+ ),
912
+ array(
913
+ 'key' => 'premium-button',
914
+ 'name' => 'premium-addon-button',
915
+ 'title' => __( 'Button', 'premium-addons-for-elementor' ),
916
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
917
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/button/', 'settings-page', 'wp-dash', 'dashboard' ),
918
+ 'tutorial' => 'https://www.youtube.com/watch?v=w4NuCUkCIV4',
919
+ ),
920
+ array(
921
+ 'key' => 'premium-image-button',
922
+ 'title' => __( 'Image Button', 'premium-addons-for-elementor' ),
923
+ 'name' => 'premium-addon-image-button',
924
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/image-button-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
925
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/image-button/', 'settings-page', 'wp-dash', 'dashboard' ),
926
+ ),
927
+ array(
928
+ 'key' => 'premium-flipbox',
929
+ 'name' => 'premium-addon-flip-box',
930
+ 'title' => __( '3D Hover Box', 'premium-addons-for-elementor' ),
931
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/3d-hover-box-flip-box-widget-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ),
932
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/flip-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
933
+ 'is_pro' => true,
934
+ ),
935
+ array(
936
+ 'key' => 'premium-iconbox',
937
+ 'name' => 'premium-addon-icon-box',
938
+ 'title' => __( 'Icon Box', 'premium-addons-for-elementor' ),
939
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/icon-box-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
940
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/icon-box-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
941
+ 'is_pro' => true,
942
+ ),
943
+ array(
944
+ 'key' => 'premium-ihover',
945
+ 'name' => 'premium-ihover',
946
+ 'title' => __( 'iHover', 'premium-addons-for-elementor' ),
947
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/ihover-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
948
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-ihover-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
949
+ 'is_pro' => true,
950
+ ),
951
+ array(
952
+ 'key' => 'premium-unfold',
953
+ 'name' => 'premium-unfold-addon',
954
+ 'title' => __( 'Unfold', 'premium-addons-for-elementor' ),
955
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/unfold-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
956
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-unfold-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
957
+ 'is_pro' => true,
958
+ ),
959
+ array(
960
+ 'key' => 'premium-icon-list',
961
+ 'name' => 'premium-icon-list',
962
+ 'title' => __( 'Bullet List', 'premium-addons-for-elementor' ),
963
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-bullet-list-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
964
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/bullet-list-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
965
+ 'tutorial' => 'https://www.youtube.com/watch?v=MPeXJiZ14sI',
966
+ ),
967
+ ),
968
+ ),
969
+ 'cat-8' => array(
970
+ 'icon' => 'feed',
971
+ 'title' => __( 'Social Feed Widgets', 'premium-addons-for-elementor' ),
972
+ 'elements' => array(
973
+ array(
974
+ 'key' => 'premium-facebook-feed',
975
+ 'name' => 'premium-facebook-feed',
976
+ 'title' => __( 'Facebook Feed', 'premium-addons-for-elementor' ),
977
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-facebook-feed-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
978
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/facebook-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
979
+ 'is_pro' => true,
980
+ ),
981
+ array(
982
+ 'key' => 'premium-twitter-feed',
983
+ 'name' => 'premium-twitter-feed',
984
+ 'title' => __( 'Twitter Feed', 'premium-addons-for-elementor' ),
985
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/twitter-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
986
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/twitter-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
987
+ 'tutorial' => 'https://www.youtube.com/watch?v=wsurRDuR6pg',
988
+ 'is_pro' => true,
989
+ ),
990
+ array(
991
+ 'key' => 'premium-instagram-feed',
992
+ 'name' => 'premium-addon-instagram-feed',
993
+ 'title' => __( 'Instagram Feed', 'premium-addons-for-elementor' ),
994
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/instagram-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
995
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/instagram-feed/', 'settings-page', 'wp-dash', 'dashboard' ),
996
+ 'is_pro' => true,
997
+ ),
998
+ array(
999
+ 'key' => 'premium-behance',
1000
+ 'name' => 'premium-behance-feed',
1001
+ 'title' => __( 'Behance Feed', 'premium-addons-for-elementor' ),
1002
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/behance-feed-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1003
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/behance-feed-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1004
+ 'tutorial' => 'https://www.youtube.com/watch?v=AXATK3oIXl0',
1005
+ 'is_pro' => true,
1006
+ ),
1007
+ ),
1008
+ ),
1009
+ 'cat-9' => array(
1010
+ 'icon' => 'data',
1011
+ 'title' => __( 'Tables, Charts & Anything Data Widgets', 'premium-addons-for-elementor' ),
1012
+ 'elements' => array(
1013
+ array(
1014
+ 'key' => 'premium-progressbar',
1015
+ 'name' => 'premium-addon-progressbar',
1016
+ 'title' => __( 'Progress Bar', 'premium-addons-for-elementor' ),
1017
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/progress-bar-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1018
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/premium-progress-bar-widget/', 'settings-page', 'wp-dash', 'dashboard' ),
1019
+ 'tutorial' => 'https://www.youtube.com/watch?v=Y7xqwhgDQJg',
1020
+ ),
1021
+ array(
1022
+ 'key' => 'premium-pricing-table',
1023
+ 'name' => 'premium-addon-pricing-table',
1024
+ 'title' => __( 'Pricing Table', 'premium-addons-for-elementor' ),
1025
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pricing-table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1026
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/pricing-table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1027
+ ),
1028
+ array(
1029
+ 'key' => 'premium-charts',
1030
+ 'name' => 'premium-chart',
1031
+ 'title' => __( 'Charts', 'premium-addons-for-elementor' ),
1032
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/charts-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1033
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/charts-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1034
+ 'tutorial' => 'https://www.youtube.com/watch?v=lZZvslQ2UYU',
1035
+ 'is_pro' => true,
1036
+ ),
1037
+ array(
1038
+ 'key' => 'premium-tables',
1039
+ 'name' => 'premium-tables-addon',
1040
+ 'title' => __( 'Table', 'premium-addons-for-elementor' ),
1041
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/table-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1042
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/table-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1043
+ 'is_pro' => true,
1044
+ ),
1045
+ array(
1046
+ 'key' => 'premium-counter',
1047
+ 'name' => 'premium-counter',
1048
+ 'title' => __( 'Counter', 'premium-addons-for-elementor' ),
1049
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/counter-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1050
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/counter-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1051
+ ),
1052
+ ),
1053
+ ),
1054
+ 'cat-10' => array(
1055
+ 'icon' => 'contact',
1056
+ 'title' => __( 'Contact Widgets', 'premium-addons-for-elementor' ),
1057
+ 'elements' => array(
1058
+ array(
1059
+ 'key' => 'premium-contactform',
1060
+ 'name' => 'premium-contact-form',
1061
+ 'title' => __( 'Contact Form 7', 'premium-addons-for-elementor' ),
1062
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/contact-form-7-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1063
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/contact-form-7-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1064
+ ),
1065
+ array(
1066
+ 'key' => 'premium-fb-chat',
1067
+ 'name' => 'premium-addon-facebook-chat',
1068
+ 'title' => __( 'Facebook Messenger Chat', 'premium-addons-for-elementor' ),
1069
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/facebook-messenger-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1070
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs-category/using-widgets/facebook-messenger/', 'settings-page', 'wp-dash', 'dashboard' ),
1071
+ 'is_pro' => true,
1072
+ ),
1073
+ array(
1074
+ 'key' => 'premium-whatsapp-chat',
1075
+ 'name' => 'premium-whatsapp-chat',
1076
+ 'title' => __( 'WhatsApp Chat', 'premium-addons-for-elementor' ),
1077
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/whatsapp-widget-for-elementor-page-builder/', 'settings-page', 'wp-dash', 'dashboard' ),
1078
+ 'doc' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/docs/whatsapp-chat-widget-tutorial/', 'settings-page', 'wp-dash', 'dashboard' ),
1079
+ 'is_pro' => true,
1080
+ ),
1081
+ ),
1082
+ ),
1083
+ 'cat-11' => array(
1084
+ 'icon' => 'extensions',
1085
+ 'elements' => array(
1086
+ array(
1087
+ 'key' => 'premium-templates',
1088
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-templates-for-elementor/', 'settings-page', 'wp-dash', 'dashboard' ),
1089
+ ),
1090
+ array(
1091
+ 'key' => 'premium-equal-height',
1092
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-addons-global-features-for-elementor/#equal-height-feature', 'settings-page', 'wp-dash', 'dashboard' ),
1093
+ ),
1094
+ array(
1095
+ 'key' => 'pa-display-conditions',
1096
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-display-conditions/', 'settings-page', 'wp-dash', 'dashboard' ),
1097
+ ),
1098
+ array(
1099
+ 'key' => 'premium-global-cursor',
1100
+ 'is_pro' => true,
1101
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-custom-mouse-cursor-global-feature/', 'settings-page', 'wp-dash', 'dashboard' ),
1102
+ ),
1103
+ array(
1104
+ 'key' => 'premium-global-badge',
1105
+ 'is_pro' => true,
1106
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-badge-global-addon/', 'settings-page', 'wp-dash', 'dashboard' ),
1107
+ ),
1108
+ array(
1109
+ 'key' => 'premium-floating-effects',
1110
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/elementor-floating-effects-animation/', 'settings-page', 'wp-dash', 'dashboard' ),
1111
+ ),
1112
+ array(
1113
+ 'key' => 'premium-cross-domain',
1114
+ 'demo' => Helper_Functions::get_campaign_link( 'https://premiumaddons.com/premium-addons-global-features-for-elementor/#common-features', 'settings-page', 'wp-dash', 'dashboard' ),
1115
+ ),
1116
+ array(
1117
+ 'key' => 'premium-duplicator',
1118
+ ),
1119
+ array(
1120
+ 'key' => 'premium-assets-generator',
1121
+ ),
1122
+ ),
1123
+ ),
1124
+ );
1125
+
1126
+ return $elements;
admin/includes/templates/features.php CHANGED
@@ -1,185 +1,185 @@
1
- <?php
2
-
3
- if ( ! defined( 'ABSPATH' ) ) {
4
- exit;
5
- }
6
-
7
- use PremiumAddons\Includes\Helper_Functions;
8
-
9
- $prefix = Helper_Functions::get_prefix();
10
-
11
- // Get elements settings
12
- $enabled_elements = self::get_enabled_elements();
13
-
14
- $elements = self::get_elements_list();
15
-
16
- $features = $elements['cat-11']['elements'];
17
-
18
- ?>
19
-
20
- <div class="pa-section-content">
21
- <div class="row">
22
- <div class="col-full">
23
- <form action="" method="POST" id="pa-features" name="pa-features" class="pa-settings-form">
24
- <div id="pa-features-settings" class="pa-settings-tab">
25
-
26
- <div class="pa-section-outer-wrap">
27
- <div class="pa-section-info-wrap">
28
- <div class="pa-section-info">
29
- <h4><?php echo sprintf( '%1$s %2$s', $prefix, __( 'Templates', 'premium-addons-for-elementor' ) ); ?></h4>
30
- <p><?php echo __( 'Build Professional Website in Minutes Using Our Pre-Made Premium Elementor Templates.', 'premium-addons-for-elementor' ); ?></p>
31
- </div>
32
-
33
- <div class="pa-section-info-cta">
34
- <label class="switch">
35
- <input type="checkbox" id="premium-templates" name="premium-templates" <?php echo checked( 1, $enabled_elements['premium-templates'], false ); ?>>
36
- <span class="slider round"></span>
37
- </label>
38
- </p>
39
- </div>
40
- </div>
41
- <a href="<?php echo esc_url( $features[0]['demo'] ); ?>" target="_blank"></a>
42
- </div>
43
-
44
- <div class="pa-section-outer-wrap">
45
- <div class="pa-section-info-wrap">
46
- <div class="pa-section-info">
47
- <h4><?php echo __( 'Equal Height', 'premium-addons-for-elementor' ); ?></h4>
48
- <p><?php echo __( 'Make your widgets the same height with just ONE click.', 'premium-addons-for-elementor' ); ?></p>
49
- </div>
50
-
51
- <div class="pa-section-info-cta">
52
- <label class="switch">
53
- <input type="checkbox" id="premium-equal-height" name="premium-equal-height" <?php echo checked( 1, $enabled_elements['premium-equal-height'], false ); ?>>
54
- <span class="slider round"></span>
55
- </label>
56
- </p>
57
- </div>
58
- </div>
59
- <a href="<?php echo esc_url( $features[1]['demo'] ); ?>" target="_blank"></a>
60
- </div>
61
-
62
- <div class="pa-section-outer-wrap">
63
- <div class="pa-section-info-wrap">
64
- <div class="pa-section-info">
65
- <h4><?php echo __( 'Custom Mouse Cursor', 'premium-addons-for-elementor' ); ?></h4>
66
- <p><?php echo __( 'Change the default mouse cursor with icon, image, or Lottie animation for any Elementor section, column, or widget.', 'premium-addons-for-elementor' ); ?></p>
67
- </div>
68
- <?php
69
-
70
- $status = ( isset( $features[3]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'disabled' : checked( 1, $enabled_elements['premium-global-cursor'], false );
71
- $class = ( isset( $features[3]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'pro-' : '';
72
- $switcher_class = $class . 'slider round';
73
-
74
- ?>
75
- <div class="pa-section-info-cta">
76
- <label class="switch">
77
- <input type="checkbox" id="premium-global-cursor" name="premium-global-cursor" <?php echo $status; ?>>
78
- <span class="<?php echo esc_attr( $switcher_class ); ?>"></span>
79
- </label>
80
- </p>
81
- </div>
82
- </div>
83
- <a href="<?php echo esc_url( $features[3]['demo'] ); ?>" target="_blank"></a>
84
- </div>
85
-
86
- <div class="pa-section-outer-wrap">
87
- <div class="pa-section-info-wrap">
88
- <div class="pa-section-info">
89
- <h4><?php echo __( 'Global Badge', 'premium-addons-for-elementor' ); ?></h4>
90
- <p><?php echo __( 'Add icon, image, Lottie, or SVG blob shape badge to any Elementor section, column, or widget.', 'premium-addons-for-elementor' ); ?></p>
91
- </div>
92
- <?php
93
-
94
- $status = ( isset( $features[4]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'disabled' : checked( 1, $enabled_elements['premium-global-badge'], false );
95
- $class = ( isset( $features[4]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'pro-' : '';
96
- $switcher_class = $class . 'slider round';
97
-
98
- ?>
99
- <div class="pa-section-info-cta">
100
- <label class="switch">
101
- <input type="checkbox" id="premium-global-badge" name="premium-global-badge" <?php echo $status; ?>>
102
- <span class="<?php echo esc_attr( $switcher_class ); ?>"></span>
103
- </label>
104
- </p>
105
- </div>
106
- </div>
107
- <a href="<?php echo esc_url( $features[4]['demo'] ); ?>" target="_blank"></a>
108
- </div>
109
-
110
- <div class="pa-section-outer-wrap">
111
- <div class="pa-section-info-wrap">
112
- <div class="pa-section-info">
113
- <h4><?php echo __( 'Display Conditions', 'premium-addons-for-elementor' ); ?></h4>
114
- <p><?php echo __( 'Show/hide content dynamically based on location, browser, operating system, user role, device type, Woocommerce, ACF, etc.', 'premium-addons-for-elementor' ); ?></p>
115
- </div>
116
-
117
- <div class="pa-section-info-cta">
118
- <label class="switch">
119
- <input type="checkbox" id="pa-display-conditions" name="pa-display-conditions" <?php echo checked( 1, $enabled_elements['pa-display-conditions'], false ); ?>>
120
- <span class="slider round"></span>
121
- </label>
122
- </p>
123
- </div>
124
- </div>
125
- <a href="<?php echo esc_url( $features[2]['demo'] ); ?>" target="_blank"></a>
126
- </div>
127
-
128
- <div class="pa-section-outer-wrap">
129
- <div class="pa-section-info-wrap">
130
- <div class="pa-section-info">
131
- <h4><?php echo __( 'Floating Effects', 'premium-addons-for-elementor' ); ?></h4>
132
- <p><?php echo __( 'Apply advanced floating effects on any Elementor element or a custom CSS selector.', 'premium-addons-for-elementor' ); ?></p>
133
- </div>
134
-
135
- <div class="pa-section-info-cta">
136
- <label class="switch">
137
- <input type="checkbox" id="premium-floating-effects" name="premium-floating-effects" <?php echo checked( 1, $enabled_elements['premium-floating-effects'], false ); ?>>
138
- <span class="slider round"></span>
139
- </label>
140
- </p>
141
- </div>
142
- </div>
143
- <a href="<?php echo esc_url( $features[5]['demo'] ); ?>" target="_blank"></a>
144
- </div>
145
-
146
- <div class="pa-section-outer-wrap">
147
- <div class="pa-section-info-wrap">
148
- <div class="pa-section-info">
149
- <h4><?php echo __( 'Cross-Domain Copy N’ Paste', 'premium-addons-for-elementor' ); ?></h4>
150
- <p><?php echo __( 'Copy any Elementor content from site to another in just ONE click.', 'premium-addons-for-elementor' ); ?></p>
151
- </div>
152
-
153
- <div class="pa-section-info-cta">
154
- <label class="switch">
155
- <input type="checkbox" id="premium-cross-domain" name="premium-cross-domain" <?php echo checked( 1, $enabled_elements['premium-cross-domain'], false ); ?>>
156
- <span class="slider round"></span>
157
- </label>
158
- </p>
159
- </div>
160
- </div>
161
- <a href="<?php echo esc_url( $features[6]['demo'] ); ?>" target="_blank"></a>
162
- </div>
163
-
164
- <div class="pa-section-outer-wrap">
165
- <div class="pa-section-info-wrap">
166
- <div class="pa-section-info">
167
- <h4><?php echo __( 'Duplicator', 'premium-addons-for-elementor' ); ?></h4>
168
- <p><?php echo __( 'Duplicate any post, page or template on your website.', 'premium-addons-for-elementor' ); ?></p>
169
- </div>
170
-
171
- <div class="pa-section-info-cta">
172
- <label class="switch">
173
- <input type="checkbox" id="premium-duplicator" name="premium-duplicator" <?php echo checked( 1, $enabled_elements['premium-duplicator'], false ); ?>>
174
- <span class="slider round"></span>
175
- </label>
176
- </p>
177
- </div>
178
- </div>
179
- </div>
180
-
181
- </div>
182
- </form> <!-- End Form -->
183
- </div>
184
- </div>
185
- </div> <!-- End Section Content -->
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit;
5
+ }
6
+
7
+ use PremiumAddons\Includes\Helper_Functions;
8
+
9
+ $prefix = Helper_Functions::get_prefix();
10
+
11
+ // Get elements settings
12
+ $enabled_elements = self::get_enabled_elements();
13
+
14
+ $elements = self::get_elements_list();
15
+
16
+ $features = $elements['cat-11']['elements'];
17
+
18
+ ?>
19
+
20
+ <div class="pa-section-content">
21
+ <div class="row">
22
+ <div class="col-full">
23
+ <form action="" method="POST" id="pa-features" name="pa-features" class="pa-settings-form">
24
+ <div id="pa-features-settings" class="pa-settings-tab">
25
+
26
+ <div class="pa-section-outer-wrap">
27
+ <div class="pa-section-info-wrap">
28
+ <div class="pa-section-info">
29
+ <h4><?php echo sprintf( '%1$s %2$s', $prefix, __( 'Templates', 'premium-addons-for-elementor' ) ); ?></h4>
30
+ <p><?php echo __( 'Build Professional Website in Minutes Using Our Pre-Made Premium Elementor Templates.', 'premium-addons-for-elementor' ); ?></p>
31
+ </div>
32
+
33
+ <div class="pa-section-info-cta">
34
+ <label class="switch">
35
+ <input type="checkbox" id="premium-templates" name="premium-templates" <?php echo checked( 1, $enabled_elements['premium-templates'], false ); ?>>
36
+ <span class="slider round"></span>
37
+ </label>
38
+ </p>
39
+ </div>
40
+ </div>
41
+ <a href="<?php echo esc_url( $features[0]['demo'] ); ?>" target="_blank"></a>
42
+ </div>
43
+
44
+ <div class="pa-section-outer-wrap">
45
+ <div class="pa-section-info-wrap">
46
+ <div class="pa-section-info">
47
+ <h4><?php echo __( 'Equal Height', 'premium-addons-for-elementor' ); ?></h4>
48
+ <p><?php echo __( 'Make your widgets the same height with just ONE click.', 'premium-addons-for-elementor' ); ?></p>
49
+ </div>
50
+
51
+ <div class="pa-section-info-cta">
52
+ <label class="switch">
53
+ <input type="checkbox" id="premium-equal-height" name="premium-equal-height" <?php echo checked( 1, $enabled_elements['premium-equal-height'], false ); ?>>
54
+ <span class="slider round"></span>
55
+ </label>
56
+ </p>
57
+ </div>
58
+ </div>
59
+ <a href="<?php echo esc_url( $features[1]['demo'] ); ?>" target="_blank"></a>
60
+ </div>
61
+
62
+ <div class="pa-section-outer-wrap">
63
+ <div class="pa-section-info-wrap">
64
+ <div class="pa-section-info">
65
+ <h4><?php echo __( 'Custom Mouse Cursor', 'premium-addons-for-elementor' ); ?></h4>
66
+ <p><?php echo __( 'Change the default mouse cursor with icon, image, or Lottie animation for any Elementor section, column, or widget.', 'premium-addons-for-elementor' ); ?></p>
67
+ </div>
68
+ <?php
69
+
70
+ $status = ( isset( $features[3]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'disabled' : checked( 1, $enabled_elements['premium-global-cursor'], false );
71
+ $class = ( isset( $features[3]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'pro-' : '';
72
+ $switcher_class = $class . 'slider round';
73
+
74
+ ?>
75
+ <div class="pa-section-info-cta">
76
+ <label class="switch">
77
+ <input type="checkbox" id="premium-global-cursor" name="premium-global-cursor" <?php echo $status; ?>>
78
+ <span class="<?php echo esc_attr( $switcher_class ); ?>"></span>
79
+ </label>
80
+ </p>
81
+ </div>
82
+ </div>
83
+ <a href="<?php echo esc_url( $features[3]['demo'] ); ?>" target="_blank"></a>
84
+ </div>
85
+
86
+ <div class="pa-section-outer-wrap">
87
+ <div class="pa-section-info-wrap">
88
+ <div class="pa-section-info">
89
+ <h4><?php echo __( 'Global Badge', 'premium-addons-for-elementor' ); ?></h4>
90
+ <p><?php echo __( 'Add icon, image, Lottie, or SVG blob shape badge to any Elementor section, column, or widget.', 'premium-addons-for-elementor' ); ?></p>
91
+ </div>
92
+ <?php
93
+
94
+ $status = ( isset( $features[4]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'disabled' : checked( 1, $enabled_elements['premium-global-badge'], false );
95
+ $class = ( isset( $features[4]['is_pro'] ) && ! Helper_Functions::check_papro_version() ) ? 'pro-' : '';
96
+ $switcher_class = $class . 'slider round';
97
+
98
+ ?>
99
+ <div class="pa-section-info-cta">
100
+ <label class="switch">
101
+ <input type="checkbox" id="premium-global-badge" name="premium-global-badge" <?php echo $status; ?>>
102
+ <span class="<?php echo esc_attr( $switcher_class ); ?>"></span>
103
+ </label>
104
+ </p>
105
+ </div>
106
+ </div>
107
+ <a href="<?php echo esc_url( $features[4]['demo'] ); ?>" target="_blank"></a>
108
+ </div>
109
+
110
+ <div class="pa-section-outer-wrap">
111
+ <div class="pa-section-info-wrap">
112
+ <div class="pa-section-info">
113
+ <h4><?php echo __( 'Display Conditions', 'premium-addons-for-elementor' ); ?></h4>
114
+ <p><?php echo __( 'Show/hide content dynamically based on location, browser, operating system, user role, device type, Woocommerce, ACF, etc.', 'premium-addons-for-elementor' ); ?></p>
115
+ </div>
116
+
117
+ <div class="pa-section-info-cta">
118
+ <label class="switch">
119
+ <input type="checkbox" id="pa-display-conditions" name="pa-display-conditions" <?php echo checked( 1, $enabled_elements['pa-display-conditions'], false ); ?>>
120
+ <span class="slider round"></span>
121
+ </label>
122
+ </p>
123
+ </div>
124
+ </div>
125
+ <a href="<?php echo esc_url( $features[2]['demo'] ); ?>" target="_blank"></a>
126
+ </div>
127
+
128
+ <div class="pa-section-outer-wrap">
129
+ <div class="pa-section-info-wrap">
130
+ <div class="pa-section-info">
131
+ <h4><?php echo __( 'Floating Effects', 'premium-addons-for-elementor' ); ?></h4>
132
+ <p><?php echo __( 'Apply advanced floating effects on any Elementor element or a custom CSS selector.', 'premium-addons-for-elementor' ); ?></p>
133
+ </div>
134
+
135
+ <div class="pa-section-info-cta">
136
+ <label class="switch">
137
+ <input type="checkbox" id="premium-floating-effects" name="premium-floating-effects" <?php echo checked( 1, $enabled_elements['premium-floating-effects'], false ); ?>>
138
+ <span class="slider round"></span>
139
+ </label>
140
+ </p>
141
+ </div>
142
+ </div>
143
+ <a href="<?php echo esc_url( $features[5]['demo'] ); ?>" target="_blank"></a>
144
+ </div>
145
+
146
+ <div class="pa-section-outer-wrap">
147
+ <div class="pa-section-info-wrap">
148
+ <div class="pa-section-info">
149
+ <h4><?php echo __( 'Cross-Domain Copy N’ Paste', 'premium-addons-for-elementor' ); ?></h4>
150
+ <p><?php echo __( 'Copy any Elementor content from site to another in just ONE click.', 'premium-addons-for-elementor' ); ?></p>
151
+ </div>
152
+
153
+ <div class="pa-section-info-cta">
154
+ <label class="switch">
155
+ <input type="checkbox" id="premium-cross-domain" name="premium-cross-domain" <?php echo checked( 1, $enabled_elements['premium-cross-domain'], false ); ?>>
156
+ <span class="slider round"></span>
157
+ </label>
158
+ </p>
159
+ </div>
160
+ </div>
161
+ <a href="<?php echo esc_url( $features[6]['demo'] ); ?>" target="_blank"></a>
162
+ </div>
163
+
164
+ <div class="pa-section-outer-wrap">
165
+ <div class="pa-section-info-wrap">
166
+ <div class="pa-section-info">
167
+ <h4><?php echo __( 'Duplicator', 'premium-addons-for-elementor' ); ?></h4>
168
+ <p><?php echo __( 'Duplicate any post, page or template on your website.', 'premium-addons-for-elementor' ); ?></p>
169
+ </div>
170
+
171
+ <div class="pa-section-info-cta">
172
+ <label class="switch">
173
+ <input type="checkbox" id="premium-duplicator" name="premium-duplicator" <?php echo checked( 1, $enabled_elements['premium-duplicator'], false ); ?>>
174
+ <span class="slider round"></span>
175
+ </label>
176
+ </p>
177
+ </div>
178
+ </div>
179
+ </div>
180
+
181
+ </div>
182
+ </form> <!-- End Form -->
183
+ </div>
184
+ </div>
185
+ </div> <!-- End Section Content -->
admin/includes/templates/nav-menu-settings.php ADDED
@@ -0,0 +1,207 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * PA Menu Settings Popup.
4
+ *
5
+ * @package Templates
6
+ */
7
+
8
+ defined( 'ABSPATH' ) || exit;
9
+ ?>
10
+
11
+ <div class="premium-menu-settings-modal">
12
+ <div class="dialog-widget dialog-lightbox-widget dialog-type-buttons dialog-type-lightbox elementor-templates-modal premium-dynamic-content-modal" id="elementor-template-nav-menu-modal-container" style="display:none">
13
+ <div class="dialog-widget-content dialog-lightbox-widget-content">
14
+
15
+ <div class="dialog-header dialog-lightbox-header">
16
+ <div class="elementor-templates-modal__header">
17
+ <div class="elementor-templates-modal__header__logo-area">
18
+ <div class="elementor-templates-modal__header__logo">
19
+ <span class="elementor-templates-modal__header__logo__icon-wrapper" id="pa-menu-logo">
20
+ <span class="premium-template-modal-header-logo-icon">
21
+ <img src="<?php echo esc_url( PREMIUM_ADDONS_URL . 'admin/images/pa-logo-symbol.png' ); ?>">
22
+ </span>
23
+ </span>
24
+ <span class="elementor-templates-modal__header__logo__title"><?php esc_html_e( 'Premium Nav Menu Settings', 'premium-addons-for-elementor' ); ?></span>
25
+ </div>
26
+ </div>
27
+ <div class="elementor-templates-modal__header__items-area">
28
+ <div class="elementor-templates-modal__header__close elementor-templates-modal__header__close--normal elementor-templates-modal__header__item">
29
+ <i class="eicon-close" aria-hidden="true" title="<?php echo esc_attr__( 'Close', 'premium-addons-for-elementor' ); ?>"></i>
30
+ <span class="elementor-screen-only"><?php esc_html_e( 'Close', 'premium-addons-for-elementor' ); ?></span>
31
+ </div>
32
+ </div>
33
+ </div>
34
+ </div>
35
+
36
+ <div class="dialog-message dialog-lightbox-message">
37
+ <div class="dialog-content dialog-lightbox-content" style="display: block;">
38
+ <div id="elementor-template-library-templates" data-template-source="remote">
39
+ <div id="elementor-template-library-templates-container">
40
+ <!-- mega content settings -->
41
+ <div class="premium-megamenu-settings premium-setting-container">
42
+ <div class="premium-menu-control-meta">
43
+ <label for="pa-megamenu-switcher"><?php esc_html_e( 'Enable Mega Menu', 'premium-addons-for-elementor' ); ?></label>
44
+ </div>
45
+ <div class="premium-menu-control" id="pa-megamenu-switcher">
46
+ <label class="switch">
47
+ <input type="checkbox">
48
+ <span class="slider round"></span>
49
+ </label>
50
+ </div>
51
+ </div>
52
+
53
+ <div class="premium-megamenu-settings premium-setting-container">
54
+ <div class="premium-menu-control-meta">
55
+ <label for="pa-megamenu-content"><?php esc_html_e( 'Create/Edit Mega Menu Content', 'premium-addons-for-elementor' ); ?></label>
56
+ </div>
57
+ <div class="premium-menu-control" id="pa-megamenu-content">
58
+ <span class="premium-menu-btn"><?php esc_html_e( 'Edit Mega Content', 'premium-addons-for-elementor' ); ?></span>
59
+ </div>
60
+ </div>
61
+
62
+ <div class="premium-megamenu-settings premium-setting-container">
63
+ <div class="premium-menu-control-meta premium-has-desc">
64
+ <label for="pa-megamenu-content-pos"><?php esc_html_e( 'Menu Content Position', 'premium-addons-for-elementor' ); ?></label>
65
+ <div class="premium-megamenu-des"><?php esc_html_e( 'mega content parent position', 'premium-addons-for-elementor' ); ?></div>
66
+ </div>
67
+ <div class="premium-menu-control" id="pa-megamenu-content-pos">
68
+ <select id="pa-megamenu-position">
69
+ <option value="default">Default</option>
70
+ <option value="relative">Relative</option>
71
+ </select>
72
+ </div>
73
+ </div>
74
+
75
+ <div class="premium-megamenu-settings premium-setting-container">
76
+ <div class="premium-menu-control-meta premium-has-desc">
77
+ <label for="pa-megamenu-content-width"><?php esc_html_e( 'Menu Content Width (PX)', 'premium-addons-for-elementor' ); ?></label>
78
+ <div class="premium-megamenu-des"><?php esc_html_e( 'Default is 1170 px', 'premium-addons-for-elementor' ); ?></div>
79
+ </div>
80
+ <div class="premium-menu-control" id="pa-megamenu-content-width">
81
+ <input type="number" id="pa-mega-content-width" min="1" max="2000">
82
+ </div>
83
+ </div>
84
+ <!-- icon settings -->
85
+ <div class="premium-icon-select premium-setting-container">
86
+ <div class="premium-menu-control-meta">
87
+ <label for="pa-item-icon-type"><?php esc_html_e( 'Icon Type', 'premium-addons-for-elementor' ); ?></label>
88
+ </div>
89
+ <div class="premium-menu-control" id="pa-item-icon-type">
90
+ <select id="pa-megamenu-icon-type">
91
+ <option value="icon">Icon</option>
92
+ <option value="lottie">Lottie Animation</option>
93
+ </select>
94
+ </div>
95
+ </div>
96
+
97
+ <div class="premium-lottie-settings premium-setting-container">
98
+ <div class="premium-menu-control-meta premium-has-desc">
99
+ <label for="pa-item-lottie"><?php esc_html_e( 'Lottie URL', 'premium-addons-for-elementor' ); ?></label>
100
+ <div class="premium-megamenu-des"><?php echo __( 'Get JSON code URL from <a href="https://lottiefiles.com/" target="_blank">here</a>', 'premium-addons-for-elementor' ); ?></div>
101
+ </div>
102
+ <div class="premium-menu-control" id="pa-item-lottie">
103
+ <input type="text" id="premium-lottie-url" class="premium-icon-picker">
104
+ </div>
105
+ </div>
106
+
107
+ <div class="premium-icon-settings premium-setting-container">
108
+ <div class="premium-menu-control-meta">
109
+ <label for="pa-item-icon-picker"><?php esc_html_e( 'Select Icon', 'premium-addons-for-elementor' ); ?></label>
110
+ </div>
111
+ <div class="premium-menu-control" id="pa-item-icon-picker">
112
+ <input type="text" id="premium-icon-field" class="premium-icon-picker" >
113
+ </div>
114
+ </div>
115
+
116
+ <div class="premium-icon-settings premium-setting-container">
117
+ <div class="premium-menu-control-meta">
118
+ <label for="pa-item-icon-color"><?php esc_html_e( 'Icon Color', 'premium-addons-for-elementor' ); ?></label>
119
+ </div>
120
+ <div class="premium-menu-control" id="pa-item-icon-color">
121
+ <input type="text" id="premium-icon-color-field" class="premium-color-picker" value="#bada55">
122
+ </div>
123
+ </div>
124
+
125
+ <div class="premium-badge-settings premium-setting-container">
126
+ <div class="premium-menu-control-meta">
127
+ <label for="premium-badge-text-field"><?php esc_html_e( 'Item Badge Text', 'premium-addons-for-elementor' ); ?></label>
128
+ </div>
129
+ <div class="premium-menu-control" id="pa-item-badge">
130
+ <input type="text" id="premium-badge-text-field" class="premium-text-picker" placeholder="Badge Text">
131
+ </div>
132
+ </div>
133
+
134
+ <div class="premium-badge-settings premium-setting-container">
135
+ <div class="premium-menu-control-meta">
136
+ <label for="premium-badge-color-field"><?php esc_html_e( 'Badge Color', 'premium-addons-for-elementor' ); ?></label>
137
+ </div>
138
+ <div class="premium-menu-control" id="pa-item-badge-color">
139
+ <input type="text" id="premium-badge-color-field" class="premium-color-picker" value="#bada55">
140
+ </div>
141
+ </div>
142
+
143
+ <div class="premium-badge-settings premium-setting-container">
144
+ <div class="premium-menu-control-meta">
145
+ <label for="premium-badge-bg-field"><?php esc_html_e( 'Badge Background', 'premium-addons-for-elementor' ); ?></label>
146
+ </div>
147
+ <div class="premium-menu-control" id="pa-item-badge-color">
148
+ <input type="text" id="premium-badge-bg-field" class="premium-color-picker" value="#bada55">
149
+ </div>
150
+ </div>
151
+
152
+ </div>
153
+ </div>
154
+ </div>
155
+ </div>
156
+
157
+ <div class="premium-menu-dialog-footer">
158
+ <div class="premium-menu-save-btn">
159
+ <button id="premium-menu-save" class="premium-menu-btn" type="button">
160
+ <span>
161
+ <?php esc_html_e( 'Save Settings', 'premium-addons-for-elementor' ); ?>
162
+ </span>
163
+ <i class="dashicons dashicons-admin-generic loader-hidden"></i>
164
+ </span>
165
+ </div>
166
+ </div>
167
+ </div>
168
+ </div>
169
+ </div>
170
+ <!-- End of nav settings popup -->
171
+ <!-- Start Live Editor popup -->
172
+ <?php defined( 'ABSPATH' ) || exit; ?>
173
+ <div class="premium-live-editor-iframe-modal">
174
+ <div class="dialog-widget dialog-lightbox-widget dialog-type-buttons dialog-type-lightbox elementor-templates-modal premium-dynamic-content-modal" id="elementor-template-pa-live-editor-modal-container" style="display:none">
175
+ <div class="dialog-widget-content dialog-lightbox-widget-content">
176
+ <div class="premium-menu-temp-close">
177
+ <i class="eicon-close"></i>
178
+ </div>
179
+ <div class="dialog-message dialog-lightbox-message">
180
+ <div class="dialog-content dialog-lightbox-content" style="display: block;">
181
+ <div id="elementor-template-library-templates" data-template-source="remote">
182
+
183
+ <div id="elementor-template-library-templates-container">
184
+ <iframe id="pa-live-editor-control-iframe"></iframe>
185
+ </div>
186
+ </div>
187
+ </div>
188
+ <div class="dialog-loading dialog-lightbox-loading" style="display: block;">
189
+ <div id="elementor-template-library-loading">
190
+ <div class="elementor-loader-wrapper">
191
+ <div class="elementor-loader">
192
+ <div class="elementor-loader-boxes">
193
+ <div class="elementor-loader-box"></div>
194
+ <div class="elementor-loader-box"></div>
195
+ <div class="elementor-loader-box"></div>
196
+ <div class="elementor-loader-box"></div>
197
+ </div>
198
+ </div>
199
+ <div class="elementor-loading-title"><?php esc_html_e( 'Loading', 'premium-addons-for-elementor' ); ?></div>
200
+ </div>
201
+ </div>
202
+ </div>
203
+ </div>
204
+ <div class="dialog-buttons-wrapper dialog-lightbox-buttons-wrapper"></div>
205
+ </div>
206
+ </div>
207
+ </div>
admin/includes/templates/white-label.php CHANGED
@@ -1,173 +1,173 @@
1
- <?php
2
-
3
- if ( ! defined( 'ABSPATH' ) ) {
4
- exit;
5
- }
6
-
7
- use PremiumAddons\Includes\Helper_Functions;
8
-
9
- // Premium Addons Pro Classes
10
- use PremiumAddonsPro\Includes\White_Label\Helper;
11
-
12
- // Get settings
13
- $class = 'premium-white-label-form';
14
- if ( Helper_Functions::check_papro_version() ) {
15
-
16
- $settings = Helper::get_white_labeling_settings();
17
-
18
- } else {
19
- $class .= ' pro-inactive';
20
-
21
- $settings = array(
22
- 'premium-wht-lbl-name' => '',
23
- 'premium-wht-lbl-url' => '',
24
- 'premium-wht-lbl-plugin-name' => '',
25
- 'premium-wht-lbl-short-name' => '',
26
- 'premium-wht-lbl-desc' => '',
27
- 'premium-wht-lbl-row' => '',
28
- 'premium-wht-lbl-name-pro' => '',
29
- 'premium-wht-lbl-url-pro' => '',
30
- 'premium-wht-lbl-plugin-name-pro' => '',
31
- 'premium-wht-lbl-desc-pro' => '',
32
- 'premium-wht-lbl-changelog' => '',
33
- 'premium-wht-lbl-option' => '',
34
- 'premium-wht-lbl-rate' => '',
35
- 'premium-wht-lbl-about' => '',
36
- 'premium-wht-lbl-license' => '',
37
- 'premium-wht-lbl-logo' => '',
38
- 'premium-wht-lbl-version' => '',
39
- 'premium-wht-lbl-prefix' => '',
40
- 'premium-wht-lbl-badge' => '',
41
- );
42
- }
43
-
44
- if ( ! Helper_Functions::check_papro_version() ) {
45
-
46
- $campaign = Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pro/', 'whitelabel-page', 'wp-dash', 'dashboard' );
47
-
48
  ?>
49
  <div class="pa-white-label-notice">
50
  <div class="pa-white-label-notice-content">
51
  <div class="pa-white-label-notice-logo">
52
- <img src="<?php echo PREMIUM_ADDONS_URL . 'admin/images/pa-logo-symbol.png'; ?>" alt="Premium Addons White Labeling Notice">
53
  </div>
54
- <h2><?php _e( 'Get Premium Addons <span>Pro</span> to Enable White Labeling Options', 'premium-addons-for-elementor' ); ?></h2>
55
- <p><?php _e( 'Premium Addons can be completely re-branded with your own brand name and author details. Your clients will never know what tools you are using to build their website and will think that this is your own tool set. White-labeling works as long as your license is active.', 'premium-addons-for-elementor' ); ?></p>
56
- <a class="pa-btn pa-get-pro" href="<?php echo esc_attr( $campaign ); ?>" target="_blank"><?php _e( 'Get PRO', 'premium-addons-for-elementor' ); ?></a>
57
  </div>
58
  </div>
59
  <?php
60
- }
61
-
62
- ?>
63
-
64
- <div class="pa-section-content">
65
- <div class="row">
66
- <div class="col-full">
67
- <form action="" method="POST" id="pa-white-label" class="<?php echo esc_attr( $class ); ?>" name="pa-white-label-settings">
68
  <div id="pa-white-label" class="pa-settings-tab pa-wht-lbl-settings">
69
  <div class="pa-row">
70
  <div class="pa-wht-lbl-settings-wrap">
71
- <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'Free Version', 'premium-addons-for-elementor' ); ?></h3>
72
  <div class="pa-wht-lbl-group-wrap">
73
  <!-- Author Name -->
74
- <label for="premium-wht-lbl-name" class="pa-input-label"><?php echo __( 'Author Name', 'premium-addons-for-elementor' ); ?></label>
75
- <input name="premium-wht-lbl-name" id="premium-wht-lbl-name" type="text" placeholder="Leap13" value="<?php echo esc_attr( $settings['premium-wht-lbl-name'] ); ?>">
76
  <!-- Author URL -->
77
- <label for="premium-wht-lbl-url" class="pa-input-label"><?php echo __( 'Author URL', 'premium-addons-for-elementor' ); ?></label>
78
- <input name="premium-wht-lbl-url" id="premium-wht-lbl-url" type="text" placeholder="https://premiumaddons.com" value="<?php echo esc_attr( $settings['premium-wht-lbl-url'] ); ?>">
79
  <!-- Plugin Name -->
80
- <label for="premium-wht-lbl-plugin-name" class="pa-input-label"><?php echo __( 'Plugin Name', 'premium-addons-for-elementor' ); ?></label>
81
- <input name="premium-wht-lbl-plugin-name" id="premium-wht-lbl-plugin-name" type="text" placeholder="Premium Addons for Elementor" value="<?php echo esc_attr( $settings['premium-wht-lbl-plugin-name'] ); ?>">
82
-
83
  <!-- Plugin Description -->
84
- <label for="premium-wht-lbl-desc" class="pa-input-label"><?php echo __( 'Plugin Description', 'premium-addons-for-elementor' ); ?></label>
85
- <input name="premium-wht-lbl-desc" id="premium-wht-lbl-desc" type="text" placeholder="Premium Addons for Elementor plugin includes widgets and addons.." value="<?php echo esc_attr( $settings['premium-wht-lbl-desc'] ); ?>">
86
-
87
- <p class="pa-input-label"><?php echo __( 'Hide Plugin Row Meta Links', 'premium-addons-for-elementor' ); ?></p>
88
- <input name="premium-wht-lbl-row" id="premium-wht-lbl-row" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-row'], true ); ?>>
89
  <label for="premium-wht-lbl-row"></label>
90
- <span><?php echo __( 'This will hide Docs, FAQs, and Video Tutorials links located on the plugins page.', 'premium-addons-for-elementor' ); ?></span>
91
  </div>
92
  </div>
93
 
94
  <div class="pa-wht-lbl-settings-wrap">
95
- <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'PRO Version', 'premium-addons-for-elementor' ); ?></h3>
96
  <div class="pa-wht-lbl-group-wrap">
97
-
98
- <label for="premium-wht-lbl-name-pro" class="pa-input-label"><?php echo __( 'Author Name', 'premium-addons-for-elementor' ); ?></label>
99
- <input name="premium-wht-lbl-name-pro" id="premium-wht-lbl-name-pro" type="text" placeholder="Leap13" value="<?php echo esc_attr( $settings['premium-wht-lbl-name-pro'] ); ?>">
100
 
101
- <label for="premium-wht-lbl-url-pro" class="pa-input-label"><?php echo __( 'Author URL', 'premium-addons-for-elementor' ); ?></label>
102
- <input name="premium-wht-lbl-url-pro" id="premium-wht-lbl-url-pro" type="text" placeholder="https://premiumaddons.com" value="<?php echo esc_attr( $settings['premium-wht-lbl-url-pro'] ); ?>">
103
-
104
- <label for="premium-wht-lbl-plugin-name-pro" class="pa-input-label"><?php echo __( 'Plugin Name', 'premium-addons-for-elementor' ); ?></label>
105
- <input name="premium-wht-lbl-plugin-name-pro" id="premium-wht-lbl-plugin-name-pro" type="text" placeholder="Premium Addons PRO for Elementor" value="<?php echo esc_attr( $settings['premium-wht-lbl-plugin-name-pro'] ); ?>">
106
-
107
- <label for="premium-wht-lbl-desc-rpo" class="pa-input-label"><?php echo __( 'Plugin Description', 'premium-addons-for-elementor' ); ?></label>
108
- <input name="premium-wht-lbl-desc-pro" id="premium-wht-lbl-desc-pro" type="text" placeholder="Premium Addons PRO Plugin Includes 33+ premium widgets & addons..." value="<?php echo esc_attr( $settings['premium-wht-lbl-desc-pro'] ); ?>">
109
-
110
- <p class="pa-input-label"><?php echo __( 'Hide Plugin Changelog Link', 'premium-addons-for-elementor' ); ?></p>
111
- <input name="premium-wht-lbl-changelog" id="premium-wht-lbl-changelog" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-changelog'], true ); ?>>
112
  <label for="premium-wht-lbl-changelog"></label>
113
- <span><?php echo __( 'This will hide the Changelog link located on the plugins page.', 'premium-addons-for-elementor' ); ?></span>
114
 
115
  </div>
116
  </div>
117
  <div class="pa-wht-lbl-settings-wrap">
118
- <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'General Options', 'premium-addons-for-elementor' ); ?></h3>
119
  <div class="pa-wht-lbl-group-wrap">
120
  <!-- Widgets Category Name -->
121
- <label for="premium-wht-lbl-short-name" class="pa-input-label"><?php echo __( 'Widgets Category Name', 'premium-addons-for-elementor' ); ?></label>
122
- <input name="premium-wht-lbl-short-name" id="premium-wht-lbl-short-name" type="text" placeholder="Premium Addons" value="<?php echo esc_attr( $settings['premium-wht-lbl-short-name'] ); ?>">
123
  <!-- Widgets Prefix -->
124
- <label for="premium-wht-lbl-prefix" class="pa-input-label"><?php echo __( 'Widgets Prefix', 'premium-addons-for-elementor' ); ?></label>
125
- <input name="premium-wht-lbl-prefix" id="premium-wht-lbl-prefix" type="text" placeholder="Premium" value="<?php echo esc_attr( $settings['premium-wht-lbl-prefix'] ); ?>">
126
  <!-- Widgets Badge -->
127
- <label for="premium-wht-lbl-badge" class="pa-input-label"><?php echo __( 'Widgets Badge', 'premium-addons-for-elementor' ); ?></label>
128
- <input name="premium-wht-lbl-badge" id="premium-wht-lbl-badge" type="text" placeholder="PA" value="<?php echo esc_attr( $settings['premium-wht-lbl-badge'] ); ?>">
129
  </div>
130
  </div>
131
  </div>
132
-
133
  <div class="pa-wht-lbl-admin">
134
  <div class="pa-wht-lbl-settings-wrap">
135
- <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'Admin Settings', 'premium-addons-for-elementor' ); ?></h3>
136
  <div class="pa-wht-lbl-group-wrap">
137
  <!-- Hide General Tab-->
138
- <p class="pa-input-label"><?php echo __( 'General Tab', 'premium-addons-for-elementor' ); ?></p>
139
- <input name="premium-wht-lbl-about" id="premium-wht-lbl-about" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-about'], true ); ?>>
140
  <label for="premium-wht-lbl-about"></label>
141
- <span><?php echo __( 'This will hide the General tab', 'premium-addons-for-elementor' ); ?></span>
142
 
143
  <!-- Hide Version Control Tab-->
144
- <p class="pa-input-label"><?php echo __( 'Version Control Tab', 'premium-addons-for-elementor' ); ?></p>
145
- <input name="premium-wht-lbl-version" id="premium-wht-lbl-version" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-version'], true ); ?>>
146
  <label for="premium-wht-lbl-version"></label>
147
- <span><?php echo __( 'This will hide the Version Control tab.', 'premium-addons-for-elementor' ); ?></span>
148
-
149
  <!-- Hide Logo-->
150
- <p class="pa-input-label"><?php echo __( 'Hide Premium Addons Logo', 'premium-addons-for-elementor' ); ?></p>
151
- <input name="premium-wht-lbl-logo" id="premium-wht-lbl-logo" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-logo'], true ); ?>>
152
  <label for="premium-wht-lbl-logo"></label>
153
- <span><?php echo __( 'This will hide Premium Addons logo located on the dashboard.', 'premium-addons-for-elementor' ); ?></span>
154
-
155
  <!-- Hide License Tab-->
156
- <p class="pa-input-label"><?php echo __( 'License Tab', 'premium-addons-for-elementor' ); ?></p>
157
- <input name="premium-wht-lbl-license" id="premium-wht-lbl-license" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-license'], true ); ?>>
158
  <label for="premium-wht-lbl-license"></label>
159
- <span><?php echo __( 'This will hide the License tab.', 'premium-addons-for-elementor' ); ?></span>
160
-
161
  <!-- Hide White Labeling Tab-->
162
 
163
- <p class="pa-input-label"><?php echo __( 'White Labeling Tab', 'premium-addons-for-elementor' ); ?></p>
164
- <input name="premium-wht-lbl-option" id="premium-wht-lbl-option" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-option'], true ); ?>>
165
  <label for="premium-wht-lbl-option"></label>
166
- <span><?php echo __( 'This will hide the White Labeling tab options.', 'premium-addons-for-elementor' ); ?></span>
167
 
168
  <p>
169
- <strong><?php _e( 'NOTE: ', 'premium-addons-for-elementor' ); ?></strong>
170
- <?php echo __( 'You will need to reactivate Premium Addons PRO for Elementor plugin to be able to reset White Labeling tab options.', 'premium-addons-for-elementor' ); ?>
171
  </p>
172
  </div>
173
  </div>
@@ -175,6 +175,6 @@ if ( ! Helper_Functions::check_papro_version() ) {
175
  <div class="clearfix"></div>
176
  </div>
177
  </form>
178
- </div>
179
- </div>
180
- </div> <!-- End Section Content -->
1
+ <?php
2
+
3
+ if ( ! defined( 'ABSPATH' ) ) {
4
+ exit;
5
+ }
6
+
7
+ use PremiumAddons\Includes\Helper_Functions;
8
+
9
+ // Premium Addons Pro Classes
10
+ use PremiumAddonsPro\Includes\White_Label\Helper;
11
+
12
+ // Get settings
13
+ $class = 'premium-white-label-form';
14
+ if ( Helper_Functions::check_papro_version() ) {
15
+
16
+ $settings = Helper::get_white_labeling_settings();
17
+
18
+ } else {
19
+ $class .= ' pro-inactive';
20
+
21
+ $settings = array(
22
+ 'premium-wht-lbl-name' => '',
23
+ 'premium-wht-lbl-url' => '',
24
+ 'premium-wht-lbl-plugin-name' => '',
25
+ 'premium-wht-lbl-short-name' => '',
26
+ 'premium-wht-lbl-desc' => '',
27
+ 'premium-wht-lbl-row' => '',
28
+ 'premium-wht-lbl-name-pro' => '',
29
+ 'premium-wht-lbl-url-pro' => '',
30
+ 'premium-wht-lbl-plugin-name-pro' => '',
31
+ 'premium-wht-lbl-desc-pro' => '',
32
+ 'premium-wht-lbl-changelog' => '',
33
+ 'premium-wht-lbl-option' => '',
34
+ 'premium-wht-lbl-rate' => '',
35
+ 'premium-wht-lbl-about' => '',
36
+ 'premium-wht-lbl-license' => '',
37
+ 'premium-wht-lbl-logo' => '',
38
+ 'premium-wht-lbl-version' => '',
39
+ 'premium-wht-lbl-prefix' => '',
40
+ 'premium-wht-lbl-badge' => '',
41
+ );
42
+ }
43
+
44
+ if ( ! Helper_Functions::check_papro_version() ) {
45
+
46
+ $campaign = Helper_Functions::get_campaign_link( 'https://premiumaddons.com/pro/', 'whitelabel-page', 'wp-dash', 'dashboard' );
47
+
48
  ?>
49
  <div class="pa-white-label-notice">
50
  <div class="pa-white-label-notice-content">
51
  <div class="pa-white-label-notice-logo">
52
+ <img src="<?php echo PREMIUM_ADDONS_URL . 'admin/images/pa-logo-symbol.png'; ?>" alt="Premium Addons White Labeling Notice">
53
  </div>
54
+ <h2><?php _e( 'Get Premium Addons <span>Pro</span> to Enable White Labeling Options', 'premium-addons-for-elementor' ); ?></h2>
55
+ <p><?php _e( 'Premium Addons can be completely re-branded with your own brand name and author details. Your clients will never know what tools you are using to build their website and will think that this is your own tool set. White-labeling works as long as your license is active.', 'premium-addons-for-elementor' ); ?></p>
56
+ <a class="pa-btn pa-get-pro" href="<?php echo esc_attr( $campaign ); ?>" target="_blank"><?php _e( 'Get PRO', 'premium-addons-for-elementor' ); ?></a>
57
  </div>
58
  </div>
59
  <?php
60
+ }
61
+
62
+ ?>
63
+
64
+ <div class="pa-section-content">
65
+ <div class="row">
66
+ <div class="col-full">
67
+ <form action="" method="POST" id="pa-white-label" class="<?php echo esc_attr( $class ); ?>" name="pa-white-label-settings">
68
  <div id="pa-white-label" class="pa-settings-tab pa-wht-lbl-settings">
69
  <div class="pa-row">
70
  <div class="pa-wht-lbl-settings-wrap">
71
+ <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'Free Version', 'premium-addons-for-elementor' ); ?></h3>
72
  <div class="pa-wht-lbl-group-wrap">
73
  <!-- Author Name -->
74
+ <label for="premium-wht-lbl-name" class="pa-input-label"><?php echo __( 'Author Name', 'premium-addons-for-elementor' ); ?></label>
75
+ <input name="premium-wht-lbl-name" id="premium-wht-lbl-name" type="text" placeholder="Leap13" value="<?php echo esc_attr( $settings['premium-wht-lbl-name'] ); ?>">
76
  <!-- Author URL -->
77
+ <label for="premium-wht-lbl-url" class="pa-input-label"><?php echo __( 'Author URL', 'premium-addons-for-elementor' ); ?></label>
78
+ <input name="premium-wht-lbl-url" id="premium-wht-lbl-url" type="text" placeholder="https://premiumaddons.com" value="<?php echo esc_attr( $settings['premium-wht-lbl-url'] ); ?>">
79
  <!-- Plugin Name -->
80
+ <label for="premium-wht-lbl-plugin-name" class="pa-input-label"><?php echo __( 'Plugin Name', 'premium-addons-for-elementor' ); ?></label>
81
+ <input name="premium-wht-lbl-plugin-name" id="premium-wht-lbl-plugin-name" type="text" placeholder="Premium Addons for Elementor" value="<?php echo esc_attr( $settings['premium-wht-lbl-plugin-name'] ); ?>">
82
+
83
  <!-- Plugin Description -->
84
+ <label for="premium-wht-lbl-desc" class="pa-input-label"><?php echo __( 'Plugin Description', 'premium-addons-for-elementor' ); ?></label>
85
+ <input name="premium-wht-lbl-desc" id="premium-wht-lbl-desc" type="text" placeholder="Premium Addons for Elementor plugin includes widgets and addons.." value="<?php echo esc_attr( $settings['premium-wht-lbl-desc'] ); ?>">
86
+
87
+ <p class="pa-input-label"><?php echo __( 'Hide Plugin Row Meta Links', 'premium-addons-for-elementor' ); ?></p>
88
+ <input name="premium-wht-lbl-row" id="premium-wht-lbl-row" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-row'], true ); ?>>
89
  <label for="premium-wht-lbl-row"></label>
90
+ <span><?php echo __( 'This will hide Docs, FAQs, and Video Tutorials links located on the plugins page.', 'premium-addons-for-elementor' ); ?></span>
91
  </div>
92
  </div>
93
 
94
  <div class="pa-wht-lbl-settings-wrap">
95
+ <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'PRO Version', 'premium-addons-for-elementor' ); ?></h3>
96
  <div class="pa-wht-lbl-group-wrap">
97
+
98
+ <label for="premium-wht-lbl-name-pro" class="pa-input-label"><?php echo __( 'Author Name', 'premium-addons-for-elementor' ); ?></label>
99
+ <input name="premium-wht-lbl-name-pro" id="premium-wht-lbl-name-pro" type="text" placeholder="Leap13" value="<?php echo esc_attr( $settings['premium-wht-lbl-name-pro'] ); ?>">
100
 
101
+ <label for="premium-wht-lbl-url-pro" class="pa-input-label"><?php echo __( 'Author URL', 'premium-addons-for-elementor' ); ?></label>
102
+ <input name="premium-wht-lbl-url-pro" id="premium-wht-lbl-url-pro" type="text" placeholder="https://premiumaddons.com" value="<?php echo esc_attr( $settings['premium-wht-lbl-url-pro'] ); ?>">
103
+
104
+ <label for="premium-wht-lbl-plugin-name-pro" class="pa-input-label"><?php echo __( 'Plugin Name', 'premium-addons-for-elementor' ); ?></label>
105
+ <input name="premium-wht-lbl-plugin-name-pro" id="premium-wht-lbl-plugin-name-pro" type="text" placeholder="Premium Addons PRO for Elementor" value="<?php echo esc_attr( $settings['premium-wht-lbl-plugin-name-pro'] ); ?>">
106
+
107
+ <label for="premium-wht-lbl-desc-rpo" class="pa-input-label"><?php echo __( 'Plugin Description', 'premium-addons-for-elementor' ); ?></label>
108
+ <input name="premium-wht-lbl-desc-pro" id="premium-wht-lbl-desc-pro" type="text" placeholder="Premium Addons PRO Plugin Includes 33+ premium widgets & addons..." value="<?php echo esc_attr( $settings['premium-wht-lbl-desc-pro'] ); ?>">
109
+
110
+ <p class="pa-input-label"><?php echo __( 'Hide Plugin Changelog Link', 'premium-addons-for-elementor' ); ?></p>
111
+ <input name="premium-wht-lbl-changelog" id="premium-wht-lbl-changelog" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-changelog'], true ); ?>>
112
  <label for="premium-wht-lbl-changelog"></label>
113
+ <span><?php echo __( 'This will hide the Changelog link located on the plugins page.', 'premium-addons-for-elementor' ); ?></span>
114
 
115
  </div>
116
  </div>
117
  <div class="pa-wht-lbl-settings-wrap">
118
+ <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'General Options', 'premium-addons-for-elementor' ); ?></h3>
119
  <div class="pa-wht-lbl-group-wrap">
120
  <!-- Widgets Category Name -->
121
+ <label for="premium-wht-lbl-short-name" class="pa-input-label"><?php echo __( 'Widgets Category Name', 'premium-addons-for-elementor' ); ?></label>
122
+ <input name="premium-wht-lbl-short-name" id="premium-wht-lbl-short-name" type="text" placeholder="Premium Addons" value="<?php echo esc_attr( $settings['premium-wht-lbl-short-name'] ); ?>">
123
  <!-- Widgets Prefix -->
124
+ <label for="premium-wht-lbl-prefix" class="pa-input-label"><?php echo __( 'Widgets Prefix', 'premium-addons-for-elementor' ); ?></label>
125
+ <input name="premium-wht-lbl-prefix" id="premium-wht-lbl-prefix" type="text" placeholder="Premium" value="<?php echo esc_attr( $settings['premium-wht-lbl-prefix'] ); ?>">
126
  <!-- Widgets Badge -->
127
+ <label for="premium-wht-lbl-badge" class="pa-input-label"><?php echo __( 'Widgets Badge', 'premium-addons-for-elementor' ); ?></label>
128
+ <input name="premium-wht-lbl-badge" id="premium-wht-lbl-badge" type="text" placeholder="PA" value="<?php echo esc_attr( $settings['premium-wht-lbl-badge'] ); ?>">
129
  </div>
130
  </div>
131
  </div>
132
+
133
  <div class="pa-wht-lbl-admin">
134
  <div class="pa-wht-lbl-settings-wrap">
135
+ <h3 class="pa-wht-lbl-title pa-wht-lbl-head"><?php echo __( 'Admin Settings', 'premium-addons-for-elementor' ); ?></h3>
136
  <div class="pa-wht-lbl-group-wrap">
137
  <!-- Hide General Tab-->
138
+ <p class="pa-input-label"><?php echo __( 'General Tab', 'premium-addons-for-elementor' ); ?></p>
139
+ <input name="premium-wht-lbl-about" id="premium-wht-lbl-about" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-about'], true ); ?>>
140
  <label for="premium-wht-lbl-about"></label>
141
+ <span><?php echo __( 'This will hide the General tab', 'premium-addons-for-elementor' ); ?></span>
142
 
143
  <!-- Hide Version Control Tab-->
144
+ <p class="pa-input-label"><?php echo __( 'Version Control Tab', 'premium-addons-for-elementor' ); ?></p>
145
+ <input name="premium-wht-lbl-version" id="premium-wht-lbl-version" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-version'], true ); ?>>
146
  <label for="premium-wht-lbl-version"></label>
147
+ <span><?php echo __( 'This will hide the Version Control tab.', 'premium-addons-for-elementor' ); ?></span>
148
+
149
  <!-- Hide Logo-->
150
+ <p class="pa-input-label"><?php echo __( 'Hide Premium Addons Logo', 'premium-addons-for-elementor' ); ?></p>
151
+ <input name="premium-wht-lbl-logo" id="premium-wht-lbl-logo" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-logo'], true ); ?>>
152
  <label for="premium-wht-lbl-logo"></label>
153
+ <span><?php echo __( 'This will hide Premium Addons logo located on the dashboard.', 'premium-addons-for-elementor' ); ?></span>
154
+
155
  <!-- Hide License Tab-->
156
+ <p class="pa-input-label"><?php echo __( 'License Tab', 'premium-addons-for-elementor' ); ?></p>
157
+ <input name="premium-wht-lbl-license" id="premium-wht-lbl-license" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-license'], true ); ?>>
158
  <label for="premium-wht-lbl-license"></label>
159
+ <span><?php echo __( 'This will hide the License tab.', 'premium-addons-for-elementor' ); ?></span>
160
+
161
  <!-- Hide White Labeling Tab-->
162
 
163
+ <p class="pa-input-label"><?php echo __( 'White Labeling Tab', 'premium-addons-for-elementor' ); ?></p>
164
+ <input name="premium-wht-lbl-option" id="premium-wht-lbl-option" type="checkbox" <?php checked( 1, $settings['premium-wht-lbl-option'], true ); ?>>
165
  <label for="premium-wht-lbl-option"></label>
166
+ <span><?php echo __( 'This will hide the White Labeling tab options.', 'premium-addons-for-elementor' ); ?></span>
167
 
168
  <p>
169
+ <strong><?php _e( 'NOTE: ', 'premium-addons-for-elementor' ); ?></strong>
170
+ <?php echo __( 'You will need to reactivate Premium Addons PRO for Elementor plugin to be able to reset White Labeling tab options.', 'premium-addons-for-elementor' ); ?>
171
  </p>
172
  </div>
173
  </div>
175
  <div class="clearfix"></div>
176
  </div>
177
  </form>
178
+ </div>
179
+ </div>
180
+ </div> <!-- End Section Content -->
assets/editor/css/style.css CHANGED
@@ -1,525 +1,529 @@
1
- @font-face {
2
- font-family: "pa-elements";
3
- src: url("../fonts/pa-elements.eot?9e1efm");
4
- src: url("../fonts/pa-elements.eot?9e1efm#iefix") format("embedded-opentype"),
5
- url("../fonts/pa-elements.ttf?9e1efm") format("truetype"),
6
- url("../fonts/pa-elements.woff?9e1efm") format("woff"),
7
- url("../fonts/pa-elements.svg?9e1efm#pa-elements") format("svg");
8
- font-weight: normal;
9
- font-style: normal;
10
- }
11
-
12
- .elementor-element .icon {
13
- position: relative;
14
- }
15
-
16
- [class^="pa-"],
17
- [class*=" pa-"] {
18
- /* use !important to prevent issues with browser extensions that change fonts */
19
- font-family: "pa-elements" !important;
20
- speak: none;
21
- font-style: normal;
22
- font-weight: normal;
23
- font-variant: normal;
24
- text-transform: none;
25
- line-height: 1;
26
- /* Better Font Rendering =========== */
27
- -webkit-font-smoothing: antialiased;
28
- -moz-osx-font-smoothing: grayscale;
29
- }
30
-
31
- /*
32
- * Icons Badge
33
- */
34
- [class^="pa-"]::after,
35
- [class*=" pa-"]::after {
36
- content: "PA";
37
- font-family: "Montserrat", Sans-serif;
38
- font-weight: 700;
39
- font-size: 10px;
40
- opacity: 0.4;
41
- position: absolute;
42
- right: 0.6em;
43
- top: 0.6em;
44
- padding: 1px;
45
- color: #e6e9ec;
46
- background-color: #7a7a7a;
47
- }
48
-
49
- .pa-dash-icon:before {
50
- content: "\e91e";
51
- }
52
-
53
- .pa-banner:before {
54
- content: "\e924";
55
- }
56
-
57
- .pa-blog:before {
58
- content: "\e925";
59
- }
60
-
61
- .pa-button:before {
62
- content: "\e926";
63
- }
64
-
65
- .pa-carousel:before {
66
- content: "\e927";
67
- }
68
-
69
- .pa-contact-form:before {
70
- content: "\e938";
71
- }
72
-
73
- .pa-countdown:before {
74
- content: "\e933";
75
- }
76
-
77
- .pa-counter:before {
78
- content: "\e934";
79
- }
80
-
81
- .pa-dual-header:before {
82
- content: "\e935";
83
- }
84
-
85
- .pa-fancy-text:before {
86
- content: "\e936";
87
- }
88
-
89
- .pa-maps:before {
90
- content: "\e937";
91
- }
92
-
93
- .pa-grid-icon:before {
94
- content: "\e928";
95
- }
96
-
97
- .pa-image-button:before {
98
- content: "\e929";
99
- }
100
-
101
- .pa-image-scroll:before {
102
- content: "\e923";
103
- }
104
-
105
- .pa-image-separator:before {
106
- content: "\e92a";
107
- }
108
-
109
- .pa-lottie-animations:before {
110
- content: "\e91f";
111
- }
112
-
113
- .pa-modal-box:before {
114
- content: "\e92b";
115
- }
116
-
117
- .pa-person:before {
118
- content: "\e92c";
119
- }
120
-
121
- .pa-pricing-table:before {
122
- content: "\e92d";
123
- }
124
-
125
- .pa-progress-bar:before {
126
- content: "\e92e";
127
- }
128
-
129
- .pa-testimonials:before {
130
- content: "\e92f";
131
- }
132
-
133
- .pa-title:before {
134
- content: "\e930";
135
- }
136
-
137
- .pa-vscroll:before {
138
- content: "\e931";
139
- }
140
-
141
- .pa-video-box:before {
142
- content: "\e932";
143
- }
144
-
145
- .pa-icon-list:before {
146
- content: "\e920";
147
- }
148
-
149
- .pa-woo-products:before {
150
- content: "\e939";
151
- }
152
-
153
- .editor-pa-doc {
154
- font-style: italic;
155
- line-height: 1.2;
156
- font-size: 12px;
157
- }
158
-
159
- .editor-pa-spacer {
160
- margin-top: 1.5em;
161
- }
162
-
163
- .elementor-panel .elementor-control-section_pa_docs .elementor-panel-heading-title.elementor-panel-heading-title,
164
- .elementor-control-raw-html.editor-pa-doc a {
165
- color: #0f6aa7;
166
- }
167
-
168
- .elementor-control-raw-html .premium-notice-bold {
169
- font-weight: bold;
170
- }
171
-
172
- #elementor-panel__editor__help__link[href^="https://premiumaddons.com/"]::before,
173
- #elementor-panel__editor__help__link[href*="PLLpZVOYpMtTArB4hrlpSnDJB36D2sdoTv"]::before {
174
- content: "\e91e";
175
- font-family: "pa-elements" !important;
176
- font-size: 20px;
177
- font-style: normal;
178
- font-weight: normal;
179
- font-variant: normal;
180
- text-transform: none;
181
- line-height: 1;
182
- -webkit-font-smoothing: antialiased;
183
- -moz-osx-font-smoothing: grayscale;
184
- margin: -1px 4px 0;
185
- }
186
-
187
- .pa-extension-icon.pa-dash-icon {
188
- font-size: 11px;
189
- padding-right: 1px;
190
- }
191
-
192
- .elementor-update-preview.editor-pa-preview-update {
193
- margin: 0;
194
- margin-bottom: 8px;
195
- }
196
-
197
- /*
198
- * PRO Elements
199
- */
200
- .pa-pro-trust-reviews:before {
201
- content: "\e900";
202
- }
203
-
204
- .pa-pro-yelp-reviews:before {
205
- content: "\e91d";
206
- }
207
-
208
- .pa-pro-behance-feed:before {
209
- content: "\e901";
210
- }
211
-
212
- .pa-pro-charts:before {
213
- content: "\e902";
214
- }
215
-
216
- .pa-pro-content-switcher:before {
217
- content: "\e904";
218
- }
219
-
220
- .pa-pro-facebook-feed:before {
221
- content: "\e905";
222
- }
223
-
224
- .pa-pro-facebook-reviews:before {
225
- content: "\e906";
226
- }
227
-
228
- .pa-pro-flip-box:before {
229
- content: "\e907";
230
- }
231
-
232
- .pa-pro-floating-block:before {
233
- content: "\e906";
234
- }
235
-
236
- .pa-pro-google-reviews:before {
237
- content: "\e908";
238
- }
239
-
240
- .pa-pro-horizontal-scroll:before {
241
- content: "\e90a";
242
- }
243
-
244
- .pa-pro-hot-spot:before {
245
- content: "\e90b";
246
- }
247
-
248
- .pa-pro-icon-box:before {
249
- content: "\e90c";
250
- }
251
-
252
- .pa-pro-ihover:before {
253
- content: "\e90d";
254
- }
255
-
256
- .pa-pro-image-accordion:before {
257
- content: "\e90e";
258
- }
259
-
260
- .pa-pro-image-comparison:before {
261
- content: "\e90f";
262
- }
263
-
264
- .pa-pro-image-layers:before {
265
- content: "\e910";
266
- }
267
-
268
- .pa-pro-instagram-feed:before {
269
- content: "\e911";
270
- }
271
-
272
- .pa-pro-magic-section:before {
273
- content: "\e912";
274
- }
275
-
276
- .pa-pro-messenger-chat:before {
277
- content: "\e913";
278
- }
279
-
280
- .pa-pro-multi-scroll:before {
281
- content: "\e914";
282
- }
283
-
284
- .pa-pro-notification-bar:before {
285
- content: "\e915";
286
- }
287
-
288
- .pa-pro-preview-window:before {
289
- content: "\e916";
290
- }
291
-
292
- .pa-pro-separator:before {
293
- content: "\e917";
294
- }
295
-
296
- .pa-pro-table:before {
297
- content: "\e918";
298
- }
299
-
300
- .pa-pro-tabs:before {
301
- content: "\e919";
302
- }
303
-
304
- .pa-pro-twitter-feed:before {
305
- content: "\e91a";
306
- }
307
-
308
- .pa-pro-unfold:before {
309
- content: "\e91b";
310
- }
311
-
312
- .pa-pro-whatsapp:before {
313
- content: "\e91c";
314
- }
315
-
316
- .pa-pro-color-transition:before {
317
- content: "\e903";
318
- }
319
-
320
- .editor-pa-img {
321
- max-width: 50px;
322
- max-height: 50px;
323
- vertical-align: middle;
324
- }
325
-
326
- .premium-promotion-btn {
327
- background-color: #252c59 !important;
328
- width: 50% !important;
329
- }
330
-
331
- .premium-promotion-pro-btn {
332
- display: inline-block;
333
- text-align: center;
334
- background-color: #f47216;
335
- color: #fff;
336
- line-height: normal;
337
- }
338
-
339
- .premium-promotion-pro-btn:hover {
340
- color: #fff;
341
- }
342
-
343
- .premium-promotion-dialog .eicon-pro-icon {
344
- color: #f47216 !important;
345
- margin: 0 6px !important;
346
- }
347
-
348
- .premium-promotion-dialog .dialog-button {
349
- font-size: 10px !important;
350
- letter-spacing: 0.3px;
351
- width: calc(50% - 5px) !important;
352
- }
353
-
354
- html:not([dir="rtl"]) .premium-promotion-btn {
355
- margin-right: 5px;
356
- }
357
-
358
- html:not([dir="rtl"]) .premium-promotion-pro-btn {
359
- margin-left: 5px;
360
- }
361
-
362
- [dir="rtl"] .premium-promotion-pro-btn {
363
- margin-right: 5px;
364
- }
365
-
366
- [dir="rtl"] .premium-promotion-btn {
367
- margin-left: 5px;
368
- }
369
-
370
- .elementor-panel .premium-promotion-element>.elementor-element>.eicon-lock {
371
- right: auto;
372
- left: 0.6em;
373
- }
374
-
375
- .elementor-editor-active .tipsy-inner {
376
- line-height: 15px;
377
- }
378
-
379
- .papro-upgrade-notice {
380
- font-size: 12px;
381
- font-weight: 300;
382
- font-style: italic;
383
- line-height: 1.4;
384
- }
385
-
386
- /* Fix floating effect slider control number overlap issue */
387
- .elementor-slider .noUi-base .noUi-handle-upper .noUi-tooltip {
388
- top: -100%;
389
- }
390
-
391
-
392
- .papro-btn-block {
393
- width: 100% !important;
394
- margin: -10px 0 10px;
395
-
396
- }
397
-
398
- .elementor-template-pa-live-editor-modal-container {
399
- display: flex;
400
- }
401
-
402
- .premium-live-editor-iframe-modal {
403
- display: none;
404
- }
405
-
406
- .premium-dynamic-content-modal {
407
- -js-display: flex;
408
- display: -webkit-box;
409
- display: -webkit-flex;
410
- display: -moz-box;
411
- display: -ms-flexbox;
412
- display: flex;
413
- }
414
-
415
- .premium-live-editor-iframe-modal .elementor-templates-modal__header__logo__title {
416
- margin-right: 35px;
417
- }
418
-
419
- .premium-live-editor-iframe-modal .dialog-lightbox-header {
420
- background-color: #f1f3f5;
421
- }
422
-
423
- .premium-live-editor-iframe-modal .dialog-message {
424
- position: relative;
425
- }
426
-
427
- .premium-live-editor-iframe-modal iframe {
428
- position: absolute;
429
- top: 0;
430
- bottom: 0;
431
- right: 0;
432
- left: 0;
433
- width: 100%;
434
- height: 100%;
435
- }
436
-
437
- /* .premium-live-editor-iframe-modal .dialog-widget-content {
438
- margin-top: 10px;
439
- } */
440
-
441
- .premium-dynamic-content-modal .dialog-widget-content {
442
- position: static !important;
443
- max-width: 90% !important;
444
- border-radius: 0;
445
- /* margin-top: 20px !important;
446
- margin-bottom: 20px !important; */
447
- }
448
-
449
- .elementor-device-desktop #elementor-preview-responsive-wrapper {
450
- min-width: auto !important;
451
- }
452
-
453
- .premium-dynamic-content-modal .dialog-message {
454
- overflow: unset !important;
455
- }
456
-
457
- .premium-live-editor-iframe-modal {
458
- display: none;
459
- }
460
-
461
- .premium-live-editor-iframe-modal .elementor-templates-modal__header__close {
462
- margin-left: 15px;
463
- }
464
-
465
- /* .premium-live-editor-iframe-modal .dialog-widget-content {
466
- position: static !important;
467
- margin-top: 10px;
468
- } */
469
-
470
- #pa-live-editor-logo .premium-template-modal-header-logo-icon img {
471
- width: 30px;
472
- height: 30px;
473
- }
474
-
475
- #premium-live-temp-title {
476
- width: 400px;
477
- border-radius: 3px 0 0 3px;
478
- }
479
-
480
- .premium-live-temp-notice {
481
- margin: 0 10px;
482
- font-style: italic;
483
- font-weight: normal;
484
- text-transform: none;
485
- }
486
-
487
- #pa-insert-live-temp {
488
- white-space: nowrap;
489
- border-radius: 0 3px 3px 0;
490
- }
491
-
492
- #pa-insert-live-temp,
493
- #premium-live-temp-title {
494
- padding: 8px 10px;
495
- }
496
-
497
- .premium-live-editor-title {
498
- display: none;
499
- -webkit-box-align: center;
500
- -webkit-align-items: center;
501
- -moz-box-align: center;
502
- -ms-flex-align: center;
503
- align-items: center;
504
- }
505
-
506
- .premium-modal-expanded .dialog-lightbox-widget-content {
507
- max-width: 100% !important;
508
- margin: 0 !important;
509
- }
510
-
511
- .premium-modal-expanded .dialog-lightbox-message {
512
- max-height: 100vh;
513
- }
514
-
515
- .premium-modal-expanded #pa-live-editor-control-iframe {
516
- height: calc(100vh - 50px);
517
- }
518
-
519
- .premium-live-temp-title.control-hidden {
520
- display: none;
521
- }
522
-
523
- .premium-live-temp-label label {
524
- font-weight: 900;
 
 
 
 
525
  }
1
+ @font-face {
2
+ font-family: "pa-elements";
3
+ src: url("../fonts/pa-elements.eot?60rfh2");
4
+ src: url("../fonts/pa-elements.eot?60rfh2#iefix") format("embedded-opentype"),
5
+ url("../fonts/pa-elements.ttf?60rfh2") format("truetype"),
6
+ url("../fonts/pa-elements.woff?60rfh2") format("woff"),
7
+ url("../fonts/pa-elements.svg?60rfh2#pa-elements") format("svg");
8
+ font-weight: normal;
9
+ font-style: normal;
10
+ }
11
+
12
+ .elementor-element .icon {
13
+ position: relative;
14
+ }
15
+
16
+ [class^="pa-"],
17
+ [class*=" pa-"] {
18
+ /* use !important to prevent issues with browser extensions that change fonts */
19
+ font-family: "pa-elements" !important;
20
+ speak: none;
21
+ font-style: normal;
22
+ font-weight: normal;
23
+ font-variant: normal;
24
+ text-transform: none;
25
+ line-height: 1;
26
+ /* Better Font Rendering =========== */
27
+ -webkit-font-smoothing: antialiased;
28
+ -moz-osx-font-smoothing: grayscale;
29
+ }
30
+
31
+ /*
32
+ * Icons Badge
33
+ */
34
+ [class^="pa-"]::after,
35
+ [class*=" pa-"]::after {
36
+ content: "PA";
37
+ font-family: "Montserrat", Sans-serif;
38
+ font-weight: 700;
39
+ font-size: 10px;
40
+ opacity: 0.4;
41
+ position: absolute;
42
+ right: 0.6em;
43
+ top: 0.6em;
44
+ padding: 1px;
45
+ color: #e6e9ec;
46
+ background-color: #7a7a7a;
47
+ }
48
+
49
+ .pa-dash-icon:before {
50
+ content: "\e91e";
51
+ }
52
+
53
+ .pa-banner:before {
54
+ content: "\e924";
55
+ }
56
+
57
+ .pa-blog:before {
58
+ content: "\e925";
59
+ }
60
+
61
+ .pa-button:before {
62
+ content: "\e926";
63
+ }
64
+
65
+ .pa-carousel:before {
66
+ content: "\e927";
67
+ }
68
+
69
+ .pa-contact-form:before {
70
+ content: "\e938";
71
+ }
72
+
73
+ .pa-countdown:before {
74
+ content: "\e933";
75
+ }
76
+
77
+ .pa-counter:before {
78
+ content: "\e934";
79
+ }
80
+
81
+ .pa-dual-header:before {
82
+ content: "\e935";
83
+ }
84
+
85
+ .pa-fancy-text:before {
86
+ content: "\e936";
87
+ }
88
+
89
+ .pa-maps:before {
90
+ content: "\e937";
91
+ }
92
+
93
+ .pa-grid-icon:before {
94
+ content: "\e928";
95
+ }
96
+
97
+ .pa-image-button:before {
98
+ content: "\e929";
99
+ }
100
+
101
+ .pa-image-scroll:before {
102
+ content: "\e923";
103
+ }
104
+
105
+ .pa-image-separator:before {
106
+ content: "\e92a";
107
+ }
108
+
109
+ .pa-lottie-animations:before {
110
+ content: "\e91f";
111
+ }
112
+
113
+ .pa-modal-box:before {
114
+ content: "\e92b";
115
+ }
116
+
117
+ .pa-person:before {
118
+ content: "\e92c";
119
+ }
120
+
121
+ .pa-pricing-table:before {
122
+ content: "\e92d";
123
+ }
124
+
125
+ .pa-progress-bar:before {
126
+ content: "\e92e";
127
+ }
128
+
129
+ .pa-testimonials:before {
130
+ content: "\e92f";
131
+ }
132
+
133
+ .pa-title:before {
134
+ content: "\e930";
135
+ }
136
+
137
+ .pa-vscroll:before {
138
+ content: "\e931";
139
+ }
140
+
141
+ .pa-video-box:before {
142
+ content: "\e932";
143
+ }
144
+
145
+ .pa-icon-list:before {
146
+ content: "\e920";
147
+ }
148
+
149
+ .pa-woo-products:before {
150
+ content: "\e93a";
151
+ }
152
+
153
+ .pa-mega-menu:before {
154
+ content: "\e939";
155
+ }
156
+
157
+ .editor-pa-doc {
158
+ font-style: italic;
159
+ line-height: 1.2;
160
+ font-size: 12px;
161
+ }
162
+
163
+ .editor-pa-spacer {
164
+ margin-top: 1.5em;
165
+ }
166
+
167
+ .elementor-panel .elementor-control-section_pa_docs .elementor-panel-heading-title.elementor-panel-heading-title,
168
+ .elementor-control-raw-html.editor-pa-doc a {
169
+ color: #0f6aa7;
170
+ }
171
+
172
+ .elementor-control-raw-html .premium-notice-bold {
173
+ font-weight: bold;
174
+ }
175
+
176
+ #elementor-panel__editor__help__link[href^="https://premiumaddons.com/"]::before,
177
+ #elementor-panel__editor__help__link[href*="PLLpZVOYpMtTArB4hrlpSnDJB36D2sdoTv"]::before {
178
+ content: "\e91e";
179
+ font-family: "pa-elements" !important;
180
+ font-size: 20px;
181
+ font-style: normal;
182
+ font-weight: normal;
183
+ font-variant: normal;
184
+ text-transform: none;
185
+ line-height: 1;
186
+ -webkit-font-smoothing: antialiased;
187
+ -moz-osx-font-smoothing: grayscale;
188
+ margin: -1px 4px 0;
189
+ }
190
+
191
+ .pa-extension-icon.pa-dash-icon {
192
+ font-size: 11px;
193
+ padding-right: 1px;
194
+ }
195
+
196
+ .elementor-update-preview.editor-pa-preview-update {
197
+ margin: 0;
198
+ margin-bottom: 8px;
199
+ }
200
+
201
+ /*
202
+ * PRO Elements
203
+ */
204
+ .pa-pro-trust-reviews:before {
205
+ content: "\e900";
206
+ }
207
+
208
+ .pa-pro-yelp-reviews:before {
209
+ content: "\e91d";
210
+ }
211
+
212
+ .pa-pro-behance-feed:before {
213
+ content: "\e901";
214
+ }
215
+
216
+ .pa-pro-charts:before {
217
+ content: "\e902";
218
+ }
219
+
220
+ .pa-pro-content-switcher:before {
221
+ content: "\e904";
222
+ }
223
+
224
+ .pa-pro-facebook-feed:before {
225
+ content: "\e905";
226
+ }
227
+
228
+ .pa-pro-facebook-reviews:before {
229
+ content: "\e906";
230
+ }
231
+
232
+ .pa-pro-flip-box:before {
233
+ content: "\e907";
234
+ }
235
+
236
+ .pa-pro-floating-block:before {
237
+ content: "\e906";
238
+ }
239
+
240
+ .pa-pro-google-reviews:before {
241
+ content: "\e908";
242
+ }
243
+
244
+ .pa-pro-horizontal-scroll:before {
245
+ content: "\e90a";
246
+ }
247
+
248
+ .pa-pro-hot-spot:before {
249
+ content: "\e90b";
250
+ }
251
+
252
+ .pa-pro-icon-box:before {
253
+ content: "\e90c";
254
+ }
255
+
256
+ .pa-pro-ihover:before {
257
+ content: "\e90d";
258
+ }
259
+
260
+ .pa-pro-image-accordion:before {
261
+ content: "\e90e";
262
+ }
263
+
264
+ .pa-pro-image-comparison:before {
265
+ content: "\e90f";
266
+ }
267
+
268
+ .pa-pro-image-layers:before {
269
+ content: "\e910";
270
+ }
271
+
272
+ .pa-pro-instagram-feed:before {
273
+ content: "\e911";
274
+ }
275
+
276
+ .pa-pro-magic-section:before {
277
+ content: "\e912";
278
+ }
279
+
280
+ .pa-pro-messenger-chat:before {
281
+ content: "\e913";
282
+ }
283
+
284
+ .pa-pro-multi-scroll:before {
285
+ content: "\e914";
286
+ }
287
+
288
+ .pa-pro-notification-bar:before {
289
+ content: "\e915";
290
+ }
291
+
292
+ .pa-pro-preview-window:before {
293
+ content: "\e916";
294
+ }
295
+
296
+ .pa-pro-separator:before {
297
+ content: "\e917";
298
+ }
299
+
300
+ .pa-pro-table:before {
301
+ content: "\e918";
302
+ }
303
+
304
+ .pa-pro-tabs:before {
305
+ content: "\e919";
306
+ }
307
+
308
+ .pa-pro-twitter-feed:before {
309
+ content: "\e91a";
310
+ }
311
+
312
+ .pa-pro-unfold:before {
313
+ content: "\e91b";
314
+ }
315
+
316
+ .pa-pro-whatsapp:before {
317
+ content: "\e91c";
318
+ }
319
+
320
+ .pa-pro-color-transition:before {
321
+ content: "\e903";
322
+ }
323
+
324
+ .editor-pa-img {
325
+ max-width: 50px;
326
+ max-height: 50px;
327
+ vertical-align: middle;
328
+ }
329
+
330
+ .premium-promotion-btn {
331
+ background-color: #252c59 !important;
332
+ width: 50% !important;
333
+ }
334
+
335
+ .premium-promotion-pro-btn {
336
+ display: inline-block;
337
+ text-align: center;
338
+ background-color: #f47216;
339
+ color: #fff;
340
+ line-height: normal;
341
+ }
342
+
343
+ .premium-promotion-pro-btn:hover {
344
+ color: #fff;
345
+ }
346
+
347
+ .premium-promotion-dialog .eicon-pro-icon {
348
+ color: #f47216 !important;
349
+ margin: 0 6px !important;
350
+ }
351
+
352
+ .premium-promotion-dialog .dialog-button {
353
+ font-size: 10px !important;
354
+ letter-spacing: 0.3px;
355
+ width: calc(50% - 5px) !important;
356
+ }
357
+
358
+ html:not([dir="rtl"]) .premium-promotion-btn {
359
+ margin-right: 5px;
360
+ }
361
+
362
+ html:not([dir="rtl"]) .premium-promotion-pro-btn {
363
+ margin-left: 5px;
364
+ }
365
+
366
+ [dir="rtl"] .premium-promotion-pro-btn {
367
+ margin-right: 5px;
368
+ }
369
+
370
+ [dir="rtl"] .premium-promotion-btn {
371
+ margin-left: 5px;
372
+ }
373
+
374
+ .elementor-panel .premium-promotion-element>.elementor-element>.eicon-lock {
375
+ right: auto;
376
+ left: 0.6em;
377
+ }
378
+
379
+ .elementor-editor-active .tipsy-inner {
380
+ line-height: 15px;
381
+ }
382
+
383
+ .papro-upgrade-notice {
384
+ font-size: 12px;
385
+ font-weight: 300;
386
+ font-style: italic;
387
+ line-height: 1.4;
388
+ }
389
+
390
+ /* Fix floating effect slider control number overlap issue */
391
+ .elementor-slider .noUi-base .noUi-handle-upper .noUi-tooltip {
392
+ top: -100%;
393
+ }
394
+
395
+
396
+ .papro-btn-block {
397
+ width: 100% !important;
398
+ margin: -10px 0 10px;
399
+
400
+ }
401
+
402
+ .elementor-template-pa-live-editor-modal-container {
403
+ display: flex;
404
+ }
405
+
406
+ .premium-live-editor-iframe-modal {
407
+ display: none;
408
+ }
409
+
410
+ .premium-dynamic-content-modal {
411
+ -js-display: flex;
412
+ display: -webkit-box;
413
+ display: -webkit-flex;
414
+ display: -moz-box;
415
+ display: -ms-flexbox;
416
+ display: flex;
417
+ }
418
+
419
+ .premium-live-editor-iframe-modal .elementor-templates-modal__header__logo__title {
420
+ margin-right: 35px;
421
+ }
422
+
423
+ .premium-live-editor-iframe-modal .dialog-lightbox-header {
424
+ background-color: #f1f3f5;
425
+ }
426
+
427
+ .premium-live-editor-iframe-modal .dialog-message {
428
+ position: relative;
429
+ }
430
+
431
+ .premium-live-editor-iframe-modal iframe {
432
+ position: absolute;
433
+ top: 0;
434
+ bottom: 0;
435
+ right: 0;
436
+ left: 0;
437
+ width: 100%;
438
+ height: 100%;
439
+ }
440
+
441
+ /* .premium-live-editor-iframe-modal .dialog-widget-content {
442
+ margin-top: 10px;
443
+ } */
444
+
445
+ .premium-dynamic-content-modal .dialog-widget-content {
446
+ position: static !important;
447
+ max-width: 90% !important;
448
+ border-radius: 0;
449
+ /* margin-top: 20px !important;
450
+ margin-bottom: 20px !important; */
451
+ }
452
+
453
+ .elementor-device-desktop #elementor-preview-responsive-wrapper {
454
+ min-width: auto !important;
455
+ }
456
+
457
+ .premium-dynamic-content-modal .dialog-message {
458
+ overflow: unset !important;
459
+ }
460
+
461
+ .premium-live-editor-iframe-modal {
462
+ display: none;
463
+ }
464
+
465
+ .premium-live-editor-iframe-modal .elementor-templates-modal__header__close {
466
+ margin-left: 15px;
467
+ }
468
+
469
+ /* .premium-live-editor-iframe-modal .dialog-widget-content {
470
+ position: static !important;
471
+ margin-top: 10px;
472
+ } */
473
+
474
+ #pa-live-editor-logo .premium-template-modal-header-logo-icon img {
475
+ width: 30px;
476
+ height: 30px;
477
+ }
478
+
479
+ #premium-live-temp-title {
480
+ width: 400px;
481
+ border-radius: 3px 0 0 3px;
482
+ }
483
+
484
+ .premium-live-temp-notice {
485
+ margin: 0 10px;
486
+ font-style: italic;
487
+ font-weight: normal;
488
+ text-transform: none;
489
+ }
490
+
491
+ #pa-insert-live-temp {
492
+ white-space: nowrap;
493
+ border-radius: 0 3px 3px 0;
494
+ }
495
+
496
+ #pa-insert-live-temp,
497
+ #premium-live-temp-title {
498
+ padding: 8px 10px;
499
+ }
500
+
501
+ .premium-live-editor-title {
502
+ display: none;
503
+ -webkit-box-align: center;
504
+ -webkit-align-items: center;
505
+ -moz-box-align: center;
506
+ -ms-flex-align: center;
507
+ align-items: center;
508
+ }
509
+
510
+ .premium-modal-expanded .dialog-lightbox-widget-content {
511
+ max-width: 100% !important;
512
+ margin: 0 !important;
513
+ }
514
+
515
+ .premium-modal-expanded .dialog-lightbox-message {
516
+ max-height: 100vh;
517
+ }
518
+
519
+ .premium-modal-expanded #pa-live-editor-control-iframe {
520
+ height: calc(100vh - 50px);
521
+ }
522
+
523
+ .premium-live-temp-title.control-hidden {
524
+ display: none;
525
+ }
526
+
527
+ .premium-live-temp-label label {
528
+ font-weight: 900;
529
  }
assets/editor/fonts/pa-elements.eot CHANGED
Binary file
assets/editor/fonts/pa-elements.svg CHANGED
@@ -64,5 +64,6 @@
64
  <glyph unicode="&#xe936;" glyph-name="pa-fancy-text" d="M860.16 161.28c-26.065 0-50.269 11.171-65.164 31.651l-9.309 11.171-9.309-11.171c-16.756-20.48-40.96-31.651-65.164-31.651-7.447 0-13.033 5.585-13.033 13.033s5.585 13.033 13.033 13.033c33.513 0 61.44 31.651 61.44 70.749v176.873h-37.236c-7.447 0-13.033 5.585-13.033 13.033s5.585 13.033 13.033 13.033h37.236v176.873c0 39.098-27.927 70.749-61.44 70.749-7.447 0-13.033 5.585-13.033 13.033s5.585 13.033 13.033 13.033c26.065 0 50.269-11.171 65.164-31.651l9.309-11.171 9.309 11.171c16.756 20.48 40.96 31.651 65.164 31.651 7.447 0 13.033-5.585 13.033-13.033s-5.585-13.033-13.033-13.033c-33.513 0-61.44-31.651-61.44-70.749v-176.873h37.236c7.447 0 13.033-5.585 13.033-13.033s-5.585-13.033-13.033-13.033h-37.236v-176.873c0-39.098 27.927-70.749 61.44-70.749 7.447 0 13.033-5.585 13.033-13.033s-7.447-13.033-13.033-13.033zM342.575 647.215c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c9.309 0 14.895-5.585 14.895-13.033zM342.575 254.371c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c9.309 1.862 14.895-3.724 14.895-13.033zM616.262 254.371c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c7.447 1.862 14.895-3.724 14.895-13.033zM1012.829 367.942v-78.196c1.862-26.065-20.48-48.407-46.545-48.407-7.447 0-14.895 5.585-14.895 13.033 0 3.724 1.862 7.447 3.724 11.171 1.862 1.862 5.585 3.724 11.171 3.724 11.171 0 20.48 7.447 20.48 20.48v78.196c0 7.447 7.447 13.033 13.033 13.033 7.447 0 13.033-5.585 13.033-13.033zM1001.658 522.473c-7.447 0-13.033 5.585-13.033 13.033v78.196c0 11.171-9.309 18.618-20.48 20.48-3.724 0-7.447 1.862-11.171 3.724s-3.724 3.724-3.724 7.447c0 7.447 7.447 13.033 13.033 13.033 26.065 0 48.407-20.48 48.407-46.545v-78.196c1.862-5.585-5.585-11.171-13.033-11.171zM616.262 647.215c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c7.447 0 14.895-5.585 14.895-13.033zM72.611 647.215c0-3.724-1.862-7.447-3.724-11.171s-7.447-3.724-11.171-3.724c-11.171 0-20.48-7.447-20.48-18.618v-78.196c0-7.447-7.447-13.033-14.895-13.033s-13.033 5.585-13.033 13.033v78.196c0 26.065 22.342 46.545 48.407 46.545 7.447 1.862 14.895-3.724 14.895-13.033zM70.749 254.371c0-5.585-5.585-13.033-13.033-13.033-26.065 0-48.407 22.342-48.407 46.545v78.196c0 7.447 7.447 13.033 13.033 13.033 7.447 0 13.033-5.585 13.033-13.033v-78.196c0-11.171 9.309-18.618 20.48-20.48 3.724 0 7.447-1.862 11.171-3.724 1.862-1.862 3.724-5.585 3.724-9.309z" />
65
  <glyph unicode="&#xe937;" glyph-name="pa-google-maps" d="M666.531 863.185v0l-20.48 7.447-20.48-7.447-249.484-80.058-292.305 93.091v-759.622l269.964-83.782 22.342-7.447 22.342 7.447 249.484 80.058 292.305-93.091v757.76l-273.687 85.644zM353.745 75.636l-227.142 74.473v670.255l227.142-74.473v-670.255zM396.567 745.891l227.142 72.611v-668.393l-227.142-74.473v670.255zM895.535 75.636l-227.142 72.611v670.255l227.142-72.611v-670.255zM666.531 863.185v0 0 0zM623.709 863.185v0 0 0z" />
66
  <glyph unicode="&#xe938;" glyph-name="pa-contact-form" d="M1012.829 526.196c0 1.862-1.862 3.724-1.862 5.585s-1.862 3.724-3.724 3.724c-1.862 1.862-3.724 3.724-5.585 3.724v0l-161.978 83.782v85.644c0 1.862 0 3.724 0 3.724 0 3.724-3.724 9.309-5.585 11.171l-202.938 202.938c0 0 0 1.862-1.862 1.862-1.862 1.862-1.862 1.862-3.724 1.862-3.724 1.862-5.585 1.862-9.309 1.862h-411.462c-11.171 0-22.342-9.309-22.342-22.342v-288.582l-161.978-85.644-1.862-1.862c0 0 0 0-1.862-1.862s-1.862-3.724-3.724-3.724c0-1.862-1.862-3.724-1.862-3.724v0-1.862c0-1.862 0-3.724 0-3.724v-536.204c0-11.171 9.309-20.48 20.48-20.48h960.698c11.171 0 20.48 9.309 20.48 20.48v538.065c0 1.862 0 3.724 0 5.585zM839.68 574.604l104.262-53.993-104.262-44.684v98.676zM634.88 863.185l134.051-134.051h-134.051v134.051zM227.142 892.975h368.64v-184.32c0-11.171 9.309-22.342 22.342-22.342h182.458v-229.004l-286.72-122.88-284.858 124.742v433.804zM184.32 576.465v-100.538l-104.262 46.545 104.262 53.993zM971.869 6.749h-919.738v482.211l450.56-197.353c5.585-1.862 11.171-1.862 16.756 0l454.284 197.353v-482.211z" />
67
- <glyph unicode="&#xe939;" glyph-name="pa-woo-products-listing" d="M999.86 787.283c-21.127 27.308-53.905 44.72-90.749 44.72-0.137 0-0.274 0-0.41-0.001h-728.705l-27.159 108.578c-2.858 11.239-12.887 19.42-24.827 19.42-0.004 0-0.009 0-0.013 0h-102.397c-14.138 0-25.6-11.461-25.6-25.6s11.461-25.6 25.6-25.6v0h82.398l195.416-783.985c-28.649-18.469-47.35-50.216-47.35-86.331 0-56.542 45.836-102.378 102.378-102.378 47.42 0 87.31 32.24 98.947 75.997l0.162 0.715h236.875c11.775-44.516 51.691-76.799 99.146-76.799 56.553 0 102.398 45.845 102.398 102.398s-45.845 102.398-102.398 102.398c-47.456 0-87.372-32.282-98.985-76.084l-0.161-0.714h-236.875c-11.832 44.485-51.72 76.738-99.151 76.798h-0.007c-0.301 0.006-0.657 0.009-1.013 0.009-1.812 0-3.605-0.083-5.374-0.246l0.227 0.017-25.58 102.618h488.99c53.327 0.008 98.189 36.242 111.315 85.433l0.183 0.805 93.098 358.393c2.392 8.737 3.767 18.769 3.767 29.122 0 26.623-9.090 51.123-24.335 70.566l0.188-0.249zM793.585 89.617c28.276 0 51.199-22.923 51.199-51.199s-22.923-51.199-51.199-51.199c-28.276 0-51.199 22.923-51.199 51.199v0c0 28.276 22.923 51.199 51.199 51.199v0zM409.592 38.418c0-28.276-22.923-51.199-51.199-51.199s-51.199 22.923-51.199 51.199c0 28.276 22.923 51.199 51.199 51.199v0c28.276 0 51.199-22.923 51.199-51.199v0zM877.583 342.412c-7.359-27.823-32.307-47.999-61.967-47.999-0.011 0-0.023 0-0.034 0h-500.908l-31.999 127.998h615.708zM911.582 473.689h-641.587l-31.999 127.998h706.946zM970.561 700.805l-12.44-47.999h-732.766l-31.999 127.998h715.366c0.010 0 0.021 0 0.032 0 35.346 0 63.999-28.653 63.999-63.999 0-5.686-0.741-11.198-2.133-16.446l0.101 0.447z" />
 
68
  </font></defs></svg>
64
  <glyph unicode="&#xe936;" glyph-name="pa-fancy-text" d="M860.16 161.28c-26.065 0-50.269 11.171-65.164 31.651l-9.309 11.171-9.309-11.171c-16.756-20.48-40.96-31.651-65.164-31.651-7.447 0-13.033 5.585-13.033 13.033s5.585 13.033 13.033 13.033c33.513 0 61.44 31.651 61.44 70.749v176.873h-37.236c-7.447 0-13.033 5.585-13.033 13.033s5.585 13.033 13.033 13.033h37.236v176.873c0 39.098-27.927 70.749-61.44 70.749-7.447 0-13.033 5.585-13.033 13.033s5.585 13.033 13.033 13.033c26.065 0 50.269-11.171 65.164-31.651l9.309-11.171 9.309 11.171c16.756 20.48 40.96 31.651 65.164 31.651 7.447 0 13.033-5.585 13.033-13.033s-5.585-13.033-13.033-13.033c-33.513 0-61.44-31.651-61.44-70.749v-176.873h37.236c7.447 0 13.033-5.585 13.033-13.033s-5.585-13.033-13.033-13.033h-37.236v-176.873c0-39.098 27.927-70.749 61.44-70.749 7.447 0 13.033-5.585 13.033-13.033s-7.447-13.033-13.033-13.033zM342.575 647.215c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c9.309 0 14.895-5.585 14.895-13.033zM342.575 254.371c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c9.309 1.862 14.895-3.724 14.895-13.033zM616.262 254.371c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c7.447 1.862 14.895-3.724 14.895-13.033zM1012.829 367.942v-78.196c1.862-26.065-20.48-48.407-46.545-48.407-7.447 0-14.895 5.585-14.895 13.033 0 3.724 1.862 7.447 3.724 11.171 1.862 1.862 5.585 3.724 11.171 3.724 11.171 0 20.48 7.447 20.48 20.48v78.196c0 7.447 7.447 13.033 13.033 13.033 7.447 0 13.033-5.585 13.033-13.033zM1001.658 522.473c-7.447 0-13.033 5.585-13.033 13.033v78.196c0 11.171-9.309 18.618-20.48 20.48-3.724 0-7.447 1.862-11.171 3.724s-3.724 3.724-3.724 7.447c0 7.447 7.447 13.033 13.033 13.033 26.065 0 48.407-20.48 48.407-46.545v-78.196c1.862-5.585-5.585-11.171-13.033-11.171zM616.262 647.215c0-7.447-5.585-13.033-13.033-13.033h-137.775c-7.447 0-13.033 5.585-13.033 13.033s7.447 13.033 13.033 13.033h135.913c7.447 0 14.895-5.585 14.895-13.033zM72.611 647.215c0-3.724-1.862-7.447-3.724-11.171s-7.447-3.724-11.171-3.724c-11.171 0-20.48-7.447-20.48-18.618v-78.196c0-7.447-7.447-13.033-14.895-13.033s-13.033 5.585-13.033 13.033v78.196c0 26.065 22.342 46.545 48.407 46.545 7.447 1.862 14.895-3.724 14.895-13.033zM70.749 254.371c0-5.585-5.585-13.033-13.033-13.033-26.065 0-48.407 22.342-48.407 46.545v78.196c0 7.447 7.447 13.033 13.033 13.033 7.447 0 13.033-5.585 13.033-13.033v-78.196c0-11.171 9.309-18.618 20.48-20.48 3.724 0 7.447-1.862 11.171-3.724 1.862-1.862 3.724-5.585 3.724-9.309z" />
65
  <glyph unicode="&#xe937;" glyph-name="pa-google-maps" d="M666.531 863.185v0l-20.48 7.447-20.48-7.447-249.484-80.058-292.305 93.091v-759.622l269.964-83.782 22.342-7.447 22.342 7.447 249.484 80.058 292.305-93.091v757.76l-273.687 85.644zM353.745 75.636l-227.142 74.473v670.255l227.142-74.473v-670.255zM396.567 745.891l227.142 72.611v-668.393l-227.142-74.473v670.255zM895.535 75.636l-227.142 72.611v670.255l227.142-72.611v-670.255zM666.531 863.185v0 0 0zM623.709 863.185v0 0 0z" />
66
  <glyph unicode="&#xe938;" glyph-name="pa-contact-form" d="M1012.829 526.196c0 1.862-1.862 3.724-1.862 5.585s-1.862 3.724-3.724 3.724c-1.862 1.862-3.724 3.724-5.585 3.724v0l-161.978 83.782v85.644c0 1.862 0 3.724 0 3.724 0 3.724-3.724 9.309-5.585 11.171l-202.938 202.938c0 0 0 1.862-1.862 1.862-1.862 1.862-1.862 1.862-3.724 1.862-3.724 1.862-5.585 1.862-9.309 1.862h-411.462c-11.171 0-22.342-9.309-22.342-22.342v-288.582l-161.978-85.644-1.862-1.862c0 0 0 0-1.862-1.862s-1.862-3.724-3.724-3.724c0-1.862-1.862-3.724-1.862-3.724v0-1.862c0-1.862 0-3.724 0-3.724v-536.204c0-11.171 9.309-20.48 20.48-20.48h960.698c11.171 0 20.48 9.309 20.48 20.48v538.065c0 1.862 0 3.724 0 5.585zM839.68 574.604l104.262-53.993-104.262-44.684v98.676zM634.88 863.185l134.051-134.051h-134.051v134.051zM227.142 892.975h368.64v-184.32c0-11.171 9.309-22.342 22.342-22.342h182.458v-229.004l-286.72-122.88-284.858 124.742v433.804zM184.32 576.465v-100.538l-104.262 46.545 104.262 53.993zM971.869 6.749h-919.738v482.211l450.56-197.353c5.585-1.862 11.171-1.862 16.756 0l454.284 197.353v-482.211z" />
67
+ <glyph unicode="&#xe939;" glyph-name="mega-menu-icon" horiz-adv-x="1025" d="M21.1 960h982.854c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-982.854c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM1025.055 938.9v-190.325c0-11.653-9.447-21.1-21.1-21.1s-21.1 9.447-21.1 21.1v190.325c0 11.653 9.447 21.1 21.1 21.1s21.1-9.447 21.1-21.1zM42.201 938.9v-190.325c0-11.653-9.447-21.1-21.1-21.1s-21.1 9.447-21.1 21.1v190.325c0 11.653 9.447 21.1 21.1 21.1s21.1-9.447 21.1-21.1zM21.1 769.675h982.854c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-982.854c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM345.835 596.441h332.542c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-332.542c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM395.843 864.837h215.646c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-215.646c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM703.486 864.837h215.646c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-215.646c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM87.988 864.837h215.646c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-215.646c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM345.835 371.3h332.542c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-332.542c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM345.835 145.948h332.542c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-332.542c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1zM804.767 743.299v-785.988c0-11.653-9.447-21.1-21.1-21.1s-21.1 9.447-21.1 21.1v785.988c0 11.653 9.447 21.1 21.1 21.1s21.1-9.447 21.1-21.1zM262.066 743.088v-785.988c0-11.653-9.447-21.1-21.1-21.1s-21.1 9.447-21.1 21.1v785.988c0 11.653 9.447 21.1 21.1 21.1s21.1-9.447 21.1-21.1zM240.966-21.799h542.701c11.653 0 21.1-9.447 21.1-21.1s-9.447-21.1-21.1-21.1h-542.701c-11.653 0-21.1 9.447-21.1 21.1s9.447 21.1 21.1 21.1z" />
68
+ <glyph unicode="&#xe93a;" glyph-name="woo-products" d="M999.669 787.147c-21.087 27.383-53.882 44.854-90.758 44.854-0.151 0-0.301 0-0.452-0.001h-728.625l-26.869 108.536c-2.926 11.257-12.987 19.439-24.962 19.464h-102.403c-14.138 0-25.6-11.462-25.6-25.6s11.462-25.6 25.6-25.6v0h82.512l195.279-783.868c-28.736-18.459-47.501-50.258-47.501-86.44 0-56.554 45.846-102.4 102.4-102.4 47.423 0 87.317 32.237 98.963 75.993l0.162 0.715h236.747c11.775-44.517 51.692-76.8 99.148-76.8 56.554 0 102.4 45.846 102.4 102.4s-45.846 102.4-102.4 102.4c-47.457 0-87.373-32.283-98.987-76.086l-0.161-0.714h-236.536c-11.689 44.68-51.655 77.13-99.216 77.223h-5.089l-25.6 102.612h487.881c53.283 0.024 98.113 36.185 111.313 85.303l0.185 0.807 92.879 358.4c2.386 8.685 3.758 18.657 3.758 28.95 0 26.46-9.062 50.803-24.252 70.096l0.184-0.242zM793.6 88.965c28.277 0 51.2-22.923 51.2-51.2s-22.923-51.2-51.2-51.2c-28.277 0-51.2 22.923-51.2 51.2v0 0c-0.003 0.19-0.004 0.414-0.004 0.639 0 28.172 22.66 51.052 50.747 51.407h0.034zM409.6 38.612c0-28.277-22.923-51.2-51.2-51.2s-51.2 22.923-51.2 51.2c0 28.277 22.923 51.2 51.2 51.2v0 0c28.181-0.237 50.963-23.019 51.2-51.177v-0.023zM877.593 342.638c-7.148-27.808-31.994-48.028-61.564-48.028-0.15 0-0.3 0.001-0.449 0.002h-500.975l-31.947 128h615.669zM911.445 473.812h-641.481l-31.947 126.942h707.702zM970.473 700.826l-12.483-48.026h-731.61l-32.159 126.942h715.531c35.054 0 63.471-28.417 63.471-63.471v0c0.001-0.131 0.002-0.285 0.002-0.44 0-5.566-0.773-10.951-2.218-16.054l0.1 0.414z" />
69
  </font></defs></svg>
assets/editor/fonts/pa-elements.ttf CHANGED
Binary file
assets/editor/fonts/pa-elements.woff CHANGED
Binary file
assets/editor/js/live-editor.js CHANGED
@@ -186,8 +186,6 @@
186
  'data-premium-temp-id': '',
187
  'src': ''
188
  });
189
- // $(".premium-live-editor-iframe-modal #pa-live-editor-control-iframe").attr('data-premium-temp-id', '');
190
- // $(".premium-live-editor-iframe-modal #pa-live-editor-control-iframe").attr('src', '');
191
  }
192
 
193
  function checkLiveTemplateControl(sectionName, elementorEditor) {
186
  'data-premium-temp-id': '',
187
  'src': ''
188
  });
 
 
189
  }
190
 
191
  function checkLiveTemplateControl(sectionName, elementorEditor) {
assets/editor/js/premium-cross-cp.js CHANGED
@@ -1,159 +1,159 @@
1
- (function () {
2
-
3
- function a(b) {
4
- return b.forEach(function (b) {
5
- b.id = elementorCommon.helpers.getUniqueId(), 0 < b.elements.length && a(b.elements)
6
- }), b
7
- }
8
- PACopyPasteHandler = {
9
-
10
- b: function (b, c) {
11
- var d = c,
12
- e = c.model.get("elType"),
13
- f = b.elecode.elType,
14
- g = b.elecode,
15
- h = JSON.stringify(g);
16
-
17
- var i = /\.(jpg|png|jpeg|gif|svg)/gi.test(h),
18
- j = {
19
- elType: f,
20
- settings: g.settings
21
- },
22
- k = null,
23
- l = {
24
- index: 0
25
- };
26
-
27
- switch (f) {
28
- case "section":
29
- case "container":
30
- j.elements = a(g.elements), k = elementor.getPreviewContainer();
31
- break;
32
- case "column":
33
- j.elements = a(g.elements);
34
- ("section" === e || "container" === e) ? k = d.getContainer() : "column" === e ? (k = d.getContainer().parent, l.index = d.getOption("_index") + 1) : "widget" === e ? (k = d.getContainer().parent.parent, l.index = d.getContainer().parent.view.getOption("_index") + 1) : void 0;
35
- break;
36
- case "widget":
37
- j.widgetType = b.eletype, k = d.getContainer();
38
- ("section" === e) ? k = d.children.findByIndex(0).getContainer() : "column" === e ? k = d.getContainer() : "widget" === e ? (k = d.getContainer().parent, e.index = d.getOption("_index") + 1, l.index = d.getOption("_index") + 1) : void 0;
39
- }
40
- var m = $e.run("document/elements/create", {
41
- model: j,
42
- container: k,
43
- options: l
44
- });
45
- i && jQuery.ajax({
46
- url: premium_cross_cp.ajax_url,
47
- method: "POST",
48
- data: {
49
- nonce: premium_cross_cp.nonce,
50
- action: "premium_cross_cp_import",
51
- copy_content: h
52
- }
53
- }).done(function (a) {
54
- if (a.success) {
55
- var b = a.data[0];
56
- j.elType = b.elType, j.settings = b.settings, "widget" === j.elType ? j.widgetType = b.widgetType : j.elements = b.elements, $e.run("document/elements/delete", {
57
- container: m
58
- }), $e.run("document/elements/create", {
59
- model: j,
60
- container: k,
61
- options: l
62
- })
63
- }
64
- })
65
- },
66
- pasteAll: function (allSections) {
67
- jQuery.ajax({
68
- url: premium_cross_cp.ajax_url,
69
- method: "POST",
70
- data: {
71
- nonce: premium_cross_cp.nonce,
72
- action: "premium_cross_cp_import",
73
- copy_content: allSections
74
- },
75
- }).done(function (e) {
76
- if (e.success) {
77
- var data = e.data[0];
78
- if (premium_cross_cp.elementorCompatible) {
79
- elementor.sections.currentView.addChildModel(data)
80
- } else {
81
- elementor.previewView.addChildModel(data)
82
- }
83
- elementor.notifications.showToast({
84
- message: elementor.translate('Content Pasted. Have Fun ;)')
85
- });
86
-
87
- }
88
- }).fail(function () {
89
- elementor.notifications.showToast({
90
- message: elementor.translate('Something went wrong!')
91
- });
92
- })
93
- }
94
-
95
- }
96
-
97
- xdLocalStorage.init({
98
- iframeUrl: "https://leap13.github.io/pa-cdcp/",
99
- initCallback: function () { }
100
- });
101
- var c = ["section", "column", "widget", "container"],
102
- d = [];
103
- c.forEach(function (a, e) {
104
- elementor.hooks.addFilter("elements/" + c[e] + "/contextMenuGroups", function (a, f) {
105
- return d.push(f), a.push({
106
- name: "premium_" + c[e],
107
- actions: [{
108
- name: "premium_addons_copy",
109
- title: "PA | Copy Element",
110
- icon: "pa-dash-icon",
111
- callback: function () {
112
- var a = {};
113
- a.eletype = "widget" == c[e] ? f.model.get("widgetType") : null, a.elecode = f.model.toJSON(), xdLocalStorage.setItem("premium-c-p-element", JSON.stringify(a)), console.log(a)
114
- }
115
- }, {
116
- name: "premium_addons_paste",
117
- title: "PA | Paste Element",
118
- icon: "pa-dash-icon",
119
- callback: function () {
120
- xdLocalStorage.getItem("premium-c-p-element", function (a) {
121
- PACopyPasteHandler.b(JSON.parse(a.value), f)
122
- })
123
- }
124
- },
125
- {
126
- name: "premium_addons_copy_all",
127
- title: "PA | Copy All Content",
128
- icon: "pa-dash-icon",
129
- callback: function () {
130
- var copiedSections = Object.values(elementor.getPreviewView().children._views).map(function (e) {
131
- return e.getContainer();
132
- });
133
- var allSections = copiedSections.map(function (e) {
134
- return e.model.toJSON();
135
- });
136
- xdLocalStorage.setItem('premium-c-p-all', JSON.stringify(allSections), function (a) {
137
- elementor.notifications.showToast({
138
- message: elementor.translate('Copied')
139
- });
140
- });
141
- }
142
- },
143
- {
144
- name: "premium_addons_paste_all",
145
- title: "PA | Paste All Content",
146
- icon: "pa-dash-icon",
147
- callback: function () {
148
- var allSections = '';
149
- xdLocalStorage.getItem('premium-c-p-all', function (a) {
150
- allSections = JSON.parse(a.value);
151
- PACopyPasteHandler.pasteAll(JSON.stringify(allSections));
152
- });
153
- }
154
- },
155
- ]
156
- }), a
157
- })
158
- })
159
  })(jQuery);
1
+ (function () {
2
+
3
+ function a(b) {
4
+ return b.forEach(function (b) {
5
+ b.id = elementorCommon.helpers.getUniqueId(), 0 < b.elements.length && a(b.elements)
6
+ }), b
7
+ }
8
+ PACopyPasteHandler = {
9
+
10
+ b: function (b, c) {
11
+ var d = c,
12
+ e = c.model.get("elType"),
13
+ f = b.elecode.elType,
14
+ g = b.elecode,
15
+ h = JSON.stringify(g);
16
+
17
+ var i = /\.(jpg|png|jpeg|gif|svg)/gi.test(h),
18
+ j = {
19
+ elType: f,
20
+ settings: g.settings
21
+ },
22
+ k = null,
23
+ l = {
24
+ index: 0
25
+ };
26
+
27
+ switch (f) {
28
+ case "section":
29
+ case "container":
30
+ j.elements = a(g.elements), k = elementor.getPreviewContainer();
31
+ break;
32
+ case "column":
33
+ j.elements = a(g.elements);
34
+ ("section" === e || "container" === e) ? k = d.getContainer() : "column" === e ? (k = d.getContainer().parent, l.index = d.getOption("_index") + 1) : "widget" === e ? (k = d.getContainer().parent.parent, l.index = d.getContainer().parent.view.getOption("_index") + 1) : void 0;
35
+ break;
36
+ case "widget":
37
+ j.widgetType = b.eletype, k = d.getContainer();
38
+ ("section" === e) ? k = d.children.findByIndex(0).getContainer() : "column" === e ? k = d.getContainer() : "widget" === e ? (k = d.getContainer().parent, e.index = d.getOption("_index") + 1, l.index = d.getOption("_index") + 1) : void 0;
39
+ }
40
+ var m = $e.run("document/elements/create", {
41
+ model: j,
42
+ container: k,
43
+ options: l
44
+ });
45
+ i && jQuery.ajax({
46
+ url: premium_cross_cp.ajax_url,
47
+ method: "POST",
48
+ data: {
49
+ nonce: premium_cross_cp.nonce,
50
+ action: "premium_cross_cp_import",
51
+ copy_content: h
52
+ }
53
+ }).done(function (a) {
54
+ if (a.success) {
55
+ var b = a.data[0];
56
+ j.elType = b.elType, j.settings = b.settings, "widget" === j.elType ? j.widgetType = b.widgetType : j.elements = b.elements, $e.run("document/elements/delete", {
57
+ container: m
58
+ }), $e.run("document/elements/create", {
59
+ model: j,
60
+ container: k,
61
+ options: l
62
+ })
63
+ }
64
+ })
65
+ },
66
+ pasteAll: function (allSections) {
67
+ jQuery.ajax({
68
+ url: premium_cross_cp.ajax_url,
69
+ method: "POST",
70
+ data: {
71
+ nonce: premium_cross_cp.nonce,
72
+ action: "premium_cross_cp_import",
73
+ copy_content: allSections
74
+ },
75
+ }).done(function (e) {
76
+ if (e.success) {
77
+ var data = e.data[0];
78
+ if (premium_cross_cp.elementorCompatible) {
79
+ elementor.sections.currentView.addChildModel(data)
80
+ } else {
81
+ elementor.previewView.addChildModel(data)
82
+ }
83
+ elementor.notifications.showToast({
84
+ message: elementor.translate('Content Pasted. Have Fun ;)')
85
+ });
86
+
87
+ }
88
+ }).fail(function () {
89
+ elementor.notifications.showToast({
90
+ message: elementor.translate('Something went wrong!')
91
+ });
92
+ })
93
+ }
94
+
95
+ }
96
+
97
+ xdLocalStorage.init({
98
+ iframeUrl: "https://leap13.github.io/pa-cdcp/",
99
+ initCallback: function () { }
100
+ });
101
+ var c = ["section", "column", "widget", "container"],
102
+ d = [];
103
+ c.forEach(function (a, e) {
104
+ elementor.hooks.addFilter("elements/" + c[e] + "/contextMenuGroups", function (a, f) {
105
+ return d.push(f), a.push({
106
+ name: "premium_" + c[e],
107
+ actions: [{
108
+ name: "premium_addons_copy",
109
+ title: "PA | Copy Element",
110
+ icon: "pa-dash-icon",
111
+ callback: function () {
112
+ var a = {};
113
+ a.eletype = "widget" == c[e] ? f.model.get("widgetType") : null, a.elecode = f.model.toJSON(), xdLocalStorage.setItem("premium-c-p-element", JSON.stringify(a)), console.log(a)
114
+ }
115
+ }, {
116
+ name: "premium_addons_paste",
117
+ title: "PA | Paste Element",
118
+ icon: "pa-dash-icon",
119
+ callback: function () {
120
+ xdLocalStorage.getItem("premium-c-p-element", function (a) {
121
+ PACopyPasteHandler.b(JSON.parse(a.value), f)
122
+ })
123
+ }
124
+ },
125
+ {
126
+ name: "premium_addons_copy_all",
127
+ title: "PA | Copy All Content",
128
+ icon: "pa-dash-icon",
129
+ callback: function () {
130
+ var copiedSections = Object.values(elementor.getPreviewView().children._views).map(function (e) {
131
+ return e.getContainer();
132
+ });
133
+ var allSections = copiedSections.map(function (e) {
134
+ return e.model.toJSON();
135
+ });
136
+ xdLocalStorage.setItem('premium-c-p-all', JSON.stringify(allSections), function (a) {
137
+ elementor.notifications.showToast({
138
+ message: elementor.translate('Copied')
139
+ });
140
+ });
141
+ }
142
+ },
143
+ {
144
+ name: "premium_addons_paste_all",
145
+ title: "PA | Paste All Content",
146
+ icon: "pa-dash-icon",
147
+ callback: function () {
148
+ var allSections = '';
149
+ xdLocalStorage.getItem('premium-c-p-all', function (a) {
150
+ allSections = JSON.parse(a.value);
151
+ PACopyPasteHandler.pasteAll(JSON.stringify(allSections));
152
+ });
153
+ }
154
+ },
155
+ ]
156
+ }), a
157
+ })
158
+ })
159
  })(jQuery);
assets/frontend/css/common.css CHANGED
@@ -1,257 +1,257 @@
1
  /*
2
  * Common Title/Dual Heading
3
- */
4
- .premium-title-bg-text:before {
5
- position: absolute;
6
- content: attr(data-background);
7
- top: 0;
8
- left: 0;
9
- text-align: left; }
10
-
11
- .premium-bg-text-yes .elementor-widget-container:before {
12
- position: absolute;
13
- top: 0;
14
- left: 0;
15
- text-align: left; }
16
-
17
- .premium-mask-yes .premium-dual-header-first-clip .premium-dual-header-first-span .premium-mask-span,
18
- .premium-mask-yes .premium-dual-header-second-clip .premium-mask-span {
19
- background: inherit; }
20
-
21
- .premium-mask-yes .premium-mask-span {
22
- position: relative;
23
- overflow: hidden;
24
- -js-display: inline-flex !important;
25
- display: -webkit-inline-box !important;
26
- display: -webkit-inline-flex !important;
27
- display: -moz-inline-box !important;
28
- display: -ms-inline-flexbox !important;
29
- display: inline-flex !important; }
30
- .premium-mask-yes .premium-mask-span::after {
31
- content: "";
32
- position: absolute;
33
- top: 0;
34
- right: 0px;
35
- width: 100%;
36
- height: 100%;
37
- background-color: currentColor;
38
- -webkit-backface-visibility: visible;
39
- backface-visibility: visible; }
40
-
41
- .premium-mask-active.premium-mask-tr .premium-mask-span::after {
42
- -webkit-animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
43
- animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
44
- -webkit-transform: translateX(-103%);
45
- -ms-transform: translateX(-103%);
46
- transform: translateX(-103%); }
47
-
48
- .premium-mask-active.premium-mask-tl .premium-mask-span::after {
49
- -webkit-animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
50
- animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
51
- -webkit-transform: translateX(103%);
52
- -ms-transform: translateX(103%);
53
- transform: translateX(103%); }
54
-
55
- .premium-mask-active.premium-mask-tb .premium-mask-span::after {
56
- -webkit-animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
57
- animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
58
- -webkit-transform: translateY(-103%);
59
- -ms-transform: translateY(-103%);
60
- transform: translateY(-103%); }
61
-
62
- .premium-mask-active.premium-mask-tt .premium-mask-span::after {
63
- -webkit-animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
64
- animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
65
- -webkit-transform: translateY(103%);
66
- -ms-transform: translateY(103%);
67
- transform: translateY(103%); }
68
-
69
- @-webkit-keyframes pa-mask-tr {
70
- 0% {
71
- -webkit-transform: translateX(0%);
72
- transform: translateX(0%); }
73
- 100% {
74
- -webkit-transform: translateX(103%);
75
- transform: translateX(103%); } }
76
-
77
- @keyframes pa-mask-tr {
78
- 0% {
79
- -webkit-transform: translateX(0%);
80
- transform: translateX(0%); }
81
- 100% {
82
- -webkit-transform: translateX(103%);
83
- transform: translateX(103%); } }
84
-
85
- @-webkit-keyframes pa-mask-tl {
86
- 0% {
87
- -webkit-transform: translateX(0%);
88
- transform: translateX(0%); }
89
- 100% {
90
- -webkit-transform: translateX(-103%);
91
- transform: translateX(-103%); } }
92
-
93
- @keyframes pa-mask-tl {
94
- 0% {
95
- -webkit-transform: translateX(0%);
96
- transform: translateX(0%); }
97
- 100% {
98
- -webkit-transform: translateX(-103%);
99
- transform: translateX(-103%); } }
100
-
101
- @-webkit-keyframes pa-mask-tb {
102
- 0% {
103
- -webkit-transform: translateY(0%);
104
- transform: translateY(0%); }
105
- 100% {
106
- -webkit-transform: translateY(103%);
107
- transform: translateY(103%); } }
108
-
109
- @keyframes pa-mask-tb {
110
- 0% {
111
- -webkit-transform: translateY(0%);
112
- transform: translateY(0%); }
113
- 100% {
114
- -webkit-transform: translateY(103%);
115
- transform: translateY(103%); } }
116
-
117
- @-webkit-keyframes pa-mask-tt {
118
- 0% {
119
- -webkit-transform: translateY(0%);
120
- transform: translateY(0%); }
121
- 100% {
122
- -webkit-transform: translateY(-103%);
123
- transform: translateY(-103%); } }
124
-
125
- @keyframes pa-mask-tt {
126
- 0% {
127
- -webkit-transform: translateY(0%);
128
- transform: translateY(0%); }
129
- 100% {
130
- -webkit-transform: translateY(-103%);
131
- transform: translateY(-103%); } }
132
-
133
  /*
134
  * Common Buttons Style.
135
- */
136
- .premium-button .premium-lottie-animation,
137
- .premium-image-button .premium-lottie-animation {
138
- -js-display: flex;
139
- display: -webkit-box;
140
- display: -webkit-flex;
141
- display: -moz-box;
142
- display: -ms-flexbox;
143
- display: flex; }
144
-
145
- .premium-button svg,
146
- .premium-image-button svg {
147
- width: 30px;
148
- height: 30px; }
149
-
150
- .premium-btn-sm,
151
- .premium-btn-md,
152
- .premium-btn-lg,
153
- .premium-btn-block {
154
- background-color: #eee;
155
- color: #042551;
156
- margin: 0px;
157
- text-decoration: none; }
158
- .premium-btn-sm:hover,
159
- .premium-btn-md:hover,
160
- .premium-btn-lg:hover,
161
- .premium-btn-block:hover {
162
- background-color: #54595f;
163
- color: #eee; }
164
-
165
- .premium-btn-sm {
166
- padding: 12px 24px;
167
- font-size: 14px;
168
- line-height: 1; }
169
-
170
- .premium-btn-md {
171
- padding: 14px 26px;
172
- font-size: 16px;
173
- line-height: 1.2; }
174
-
175
- .premium-btn-lg {
176
- padding: 16px 28px;
177
- font-size: 18px;
178
- line-height: 1.3333; }
179
-
180
- .premium-btn-block {
181
- font-size: 18px;
182
- line-height: 1;
183
- padding: 20px 0px;
184
- width: 100%;
185
- text-align: center; }
186
-
187
- .premium-button-text {
188
- display: inline-block;
189
- width: 100%; }
190
-
191
  /*
192
  * Common Button/Image Button Mouse Detect Effect.
193
- */
194
- .premium-mouse-detect-yes .premium-button-style6 .premium-button-style6-bg {
195
- position: absolute;
196
- z-index: 0;
197
- top: 0;
198
- left: 0;
199
- width: 0px;
200
- height: 0px;
201
- -webkit-border-radius: 50%;
202
- border-radius: 50%;
203
- display: block;
204
- -webkit-transform: translate(-50%, -50%);
205
- -ms-transform: translate(-50%, -50%);
206
- transform: translate(-50%, -50%);
207
- -webkit-transition: width 0.4s ease-in-out, height 0.4s ease-in-out;
208
- transition: width 0.4s ease-in-out, height 0.4s ease-in-out; }
209
-
210
- .premium-mouse-detect-yes .premium-button-style6:hover .premium-button-style6-bg {
211
- width: 225%;
212
- height: 560px; }
213
-
214
- .premium-mouse-detect-yes .premium-button-style6:before {
215
- width: 0;
216
- height: 0; }
217
-
218
- /** Loader */
219
- .premium-loader {
220
- border: 3px solid #f3f3f3;
221
- border-top-width: 3px;
222
- border-top-style: solid;
223
- border-top-color: #f3f3f3;
224
- -webkit-border-radius: 50%;
225
- border-radius: 50%;
226
- border-top: 3px solid;
227
- border-top-color: #bbb;
228
- width: 30px;
229
- height: 30px;
230
- -webkit-animation: spin 2s linear infinite;
231
- animation: spin 2s linear infinite;
232
- margin: 0 auto; }
233
-
234
- /** Common Animation */
235
- @-webkit-keyframes spin {
236
- 0% {
237
- -webkit-transform: rotate(0deg);
238
- transform: rotate(0deg); }
239
- 100% {
240
- -webkit-transform: rotate(360deg);
241
- transform: rotate(360deg); } }
242
- @keyframes spin {
243
- 0% {
244
- -webkit-transform: rotate(0deg);
245
- transform: rotate(0deg); }
246
- 100% {
247
- -webkit-transform: rotate(360deg);
248
- transform: rotate(360deg); } }
249
-
250
- /**Notice*/
251
- .premium-error-notice {
252
- width: 100%;
253
- padding: 10px;
254
- color: #b94a48;
255
- background-color: #f2dede;
256
- border-color: #eed3d7;
257
- text-align: center; }
1
  /*
2
  * Common Title/Dual Heading
3
+ */
4
+ .premium-title-bg-text:before {
5
+ position: absolute;
6
+ content: attr(data-background);
7
+ top: 0;
8
+ left: 0;
9
+ text-align: left; }
10
+
11
+ .premium-bg-text-yes .elementor-widget-container:before {
12
+ position: absolute;
13
+ top: 0;
14
+ left: 0;
15
+ text-align: left; }
16
+
17
+ .premium-mask-yes .premium-dual-header-first-clip .premium-dual-header-first-span .premium-mask-span,
18
+ .premium-mask-yes .premium-dual-header-second-clip .premium-mask-span {
19
+ background: inherit; }
20
+
21
+ .premium-mask-yes .premium-mask-span {
22
+ position: relative;
23
+ overflow: hidden;
24
+ -js-display: inline-flex !important;
25
+ display: -webkit-inline-box !important;
26
+ display: -webkit-inline-flex !important;
27
+ display: -moz-inline-box !important;
28
+ display: -ms-inline-flexbox !important;
29
+ display: inline-flex !important; }
30
+ .premium-mask-yes .premium-mask-span::after {
31
+ content: "";
32
+ position: absolute;
33
+ top: 0;
34
+ right: 0px;
35
+ width: 100%;
36
+ height: 100%;
37
+ background-color: currentColor;
38
+ -webkit-backface-visibility: visible;
39
+ backface-visibility: visible; }
40
+
41
+ .premium-mask-active.premium-mask-tr .premium-mask-span::after {
42
+ -webkit-animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
43
+ animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
44
+ -webkit-transform: translateX(-103%);
45
+ -ms-transform: translateX(-103%);
46
+ transform: translateX(-103%); }
47
+
48
+ .premium-mask-active.premium-mask-tl .premium-mask-span::after {
49
+ -webkit-animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
50
+ animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
51
+ -webkit-transform: translateX(103%);
52
+ -ms-transform: translateX(103%);
53
+ transform: translateX(103%); }
54
+
55
+ .premium-mask-active.premium-mask-tb .premium-mask-span::after {
56
+ -webkit-animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
57
+ animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
58
+ -webkit-transform: translateY(-103%);
59
+ -ms-transform: translateY(-103%);
60
+ transform: translateY(-103%); }
61
+
62
+ .premium-mask-active.premium-mask-tt .premium-mask-span::after {
63
+ -webkit-animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
64
+ animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
65
+ -webkit-transform: translateY(103%);
66
+ -ms-transform: translateY(103%);
67
+ transform: translateY(103%); }
68
+
69
+ @-webkit-keyframes pa-mask-tr {
70
+ 0% {
71
+ -webkit-transform: translateX(0%);
72
+ transform: translateX(0%); }
73
+ 100% {
74
+ -webkit-transform: translateX(103%);
75
+ transform: translateX(103%); } }
76
+
77
+ @keyframes pa-mask-tr {
78
+ 0% {
79
+ -webkit-transform: translateX(0%);
80
+ transform: translateX(0%); }
81
+ 100% {
82
+ -webkit-transform: translateX(103%);
83
+ transform: translateX(103%); } }
84
+
85
+ @-webkit-keyframes pa-mask-tl {
86
+ 0% {
87
+ -webkit-transform: translateX(0%);
88
+ transform: translateX(0%); }
89
+ 100% {
90
+ -webkit-transform: translateX(-103%);
91
+ transform: translateX(-103%); } }
92
+
93
+ @keyframes pa-mask-tl {
94
+ 0% {
95
+ -webkit-transform: translateX(0%);
96
+ transform: translateX(0%); }
97
+ 100% {
98
+ -webkit-transform: translateX(-103%);
99
+ transform: translateX(-103%); } }
100
+
101
+ @-webkit-keyframes pa-mask-tb {
102
+ 0% {
103
+ -webkit-transform: translateY(0%);
104
+ transform: translateY(0%); }
105
+ 100% {
106
+ -webkit-transform: translateY(103%);
107
+ transform: translateY(103%); } }
108
+
109
+ @keyframes pa-mask-tb {
110
+ 0% {
111
+ -webkit-transform: translateY(0%);
112
+ transform: translateY(0%); }
113
+ 100% {
114
+ -webkit-transform: translateY(103%);
115
+ transform: translateY(103%); } }
116
+
117
+ @-webkit-keyframes pa-mask-tt {
118
+ 0% {
119
+ -webkit-transform: translateY(0%);
120
+ transform: translateY(0%); }
121
+ 100% {
122
+ -webkit-transform: translateY(-103%);
123
+ transform: translateY(-103%); } }
124
+
125
+ @keyframes pa-mask-tt {
126
+ 0% {
127
+ -webkit-transform: translateY(0%);
128
+ transform: translateY(0%); }
129
+ 100% {
130
+ -webkit-transform: translateY(-103%);
131
+ transform: translateY(-103%); } }
132
+
133
  /*
134
  * Common Buttons Style.
135
+ */
136
+ .premium-button .premium-lottie-animation,
137
+ .premium-image-button .premium-lottie-animation {
138
+ -js-display: flex;
139
+ display: -webkit-box;
140
+ display: -webkit-flex;
141
+ display: -moz-box;
142
+ display: -ms-flexbox;
143
+ display: flex; }
144
+
145
+ .premium-button svg,
146
+ .premium-image-button svg {
147
+ width: 30px;
148
+ height: 30px; }
149
+
150
+ .premium-btn-sm,
151
+ .premium-btn-md,
152
+ .premium-btn-lg,
153
+ .premium-btn-block {
154
+ background-color: #eee;
155
+ color: #042551;
156
+ margin: 0px;
157
+ text-decoration: none; }
158
+ .premium-btn-sm:hover,
159
+ .premium-btn-md:hover,
160
+ .premium-btn-lg:hover,
161
+ .premium-btn-block:hover {
162
+ background-color: #54595f;
163
+ color: #eee; }
164
+
165
+ .premium-btn-sm {
166
+ padding: 12px 24px;
167
+ font-size: 14px;
168
+ line-height: 1; }
169
+
170
+ .premium-btn-md {
171
+ padding: 14px 26px;
172
+ font-size: 16px;
173
+ line-height: 1.2; }
174
+
175
+ .premium-btn-lg {
176
+ padding: 16px 28px;
177
+ font-size: 18px;
178
+ line-height: 1.3333; }
179
+
180
+ .premium-btn-block {
181
+ font-size: 18px;
182
+ line-height: 1;
183
+ padding: 20px 0px;
184
+ width: 100%;
185
+ text-align: center; }
186
+
187
+ .premium-button-text {
188
+ display: inline-block;
189
+ width: 100%; }
190
+
191
  /*
192
  * Common Button/Image Button Mouse Detect Effect.
193
+ */
194
+ .premium-mouse-detect-yes .premium-button-style6 .premium-button-style6-bg {
195
+ position: absolute;
196
+ z-index: 0;
197
+ top: 0;
198
+ left: 0;
199
+ width: 0px;
200
+ height: 0px;
201
+ -webkit-border-radius: 50%;
202
+ border-radius: 50%;
203
+ display: block;
204
+ -webkit-transform: translate(-50%, -50%);
205
+ -ms-transform: translate(-50%, -50%);
206
+ transform: translate(-50%, -50%);
207
+ -webkit-transition: width 0.4s ease-in-out, height 0.4s ease-in-out;
208
+ transition: width 0.4s ease-in-out, height 0.4s ease-in-out; }
209
+
210
+ .premium-mouse-detect-yes .premium-button-style6:hover .premium-button-style6-bg {
211
+ width: 225%;
212
+ height: 560px; }
213
+
214
+ .premium-mouse-detect-yes .premium-button-style6:before {
215
+ width: 0;
216
+ height: 0; }
217
+
218
+ /** Loader */
219
+ .premium-loader {
220
+ border: 3px solid #f3f3f3;
221
+ border-top-width: 3px;
222
+ border-top-style: solid;
223
+ border-top-color: #f3f3f3;
224
+ -webkit-border-radius: 50%;
225
+ border-radius: 50%;
226
+ border-top: 3px solid;
227
+ border-top-color: #bbb;
228
+ width: 30px;
229
+ height: 30px;
230
+ -webkit-animation: spin 2s linear infinite;
231
+ animation: spin 2s linear infinite;
232
+ margin: 0 auto; }
233
+
234
+ /** Common Animation */
235
+ @-webkit-keyframes spin {
236
+ 0% {
237
+ -webkit-transform: rotate(0deg);
238
+ transform: rotate(0deg); }
239
+ 100% {
240
+ -webkit-transform: rotate(360deg);
241
+ transform: rotate(360deg); } }
242
+ @keyframes spin {
243
+ 0% {
244
+ -webkit-transform: rotate(0deg);
245
+ transform: rotate(0deg); }
246
+ 100% {
247
+ -webkit-transform: rotate(360deg);
248
+ transform: rotate(360deg); } }
249
+
250
+ /**Notice*/
251
+ .premium-error-notice {
252
+ width: 100%;
253
+ padding: 10px;
254
+ color: #b94a48;
255
+ background-color: #f2dede;
256
+ border-color: #eed3d7;
257
+ text-align: center; }
assets/frontend/css/premium-addons-rtl.css CHANGED
@@ -1,8 +1,8 @@
1
  @charset "UTF-8";
2
  @font-face {
3
  font-family: "pa-elements";
4
- src: url("../../editor/fonts/pa-elements.eot?9e1efm");
5
- src: url("../../editor/fonts/pa-elements.eot?9e1efm#iefix") format("embedded-opentype"), url("../../editor/fonts/pa-elements.ttf?9e1efm") format("truetype"), url("../../editor/fonts/pa-elements.woff?9e1efm") format("woff"), url("../../editor/fonts/pa-elements.svg?9e1efm#pa-elements") format("svg");
6
  font-weight: normal;
7
  font-style: normal;
8
  }
@@ -3839,335 +3839,335 @@ span.icon.flex-width {
3839
  transform: rotateX(180deg);
3840
  }
3841
  }
3842
- /**************** Premium Bullet List *****************/
3843
- /******************************************************/
3844
- .premium-bullet-list-box {
3845
- -js-display: flex;
3846
- display: -webkit-box;
3847
- display: -webkit-flex;
3848
- display: -moz-box;
3849
- display: -ms-flexbox;
3850
- display: flex;
3851
- -webkit-flex-wrap: wrap;
3852
- -ms-flex-wrap: wrap;
3853
- flex-wrap: wrap;
3854
- -webkit-box-orient: vertical;
3855
- -webkit-box-direction: normal;
3856
- -webkit-flex-direction: column;
3857
- -moz-box-orient: vertical;
3858
- -moz-box-direction: normal;
3859
- -ms-flex-direction: column;
3860
- flex-direction: column;
3861
- }
3862
-
3863
- .premium-bullet-list-box .premium-bullet-list-content-grow-lc {
3864
- -webkit-transform-origin: right center;
3865
- -ms-transform-origin: right center;
3866
- transform-origin: right center;
3867
- }
3868
-
3869
- .premium-bullet-list-box .premium-bullet-list-content-grow-rc {
3870
- -webkit-transform-origin: left center;
3871
- -ms-transform-origin: left center;
3872
- transform-origin: left center;
3873
- }
3874
-
3875
- .premium-bullet-list-box .premium-bullet-list-content-grow-cc {
3876
- -webkit-transform-origin: center center;
3877
- -ms-transform-origin: center center;
3878
- transform-origin: center center;
3879
- }
3880
-
3881
- .premium-bullet-list-content {
3882
- -js-display: flex;
3883
- display: -webkit-box;
3884
- display: -webkit-flex;
3885
- display: -moz-box;
3886
- display: -ms-flexbox;
3887
- display: flex;
3888
- -webkit-transition: all 0.3s ease-in-out;
3889
- transition: all 0.3s ease-in-out;
3890
- width: auto;
3891
- position: relative;
3892
- }
3893
-
3894
- .premium-bullet-list-content .premium-bullet-list-text span,
3895
- .premium-bullet-list-content .premium-bullet-list-wrapper {
3896
- display: inline-block;
3897
- -webkit-align-self: center;
3898
- -ms-flex-item-align: center;
3899
- align-self: center;
3900
- -webkit-transition: all 0.3s ease-in-out;
3901
- transition: all 0.3s ease-in-out;
3902
- }
3903
-
3904
- .premium-bullet-list-content .premium-bullet-list-text span {
3905
- margin: 0 5px;
3906
- -webkit-box-flex: 1;
3907
- -webkit-flex: 1;
3908
- -moz-box-flex: 1;
3909
- -ms-flex: 1;
3910
- flex: 1;
3911
- }
3912
-
3913
- .premium-bullet-list-content .premium-bullet-list-icon-text p {
3914
- font-size: 18px;
3915
- background-color: #eee;
3916
- padding: 1px 5px;
3917
- -webkit-border-radius: 2px;
3918
- border-radius: 2px;
3919
- }
3920
-
3921
- .premium-bullet-list-content .premium-bullet-list-text span,
3922
- .premium-bullet-list-content .premium-bullet-list-icon-text p,
3923
- .premium-bullet-list-content .premium-bullet-list-wrapper img,
3924
- .premium-bullet-list-content .premium-bullet-list-wrapper svg,
3925
- .premium-bullet-list-content .premium-bullet-list-wrapper i {
3926
- -webkit-transition: all 0.3s ease-in-out;
3927
- transition: all 0.3s ease-in-out;
3928
- }
3929
-
3930
- .premium-bullet-list-content .premium-bullet-list-wrapper {
3931
- position: relative;
3932
- line-height: 0;
3933
- }
3934
-
3935
- .premium-bullet-list-content .premium-bullet-list-wrapper img,
3936
- .premium-bullet-list-content .premium-bullet-list-wrapper svg {
3937
- width: 30px !important;
3938
- height: 30px !important;
3939
- position: relative;
3940
- z-index: 500;
3941
- }
3942
-
3943
- .premium-bullet-list-content .premium-bullet-list-wrapper i {
3944
- width: 1.25em;
3945
- }
3946
-
3947
- .premium-bullet-list-content .premium-bullet-list-wrapper i,
3948
- .premium-bullet-list-content .premium-bullet-list-wrapper .premium-bullet-list-icon-text {
3949
- position: relative;
3950
- z-index: 500;
3951
- }
3952
-
3953
- .premium-bullet-list-content .premium-bullet-list-link {
3954
- position: absolute;
3955
- top: 0;
3956
- right: 0;
3957
- width: 100%;
3958
- height: 100%;
3959
- z-index: 1000;
3960
- }
3961
-
3962
- .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector {
3963
- width: 100%;
3964
- height: 100%;
3965
- position: absolute;
3966
- top: 0.5em;
3967
- z-index: 100;
3968
- -js-display: flex;
3969
- display: -webkit-box;
3970
- display: -webkit-flex;
3971
- display: -moz-box;
3972
- display: -ms-flexbox;
3973
- display: flex;
3974
- -webkit-box-pack: center;
3975
- -webkit-justify-content: center;
3976
- -moz-box-pack: center;
3977
- -ms-flex-pack: center;
3978
- justify-content: center;
3979
- }
3980
-
3981
- .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector .premium-icon-connector-content:after {
3982
- content: "";
3983
- border-left-width: 1px;
3984
- border-left-style: solid;
3985
- border-color: #333333;
3986
- display: block;
3987
- height: 100%;
3988
- }
3989
-
3990
- li.premium-bullet-list-content.premium-bullet-list-content-inline {
3991
- -webkit-align-self: center;
3992
- -ms-flex-item-align: center;
3993
- align-self: center;
3994
- z-index: 2;
3995
- }
3996
-
3997
- li.premium-bullet-list-content.premium-bullet-list-content-inline:not(:first-child) {
3998
- margin: 0 3px;
3999
- }
4000
-
4001
- li.premium-bullet-list-content.premium-bullet-list-content-inline:first-child {
4002
- margin: 0 0 0 3px;
4003
- }
4004
-
4005
- .premium-bullet-list-divider:not(:last-child) {
4006
- width: 100%;
4007
- -webkit-box-flex: 0;
4008
- -webkit-flex: 0 0 100%;
4009
- -moz-box-flex: 0;
4010
- -ms-flex: 0 0 100%;
4011
- flex: 0 0 100%;
4012
- overflow: hidden;
4013
- }
4014
-
4015
- .premium-bullet-list-divider:not(:last-child):after {
4016
- content: "";
4017
- display: block;
4018
- border-top-style: solid;
4019
- border-top-width: 1px;
4020
- }
4021
-
4022
- .premium-bullet-list-divider-inline:not(:last-child) {
4023
- float: left;
4024
- display: inline-block;
4025
- position: relative;
4026
- height: 100%;
4027
- overflow: hidden;
4028
- -webkit-align-self: center;
4029
- -ms-flex-item-align: center;
4030
- align-self: center;
4031
- margin: 0 3px;
4032
- }
4033
-
4034
- .premium-bullet-list-divider-inline:not(:last-child):after {
4035
- content: "";
4036
- display: block;
4037
- border-right-width: 1px;
4038
- height: 33px;
4039
- border-right-style: solid;
4040
- }
4041
-
4042
- .premium-bullet-list-icon-text {
4043
- line-height: 1.5;
4044
- }
4045
-
4046
- .premium-bullet-list-icon-text p,
4047
- ul.premium-bullet-list-box,
4048
- li.premium-bullet-list-content {
4049
- margin: 0;
4050
- }
4051
-
4052
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper i,
4053
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-text span,
4054
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-icon-text p {
4055
- color: transparent !important;
4056
- text-shadow: 0 0 3px #aaa;
4057
- }
4058
-
4059
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-icon-connector-content,
4060
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper .premium-lottie-animation svg,
4061
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper img,
4062
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-badge {
4063
- -webkit-filter: blur(3px);
4064
- filter: blur(3px);
4065
- }
4066
-
4067
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper i,
4068
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-text span,
4069
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-icon-text p {
4070
- color: #aaa !important;
4071
- text-shadow: 0 0px 0 transparent;
4072
- }
4073
-
4074
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-icon-connector-content,
4075
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper .premium-lottie-animation svg,
4076
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper img,
4077
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-badge {
4078
- -webkit-filter: none;
4079
- filter: none;
4080
- }
4081
-
4082
- .premium-bullet-list-content .premium-bullet-list-badge {
4083
- font-size: 11px;
4084
- top: auto;
4085
- min-width: -webkit-max-content;
4086
- min-width: -moz-max-content;
4087
- min-width: max-content;
4088
- height: -webkit-fit-content;
4089
- height: -moz-fit-content;
4090
- height: fit-content;
4091
- }
4092
-
4093
- .premium-bullet-list-content .premium-bullet-list-icon-text p {
4094
- font-size: 13px;
4095
- }
4096
-
4097
- .premium-bullet-list-gradient-effect[data-text] {
4098
- display: inline-block;
4099
- position: relative;
4100
- text-decoration: none;
4101
- }
4102
-
4103
- .premium-bullet-list-gradient-effect[data-text]::before {
4104
- content: attr(data-text);
4105
- position: absolute;
4106
- z-index: 1;
4107
- overflow: hidden;
4108
- -webkit-clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
4109
- clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
4110
- -webkit-background-clip: text;
4111
- background-clip: text;
4112
- -webkit-text-fill-color: transparent;
4113
- -webkit-transition: all 0.4s ease;
4114
- transition: all 0.4s ease;
4115
- }
4116
-
4117
- .premium-bullet-list-content:hover .premium-bullet-list-gradient-effect[data-text]::before,
4118
- .premium-bullet-list-content:focus .premium-bullet-list-gradient-effect[data-text]::before {
4119
- -webkit-animation: rtlgradient 1s forwards;
4120
- animation: rtlgradient 1s forwards;
4121
- }
4122
-
4123
- @-webkit-keyframes rtlgradient {
4124
- 0% {
4125
- -webkit-clip-path: circle(0% at 150% 50%);
4126
- clip-path: circle(0% at 150% 50%);
4127
- }
4128
-
4129
- 100% {
4130
- -webkit-clip-path: circle(100% at 50% 50%);
4131
- clip-path: circle(100% at 50% 50%);
4132
- }
4133
- }
4134
-
4135
- @keyframes rtlgradient {
4136
- 0% {
4137
- -webkit-clip-path: circle(0% at 150% 50%);
4138
- clip-path: circle(0% at 150% 50%);
4139
- }
4140
-
4141
- 100% {
4142
- -webkit-clip-path: circle(100% at 50% 50%);
4143
- clip-path: circle(100% at 50% 50%);
4144
- }
4145
- }
4146
-
4147
- ul[data-list-animation*="animated-"] .premium-bullet-list-divider,
4148
- ul[data-list-animation*="animated-"] .premium-bullet-list-content,
4149
- ul[data-list-animation*="animated-"] .premium-bullet-list-divider-inline {
4150
- opacity: 0;
4151
- }
4152
-
4153
- .premium-bullet-list-content-grow-effect:hover {
4154
- -webkit-transform: scale(1.07);
4155
- -ms-transform: scale(1.07);
4156
- transform: scale(1.07);
4157
- }
4158
-
4159
- @-webkit-keyframes spin {
4160
- 100% {
4161
- -webkit-transform: rotate(360deg);
4162
- transform: rotate(360deg);
4163
- }
4164
- }
4165
-
4166
- @keyframes spin {
4167
- 100% {
4168
- -webkit-transform: rotate(360deg);
4169
- transform: rotate(360deg);
4170
- }
4171
  }
4172
  /**************** Premium Image Button ***********/
4173
  /*************************************************/
@@ -4884,807 +4884,2173 @@ a.premium-image-separator-link:active {
4884
  -webkit-transition: all 0.3s ease-in-out;
4885
  transition: all 0.3s ease-in-out;
4886
  }
4887
- /******** Premium Media Grid ********/
4888
- /************************************/
4889
- .premium-img-gallery-filter,
4890
- .premium-blog-filter {
4891
- display: -webkit-box;
4892
- display: -webkit-flex;
4893
- display: -ms-flexbox;
4894
- -js-display: flex;
4895
- display: -moz-box;
4896
- display: flex;
4897
- -webkit-box-align: center;
4898
- -webkit-align-items: center;
4899
- -moz-box-align: center;
4900
- -ms-flex-align: center;
4901
- align-items: center;
4902
- -webkit-box-pack: center;
4903
- -webkit-justify-content: center;
4904
- -moz-box-pack: center;
4905
- -ms-flex-pack: center;
4906
- justify-content: center;
4907
- }
4908
-
4909
- .premium-img-gallery {
4910
- clear: both;
4911
- overflow: hidden;
4912
- }
4913
-
4914
- .premium-gallery-container .premium-gallery-item {
4915
- padding: 10px;
4916
- float: right;
4917
- /* Google Chrome isotope issue */
4918
- }
4919
-
4920
- .premium-gallery-container .grid-sizer {
4921
- width: 33.33%;
4922
- }
4923
-
4924
- .premium-img-gallery-filter .premium-gallery-cats-container li a.category,
4925
- .premium-blog-filter .premium-blog-filters-container li a.category {
4926
- outline: none;
4927
- text-decoration: none;
4928
- -webkit-border-radius: 75px;
4929
- border-radius: 75px;
4930
- margin: 15px 5px 20px;
4931
- padding: 7px 20px;
4932
- -webkit-transition: all 0.3s ease-in-out;
4933
- transition: all 0.3s ease-in-out;
4934
- }
4935
-
4936
- /* .premium-img-gallery-filter .premium-gallery-cats-container li a.category span {
4937
- -webkit-transition: all 0.3s ease-in-out;
4938
- transition: all 0.3s ease-in-out;
4939
- } */
4940
-
4941
- .pa-gallery-img {
4942
- position: relative;
4943
- }
4944
-
4945
- .pa-gallery-img .pa-gallery-whole-link {
4946
- position: absolute;
4947
- top: 0;
4948
- right: 0;
4949
- width: 100%;
4950
- height: 100%;
4951
- }
4952
-
4953
- .pa-gallery-img.style2 .pa-gallery-whole-link {
4954
- z-index: 99;
4955
- }
4956
-
4957
- .pa-gallery-img-container {
4958
- overflow: hidden;
4959
- -webkit-backface-visibility: hidden;
4960
- -moz-backface-visibility: hidden;
4961
- -webkit-transform: translate3d(0, 0, 0);
4962
- transform: translate3d(0, 0, 0);
4963
- }
4964
-
4965
- .pa-gallery-img-container img {
4966
- display: block;
4967
- width: 100%;
4968
- -webkit-transition: all 0.3s ease-in-out;
4969
- transition: all 0.3s ease-in-out;
4970
- }
4971
-
4972
- .premium-img-gallery.gray img {
4973
- -webkit-filter: grayscale(100%);
4974
- filter: grayscale(100%);
4975
- }
4976
-
4977
- .premium-img-gallery.zoomout img,
4978
- .premium-img-gallery.scale img {
4979
- -webkit-transform: scale(1.2);
4980
- -ms-transform: scale(1.2);
4981
- transform: scale(1.2);
4982
- }
4983
-
4984
- .premium-img-gallery.sepia img {
4985
- -webkit-filter: sepia(30%);
4986
- filter: sepia(30%);
4987
- }
4988
-
4989
- .premium-img-gallery.bright img {
4990
- -webkit-filter: brightness(1);
4991
- filter: brightness(1);
4992
- }
4993
-
4994
- .premium-img-gallery.trans img {
4995
- -webkit-transform: translateX(15px) scale(1.1);
4996
- -ms-transform: translateX(15px) scale(1.1);
4997
- transform: translateX(15px) scale(1.1);
4998
- }
4999
-
5000
- .pa-gallery-img .pa-gallery-magnific-image,
5001
- .pa-gallery-img .pa-gallery-img-link {
5002
- outline: none;
5003
- }
5004
-
5005
- .pa-gallery-img .pa-gallery-magnific-image i,
5006
- .pa-gallery-img .pa-gallery-magnific-image svg,
5007
- .pa-gallery-img .pa-gallery-img-link i,
5008
- .pa-gallery-img .pa-gallery-img-link svg {
5009
- -webkit-transition: all 0.3s ease-in-out;
5010
- transition: all 0.3s ease-in-out;
5011
- }
5012
-
5013
- .pa-gallery-img .pa-gallery-magnific-image span,
5014
- .pa-gallery-img .pa-gallery-img-link span {
5015
- line-height: 1;
5016
- display: inline-block;
5017
- opacity: 0;
5018
- margin: 0 5px;
5019
- padding: 15px;
5020
- -webkit-border-radius: 50%;
5021
- border-radius: 50%;
5022
- }
5023
-
5024
- .pa-gallery-img.style2 .pa-gallery-magnific-image span,
5025
- .pa-gallery-img.style2 .pa-gallery-img-link span {
5026
- margin: 0 5px 20px;
5027
- }
5028
-
5029
- .pa-gallery-img:hover .pa-gallery-magnific-image span {
5030
- -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
5031
- transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
5032
- }
5033
-
5034
- .pa-gallery-img:hover .pa-gallery-img-link span {
5035
- -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
5036
- transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
5037
- }
5038
-
5039
- .pa-gallery-img:hover .pa-gallery-magnific-image span,
5040
- .pa-gallery-img:hover .pa-gallery-img-link span,
5041
- .premium-gallery-icon-show a.pa-gallery-video-icon span {
5042
- opacity: 1;
5043
- }
5044
-
5045
- .premium-img-gallery-filter ul.premium-gallery-cats-container,
5046
- .premium-blog-filter ul.premium-blog-filters-container {
5047
- text-align: center;
5048
- margin: 0;
5049
- padding: 0;
5050
- }
5051
-
5052
- .premium-img-gallery-filter .premium-gallery-cats-container li,
5053
- .premium-blog-filter .premium-blog-filters-container li {
5054
- list-style: none;
5055
- display: -webkit-inline-box;
5056
- display: -webkit-inline-flex;
5057
- display: -ms-inline-flexbox;
5058
- -js-display: inline-flex;
5059
- display: -moz-inline-box;
5060
- display: inline-flex;
5061
- }
5062
-
5063
- .premium-img-gallery.zoomin .pa-gallery-img:hover img {
5064
- -webkit-transform: scale(1.1);
5065
- -ms-transform: scale(1.1);
5066
- transform: scale(1.1);
5067
- }
5068
-
5069
- .premium-img-gallery.zoomout .pa-gallery-img:hover img {
5070
- -webkit-transform: scale(1);
5071
- -ms-transform: scale(1);
5072
- transform: scale(1);
5073
- }
5074
-
5075
- .premium-img-gallery.scale .pa-gallery-img:hover img {
5076
- -webkit-transform: scale(1.3) rotate(-5deg);
5077
- -ms-transform: scale(1.3) rotate(-5deg);
5078
- transform: scale(1.3) rotate(-5deg);
5079
- }
5080
-
5081
- .premium-img-gallery.gray .pa-gallery-img:hover img {
5082
- -webkit-filter: grayscale(0%);
5083
- filter: grayscale(0%);
5084
- }
5085
-
5086
- .premium-img-gallery.blur .pa-gallery-img:hover img {
5087
- -webkit-filter: blur(3px);
5088
- filter: blur(3px);
5089
- }
5090
-
5091
- .premium-img-gallery.sepia .pa-gallery-img:hover img {
5092
- -webkit-filter: sepia(0%);
5093
- filter: sepia(0%);
5094
- }
5095
-
5096
- .premium-img-gallery.trans .pa-gallery-img:hover img {
5097
- -webkit-transform: translateX(0px) scale(1.1);
5098
- -ms-transform: translateX(0px) scale(1.1);
5099
- transform: translateX(0px) scale(1.1);
5100
- }
5101
-
5102
- .premium-img-gallery.bright .pa-gallery-img:hover img {
5103
- -webkit-filter: brightness(1.2);
5104
- filter: brightness(1.2);
5105
- }
5106
-
5107
- .pa-gallery-img .premium-gallery-caption {
5108
- padding: 10px;
5109
- }
5110
-
5111
- .pa-gallery-img .premium-gallery-caption .premium-gallery-img-name {
5112
- margin-bottom: 0;
5113
- }
5114
-
5115
- .pa-gallery-img.style1 {
5116
- overflow: hidden;
5117
- }
5118
-
5119
- .pa-gallery-img:not(.style2) .pa-gallery-icons-wrapper {
5120
- position: absolute;
5121
- top: 0;
5122
- right: 0;
5123
- width: 100%;
5124
- height: 100%;
5125
- -webkit-transition: all 0.3s ease-in-out;
5126
- transition: all 0.3s ease-in-out;
5127
- }
5128
-
5129
- .pa-gallery-img:not(.style2) .pa-gallery-icons-inner-container {
5130
- position: absolute;
5131
- top: 33.33%;
5132
- width: 100%;
5133
- text-align: center;
5134
- -webkit-transform: translateY(-50%);
5135
- -ms-transform: translateY(-50%);
5136
- transform: translateY(-50%);
5137
- z-index: 999;
5138
- }
5139
-
5140
- .pa-gallery-img.style1 .premium-gallery-caption {
5141
- position: absolute;
5142
- top: auto;
5143
- left: 0;
5144
- right: 0;
5145
- width: 100%;
5146
- -webkit-transition: all 500ms ease 0s;
5147
- transition: all 500ms ease 0s;
5148
- -webkit-transform: translate3d(0, 100%, 0);
5149
- -ms-transform: translate3d(0, 100%, 0);
5150
- transform: translate3d(0, 100%, 0);
5151
- }
5152
-
5153
- .pa-gallery-img.default .premium-gallery-caption {
5154
- position: absolute;
5155
- top: auto;
5156
- left: 0;
5157
- right: 0;
5158
- width: 100%;
5159
- bottom: 0;
5160
- }
5161
-
5162
- .pa-gallery-img.style1:hover .premium-gallery-caption {
5163
- -webkit-transform: translate3d(0, 0, 0);
5164
- -ms-transform: translate3d(0, 0, 0);
5165
- transform: translate3d(0, 0, 0);
5166
- bottom: -1px !important;
5167
- }
5168
-
5169
- .pa-gallery-img.style2 .pa-gallery-icons-caption-container {
5170
- position: absolute;
5171
- top: 0;
5172
- right: 0;
5173
- width: 100%;
5174
- height: 100%;
5175
- opacity: 0;
5176
- -webkit-backface-visibility: hidden;
5177
- backface-visibility: hidden;
5178
- -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
5179
- -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
5180
- transition: opacity 0.3s, -webkit-transform 0.3s;
5181
- transition: transform 0.3s, opacity 0.3s;
5182
- transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
5183
- z-index: 1;
5184
- background-color: rgba(108, 191, 226, 0.68);
5185
- display: -webkit-box;
5186
- display: -webkit-flex;
5187
- display: -ms-flexbox;
5188
- -js-display: flex;
5189
- display: -moz-box;
5190
- display: flex;
5191
- text-align: center;
5192
- -webkit-box-align: center;
5193
- -webkit-align-items: center;
5194
- -moz-box-align: center;
5195
- -ms-flex-align: center;
5196
- align-items: center;
5197
- }
5198
-
5199
- .pa-gallery-img.style2 .pa-gallery-icons-caption-cell {
5200
- width: 100%;
5201
- }
5202
-
5203
- .pa-gallery-img.style2:hover .pa-gallery-icons-caption-container {
5204
- opacity: 1;
5205
- -webkit-transform: translate(-15px, 15px);
5206
- -ms-transform: translate(-15px, 15px);
5207
- transform: translate(-15px, 15px);
5208
- }
5209
-
5210
- .premium-clearfix {
5211
- clear: both;
5212
- }
5213
-
5214
- .premium-gallery-container .pa-gallery-item {
5215
- padding: 10px;
5216
- }
5217
-
5218
- /**
5219
- * Metro Layout
5220
- */
5221
- .premium-img-gallery-metro .premium-gallery-item {
5222
- overflow: hidden;
5223
- }
5224
-
5225
- .premium-img-gallery-metro .pa-gallery-img {
5226
- height: 100%;
5227
- }
5228
-
5229
- .premium-img-gallery-metro .pa-gallery-img-container {
5230
- height: 100%;
5231
- }
5232
-
5233
- .premium-img-gallery-metro .pa-gallery-img-container img {
5234
- min-height: 100%;
5235
- width: 100%;
5236
- -o-object-fit: fill;
5237
- object-fit: fill;
5238
- }
5239
-
5240
- .premium-img-gallery .premium-gallery-item-hidden {
5241
- visibility: hidden;
5242
- width: 0 !important;
5243
- height: 0 !important;
5244
- margin: 0 !important;
5245
- padding: 0 !important;
5246
- }
5247
-
5248
- .premium-gallery-load-more .premium-gallery-load-more-btn {
5249
- -webkit-box-shadow: none;
5250
- box-shadow: none;
5251
- text-shadow: none;
5252
- border: none;
5253
- outline: none;
5254
- -webkit-box-align: center;
5255
- -ms-flex-align: center;
5256
- -webkit-align-items: center;
5257
- -moz-box-align: center;
5258
- align-items: center;
5259
- vertical-align: bottom;
5260
- cursor: pointer;
5261
- line-height: 1;
5262
- font-style: normal;
5263
- font-weight: normal;
5264
- background-image: none;
5265
- color: #fff;
5266
- -webkit-transition: all 0.3s ease-in-out;
5267
- transition: all 0.3s ease-in-out;
5268
- }
5269
-
5270
- .premium-gallery-load-more-btn {
5271
- display: -webkit-inline-box;
5272
- display: -webkit-inline-flex;
5273
- display: -ms-inline-flexbox;
5274
- -js-display: inline-flex;
5275
- display: -moz-inline-box;
5276
- display: inline-flex;
5277
- -webkit-box-align: center;
5278
- -webkit-align-items: center;
5279
- -moz-box-align: center;
5280
- -ms-flex-align: center;
5281
- align-items: center;
5282
- }
5283
-
5284
- .premium-gallery-load-more-btn div {
5285
- margin-right: 3px;
5286
- }
5287
-
5288
- .premium-gallery-load-more-btn .premium-loader {
5289
- display: inline-block;
5290
- width: 20px;
5291
- height: 20px;
5292
- }
5293
-
5294
- /** * Video */
5295
- .pa-gallery-img .pa-gallery-lightbox-wrap {
5296
- display: inline-block;
5297
- }
5298
-
5299
- .premium-img-gallery-no-lightbox .premium-gallery-video-item .pa-gallery-img,
5300
- .pa-gallery-img .pa-gallery-video-icon {
5301
- cursor: pointer;
5302
- }
5303
-
5304
- .pa-gallery-img-container iframe,
5305
- .pa-gallery-img-container video {
5306
- position: absolute;
5307
- visibility: hidden;
5308
- top: 0;
5309
- right: 0;
5310
- max-width: 100%;
5311
- width: 100%;
5312
- height: 100%;
5313
- margin: 0;
5314
- line-height: 1;
5315
- border: none;
5316
- }
5317
-
5318
- .pa-gallery-img-container video {
5319
- -o-object-fit: contain;
5320
- object-fit: contain;
5321
- }
5322
-
5323
- .pa-gallery-icons-inner-container svg,
5324
- .pa-gallery-icons-caption-cell svg {
5325
- width: 14px;
5326
- height: 14px;
5327
- }
5328
-
5329
- .premium-gallery-gradient-layer {
5330
- position: absolute;
5331
- bottom: 40px;
5332
- width: 100%;
5333
- height: 20px;
5334
- background: -webkit-gradient(linear, left bottom, left top, from(#17181f), to(rgba(255, 255, 255, 0)));
5335
- background: -webkit-linear-gradient(bottom, #17181f 0%, rgba(255, 255, 255, 0) 100%);
5336
- background: linear-gradient(to top, #17181f 0%, rgba(255, 255, 255, 0) 100%);
5337
  }
5338
- /********* Premium Lottie Animations **********/
5339
- /**********************************************/
5340
- .elementor-widget-premium-lottie .premium-lottie-animation {
5341
- position: relative;
5342
- -js-display: inline-flex;
5343
- display: -webkit-inline-box;
5344
- display: -webkit-inline-flex;
5345
- display: -moz-inline-box;
5346
- display: -ms-inline-flexbox;
5347
- display: inline-flex;
5348
- -webkit-transition: all 0.3s ease-in-out;
5349
- transition: all 0.3s ease-in-out;
5350
  }
5351
 
5352
- .elementor-widget-premium-lottie .premium-lottie-animation a {
5353
- position: absolute;
5354
- left: 0;
5355
- top: 0;
5356
- width: 100%;
5357
- height: 100%;
5358
- z-index: 2;
5359
  }
5360
- /**************** Premium Google Maps ******************/
5361
- /*******************************************************/
5362
- .premium-maps-info-container {
5363
- margin-top: 10px;
5364
- margin-bottom: 10px;
5365
  }
5366
 
5367
- .premium-maps-info-title,
5368
- .premium-maps-info-desc {
5369
- margin: 0;
5370
- padding: 0;
 
 
 
 
 
 
5371
  }
5372
 
5373
- .premium-maps-container .gm-style-iw {
5374
- text-align: center;
5375
- direction: ltr;
 
 
 
 
5376
  }
5377
 
5378
- .premium-maps-container .gm-style img {
5379
- max-width: none !important;
 
 
 
 
5380
  }
5381
- /**************** Premium Modal Box ****************/
5382
- /***************************************************/
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5383
  .premium-modal-trigger-btn,
5384
  .premium-modal-box-modal-lower-close {
5385
  display: inline-block;
5386
- padding: 6px 12px;
5387
- margin-bottom: 0;
5388
- font-size: 14px;
5389
- font-weight: normal;
5390
- line-height: 1.42857143;
5391
- text-align: center;
5392
- white-space: nowrap;
5393
- vertical-align: middle;
5394
- -ms-touch-action: manipulation;
5395
- touch-action: manipulation;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5396
  cursor: pointer;
5397
- -webkit-user-select: none;
5398
- -moz-user-select: none;
5399
- -ms-user-select: none;
5400
- user-select: none;
5401
- background-image: none;
5402
- border: 1px solid transparent;
5403
  }
5404
 
5405
- .premium-modal-trigger-btn>svg,
5406
- .premium-modal-trigger-btn .premium-modal-box-icon {
5407
- -webkit-transition: all 0.3s ease-in-out;
5408
- transition: all 0.3s ease-in-out;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5409
  }
5410
 
5411
- .premium-modal-trigger-btn>svg {
5412
- width: 30px;
5413
- height: 30px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5414
  }
5415
 
5416
- .premium-modal-box-modal-close {
5417
- float: left;
5418
- font-size: 21px;
5419
- font-weight: bold;
5420
- line-height: 1;
5421
- color: #000;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5422
  }
5423
 
5424
- .premium-modal-box-modal-close:hover,
5425
- .premium-modal-box-modal-close:focus {
5426
- color: #000;
5427
- text-decoration: none;
5428
- cursor: pointer;
 
 
 
 
 
5429
  }
5430
 
5431
- button.premium-modal-box-modal-close {
5432
- -webkit-appearance: none;
5433
- padding: 0;
5434
- cursor: pointer;
5435
- background: transparent;
5436
- border: 0;
5437
  }
5438
 
5439
- .premium-modal-box-modal {
5440
- position: fixed;
5441
- top: 0;
5442
- left: 0;
5443
- bottom: 0;
5444
- right: 0;
5445
- z-index: 1050;
5446
- display: none;
5447
- -webkit-overflow-scrolling: touch;
5448
- outline: 0;
5449
- padding: 0 !important;
5450
- background: rgba(0, 0, 0, 0.5);
5451
- -webkit-box-align: center;
5452
- -webkit-align-items: center;
5453
- -moz-box-align: center;
5454
- -ms-flex-align: center;
5455
- align-items: center;
5456
- -webkit-box-pack: center;
5457
- -webkit-justify-content: center;
5458
- -moz-box-pack: center;
5459
- -ms-flex-pack: center;
5460
- justify-content: center;
5461
  }
5462
 
5463
- .premium-modal-box-modal .premium-modal-box-modal-dialog {
5464
- position: absolute;
5465
- max-height: -webkit-calc(100vh - 150px);
5466
- max-height: calc(100vh - 150px);
5467
- -js-display: flex;
5468
- display: -webkit-box;
5469
- display: -webkit-flex;
5470
- display: -moz-box;
5471
- display: -ms-flexbox;
5472
- display: flex;
5473
- -webkit-box-orient: vertical;
5474
- -webkit-box-direction: normal;
5475
- -webkit-flex-direction: column;
5476
- -moz-box-orient: vertical;
5477
- -moz-box-direction: normal;
5478
- -ms-flex-direction: column;
5479
- flex-direction: column;
5480
- opacity: 0;
5481
- background-color: #fff;
5482
- border: 1px solid rgba(0, 0, 0, 0.2);
5483
- -webkit-border-radius: 6px;
5484
- border-radius: 6px;
5485
  }
5486
 
5487
- .premium-modal-box-modal-content {
5488
- background-clip: padding-box;
5489
- outline: 0;
5490
- overflow-x: hidden;
 
 
5491
  }
5492
 
5493
- .premium-modal-backdrop.premium-in {
5494
- filter: alpha(opacity=50);
5495
- opacity: 0.5 !important;
 
 
 
5496
  }
5497
 
5498
- .premium-modal-fade.premium-in {
5499
- opacity: 1;
 
 
 
5500
  }
5501
 
5502
- .premium-modal-backdrop {
5503
- position: fixed;
5504
- top: 0;
5505
- left: 0;
5506
- bottom: 0;
5507
- right: 0;
5508
- z-index: 1040;
5509
- background-color: #000;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5510
  }
5511
 
5512
- .premium-modal-backdrop.premium-modal-fade {
5513
- filter: alpha(opacity=0);
5514
- opacity: 0;
 
 
5515
  }
5516
 
5517
- .premium-modal-fade {
5518
- opacity: 0;
 
 
 
5519
  }
5520
 
5521
- .premium-in {
5522
- -js-display: flex !important;
5523
- display: -webkit-box !important;
5524
- display: -webkit-flex !important;
5525
- display: -moz-box !important;
5526
- display: -ms-flexbox !important;
5527
- display: flex !important;
 
5528
  }
5529
 
5530
- .premium-modal-box-modal-header {
5531
- -js-display: flex;
5532
- display: -webkit-box;
5533
- display: -webkit-flex;
5534
- display: -moz-box;
5535
- display: -ms-flexbox;
5536
- display: flex;
5537
- -webkit-box-pack: justify;
5538
- -webkit-justify-content: space-between;
5539
- -moz-box-pack: justify;
5540
- -ms-flex-pack: justify;
5541
- justify-content: space-between;
5542
- -webkit-box-align: center;
5543
- -webkit-align-items: center;
5544
- -moz-box-align: center;
5545
- -ms-flex-align: center;
5546
- align-items: center;
5547
- padding: 5px 15px;
5548
- border-bottom: 1px solid #e5e5e5;
5549
  }
5550
 
5551
- .premium-modal-box-modal-header .premium-modal-box-modal-close {
5552
- margin-top: -2px;
 
 
 
 
 
 
5553
  }
5554
 
5555
- .premium-modal-box-modal-header .premium-modal-box-modal-title {
5556
- -js-display: flex;
5557
- display: -webkit-box;
5558
- display: -webkit-flex;
5559
- display: -moz-box;
5560
- display: -ms-flexbox;
5561
- display: flex;
5562
- -webkit-box-align: center;
5563
- -webkit-align-items: center;
5564
- -moz-box-align: center;
5565
- -ms-flex-align: center;
5566
- align-items: center;
5567
- margin: 0;
5568
- padding: 0;
5569
  }
5570
 
5571
- .premium-modal-box-modal-header .premium-modal-box-modal-title svg {
5572
- width: 50px;
5573
- height: 60px;
 
 
 
 
 
 
 
 
 
5574
  }
5575
 
5576
- .premium-modal-box-modal-body {
5577
- position: relative;
5578
- padding: 15px;
 
 
 
 
 
 
 
5579
  }
5580
 
5581
- .premium-modal-box-modal-footer {
5582
- padding: 15px;
5583
- text-align: left;
5584
- border-top: 1px solid #e5e5e5;
 
 
 
5585
  }
5586
 
5587
- .premium-modal-scrollbar-measure {
5588
- position: absolute;
5589
- top: -9999px;
5590
- width: 50px;
5591
- height: 50px;
5592
- overflow: scroll;
 
5593
  }
5594
 
5595
- .premium-modal-trigger-text {
5596
- background: none !important;
5597
- display: inline-block;
 
 
 
 
5598
  }
5599
 
5600
- .premium-modal-box-container {
5601
- width: 100% !important;
 
 
 
 
 
5602
  }
5603
 
5604
- /*Open Modal Button Style*/
5605
- .premium-modal-trigger-container .premium-modal-trigger-btn {
5606
- -js-display: inline-flex;
5607
- display: -webkit-inline-box;
5608
- display: -webkit-inline-flex;
5609
- display: -moz-inline-box;
5610
- display: -ms-inline-flexbox;
5611
- display: inline-flex;
5612
- -webkit-box-align: center;
5613
- -webkit-align-items: center;
5614
- -moz-box-align: center;
5615
- -ms-flex-align: center;
5616
- align-items: center;
5617
- border: none;
5618
- -webkit-transition: all 0.3s ease-in-out;
5619
- transition: all 0.3s ease-in-out;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5620
  }
5621
 
5622
- .premium-modal-trigger-container .premium-modal-trigger-btn.premium-btn-block {
5623
- -webkit-box-pack: center;
5624
- -webkit-justify-content: center;
5625
- -moz-box-pack: center;
5626
- -ms-flex-pack: center;
5627
- justify-content: center;
5628
  }
5629
 
5630
- .premium-modal-trigger-container .premium-modal-trigger-img,
5631
- .premium-modal-trigger-container .premium-modal-trigger-text,
5632
- .premium-modal-trigger-container .premium-modal-trigger-animation {
5633
- cursor: pointer;
 
5634
  }
5635
 
5636
- .premium-modal-trigger-container .premium-modal-trigger-animation {
5637
- display: inline-block;
5638
- width: 200px;
5639
- height: 200px;
5640
- -webkit-transition: all 0.3s ease-in-out;
5641
- transition: all 0.3s ease-in-out;
5642
  }
5643
 
5644
- /*Image on Modal Header Style*/
5645
- .premium-modal-box-modal-header img {
5646
- width: 48px;
5647
- padding-left: 5px;
5648
  }
5649
 
5650
- .premium-modal-box-modal-header i,
5651
- .premium-modal-box-modal-header svg {
5652
- padding-left: 6px;
 
 
5653
  }
5654
 
5655
- .premium-modal-box-modal-close {
5656
- position: relative;
5657
- z-index: 99;
 
5658
  }
5659
 
5660
- .premium-modal-trigger-img,
5661
- .premium-modal-trigger-text,
5662
- .premium-modal-box-close-button-container,
5663
- .premium-modal-box-modal-close,
5664
- .premium-modal-box-modal-lower-close {
5665
- -webkit-transition: all 0.3s ease-in-out;
5666
- transition: all 0.3s ease-in-out;
5667
  }
5668
 
5669
- @media (min-width: 768px) {
5670
- .premium-modal-box-modal-dialog {
5671
- width: 700px;
5672
- max-height: 600px;
5673
- overflow: auto;
5674
- }
5675
  }
5676
 
5677
- @media (max-width: 767px) {
5678
- .premium-modal-box-modal-dialog {
5679
- width: 100%;
5680
- max-height: 500px;
5681
- overflow: auto;
5682
- }
5683
  }
5684
 
5685
- .premium-modal-box-container[data-modal-animation*="animated-"] {
5686
- opacity: 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5687
  }
 
5688
  /************ Premium Team Members ************/
5689
  /*********************************************/
5690
  .premium-person-container {
@@ -6076,41 +7442,284 @@ ul.premium-person-social-list {
6076
  align-items: flex-start;
6077
  }
6078
 
6079
- .premium-person-style3 .premium-person-name-icons-wrap {
6080
- -js-display: flex;
6081
- display: -webkit-box;
6082
- display: -webkit-flex;
6083
- display: -moz-box;
6084
- display: -ms-flexbox;
6085
- display: flex;
6086
- -webkit-box-pack: justify;
6087
- -webkit-justify-content: space-between;
6088
- -moz-box-pack: justify;
6089
- -ms-flex-pack: justify;
6090
- justify-content: space-between;
6091
- -webkit-box-align: end;
6092
- -webkit-align-items: flex-end;
6093
- -moz-box-align: end;
6094
- -ms-flex-align: end;
6095
- align-items: flex-end;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6096
  }
6097
 
6098
- .premium-person-style3 .premium-person-title {
6099
- opacity: 0;
6100
- -webkit-transition: all 0.3s ease;
6101
- transition: all 0.3s ease;
6102
- width: 0;
6103
  }
6104
 
6105
- .premium-person-style3 .premium-person-title span {
6106
- display: inline-block;
6107
  }
6108
 
6109
- .premium-person-style3 .premium-person-name {
6110
- padding-right: 10px;
6111
  }
6112
 
6113
- .premium-person-style3 .premium-person-social-list {
 
 
 
 
6114
  -js-display: flex;
6115
  display: -webkit-box;
6116
  display: -webkit-flex;
@@ -6124,354 +7733,111 @@ ul.premium-person-social-list {
6124
  -moz-box-direction: normal;
6125
  -ms-flex-direction: column;
6126
  flex-direction: column;
6127
- -webkit-transform: translateY(20px);
6128
- -ms-transform: translateY(20px);
6129
- transform: translateY(20px);
6130
- opacity: 0;
6131
- -webkit-transition: all 0.3s ease;
6132
- transition: all 0.3s ease;
6133
  }
6134
 
6135
- .premium-person-style3 .premium-person-list-item {
6136
- line-height: 0;
 
 
 
 
 
 
 
 
 
 
6137
  }
6138
 
6139
- .premium-person-style3 .premium-person-list-item a {
6140
- padding: 5px 0 0 10px;
6141
- margin: 5px 0;
6142
  }
6143
 
6144
- .premium-person-style3 .premium-person-container:hover .premium-person-title {
6145
- opacity: 1;
 
 
 
6146
  }
6147
 
6148
- .premium-person-style3 .premium-person-container:hover .premium-person-social-list {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6149
  opacity: 1;
6150
- -webkit-transform: translateY(0);
6151
- -ms-transform: translateY(0);
6152
- transform: translateY(0);
6153
  }
6154
 
6155
- .premium-persons-title-cw .premium-person-title {
6156
- -webkit-transform: translateX(-15px) rotate(-90deg);
6157
- -ms-transform: translateX(-15px) rotate(-90deg);
6158
- transform: translateX(-15px) rotate(-90deg);
6159
- -webkit-transform-origin: top;
6160
- -ms-transform-origin: top;
6161
- transform-origin: top;
6162
  }
6163
 
6164
- .premium-persons-title-cw .premium-person-container:hover .premium-person-title {
6165
- -webkit-transform: translateX(0) rotate(-90deg);
6166
- -ms-transform: translateX(0) rotate(-90deg);
6167
- transform: translateX(0) rotate(-90deg);
6168
  }
6169
 
6170
- .premium-persons-title-ccw .premium-person-title {
6171
- width: auto;
6172
- margin-left: 20px;
6173
- -webkit-transform: translateX(-15px) rotate(90deg);
6174
- -ms-transform: translateX(-15px) rotate(90deg);
6175
- transform: translateX(-15px) rotate(90deg);
6176
- -webkit-transform-origin: center left;
6177
- -ms-transform-origin: center left;
6178
- transform-origin: center left;
6179
  }
6180
 
6181
- .premium-persons-title-ccw .premium-person-container:hover .premium-person-title {
6182
- -webkit-transform: translateX(0) rotate(90deg);
6183
- -ms-transform: translateX(0) rotate(90deg);
6184
- transform: translateX(0) rotate(90deg);
6185
  }
6186
- /**************** Premium Pricing Table ****************/
6187
- /*******************************************************/
6188
- .premium-pricing-table-container {
6189
- position: relative;
6190
- text-align: center;
6191
- display: inline-block;
6192
- width: 100%;
6193
- -webkit-transition: all 0.3s ease-in-out;
6194
- transition: all 0.3s ease-in-out;
6195
- }
6196
-
6197
- .premium-pricing-icon-container {
6198
- -js-display: flex;
6199
- display: -webkit-box;
6200
- display: -webkit-flex;
6201
- display: -moz-box;
6202
- display: -ms-flexbox;
6203
- display: flex;
6204
- -webkit-box-pack: center;
6205
- -webkit-justify-content: center;
6206
- -moz-box-pack: center;
6207
- -ms-flex-pack: center;
6208
- justify-content: center;
6209
- line-height: 0;
6210
- }
6211
-
6212
- .premium-pricing-icon-container .premium-pricing-icon {
6213
- display: inline-block;
6214
- }
6215
-
6216
- .premium-pricing-icon-container .premium-pricing-image {
6217
- overflow: hidden;
6218
- }
6219
-
6220
- .premium-pricing-icon-container .premium-pricing-image img {
6221
- width: 25px;
6222
- height: 25px;
6223
- -o-object-fit: cover;
6224
- object-fit: cover;
6225
- }
6226
-
6227
- .premium-badge-left {
6228
- position: absolute;
6229
- top: 0;
6230
- }
6231
-
6232
- .premium-badge-right {
6233
- position: absolute;
6234
- top: 0;
6235
- right: 0;
6236
- }
6237
-
6238
- .premium-badge-left {
6239
- left: 0;
6240
- }
6241
-
6242
- .premium-badge-triangle.premium-badge-left .corner {
6243
- width: 0;
6244
- height: 0;
6245
- border-top: 150px solid;
6246
- border-bottom: 150px solid transparent;
6247
- border-right: 150px solid transparent;
6248
- }
6249
-
6250
- .premium-badge-triangle.premium-badge-right .corner {
6251
- width: 0;
6252
- height: 0;
6253
- border-bottom: 150px solid transparent;
6254
- border-right: 150px solid;
6255
- border-left: 150px solid transparent;
6256
- }
6257
-
6258
- .premium-badge-triangle span {
6259
- position: absolute;
6260
- top: 35px;
6261
- width: 100px;
6262
- text-align: center;
6263
- -webkit-transform: rotate(-45deg);
6264
- -ms-transform: rotate(-45deg);
6265
- transform: rotate(-45deg);
6266
- display: block;
6267
- text-transform: uppercase;
6268
- }
6269
-
6270
- .premium-badge-triangle.premium-badge-right span {
6271
- -webkit-transform: rotate(45deg);
6272
- -ms-transform: rotate(45deg);
6273
- transform: rotate(45deg);
6274
- right: 0;
6275
- }
6276
-
6277
- .premium-badge-circle {
6278
- min-width: 4em;
6279
- min-height: 4em;
6280
- line-height: 4em;
6281
- text-align: center;
6282
- -webkit-border-radius: 100%;
6283
- border-radius: 100%;
6284
- position: absolute;
6285
- z-index: 1;
6286
- }
6287
-
6288
- .premium-badge-stripe {
6289
- position: absolute;
6290
- -webkit-transform: rotate(90deg);
6291
- -ms-transform: rotate(90deg);
6292
- transform: rotate(90deg);
6293
- width: 15em;
6294
- overflow: hidden;
6295
- height: 15em;
6296
- }
6297
-
6298
- .premium-badge-stripe.premium-badge-left {
6299
- -webkit-transform: rotate(0);
6300
- -ms-transform: rotate(0);
6301
- transform: rotate(0);
6302
- }
6303
-
6304
- .premium-badge-stripe .corner {
6305
- text-align: center;
6306
- left: 0;
6307
- width: 150%;
6308
- -webkit-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
6309
- -ms-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
6310
- transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
6311
- margin-top: 35px;
6312
- font-size: 13px;
6313
- line-height: 2;
6314
- font-weight: 800;
6315
- text-transform: uppercase;
6316
- }
6317
-
6318
- .premium-badge-flag .corner {
6319
- text-align: center;
6320
- -webkit-border-radius: 4px 4px 0 4px;
6321
- border-radius: 4px 4px 0 4px;
6322
- padding: 3px 15px;
6323
- position: absolute;
6324
- top: 10%;
6325
- right: -8px;
6326
- }
6327
-
6328
- .premium-badge-flag .corner::before,
6329
- .premium-badge-flag .corner::after {
6330
- content: "";
6331
- display: block;
6332
- position: absolute;
6333
- width: 0;
6334
- height: 0;
6335
- top: 100%;
6336
- right: 0;
6337
- border-bottom: 8px solid transparent;
6338
- }
6339
-
6340
- .elementor-widget-premium-addon-pricing-table .elementor-widget-container {
6341
- overflow: visible !important;
6342
- }
6343
-
6344
- .premium-badge-flag .corner::after {
6345
- border-left: 8px solid rgba(0, 0, 0, 0.2);
6346
- }
6347
-
6348
- .premium-pricing-price-currency {
6349
- position: relative;
6350
- }
6351
-
6352
- .premium-pricing-button-container {
6353
- display: block;
6354
- }
6355
-
6356
- .premium-pricing-list {
6357
- -js-display: flex;
6358
- display: -webkit-box;
6359
- display: -webkit-flex;
6360
- display: -moz-box;
6361
- display: -ms-flexbox;
6362
- display: flex;
6363
- -webkit-box-orient: vertical;
6364
- -webkit-box-direction: normal;
6365
- -webkit-flex-direction: column;
6366
- -moz-box-orient: vertical;
6367
- -moz-box-direction: normal;
6368
- -ms-flex-direction: column;
6369
- flex-direction: column;
6370
- list-style-type: none;
6371
- margin: 0;
6372
- }
6373
-
6374
- .premium-pricing-list .premium-pricing-list-item {
6375
- -js-display: flex;
6376
- display: -webkit-box;
6377
- display: -webkit-flex;
6378
- display: -moz-box;
6379
- display: -ms-flexbox;
6380
- display: flex;
6381
- -webkit-box-align: center;
6382
- -webkit-align-items: center;
6383
- -moz-box-align: center;
6384
- -ms-flex-align: center;
6385
- align-items: center;
6386
- }
6387
-
6388
- .premium-pricing-list .premium-pricing-list-item svg {
6389
- width: 50px;
6390
- height: 50px;
6391
- }
6392
-
6393
- .premium-pricing-list .premium-pricing-list-item img {
6394
- width: 30px;
6395
- height: 30px;
6396
- -o-object-fit: cover;
6397
- object-fit: cover;
6398
- }
6399
-
6400
- .premium-pricing-list .premium-pricing-list-span {
6401
- position: relative;
6402
- }
6403
-
6404
- .premium-pricing-list .list-item-tooltip {
6405
- border-bottom: 1px dotted;
6406
- }
6407
-
6408
- .premium-pricing-list .premium-pricing-list-tooltip {
6409
- position: absolute;
6410
- top: -webkit-calc(100% + 1px);
6411
- top: calc(100% + 1px);
6412
- right: 0;
6413
- visibility: hidden;
6414
- padding: 15px 20px;
6415
- -webkit-border-radius: 5px;
6416
- border-radius: 5px;
6417
- min-width: 200px;
6418
- overflow: hidden;
6419
- text-align: right;
6420
- font-size: 0.8rem;
6421
- color: #fff;
6422
- background-color: #aaa;
6423
- }
6424
-
6425
- .premium-pricing-features-left .premium-pricing-list-span {
6426
- text-align: right;
6427
- }
6428
-
6429
- .premium-pricing-features-center .premium-pricing-list-span {
6430
- text-align: center;
6431
- }
6432
-
6433
- .premium-pricing-features-right .premium-pricing-list-span {
6434
- text-align: left;
6435
- }
6436
-
6437
- .premium-pricing-list-span:hover .premium-pricing-list-tooltip {
6438
- z-index: 99;
6439
- visibility: visible;
6440
- opacity: 1;
6441
- }
6442
-
6443
- .premium-pricing-slashed-price-value {
6444
- display: inline-block;
6445
- font-size: 20px;
6446
- font-weight: 400;
6447
- margin-left: 5px;
6448
- }
6449
-
6450
- .premium-pricing-price-value {
6451
- font-size: 70px;
6452
- }
6453
-
6454
- .premium-pricing-description-container li {
6455
- list-style-position: inside;
6456
- text-indent: -40px;
6457
- }
6458
-
6459
- @-moz-document url-prefix() {
6460
- .premium-pricing-description-container li {
6461
- text-indent: 0px;
6462
- }
6463
- }
6464
-
6465
- .premium-pricing-price-button {
6466
- display: block;
6467
- padding: 6px 12px;
6468
- line-height: 1.42857143;
6469
- text-align: center;
6470
- color: #fff;
6471
- background: #6ec1e4;
6472
- margin-bottom: 0;
6473
- -webkit-transition: all 0.3s ease-in-out;
6474
- transition: all 0.3s ease-in-out;
6475
  }
6476
  /**************** Premium Progress Bar ****************/
6477
  /******************************************************/
@@ -6891,259 +8257,259 @@ ul.premium-person-social-list {
6891
  position: absolute;
6892
  z-index: 1;
6893
  }
6894
- /**************** Premium Title ****************/
6895
- /***********************************************/
6896
- .premium-title-container .premium-title-header {
6897
- position: relative;
6898
- margin: 0;
6899
- padding: 10px;
6900
- }
6901
-
6902
- .premium-title-container .premium-title-header:not(.premium-title-style7) {
6903
- -webkit-box-align: center;
6904
- -webkit-align-items: center;
6905
- -moz-box-align: center;
6906
- -ms-flex-align: center;
6907
- align-items: center;
6908
- }
6909
-
6910
- .premium-title-container .premium-title-header svg {
6911
- width: 40px;
6912
- height: 40px;
6913
- }
6914
-
6915
- .premium-title-container .premium-title-header img {
6916
- width: 40px;
6917
- height: 40px;
6918
- -o-object-fit: cover;
6919
- object-fit: cover;
6920
- }
6921
-
6922
- .premium-title-container .premium-title-header a {
6923
- position: absolute;
6924
- top: 0;
6925
- right: 0;
6926
- width: 100%;
6927
- height: 100%;
6928
- }
6929
-
6930
- .premium-title-container .premium-lottie-animation {
6931
- -js-display: flex;
6932
- display: -webkit-box;
6933
- display: -webkit-flex;
6934
- display: -moz-box;
6935
- display: -ms-flexbox;
6936
- display: flex;
6937
- }
6938
-
6939
- .premium-title-icon-row .premium-title-icon {
6940
- margin-left: 10px;
6941
- }
6942
-
6943
- .premium-title-icon-row-reverse .premium-title-icon {
6944
- margin-right: 10px;
6945
- }
6946
-
6947
- .premium-title-style3,
6948
- .premium-title-style4 {
6949
- -js-display: flex;
6950
- display: -webkit-box;
6951
- display: -webkit-flex;
6952
- display: -moz-box;
6953
- display: -ms-flexbox;
6954
- display: flex;
6955
- }
6956
-
6957
- .premium-title-style1,
6958
- .premium-title-style2,
6959
- .premium-title-style5,
6960
- .premium-title-style6,
6961
- .premium-title-style8,
6962
- .premium-title-style9 {
6963
- -js-display: inline-flex;
6964
- display: -webkit-inline-box;
6965
- display: -webkit-inline-flex;
6966
- display: -moz-inline-box;
6967
- display: -ms-inline-flexbox;
6968
- display: inline-flex;
6969
- }
6970
-
6971
- .premium-title-style7 {
6972
- -js-display: inline-flex;
6973
- display: -webkit-inline-box;
6974
- display: -webkit-inline-flex;
6975
- display: -moz-inline-box;
6976
- display: -ms-inline-flexbox;
6977
- display: inline-flex;
6978
- -webkit-box-orient: vertical;
6979
- -webkit-box-direction: normal;
6980
- -webkit-flex-direction: column;
6981
- -moz-box-orient: vertical;
6982
- -moz-box-direction: normal;
6983
- -ms-flex-direction: column;
6984
- flex-direction: column;
6985
- }
6986
-
6987
- .premium-title-style7 .premium-title-style7-inner {
6988
- -js-display: flex;
6989
- display: -webkit-box;
6990
- display: -webkit-flex;
6991
- display: -moz-box;
6992
- display: -ms-flexbox;
6993
- display: flex;
6994
- -webkit-box-align: center;
6995
- -webkit-align-items: center;
6996
- -moz-box-align: center;
6997
- -ms-flex-align: center;
6998
- align-items: center;
6999
- }
7000
-
7001
- .premium-title-style1 {
7002
- border-width: 0;
7003
- border-right: 3px solid #6ec1e4;
7004
- }
7005
-
7006
- .premium-title-container.style2,
7007
- .premium-title-container.style4,
7008
- .premium-title-container.style5,
7009
- .premium-title-container.style6 {
7010
- border-bottom: 3px solid #6ec1e4;
7011
- }
7012
-
7013
- /*Style 6 Header*/
7014
- .premium-title-style6:before {
7015
- position: absolute;
7016
- right: 50%;
7017
- bottom: 0;
7018
- margin-right: -2px;
7019
- content: "";
7020
- border: 3px solid transparent;
7021
- }
7022
-
7023
- /*Style 6 Trinagle*/
7024
- .premium-title-style7-stripe-wrap {
7025
- -js-display: flex;
7026
- display: -webkit-box;
7027
- display: -webkit-flex;
7028
- display: -moz-box;
7029
- display: -ms-flexbox;
7030
- display: flex;
7031
- }
7032
-
7033
- .premium-title-style7:before {
7034
- display: none;
7035
- }
7036
-
7037
- .premium-title-style8 .premium-title-text[data-animation="shiny"] {
7038
- -webkit-background-size: 125px 125px !important;
7039
- background-size: 125px !important;
7040
- color: rgba(255, 255, 255, 0);
7041
- -webkit-background-clip: text !important;
7042
- background-clip: text !important;
7043
- -webkit-animation-name: pa-shinny-text !important;
7044
- animation-name: pa-shinny-text !important;
7045
- -webkit-animation-duration: var(--animation-speed) !important;
7046
- animation-duration: var(--animation-speed) !important;
7047
- -webkit-animation-iteration-count: infinite !important;
7048
- animation-iteration-count: infinite !important;
7049
- background: var(--base-color) -webkit-gradient(linear,
7050
- left top,
7051
- right top,
7052
- from(var(--base-color)),
7053
- to(var(--base-color)),
7054
- color-stop(0.5, var(--shiny-color))) 0 0 no-repeat;
7055
- }
7056
-
7057
- .premium-title-style9[data-animation-blur="process"] .premium-title-style9-letter {
7058
- -webkit-animation: pa-blur-shadow 2s 1 alternate;
7059
- animation: pa-blur-shadow 2s 1 alternate;
7060
- }
7061
-
7062
- .premium-title-gradient-yes .premium-title-text,
7063
- .premium-title-gradient-yes .premium-title-icon {
7064
- -webkit-background-clip: text;
7065
- -webkit-text-fill-color: transparent;
7066
- background-image: -webkit-gradient(linear, left top, right top, from(#ffa648), color-stop(#f17cc1), to(#4da9fd));
7067
- background-image: -webkit-linear-gradient(left, #ffa648, #f17cc1, #4da9fd);
7068
- background-image: linear-gradient(to right, #ffa648, #f17cc1, #4da9fd);
7069
- -webkit-animation: pa-text-gradient 8s infinite;
7070
- animation: pa-text-gradient 8s infinite;
7071
- }
7072
-
7073
- .premium-title-clipped .premium-title-header {
7074
- -webkit-text-fill-color: transparent;
7075
- -webkit-background-clip: text;
7076
- background-clip: text;
7077
- }
7078
-
7079
- @-webkit-keyframes pa-shinny-text {
7080
- 0% {
7081
- background-position: 100%;
7082
- }
7083
-
7084
- 100% {
7085
- background-position: -100%;
7086
- }
7087
- }
7088
-
7089
- @keyframes pa-shinny-text {
7090
- 0% {
7091
- background-position: 100%;
7092
- }
7093
-
7094
- 100% {
7095
- background-position: -100%;
7096
- }
7097
- }
7098
-
7099
- @-webkit-keyframes pa-blur-shadow {
7100
- from {
7101
- text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
7102
- color: transparent;
7103
- }
7104
-
7105
- to {
7106
- text-shadow: 0;
7107
- }
7108
- }
7109
-
7110
- @keyframes pa-blur-shadow {
7111
- from {
7112
- text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
7113
- color: transparent;
7114
- }
7115
-
7116
- to {
7117
- text-shadow: 0;
7118
- }
7119
- }
7120
-
7121
- @-webkit-keyframes pa-text-gradient {
7122
-
7123
- 0%,
7124
- 100% {
7125
- -webkit-filter: hue-rotate(0deg);
7126
- filter: hue-rotate(0deg);
7127
- }
7128
-
7129
- 50% {
7130
- -webkit-filter: hue-rotate(360deg);
7131
- filter: hue-rotate(360deg);
7132
- }
7133
- }
7134
-
7135
- @keyframes pa-text-gradient {
7136
-
7137
- 0%,
7138
- 100% {
7139
- -webkit-filter: hue-rotate(0deg);
7140
- filter: hue-rotate(0deg);
7141
- }
7142
-
7143
- 50% {
7144
- -webkit-filter: hue-rotate(360deg);
7145
- filter: hue-rotate(360deg);
7146
- }
7147
  }
7148
  /**************** Premium Video Box ************/
7149
  /***********************************************/
1
  @charset "UTF-8";
2
  @font-face {
3
  font-family: "pa-elements";
4
+ src: url("../../editor/fonts/pa-elements.eot?60rfh2");
5
+ src: url("../../editor/fonts/pa-elements.eot?60rfh2#iefix") format("embedded-opentype"), url("../../editor/fonts/pa-elements.ttf?60rfh2") format("truetype"), url("../../editor/fonts/pa-elements.woff?60rfh2") format("woff"), url("../../editor/fonts/pa-elements.svg?60rfh2#pa-elements") format("svg");
6
  font-weight: normal;
7
  font-style: normal;
8
  }
3839
  transform: rotateX(180deg);
3840
  }
3841
  }
3842
+ /**************** Premium Bullet List *****************/
3843
+ /******************************************************/
3844
+ .premium-bullet-list-box {
3845
+ -js-display: flex;
3846
+ display: -webkit-box;
3847
+ display: -webkit-flex;
3848
+ display: -moz-box;
3849
+ display: -ms-flexbox;
3850
+ display: flex;
3851
+ -webkit-flex-wrap: wrap;
3852
+ -ms-flex-wrap: wrap;
3853
+ flex-wrap: wrap;
3854
+ -webkit-box-orient: vertical;
3855
+ -webkit-box-direction: normal;
3856
+ -webkit-flex-direction: column;
3857
+ -moz-box-orient: vertical;
3858
+ -moz-box-direction: normal;
3859
+ -ms-flex-direction: column;
3860
+ flex-direction: column;
3861
+ }
3862
+
3863
+ .premium-bullet-list-box .premium-bullet-list-content-grow-lc {
3864
+ -webkit-transform-origin: right center;
3865
+ -ms-transform-origin: right center;
3866
+ transform-origin: right center;
3867
+ }
3868
+
3869
+ .premium-bullet-list-box .premium-bullet-list-content-grow-rc {
3870
+ -webkit-transform-origin: left center;
3871
+ -ms-transform-origin: left center;
3872
+ transform-origin: left center;
3873
+ }
3874
+
3875
+ .premium-bullet-list-box .premium-bullet-list-content-grow-cc {
3876
+ -webkit-transform-origin: center center;
3877
+ -ms-transform-origin: center center;
3878
+ transform-origin: center center;
3879
+ }
3880
+
3881
+ .premium-bullet-list-content {
3882
+ -js-display: flex;
3883
+ display: -webkit-box;
3884
+ display: -webkit-flex;
3885
+ display: -moz-box;
3886
+ display: -ms-flexbox;
3887
+ display: flex;
3888
+ -webkit-transition: all 0.3s ease-in-out;
3889
+ transition: all 0.3s ease-in-out;
3890
+ width: auto;
3891
+ position: relative;
3892
+ }
3893
+
3894
+ .premium-bullet-list-content .premium-bullet-list-text span,
3895
+ .premium-bullet-list-content .premium-bullet-list-wrapper {
3896
+ display: inline-block;
3897
+ -webkit-align-self: center;
3898
+ -ms-flex-item-align: center;
3899
+ align-self: center;
3900
+ -webkit-transition: all 0.3s ease-in-out;
3901
+ transition: all 0.3s ease-in-out;
3902
+ }
3903
+
3904
+ .premium-bullet-list-content .premium-bullet-list-text span {
3905
+ margin: 0 5px;
3906
+ -webkit-box-flex: 1;
3907
+ -webkit-flex: 1;
3908
+ -moz-box-flex: 1;
3909
+ -ms-flex: 1;
3910
+ flex: 1;
3911
+ }
3912
+
3913
+ .premium-bullet-list-content .premium-bullet-list-icon-text p {
3914
+ font-size: 18px;
3915
+ background-color: #eee;
3916
+ padding: 1px 5px;
3917
+ -webkit-border-radius: 2px;
3918
+ border-radius: 2px;
3919
+ }
3920
+
3921
+ .premium-bullet-list-content .premium-bullet-list-text span,
3922
+ .premium-bullet-list-content .premium-bullet-list-icon-text p,
3923
+ .premium-bullet-list-content .premium-bullet-list-wrapper img,
3924
+ .premium-bullet-list-content .premium-bullet-list-wrapper svg,
3925
+ .premium-bullet-list-content .premium-bullet-list-wrapper i {
3926
+ -webkit-transition: all 0.3s ease-in-out;
3927
+ transition: all 0.3s ease-in-out;
3928
+ }
3929
+
3930
+ .premium-bullet-list-content .premium-bullet-list-wrapper {
3931
+ position: relative;
3932
+ line-height: 0;
3933
+ }
3934
+
3935
+ .premium-bullet-list-content .premium-bullet-list-wrapper img,
3936
+ .premium-bullet-list-content .premium-bullet-list-wrapper svg {
3937
+ width: 30px !important;
3938
+ height: 30px !important;
3939
+ position: relative;
3940
+ z-index: 500;
3941
+ }
3942
+
3943
+ .premium-bullet-list-content .premium-bullet-list-wrapper i {
3944
+ width: 1.25em;
3945
+ }
3946
+
3947
+ .premium-bullet-list-content .premium-bullet-list-wrapper i,
3948
+ .premium-bullet-list-content .premium-bullet-list-wrapper .premium-bullet-list-icon-text {
3949
+ position: relative;
3950
+ z-index: 500;
3951
+ }
3952
+
3953
+ .premium-bullet-list-content .premium-bullet-list-link {
3954
+ position: absolute;
3955
+ top: 0;
3956
+ right: 0;
3957
+ width: 100%;
3958
+ height: 100%;
3959
+ z-index: 1000;
3960
+ }
3961
+
3962
+ .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector {
3963
+ width: 100%;
3964
+ height: 100%;
3965
+ position: absolute;
3966
+ top: 0.5em;
3967
+ z-index: 100;
3968
+ -js-display: flex;
3969
+ display: -webkit-box;
3970
+ display: -webkit-flex;
3971
+ display: -moz-box;
3972
+ display: -ms-flexbox;
3973
+ display: flex;
3974
+ -webkit-box-pack: center;
3975
+ -webkit-justify-content: center;
3976
+ -moz-box-pack: center;
3977
+ -ms-flex-pack: center;
3978
+ justify-content: center;
3979
+ }
3980
+
3981
+ .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector .premium-icon-connector-content:after {
3982
+ content: "";
3983
+ border-left-width: 1px;
3984
+ border-left-style: solid;
3985
+ border-color: #333333;
3986
+ display: block;
3987
+ height: 100%;
3988
+ }
3989
+
3990
+ li.premium-bullet-list-content.premium-bullet-list-content-inline {
3991
+ -webkit-align-self: center;
3992
+ -ms-flex-item-align: center;
3993
+ align-self: center;
3994
+ z-index: 2;
3995
+ }
3996
+
3997
+ li.premium-bullet-list-content.premium-bullet-list-content-inline:not(:first-child) {
3998
+ margin: 0 3px;
3999
+ }
4000
+
4001
+ li.premium-bullet-list-content.premium-bullet-list-content-inline:first-child {
4002
+ margin: 0 0 0 3px;
4003
+ }
4004
+
4005
+ .premium-bullet-list-divider:not(:last-child) {
4006
+ width: 100%;
4007
+ -webkit-box-flex: 0;
4008
+ -webkit-flex: 0 0 100%;
4009
+ -moz-box-flex: 0;
4010
+ -ms-flex: 0 0 100%;
4011
+ flex: 0 0 100%;
4012
+ overflow: hidden;
4013
+ }
4014
+
4015
+ .premium-bullet-list-divider:not(:last-child):after {
4016
+ content: "";
4017
+ display: block;
4018
+ border-top-style: solid;
4019
+ border-top-width: 1px;
4020
+ }
4021
+
4022
+ .premium-bullet-list-divider-inline:not(:last-child) {
4023
+ float: left;
4024
+ display: inline-block;
4025
+ position: relative;
4026
+ height: 100%;
4027
+ overflow: hidden;
4028
+ -webkit-align-self: center;
4029
+ -ms-flex-item-align: center;
4030
+ align-self: center;
4031
+ margin: 0 3px;
4032
+ }
4033
+
4034
+ .premium-bullet-list-divider-inline:not(:last-child):after {
4035
+ content: "";
4036
+ display: block;
4037
+ border-right-width: 1px;
4038
+ height: 33px;
4039
+ border-right-style: solid;
4040
+ }
4041
+
4042
+ .premium-bullet-list-icon-text {
4043
+ line-height: 1.5;
4044
+ }
4045
+
4046
+ .premium-bullet-list-icon-text p,
4047
+ ul.premium-bullet-list-box,
4048
+ li.premium-bullet-list-content {
4049
+ margin: 0;
4050
+ }
4051
+
4052
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper i,
4053
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-text span,
4054
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-icon-text p {
4055
+ color: transparent !important;
4056
+ text-shadow: 0 0 3px #aaa;
4057
+ }
4058
+
4059
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-icon-connector-content,
4060
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper .premium-lottie-animation svg,
4061
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper img,
4062
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-badge {
4063
+ -webkit-filter: blur(3px);
4064
+ filter: blur(3px);
4065
+ }
4066
+
4067
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper i,
4068
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-text span,
4069
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-icon-text p {
4070
+ color: #aaa !important;
4071
+ text-shadow: 0 0px 0 transparent;
4072
+ }
4073
+
4074
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-icon-connector-content,
4075
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper .premium-lottie-animation svg,
4076
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper img,
4077
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-badge {
4078
+ -webkit-filter: none;
4079
+ filter: none;
4080
+ }
4081
+
4082
+ .premium-bullet-list-content .premium-bullet-list-badge {
4083
+ font-size: 11px;
4084
+ top: auto;
4085
+ min-width: -webkit-max-content;
4086
+ min-width: -moz-max-content;
4087
+ min-width: max-content;
4088
+ height: -webkit-fit-content;
4089
+ height: -moz-fit-content;
4090
+ height: fit-content;
4091
+ }
4092
+
4093
+ .premium-bullet-list-content .premium-bullet-list-icon-text p {
4094
+ font-size: 13px;
4095
+ }
4096
+
4097
+ .premium-bullet-list-gradient-effect[data-text] {
4098
+ display: inline-block;
4099
+ position: relative;
4100
+ text-decoration: none;
4101
+ }
4102
+
4103
+ .premium-bullet-list-gradient-effect[data-text]::before {
4104
+ content: attr(data-text);
4105
+ position: absolute;
4106
+ z-index: 1;
4107
+ overflow: hidden;
4108
+ -webkit-clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
4109
+ clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
4110
+ -webkit-background-clip: text;
4111
+ background-clip: text;
4112
+ -webkit-text-fill-color: transparent;
4113
+ -webkit-transition: all 0.4s ease;
4114
+ transition: all 0.4s ease;
4115
+ }
4116
+
4117
+ .premium-bullet-list-content:hover .premium-bullet-list-gradient-effect[data-text]::before,
4118
+ .premium-bullet-list-content:focus .premium-bullet-list-gradient-effect[data-text]::before {
4119
+ -webkit-animation: rtlgradient 1s forwards;
4120
+ animation: rtlgradient 1s forwards;
4121
+ }
4122
+
4123
+ @-webkit-keyframes rtlgradient {
4124
+ 0% {
4125
+ -webkit-clip-path: circle(0% at 150% 50%);
4126
+ clip-path: circle(0% at 150% 50%);
4127
+ }
4128
+
4129
+ 100% {
4130
+ -webkit-clip-path: circle(100% at 50% 50%);
4131
+ clip-path: circle(100% at 50% 50%);
4132
+ }
4133
+ }
4134
+
4135
+ @keyframes rtlgradient {
4136
+ 0% {
4137
+ -webkit-clip-path: circle(0% at 150% 50%);
4138
+ clip-path: circle(0% at 150% 50%);
4139
+ }
4140
+
4141
+ 100% {
4142
+ -webkit-clip-path: circle(100% at 50% 50%);
4143
+ clip-path: circle(100% at 50% 50%);
4144
+ }
4145
+ }
4146
+
4147
+ ul[data-list-animation*="animated-"] .premium-bullet-list-divider,
4148
+ ul[data-list-animation*="animated-"] .premium-bullet-list-content,
4149
+ ul[data-list-animation*="animated-"] .premium-bullet-list-divider-inline {
4150
+ opacity: 0;
4151
+ }
4152
+
4153
+ .premium-bullet-list-content-grow-effect:hover {
4154
+ -webkit-transform: scale(1.07);
4155
+ -ms-transform: scale(1.07);
4156
+ transform: scale(1.07);
4157
+ }
4158
+
4159
+ @-webkit-keyframes spin {
4160
+ 100% {
4161
+ -webkit-transform: rotate(360deg);
4162
+ transform: rotate(360deg);
4163
+ }
4164
+ }
4165
+
4166
+ @keyframes spin {
4167
+ 100% {
4168
+ -webkit-transform: rotate(360deg);
4169
+ transform: rotate(360deg);
4170
+ }
4171
  }
4172
  /**************** Premium Image Button ***********/
4173
  /*************************************************/
4884
  -webkit-transition: all 0.3s ease-in-out;
4885
  transition: all 0.3s ease-in-out;
4886
  }
4887
+ /******** Premium Media Grid ********/
4888
+ /************************************/
4889
+ .premium-img-gallery-filter,
4890
+ .premium-blog-filter {
4891
+ display: -webkit-box;
4892
+ display: -webkit-flex;
4893
+ display: -ms-flexbox;
4894
+ -js-display: flex;
4895
+ display: -moz-box;
4896
+ display: flex;
4897
+ -webkit-box-align: center;
4898
+ -webkit-align-items: center;
4899
+ -moz-box-align: center;
4900
+ -ms-flex-align: center;
4901
+ align-items: center;
4902
+ -webkit-box-pack: center;
4903
+ -webkit-justify-content: center;
4904
+ -moz-box-pack: center;
4905
+ -ms-flex-pack: center;
4906
+ justify-content: center;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4907
  }
4908
+
4909
+ .premium-img-gallery {
4910
+ clear: both;
4911
+ overflow: hidden;
 
 
 
 
 
 
 
 
4912
  }
4913
 
4914
+ .premium-gallery-container .premium-gallery-item {
4915
+ padding: 10px;
4916
+ float: right;
4917
+ /* Google Chrome isotope issue */
 
 
 
4918
  }
4919
+
4920
+ .premium-gallery-container .grid-sizer {
4921
+ width: 33.33%;
 
 
4922
  }
4923
 
4924
+ .premium-img-gallery-filter .premium-gallery-cats-container li a.category,
4925
+ .premium-blog-filter .premium-blog-filters-container li a.category {
4926
+ outline: none;
4927
+ text-decoration: none;
4928
+ -webkit-border-radius: 75px;
4929
+ border-radius: 75px;
4930
+ margin: 15px 5px 20px;
4931
+ padding: 7px 20px;
4932
+ -webkit-transition: all 0.3s ease-in-out;
4933
+ transition: all 0.3s ease-in-out;
4934
  }
4935
 
4936
+ /* .premium-img-gallery-filter .premium-gallery-cats-container li a.category span {
4937
+ -webkit-transition: all 0.3s ease-in-out;
4938
+ transition: all 0.3s ease-in-out;
4939
+ } */
4940
+
4941
+ .pa-gallery-img {
4942
+ position: relative;
4943
  }
4944
 
4945
+ .pa-gallery-img .pa-gallery-whole-link {
4946
+ position: absolute;
4947
+ top: 0;
4948
+ right: 0;
4949
+ width: 100%;
4950
+ height: 100%;
4951
  }
4952
+
4953
+ .pa-gallery-img.style2 .pa-gallery-whole-link {
4954
+ z-index: 99;
4955
+ }
4956
+
4957
+ .pa-gallery-img-container {
4958
+ overflow: hidden;
4959
+ -webkit-backface-visibility: hidden;
4960
+ -moz-backface-visibility: hidden;
4961
+ -webkit-transform: translate3d(0, 0, 0);
4962
+ transform: translate3d(0, 0, 0);
4963
+ }
4964
+
4965
+ .pa-gallery-img-container img {
4966
+ display: block;
4967
+ width: 100%;
4968
+ -webkit-transition: all 0.3s ease-in-out;
4969
+ transition: all 0.3s ease-in-out;
4970
+ }
4971
+
4972
+ .premium-img-gallery.gray img {
4973
+ -webkit-filter: grayscale(100%);
4974
+ filter: grayscale(100%);
4975
+ }
4976
+
4977
+ .premium-img-gallery.zoomout img,
4978
+ .premium-img-gallery.scale img {
4979
+ -webkit-transform: scale(1.2);
4980
+ -ms-transform: scale(1.2);
4981
+ transform: scale(1.2);
4982
+ }
4983
+
4984
+ .premium-img-gallery.sepia img {
4985
+ -webkit-filter: sepia(30%);
4986
+ filter: sepia(30%);
4987
+ }
4988
+
4989
+ .premium-img-gallery.bright img {
4990
+ -webkit-filter: brightness(1);
4991
+ filter: brightness(1);
4992
+ }
4993
+
4994
+ .premium-img-gallery.trans img {
4995
+ -webkit-transform: translateX(15px) scale(1.1);
4996
+ -ms-transform: translateX(15px) scale(1.1);
4997
+ transform: translateX(15px) scale(1.1);
4998
+ }
4999
+
5000
+ .pa-gallery-img .pa-gallery-magnific-image,
5001
+ .pa-gallery-img .pa-gallery-img-link {
5002
+ outline: none;
5003
+ }
5004
+
5005
+ .pa-gallery-img .pa-gallery-magnific-image i,
5006
+ .pa-gallery-img .pa-gallery-magnific-image svg,
5007
+ .pa-gallery-img .pa-gallery-img-link i,
5008
+ .pa-gallery-img .pa-gallery-img-link svg {
5009
+ -webkit-transition: all 0.3s ease-in-out;
5010
+ transition: all 0.3s ease-in-out;
5011
+ }
5012
+
5013
+ .pa-gallery-img .pa-gallery-magnific-image span,
5014
+ .pa-gallery-img .pa-gallery-img-link span {
5015
+ line-height: 1;
5016
+ display: inline-block;
5017
+ opacity: 0;
5018
+ margin: 0 5px;
5019
+ padding: 15px;
5020
+ -webkit-border-radius: 50%;
5021
+ border-radius: 50%;
5022
+ }
5023
+
5024
+ .pa-gallery-img.style2 .pa-gallery-magnific-image span,
5025
+ .pa-gallery-img.style2 .pa-gallery-img-link span {
5026
+ margin: 0 5px 20px;
5027
+ }
5028
+
5029
+ .pa-gallery-img:hover .pa-gallery-magnific-image span {
5030
+ -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
5031
+ transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
5032
+ }
5033
+
5034
+ .pa-gallery-img:hover .pa-gallery-img-link span {
5035
+ -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
5036
+ transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
5037
+ }
5038
+
5039
+ .pa-gallery-img:hover .pa-gallery-magnific-image span,
5040
+ .pa-gallery-img:hover .pa-gallery-img-link span,
5041
+ .premium-gallery-icon-show a.pa-gallery-video-icon span {
5042
+ opacity: 1;
5043
+ }
5044
+
5045
+ .premium-img-gallery-filter ul.premium-gallery-cats-container,
5046
+ .premium-blog-filter ul.premium-blog-filters-container {
5047
+ text-align: center;
5048
+ margin: 0;
5049
+ padding: 0;
5050
+ }
5051
+
5052
+ .premium-img-gallery-filter .premium-gallery-cats-container li,
5053
+ .premium-blog-filter .premium-blog-filters-container li {
5054
+ list-style: none;
5055
+ display: -webkit-inline-box;
5056
+ display: -webkit-inline-flex;
5057
+ display: -ms-inline-flexbox;
5058
+ -js-display: inline-flex;
5059
+ display: -moz-inline-box;
5060
+ display: inline-flex;
5061
+ }
5062
+
5063
+ .premium-img-gallery.zoomin .pa-gallery-img:hover img {
5064
+ -webkit-transform: scale(1.1);
5065
+ -ms-transform: scale(1.1);
5066
+ transform: scale(1.1);
5067
+ }
5068
+
5069
+ .premium-img-gallery.zoomout .pa-gallery-img:hover img {
5070
+ -webkit-transform: scale(1);
5071
+ -ms-transform: scale(1);
5072
+ transform: scale(1);
5073
+ }
5074
+
5075
+ .premium-img-gallery.scale .pa-gallery-img:hover img {
5076
+ -webkit-transform: scale(1.3) rotate(-5deg);
5077
+ -ms-transform: scale(1.3) rotate(-5deg);
5078
+ transform: scale(1.3) rotate(-5deg);
5079
+ }
5080
+
5081
+ .premium-img-gallery.gray .pa-gallery-img:hover img {
5082
+ -webkit-filter: grayscale(0%);
5083
+ filter: grayscale(0%);
5084
+ }
5085
+
5086
+ .premium-img-gallery.blur .pa-gallery-img:hover img {
5087
+ -webkit-filter: blur(3px);
5088
+ filter: blur(3px);
5089
+ }
5090
+
5091
+ .premium-img-gallery.sepia .pa-gallery-img:hover img {
5092
+ -webkit-filter: sepia(0%);
5093
+ filter: sepia(0%);
5094
+ }
5095
+
5096
+ .premium-img-gallery.trans .pa-gallery-img:hover img {
5097
+ -webkit-transform: translateX(0px) scale(1.1);
5098
+ -ms-transform: translateX(0px) scale(1.1);
5099
+ transform: translateX(0px) scale(1.1);
5100
+ }
5101
+
5102
+ .premium-img-gallery.bright .pa-gallery-img:hover img {
5103
+ -webkit-filter: brightness(1.2);
5104
+ filter: brightness(1.2);
5105
+ }
5106
+
5107
+ .pa-gallery-img .premium-gallery-caption {
5108
+ padding: 10px;
5109
+ }
5110
+
5111
+ .pa-gallery-img .premium-gallery-caption .premium-gallery-img-name {
5112
+ margin-bottom: 0;
5113
+ }
5114
+
5115
+ .pa-gallery-img.style1 {
5116
+ overflow: hidden;
5117
+ }
5118
+
5119
+ .pa-gallery-img:not(.style2) .pa-gallery-icons-wrapper {
5120
+ position: absolute;
5121
+ top: 0;
5122
+ right: 0;
5123
+ width: 100%;
5124
+ height: 100%;
5125
+ -webkit-transition: all 0.3s ease-in-out;
5126
+ transition: all 0.3s ease-in-out;
5127
+ }
5128
+
5129
+ .pa-gallery-img:not(.style2) .pa-gallery-icons-inner-container {
5130
+ position: absolute;
5131
+ top: 33.33%;
5132
+ width: 100%;
5133
+ text-align: center;
5134
+ -webkit-transform: translateY(-50%);
5135
+ -ms-transform: translateY(-50%);
5136
+ transform: translateY(-50%);
5137
+ z-index: 999;
5138
+ }
5139
+
5140
+ .pa-gallery-img.style1 .premium-gallery-caption {
5141
+ position: absolute;
5142
+ top: auto;
5143
+ left: 0;
5144
+ right: 0;
5145
+ width: 100%;
5146
+ -webkit-transition: all 500ms ease 0s;
5147
+ transition: all 500ms ease 0s;
5148
+ -webkit-transform: translate3d(0, 100%, 0);
5149
+ -ms-transform: translate3d(0, 100%, 0);
5150
+ transform: translate3d(0, 100%, 0);
5151
+ }
5152
+
5153
+ .pa-gallery-img.default .premium-gallery-caption {
5154
+ position: absolute;
5155
+ top: auto;
5156
+ left: 0;
5157
+ right: 0;
5158
+ width: 100%;
5159
+ bottom: 0;
5160
+ }
5161
+
5162
+ .pa-gallery-img.style1:hover .premium-gallery-caption {
5163
+ -webkit-transform: translate3d(0, 0, 0);
5164
+ -ms-transform: translate3d(0, 0, 0);
5165
+ transform: translate3d(0, 0, 0);
5166
+ bottom: -1px !important;
5167
+ }
5168
+
5169
+ .pa-gallery-img.style2 .pa-gallery-icons-caption-container {
5170
+ position: absolute;
5171
+ top: 0;
5172
+ right: 0;
5173
+ width: 100%;
5174
+ height: 100%;
5175
+ opacity: 0;
5176
+ -webkit-backface-visibility: hidden;
5177
+ backface-visibility: hidden;
5178
+ -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
5179
+ -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
5180
+ transition: opacity 0.3s, -webkit-transform 0.3s;
5181
+ transition: transform 0.3s, opacity 0.3s;
5182
+ transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
5183
+ z-index: 1;
5184
+ background-color: rgba(108, 191, 226, 0.68);
5185
+ display: -webkit-box;
5186
+ display: -webkit-flex;
5187
+ display: -ms-flexbox;
5188
+ -js-display: flex;
5189
+ display: -moz-box;
5190
+ display: flex;
5191
+ text-align: center;
5192
+ -webkit-box-align: center;
5193
+ -webkit-align-items: center;
5194
+ -moz-box-align: center;
5195
+ -ms-flex-align: center;
5196
+ align-items: center;
5197
+ }
5198
+
5199
+ .pa-gallery-img.style2 .pa-gallery-icons-caption-cell {
5200
+ width: 100%;
5201
+ }
5202
+
5203
+ .pa-gallery-img.style2:hover .pa-gallery-icons-caption-container {
5204
+ opacity: 1;
5205
+ -webkit-transform: translate(-15px, 15px);
5206
+ -ms-transform: translate(-15px, 15px);
5207
+ transform: translate(-15px, 15px);
5208
+ }
5209
+
5210
+ .premium-clearfix {
5211
+ clear: both;
5212
+ }
5213
+
5214
+ .premium-gallery-container .pa-gallery-item {
5215
+ padding: 10px;
5216
+ }
5217
+
5218
+ /**
5219
+ * Metro Layout
5220
+ */
5221
+ .premium-img-gallery-metro .premium-gallery-item {
5222
+ overflow: hidden;
5223
+ }
5224
+
5225
+ .premium-img-gallery-metro .pa-gallery-img {
5226
+ height: 100%;
5227
+ }
5228
+
5229
+ .premium-img-gallery-metro .pa-gallery-img-container {
5230
+ height: 100%;
5231
+ }
5232
+
5233
+ .premium-img-gallery-metro .pa-gallery-img-container img {
5234
+ min-height: 100%;
5235
+ width: 100%;
5236
+ -o-object-fit: fill;
5237
+ object-fit: fill;
5238
+ }
5239
+
5240
+ .premium-img-gallery .premium-gallery-item-hidden {
5241
+ visibility: hidden;
5242
+ width: 0 !important;
5243
+ height: 0 !important;
5244
+ margin: 0 !important;
5245
+ padding: 0 !important;
5246
+ }
5247
+
5248
+ .premium-gallery-load-more .premium-gallery-load-more-btn {
5249
+ -webkit-box-shadow: none;
5250
+ box-shadow: none;
5251
+ text-shadow: none;
5252
+ border: none;
5253
+ outline: none;
5254
+ -webkit-box-align: center;
5255
+ -ms-flex-align: center;
5256
+ -webkit-align-items: center;
5257
+ -moz-box-align: center;
5258
+ align-items: center;
5259
+ vertical-align: bottom;
5260
+ cursor: pointer;
5261
+ line-height: 1;
5262
+ font-style: normal;
5263
+ font-weight: normal;
5264
+ background-image: none;
5265
+ color: #fff;
5266
+ -webkit-transition: all 0.3s ease-in-out;
5267
+ transition: all 0.3s ease-in-out;
5268
+ }
5269
+
5270
+ .premium-gallery-load-more-btn {
5271
+ display: -webkit-inline-box;
5272
+ display: -webkit-inline-flex;
5273
+ display: -ms-inline-flexbox;
5274
+ -js-display: inline-flex;
5275
+ display: -moz-inline-box;
5276
+ display: inline-flex;
5277
+ -webkit-box-align: center;
5278
+ -webkit-align-items: center;
5279
+ -moz-box-align: center;
5280
+ -ms-flex-align: center;
5281
+ align-items: center;
5282
+ }
5283
+
5284
+ .premium-gallery-load-more-btn div {
5285
+ margin-right: 3px;
5286
+ }
5287
+
5288
+ .premium-gallery-load-more-btn .premium-loader {
5289
+ display: inline-block;
5290
+ width: 20px;
5291
+ height: 20px;
5292
+ }
5293
+
5294
+ /** * Video */
5295
+ .pa-gallery-img .pa-gallery-lightbox-wrap {
5296
+ display: inline-block;
5297
+ }
5298
+
5299
+ .premium-img-gallery-no-lightbox .premium-gallery-video-item .pa-gallery-img,
5300
+ .pa-gallery-img .pa-gallery-video-icon {
5301
+ cursor: pointer;
5302
+ }
5303
+
5304
+ .pa-gallery-img-container iframe,
5305
+ .pa-gallery-img-container video {
5306
+ position: absolute;
5307
+ visibility: hidden;
5308
+ top: 0;
5309
+ right: 0;
5310
+ max-width: 100%;
5311
+ width: 100%;
5312
+ height: 100%;
5313
+ margin: 0;
5314
+ line-height: 1;
5315
+ border: none;
5316
+ }
5317
+
5318
+ .pa-gallery-img-container video {
5319
+ -o-object-fit: contain;
5320
+ object-fit: contain;
5321
+ }
5322
+
5323
+ .pa-gallery-icons-inner-container svg,
5324
+ .pa-gallery-icons-caption-cell svg {
5325
+ width: 14px;
5326
+ height: 14px;
5327
+ }
5328
+
5329
+ .premium-gallery-gradient-layer {
5330
+ position: absolute;
5331
+ bottom: 40px;
5332
+ width: 100%;
5333
+ height: 20px;
5334
+ background: -webkit-gradient(linear, left bottom, left top, from(#17181f), to(rgba(255, 255, 255, 0)));
5335
+ background: -webkit-linear-gradient(bottom, #17181f 0%, rgba(255, 255, 255, 0) 100%);
5336
+ background: linear-gradient(to top, #17181f 0%, rgba(255, 255, 255, 0) 100%);
5337
+ }
5338
+ /********* Premium Lottie Animations **********/
5339
+ /**********************************************/
5340
+ .elementor-widget-premium-lottie .premium-lottie-animation {
5341
+ position: relative;
5342
+ -js-display: inline-flex;
5343
+ display: -webkit-inline-box;
5344
+ display: -webkit-inline-flex;
5345
+ display: -moz-inline-box;
5346
+ display: -ms-inline-flexbox;
5347
+ display: inline-flex;
5348
+ -webkit-transition: all 0.3s ease-in-out;
5349
+ transition: all 0.3s ease-in-out;
5350
+ }
5351
+
5352
+ .elementor-widget-premium-lottie .premium-lottie-animation a {
5353
+ position: absolute;
5354
+ left: 0;
5355
+ top: 0;
5356
+ width: 100%;
5357
+ height: 100%;
5358
+ z-index: 2;
5359
+ }
5360
+ /**************** Premium Google Maps ******************/
5361
+ /*******************************************************/
5362
+ .premium-maps-info-container {
5363
+ margin-top: 10px;
5364
+ margin-bottom: 10px;
5365
+ }
5366
+
5367
+ .premium-maps-info-title,
5368
+ .premium-maps-info-desc {
5369
+ margin: 0;
5370
+ padding: 0;
5371
+ }
5372
+
5373
+ .premium-maps-container .gm-style-iw {
5374
+ text-align: center;
5375
+ direction: ltr;
5376
+ }
5377
+
5378
+ .premium-maps-container .gm-style img {
5379
+ max-width: none !important;
5380
+ }
5381
+ /**************** Premium Modal Box ****************/
5382
+ /***************************************************/
5383
  .premium-modal-trigger-btn,
5384
  .premium-modal-box-modal-lower-close {
5385
  display: inline-block;
5386
+ padding: 6px 12px;
5387
+ margin-bottom: 0;
5388
+ font-size: 14px;
5389
+ font-weight: normal;
5390
+ line-height: 1.42857143;
5391
+ text-align: center;
5392
+ white-space: nowrap;
5393
+ vertical-align: middle;
5394
+ -ms-touch-action: manipulation;
5395
+ touch-action: manipulation;
5396
+ cursor: pointer;
5397
+ -webkit-user-select: none;
5398
+ -moz-user-select: none;
5399
+ -ms-user-select: none;
5400
+ user-select: none;
5401
+ background-image: none;
5402
+ border: 1px solid transparent;
5403
+ }
5404
+
5405
+ .premium-modal-trigger-btn>svg,
5406
+ .premium-modal-trigger-btn .premium-modal-box-icon {
5407
+ -webkit-transition: all 0.3s ease-in-out;
5408
+ transition: all 0.3s ease-in-out;
5409
+ }
5410
+
5411
+ .premium-modal-trigger-btn>svg {
5412
+ width: 30px;
5413
+ height: 30px;
5414
+ }
5415
+
5416
+ .premium-modal-box-modal-close {
5417
+ float: left;
5418
+ font-size: 21px;
5419
+ font-weight: bold;
5420
+ line-height: 1;
5421
+ color: #000;
5422
+ }
5423
+
5424
+ .premium-modal-box-modal-close:hover,
5425
+ .premium-modal-box-modal-close:focus {
5426
+ color: #000;
5427
+ text-decoration: none;
5428
+ cursor: pointer;
5429
+ }
5430
+
5431
+ button.premium-modal-box-modal-close {
5432
+ -webkit-appearance: none;
5433
+ padding: 0;
5434
+ cursor: pointer;
5435
+ background: transparent;
5436
+ border: 0;
5437
+ }
5438
+
5439
+ .premium-modal-box-modal {
5440
+ position: fixed;
5441
+ top: 0;
5442
+ left: 0;
5443
+ bottom: 0;
5444
+ right: 0;
5445
+ z-index: 1050;
5446
+ display: none;
5447
+ -webkit-overflow-scrolling: touch;
5448
+ outline: 0;
5449
+ padding: 0 !important;
5450
+ background: rgba(0, 0, 0, 0.5);
5451
+ -webkit-box-align: center;
5452
+ -webkit-align-items: center;
5453
+ -moz-box-align: center;
5454
+ -ms-flex-align: center;
5455
+ align-items: center;
5456
+ -webkit-box-pack: center;
5457
+ -webkit-justify-content: center;
5458
+ -moz-box-pack: center;
5459
+ -ms-flex-pack: center;
5460
+ justify-content: center;
5461
+ }
5462
+
5463
+ .premium-modal-box-modal .premium-modal-box-modal-dialog {
5464
+ position: absolute;
5465
+ max-height: -webkit-calc(100vh - 150px);
5466
+ max-height: calc(100vh - 150px);
5467
+ -js-display: flex;
5468
+ display: -webkit-box;
5469
+ display: -webkit-flex;
5470
+ display: -moz-box;
5471
+ display: -ms-flexbox;
5472
+ display: flex;
5473
+ -webkit-box-orient: vertical;
5474
+ -webkit-box-direction: normal;
5475
+ -webkit-flex-direction: column;
5476
+ -moz-box-orient: vertical;
5477
+ -moz-box-direction: normal;
5478
+ -ms-flex-direction: column;
5479
+ flex-direction: column;
5480
+ opacity: 0;
5481
+ background-color: #fff;
5482
+ border: 1px solid rgba(0, 0, 0, 0.2);
5483
+ -webkit-border-radius: 6px;
5484
+ border-radius: 6px;
5485
+ }
5486
+
5487
+ .premium-modal-box-modal-content {
5488
+ background-clip: padding-box;
5489
+ outline: 0;
5490
+ overflow-x: hidden;
5491
+ }
5492
+
5493
+ .premium-modal-backdrop.premium-in {
5494
+ filter: alpha(opacity=50);
5495
+ opacity: 0.5 !important;
5496
+ }
5497
+
5498
+ .premium-modal-fade.premium-in {
5499
+ opacity: 1;
5500
+ }
5501
+
5502
+ .premium-modal-backdrop {
5503
+ position: fixed;
5504
+ top: 0;
5505
+ left: 0;
5506
+ bottom: 0;
5507
+ right: 0;
5508
+ z-index: 1040;
5509
+ background-color: #000;
5510
+ }
5511
+
5512
+ .premium-modal-backdrop.premium-modal-fade {
5513
+ filter: alpha(opacity=0);
5514
+ opacity: 0;
5515
+ }
5516
+
5517
+ .premium-modal-fade {
5518
+ opacity: 0;
5519
+ }
5520
+
5521
+ .premium-in {
5522
+ -js-display: flex !important;
5523
+ display: -webkit-box !important;
5524
+ display: -webkit-flex !important;
5525
+ display: -moz-box !important;
5526
+ display: -ms-flexbox !important;
5527
+ display: flex !important;
5528
+ }
5529
+
5530
+ .premium-modal-box-modal-header {
5531
+ -js-display: flex;
5532
+ display: -webkit-box;
5533
+ display: -webkit-flex;
5534
+ display: -moz-box;
5535
+ display: -ms-flexbox;
5536
+ display: flex;
5537
+ -webkit-box-pack: justify;
5538
+ -webkit-justify-content: space-between;
5539
+ -moz-box-pack: justify;
5540
+ -ms-flex-pack: justify;
5541
+ justify-content: space-between;
5542
+ -webkit-box-align: center;
5543
+ -webkit-align-items: center;
5544
+ -moz-box-align: center;
5545
+ -ms-flex-align: center;
5546
+ align-items: center;
5547
+ padding: 5px 15px;
5548
+ border-bottom: 1px solid #e5e5e5;
5549
+ }
5550
+
5551
+ .premium-modal-box-modal-header .premium-modal-box-modal-close {
5552
+ margin-top: -2px;
5553
+ }
5554
+
5555
+ .premium-modal-box-modal-header .premium-modal-box-modal-title {
5556
+ -js-display: flex;
5557
+ display: -webkit-box;
5558
+ display: -webkit-flex;
5559
+ display: -moz-box;
5560
+ display: -ms-flexbox;
5561
+ display: flex;
5562
+ -webkit-box-align: center;
5563
+ -webkit-align-items: center;
5564
+ -moz-box-align: center;
5565
+ -ms-flex-align: center;
5566
+ align-items: center;
5567
+ margin: 0;
5568
+ padding: 0;
5569
+ }
5570
+
5571
+ .premium-modal-box-modal-header .premium-modal-box-modal-title svg {
5572
+ width: 50px;
5573
+ height: 60px;
5574
+ }
5575
+
5576
+ .premium-modal-box-modal-body {
5577
+ position: relative;
5578
+ padding: 15px;
5579
+ }
5580
+
5581
+ .premium-modal-box-modal-footer {
5582
+ padding: 15px;
5583
+ text-align: left;
5584
+ border-top: 1px solid #e5e5e5;
5585
+ }
5586
+
5587
+ .premium-modal-scrollbar-measure {
5588
+ position: absolute;
5589
+ top: -9999px;
5590
+ width: 50px;
5591
+ height: 50px;
5592
+ overflow: scroll;
5593
+ }
5594
+
5595
+ .premium-modal-trigger-text {
5596
+ background: none !important;
5597
+ display: inline-block;
5598
+ }
5599
+
5600
+ .premium-modal-box-container {
5601
+ width: 100% !important;
5602
+ }
5603
+
5604
+ /*Open Modal Button Style*/
5605
+ .premium-modal-trigger-container .premium-modal-trigger-btn {
5606
+ -js-display: inline-flex;
5607
+ display: -webkit-inline-box;
5608
+ display: -webkit-inline-flex;
5609
+ display: -moz-inline-box;
5610
+ display: -ms-inline-flexbox;
5611
+ display: inline-flex;
5612
+ -webkit-box-align: center;
5613
+ -webkit-align-items: center;
5614
+ -moz-box-align: center;
5615
+ -ms-flex-align: center;
5616
+ align-items: center;
5617
+ border: none;
5618
+ -webkit-transition: all 0.3s ease-in-out;
5619
+ transition: all 0.3s ease-in-out;
5620
+ }
5621
+
5622
+ .premium-modal-trigger-container .premium-modal-trigger-btn.premium-btn-block {
5623
+ -webkit-box-pack: center;
5624
+ -webkit-justify-content: center;
5625
+ -moz-box-pack: center;
5626
+ -ms-flex-pack: center;
5627
+ justify-content: center;
5628
+ }
5629
+
5630
+ .premium-modal-trigger-container .premium-modal-trigger-img,
5631
+ .premium-modal-trigger-container .premium-modal-trigger-text,
5632
+ .premium-modal-trigger-container .premium-modal-trigger-animation {
5633
  cursor: pointer;
 
 
 
 
 
 
5634
  }
5635
 
5636
+ .premium-modal-trigger-container .premium-modal-trigger-animation {
5637
+ display: inline-block;
5638
+ width: 200px;
5639
+ height: 200px;
5640
+ -webkit-transition: all 0.3s ease-in-out;
5641
+ transition: all 0.3s ease-in-out;
5642
+ }
5643
+
5644
+ /*Image on Modal Header Style*/
5645
+ .premium-modal-box-modal-header img {
5646
+ width: 48px;
5647
+ padding-left: 5px;
5648
+ }
5649
+
5650
+ .premium-modal-box-modal-header i,
5651
+ .premium-modal-box-modal-header svg {
5652
+ padding-left: 6px;
5653
+ }
5654
+
5655
+ .premium-modal-box-modal-close {
5656
+ position: relative;
5657
+ z-index: 99;
5658
+ }
5659
+
5660
+ .premium-modal-trigger-img,
5661
+ .premium-modal-trigger-text,
5662
+ .premium-modal-box-close-button-container,
5663
+ .premium-modal-box-modal-close,
5664
+ .premium-modal-box-modal-lower-close {
5665
+ -webkit-transition: all 0.3s ease-in-out;
5666
+ transition: all 0.3s ease-in-out;
5667
+ }
5668
+
5669
+ @media (min-width: 768px) {
5670
+ .premium-modal-box-modal-dialog {
5671
+ width: 700px;
5672
+ max-height: 600px;
5673
+ overflow: auto;
5674
+ }
5675
+ }
5676
+
5677
+ @media (max-width: 767px) {
5678
+ .premium-modal-box-modal-dialog {
5679
+ width: 100%;
5680
+ max-height: 500px;
5681
+ overflow: auto;
5682
+ }
5683
+ }
5684
+
5685
+ .premium-modal-box-container[data-modal-animation*="animated-"] {
5686
+ opacity: 0;
5687
+ }
5688
+ /************ Premium Nav Menu ************/
5689
+ .premium-nav-menu-container ul {
5690
+ list-style: none;
5691
+ margin: 0;
5692
+ }
5693
+
5694
+ .premium-nav-menu-container .premium-main-nav-menu {
5695
+ -js-display: flex;
5696
+ display: -webkit-box;
5697
+ display: -webkit-flex;
5698
+ display: -moz-box;
5699
+ display: -ms-flexbox;
5700
+ display: flex;
5701
+ height: 100%;
5702
+ }
5703
+
5704
+ /*Vertical Main Menu**/
5705
+ .premium-nav-ver .premium-nav-menu-container {
5706
+ width: 45%;
5707
+ }
5708
+
5709
+ .premium-nav-ver .premium-main-nav-menu {
5710
+ position: relative;
5711
+ -webkit-box-orient: vertical;
5712
+ -webkit-box-direction: normal;
5713
+ -webkit-flex-direction: column;
5714
+ -moz-box-orient: vertical;
5715
+ -moz-box-direction: normal;
5716
+ -ms-flex-direction: column;
5717
+ flex-direction: column;
5718
+ -webkit-box-align: start;
5719
+ -webkit-align-items: flex-start;
5720
+ -moz-box-align: start;
5721
+ -ms-flex-align: start;
5722
+ align-items: flex-start;
5723
+ }
5724
+
5725
+ .premium-nav-ver:not(.premium-hamburger-menu)
5726
+ .premium-nav-menu-item.menu-item-has-children
5727
+ .premium-sub-menu {
5728
+ visibility: hidden;
5729
+ opacity: 0;
5730
+ position: absolute;
5731
+ min-width: 250px;
5732
+ }
5733
+
5734
+ .premium-nav-ver:not(.premium-hamburger-menu)
5735
+ .premium-nav-menu-item.menu-item-has-children:hover
5736
+ > .premium-sub-menu,
5737
+ .premium-nav-ver:not(.premium-hamburger-menu)
5738
+ .premium-nav-menu-item.menu-item-has-children:hover
5739
+ .premium-mega-content-container {
5740
+ opacity: 1;
5741
+ visibility: visible;
5742
+ }
5743
+
5744
+ .premium-nav-ver .premium-nav-menu-item {
5745
+ width: 100%;
5746
+ }
5747
+
5748
+ .premium-nav-ver.premium-vertical-right .premium-mega-content-container,
5749
+ .premium-nav-ver.premium-vertical-right
5750
+ .premium-nav-menu-item.menu-item-has-children
5751
+ .premium-sub-menu {
5752
+ left: 100%;
5753
+ top: 0;
5754
+ }
5755
+
5756
+ .premium-nav-ver.premium-vertical-left .premium-mega-content-container,
5757
+ .premium-nav-ver.premium-vertical-left
5758
+ .premium-nav-menu-item.menu-item-has-children
5759
+ .premium-sub-menu {
5760
+ right: 100%;
5761
+ top: 0;
5762
+ }
5763
+
5764
+ .premium-nav-ver.premium-vertical-left .premium-menu-link {
5765
+ -webkit-box-orient: horizontal;
5766
+ -webkit-box-direction: reverse;
5767
+ -webkit-flex-direction: row-reverse;
5768
+ -moz-box-orient: horizontal;
5769
+ -moz-box-direction: reverse;
5770
+ -ms-flex-direction: row-reverse;
5771
+ flex-direction: row-reverse;
5772
+ }
5773
+
5774
+ /*Horizontal Main Menu**/
5775
+ .premium-nav-hor .premium-nav-menu-container {
5776
+ height: 60px;
5777
+ }
5778
+
5779
+ .premium-nav-hor:not(.premium-hamburger-menu)
5780
+ .premium-nav-menu-item
5781
+ .premium-sub-menu {
5782
+ visibility: hidden;
5783
+ opacity: 0;
5784
+ position: absolute;
5785
+ min-width: 220px;
5786
+ }
5787
+
5788
+ .premium-nav-hor:not(.premium-hamburger-menu)
5789
+ .premium-nav-menu-item
5790
+ > .premium-sub-menu,
5791
+ .premium-nav-hor:not(.premium-hamburger-menu)
5792
+ .premium-nav-menu-item
5793
+ .premium-mega-content-container {
5794
+ top: 100%;
5795
+ }
5796
+
5797
+ .premium-nav-hor:not(.premium-hamburger-menu)
5798
+ .premium-nav-menu-item
5799
+ > .premium-sub-menu
5800
+ .premium-sub-menu,
5801
+ .premium-nav-hor:not(.premium-hamburger-menu)
5802
+ .premium-nav-menu-item
5803
+ .premium-mega-content-container
5804
+ .premium-sub-menu {
5805
+ right: 100%;
5806
+ top: 0;
5807
+ }
5808
+
5809
+ .premium-nav-hor:not(.premium-hamburger-menu)
5810
+ .premium-nav-menu-item:hover
5811
+ > .premium-sub-menu,
5812
+ .premium-nav-hor:not(.premium-hamburger-menu)
5813
+ .premium-nav-menu-item:hover
5814
+ .premium-mega-content-container {
5815
+ visibility: visible;
5816
+ opacity: 1;
5817
+ }
5818
+
5819
+ .premium-nav-hor:not(.premium-hamburger-menu)
5820
+ .premium-nav-menu-item.premium-mega-item-static
5821
+ .premium-mega-content-container {
5822
+ left: 50%;
5823
+ -webkit-transform: translateX(-50%);
5824
+ -ms-transform: translateX(-50%);
5825
+ transform: translateX(-50%);
5826
+ }
5827
+
5828
+ .premium-nav-hor:not(.premium-hamburger-menu)
5829
+ .premium-nav-menu-item:not(.premium-mega-item-static)
5830
+ .premium-mega-content-container {
5831
+ left: 0;
5832
+ }
5833
+
5834
+ /**Mega Menu Container*/
5835
+ .premium-mega-nav-item .premium-sub-menu {
5836
+ display: none;
5837
+ }
5838
+
5839
+ .premium-mega-nav-item {
5840
+ position: relative;
5841
+ }
5842
+
5843
+ .premium-mega-nav-item:hover .premium-mega-content-container {
5844
+ visibility: visible;
5845
+ opacity: 1;
5846
+ }
5847
+
5848
+ .premium-mega-content-container {
5849
+ visibility: hidden;
5850
+ position: absolute;
5851
+ z-index: 9999;
5852
+ opacity: 0;
5853
+ }
5854
+
5855
+ .premium-hamburger-menu .premium-mega-content-container,
5856
+ .premium-nav-slide .premium-mega-content-container,
5857
+ .premium-nav-dropdown .premium-mega-content-container {
5858
+ visibility: visible;
5859
+ position: relative;
5860
+ opacity: 1;
5861
+ }
5862
+
5863
+ /**Hamburger Menu*/
5864
+ .premium-nav-widget-container a.premium-hamburger-toggle,
5865
+ .premium-mobile-menu-outer-container a.premium-mobile-menu-close {
5866
+ text-decoration: none;
5867
+ }
5868
+
5869
+ .premium-nav-widget-container .premium-hamburger-toggle {
5870
+ display: none;
5871
+ -webkit-box-pack: center;
5872
+ -webkit-justify-content: center;
5873
+ -moz-box-pack: center;
5874
+ -ms-flex-pack: center;
5875
+ justify-content: center;
5876
+ -webkit-box-align: center;
5877
+ -webkit-align-items: center;
5878
+ -moz-box-align: center;
5879
+ -ms-flex-align: center;
5880
+ align-items: center;
5881
+ }
5882
+
5883
+ .premium-nav-widget-container .premium-hamburger-toggle i {
5884
+ padding: 0.25em;
5885
+ font-size: 22px;
5886
+ }
5887
+
5888
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
5889
+ width: 22px;
5890
+ height: 22px;
5891
+ }
5892
+
5893
+ .premium-nav-widget-container .premium-hamburger-toggle i,
5894
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
5895
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
5896
+ color: #494c4f;
5897
+ }
5898
+
5899
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
5900
+ fill: #494c4f;
5901
+ }
5902
+
5903
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
5904
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
5905
+ margin: 2px;
5906
+ }
5907
+
5908
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
5909
+ display: none;
5910
+ }
5911
+
5912
+ .premium-mobile-menu-container {
5913
+ width: 100%;
5914
+ }
5915
+
5916
+ .premium-mobile-menu-container .premium-main-mobile-menu {
5917
+ width: 100%;
5918
+ }
5919
+
5920
+ .premium-mobile-menu-container ul {
5921
+ list-style: none;
5922
+ margin: 0;
5923
+ }
5924
+
5925
+ .premium-mobile-menu-container .premium-mobile-menu,
5926
+ .premium-mobile-menu-container .premium-sub-menu {
5927
+ display: none;
5928
+ -webkit-box-orient: vertical;
5929
+ -webkit-box-direction: normal;
5930
+ -webkit-flex-direction: column;
5931
+ -moz-box-orient: vertical;
5932
+ -moz-box-direction: normal;
5933
+ -ms-flex-direction: column;
5934
+ flex-direction: column;
5935
+ }
5936
+
5937
+ .premium-mobile-menu-container .premium-nav-menu-item {
5938
+ -webkit-box-orient: vertical;
5939
+ -webkit-box-direction: normal;
5940
+ -webkit-flex-direction: column;
5941
+ -moz-box-orient: vertical;
5942
+ -moz-box-direction: normal;
5943
+ -ms-flex-direction: column;
5944
+ flex-direction: column;
5945
+ }
5946
+
5947
+ .premium-mobile-menu-container .premium-item-badge {
5948
+ top: 50%;
5949
+ left: 0;
5950
+ -webkit-transform: translateY(-50%);
5951
+ -ms-transform: translateY(-50%);
5952
+ transform: translateY(-50%);
5953
+ }
5954
+
5955
+ /**Vertical Hamburger Menu*/
5956
+ .premium-mobile-menu-outer-container {
5957
+ opacity: 0;
5958
+ }
5959
+
5960
+ .premium-mobile-menu-outer-container.premium-vertical-toggle-open {
5961
+ opacity: 1;
5962
+ }
5963
+
5964
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container {
5965
+ background-color: #f7f7f7;
5966
+ width: 300px;
5967
+ -webkit-transform: translateX(-300px);
5968
+ -ms-transform: translateX(-300px);
5969
+ transform: translateX(-300px);
5970
+ height: 100%;
5971
+ position: fixed;
5972
+ top: 0;
5973
+ left: 0;
5974
+ overflow-x: hidden;
5975
+ z-index: 10000;
5976
+ -webkit-transition: 0.5s;
5977
+ transition: 0.5s;
5978
+ padding-top: 50px;
5979
+ }
5980
+
5981
+ .premium-ver-hamburger-menu
5982
+ .premium-mobile-menu-outer-container
5983
+ .premium-mobile-menu {
5984
+ -js-display: flex;
5985
+ display: -webkit-box;
5986
+ display: -webkit-flex;
5987
+ display: -moz-box;
5988
+ display: -ms-flexbox;
5989
+ display: flex;
5990
+ }
5991
+
5992
+ .premium-ver-hamburger-menu
5993
+ .premium-mobile-menu-outer-container
5994
+ .premium-mobile-menu-container {
5995
+ margin-top: 50px;
5996
+ }
5997
+
5998
+ .premium-ver-hamburger-menu
5999
+ .premium-mobile-menu-outer-container
6000
+ .premium-mobile-menu-container
6001
+ .premium-item-badge {
6002
+ -webkit-transform: translateY(0);
6003
+ -ms-transform: translateY(0);
6004
+ transform: translateY(0);
6005
+ }
6006
+
6007
+ .premium-ver-hamburger-menu
6008
+ .premium-mobile-menu-outer-container
6009
+ .premium-mobile-menu-close {
6010
+ position: absolute;
6011
+ top: 9%;
6012
+ right: 15px;
6013
+ padding: 0 9px;
6014
+ z-index: 10000;
6015
+ -js-display: inline-flex;
6016
+ display: -webkit-inline-box;
6017
+ display: -webkit-inline-flex;
6018
+ display: -moz-inline-box;
6019
+ display: -ms-inline-flexbox;
6020
+ display: inline-flex;
6021
+ color: #494c4f;
6022
+ -webkit-box-pack: center;
6023
+ -webkit-justify-content: center;
6024
+ -moz-box-pack: center;
6025
+ -ms-flex-pack: center;
6026
+ justify-content: center;
6027
+ -webkit-box-align: center;
6028
+ -webkit-align-items: center;
6029
+ -moz-box-align: center;
6030
+ -ms-flex-align: center;
6031
+ align-items: center;
6032
+ }
6033
+
6034
+ .premium-ver-hamburger-menu
6035
+ .premium-mobile-menu-outer-container
6036
+ .premium-mobile-menu-close
6037
+ .premium-toggle-close {
6038
+ margin: 5px;
6039
+ }
6040
+
6041
+ .premium-ver-hamburger-menu
6042
+ .premium-mobile-menu-outer-container
6043
+ .premium-mobile-menu-close
6044
+ svg {
6045
+ width: 22px;
6046
+ height: 22px;
6047
+ fill: #494c4f;
6048
+ }
6049
+
6050
+ .premium-ver-hamburger-menu
6051
+ .premium-mobile-menu-outer-container
6052
+ .premium-mobile-menu-close
6053
+ i {
6054
+ font-size: 22px;
6055
+ }
6056
+
6057
+ .premium-ver-hamburger-menu .premium-vertical-toggle-open {
6058
+ -webkit-transform: translateX(0) !important;
6059
+ -ms-transform: translateX(0) !important;
6060
+ transform: translateX(0) !important;
6061
+ -webkit-transition: 0.5s;
6062
+ transition: 0.5s;
6063
+ }
6064
+
6065
+ /**Common*/
6066
+ .premium-nav-slide-overlay {
6067
+ display: none;
6068
+ position: fixed;
6069
+ top: 0;
6070
+ left: 0;
6071
+ right: 0;
6072
+ bottom: 0;
6073
+ -webkit-backface-visibility: hidden;
6074
+ backface-visibility: hidden;
6075
+ background: rgba(0, 0, 0, 0.6);
6076
+ z-index: 9999;
6077
+ }
6078
+
6079
+ .premium-nav-slide-overlay.premium-vertical-toggle-open {
6080
+ display: block;
6081
+ }
6082
+
6083
+ .premium-active-menu,
6084
+ .premium-active-menu:not(.premium-mega-nav-item) > .premium-sub-menu,
6085
+ .premium-active-menu.premium-mega-nav-item > .premium-mega-content-container {
6086
+ -js-display: flex !important;
6087
+ display: -webkit-box !important;
6088
+ display: -webkit-flex !important;
6089
+ display: -moz-box !important;
6090
+ display: -ms-flexbox !important;
6091
+ display: flex !important;
6092
+ -webkit-box-orient: vertical;
6093
+ -webkit-box-direction: normal;
6094
+ -webkit-flex-direction: column;
6095
+ -moz-box-orient: vertical;
6096
+ -moz-box-direction: normal;
6097
+ -ms-flex-direction: column;
6098
+ flex-direction: column;
6099
+ }
6100
+
6101
+ .premium-active-menu .premium-toggle-close {
6102
+ display: block;
6103
+ }
6104
+
6105
+ .premium-nav-menu-container .premium-sub-menu {
6106
+ background-color: #fff;
6107
+ }
6108
+
6109
+ .premium-mobile-menu-container li,
6110
+ .premium-mobile-menu-container li > .premium-mega-content-container {
6111
+ width: 100% !important;
6112
+ }
6113
+
6114
+ .premium-item-icon,
6115
+ .premium-sub-item-icon {
6116
+ font-size: 13px;
6117
+ margin: 0 7px;
6118
+ }
6119
+
6120
+ .premium-item-icon svg,
6121
+ .premium-sub-item-icon svg {
6122
+ width: 100%;
6123
+ height: 100%;
6124
+ }
6125
+
6126
+ .premium-item-icon.premium-lottie-animation,
6127
+ .premium-sub-item-icon.premium-lottie-animation {
6128
+ width: 20px;
6129
+ height: 20px;
6130
+ -js-display: flex;
6131
+ display: -webkit-box;
6132
+ display: -webkit-flex;
6133
+ display: -moz-box;
6134
+ display: -ms-flexbox;
6135
+ display: flex;
6136
+ -webkit-box-pack: center;
6137
+ -webkit-justify-content: center;
6138
+ -moz-box-pack: center;
6139
+ -ms-flex-pack: center;
6140
+ justify-content: center;
6141
+ }
6142
+
6143
+ .premium-item-icon.dashicons,
6144
+ .premium-sub-item-icon.dashicons {
6145
+ width: 13px;
6146
+ height: 13px;
6147
+ }
6148
+
6149
+ .premium-nav-menu-item {
6150
+ position: relative;
6151
+ }
6152
+
6153
+ .premium-nav-menu-item .premium-menu-link {
6154
+ -js-display: flex;
6155
+ display: -webkit-box;
6156
+ display: -webkit-flex;
6157
+ display: -moz-box;
6158
+ display: -ms-flexbox;
6159
+ display: flex;
6160
+ -webkit-box-align: center;
6161
+ -webkit-align-items: center;
6162
+ -moz-box-align: center;
6163
+ -ms-flex-align: center;
6164
+ align-items: center;
6165
+ height: 100%;
6166
+ padding: 7px 10px;
6167
+ text-decoration: none;
6168
+ position: relative;
6169
+ }
6170
+
6171
+ .premium-nav-menu-item .premium-dropdown-icon {
6172
+ margin: 5px;
6173
+ }
6174
+
6175
+ .premium-nav-menu-item.menu-item-has-children {
6176
+ position: relative;
6177
+ }
6178
+
6179
+ .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
6180
+ max-width: 100%;
6181
+ z-index: 9999;
6182
+ }
6183
+
6184
+ .premium-nav-menu-item.menu-item-has-children
6185
+ .premium-sub-menu
6186
+ .premium-sub-menu-link {
6187
+ -webkit-box-pack: start;
6188
+ -webkit-justify-content: flex-start;
6189
+ -moz-box-pack: start;
6190
+ -ms-flex-pack: start;
6191
+ justify-content: flex-start;
6192
+ }
6193
+
6194
+ .premium-nav-menu-item .menu-link {
6195
+ position: relative;
6196
+ text-decoration: none;
6197
+ }
6198
+
6199
+ .premium-item-badge,
6200
+ .premium-sub-item-badge {
6201
+ position: absolute;
6202
+ padding: 1px 6px;
6203
+ min-width: 35px;
6204
+ text-align: center;
6205
+ font-size: 10px;
6206
+ -webkit-border-radius: 4px;
6207
+ border-radius: 4px;
6208
+ line-height: 1.8;
6209
+ white-space: nowrap;
6210
+ }
6211
+
6212
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-item-badge,
6213
+ .premium-nav-hor:not(.premium-nav-slide) .premium-item-badge,
6214
+ .premium-nav-hor:not(.premium-nav-dropdown) .premium-item-badge {
6215
+ position: relative;
6216
+ margin: 8px;
6217
+ }
6218
+
6219
+ .premium-nav-hor .premium-sub-item-badge,
6220
+ .premium-nav-slide .premium-sub-item-badge,
6221
+ .premium-nav-dropdown .premium-sub-item-badge,
6222
+ .premium-nav-ver.premium-vertical-right .premium-item-badge,
6223
+ .premium-nav-ver.premium-vertical-right .premium-sub-item-badge {
6224
+ top: 50%;
6225
+ right: 0;
6226
+ -webkit-transform: translateY(-50%);
6227
+ -ms-transform: translateY(-50%);
6228
+ transform: translateY(-50%);
6229
+ }
6230
+
6231
+ .premium-nav-ver.premium-vertical-left .premium-item-badge,
6232
+ .premium-nav-ver.premium-vertical-left .premium-sub-item-badge {
6233
+ top: 50%;
6234
+ right: 0;
6235
+ -webkit-transform: translateY(-50%);
6236
+ -ms-transform: translateY(-50%);
6237
+ transform: translateY(-50%);
6238
+ }
6239
+
6240
+ .premium-mega-nav-item .premium-sub-menu {
6241
+ display: none;
6242
+ }
6243
+
6244
+ .premium-mega-nav-item {
6245
+ position: relative;
6246
+ }
6247
+
6248
+ .premium-hamburger-menu .premium-mega-content-container,
6249
+ .premium-nav-dropdown .premium-mega-content-container,
6250
+ .premium-nav-slide .premium-mega-content-container {
6251
+ display: none;
6252
+ }
6253
+
6254
+ .premium-mega-item-static {
6255
+ position: static !important;
6256
+ }
6257
+
6258
+ .premium-hamburger-menu .premium-nav-menu-container {
6259
+ display: none;
6260
+ }
6261
+
6262
+ .premium-hamburger-menu .premium-hamburger-toggle {
6263
+ -js-display: inline-flex;
6264
+ display: -webkit-inline-box;
6265
+ display: -webkit-inline-flex;
6266
+ display: -moz-inline-box;
6267
+ display: -ms-inline-flexbox;
6268
+ display: inline-flex;
6269
+ -webkit-box-orient: horizontal;
6270
+ -webkit-box-direction: reverse;
6271
+ -webkit-flex-direction: row-reverse;
6272
+ -moz-box-orient: horizontal;
6273
+ -moz-box-direction: reverse;
6274
+ -ms-flex-direction: row-reverse;
6275
+ flex-direction: row-reverse;
6276
+ }
6277
+
6278
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-item-icon,
6279
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-sub-item-icon,
6280
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-item-icon,
6281
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-sub-item-icon,
6282
+ .premium-hidden-icon-yes.premium-nav-slide .premium-item-icon,
6283
+ .premium-hidden-icon-yes.premium-nav-slide .premium-sub-item-icon {
6284
+ display: none;
6285
+ }
6286
+
6287
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-item-badge,
6288
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-sub-item-badge,
6289
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-item-badge,
6290
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-sub-item-badge,
6291
+ .premium-hidden-badge-yes.premium-nav-slide .premium-item-badge,
6292
+ .premium-hidden-badge-yes.premium-nav-slide .premium-sub-item-badge {
6293
+ display: none;
6294
+ }
6295
+
6296
+ .premium-ham-dropdown .premium-mobile-menu-container,
6297
+ .premium-nav-dropdown .premium-mobile-menu-container {
6298
+ -js-display: flex;
6299
+ display: -webkit-box;
6300
+ display: -webkit-flex;
6301
+ display: -moz-box;
6302
+ display: -ms-flexbox;
6303
+ display: flex;
6304
+ }
6305
+
6306
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-close,
6307
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-close {
6308
+ display: inline !important;
6309
+ }
6310
+
6311
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-text,
6312
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-text {
6313
+ display: none !important;
6314
+ }
6315
+
6316
+ /*
6317
+ * Pointer & Pointer Animations
6318
+ */
6319
+ .premium-menu-link-parent::before,
6320
+ .premium-menu-link-parent::after {
6321
+ display: block;
6322
+ position: absolute;
6323
+ -webkit-transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1);
6324
+ transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1);
6325
+ }
6326
+
6327
+ .premium-nav-pointer-underline .premium-menu-link-parent::after,
6328
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
6329
+ content: "";
6330
+ bottom: 0;
6331
+ }
6332
+
6333
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
6334
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before {
6335
+ content: "";
6336
+ top: 0;
6337
+ }
6338
+
6339
+ .premium-nav-pointer-underline .premium-menu-link-parent::before,
6340
+ .premium-nav-pointer-underline .premium-menu-link-parent::after,
6341
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
6342
+ .premium-nav-pointer-overline .premium-menu-link-parent::after,
6343
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before,
6344
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
6345
+ height: 3px;
6346
+ width: 100%;
6347
+ right: 0;
6348
+ background-color: #55595c;
6349
+ z-index: 2;
6350
+ }
6351
+
6352
+ .premium-nav-menu-item:not(.premium-active-item)
6353
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6354
+ .premium-nav-menu-item:not(.premium-active-item)
6355
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
6356
+ opacity: 0;
6357
  }
6358
 
6359
+ .premium-nav-pointer-underline.premium-nav-animation-none,
6360
+ .premium-nav-pointer-overline.premium-nav-animation-none,
6361
+ .premium-nav-pointer-double-line.premium-nav-animation-none {
6362
+ -webkit-transition-duration: 0s;
6363
+ transition-duration: 0s;
6364
+ }
6365
+
6366
+ .premium-nav-pointer-underline.premium-nav-animation-none
6367
+ .premium-menu-link-parent,
6368
+ .premium-nav-pointer-underline.premium-nav-animation-none
6369
+ .premium-menu-link-parent::before,
6370
+ .premium-nav-pointer-underline.premium-nav-animation-none
6371
+ .premium-menu-link-parent::after,
6372
+ .premium-nav-pointer-underline.premium-nav-animation-none
6373
+ .premium-menu-link-parent:focus,
6374
+ .premium-nav-pointer-underline.premium-nav-animation-none
6375
+ .premium-menu-link-parent:hover,
6376
+ .premium-nav-pointer-overline.premium-nav-animation-none
6377
+ .premium-menu-link-parent,
6378
+ .premium-nav-pointer-overline.premium-nav-animation-none
6379
+ .premium-menu-link-parent::before,
6380
+ .premium-nav-pointer-overline.premium-nav-animation-none
6381
+ .premium-menu-link-parent::after,
6382
+ .premium-nav-pointer-overline.premium-nav-animation-none
6383
+ .premium-menu-link-parent:focus,
6384
+ .premium-nav-pointer-overline.premium-nav-animation-none
6385
+ .premium-menu-link-parent:hover,
6386
+ .premium-nav-pointer-double-line.premium-nav-animation-none
6387
+ .premium-menu-link-parent,
6388
+ .premium-nav-pointer-double-line.premium-nav-animation-none
6389
+ .premium-menu-link-parent::before,
6390
+ .premium-nav-pointer-double-line.premium-nav-animation-none
6391
+ .premium-menu-link-parent::after,
6392
+ .premium-nav-pointer-double-line.premium-nav-animation-none
6393
+ .premium-menu-link-parent:focus,
6394
+ .premium-nav-pointer-double-line.premium-nav-animation-none
6395
+ .premium-menu-link-parent:hover {
6396
+ -webkit-transition-duration: 0s;
6397
+ transition-duration: 0s;
6398
+ }
6399
+
6400
+ .premium-nav-pointer-underline.premium-nav-animation-slide
6401
+ .premium-nav-menu-item:not(.premium-active-item)
6402
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6403
+ .premium-nav-pointer-double-line.premium-nav-animation-slide
6404
+ .premium-nav-menu-item:not(.premium-active-item)
6405
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
6406
+ width: 10px;
6407
+ inset-inline-start: 100%;
6408
+ }
6409
+
6410
+ .premium-nav-pointer-overline.premium-nav-animation-slide
6411
+ .premium-nav-menu-item:not(.premium-active-item)
6412
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6413
+ .premium-nav-pointer-double-line.premium-nav-animation-slide
6414
+ .premium-nav-menu-item:not(.premium-active-item)
6415
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6416
+ width: 10px;
6417
+ left: -20px;
6418
+ }
6419
+
6420
+ .premium-nav-pointer-underline.premium-nav-animation-grow
6421
+ .premium-nav-menu-item:not(.premium-active-item)
6422
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6423
+ .premium-nav-pointer-underline.premium-nav-animation-grow
6424
+ .premium-nav-menu-item:not(.premium-active-item)
6425
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6426
+ .premium-nav-pointer-overline.premium-nav-animation-grow
6427
+ .premium-nav-menu-item:not(.premium-active-item)
6428
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6429
+ .premium-nav-pointer-overline.premium-nav-animation-grow
6430
+ .premium-nav-menu-item:not(.premium-active-item)
6431
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6432
+ .premium-nav-pointer-double-line.premium-nav-animation-grow
6433
+ .premium-nav-menu-item:not(.premium-active-item)
6434
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6435
+ .premium-nav-pointer-double-line.premium-nav-animation-grow
6436
+ .premium-nav-menu-item:not(.premium-active-item)
6437
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
6438
+ height: 0;
6439
+ width: 0;
6440
+ left: 50%;
6441
+ }
6442
+
6443
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in
6444
+ .premium-nav-menu-item:not(.premium-active-item)
6445
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6446
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in
6447
+ .premium-nav-menu-item:not(.premium-active-item)
6448
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6449
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in
6450
+ .premium-nav-menu-item:not(.premium-active-item)
6451
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6452
+ top: -10px;
6453
  }
6454
 
6455
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in
6456
+ .premium-nav-menu-item:not(.premium-active-item)
6457
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6458
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in
6459
+ .premium-nav-menu-item:not(.premium-active-item)
6460
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6461
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in
6462
+ .premium-nav-menu-item:not(.premium-active-item)
6463
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
6464
+ bottom: -10px;
6465
+ }
6466
+
6467
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out
6468
+ .premium-nav-menu-item:not(.premium-active-item)
6469
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6470
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out
6471
+ .premium-nav-menu-item:not(.premium-active-item)
6472
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
6473
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out
6474
+ .premium-nav-menu-item:not(.premium-active-item)
6475
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6476
+ top: 10px;
6477
  }
6478
 
6479
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out
6480
+ .premium-nav-menu-item:not(.premium-active-item)
6481
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6482
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out
6483
+ .premium-nav-menu-item:not(.premium-active-item)
6484
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
6485
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out
6486
+ .premium-nav-menu-item:not(.premium-active-item)
6487
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
6488
+ bottom: 10px;
6489
  }
6490
 
6491
+ .premium-nav-pointer-framed .premium-menu-link-parent::before {
6492
+ content: "";
 
 
 
 
6493
  }
6494
 
6495
+ .premium-nav-pointer-framed .premium-menu-link-parent::before,
6496
+ .premium-nav-pointer-framed .premium-menu-link-parent::after {
6497
+ background: transparent;
6498
+ left: 0;
6499
+ top: 0;
6500
+ bottom: 0;
6501
+ right: 0;
6502
+ border: 3px solid #55595c;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6503
  }
6504
 
6505
+ .premium-nav-pointer-framed.premium-nav-animation-grow
6506
+ .premium-nav-menu-item:not(.premium-active-item)
6507
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6508
+ -webkit-transform: scale(0.75);
6509
+ -ms-transform: scale(0.75);
6510
+ transform: scale(0.75);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6511
  }
6512
 
6513
+ .premium-nav-pointer-framed.premium-nav-animation-shrink
6514
+ .premium-nav-menu-item:not(.premium-active-item)
6515
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6516
+ -webkit-transform: scale(1.25);
6517
+ -ms-transform: scale(1.25);
6518
+ transform: scale(1.25);
6519
  }
6520
 
6521
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6522
+ .premium-menu-link-parent::before,
6523
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6524
+ .premium-menu-link-parent::after {
6525
+ width: 3px;
6526
+ height: 3px;
6527
  }
6528
 
6529
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6530
+ .premium-menu-link-parent::before {
6531
+ border-width: 0 3px 3px 0;
6532
+ -webkit-transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s;
6533
+ transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s;
6534
  }
6535
 
6536
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6537
+ .premium-menu-link-parent::after {
6538
+ content: "";
6539
+ top: auto;
6540
+ bottom: 0;
6541
+ left: 0;
6542
+ right: auto;
6543
+ border-width: 3px 0 0 3px;
6544
+ -webkit-transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s;
6545
+ transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s;
6546
+ }
6547
+
6548
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6549
+ .premium-menu-link-parent:hover::before,
6550
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6551
+ .premium-menu-link-parent:focus::before {
6552
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
6553
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
6554
+ }
6555
+
6556
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6557
+ .premium-menu-link-parent:hover::after,
6558
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6559
+ .premium-menu-link-parent:focus::after {
6560
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
6561
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
6562
+ }
6563
+
6564
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6565
+ .premium-menu-link-parent:hover::before,
6566
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6567
+ .premium-menu-link-parent:hover::after,
6568
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6569
+ .premium-menu-link-parent:focus::before,
6570
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6571
+ .premium-menu-link-parent:focus::after {
6572
+ width: 100%;
6573
+ height: 100%;
6574
  }
6575
 
6576
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6577
+ .premium-active-item
6578
+ .premium-menu-link-parent::before {
6579
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
6580
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
6581
  }
6582
 
6583
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6584
+ .premium-active-item
6585
+ .premium-menu-link-parent::after {
6586
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
6587
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
6588
  }
6589
 
6590
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6591
+ .premium-active-item
6592
+ .premium-menu-link-parent::before,
6593
+ .premium-nav-pointer-framed.premium-nav-animation-draw
6594
+ .premium-active-item
6595
+ .premium-menu-link-parent::after {
6596
+ width: 100%;
6597
+ height: 100%;
6598
  }
6599
 
6600
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6601
+ .premium-menu-link-parent::before {
6602
+ border-width: 3px 3px 0 0;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
6603
  }
6604
 
6605
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6606
+ .premium-menu-link-parent::after {
6607
+ content: "";
6608
+ top: auto;
6609
+ bottom: 0;
6610
+ left: 0;
6611
+ right: auto;
6612
+ border-width: 0 0 3px 3px;
6613
  }
6614
 
6615
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6616
+ .premium-menu-link-parent::before,
6617
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6618
+ .premium-menu-link-parent::after {
6619
+ width: 3px;
6620
+ height: 3px;
 
 
 
 
 
 
 
 
6621
  }
6622
 
6623
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6624
+ .premium-menu-link-parent:hover::before,
6625
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6626
+ .premium-menu-link-parent:hover::after,
6627
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6628
+ .premium-menu-link-parent:focus::before,
6629
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6630
+ .premium-menu-link-parent:focus::after {
6631
+ width: 100%;
6632
+ height: 100%;
6633
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
6634
+ transition: opacity 2ms, width 0.4s, height 0.4s;
6635
  }
6636
 
6637
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6638
+ .premium-active-item
6639
+ .premium-menu-link-parent::before,
6640
+ .premium-nav-pointer-framed.premium-nav-animation-corners
6641
+ .premium-active-item
6642
+ .premium-menu-link-parent::after {
6643
+ width: 100%;
6644
+ height: 100%;
6645
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
6646
+ transition: opacity 2ms, width 0.4s, height 0.4s;
6647
  }
6648
 
6649
+ .premium-nav-pointer-text.premium-nav-animation-grow
6650
+ .premium-menu-link-parent:hover,
6651
+ .premium-nav-pointer-text.premium-nav-animation-grow
6652
+ .premium-menu-link-parent:focus {
6653
+ -webkit-transform: scale(1.2);
6654
+ -ms-transform: scale(1.2);
6655
+ transform: scale(1.2);
6656
  }
6657
 
6658
+ .premium-nav-pointer-text.premium-nav-animation-shrink
6659
+ .premium-menu-link-parent:hover,
6660
+ .premium-nav-pointer-text.premium-nav-animation-shrink
6661
+ .premium-menu-link-parent:focus {
6662
+ -webkit-transform: scale(0.8);
6663
+ -ms-transform: scale(0.8);
6664
+ transform: scale(0.8);
6665
  }
6666
 
6667
+ .premium-nav-pointer-text.premium-nav-animation-sink
6668
+ .premium-menu-link-parent:hover,
6669
+ .premium-nav-pointer-text.premium-nav-animation-sink
6670
+ .premium-menu-link-parent:focus {
6671
+ -webkit-transform: translateY(8px);
6672
+ -ms-transform: translateY(8px);
6673
+ transform: translateY(8px);
6674
  }
6675
 
6676
+ .premium-nav-pointer-text.premium-nav-animation-float
6677
+ .premium-menu-link-parent:hover,
6678
+ .premium-nav-pointer-text.premium-nav-animation-float
6679
+ .premium-menu-link-parent:focus {
6680
+ -webkit-transform: translateY(-8px);
6681
+ -ms-transform: translateY(-8px);
6682
+ transform: translateY(-8px);
6683
  }
6684
 
6685
+ .premium-nav-pointer-text.premium-nav-animation-skew
6686
+ .premium-menu-link-parent:hover,
6687
+ .premium-nav-pointer-text.premium-nav-animation-skew
6688
+ .premium-menu-link-parent:focus {
6689
+ -webkit-transform: skew(-8deg);
6690
+ -ms-transform: skew(-8deg);
6691
+ transform: skew(-8deg);
6692
+ }
6693
+
6694
+ .premium-nav-pointer-text.premium-nav-animation-rotate
6695
+ .premium-menu-link-parent:hover,
6696
+ .premium-nav-pointer-text.premium-nav-animation-rotate
6697
+ .premium-menu-link-parent:focus {
6698
+ -webkit-transform: rotate(6deg);
6699
+ -ms-transform: rotate(6deg);
6700
+ transform: rotate(6deg);
6701
+ }
6702
+
6703
+ .premium-nav-pointer-background .premium-menu-link-parent::before {
6704
+ top: 0;
6705
+ left: 0;
6706
+ right: 0;
6707
+ bottom: 0;
6708
+ background: #55595c;
6709
+ background-color: #55595c;
6710
+ z-index: -1;
6711
+ }
6712
+
6713
+ .premium-nav-pointer-background .premium-menu-link-parent::before,
6714
+ .premium-nav-pointer-background .premium-menu-link-parent::after {
6715
+ content: "";
6716
+ -webkit-transition: 0.3s;
6717
+ transition: 0.3s;
6718
+ }
6719
+
6720
+ .premium-nav-pointer-background.premium-nav-animation-grow
6721
+ .premium-menu-link-parent::before {
6722
+ -webkit-transform: scale(0.5);
6723
+ -ms-transform: scale(0.5);
6724
+ transform: scale(0.5);
6725
+ }
6726
+
6727
+ .premium-nav-pointer-background.premium-nav-animation-grow
6728
+ .premium-menu-link-parent:hover::before,
6729
+ .premium-nav-pointer-background.premium-nav-animation-grow
6730
+ .premium-menu-link-parent:focus::before {
6731
+ -webkit-transform: scale(1);
6732
+ -ms-transform: scale(1);
6733
+ transform: scale(1);
6734
+ }
6735
+
6736
+ .premium-nav-pointer-background.premium-nav-animation-grow
6737
+ .premium-active-item
6738
+ .premium-menu-link-parent::before {
6739
+ -webkit-transform: scale(1);
6740
+ -ms-transform: scale(1);
6741
+ transform: scale(1);
6742
+ }
6743
+
6744
+ .premium-nav-pointer-background.premium-nav-animation-shrink
6745
+ .premium-nav-menu-item:not(.premium-active-item)
6746
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6747
+ -webkit-transform: scale(1.2);
6748
+ -ms-transform: scale(1.2);
6749
+ transform: scale(1.2);
6750
+ -webkit-transition: 0.3;
6751
+ transition: 0.3;
6752
+ }
6753
+
6754
+ .premium-nav-pointer-background.premium-nav-animation-sweep-left
6755
+ .premium-nav-menu-item:not(.premium-active-item)
6756
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6757
+ left: 100%;
6758
+ }
6759
+
6760
+ .premium-nav-pointer-background.premium-nav-animation-sweep-right
6761
+ .premium-nav-menu-item:not(.premium-active-item)
6762
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6763
+ right: 100%;
6764
+ }
6765
+
6766
+ .premium-nav-pointer-background.premium-nav-animation-sweep-up
6767
+ .premium-nav-menu-item:not(.premium-active-item)
6768
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6769
+ top: 100%;
6770
+ }
6771
+
6772
+ .premium-nav-pointer-background.premium-nav-animation-sweep-down
6773
+ .premium-nav-menu-item:not(.premium-active-item)
6774
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6775
+ bottom: 100%;
6776
+ }
6777
+
6778
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6779
+ .premium-menu-link-parent::after,
6780
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6781
+ .premium-menu-link-parent::after {
6782
+ top: 0;
6783
+ left: 0;
6784
+ right: 0;
6785
+ bottom: 0;
6786
+ background: #55595c;
6787
+ background-color: #55595c;
6788
+ z-index: -1;
6789
+ }
6790
+
6791
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6792
+ .premium-menu-link-parent::before {
6793
+ top: 0;
6794
+ bottom: 100%;
6795
+ }
6796
+
6797
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6798
+ .premium-menu-link-parent::after {
6799
+ top: 100%;
6800
+ bottom: 0;
6801
  }
6802
 
6803
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6804
+ .premium-menu-link-parent:hover::before,
6805
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6806
+ .premium-menu-link-parent:focus::before {
6807
+ bottom: 50%;
 
6808
  }
6809
 
6810
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6811
+ .premium-menu-link-parent:hover::after,
6812
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6813
+ .premium-menu-link-parent:focus::after {
6814
+ top: 50%;
6815
  }
6816
 
6817
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6818
+ .premium-active-item
6819
+ .premium-menu-link-parent::before {
6820
+ bottom: 50%;
 
 
6821
  }
6822
 
6823
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
6824
+ .premium-active-item
6825
+ .premium-menu-link-parent::after {
6826
+ top: 50%;
6827
  }
6828
 
6829
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-vertical
6830
+ .premium-nav-menu-item:not(.premium-active-item)
6831
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6832
+ bottom: 50%;
6833
+ top: 50%;
6834
  }
6835
 
6836
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6837
+ .premium-menu-link-parent::before {
6838
+ right: 0;
6839
+ left: 100%;
6840
  }
6841
 
6842
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6843
+ .premium-menu-link-parent::after {
6844
+ right: 100%;
6845
+ left: 0;
 
 
 
6846
  }
6847
 
6848
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6849
+ .premium-menu-link-parent:hover::before,
6850
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6851
+ .premium-menu-link-parent:focus::before {
6852
+ left: 50%;
 
6853
  }
6854
 
6855
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6856
+ .premium-menu-link-parent:hover::after,
6857
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6858
+ .premium-menu-link-parent:focus::after {
6859
+ right: 50%;
 
6860
  }
6861
 
6862
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6863
+ .premium-active-item
6864
+ .premium-menu-link-parent::before {
6865
+ left: 50%;
6866
+ }
6867
+
6868
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
6869
+ .premium-active-item
6870
+ .premium-menu-link-parent::after {
6871
+ right: 50%;
6872
+ }
6873
+
6874
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-horizontal
6875
+ .premium-nav-menu-item:not(.premium-active-item)
6876
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
6877
+ left: 50%;
6878
+ right: 50%;
6879
+ }
6880
+
6881
+ .premium-active-item::before,
6882
+ .premium-active-item::after,
6883
+ .premium-menu-link-parent:hover::before,
6884
+ .premium-menu-link-parent:hover::after,
6885
+ .premium-menu-link-parent:focus::before,
6886
+ .premium-menu-link-parent:focus::after {
6887
+ -webkit-transform: scale(1);
6888
+ -ms-transform: scale(1);
6889
+ transform: scale(1);
6890
+ }
6891
+
6892
+ /**Sub Menu Animation*/
6893
+ .premium-nav-menu-item .premium-sub-menu,
6894
+ .premium-nav-menu-item .premium-mega-content-container {
6895
+ -webkit-transition: 0.5s all ease-in-out;
6896
+ transition: 0.5s all ease-in-out;
6897
+ }
6898
+
6899
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
6900
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
6901
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu,
6902
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
6903
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
6904
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu {
6905
+ -webkit-transform: translate(0);
6906
+ -ms-transform: translate(0);
6907
+ transform: translate(0);
6908
+ }
6909
+
6910
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
6911
+ .premium-sub-menu,
6912
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
6913
+ .premium-mega-content-container,
6914
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu)
6915
+ .premium-sub-menu,
6916
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu)
6917
+ .premium-mega-content-container {
6918
+ -webkit-transform: translateY(20%);
6919
+ -ms-transform: translateY(20%);
6920
+ transform: translateY(20%);
6921
+ }
6922
+
6923
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
6924
+ .premium-sub-menu,
6925
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
6926
+ .premium-mega-content-container,
6927
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu)
6928
+ .premium-sub-menu,
6929
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu)
6930
+ .premium-mega-content-container {
6931
+ -webkit-transform: translateY(-20%);
6932
+ -ms-transform: translateY(-20%);
6933
+ transform: translateY(-20%);
6934
+ }
6935
+
6936
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
6937
+ .premium-sub-menu,
6938
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
6939
+ .premium-mega-content-container,
6940
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu)
6941
+ .premium-sub-menu,
6942
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu)
6943
+ .premium-mega-content-container {
6944
+ -webkit-transform: translateX(-20%);
6945
+ -ms-transform: translateX(-20%);
6946
+ transform: translateX(-20%);
6947
+ }
6948
+
6949
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
6950
+ .premium-sub-menu,
6951
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
6952
+ .premium-mega-content-container,
6953
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu)
6954
+ .premium-sub-menu,
6955
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu)
6956
+ .premium-mega-content-container {
6957
+ -webkit-transform: translateX(20%);
6958
+ -ms-transform: translateX(20%);
6959
+ transform: translateX(20%);
6960
+ }
6961
+
6962
+ /**Horizontal - Static Mega Content*/
6963
+ /*UP*/
6964
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
6965
+ .premium-mega-item-static
6966
+ .premium-mega-content-container {
6967
+ -webkit-transform: translateX(-50%) translateY(10%);
6968
+ -ms-transform: translateX(-50%) translateY(10%);
6969
+ transform: translateX(-50%) translateY(10%);
6970
+ }
6971
+
6972
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
6973
+ .premium-mega-item-static:hover
6974
+ .premium-mega-content-container {
6975
+ -webkit-transform: translateX(-50%) translateY(0);
6976
+ -ms-transform: translateX(-50%) translateY(0);
6977
+ transform: translateX(-50%) translateY(0);
6978
+ }
6979
+
6980
+ /*DOWN*/
6981
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
6982
+ .premium-mega-item-static
6983
+ .premium-mega-content-container {
6984
+ -webkit-transform: translateX(-50%) translateY(-10%);
6985
+ -ms-transform: translateX(-50%) translateY(-10%);
6986
+ transform: translateX(-50%) translateY(-10%);
6987
+ }
6988
+
6989
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
6990
+ .premium-mega-item-static:hover
6991
+ .premium-mega-content-container {
6992
+ -webkit-transform: translateX(-50%) translateY(0);
6993
+ -ms-transform: translateX(-50%) translateY(0);
6994
+ transform: translateX(-50%) translateY(0);
6995
+ }
6996
+
6997
+ /*Left*/
6998
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
6999
+ .premium-mega-item-static
7000
+ .premium-mega-content-container {
7001
+ -webkit-transform: translateX(-40%);
7002
+ -ms-transform: translateX(-40%);
7003
+ transform: translateX(-40%);
7004
+ }
7005
+
7006
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
7007
+ .premium-mega-item-static:hover
7008
+ .premium-mega-content-container {
7009
+ -webkit-transform: translateX(-50%);
7010
+ -ms-transform: translateX(-50%);
7011
+ transform: translateX(-50%);
7012
+ }
7013
+
7014
+ /*Right*/
7015
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
7016
+ .premium-mega-item-static
7017
+ .premium-mega-content-container {
7018
+ -webkit-transform: translateX(-60%);
7019
+ -ms-transform: translateX(-60%);
7020
+ transform: translateX(-60%);
7021
+ }
7022
+
7023
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
7024
+ .premium-mega-item-static:hover
7025
+ .premium-mega-content-container {
7026
+ -webkit-transform: translateX(-50%);
7027
+ -ms-transform: translateX(-50%);
7028
+ transform: translateX(-50%);
7029
+ }
7030
+
7031
+ /**Vertical - Static Mega Content*/
7032
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu)
7033
+ .premium-mega-item-static:hover
7034
+ .premium-mega-content-container,
7035
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu)
7036
+ .premium-mega-item-static:hover
7037
+ .premium-mega-content-container {
7038
+ -webkit-transform: translateY(0);
7039
+ -ms-transform: translateY(0);
7040
+ transform: translateY(0);
7041
+ }
7042
+
7043
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu)
7044
+ .premium-mega-item-static:hover
7045
+ .premium-mega-content-container,
7046
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu)
7047
+ .premium-mega-item-static:hover
7048
+ .premium-mega-content-container {
7049
+ -webkit-transform: translateX(0);
7050
+ -ms-transform: translateX(0);
7051
+ transform: translateX(0);
7052
  }
7053
+
7054
  /************ Premium Team Members ************/
7055
  /*********************************************/
7056
  .premium-person-container {
7442
  align-items: flex-start;
7443
  }
7444
 
7445
+ .premium-person-style3 .premium-person-name-icons-wrap {
7446
+ -js-display: flex;
7447
+ display: -webkit-box;
7448
+ display: -webkit-flex;
7449
+ display: -moz-box;
7450
+ display: -ms-flexbox;
7451
+ display: flex;
7452
+ -webkit-box-pack: justify;
7453
+ -webkit-justify-content: space-between;
7454
+ -moz-box-pack: justify;
7455
+ -ms-flex-pack: justify;
7456
+ justify-content: space-between;
7457
+ -webkit-box-align: end;
7458
+ -webkit-align-items: flex-end;
7459
+ -moz-box-align: end;
7460
+ -ms-flex-align: end;
7461
+ align-items: flex-end;
7462
+ }
7463
+
7464
+ .premium-person-style3 .premium-person-title {
7465
+ opacity: 0;
7466
+ -webkit-transition: all 0.3s ease;
7467
+ transition: all 0.3s ease;
7468
+ width: 0;
7469
+ }
7470
+
7471
+ .premium-person-style3 .premium-person-title span {
7472
+ display: inline-block;
7473
+ }
7474
+
7475
+ .premium-person-style3 .premium-person-name {
7476
+ padding-right: 10px;
7477
+ }
7478
+
7479
+ .premium-person-style3 .premium-person-social-list {
7480
+ -js-display: flex;
7481
+ display: -webkit-box;
7482
+ display: -webkit-flex;
7483
+ display: -moz-box;
7484
+ display: -ms-flexbox;
7485
+ display: flex;
7486
+ -webkit-box-orient: vertical;
7487
+ -webkit-box-direction: normal;
7488
+ -webkit-flex-direction: column;
7489
+ -moz-box-orient: vertical;
7490
+ -moz-box-direction: normal;
7491
+ -ms-flex-direction: column;
7492
+ flex-direction: column;
7493
+ -webkit-transform: translateY(20px);
7494
+ -ms-transform: translateY(20px);
7495
+ transform: translateY(20px);
7496
+ opacity: 0;
7497
+ -webkit-transition: all 0.3s ease;
7498
+ transition: all 0.3s ease;
7499
+ }
7500
+
7501
+ .premium-person-style3 .premium-person-list-item {
7502
+ line-height: 0;
7503
+ }
7504
+
7505
+ .premium-person-style3 .premium-person-list-item a {
7506
+ padding: 5px 0 0 10px;
7507
+ margin: 5px 0;
7508
+ }
7509
+
7510
+ .premium-person-style3 .premium-person-container:hover .premium-person-title {
7511
+ opacity: 1;
7512
+ }
7513
+
7514
+ .premium-person-style3 .premium-person-container:hover .premium-person-social-list {
7515
+ opacity: 1;
7516
+ -webkit-transform: translateY(0);
7517
+ -ms-transform: translateY(0);
7518
+ transform: translateY(0);
7519
+ }
7520
+
7521
+ .premium-persons-title-cw .premium-person-title {
7522
+ -webkit-transform: translateX(-15px) rotate(-90deg);
7523
+ -ms-transform: translateX(-15px) rotate(-90deg);
7524
+ transform: translateX(-15px) rotate(-90deg);
7525
+ -webkit-transform-origin: top;
7526
+ -ms-transform-origin: top;
7527
+ transform-origin: top;
7528
+ }
7529
+
7530
+ .premium-persons-title-cw .premium-person-container:hover .premium-person-title {
7531
+ -webkit-transform: translateX(0) rotate(-90deg);
7532
+ -ms-transform: translateX(0) rotate(-90deg);
7533
+ transform: translateX(0) rotate(-90deg);
7534
+ }
7535
+
7536
+ .premium-persons-title-ccw .premium-person-title {
7537
+ width: auto;
7538
+ margin-left: 20px;
7539
+ -webkit-transform: translateX(-15px) rotate(90deg);
7540
+ -ms-transform: translateX(-15px) rotate(90deg);
7541
+ transform: translateX(-15px) rotate(90deg);
7542
+ -webkit-transform-origin: center left;
7543
+ -ms-transform-origin: center left;
7544
+ transform-origin: center left;
7545
+ }
7546
+
7547
+ .premium-persons-title-ccw .premium-person-container:hover .premium-person-title {
7548
+ -webkit-transform: translateX(0) rotate(90deg);
7549
+ -ms-transform: translateX(0) rotate(90deg);
7550
+ transform: translateX(0) rotate(90deg);
7551
+ }
7552
+ /**************** Premium Pricing Table ****************/
7553
+ /*******************************************************/
7554
+ .premium-pricing-table-container {
7555
+ position: relative;
7556
+ text-align: center;
7557
+ display: inline-block;
7558
+ width: 100%;
7559
+ -webkit-transition: all 0.3s ease-in-out;
7560
+ transition: all 0.3s ease-in-out;
7561
+ }
7562
+
7563
+ .premium-pricing-icon-container {
7564
+ -js-display: flex;
7565
+ display: -webkit-box;
7566
+ display: -webkit-flex;
7567
+ display: -moz-box;
7568
+ display: -ms-flexbox;
7569
+ display: flex;
7570
+ -webkit-box-pack: center;
7571
+ -webkit-justify-content: center;
7572
+ -moz-box-pack: center;
7573
+ -ms-flex-pack: center;
7574
+ justify-content: center;
7575
+ line-height: 0;
7576
+ }
7577
+
7578
+ .premium-pricing-icon-container .premium-pricing-icon {
7579
+ display: inline-block;
7580
+ }
7581
+
7582
+ .premium-pricing-icon-container .premium-pricing-image {
7583
+ overflow: hidden;
7584
+ }
7585
+
7586
+ .premium-pricing-icon-container .premium-pricing-image img {
7587
+ width: 25px;
7588
+ height: 25px;
7589
+ -o-object-fit: cover;
7590
+ object-fit: cover;
7591
+ }
7592
+
7593
+ .premium-badge-left {
7594
+ position: absolute;
7595
+ top: 0;
7596
+ }
7597
+
7598
+ .premium-badge-right {
7599
+ position: absolute;
7600
+ top: 0;
7601
+ right: 0;
7602
+ }
7603
+
7604
+ .premium-badge-left {
7605
+ left: 0;
7606
+ }
7607
+
7608
+ .premium-badge-triangle.premium-badge-left .corner {
7609
+ width: 0;
7610
+ height: 0;
7611
+ border-top: 150px solid;
7612
+ border-bottom: 150px solid transparent;
7613
+ border-right: 150px solid transparent;
7614
+ }
7615
+
7616
+ .premium-badge-triangle.premium-badge-right .corner {
7617
+ width: 0;
7618
+ height: 0;
7619
+ border-bottom: 150px solid transparent;
7620
+ border-right: 150px solid;
7621
+ border-left: 150px solid transparent;
7622
+ }
7623
+
7624
+ .premium-badge-triangle span {
7625
+ position: absolute;
7626
+ top: 35px;
7627
+ width: 100px;
7628
+ text-align: center;
7629
+ -webkit-transform: rotate(-45deg);
7630
+ -ms-transform: rotate(-45deg);
7631
+ transform: rotate(-45deg);
7632
+ display: block;
7633
+ text-transform: uppercase;
7634
+ }
7635
+
7636
+ .premium-badge-triangle.premium-badge-right span {
7637
+ -webkit-transform: rotate(45deg);
7638
+ -ms-transform: rotate(45deg);
7639
+ transform: rotate(45deg);
7640
+ right: 0;
7641
+ }
7642
+
7643
+ .premium-badge-circle {
7644
+ min-width: 4em;
7645
+ min-height: 4em;
7646
+ line-height: 4em;
7647
+ text-align: center;
7648
+ -webkit-border-radius: 100%;
7649
+ border-radius: 100%;
7650
+ position: absolute;
7651
+ z-index: 1;
7652
+ }
7653
+
7654
+ .premium-badge-stripe {
7655
+ position: absolute;
7656
+ -webkit-transform: rotate(90deg);
7657
+ -ms-transform: rotate(90deg);
7658
+ transform: rotate(90deg);
7659
+ width: 15em;
7660
+ overflow: hidden;
7661
+ height: 15em;
7662
+ }
7663
+
7664
+ .premium-badge-stripe.premium-badge-left {
7665
+ -webkit-transform: rotate(0);
7666
+ -ms-transform: rotate(0);
7667
+ transform: rotate(0);
7668
+ }
7669
+
7670
+ .premium-badge-stripe .corner {
7671
+ text-align: center;
7672
+ left: 0;
7673
+ width: 150%;
7674
+ -webkit-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
7675
+ -ms-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
7676
+ transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
7677
+ margin-top: 35px;
7678
+ font-size: 13px;
7679
+ line-height: 2;
7680
+ font-weight: 800;
7681
+ text-transform: uppercase;
7682
+ }
7683
+
7684
+ .premium-badge-flag .corner {
7685
+ text-align: center;
7686
+ -webkit-border-radius: 4px 4px 0 4px;
7687
+ border-radius: 4px 4px 0 4px;
7688
+ padding: 3px 15px;
7689
+ position: absolute;
7690
+ top: 10%;
7691
+ right: -8px;
7692
+ }
7693
+
7694
+ .premium-badge-flag .corner::before,
7695
+ .premium-badge-flag .corner::after {
7696
+ content: "";
7697
+ display: block;
7698
+ position: absolute;
7699
+ width: 0;
7700
+ height: 0;
7701
+ top: 100%;
7702
+ right: 0;
7703
+ border-bottom: 8px solid transparent;
7704
  }
7705
 
7706
+ .elementor-widget-premium-addon-pricing-table .elementor-widget-container {
7707
+ overflow: visible !important;
 
 
 
7708
  }
7709
 
7710
+ .premium-badge-flag .corner::after {
7711
+ border-left: 8px solid rgba(0, 0, 0, 0.2);
7712
  }
7713
 
7714
+ .premium-pricing-price-currency {
7715
+ position: relative;
7716
  }
7717
 
7718
+ .premium-pricing-button-container {
7719
+ display: block;
7720
+ }
7721
+
7722
+ .premium-pricing-list {
7723
  -js-display: flex;
7724
  display: -webkit-box;
7725
  display: -webkit-flex;
7733
  -moz-box-direction: normal;
7734
  -ms-flex-direction: column;
7735
  flex-direction: column;
7736
+ list-style-type: none;
7737
+ margin: 0;
 
 
 
 
7738
  }
7739
 
7740
+ .premium-pricing-list .premium-pricing-list-item {
7741
+ -js-display: flex;
7742
+ display: -webkit-box;
7743
+ display: -webkit-flex;
7744
+ display: -moz-box;
7745
+ display: -ms-flexbox;
7746
+ display: flex;
7747
+ -webkit-box-align: center;
7748
+ -webkit-align-items: center;
7749
+ -moz-box-align: center;
7750
+ -ms-flex-align: center;
7751
+ align-items: center;
7752
  }
7753
 
7754
+ .premium-pricing-list .premium-pricing-list-item svg {
7755
+ width: 50px;
7756
+ height: 50px;
7757
  }
7758
 
7759
+ .premium-pricing-list .premium-pricing-list-item img {
7760
+ width: 30px;
7761
+ height: 30px;
7762
+ -o-object-fit: cover;
7763
+ object-fit: cover;
7764
  }
7765
 
7766
+ .premium-pricing-list .premium-pricing-list-span {
7767
+ position: relative;
7768
+ }
7769
+
7770
+ .premium-pricing-list .list-item-tooltip {
7771
+ border-bottom: 1px dotted;
7772
+ }
7773
+
7774
+ .premium-pricing-list .premium-pricing-list-tooltip {
7775
+ position: absolute;
7776
+ top: -webkit-calc(100% + 1px);
7777
+ top: calc(100% + 1px);
7778
+ right: 0;
7779
+ visibility: hidden;
7780
+ padding: 15px 20px;
7781
+ -webkit-border-radius: 5px;
7782
+ border-radius: 5px;
7783
+ min-width: 200px;
7784
+ overflow: hidden;
7785
+ text-align: right;
7786
+ font-size: 0.8rem;
7787
+ color: #fff;
7788
+ background-color: #aaa;
7789
+ }
7790
+
7791
+ .premium-pricing-features-left .premium-pricing-list-span {
7792
+ text-align: right;
7793
+ }
7794
+
7795
+ .premium-pricing-features-center .premium-pricing-list-span {
7796
+ text-align: center;
7797
+ }
7798
+
7799
+ .premium-pricing-features-right .premium-pricing-list-span {
7800
+ text-align: left;
7801
+ }
7802
+
7803
+ .premium-pricing-list-span:hover .premium-pricing-list-tooltip {
7804
+ z-index: 99;
7805
+ visibility: visible;
7806
  opacity: 1;
 
 
 
7807
  }
7808
 
7809
+ .premium-pricing-slashed-price-value {
7810
+ display: inline-block;
7811
+ font-size: 20px;
7812
+ font-weight: 400;
7813
+ margin-left: 5px;
 
 
7814
  }
7815
 
7816
+ .premium-pricing-price-value {
7817
+ font-size: 70px;
 
 
7818
  }
7819
 
7820
+ .premium-pricing-description-container li {
7821
+ list-style-position: inside;
7822
+ text-indent: -40px;
 
 
 
 
 
 
7823
  }
7824
 
7825
+ @-moz-document url-prefix() {
7826
+ .premium-pricing-description-container li {
7827
+ text-indent: 0px;
7828
+ }
7829
  }
7830
+
7831
+ .premium-pricing-price-button {
7832
+ display: block;
7833
+ padding: 6px 12px;
7834
+ line-height: 1.42857143;
7835
+ text-align: center;
7836
+ color: #fff;
7837
+ background: #6ec1e4;
7838
+ margin-bottom: 0;
7839
+ -webkit-transition: all 0.3s ease-in-out;
7840
+ transition: all 0.3s ease-in-out;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7841
  }
7842
  /**************** Premium Progress Bar ****************/
7843
  /******************************************************/
8257
  position: absolute;
8258
  z-index: 1;
8259
  }
8260
+ /**************** Premium Title ****************/
8261
+ /***********************************************/
8262
+ .premium-title-container .premium-title-header {
8263
+ position: relative;
8264
+ margin: 0;
8265
+ padding: 10px;
8266
+ }
8267
+
8268
+ .premium-title-container .premium-title-header:not(.premium-title-style7) {
8269
+ -webkit-box-align: center;
8270
+ -webkit-align-items: center;
8271
+ -moz-box-align: center;
8272
+ -ms-flex-align: center;
8273
+ align-items: center;
8274
+ }
8275
+
8276
+ .premium-title-container .premium-title-header svg {
8277
+ width: 40px;
8278
+ height: 40px;
8279
+ }
8280
+
8281
+ .premium-title-container .premium-title-header img {
8282
+ width: 40px;
8283
+ height: 40px;
8284
+ -o-object-fit: cover;
8285
+ object-fit: cover;
8286
+ }
8287
+
8288
+ .premium-title-container .premium-title-header a {
8289
+ position: absolute;
8290
+ top: 0;
8291
+ right: 0;
8292
+ width: 100%;
8293
+ height: 100%;
8294
+ }
8295
+
8296
+ .premium-title-container .premium-lottie-animation {
8297
+ -js-display: flex;
8298
+ display: -webkit-box;
8299
+ display: -webkit-flex;
8300
+ display: -moz-box;
8301
+ display: -ms-flexbox;
8302
+ display: flex;
8303
+ }
8304
+
8305
+ .premium-title-icon-row .premium-title-icon {
8306
+ margin-left: 10px;
8307
+ }
8308
+
8309
+ .premium-title-icon-row-reverse .premium-title-icon {
8310
+ margin-right: 10px;
8311
+ }
8312
+
8313
+ .premium-title-style3,
8314
+ .premium-title-style4 {
8315
+ -js-display: flex;
8316
+ display: -webkit-box;
8317
+ display: -webkit-flex;
8318
+ display: -moz-box;
8319
+ display: -ms-flexbox;
8320
+ display: flex;
8321
+ }
8322
+
8323
+ .premium-title-style1,
8324
+ .premium-title-style2,
8325
+ .premium-title-style5,
8326
+ .premium-title-style6,
8327
+ .premium-title-style8,
8328
+ .premium-title-style9 {
8329
+ -js-display: inline-flex;
8330
+ display: -webkit-inline-box;
8331
+ display: -webkit-inline-flex;
8332
+ display: -moz-inline-box;
8333
+ display: -ms-inline-flexbox;
8334
+ display: inline-flex;
8335
+ }
8336
+
8337
+ .premium-title-style7 {
8338
+ -js-display: inline-flex;
8339
+ display: -webkit-inline-box;
8340
+ display: -webkit-inline-flex;
8341
+ display: -moz-inline-box;
8342
+ display: -ms-inline-flexbox;
8343
+ display: inline-flex;
8344
+ -webkit-box-orient: vertical;
8345
+ -webkit-box-direction: normal;
8346
+ -webkit-flex-direction: column;
8347
+ -moz-box-orient: vertical;
8348
+ -moz-box-direction: normal;
8349
+ -ms-flex-direction: column;
8350
+ flex-direction: column;
8351
+ }
8352
+
8353
+ .premium-title-style7 .premium-title-style7-inner {
8354
+ -js-display: flex;
8355
+ display: -webkit-box;
8356
+ display: -webkit-flex;
8357
+ display: -moz-box;
8358
+ display: -ms-flexbox;
8359
+ display: flex;
8360
+ -webkit-box-align: center;
8361
+ -webkit-align-items: center;
8362
+ -moz-box-align: center;
8363
+ -ms-flex-align: center;
8364
+ align-items: center;
8365
+ }
8366
+
8367
+ .premium-title-style1 {
8368
+ border-width: 0;
8369
+ border-right: 3px solid #6ec1e4;
8370
+ }
8371
+
8372
+ .premium-title-container.style2,
8373
+ .premium-title-container.style4,
8374
+ .premium-title-container.style5,
8375
+ .premium-title-container.style6 {
8376
+ border-bottom: 3px solid #6ec1e4;
8377
+ }
8378
+
8379
+ /*Style 6 Header*/
8380
+ .premium-title-style6:before {
8381
+ position: absolute;
8382
+ right: 50%;
8383
+ bottom: 0;
8384
+ margin-right: -2px;
8385
+ content: "";
8386
+ border: 3px solid transparent;
8387
+ }
8388
+
8389
+ /*Style 6 Trinagle*/
8390
+ .premium-title-style7-stripe-wrap {
8391
+ -js-display: flex;
8392
+ display: -webkit-box;
8393
+ display: -webkit-flex;
8394
+ display: -moz-box;
8395
+ display: -ms-flexbox;
8396
+ display: flex;
8397
+ }
8398
+
8399
+ .premium-title-style7:before {
8400
+ display: none;
8401
+ }
8402
+
8403
+ .premium-title-style8 .premium-title-text[data-animation="shiny"] {
8404
+ -webkit-background-size: 125px 125px !important;
8405
+ background-size: 125px !important;
8406
+ color: rgba(255, 255, 255, 0);
8407
+ -webkit-background-clip: text !important;
8408
+ background-clip: text !important;
8409
+ -webkit-animation-name: pa-shinny-text !important;
8410
+ animation-name: pa-shinny-text !important;
8411
+ -webkit-animation-duration: var(--animation-speed) !important;
8412
+ animation-duration: var(--animation-speed) !important;
8413
+ -webkit-animation-iteration-count: infinite !important;
8414
+ animation-iteration-count: infinite !important;
8415
+ background: var(--base-color) -webkit-gradient(linear,
8416
+ left top,
8417
+ right top,
8418
+ from(var(--base-color)),
8419
+ to(var(--base-color)),
8420
+ color-stop(0.5, var(--shiny-color))) 0 0 no-repeat;
8421
+ }
8422
+
8423
+ .premium-title-style9[data-animation-blur="process"] .premium-title-style9-letter {
8424
+ -webkit-animation: pa-blur-shadow 2s 1 alternate;
8425
+ animation: pa-blur-shadow 2s 1 alternate;
8426
+ }
8427
+
8428
+ .premium-title-gradient-yes .premium-title-text,
8429
+ .premium-title-gradient-yes .premium-title-icon {
8430
+ -webkit-background-clip: text;
8431
+ -webkit-text-fill-color: transparent;
8432
+ background-image: -webkit-gradient(linear, left top, right top, from(#ffa648), color-stop(#f17cc1), to(#4da9fd));
8433
+ background-image: -webkit-linear-gradient(left, #ffa648, #f17cc1, #4da9fd);
8434
+ background-image: linear-gradient(to right, #ffa648, #f17cc1, #4da9fd);
8435
+ -webkit-animation: pa-text-gradient 8s infinite;
8436
+ animation: pa-text-gradient 8s infinite;
8437
+ }
8438
+
8439
+ .premium-title-clipped .premium-title-header {
8440
+ -webkit-text-fill-color: transparent;
8441
+ -webkit-background-clip: text;
8442
+ background-clip: text;
8443
+ }
8444
+
8445
+ @-webkit-keyframes pa-shinny-text {
8446
+ 0% {
8447
+ background-position: 100%;
8448
+ }
8449
+
8450
+ 100% {
8451
+ background-position: -100%;
8452
+ }
8453
+ }
8454
+
8455
+ @keyframes pa-shinny-text {
8456
+ 0% {
8457
+ background-position: 100%;
8458
+ }
8459
+
8460
+ 100% {
8461
+ background-position: -100%;
8462
+ }
8463
+ }
8464
+
8465
+ @-webkit-keyframes pa-blur-shadow {
8466
+ from {
8467
+ text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
8468
+ color: transparent;
8469
+ }
8470
+
8471
+ to {
8472
+ text-shadow: 0;
8473
+ }
8474
+ }
8475
+
8476
+ @keyframes pa-blur-shadow {
8477
+ from {
8478
+ text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
8479
+ color: transparent;
8480
+ }
8481
+
8482
+ to {
8483
+ text-shadow: 0;
8484
+ }
8485
+ }
8486
+
8487
+ @-webkit-keyframes pa-text-gradient {
8488
+
8489
+ 0%,
8490
+ 100% {
8491
+ -webkit-filter: hue-rotate(0deg);
8492
+ filter: hue-rotate(0deg);
8493
+ }
8494
+
8495
+ 50% {
8496
+ -webkit-filter: hue-rotate(360deg);
8497
+ filter: hue-rotate(360deg);
8498
+ }
8499
+ }
8500
+
8501
+ @keyframes pa-text-gradient {
8502
+
8503
+ 0%,
8504
+ 100% {
8505
+ -webkit-filter: hue-rotate(0deg);
8506
+ filter: hue-rotate(0deg);
8507
+ }
8508
+
8509
+ 50% {
8510
+ -webkit-filter: hue-rotate(360deg);
8511
+ filter: hue-rotate(360deg);
8512
+ }
8513
  }
8514
  /**************** Premium Video Box ************/
8515
  /***********************************************/
assets/frontend/css/premium-addons.css CHANGED
@@ -1,8 +1,8 @@
1
  @charset "UTF-8";
2
  @font-face {
3
  font-family: "pa-elements";
4
- src: url("../../editor/fonts/pa-elements.eot?9e1efm");
5
- src: url("../../editor/fonts/pa-elements.eot?9e1efm#iefix") format("embedded-opentype"), url("../../editor/fonts/pa-elements.ttf?9e1efm") format("truetype"), url("../../editor/fonts/pa-elements.woff?9e1efm") format("woff"), url("../../editor/fonts/pa-elements.svg?9e1efm#pa-elements") format("svg");
6
  font-weight: normal;
7
  font-style: normal;
8
  }
@@ -2460,162 +2460,162 @@
2460
  width: 100%;
2461
  right: 0; }
2462
 
2463
- /**************** Premium Carousel ****************/
2464
- /**************************************************/
2465
- .premium-carousel-hidden {
2466
- opacity: 0;
2467
- visibility: hidden; }
2468
-
2469
- .premium-carousel-wrapper a.carousel-arrow, .premium-carousel-wrapper a.ver-carousel-arrow {
2470
- -js-display: flex;
2471
- display: -webkit-box;
2472
- display: -webkit-flex;
2473
- display: -moz-box;
2474
- display: -ms-flexbox;
2475
- display: flex;
2476
- -webkit-box-align: center;
2477
- -webkit-align-items: center;
2478
- -moz-box-align: center;
2479
- -ms-flex-align: center;
2480
- align-items: center;
2481
- -webkit-box-pack: center;
2482
- -webkit-justify-content: center;
2483
- -moz-box-pack: center;
2484
- -ms-flex-pack: center;
2485
- justify-content: center;
2486
- width: 2em;
2487
- height: 2em;
2488
- line-height: 0;
2489
- text-align: center;
2490
- position: absolute;
2491
- z-index: 99;
2492
- cursor: pointer;
2493
- -webkit-transition: all 0.3s ease-in-out;
2494
- transition: all 0.3s ease-in-out;
2495
- -webkit-appearance: inherit;
2496
- border: none;
2497
- -webkit-box-shadow: none;
2498
- box-shadow: none; }
2499
- .premium-carousel-wrapper a.carousel-arrow svg, .premium-carousel-wrapper a.ver-carousel-arrow svg {
2500
- -webkit-transition: all 0.3s ease-in-out;
2501
- transition: all 0.3s ease-in-out; }
2502
-
2503
- .ver-carousel-arrow.carousel-next i {
2504
- margin-bottom: -3px; }
2505
-
2506
- .premium-carousel-wrapper a.slick-arrow:hover {
2507
- -webkit-box-shadow: none !important;
2508
- box-shadow: none !important; }
2509
-
2510
- .premium-carousel-wrapper .premium-carousel-content-hidden {
2511
- visibility: hidden; }
2512
-
2513
- .premium-carousel-wrapper a.carousel-arrow {
2514
- top: 50%; }
2515
-
2516
- .premium-carousel-wrapper a.ver-carousel-arrow {
2517
- left: 50%;
2518
- -webkit-transform: translateX(-50%);
2519
- -ms-transform: translateX(-50%);
2520
- transform: translateX(-50%); }
2521
-
2522
- .premium-carousel-dots-above ul.slick-dots {
2523
- position: absolute;
2524
- -js-display: flex;
2525
- display: -webkit-box;
2526
- display: -webkit-flex;
2527
- display: -moz-box;
2528
- display: -ms-flexbox;
2529
- display: flex;
2530
- width: auto;
2531
- top: 50%;
2532
- bottom: auto;
2533
- -webkit-transform: translateY(-50%);
2534
- -ms-transform: translateY(-50%);
2535
- transform: translateY(-50%);
2536
- -webkit-box-orient: vertical;
2537
- -webkit-box-direction: normal;
2538
- -webkit-flex-direction: column;
2539
- -moz-box-orient: vertical;
2540
- -moz-box-direction: normal;
2541
- -ms-flex-direction: column;
2542
- flex-direction: column; }
2543
-
2544
  /*
2545
  * Custom Navigation Dot
2546
- */
2547
- .premium-carousel-wrapper .premium-carousel-nav-dot,
2548
- .premium-carousel-wrapper .premium-carousel-nav-arrow-prev,
2549
- .premium-carousel-wrapper .premium-carousel-nav-arrow-next {
2550
- display: none; }
2551
-
2552
- .premium-carousel-wrapper ul.slick-dots svg {
2553
- width: 20px;
2554
- height: 20px;
2555
- outline: none !important; }
2556
-
2557
- /* Ripple Out */
2558
- @-webkit-keyframes hvr-ripple-out {
2559
- 0% {
2560
- -webkit-transform: scale(1);
2561
- transform: scale(1);
2562
- opacity: 1; }
2563
- 100% {
2564
- -webkit-transform: scale(1.5);
2565
- transform: scale(1.5);
2566
- opacity: 0; } }
2567
- @keyframes hvr-ripple-out {
2568
- 0% {
2569
- -webkit-transform: scale(1);
2570
- transform: scale(1);
2571
- opacity: 1; }
2572
- 100% {
2573
- -webkit-transform: scale(1.5);
2574
- transform: scale(1.5);
2575
- opacity: 0; } }
2576
-
2577
- .premium-carousel-ripple-yes .premium-carousel-wrapper {
2578
- padding-bottom: 1px; }
2579
-
2580
- .premium-carousel-ripple-yes ul.slick-dots li {
2581
- position: relative; }
2582
- .premium-carousel-ripple-yes ul.slick-dots li i {
2583
- position: relative;
2584
- z-index: 1; }
2585
- .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
2586
- content: "";
2587
- position: absolute;
2588
- -webkit-transform: scale(1);
2589
- -ms-transform: scale(1);
2590
- transform: scale(1);
2591
- top: 0;
2592
- right: 0;
2593
- bottom: 0;
2594
- left: 0;
2595
- -webkit-border-radius: 50%;
2596
- border-radius: 50%;
2597
- pointer-events: none;
2598
- background-color: rgba(0, 0, 0, 0.15); }
2599
- .premium-carousel-ripple-yes ul.slick-dots li.slick-active:hover:before {
2600
- background-color: rgba(0, 0, 0, 0.3); }
2601
- .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
2602
- -webkit-animation: hvr-ripple-out 1.3s infinite;
2603
- animation: hvr-ripple-out 1.3s infinite; }
2604
-
2605
- .premium-carousel-wrapper.premium-carousel-scale .slick-slide {
2606
- -webkit-transform: scale(1.25, 1.25);
2607
- -ms-transform: scale(1.25, 1.25);
2608
- transform: scale(1.25, 1.25);
2609
- -webkit-transition: all 0.3s ease-in-out;
2610
- transition: all 0.3s ease-in-out; }
2611
-
2612
- .premium-carousel-wrapper.premium-carousel-scale div.slick-active {
2613
- -webkit-transform: scale(1, 1);
2614
- -ms-transform: scale(1, 1);
2615
- transform: scale(1, 1); }
2616
-
2617
- [dir="rtl"] .premium-carousel-inner .slick-slide {
2618
- float: right; }
2619
 
2620
  /**************** Premium Contact Form7 **********/
2621
  /*************************************************/
@@ -3846,8 +3846,8 @@ ul[data-list-animation*="animated-"] .premium-bullet-list-divider-inline {
3846
  /**********************************************/
3847
  @font-face {
3848
  font-family: "pa-elements";
3849
- src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?9e1efm");
3850
- src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?9e1efm#iefix") format("embedded-opentype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.ttf?9e1efm") format("truetype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.woff?9e1efm") format("woff"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.svg?9e1efm#pa-elements") format("svg");
3851
  font-weight: normal;
3852
  font-style: normal; }
3853
 
@@ -4313,8 +4313,8 @@ ul[data-list-animation*="animated-"] .premium-bullet-list-divider-inline {
4313
  .premium-clearfix {
4314
  clear: both; }
4315
 
4316
- /**
4317
- * Metro Layout
4318
  */
4319
  .premium-img-gallery-metro .premium-gallery-item {
4320
  overflow: hidden; }
@@ -4628,99 +4628,998 @@ button.premium-modal-box-modal-close {
4628
  width: 50px;
4629
  height: 60px; }
4630
 
4631
- .premium-modal-box-modal-body {
4632
- position: relative;
4633
- padding: 15px; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4634
 
4635
- .premium-modal-box-modal-footer {
4636
- padding: 15px;
4637
- text-align: right;
4638
- border-top: 1px solid #e5e5e5; }
4639
 
4640
- .premium-modal-scrollbar-measure {
4641
- position: absolute;
4642
- top: -9999px;
4643
- width: 50px;
4644
- height: 50px;
4645
- overflow: scroll; }
4646
 
4647
- .premium-modal-trigger-text {
4648
- background: none !important;
4649
- display: inline-block; }
4650
 
4651
- .premium-modal-box-container {
4652
- width: 100% !important; }
4653
 
4654
- /*Open Modal Button Style*/
4655
- .premium-modal-trigger-container .premium-modal-trigger-btn {
4656
- -js-display: inline-flex;
4657
- display: -webkit-inline-box;
4658
- display: -webkit-inline-flex;
4659
- display: -moz-inline-box;
4660
- display: -ms-inline-flexbox;
4661
- display: inline-flex;
4662
- -webkit-box-align: center;
4663
- -webkit-align-items: center;
4664
- -moz-box-align: center;
4665
- -ms-flex-align: center;
4666
- align-items: center;
4667
- border: none;
4668
- -webkit-transition: all 0.3s ease-in-out;
4669
- transition: all 0.3s ease-in-out; }
4670
- .premium-modal-trigger-container .premium-modal-trigger-btn.premium-btn-block {
4671
- -webkit-box-pack: center;
4672
- -webkit-justify-content: center;
4673
- -moz-box-pack: center;
4674
- -ms-flex-pack: center;
4675
- justify-content: center; }
4676
 
4677
- .premium-modal-trigger-container .premium-modal-trigger-img,
4678
- .premium-modal-trigger-container .premium-modal-trigger-text,
4679
- .premium-modal-trigger-container .premium-modal-trigger-animation {
4680
- cursor: pointer; }
4681
 
4682
- .premium-modal-trigger-container .premium-modal-trigger-animation {
4683
- display: inline-block;
4684
- width: 200px;
4685
- height: 200px;
4686
- -webkit-transition: all 0.3s ease-in-out;
4687
- transition: all 0.3s ease-in-out; }
4688
 
4689
- /*Image on Modal Header Style*/
4690
- .premium-modal-box-modal-header img {
4691
- width: 48px;
4692
- padding-right: 5px; }
4693
 
4694
- .premium-modal-box-modal-header i,
4695
- .premium-modal-box-modal-header svg {
4696
- padding-right: 6px; }
4697
 
4698
- .premium-modal-box-modal-close {
4699
- position: relative;
4700
- z-index: 99; }
4701
 
4702
- .premium-modal-trigger-img,
4703
- .premium-modal-trigger-text,
4704
- .premium-modal-box-close-button-container,
4705
- .premium-modal-box-modal-close,
4706
- .premium-modal-box-modal-lower-close {
4707
- -webkit-transition: all 0.3s ease-in-out;
4708
- transition: all 0.3s ease-in-out; }
4709
 
4710
- @media (min-width: 768px) {
4711
- .premium-modal-box-modal-dialog {
4712
- width: 700px;
4713
- max-height: 600px;
4714
- overflow: auto; } }
4715
 
4716
- @media (max-width: 767px) {
4717
- .premium-modal-box-modal-dialog {
4718
- width: 100%;
4719
- max-height: 500px;
4720
- overflow: auto; } }
4721
 
4722
- .premium-modal-box-container[data-modal-animation*="animated-"] {
4723
- opacity: 0; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4724
 
4725
  /************ Premium Team Members ************/
4726
  /**********************************************/
@@ -7456,258 +8355,258 @@ html.premium-woo-qv-opened body {
7456
 
7457
  /*
7458
  * Common Title/Dual Heading
7459
- */
7460
- .premium-title-bg-text:before {
7461
- position: absolute;
7462
- content: attr(data-background);
7463
- top: 0;
7464
- left: 0;
7465
- text-align: left; }
7466
-
7467
- .premium-bg-text-yes .elementor-widget-container:before {
7468
- position: absolute;
7469
- top: 0;
7470
- left: 0;
7471
- text-align: left; }
7472
-
7473
- .premium-mask-yes .premium-dual-header-first-clip .premium-dual-header-first-span .premium-mask-span,
7474
- .premium-mask-yes .premium-dual-header-second-clip .premium-mask-span {
7475
- background: inherit; }
7476
-
7477
- .premium-mask-yes .premium-mask-span {
7478
- position: relative;
7479
- overflow: hidden;
7480
- -js-display: inline-flex !important;
7481
- display: -webkit-inline-box !important;
7482
- display: -webkit-inline-flex !important;
7483
- display: -moz-inline-box !important;
7484
- display: -ms-inline-flexbox !important;
7485
- display: inline-flex !important; }
7486
- .premium-mask-yes .premium-mask-span::after {
7487
- content: "";
7488
- position: absolute;
7489
- top: 0;
7490
- right: 0px;
7491
- width: 100%;
7492
- height: 100%;
7493
- background-color: currentColor;
7494
- -webkit-backface-visibility: visible;
7495
- backface-visibility: visible; }
7496
-
7497
- .premium-mask-active.premium-mask-tr .premium-mask-span::after {
7498
- -webkit-animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7499
- animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7500
- -webkit-transform: translateX(-103%);
7501
- -ms-transform: translateX(-103%);
7502
- transform: translateX(-103%); }
7503
-
7504
- .premium-mask-active.premium-mask-tl .premium-mask-span::after {
7505
- -webkit-animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7506
- animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7507
- -webkit-transform: translateX(103%);
7508
- -ms-transform: translateX(103%);
7509
- transform: translateX(103%); }
7510
-
7511
- .premium-mask-active.premium-mask-tb .premium-mask-span::after {
7512
- -webkit-animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7513
- animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7514
- -webkit-transform: translateY(-103%);
7515
- -ms-transform: translateY(-103%);
7516
- transform: translateY(-103%); }
7517
-
7518
- .premium-mask-active.premium-mask-tt .premium-mask-span::after {
7519
- -webkit-animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7520
- animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
7521
- -webkit-transform: translateY(103%);
7522
- -ms-transform: translateY(103%);
7523
- transform: translateY(103%); }
7524
-
7525
- @-webkit-keyframes pa-mask-tr {
7526
- 0% {
7527
- -webkit-transform: translateX(0%);
7528
- transform: translateX(0%); }
7529
- 100% {
7530
- -webkit-transform: translateX(103%);
7531
- transform: translateX(103%); } }
7532
-
7533
- @keyframes pa-mask-tr {
7534
- 0% {
7535
- -webkit-transform: translateX(0%);
7536
- transform: translateX(0%); }
7537
- 100% {
7538
- -webkit-transform: translateX(103%);
7539
- transform: translateX(103%); } }
7540
-
7541
- @-webkit-keyframes pa-mask-tl {
7542
- 0% {
7543
- -webkit-transform: translateX(0%);
7544
- transform: translateX(0%); }
7545
- 100% {
7546
- -webkit-transform: translateX(-103%);
7547
- transform: translateX(-103%); } }
7548
-
7549
- @keyframes pa-mask-tl {
7550
- 0% {
7551
- -webkit-transform: translateX(0%);
7552
- transform: translateX(0%); }
7553
- 100% {
7554
- -webkit-transform: translateX(-103%);
7555
- transform: translateX(-103%); } }
7556
-
7557
- @-webkit-keyframes pa-mask-tb {
7558
- 0% {
7559
- -webkit-transform: translateY(0%);
7560
- transform: translateY(0%); }
7561
- 100% {
7562
- -webkit-transform: translateY(103%);
7563
- transform: translateY(103%); } }
7564
-
7565
- @keyframes pa-mask-tb {
7566
- 0% {
7567
- -webkit-transform: translateY(0%);
7568
- transform: translateY(0%); }
7569
- 100% {
7570
- -webkit-transform: translateY(103%);
7571
- transform: translateY(103%); } }
7572
-
7573
- @-webkit-keyframes pa-mask-tt {
7574
- 0% {
7575
- -webkit-transform: translateY(0%);
7576
- transform: translateY(0%); }
7577
- 100% {
7578
- -webkit-transform: translateY(-103%);
7579
- transform: translateY(-103%); } }
7580
-
7581
- @keyframes pa-mask-tt {
7582
- 0% {
7583
- -webkit-transform: translateY(0%);
7584
- transform: translateY(0%); }
7585
- 100% {
7586
- -webkit-transform: translateY(-103%);
7587
- transform: translateY(-103%); } }
7588
-
7589
  /*
7590
  * Common Buttons Style.
7591
- */
7592
- .premium-button .premium-lottie-animation,
7593
- .premium-image-button .premium-lottie-animation {
7594
- -js-display: flex;
7595
- display: -webkit-box;
7596
- display: -webkit-flex;
7597
- display: -moz-box;
7598
- display: -ms-flexbox;
7599
- display: flex; }
7600
-
7601
- .premium-button svg,
7602
- .premium-image-button svg {
7603
- width: 30px;
7604
- height: 30px; }
7605
-
7606
- .premium-btn-sm,
7607
- .premium-btn-md,
7608
- .premium-btn-lg,
7609
- .premium-btn-block {
7610
- background-color: #eee;
7611
- color: #042551;
7612
- margin: 0px;
7613
- text-decoration: none; }
7614
- .premium-btn-sm:hover,
7615
- .premium-btn-md:hover,
7616
- .premium-btn-lg:hover,
7617
- .premium-btn-block:hover {
7618
- background-color: #54595f;
7619
- color: #eee; }
7620
-
7621
- .premium-btn-sm {
7622
- padding: 12px 24px;
7623
- font-size: 14px;
7624
- line-height: 1; }
7625
-
7626
- .premium-btn-md {
7627
- padding: 14px 26px;
7628
- font-size: 16px;
7629
- line-height: 1.2; }
7630
-
7631
- .premium-btn-lg {
7632
- padding: 16px 28px;
7633
- font-size: 18px;
7634
- line-height: 1.3333; }
7635
-
7636
- .premium-btn-block {
7637
- font-size: 18px;
7638
- line-height: 1;
7639
- padding: 20px 0px;
7640
- width: 100%;
7641
- text-align: center; }
7642
-
7643
- .premium-button-text {
7644
- display: inline-block;
7645
- width: 100%; }
7646
-
7647
  /*
7648
  * Common Button/Image Button Mouse Detect Effect.
7649
- */
7650
- .premium-mouse-detect-yes .premium-button-style6 .premium-button-style6-bg {
7651
- position: absolute;
7652
- z-index: 0;
7653
- top: 0;
7654
- left: 0;
7655
- width: 0px;
7656
- height: 0px;
7657
- -webkit-border-radius: 50%;
7658
- border-radius: 50%;
7659
- display: block;
7660
- -webkit-transform: translate(-50%, -50%);
7661
- -ms-transform: translate(-50%, -50%);
7662
- transform: translate(-50%, -50%);
7663
- -webkit-transition: width 0.4s ease-in-out, height 0.4s ease-in-out;
7664
- transition: width 0.4s ease-in-out, height 0.4s ease-in-out; }
7665
-
7666
- .premium-mouse-detect-yes .premium-button-style6:hover .premium-button-style6-bg {
7667
- width: 225%;
7668
- height: 560px; }
7669
-
7670
- .premium-mouse-detect-yes .premium-button-style6:before {
7671
- width: 0;
7672
- height: 0; }
7673
-
7674
- /** Loader */
7675
- .premium-loader {
7676
- border: 3px solid #f3f3f3;
7677
- border-top-width: 3px;
7678
- border-top-style: solid;
7679
- border-top-color: #f3f3f3;
7680
- -webkit-border-radius: 50%;
7681
- border-radius: 50%;
7682
- border-top: 3px solid;
7683
- border-top-color: #bbb;
7684
- width: 30px;
7685
- height: 30px;
7686
- -webkit-animation: spin 2s linear infinite;
7687
- animation: spin 2s linear infinite;
7688
- margin: 0 auto; }
7689
-
7690
- /** Common Animation */
7691
- @-webkit-keyframes spin {
7692
- 0% {
7693
- -webkit-transform: rotate(0deg);
7694
- transform: rotate(0deg); }
7695
- 100% {
7696
- -webkit-transform: rotate(360deg);
7697
- transform: rotate(360deg); } }
7698
- @keyframes spin {
7699
- 0% {
7700
- -webkit-transform: rotate(0deg);
7701
- transform: rotate(0deg); }
7702
- 100% {
7703
- -webkit-transform: rotate(360deg);
7704
- transform: rotate(360deg); } }
7705
-
7706
- /**Notice*/
7707
- .premium-error-notice {
7708
- width: 100%;
7709
- padding: 10px;
7710
- color: #b94a48;
7711
- background-color: #f2dede;
7712
- border-color: #eed3d7;
7713
- text-align: center; }
1
  @charset "UTF-8";
2
  @font-face {
3
  font-family: "pa-elements";
4
+ src: url("../../editor/fonts/pa-elements.eot?60rfh2");
5
+ src: url("../../editor/fonts/pa-elements.eot?60rfh2#iefix") format("embedded-opentype"), url("../../editor/fonts/pa-elements.ttf?60rfh2") format("truetype"), url("../../editor/fonts/pa-elements.woff?60rfh2") format("woff"), url("../../editor/fonts/pa-elements.svg?60rfh2#pa-elements") format("svg");
6
  font-weight: normal;
7
  font-style: normal;
8
  }
2460
  width: 100%;
2461
  right: 0; }
2462
 
2463
+ /**************** Premium Carousel ****************/
2464
+ /**************************************************/
2465
+ .premium-carousel-hidden {
2466
+ opacity: 0;
2467
+ visibility: hidden; }
2468
+
2469
+ .premium-carousel-wrapper a.carousel-arrow, .premium-carousel-wrapper a.ver-carousel-arrow {
2470
+ -js-display: flex;
2471
+ display: -webkit-box;
2472
+ display: -webkit-flex;
2473
+ display: -moz-box;
2474
+ display: -ms-flexbox;
2475
+ display: flex;
2476
+ -webkit-box-align: center;
2477
+ -webkit-align-items: center;
2478
+ -moz-box-align: center;
2479
+ -ms-flex-align: center;
2480
+ align-items: center;
2481
+ -webkit-box-pack: center;
2482
+ -webkit-justify-content: center;
2483
+ -moz-box-pack: center;
2484
+ -ms-flex-pack: center;
2485
+ justify-content: center;
2486
+ width: 2em;
2487
+ height: 2em;
2488
+ line-height: 0;
2489
+ text-align: center;
2490
+ position: absolute;
2491
+ z-index: 99;
2492
+ cursor: pointer;
2493
+ -webkit-transition: all 0.3s ease-in-out;
2494
+ transition: all 0.3s ease-in-out;
2495
+ -webkit-appearance: inherit;
2496
+ border: none;
2497
+ -webkit-box-shadow: none;
2498
+ box-shadow: none; }
2499
+ .premium-carousel-wrapper a.carousel-arrow svg, .premium-carousel-wrapper a.ver-carousel-arrow svg {
2500
+ -webkit-transition: all 0.3s ease-in-out;
2501
+ transition: all 0.3s ease-in-out; }
2502
+
2503
+ .ver-carousel-arrow.carousel-next i {
2504
+ margin-bottom: -3px; }
2505
+
2506
+ .premium-carousel-wrapper a.slick-arrow:hover {
2507
+ -webkit-box-shadow: none !important;
2508
+ box-shadow: none !important; }
2509
+
2510
+ .premium-carousel-wrapper .premium-carousel-content-hidden {
2511
+ visibility: hidden; }
2512
+
2513
+ .premium-carousel-wrapper a.carousel-arrow {
2514
+ top: 50%; }
2515
+
2516
+ .premium-carousel-wrapper a.ver-carousel-arrow {
2517
+ left: 50%;
2518
+ -webkit-transform: translateX(-50%);
2519
+ -ms-transform: translateX(-50%);
2520
+ transform: translateX(-50%); }
2521
+
2522
+ .premium-carousel-dots-above ul.slick-dots {
2523
+ position: absolute;
2524
+ -js-display: flex;
2525
+ display: -webkit-box;
2526
+ display: -webkit-flex;
2527
+ display: -moz-box;
2528
+ display: -ms-flexbox;
2529
+ display: flex;
2530
+ width: auto;
2531
+ top: 50%;
2532
+ bottom: auto;
2533
+ -webkit-transform: translateY(-50%);
2534
+ -ms-transform: translateY(-50%);
2535
+ transform: translateY(-50%);
2536
+ -webkit-box-orient: vertical;
2537
+ -webkit-box-direction: normal;
2538
+ -webkit-flex-direction: column;
2539
+ -moz-box-orient: vertical;
2540
+ -moz-box-direction: normal;
2541
+ -ms-flex-direction: column;
2542
+ flex-direction: column; }
2543
+
2544
  /*
2545
  * Custom Navigation Dot
2546
+ */
2547
+ .premium-carousel-wrapper .premium-carousel-nav-dot,
2548
+ .premium-carousel-wrapper .premium-carousel-nav-arrow-prev,
2549
+ .premium-carousel-wrapper .premium-carousel-nav-arrow-next {
2550
+ display: none; }
2551
+
2552
+ .premium-carousel-wrapper ul.slick-dots svg {
2553
+ width: 20px;
2554
+ height: 20px;
2555
+ outline: none !important; }
2556
+
2557
+ /* Ripple Out */
2558
+ @-webkit-keyframes hvr-ripple-out {
2559
+ 0% {
2560
+ -webkit-transform: scale(1);
2561
+ transform: scale(1);
2562
+ opacity: 1; }
2563
+ 100% {
2564
+ -webkit-transform: scale(1.5);
2565
+ transform: scale(1.5);
2566
+ opacity: 0; } }
2567
+ @keyframes hvr-ripple-out {
2568
+ 0% {
2569
+ -webkit-transform: scale(1);
2570
+ transform: scale(1);
2571
+ opacity: 1; }
2572
+ 100% {
2573
+ -webkit-transform: scale(1.5);
2574
+ transform: scale(1.5);
2575
+ opacity: 0; } }
2576
+
2577
+ .premium-carousel-ripple-yes .premium-carousel-wrapper {
2578
+ padding-bottom: 1px; }
2579
+
2580
+ .premium-carousel-ripple-yes ul.slick-dots li {
2581
+ position: relative; }
2582
+ .premium-carousel-ripple-yes ul.slick-dots li i {
2583
+ position: relative;
2584
+ z-index: 1; }
2585
+ .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
2586
+ content: "";
2587
+ position: absolute;
2588
+ -webkit-transform: scale(1);
2589
+ -ms-transform: scale(1);
2590
+ transform: scale(1);
2591
+ top: 0;
2592
+ right: 0;
2593
+ bottom: 0;
2594
+ left: 0;
2595
+ -webkit-border-radius: 50%;
2596
+ border-radius: 50%;
2597
+ pointer-events: none;
2598
+ background-color: rgba(0, 0, 0, 0.15); }
2599
+ .premium-carousel-ripple-yes ul.slick-dots li.slick-active:hover:before {
2600
+ background-color: rgba(0, 0, 0, 0.3); }
2601
+ .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
2602
+ -webkit-animation: hvr-ripple-out 1.3s infinite;
2603
+ animation: hvr-ripple-out 1.3s infinite; }
2604
+
2605
+ .premium-carousel-wrapper.premium-carousel-scale .slick-slide {
2606
+ -webkit-transform: scale(1.25, 1.25);
2607
+ -ms-transform: scale(1.25, 1.25);
2608
+ transform: scale(1.25, 1.25);
2609
+ -webkit-transition: all 0.3s ease-in-out;
2610
+ transition: all 0.3s ease-in-out; }
2611
+
2612
+ .premium-carousel-wrapper.premium-carousel-scale div.slick-active {
2613
+ -webkit-transform: scale(1, 1);
2614
+ -ms-transform: scale(1, 1);
2615
+ transform: scale(1, 1); }
2616
+
2617
+ [dir="rtl"] .premium-carousel-inner .slick-slide {
2618
+ float: right; }
2619
 
2620
  /**************** Premium Contact Form7 **********/
2621
  /*************************************************/
3846
  /**********************************************/
3847
  @font-face {
3848
  font-family: "pa-elements";
3849
+ src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?60rfh2");
3850
+ src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?60rfh2#iefix") format("embedded-opentype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.ttf?60rfh2") format("truetype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.woff?60rfh2") format("woff"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.svg?60rfh2#pa-elements") format("svg");
3851
  font-weight: normal;
3852
  font-style: normal; }
3853
 
4313
  .premium-clearfix {
4314
  clear: both; }
4315
 
4316
+ /**
4317
+ * Metro Layout
4318
  */
4319
  .premium-img-gallery-metro .premium-gallery-item {
4320
  overflow: hidden; }
4628
  width: 50px;
4629
  height: 60px; }
4630
 
4631
+ .premium-modal-box-modal-body {
4632
+ position: relative;
4633
+ padding: 15px; }
4634
+
4635
+ .premium-modal-box-modal-footer {
4636
+ padding: 15px;
4637
+ text-align: right;
4638
+ border-top: 1px solid #e5e5e5; }
4639
+
4640
+ .premium-modal-scrollbar-measure {
4641
+ position: absolute;
4642
+ top: -9999px;
4643
+ width: 50px;
4644
+ height: 50px;
4645
+ overflow: scroll; }
4646
+
4647
+ .premium-modal-trigger-text {
4648
+ background: none !important;
4649
+ display: inline-block; }
4650
+
4651
+ .premium-modal-box-container {
4652
+ width: 100% !important; }
4653
+
4654
+ /*Open Modal Button Style*/
4655
+ .premium-modal-trigger-container .premium-modal-trigger-btn {
4656
+ -js-display: inline-flex;
4657
+ display: -webkit-inline-box;
4658
+ display: -webkit-inline-flex;
4659
+ display: -moz-inline-box;
4660
+ display: -ms-inline-flexbox;
4661
+ display: inline-flex;
4662
+ -webkit-box-align: center;
4663
+ -webkit-align-items: center;
4664
+ -moz-box-align: center;
4665
+ -ms-flex-align: center;
4666
+ align-items: center;
4667
+ border: none;
4668
+ -webkit-transition: all 0.3s ease-in-out;
4669
+ transition: all 0.3s ease-in-out; }
4670
+ .premium-modal-trigger-container .premium-modal-trigger-btn.premium-btn-block {
4671
+ -webkit-box-pack: center;
4672
+ -webkit-justify-content: center;
4673
+ -moz-box-pack: center;
4674
+ -ms-flex-pack: center;
4675
+ justify-content: center; }
4676
+
4677
+ .premium-modal-trigger-container .premium-modal-trigger-img,
4678
+ .premium-modal-trigger-container .premium-modal-trigger-text,
4679
+ .premium-modal-trigger-container .premium-modal-trigger-animation {
4680
+ cursor: pointer; }
4681
+
4682
+ .premium-modal-trigger-container .premium-modal-trigger-animation {
4683
+ display: inline-block;
4684
+ width: 200px;
4685
+ height: 200px;
4686
+ -webkit-transition: all 0.3s ease-in-out;
4687
+ transition: all 0.3s ease-in-out; }
4688
+
4689
+ /*Image on Modal Header Style*/
4690
+ .premium-modal-box-modal-header img {
4691
+ width: 48px;
4692
+ padding-right: 5px; }
4693
+
4694
+ .premium-modal-box-modal-header i,
4695
+ .premium-modal-box-modal-header svg {
4696
+ padding-right: 6px; }
4697
+
4698
+ .premium-modal-box-modal-close {
4699
+ position: relative;
4700
+ z-index: 99; }
4701
+
4702
+ .premium-modal-trigger-img,
4703
+ .premium-modal-trigger-text,
4704
+ .premium-modal-box-close-button-container,
4705
+ .premium-modal-box-modal-close,
4706
+ .premium-modal-box-modal-lower-close {
4707
+ -webkit-transition: all 0.3s ease-in-out;
4708
+ transition: all 0.3s ease-in-out; }
4709
+
4710
+ @media (min-width: 768px) {
4711
+ .premium-modal-box-modal-dialog {
4712
+ width: 700px;
4713
+ max-height: 600px;
4714
+ overflow: auto; } }
4715
+
4716
+ @media (max-width: 767px) {
4717
+ .premium-modal-box-modal-dialog {
4718
+ width: 100%;
4719
+ max-height: 500px;
4720
+ overflow: auto; } }
4721
+
4722
+ .premium-modal-box-container[data-modal-animation*="animated-"] {
4723
+ opacity: 0; }
4724
+
4725
+ /************ Premium Nav Menu ************/
4726
+ .premium-nav-menu-container ul {
4727
+ list-style: none;
4728
+ margin: 0; }
4729
+
4730
+ .premium-nav-menu-container .premium-main-nav-menu {
4731
+ -js-display: flex;
4732
+ display: -webkit-box;
4733
+ display: -webkit-flex;
4734
+ display: -moz-box;
4735
+ display: -ms-flexbox;
4736
+ display: flex;
4737
+ height: 100%; }
4738
+
4739
+ /*Vertical Main Menu**/
4740
+ .premium-nav-ver .premium-nav-menu-container {
4741
+ width: 45%; }
4742
+
4743
+ .premium-nav-ver .premium-main-nav-menu {
4744
+ position: relative;
4745
+ -webkit-box-orient: vertical;
4746
+ -webkit-box-direction: normal;
4747
+ -webkit-flex-direction: column;
4748
+ -moz-box-orient: vertical;
4749
+ -moz-box-direction: normal;
4750
+ -ms-flex-direction: column;
4751
+ flex-direction: column;
4752
+ -webkit-box-align: start;
4753
+ -webkit-align-items: flex-start;
4754
+ -moz-box-align: start;
4755
+ -ms-flex-align: start;
4756
+ align-items: flex-start; }
4757
+
4758
+ .premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
4759
+ visibility: hidden;
4760
+ opacity: 0;
4761
+ position: absolute;
4762
+ min-width: 250px; }
4763
+
4764
+ .premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
4765
+ .premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children:hover .premium-mega-content-container {
4766
+ opacity: 1;
4767
+ visibility: visible; }
4768
+
4769
+ .premium-nav-ver .premium-nav-menu-item {
4770
+ width: 100%; }
4771
+
4772
+ .premium-nav-ver.premium-vertical-right .premium-mega-content-container,
4773
+ .premium-nav-ver.premium-vertical-right .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
4774
+ left: 100%;
4775
+ top: 0; }
4776
+
4777
+ .premium-nav-ver.premium-vertical-left .premium-mega-content-container,
4778
+ .premium-nav-ver.premium-vertical-left .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
4779
+ right: 100%;
4780
+ top: 0; }
4781
+
4782
+ .premium-nav-ver.premium-vertical-left .premium-menu-link {
4783
+ -webkit-box-orient: horizontal;
4784
+ -webkit-box-direction: reverse;
4785
+ -webkit-flex-direction: row-reverse;
4786
+ -moz-box-orient: horizontal;
4787
+ -moz-box-direction: reverse;
4788
+ -ms-flex-direction: row-reverse;
4789
+ flex-direction: row-reverse; }
4790
+
4791
+ /*Horizontal Main Menu**/
4792
+ .premium-nav-hor .premium-nav-menu-container {
4793
+ height: 60px; }
4794
+
4795
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-sub-menu {
4796
+ visibility: hidden;
4797
+ opacity: 0;
4798
+ position: absolute;
4799
+ min-width: 220px; }
4800
+
4801
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item > .premium-sub-menu,
4802
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-mega-content-container {
4803
+ top: 100%; }
4804
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item > .premium-sub-menu .premium-sub-menu,
4805
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-mega-content-container .premium-sub-menu {
4806
+ left: 100%;
4807
+ top: 0; }
4808
+
4809
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
4810
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover .premium-mega-content-container {
4811
+ visibility: visible;
4812
+ opacity: 1; }
4813
+
4814
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-mega-item-static .premium-mega-content-container {
4815
+ left: 50%;
4816
+ -webkit-transform: translateX(-50%);
4817
+ -ms-transform: translateX(-50%);
4818
+ transform: translateX(-50%); }
4819
+
4820
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:not(.premium-mega-item-static) .premium-mega-content-container {
4821
+ left: 0; }
4822
+
4823
+ /**Mega Menu Container*/
4824
+ .premium-mega-nav-item .premium-sub-menu {
4825
+ display: none; }
4826
+
4827
+ .premium-mega-nav-item {
4828
+ position: relative; }
4829
+ .premium-mega-nav-item:hover .premium-mega-content-container {
4830
+ visibility: visible;
4831
+ opacity: 1; }
4832
+
4833
+ .premium-mega-content-container {
4834
+ visibility: hidden;
4835
+ position: absolute;
4836
+ z-index: 9999;
4837
+ opacity: 0; }
4838
+
4839
+ .premium-hamburger-menu .premium-mega-content-container,
4840
+ .premium-nav-slide .premium-mega-content-container,
4841
+ .premium-nav-dropdown .premium-mega-content-container {
4842
+ visibility: visible;
4843
+ position: relative;
4844
+ opacity: 1; }
4845
+
4846
+ /**Hamburger Menu*/
4847
+ .premium-nav-widget-container a.premium-hamburger-toggle,
4848
+ .premium-mobile-menu-outer-container a.premium-mobile-menu-close {
4849
+ text-decoration: none; }
4850
+
4851
+ .premium-nav-widget-container .premium-hamburger-toggle {
4852
+ display: none;
4853
+ -webkit-box-pack: center;
4854
+ -webkit-justify-content: center;
4855
+ -moz-box-pack: center;
4856
+ -ms-flex-pack: center;
4857
+ justify-content: center;
4858
+ -webkit-box-align: center;
4859
+ -webkit-align-items: center;
4860
+ -moz-box-align: center;
4861
+ -ms-flex-align: center;
4862
+ align-items: center; }
4863
+ .premium-nav-widget-container .premium-hamburger-toggle i {
4864
+ padding: 0.25em;
4865
+ font-size: 22px; }
4866
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
4867
+ width: 22px;
4868
+ height: 22px; }
4869
+ .premium-nav-widget-container .premium-hamburger-toggle i,
4870
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
4871
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
4872
+ color: #494c4f; }
4873
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
4874
+ fill: #494c4f; }
4875
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
4876
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
4877
+ margin: 2px; }
4878
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
4879
+ display: none; }
4880
+
4881
+ .premium-mobile-menu-container {
4882
+ width: 100%; }
4883
+ .premium-mobile-menu-container .premium-main-mobile-menu {
4884
+ width: 100%; }
4885
+ .premium-mobile-menu-container ul {
4886
+ list-style: none;
4887
+ margin: 0; }
4888
+ .premium-mobile-menu-container .premium-mobile-menu,
4889
+ .premium-mobile-menu-container .premium-sub-menu {
4890
+ display: none;
4891
+ -webkit-box-orient: vertical;
4892
+ -webkit-box-direction: normal;
4893
+ -webkit-flex-direction: column;
4894
+ -moz-box-orient: vertical;
4895
+ -moz-box-direction: normal;
4896
+ -ms-flex-direction: column;
4897
+ flex-direction: column; }
4898
+ .premium-mobile-menu-container .premium-nav-menu-item {
4899
+ -webkit-box-orient: vertical;
4900
+ -webkit-box-direction: normal;
4901
+ -webkit-flex-direction: column;
4902
+ -moz-box-orient: vertical;
4903
+ -moz-box-direction: normal;
4904
+ -ms-flex-direction: column;
4905
+ flex-direction: column; }
4906
+ .premium-mobile-menu-container .premium-item-badge {
4907
+ top: 50%;
4908
+ right: 0;
4909
+ left: unset;
4910
+ -webkit-transform: translateY(-50%);
4911
+ -ms-transform: translateY(-50%);
4912
+ transform: translateY(-50%); }
4913
+
4914
+ /**Vertical Hamburger Menu*/
4915
+ .premium-mobile-menu-outer-container {
4916
+ opacity: 0; }
4917
+ .premium-mobile-menu-outer-container.premium-vertical-toggle-open {
4918
+ opacity: 1; }
4919
+
4920
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container {
4921
+ background-color: #f7f7f7;
4922
+ width: 300px;
4923
+ -webkit-transform: translateX(-300px);
4924
+ -ms-transform: translateX(-300px);
4925
+ transform: translateX(-300px);
4926
+ height: 100%;
4927
+ position: fixed;
4928
+ top: 0;
4929
+ left: 0;
4930
+ overflow-x: hidden;
4931
+ z-index: 10000;
4932
+ -webkit-transition: 0.5s;
4933
+ transition: 0.5s;
4934
+ padding-top: 50px; }
4935
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu {
4936
+ -js-display: flex;
4937
+ display: -webkit-box;
4938
+ display: -webkit-flex;
4939
+ display: -moz-box;
4940
+ display: -ms-flexbox;
4941
+ display: flex; }
4942
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-container {
4943
+ margin-top: 50px; }
4944
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-container .premium-item-badge {
4945
+ -webkit-transform: translateY(0);
4946
+ -ms-transform: translateY(0);
4947
+ transform: translateY(0); }
4948
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close {
4949
+ position: absolute;
4950
+ top: 9%;
4951
+ right: 15px;
4952
+ padding: 0 9px;
4953
+ z-index: 10000;
4954
+ -js-display: inline-flex;
4955
+ display: -webkit-inline-box;
4956
+ display: -webkit-inline-flex;
4957
+ display: -moz-inline-box;
4958
+ display: -ms-inline-flexbox;
4959
+ display: inline-flex;
4960
+ color: #494c4f;
4961
+ -webkit-box-pack: center;
4962
+ -webkit-justify-content: center;
4963
+ -moz-box-pack: center;
4964
+ -ms-flex-pack: center;
4965
+ justify-content: center;
4966
+ -webkit-box-align: center;
4967
+ -webkit-align-items: center;
4968
+ -moz-box-align: center;
4969
+ -ms-flex-align: center;
4970
+ align-items: center; }
4971
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close .premium-toggle-close {
4972
+ margin: 5px; }
4973
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close svg {
4974
+ width: 22px;
4975
+ height: 22px;
4976
+ fill: #494c4f; }
4977
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close i {
4978
+ font-size: 22px; }
4979
+
4980
+ .premium-ver-hamburger-menu .premium-vertical-toggle-open {
4981
+ -webkit-transform: translateX(0) !important;
4982
+ -ms-transform: translateX(0) !important;
4983
+ transform: translateX(0) !important;
4984
+ -webkit-transition: 0.5s;
4985
+ transition: 0.5s; }
4986
+
4987
+ /**Common*/
4988
+ .premium-nav-slide-overlay {
4989
+ display: none;
4990
+ position: fixed;
4991
+ top: 0;
4992
+ left: 0;
4993
+ right: 0;
4994
+ bottom: 0;
4995
+ -webkit-backface-visibility: hidden;
4996
+ backface-visibility: hidden;
4997
+ background: rgba(0, 0, 0, 0.6);
4998
+ z-index: 9999; }
4999
+ .premium-nav-slide-overlay.premium-vertical-toggle-open {
5000
+ display: block; }
5001
+
5002
+ .premium-active-menu,
5003
+ .premium-active-menu:not(.premium-mega-nav-item) > .premium-sub-menu,
5004
+ .premium-active-menu.premium-mega-nav-item > .premium-mega-content-container {
5005
+ -js-display: flex !important;
5006
+ display: -webkit-box !important;
5007
+ display: -webkit-flex !important;
5008
+ display: -moz-box !important;
5009
+ display: -ms-flexbox !important;
5010
+ display: flex !important;
5011
+ -webkit-box-orient: vertical;
5012
+ -webkit-box-direction: normal;
5013
+ -webkit-flex-direction: column;
5014
+ -moz-box-orient: vertical;
5015
+ -moz-box-direction: normal;
5016
+ -ms-flex-direction: column;
5017
+ flex-direction: column; }
5018
+
5019
+ .premium-active-menu .premium-toggle-close {
5020
+ display: block; }
5021
+
5022
+ .premium-nav-menu-container .premium-sub-menu {
5023
+ background-color: #fff; }
5024
+
5025
+ .premium-mobile-menu-container li,
5026
+ .premium-mobile-menu-container li > .premium-mega-content-container {
5027
+ width: 100% !important; }
5028
+
5029
+ .premium-item-icon,
5030
+ .premium-sub-item-icon {
5031
+ font-size: 13px;
5032
+ margin: 0 7px; }
5033
+ .premium-item-icon svg,
5034
+ .premium-sub-item-icon svg {
5035
+ width: 100%;
5036
+ height: 100%; }
5037
+ .premium-item-icon.premium-lottie-animation,
5038
+ .premium-sub-item-icon.premium-lottie-animation {
5039
+ width: 20px;
5040
+ height: 20px;
5041
+ -js-display: flex;
5042
+ display: -webkit-box;
5043
+ display: -webkit-flex;
5044
+ display: -moz-box;
5045
+ display: -ms-flexbox;
5046
+ display: flex;
5047
+ -webkit-box-pack: center;
5048
+ -webkit-justify-content: center;
5049
+ -moz-box-pack: center;
5050
+ -ms-flex-pack: center;
5051
+ justify-content: center; }
5052
+ .premium-item-icon.dashicons,
5053
+ .premium-sub-item-icon.dashicons {
5054
+ width: 13px;
5055
+ height: 13px; }
5056
+
5057
+ .premium-nav-menu-item {
5058
+ position: relative; }
5059
+ .premium-nav-menu-item .premium-menu-link {
5060
+ -js-display: flex;
5061
+ display: -webkit-box;
5062
+ display: -webkit-flex;
5063
+ display: -moz-box;
5064
+ display: -ms-flexbox;
5065
+ display: flex;
5066
+ -webkit-box-align: center;
5067
+ -webkit-align-items: center;
5068
+ -moz-box-align: center;
5069
+ -ms-flex-align: center;
5070
+ align-items: center;
5071
+ height: 100%;
5072
+ padding: 7px 10px;
5073
+ text-decoration: none;
5074
+ position: relative; }
5075
+ .premium-nav-menu-item .premium-dropdown-icon {
5076
+ margin: 5px; }
5077
+ .premium-nav-menu-item.menu-item-has-children {
5078
+ position: relative; }
5079
+ .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
5080
+ z-index: 9999; }
5081
+ .premium-nav-menu-item.menu-item-has-children .premium-sub-menu .premium-sub-menu-link {
5082
+ -webkit-box-pack: start;
5083
+ -webkit-justify-content: flex-start;
5084
+ -moz-box-pack: start;
5085
+ -ms-flex-pack: start;
5086
+ justify-content: flex-start; }
5087
+ .premium-nav-menu-item .menu-link {
5088
+ position: relative;
5089
+ text-decoration: none; }
5090
+
5091
+ .premium-item-badge,
5092
+ .premium-sub-item-badge {
5093
+ position: absolute;
5094
+ padding: 1px 6px;
5095
+ min-width: 35px;
5096
+ text-align: center;
5097
+ font-size: 10px;
5098
+ -webkit-border-radius: 4px;
5099
+ border-radius: 4px;
5100
+ line-height: 1.8;
5101
+ white-space: nowrap; }
5102
+
5103
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-item-badge, .premium-nav-hor:not(.premium-nav-slide) .premium-item-badge, .premium-nav-hor:not(.premium-nav-dropdown) .premium-item-badge {
5104
+ position: relative;
5105
+ margin: 8px; }
5106
+
5107
+ .premium-nav-hor .premium-sub-item-badge,
5108
+ .premium-nav-slide .premium-sub-item-badge,
5109
+ .premium-nav-dropdown .premium-sub-item-badge,
5110
+ .premium-nav-ver.premium-vertical-right .premium-item-badge,
5111
+ .premium-nav-ver.premium-vertical-right .premium-sub-item-badge {
5112
+ top: 50%;
5113
+ right: 0;
5114
+ -webkit-transform: translateY(-50%);
5115
+ -ms-transform: translateY(-50%);
5116
+ transform: translateY(-50%); }
5117
+
5118
+ .premium-nav-ver.premium-vertical-left .premium-item-badge,
5119
+ .premium-nav-ver.premium-vertical-left .premium-sub-item-badge {
5120
+ top: 50%;
5121
+ left: 0;
5122
+ -webkit-transform: translateY(-50%);
5123
+ -ms-transform: translateY(-50%);
5124
+ transform: translateY(-50%); }
5125
+
5126
+ .premium-mega-nav-item .premium-sub-menu {
5127
+ display: none; }
5128
+
5129
+ .premium-mega-nav-item {
5130
+ position: relative; }
5131
+
5132
+ .premium-hamburger-menu .premium-mega-content-container,
5133
+ .premium-nav-dropdown .premium-mega-content-container,
5134
+ .premium-nav-slide .premium-mega-content-container {
5135
+ display: none; }
5136
+
5137
+ .premium-mega-item-static {
5138
+ position: static !important; }
5139
+
5140
+ .premium-hamburger-menu .premium-nav-menu-container,
5141
+ .premium-nav-dropdown .premium-nav-menu-container,
5142
+ .premium-nav-slide .premium-nav-menu-container {
5143
+ display: none; }
5144
+
5145
+ .premium-hamburger-menu .premium-hamburger-toggle,
5146
+ .premium-nav-dropdown .premium-hamburger-toggle,
5147
+ .premium-nav-slide .premium-hamburger-toggle {
5148
+ -js-display: inline-flex;
5149
+ display: -webkit-inline-box;
5150
+ display: -webkit-inline-flex;
5151
+ display: -moz-inline-box;
5152
+ display: -ms-inline-flexbox;
5153
+ display: inline-flex; }
5154
+
5155
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-item-icon,
5156
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-sub-item-icon,
5157
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-item-icon,
5158
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-sub-item-icon,
5159
+ .premium-hidden-icon-yes.premium-nav-slide .premium-item-icon,
5160
+ .premium-hidden-icon-yes.premium-nav-slide .premium-sub-item-icon {
5161
+ display: none; }
5162
+
5163
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-item-badge,
5164
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-sub-item-badge,
5165
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-item-badge,
5166
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-sub-item-badge,
5167
+ .premium-hidden-badge-yes.premium-nav-slide .premium-item-badge,
5168
+ .premium-hidden-badge-yes.premium-nav-slide .premium-sub-item-badge {
5169
+ display: none; }
5170
+
5171
+ .premium-ham-dropdown .premium-mobile-menu-container,
5172
+ .premium-nav-dropdown .premium-mobile-menu-container {
5173
+ -js-display: flex;
5174
+ display: -webkit-box;
5175
+ display: -webkit-flex;
5176
+ display: -moz-box;
5177
+ display: -ms-flexbox;
5178
+ display: flex; }
5179
+
5180
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-close,
5181
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-close {
5182
+ display: inline !important; }
5183
+
5184
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-text,
5185
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-text {
5186
+ display: none !important; }
5187
+
5188
+ /*
5189
+ * Pointer & Pointer Animations
5190
+ */
5191
+ .premium-menu-link-parent::before, .premium-menu-link-parent::after {
5192
+ display: block;
5193
+ position: absolute;
5194
+ -webkit-transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1);
5195
+ transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1); }
5196
+
5197
+ .premium-nav-pointer-underline .premium-menu-link-parent::after,
5198
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
5199
+ content: "";
5200
+ bottom: 0; }
5201
+
5202
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
5203
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before {
5204
+ content: "";
5205
+ top: 0; }
5206
+
5207
+ .premium-nav-pointer-underline .premium-menu-link-parent::before, .premium-nav-pointer-underline .premium-menu-link-parent::after,
5208
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
5209
+ .premium-nav-pointer-overline .premium-menu-link-parent::after,
5210
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before,
5211
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
5212
+ height: 3px;
5213
+ width: 100%;
5214
+ left: 0;
5215
+ background-color: #55595c;
5216
+ z-index: 2; }
5217
+
5218
+ .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before, .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
5219
+ opacity: 0; }
5220
+
5221
+ .premium-nav-pointer-underline.premium-nav-animation-none,
5222
+ .premium-nav-pointer-overline.premium-nav-animation-none,
5223
+ .premium-nav-pointer-double-line.premium-nav-animation-none {
5224
+ -webkit-transition-duration: 0s;
5225
+ transition-duration: 0s; }
5226
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent,
5227
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent::before,
5228
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent::after,
5229
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent:focus,
5230
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent:hover,
5231
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent,
5232
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent::before,
5233
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent::after,
5234
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent:focus,
5235
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent:hover,
5236
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent,
5237
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent::before,
5238
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent::after,
5239
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent:focus,
5240
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent:hover {
5241
+ -webkit-transition-duration: 0s;
5242
+ transition-duration: 0s; }
5243
+
5244
+ .premium-nav-pointer-underline.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5245
+ .premium-nav-pointer-double-line.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
5246
+ width: 10px;
5247
+ inset-inline-start: 100%; }
5248
+
5249
+ .premium-nav-pointer-overline.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5250
+ .premium-nav-pointer-double-line.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5251
+ width: 10px;
5252
+ left: -20px; }
5253
+
5254
+ .premium-nav-pointer-underline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before, .premium-nav-pointer-underline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5255
+ .premium-nav-pointer-overline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5256
+ .premium-nav-pointer-overline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5257
+ .premium-nav-pointer-double-line.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5258
+ .premium-nav-pointer-double-line.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
5259
+ height: 0;
5260
+ width: 0;
5261
+ left: 50%; }
5262
+
5263
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5264
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5265
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5266
+ top: -10px; }
5267
+
5268
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5269
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5270
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
5271
+ bottom: -10px; }
5272
+
5273
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5274
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
5275
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5276
+ top: 10px; }
5277
+
5278
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5279
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
5280
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
5281
+ bottom: 10px; }
5282
+
5283
+ .premium-nav-pointer-framed .premium-menu-link-parent::before {
5284
+ content: ""; }
5285
+
5286
+ .premium-nav-pointer-framed .premium-menu-link-parent::before, .premium-nav-pointer-framed .premium-menu-link-parent::after {
5287
+ background: transparent;
5288
+ left: 0;
5289
+ top: 0;
5290
+ bottom: 0;
5291
+ right: 0;
5292
+ border: 3px solid #55595c; }
5293
+
5294
+ .premium-nav-pointer-framed.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5295
+ -webkit-transform: scale(0.75);
5296
+ -ms-transform: scale(0.75);
5297
+ transform: scale(0.75); }
5298
+
5299
+ .premium-nav-pointer-framed.premium-nav-animation-shrink .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5300
+ -webkit-transform: scale(1.25);
5301
+ -ms-transform: scale(1.25);
5302
+ transform: scale(1.25); }
5303
+
5304
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::after {
5305
+ width: 3px;
5306
+ height: 3px; }
5307
+
5308
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::before {
5309
+ border-width: 0 0 3px 3px;
5310
+ -webkit-transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s;
5311
+ transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s; }
5312
+
5313
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::after {
5314
+ content: "";
5315
+ top: auto;
5316
+ bottom: 0;
5317
+ left: auto;
5318
+ right: 0;
5319
+ border-width: 3px 3px 0 0;
5320
+ -webkit-transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s;
5321
+ transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s; }
5322
+
5323
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::before {
5324
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
5325
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s; }
5326
+
5327
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::after, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::after {
5328
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
5329
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s; }
5330
+
5331
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::after, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::after {
5332
+ width: 100%;
5333
+ height: 100%; }
5334
+
5335
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::before {
5336
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
5337
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s; }
5338
+
5339
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::after {
5340
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
5341
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s; }
5342
+
5343
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::after {
5344
+ width: 100%;
5345
+ height: 100%; }
5346
+
5347
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::before {
5348
+ border-width: 3px 0 0 3px; }
5349
+
5350
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::after {
5351
+ content: "";
5352
+ top: auto;
5353
+ bottom: 0;
5354
+ left: auto;
5355
+ right: 0;
5356
+ border-width: 0 3px 3px 0; }
5357
+
5358
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::after {
5359
+ width: 3px;
5360
+ height: 3px; }
5361
+
5362
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:hover::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:hover::after, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:focus::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:focus::after {
5363
+ width: 100%;
5364
+ height: 100%;
5365
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
5366
+ transition: opacity 2ms, width 0.4s, height 0.4s; }
5367
+
5368
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-active-item .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-active-item .premium-menu-link-parent::after {
5369
+ width: 100%;
5370
+ height: 100%;
5371
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
5372
+ transition: opacity 2ms, width 0.4s, height 0.4s; }
5373
+
5374
+ .premium-nav-pointer-text.premium-nav-animation-grow .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-grow .premium-menu-link-parent:focus {
5375
+ -webkit-transform: scale(1.2);
5376
+ -ms-transform: scale(1.2);
5377
+ transform: scale(1.2); }
5378
+
5379
+ .premium-nav-pointer-text.premium-nav-animation-shrink .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-shrink .premium-menu-link-parent:focus {
5380
+ -webkit-transform: scale(0.8);
5381
+ -ms-transform: scale(0.8);
5382
+ transform: scale(0.8); }
5383
+
5384
+ .premium-nav-pointer-text.premium-nav-animation-sink .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-sink .premium-menu-link-parent:focus {
5385
+ -webkit-transform: translateY(8px);
5386
+ -ms-transform: translateY(8px);
5387
+ transform: translateY(8px); }
5388
+
5389
+ .premium-nav-pointer-text.premium-nav-animation-float .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-float .premium-menu-link-parent:focus {
5390
+ -webkit-transform: translateY(-8px);
5391
+ -ms-transform: translateY(-8px);
5392
+ transform: translateY(-8px); }
5393
+
5394
+ .premium-nav-pointer-text.premium-nav-animation-skew .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-skew .premium-menu-link-parent:focus {
5395
+ -webkit-transform: skew(-8deg);
5396
+ -ms-transform: skew(-8deg);
5397
+ transform: skew(-8deg); }
5398
+
5399
+ .premium-nav-pointer-text.premium-nav-animation-rotate .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-rotate .premium-menu-link-parent:focus {
5400
+ -webkit-transform: rotate(6deg);
5401
+ -ms-transform: rotate(6deg);
5402
+ transform: rotate(6deg); }
5403
+
5404
+ .premium-nav-pointer-background .premium-menu-link-parent::before {
5405
+ top: 0;
5406
+ left: 0;
5407
+ right: 0;
5408
+ bottom: 0;
5409
+ background: #55595c;
5410
+ background-color: #55595c;
5411
+ z-index: -1; }
5412
+
5413
+ .premium-nav-pointer-background .premium-menu-link-parent::before, .premium-nav-pointer-background .premium-menu-link-parent::after {
5414
+ content: "";
5415
+ -webkit-transition: 0.3s;
5416
+ transition: 0.3s; }
5417
+
5418
+ .premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent::before {
5419
+ -webkit-transform: scale(0.5);
5420
+ -ms-transform: scale(0.5);
5421
+ transform: scale(0.5); }
5422
+
5423
+ .premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent:hover::before, .premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent:focus::before {
5424
+ -webkit-transform: scale(1);
5425
+ -ms-transform: scale(1);
5426
+ transform: scale(1); }
5427
+
5428
+ .premium-nav-pointer-background.premium-nav-animation-grow .premium-active-item .premium-menu-link-parent::before {
5429
+ -webkit-transform: scale(1);
5430
+ -ms-transform: scale(1);
5431
+ transform: scale(1); }
5432
+
5433
+ .premium-nav-pointer-background.premium-nav-animation-shrink .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5434
+ -webkit-transform: scale(1.2);
5435
+ -ms-transform: scale(1.2);
5436
+ transform: scale(1.2);
5437
+ -webkit-transition: 0.3;
5438
+ transition: 0.3; }
5439
 
5440
+ .premium-nav-pointer-background.premium-nav-animation-sweep-left .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5441
+ left: 100%; }
 
 
5442
 
5443
+ .premium-nav-pointer-background.premium-nav-animation-sweep-right .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5444
+ right: 100%; }
 
 
 
 
5445
 
5446
+ .premium-nav-pointer-background.premium-nav-animation-sweep-up .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5447
+ top: 100%; }
 
5448
 
5449
+ .premium-nav-pointer-background.premium-nav-animation-sweep-down .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5450
+ bottom: 100%; }
5451
 
5452
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::after, .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::after {
5453
+ top: 0;
5454
+ left: 0;
5455
+ right: 0;
5456
+ bottom: 0;
5457
+ background: #55595c;
5458
+ background-color: #55595c;
5459
+ z-index: -1; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
5460
 
5461
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::before {
5462
+ top: 0;
5463
+ bottom: 100%; }
 
5464
 
5465
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::after {
5466
+ top: 100%;
5467
+ bottom: 0; }
 
 
 
5468
 
5469
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:hover::before, .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:focus::before {
5470
+ bottom: 50%; }
 
 
5471
 
5472
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:hover::after, .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:focus::after {
5473
+ top: 50%; }
 
5474
 
5475
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-active-item .premium-menu-link-parent::before {
5476
+ bottom: 50%; }
 
5477
 
5478
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-active-item .premium-menu-link-parent::after {
5479
+ top: 50%; }
 
 
 
 
 
5480
 
5481
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-vertical .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5482
+ bottom: 50%;
5483
+ top: 50%; }
 
 
5484
 
5485
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::before {
5486
+ right: 0;
5487
+ left: 100%; }
 
 
5488
 
5489
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::after {
5490
+ right: 100%;
5491
+ left: 0; }
5492
+
5493
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:hover::before, .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:focus::before {
5494
+ left: 50%; }
5495
+
5496
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:hover::after, .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:focus::after {
5497
+ right: 50%; }
5498
+
5499
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-active-item .premium-menu-link-parent::before {
5500
+ left: 50%; }
5501
+
5502
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-active-item .premium-menu-link-parent::after {
5503
+ right: 50%; }
5504
+
5505
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-horizontal .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
5506
+ left: 50%;
5507
+ right: 50%; }
5508
+
5509
+ .premium-active-item::before, .premium-active-item::after,
5510
+ .premium-menu-link-parent:hover::before,
5511
+ .premium-menu-link-parent:hover::after,
5512
+ .premium-menu-link-parent:focus::before,
5513
+ .premium-menu-link-parent:focus::after {
5514
+ -webkit-transform: scale(1);
5515
+ -ms-transform: scale(1);
5516
+ transform: scale(1); }
5517
+
5518
+ /**Sub Menu Animation*/
5519
+ .premium-nav-menu-item .premium-sub-menu,
5520
+ .premium-nav-menu-item .premium-mega-content-container {
5521
+ -webkit-transition: 0.2s all ease-in-out;
5522
+ transition: 0.2s all ease-in-out; }
5523
+
5524
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
5525
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
5526
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu,
5527
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
5528
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
5529
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu {
5530
+ -webkit-transform: translate(0);
5531
+ -ms-transform: translate(0);
5532
+ transform: translate(0); }
5533
+
5534
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
5535
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
5536
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
5537
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
5538
+ -webkit-transform: translateY(20%);
5539
+ -ms-transform: translateY(20%);
5540
+ transform: translateY(20%); }
5541
+
5542
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
5543
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
5544
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
5545
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
5546
+ -webkit-transform: translateY(-20%);
5547
+ -ms-transform: translateY(-20%);
5548
+ transform: translateY(-20%); }
5549
+
5550
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
5551
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
5552
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
5553
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
5554
+ -webkit-transform: translateX(-20%);
5555
+ -ms-transform: translateX(-20%);
5556
+ transform: translateX(-20%); }
5557
+
5558
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
5559
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
5560
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
5561
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
5562
+ -webkit-transform: translateX(20%);
5563
+ -ms-transform: translateX(20%);
5564
+ transform: translateX(20%); }
5565
+
5566
+ /**Horizontal - Static Mega Content*/
5567
+ /*UP*/
5568
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
5569
+ -webkit-transform: translateX(-50%) translateY(10%);
5570
+ -ms-transform: translateX(-50%) translateY(10%);
5571
+ transform: translateX(-50%) translateY(10%); }
5572
+
5573
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
5574
+ -webkit-transform: translateX(-50%) translateY(0);
5575
+ -ms-transform: translateX(-50%) translateY(0);
5576
+ transform: translateX(-50%) translateY(0); }
5577
+
5578
+ /*DOWN*/
5579
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
5580
+ -webkit-transform: translateX(-50%) translateY(-10%);
5581
+ -ms-transform: translateX(-50%) translateY(-10%);
5582
+ transform: translateX(-50%) translateY(-10%); }
5583
+
5584
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
5585
+ -webkit-transform: translateX(-50%) translateY(0);
5586
+ -ms-transform: translateX(-50%) translateY(0);
5587
+ transform: translateX(-50%) translateY(0); }
5588
+
5589
+ /*Left*/
5590
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
5591
+ -webkit-transform: translateX(-40%);
5592
+ -ms-transform: translateX(-40%);
5593
+ transform: translateX(-40%); }
5594
+
5595
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
5596
+ -webkit-transform: translateX(-50%);
5597
+ -ms-transform: translateX(-50%);
5598
+ transform: translateX(-50%); }
5599
+
5600
+ /*Right*/
5601
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
5602
+ -webkit-transform: translateX(-60%);
5603
+ -ms-transform: translateX(-60%);
5604
+ transform: translateX(-60%); }
5605
+
5606
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
5607
+ -webkit-transform: translateX(-50%);
5608
+ -ms-transform: translateX(-50%);
5609
+ transform: translateX(-50%); }
5610
+
5611
+ /**Vertical - Static Mega Content*/
5612
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container,
5613
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
5614
+ -webkit-transform: translateY(0);
5615
+ -ms-transform: translateY(0);
5616
+ transform: translateY(0); }
5617
+
5618
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container,
5619
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
5620
+ -webkit-transform: translateX(0);
5621
+ -ms-transform: translateX(0);
5622
+ transform: translateX(0); }
5623
 
5624
  /************ Premium Team Members ************/
5625
  /**********************************************/
8355
 
8356
  /*
8357
  * Common Title/Dual Heading
8358
+ */
8359
+ .premium-title-bg-text:before {
8360
+ position: absolute;
8361
+ content: attr(data-background);
8362
+ top: 0;
8363
+ left: 0;
8364
+ text-align: left; }
8365
+
8366
+ .premium-bg-text-yes .elementor-widget-container:before {
8367
+ position: absolute;
8368
+ top: 0;
8369
+ left: 0;
8370
+ text-align: left; }
8371
+
8372
+ .premium-mask-yes .premium-dual-header-first-clip .premium-dual-header-first-span .premium-mask-span,
8373
+ .premium-mask-yes .premium-dual-header-second-clip .premium-mask-span {
8374
+ background: inherit; }
8375
+
8376
+ .premium-mask-yes .premium-mask-span {
8377
+ position: relative;
8378
+ overflow: hidden;
8379
+ -js-display: inline-flex !important;
8380
+ display: -webkit-inline-box !important;
8381
+ display: -webkit-inline-flex !important;
8382
+ display: -moz-inline-box !important;
8383
+ display: -ms-inline-flexbox !important;
8384
+ display: inline-flex !important; }
8385
+ .premium-mask-yes .premium-mask-span::after {
8386
+ content: "";
8387
+ position: absolute;
8388
+ top: 0;
8389
+ right: 0px;
8390
+ width: 100%;
8391
+ height: 100%;
8392
+ background-color: currentColor;
8393
+ -webkit-backface-visibility: visible;
8394
+ backface-visibility: visible; }
8395
+
8396
+ .premium-mask-active.premium-mask-tr .premium-mask-span::after {
8397
+ -webkit-animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8398
+ animation: pa-mask-tr 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8399
+ -webkit-transform: translateX(-103%);
8400
+ -ms-transform: translateX(-103%);
8401
+ transform: translateX(-103%); }
8402
+
8403
+ .premium-mask-active.premium-mask-tl .premium-mask-span::after {
8404
+ -webkit-animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8405
+ animation: pa-mask-tl 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8406
+ -webkit-transform: translateX(103%);
8407
+ -ms-transform: translateX(103%);
8408
+ transform: translateX(103%); }
8409
+
8410
+ .premium-mask-active.premium-mask-tb .premium-mask-span::after {
8411
+ -webkit-animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8412
+ animation: pa-mask-tb 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8413
+ -webkit-transform: translateY(-103%);
8414
+ -ms-transform: translateY(-103%);
8415
+ transform: translateY(-103%); }
8416
+
8417
+ .premium-mask-active.premium-mask-tt .premium-mask-span::after {
8418
+ -webkit-animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8419
+ animation: pa-mask-tt 1.7s cubic-bezier(1, 0, 0.18, 1) forwards;
8420
+ -webkit-transform: translateY(103%);
8421
+ -ms-transform: translateY(103%);
8422
+ transform: translateY(103%); }
8423
+
8424
+ @-webkit-keyframes pa-mask-tr {
8425
+ 0% {
8426
+ -webkit-transform: translateX(0%);
8427
+ transform: translateX(0%); }
8428
+ 100% {
8429
+ -webkit-transform: translateX(103%);
8430
+ transform: translateX(103%); } }
8431
+
8432
+ @keyframes pa-mask-tr {
8433
+ 0% {
8434
+ -webkit-transform: translateX(0%);
8435
+ transform: translateX(0%); }
8436
+ 100% {
8437
+ -webkit-transform: translateX(103%);
8438
+ transform: translateX(103%); } }
8439
+
8440
+ @-webkit-keyframes pa-mask-tl {
8441
+ 0% {
8442
+ -webkit-transform: translateX(0%);
8443
+ transform: translateX(0%); }
8444
+ 100% {
8445
+ -webkit-transform: translateX(-103%);
8446
+ transform: translateX(-103%); } }
8447
+
8448
+ @keyframes pa-mask-tl {
8449
+ 0% {
8450
+ -webkit-transform: translateX(0%);
8451
+ transform: translateX(0%); }
8452
+ 100% {
8453
+ -webkit-transform: translateX(-103%);
8454
+ transform: translateX(-103%); } }
8455
+
8456
+ @-webkit-keyframes pa-mask-tb {
8457
+ 0% {
8458
+ -webkit-transform: translateY(0%);
8459
+ transform: translateY(0%); }
8460
+ 100% {
8461
+ -webkit-transform: translateY(103%);
8462
+ transform: translateY(103%); } }
8463
+
8464
+ @keyframes pa-mask-tb {
8465
+ 0% {
8466
+ -webkit-transform: translateY(0%);
8467
+ transform: translateY(0%); }
8468
+ 100% {
8469
+ -webkit-transform: translateY(103%);
8470
+ transform: translateY(103%); } }
8471
+
8472
+ @-webkit-keyframes pa-mask-tt {
8473
+ 0% {
8474
+ -webkit-transform: translateY(0%);
8475
+ transform: translateY(0%); }
8476
+ 100% {
8477
+ -webkit-transform: translateY(-103%);
8478
+ transform: translateY(-103%); } }
8479
+
8480
+ @keyframes pa-mask-tt {
8481
+ 0% {
8482
+ -webkit-transform: translateY(0%);
8483
+ transform: translateY(0%); }
8484
+ 100% {
8485
+ -webkit-transform: translateY(-103%);
8486
+ transform: translateY(-103%); } }
8487
+
8488
  /*
8489
  * Common Buttons Style.
8490
+ */
8491
+ .premium-button .premium-lottie-animation,
8492
+ .premium-image-button .premium-lottie-animation {
8493
+ -js-display: flex;
8494
+ display: -webkit-box;
8495
+ display: -webkit-flex;
8496
+ display: -moz-box;
8497
+ display: -ms-flexbox;
8498
+ display: flex; }
8499
+
8500
+ .premium-button svg,
8501
+ .premium-image-button svg {
8502
+ width: 30px;
8503
+ height: 30px; }
8504
+
8505
+ .premium-btn-sm,
8506
+ .premium-btn-md,
8507
+ .premium-btn-lg,
8508
+ .premium-btn-block {
8509
+ background-color: #eee;
8510
+ color: #042551;
8511
+ margin: 0px;
8512
+ text-decoration: none; }
8513
+ .premium-btn-sm:hover,
8514
+ .premium-btn-md:hover,
8515
+ .premium-btn-lg:hover,
8516
+ .premium-btn-block:hover {
8517
+ background-color: #54595f;
8518
+ color: #eee; }
8519
+
8520
+ .premium-btn-sm {
8521
+ padding: 12px 24px;
8522
+ font-size: 14px;
8523
+ line-height: 1; }
8524
+
8525
+ .premium-btn-md {
8526
+ padding: 14px 26px;
8527
+ font-size: 16px;
8528
+ line-height: 1.2; }
8529
+
8530
+ .premium-btn-lg {
8531
+ padding: 16px 28px;
8532
+ font-size: 18px;
8533
+ line-height: 1.3333; }
8534
+
8535
+ .premium-btn-block {
8536
+ font-size: 18px;
8537
+ line-height: 1;
8538
+ padding: 20px 0px;
8539
+ width: 100%;
8540
+ text-align: center; }
8541
+
8542
+ .premium-button-text {
8543
+ display: inline-block;
8544
+ width: 100%; }
8545
+
8546
  /*
8547
  * Common Button/Image Button Mouse Detect Effect.
8548
+ */
8549
+ .premium-mouse-detect-yes .premium-button-style6 .premium-button-style6-bg {
8550
+ position: absolute;
8551
+ z-index: 0;
8552
+ top: 0;
8553
+ left: 0;
8554
+ width: 0px;
8555
+ height: 0px;
8556
+ -webkit-border-radius: 50%;
8557
+ border-radius: 50%;
8558
+ display: block;
8559
+ -webkit-transform: translate(-50%, -50%);
8560
+ -ms-transform: translate(-50%, -50%);
8561
+ transform: translate(-50%, -50%);
8562
+ -webkit-transition: width 0.4s ease-in-out, height 0.4s ease-in-out;
8563
+ transition: width 0.4s ease-in-out, height 0.4s ease-in-out; }
8564
+
8565
+ .premium-mouse-detect-yes .premium-button-style6:hover .premium-button-style6-bg {
8566
+ width: 225%;
8567
+ height: 560px; }
8568
+
8569
+ .premium-mouse-detect-yes .premium-button-style6:before {
8570
+ width: 0;
8571
+ height: 0; }
8572
+
8573
+ /** Loader */
8574
+ .premium-loader {
8575
+ border: 3px solid #f3f3f3;
8576
+ border-top-width: 3px;
8577
+ border-top-style: solid;
8578
+ border-top-color: #f3f3f3;
8579
+ -webkit-border-radius: 50%;
8580
+ border-radius: 50%;
8581
+ border-top: 3px solid;
8582
+ border-top-color: #bbb;
8583
+ width: 30px;
8584
+ height: 30px;
8585
+ -webkit-animation: spin 2s linear infinite;
8586
+ animation: spin 2s linear infinite;
8587
+ margin: 0 auto; }
8588
+
8589
+ /** Common Animation */
8590
+ @-webkit-keyframes spin {
8591
+ 0% {
8592
+ -webkit-transform: rotate(0deg);
8593
+ transform: rotate(0deg); }
8594
+ 100% {
8595
+ -webkit-transform: rotate(360deg);
8596
+ transform: rotate(360deg); } }
8597
+ @keyframes spin {
8598
+ 0% {
8599
+ -webkit-transform: rotate(0deg);
8600
+ transform: rotate(0deg); }
8601
+ 100% {
8602
+ -webkit-transform: rotate(360deg);
8603
+ transform: rotate(360deg); } }
8604
+
8605
+ /**Notice*/
8606
+ .premium-error-notice {
8607
+ width: 100%;
8608
+ padding: 10px;
8609
+ color: #b94a48;
8610
+ background-color: #f2dede;
8611
+ border-color: #eed3d7;
8612
+ text-align: center; }
assets/frontend/css/premium-carousel-widget.css CHANGED
@@ -1,156 +1,156 @@
1
- /**************** Premium Carousel ****************/
2
- /**************************************************/
3
- .premium-carousel-hidden {
4
- opacity: 0;
5
- visibility: hidden; }
6
-
7
- .premium-carousel-wrapper a.carousel-arrow, .premium-carousel-wrapper a.ver-carousel-arrow {
8
- -js-display: flex;
9
- display: -webkit-box;
10
- display: -webkit-flex;
11
- display: -moz-box;
12
- display: -ms-flexbox;
13
- display: flex;
14
- -webkit-box-align: center;
15
- -webkit-align-items: center;
16
- -moz-box-align: center;
17
- -ms-flex-align: center;
18
- align-items: center;
19
- -webkit-box-pack: center;
20
- -webkit-justify-content: center;
21
- -moz-box-pack: center;
22
- -ms-flex-pack: center;
23
- justify-content: center;
24
- width: 2em;
25
- height: 2em;
26
- line-height: 0;
27
- text-align: center;
28
- position: absolute;
29
- z-index: 99;
30
- cursor: pointer;
31
- -webkit-transition: all 0.3s ease-in-out;
32
- transition: all 0.3s ease-in-out;
33
- -webkit-appearance: inherit;
34
- border: none;
35
- -webkit-box-shadow: none;
36
- box-shadow: none; }
37
- .premium-carousel-wrapper a.carousel-arrow svg, .premium-carousel-wrapper a.ver-carousel-arrow svg {
38
- -webkit-transition: all 0.3s ease-in-out;
39
- transition: all 0.3s ease-in-out; }
40
-
41
- .ver-carousel-arrow.carousel-next i {
42
- margin-bottom: -3px; }
43
-
44
- .premium-carousel-wrapper a.slick-arrow:hover {
45
- -webkit-box-shadow: none !important;
46
- box-shadow: none !important; }
47
-
48
- .premium-carousel-wrapper .premium-carousel-content-hidden {
49
- visibility: hidden; }
50
-
51
- .premium-carousel-wrapper a.carousel-arrow {
52
- top: 50%; }
53
-
54
- .premium-carousel-wrapper a.ver-carousel-arrow {
55
- left: 50%;
56
- -webkit-transform: translateX(-50%);
57
- -ms-transform: translateX(-50%);
58
- transform: translateX(-50%); }
59
-
60
- .premium-carousel-dots-above ul.slick-dots {
61
- position: absolute;
62
- -js-display: flex;
63
- display: -webkit-box;
64
- display: -webkit-flex;
65
- display: -moz-box;
66
- display: -ms-flexbox;
67
- display: flex;
68
- width: auto;
69
- top: 50%;
70
- bottom: auto;
71
- -webkit-transform: translateY(-50%);
72
- -ms-transform: translateY(-50%);
73
- transform: translateY(-50%);
74
- -webkit-box-orient: vertical;
75
- -webkit-box-direction: normal;
76
- -webkit-flex-direction: column;
77
- -moz-box-orient: vertical;
78
- -moz-box-direction: normal;
79
- -ms-flex-direction: column;
80
- flex-direction: column; }
81
-
82
  /*
83
  * Custom Navigation Dot
84
- */
85
- .premium-carousel-wrapper .premium-carousel-nav-dot,
86
- .premium-carousel-wrapper .premium-carousel-nav-arrow-prev,
87
- .premium-carousel-wrapper .premium-carousel-nav-arrow-next {
88
- display: none; }
89
-
90
- .premium-carousel-wrapper ul.slick-dots svg {
91
- width: 20px;
92
- height: 20px;
93
- outline: none !important; }
94
-
95
- /* Ripple Out */
96
- @-webkit-keyframes hvr-ripple-out {
97
- 0% {
98
- -webkit-transform: scale(1);
99
- transform: scale(1);
100
- opacity: 1; }
101
- 100% {
102
- -webkit-transform: scale(1.5);
103
- transform: scale(1.5);
104
- opacity: 0; } }
105
- @keyframes hvr-ripple-out {
106
- 0% {
107
- -webkit-transform: scale(1);
108
- transform: scale(1);
109
- opacity: 1; }
110
- 100% {
111
- -webkit-transform: scale(1.5);
112
- transform: scale(1.5);
113
- opacity: 0; } }
114
-
115
- .premium-carousel-ripple-yes .premium-carousel-wrapper {
116
- padding-bottom: 1px; }
117
-
118
- .premium-carousel-ripple-yes ul.slick-dots li {
119
- position: relative; }
120
- .premium-carousel-ripple-yes ul.slick-dots li i {
121
- position: relative;
122
- z-index: 1; }
123
- .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
124
- content: "";
125
- position: absolute;
126
- -webkit-transform: scale(1);
127
- -ms-transform: scale(1);
128
- transform: scale(1);
129
- top: 0;
130
- right: 0;
131
- bottom: 0;
132
- left: 0;
133
- -webkit-border-radius: 50%;
134
- border-radius: 50%;
135
- pointer-events: none;
136
- background-color: rgba(0, 0, 0, 0.15); }
137
- .premium-carousel-ripple-yes ul.slick-dots li.slick-active:hover:before {
138
- background-color: rgba(0, 0, 0, 0.3); }
139
- .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
140
- -webkit-animation: hvr-ripple-out 1.3s infinite;
141
- animation: hvr-ripple-out 1.3s infinite; }
142
-
143
- .premium-carousel-wrapper.premium-carousel-scale .slick-slide {
144
- -webkit-transform: scale(1.25, 1.25);
145
- -ms-transform: scale(1.25, 1.25);
146
- transform: scale(1.25, 1.25);
147
- -webkit-transition: all 0.3s ease-in-out;
148
- transition: all 0.3s ease-in-out; }
149
-
150
- .premium-carousel-wrapper.premium-carousel-scale div.slick-active {
151
- -webkit-transform: scale(1, 1);
152
- -ms-transform: scale(1, 1);
153
- transform: scale(1, 1); }
154
-
155
- [dir="rtl"] .premium-carousel-inner .slick-slide {
156
- float: right; }
1
+ /**************** Premium Carousel ****************/
2
+ /**************************************************/
3
+ .premium-carousel-hidden {
4
+ opacity: 0;
5
+ visibility: hidden; }
6
+
7
+ .premium-carousel-wrapper a.carousel-arrow, .premium-carousel-wrapper a.ver-carousel-arrow {
8
+ -js-display: flex;
9
+ display: -webkit-box;
10
+ display: -webkit-flex;
11
+ display: -moz-box;
12
+ display: -ms-flexbox;
13
+ display: flex;
14
+ -webkit-box-align: center;
15
+ -webkit-align-items: center;
16
+ -moz-box-align: center;
17
+ -ms-flex-align: center;
18
+ align-items: center;
19
+ -webkit-box-pack: center;
20
+ -webkit-justify-content: center;
21
+ -moz-box-pack: center;
22
+ -ms-flex-pack: center;
23
+ justify-content: center;
24
+ width: 2em;
25
+ height: 2em;
26
+ line-height: 0;
27
+ text-align: center;
28
+ position: absolute;
29
+ z-index: 99;
30
+ cursor: pointer;
31
+ -webkit-transition: all 0.3s ease-in-out;
32
+ transition: all 0.3s ease-in-out;
33
+ -webkit-appearance: inherit;
34
+ border: none;
35
+ -webkit-box-shadow: none;
36
+ box-shadow: none; }
37
+ .premium-carousel-wrapper a.carousel-arrow svg, .premium-carousel-wrapper a.ver-carousel-arrow svg {
38
+ -webkit-transition: all 0.3s ease-in-out;
39
+ transition: all 0.3s ease-in-out; }
40
+
41
+ .ver-carousel-arrow.carousel-next i {
42
+ margin-bottom: -3px; }
43
+
44
+ .premium-carousel-wrapper a.slick-arrow:hover {
45
+ -webkit-box-shadow: none !important;
46
+ box-shadow: none !important; }
47
+
48
+ .premium-carousel-wrapper .premium-carousel-content-hidden {
49
+ visibility: hidden; }
50
+
51
+ .premium-carousel-wrapper a.carousel-arrow {
52
+ top: 50%; }
53
+
54
+ .premium-carousel-wrapper a.ver-carousel-arrow {
55
+ left: 50%;
56
+ -webkit-transform: translateX(-50%);
57
+ -ms-transform: translateX(-50%);
58
+ transform: translateX(-50%); }
59
+
60
+ .premium-carousel-dots-above ul.slick-dots {
61
+ position: absolute;
62
+ -js-display: flex;
63
+ display: -webkit-box;
64
+ display: -webkit-flex;
65
+ display: -moz-box;
66
+ display: -ms-flexbox;
67
+ display: flex;
68
+ width: auto;
69
+ top: 50%;
70
+ bottom: auto;
71
+ -webkit-transform: translateY(-50%);
72
+ -ms-transform: translateY(-50%);
73
+ transform: translateY(-50%);
74
+ -webkit-box-orient: vertical;
75
+ -webkit-box-direction: normal;
76
+ -webkit-flex-direction: column;
77
+ -moz-box-orient: vertical;
78
+ -moz-box-direction: normal;
79
+ -ms-flex-direction: column;
80
+ flex-direction: column; }
81
+
82
  /*
83
  * Custom Navigation Dot
84
+ */
85
+ .premium-carousel-wrapper .premium-carousel-nav-dot,
86
+ .premium-carousel-wrapper .premium-carousel-nav-arrow-prev,
87
+ .premium-carousel-wrapper .premium-carousel-nav-arrow-next {
88
+ display: none; }
89
+
90
+ .premium-carousel-wrapper ul.slick-dots svg {
91
+ width: 20px;
92
+ height: 20px;
93
+ outline: none !important; }
94
+
95
+ /* Ripple Out */
96
+ @-webkit-keyframes hvr-ripple-out {
97
+ 0% {
98
+ -webkit-transform: scale(1);
99
+ transform: scale(1);
100
+ opacity: 1; }
101
+ 100% {
102
+ -webkit-transform: scale(1.5);
103
+ transform: scale(1.5);
104
+ opacity: 0; } }
105
+ @keyframes hvr-ripple-out {
106
+ 0% {
107
+ -webkit-transform: scale(1);
108
+ transform: scale(1);
109
+ opacity: 1; }
110
+ 100% {
111
+ -webkit-transform: scale(1.5);
112
+ transform: scale(1.5);
113
+ opacity: 0; } }
114
+
115
+ .premium-carousel-ripple-yes .premium-carousel-wrapper {
116
+ padding-bottom: 1px; }
117
+
118
+ .premium-carousel-ripple-yes ul.slick-dots li {
119
+ position: relative; }
120
+ .premium-carousel-ripple-yes ul.slick-dots li i {
121
+ position: relative;
122
+ z-index: 1; }
123
+ .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
124
+ content: "";
125
+ position: absolute;
126
+ -webkit-transform: scale(1);
127
+ -ms-transform: scale(1);
128
+ transform: scale(1);
129
+ top: 0;
130
+ right: 0;
131
+ bottom: 0;
132
+ left: 0;
133
+ -webkit-border-radius: 50%;
134
+ border-radius: 50%;
135
+ pointer-events: none;
136
+ background-color: rgba(0, 0, 0, 0.15); }
137
+ .premium-carousel-ripple-yes ul.slick-dots li.slick-active:hover:before {
138
+ background-color: rgba(0, 0, 0, 0.3); }
139
+ .premium-carousel-ripple-yes ul.slick-dots li:hover:before {
140
+ -webkit-animation: hvr-ripple-out 1.3s infinite;
141
+ animation: hvr-ripple-out 1.3s infinite; }
142
+
143
+ .premium-carousel-wrapper.premium-carousel-scale .slick-slide {
144
+ -webkit-transform: scale(1.25, 1.25);
145
+ -ms-transform: scale(1.25, 1.25);
146
+ transform: scale(1.25, 1.25);
147
+ -webkit-transition: all 0.3s ease-in-out;
148
+ transition: all 0.3s ease-in-out; }
149
+
150
+ .premium-carousel-wrapper.premium-carousel-scale div.slick-active {
151
+ -webkit-transform: scale(1, 1);
152
+ -ms-transform: scale(1, 1);
153
+ transform: scale(1, 1); }
154
+
155
+ [dir="rtl"] .premium-carousel-inner .slick-slide {
156
+ float: right; }
assets/frontend/css/premium-icon-list-rtl.css CHANGED
@@ -1,330 +1,330 @@
1
- /**************** Premium Bullet List *****************/
2
- /******************************************************/
3
- .premium-bullet-list-box {
4
- -js-display: flex;
5
- display: -webkit-box;
6
- display: -webkit-flex;
7
- display: -moz-box;
8
- display: -ms-flexbox;
9
- display: flex;
10
- -webkit-flex-wrap: wrap;
11
- -ms-flex-wrap: wrap;
12
- flex-wrap: wrap;
13
- -webkit-box-orient: vertical;
14
- -webkit-box-direction: normal;
15
- -webkit-flex-direction: column;
16
- -moz-box-orient: vertical;
17
- -moz-box-direction: normal;
18
- -ms-flex-direction: column;
19
- flex-direction: column;
20
- }
21
-
22
- .premium-bullet-list-box .premium-bullet-list-content-grow-lc {
23
- -webkit-transform-origin: right center;
24
- -ms-transform-origin: right center;
25
- transform-origin: right center;
26
- }
27
-
28
- .premium-bullet-list-box .premium-bullet-list-content-grow-rc {
29
- -webkit-transform-origin: left center;
30
- -ms-transform-origin: left center;
31
- transform-origin: left center;
32
- }
33
-
34
- .premium-bullet-list-box .premium-bullet-list-content-grow-cc {
35
- -webkit-transform-origin: center center;
36
- -ms-transform-origin: center center;
37
- transform-origin: center center;
38
- }
39
-
40
- .premium-bullet-list-content {
41
- -js-display: flex;
42
- display: -webkit-box;
43
- display: -webkit-flex;
44
- display: -moz-box;
45
- display: -ms-flexbox;
46
- display: flex;
47
- -webkit-transition: all 0.3s ease-in-out;
48
- transition: all 0.3s ease-in-out;
49
- width: auto;
50
- position: relative;
51
- }
52
-
53
- .premium-bullet-list-content .premium-bullet-list-text span,
54
- .premium-bullet-list-content .premium-bullet-list-wrapper {
55
- display: inline-block;
56
- -webkit-align-self: center;
57
- -ms-flex-item-align: center;
58
- align-self: center;
59
- -webkit-transition: all 0.3s ease-in-out;
60
- transition: all 0.3s ease-in-out;
61
- }
62
-
63
- .premium-bullet-list-content .premium-bullet-list-text span {
64
- margin: 0 5px;
65
- -webkit-box-flex: 1;
66
- -webkit-flex: 1;
67
- -moz-box-flex: 1;
68
- -ms-flex: 1;
69
- flex: 1;
70
- }
71
-
72
- .premium-bullet-list-content .premium-bullet-list-icon-text p {
73
- font-size: 18px;
74
- background-color: #eee;
75
- padding: 1px 5px;
76
- -webkit-border-radius: 2px;
77
- border-radius: 2px;
78
- }
79
-
80
- .premium-bullet-list-content .premium-bullet-list-text span,
81
- .premium-bullet-list-content .premium-bullet-list-icon-text p,
82
- .premium-bullet-list-content .premium-bullet-list-wrapper img,
83
- .premium-bullet-list-content .premium-bullet-list-wrapper svg,
84
- .premium-bullet-list-content .premium-bullet-list-wrapper i {
85
- -webkit-transition: all 0.3s ease-in-out;
86
- transition: all 0.3s ease-in-out;
87
- }
88
-
89
- .premium-bullet-list-content .premium-bullet-list-wrapper {
90
- position: relative;
91
- line-height: 0;
92
- }
93
-
94
- .premium-bullet-list-content .premium-bullet-list-wrapper img,
95
- .premium-bullet-list-content .premium-bullet-list-wrapper svg {
96
- width: 30px !important;
97
- height: 30px !important;
98
- position: relative;
99
- z-index: 500;
100
- }
101
-
102
- .premium-bullet-list-content .premium-bullet-list-wrapper i {
103
- width: 1.25em;
104
- }
105
-
106
- .premium-bullet-list-content .premium-bullet-list-wrapper i,
107
- .premium-bullet-list-content .premium-bullet-list-wrapper .premium-bullet-list-icon-text {
108
- position: relative;
109
- z-index: 500;
110
- }
111
-
112
- .premium-bullet-list-content .premium-bullet-list-link {
113
- position: absolute;
114
- top: 0;
115
- right: 0;
116
- width: 100%;
117
- height: 100%;
118
- z-index: 1000;
119
- }
120
-
121
- .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector {
122
- width: 100%;
123
- height: 100%;
124
- position: absolute;
125
- top: 0.5em;
126
- z-index: 100;
127
- -js-display: flex;
128
- display: -webkit-box;
129
- display: -webkit-flex;
130
- display: -moz-box;
131
- display: -ms-flexbox;
132
- display: flex;
133
- -webkit-box-pack: center;
134
- -webkit-justify-content: center;
135
- -moz-box-pack: center;
136
- -ms-flex-pack: center;
137
- justify-content: center;
138
- }
139
-
140
- .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector .premium-icon-connector-content:after {
141
- content: "";
142
- border-left-width: 1px;
143
- border-left-style: solid;
144
- border-color: #333333;
145
- display: block;
146
- height: 100%;
147
- }
148
-
149
- li.premium-bullet-list-content.premium-bullet-list-content-inline {
150
- -webkit-align-self: center;
151
- -ms-flex-item-align: center;
152
- align-self: center;
153
- z-index: 2;
154
- }
155
-
156
- li.premium-bullet-list-content.premium-bullet-list-content-inline:not(:first-child) {
157
- margin: 0 3px;
158
- }
159
-
160
- li.premium-bullet-list-content.premium-bullet-list-content-inline:first-child {
161
- margin: 0 0 0 3px;
162
- }
163
-
164
- .premium-bullet-list-divider:not(:last-child) {
165
- width: 100%;
166
- -webkit-box-flex: 0;
167
- -webkit-flex: 0 0 100%;
168
- -moz-box-flex: 0;
169
- -ms-flex: 0 0 100%;
170
- flex: 0 0 100%;
171
- overflow: hidden;
172
- }
173
-
174
- .premium-bullet-list-divider:not(:last-child):after {
175
- content: "";
176
- display: block;
177
- border-top-style: solid;
178
- border-top-width: 1px;
179
- }
180
-
181
- .premium-bullet-list-divider-inline:not(:last-child) {
182
- float: left;
183
- display: inline-block;
184
- position: relative;
185
- height: 100%;
186
- overflow: hidden;
187
- -webkit-align-self: center;
188
- -ms-flex-item-align: center;
189
- align-self: center;
190
- margin: 0 3px;
191
- }
192
-
193
- .premium-bullet-list-divider-inline:not(:last-child):after {
194
- content: "";
195
- display: block;
196
- border-right-width: 1px;
197
- height: 33px;
198
- border-right-style: solid;
199
- }
200
-
201
- .premium-bullet-list-icon-text {
202
- line-height: 1.5;
203
- }
204
-
205
- .premium-bullet-list-icon-text p,
206
- ul.premium-bullet-list-box,
207
- li.premium-bullet-list-content {
208
- margin: 0;
209
- }
210
-
211
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper i,
212
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-text span,
213
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-icon-text p {
214
- color: transparent !important;
215
- text-shadow: 0 0 3px #aaa;
216
- }
217
-
218
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-icon-connector-content,
219
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper .premium-lottie-animation svg,
220
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper img,
221
- .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-badge {
222
- -webkit-filter: blur(3px);
223
- filter: blur(3px);
224
- }
225
-
226
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper i,
227
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-text span,
228
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-icon-text p {
229
- color: #aaa !important;
230
- text-shadow: 0 0px 0 transparent;
231
- }
232
-
233
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-icon-connector-content,
234
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper .premium-lottie-animation svg,
235
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper img,
236
- .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-badge {
237
- -webkit-filter: none;
238
- filter: none;
239
- }
240
-
241
- .premium-bullet-list-content .premium-bullet-list-badge {
242
- font-size: 11px;
243
- top: auto;
244
- min-width: -webkit-max-content;
245
- min-width: -moz-max-content;
246
- min-width: max-content;
247
- height: -webkit-fit-content;
248
- height: -moz-fit-content;
249
- height: fit-content;
250
- }
251
-
252
- .premium-bullet-list-content .premium-bullet-list-icon-text p {
253
- font-size: 13px;
254
- }
255
-
256
- .premium-bullet-list-gradient-effect[data-text] {
257
- display: inline-block;
258
- position: relative;
259
- text-decoration: none;
260
- }
261
-
262
- .premium-bullet-list-gradient-effect[data-text]::before {
263
- content: attr(data-text);
264
- position: absolute;
265
- z-index: 1;
266
- overflow: hidden;
267
- -webkit-clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
268
- clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
269
- -webkit-background-clip: text;
270
- background-clip: text;
271
- -webkit-text-fill-color: transparent;
272
- -webkit-transition: all 0.4s ease;
273
- transition: all 0.4s ease;
274
- }
275
-
276
- .premium-bullet-list-content:hover .premium-bullet-list-gradient-effect[data-text]::before,
277
- .premium-bullet-list-content:focus .premium-bullet-list-gradient-effect[data-text]::before {
278
- -webkit-animation: rtlgradient 1s forwards;
279
- animation: rtlgradient 1s forwards;
280
- }
281
-
282
- @-webkit-keyframes rtlgradient {
283
- 0% {
284
- -webkit-clip-path: circle(0% at 150% 50%);
285
- clip-path: circle(0% at 150% 50%);
286
- }
287
-
288
- 100% {
289
- -webkit-clip-path: circle(100% at 50% 50%);
290
- clip-path: circle(100% at 50% 50%);
291
- }
292
- }
293
-
294
- @keyframes rtlgradient {
295
- 0% {
296
- -webkit-clip-path: circle(0% at 150% 50%);
297
- clip-path: circle(0% at 150% 50%);
298
- }
299
-
300
- 100% {
301
- -webkit-clip-path: circle(100% at 50% 50%);
302
- clip-path: circle(100% at 50% 50%);
303
- }
304
- }
305
-
306
- ul[data-list-animation*="animated-"] .premium-bullet-list-divider,
307
- ul[data-list-animation*="animated-"] .premium-bullet-list-content,
308
- ul[data-list-animation*="animated-"] .premium-bullet-list-divider-inline {
309
- opacity: 0;
310
- }
311
-
312
- .premium-bullet-list-content-grow-effect:hover {
313
- -webkit-transform: scale(1.07);
314
- -ms-transform: scale(1.07);
315
- transform: scale(1.07);
316
- }
317
-
318
- @-webkit-keyframes spin {
319
- 100% {
320
- -webkit-transform: rotate(360deg);
321
- transform: rotate(360deg);
322
- }
323
- }
324
-
325
- @keyframes spin {
326
- 100% {
327
- -webkit-transform: rotate(360deg);
328
- transform: rotate(360deg);
329
- }
330
  }
1
+ /**************** Premium Bullet List *****************/
2
+ /******************************************************/
3
+ .premium-bullet-list-box {
4
+ -js-display: flex;
5
+ display: -webkit-box;
6
+ display: -webkit-flex;
7
+ display: -moz-box;
8
+ display: -ms-flexbox;
9
+ display: flex;
10
+ -webkit-flex-wrap: wrap;
11
+ -ms-flex-wrap: wrap;
12
+ flex-wrap: wrap;
13
+ -webkit-box-orient: vertical;
14
+ -webkit-box-direction: normal;
15
+ -webkit-flex-direction: column;
16
+ -moz-box-orient: vertical;
17
+ -moz-box-direction: normal;
18
+ -ms-flex-direction: column;
19
+ flex-direction: column;
20
+ }
21
+
22
+ .premium-bullet-list-box .premium-bullet-list-content-grow-lc {
23
+ -webkit-transform-origin: right center;
24
+ -ms-transform-origin: right center;
25
+ transform-origin: right center;
26
+ }
27
+
28
+ .premium-bullet-list-box .premium-bullet-list-content-grow-rc {
29
+ -webkit-transform-origin: left center;
30
+ -ms-transform-origin: left center;
31
+ transform-origin: left center;
32
+ }
33
+
34
+ .premium-bullet-list-box .premium-bullet-list-content-grow-cc {
35
+ -webkit-transform-origin: center center;
36
+ -ms-transform-origin: center center;
37
+ transform-origin: center center;
38
+ }
39
+
40
+ .premium-bullet-list-content {
41
+ -js-display: flex;
42
+ display: -webkit-box;
43
+ display: -webkit-flex;
44
+ display: -moz-box;
45
+ display: -ms-flexbox;
46
+ display: flex;
47
+ -webkit-transition: all 0.3s ease-in-out;
48
+ transition: all 0.3s ease-in-out;
49
+ width: auto;
50
+ position: relative;
51
+ }
52
+
53
+ .premium-bullet-list-content .premium-bullet-list-text span,
54
+ .premium-bullet-list-content .premium-bullet-list-wrapper {
55
+ display: inline-block;
56
+ -webkit-align-self: center;
57
+ -ms-flex-item-align: center;
58
+ align-self: center;
59
+ -webkit-transition: all 0.3s ease-in-out;
60
+ transition: all 0.3s ease-in-out;
61
+ }
62
+
63
+ .premium-bullet-list-content .premium-bullet-list-text span {
64
+ margin: 0 5px;
65
+ -webkit-box-flex: 1;
66
+ -webkit-flex: 1;
67
+ -moz-box-flex: 1;
68
+ -ms-flex: 1;
69
+ flex: 1;
70
+ }
71
+
72
+ .premium-bullet-list-content .premium-bullet-list-icon-text p {
73
+ font-size: 18px;
74
+ background-color: #eee;
75
+ padding: 1px 5px;
76
+ -webkit-border-radius: 2px;
77
+ border-radius: 2px;
78
+ }
79
+
80
+ .premium-bullet-list-content .premium-bullet-list-text span,
81
+ .premium-bullet-list-content .premium-bullet-list-icon-text p,
82
+ .premium-bullet-list-content .premium-bullet-list-wrapper img,
83
+ .premium-bullet-list-content .premium-bullet-list-wrapper svg,
84
+ .premium-bullet-list-content .premium-bullet-list-wrapper i {
85
+ -webkit-transition: all 0.3s ease-in-out;
86
+ transition: all 0.3s ease-in-out;
87
+ }
88
+
89
+ .premium-bullet-list-content .premium-bullet-list-wrapper {
90
+ position: relative;
91
+ line-height: 0;
92
+ }
93
+
94
+ .premium-bullet-list-content .premium-bullet-list-wrapper img,
95
+ .premium-bullet-list-content .premium-bullet-list-wrapper svg {
96
+ width: 30px !important;
97
+ height: 30px !important;
98
+ position: relative;
99
+ z-index: 500;
100
+ }
101
+
102
+ .premium-bullet-list-content .premium-bullet-list-wrapper i {
103
+ width: 1.25em;
104
+ }
105
+
106
+ .premium-bullet-list-content .premium-bullet-list-wrapper i,
107
+ .premium-bullet-list-content .premium-bullet-list-wrapper .premium-bullet-list-icon-text {
108
+ position: relative;
109
+ z-index: 500;
110
+ }
111
+
112
+ .premium-bullet-list-content .premium-bullet-list-link {
113
+ position: absolute;
114
+ top: 0;
115
+ right: 0;
116
+ width: 100%;
117
+ height: 100%;
118
+ z-index: 1000;
119
+ }
120
+
121
+ .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector {
122
+ width: 100%;
123
+ height: 100%;
124
+ position: absolute;
125
+ top: 0.5em;
126
+ z-index: 100;
127
+ -js-display: flex;
128
+ display: -webkit-box;
129
+ display: -webkit-flex;
130
+ display: -moz-box;
131
+ display: -ms-flexbox;
132
+ display: flex;
133
+ -webkit-box-pack: center;
134
+ -webkit-justify-content: center;
135
+ -moz-box-pack: center;
136
+ -ms-flex-pack: center;
137
+ justify-content: center;
138
+ }
139
+
140
+ .premium-bullet-list-content:not(:last-of-type) .premium-bullet-list-connector .premium-icon-connector-content:after {
141
+ content: "";
142
+ border-left-width: 1px;
143
+ border-left-style: solid;
144
+ border-color: #333333;
145
+ display: block;
146
+ height: 100%;
147
+ }
148
+
149
+ li.premium-bullet-list-content.premium-bullet-list-content-inline {
150
+ -webkit-align-self: center;
151
+ -ms-flex-item-align: center;
152
+ align-self: center;
153
+ z-index: 2;
154
+ }
155
+
156
+ li.premium-bullet-list-content.premium-bullet-list-content-inline:not(:first-child) {
157
+ margin: 0 3px;
158
+ }
159
+
160
+ li.premium-bullet-list-content.premium-bullet-list-content-inline:first-child {
161
+ margin: 0 0 0 3px;
162
+ }
163
+
164
+ .premium-bullet-list-divider:not(:last-child) {
165
+ width: 100%;
166
+ -webkit-box-flex: 0;
167
+ -webkit-flex: 0 0 100%;
168
+ -moz-box-flex: 0;
169
+ -ms-flex: 0 0 100%;
170
+ flex: 0 0 100%;
171
+ overflow: hidden;
172
+ }
173
+
174
+ .premium-bullet-list-divider:not(:last-child):after {
175
+ content: "";
176
+ display: block;
177
+ border-top-style: solid;
178
+ border-top-width: 1px;
179
+ }
180
+
181
+ .premium-bullet-list-divider-inline:not(:last-child) {
182
+ float: left;
183
+ display: inline-block;
184
+ position: relative;
185
+ height: 100%;
186
+ overflow: hidden;
187
+ -webkit-align-self: center;
188
+ -ms-flex-item-align: center;
189
+ align-self: center;
190
+ margin: 0 3px;
191
+ }
192
+
193
+ .premium-bullet-list-divider-inline:not(:last-child):after {
194
+ content: "";
195
+ display: block;
196
+ border-right-width: 1px;
197
+ height: 33px;
198
+ border-right-style: solid;
199
+ }
200
+
201
+ .premium-bullet-list-icon-text {
202
+ line-height: 1.5;
203
+ }
204
+
205
+ .premium-bullet-list-icon-text p,
206
+ ul.premium-bullet-list-box,
207
+ li.premium-bullet-list-content {
208
+ margin: 0;
209
+ }
210
+
211
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper i,
212
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-text span,
213
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-icon-text p {
214
+ color: transparent !important;
215
+ text-shadow: 0 0 3px #aaa;
216
+ }
217
+
218
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-icon-connector-content,
219
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper .premium-lottie-animation svg,
220
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-wrapper img,
221
+ .premium-bullet-list-blur:hover .premium-bullet-list-content .premium-bullet-list-badge {
222
+ -webkit-filter: blur(3px);
223
+ filter: blur(3px);
224
+ }
225
+
226
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper i,
227
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-text span,
228
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-icon-text p {
229
+ color: #aaa !important;
230
+ text-shadow: 0 0px 0 transparent;
231
+ }
232
+
233
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-icon-connector-content,
234
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper .premium-lottie-animation svg,
235
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-wrapper img,
236
+ .premium-bullet-list-blur:hover .premium-bullet-list-content:hover .premium-bullet-list-badge {
237
+ -webkit-filter: none;
238
+ filter: none;
239
+ }
240
+
241
+ .premium-bullet-list-content .premium-bullet-list-badge {
242
+ font-size: 11px;
243
+ top: auto;
244
+ min-width: -webkit-max-content;
245
+ min-width: -moz-max-content;
246
+ min-width: max-content;
247
+ height: -webkit-fit-content;
248
+ height: -moz-fit-content;
249
+ height: fit-content;
250
+ }
251
+
252
+ .premium-bullet-list-content .premium-bullet-list-icon-text p {
253
+ font-size: 13px;
254
+ }
255
+
256
+ .premium-bullet-list-gradient-effect[data-text] {
257
+ display: inline-block;
258
+ position: relative;
259
+ text-decoration: none;
260
+ }
261
+
262
+ .premium-bullet-list-gradient-effect[data-text]::before {
263
+ content: attr(data-text);
264
+ position: absolute;
265
+ z-index: 1;
266
+ overflow: hidden;
267
+ -webkit-clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
268
+ clip-path: polygon(100% 100%, 100% 100%, 50% 50%);
269
+ -webkit-background-clip: text;
270
+ background-clip: text;
271
+ -webkit-text-fill-color: transparent;
272
+ -webkit-transition: all 0.4s ease;
273
+ transition: all 0.4s ease;
274
+ }
275
+
276
+ .premium-bullet-list-content:hover .premium-bullet-list-gradient-effect[data-text]::before,
277
+ .premium-bullet-list-content:focus .premium-bullet-list-gradient-effect[data-text]::before {
278
+ -webkit-animation: rtlgradient 1s forwards;
279
+ animation: rtlgradient 1s forwards;
280
+ }
281
+
282
+ @-webkit-keyframes rtlgradient {
283
+ 0% {
284
+ -webkit-clip-path: circle(0% at 150% 50%);
285
+ clip-path: circle(0% at 150% 50%);
286
+ }
287
+
288
+ 100% {
289
+ -webkit-clip-path: circle(100% at 50% 50%);
290
+ clip-path: circle(100% at 50% 50%);
291
+ }
292
+ }
293
+
294
+ @keyframes rtlgradient {
295
+ 0% {
296
+ -webkit-clip-path: circle(0% at 150% 50%);
297
+ clip-path: circle(0% at 150% 50%);
298
+ }
299
+
300
+ 100% {
301
+ -webkit-clip-path: circle(100% at 50% 50%);
302
+ clip-path: circle(100% at 50% 50%);
303
+ }
304
+ }
305
+
306
+ ul[data-list-animation*="animated-"] .premium-bullet-list-divider,
307
+ ul[data-list-animation*="animated-"] .premium-bullet-list-content,
308
+ ul[data-list-animation*="animated-"] .premium-bullet-list-divider-inline {
309
+ opacity: 0;
310
+ }
311
+
312
+ .premium-bullet-list-content-grow-effect:hover {
313
+ -webkit-transform: scale(1.07);
314
+ -ms-transform: scale(1.07);
315
+ transform: scale(1.07);
316
+ }
317
+
318
+ @-webkit-keyframes spin {
319
+ 100% {
320
+ -webkit-transform: rotate(360deg);
321
+ transform: rotate(360deg);
322
+ }
323
+ }
324
+
325
+ @keyframes spin {
326
+ 100% {
327
+ -webkit-transform: rotate(360deg);
328
+ transform: rotate(360deg);
329
+ }
330
  }
assets/frontend/css/premium-image-scroll.css CHANGED
@@ -2,8 +2,8 @@
2
  /**********************************************/
3
  @font-face {
4
  font-family: "pa-elements";
5
- src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?9e1efm");
6
- src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?9e1efm#iefix") format("embedded-opentype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.ttf?9e1efm") format("truetype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.woff?9e1efm") format("woff"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.svg?9e1efm#pa-elements") format("svg");
7
  font-weight: normal;
8
  font-style: normal; }
9
 
2
  /**********************************************/
3
  @font-face {
4
  font-family: "pa-elements";
5
+ src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?60rfh2");
6
+ src: url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.eot?60rfh2#iefix") format("embedded-opentype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.ttf?60rfh2") format("truetype"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.woff?60rfh2") format("woff"), url("../../plugins/premium-addons-for-elementor/assets/editor/fonts/pa-elements.svg?60rfh2#pa-elements") format("svg");
7
  font-weight: normal;
8
  font-style: normal; }
9
 
assets/frontend/css/premium-img-gallery-rtl.css CHANGED
@@ -1,451 +1,451 @@
1
- /******** Premium Media Grid ********/
2
- /************************************/
3
- .premium-img-gallery-filter,
4
- .premium-blog-filter {
5
- display: -webkit-box;
6
- display: -webkit-flex;
7
- display: -ms-flexbox;
8
- -js-display: flex;
9
- display: -moz-box;
10
- display: flex;
11
- -webkit-box-align: center;
12
- -webkit-align-items: center;
13
- -moz-box-align: center;
14
- -ms-flex-align: center;
15
- align-items: center;
16
- -webkit-box-pack: center;
17
- -webkit-justify-content: center;
18
- -moz-box-pack: center;
19
- -ms-flex-pack: center;
20
- justify-content: center;
21
- }
22
-
23
- .premium-img-gallery {
24
- clear: both;
25
- overflow: hidden;
26
- }
27
-
28
- .premium-gallery-container .premium-gallery-item {
29
- padding: 10px;
30
- float: right;
31
- /* Google Chrome isotope issue */
32
- }
33
-
34
- .premium-gallery-container .grid-sizer {
35
- width: 33.33%;
36
- }
37
-
38
- .premium-img-gallery-filter .premium-gallery-cats-container li a.category,
39
- .premium-blog-filter .premium-blog-filters-container li a.category {
40
- outline: none;
41
- text-decoration: none;
42
- -webkit-border-radius: 75px;
43
- border-radius: 75px;
44
- margin: 15px 5px 20px;
45
- padding: 7px 20px;
46
- -webkit-transition: all 0.3s ease-in-out;
47
- transition: all 0.3s ease-in-out;
48
- }
49
-
50
- /* .premium-img-gallery-filter .premium-gallery-cats-container li a.category span {
51
- -webkit-transition: all 0.3s ease-in-out;
52
- transition: all 0.3s ease-in-out;
53
- } */
54
-
55
- .pa-gallery-img {
56
- position: relative;
57
- }
58
-
59
- .pa-gallery-img .pa-gallery-whole-link {
60
- position: absolute;
61
- top: 0;
62
- right: 0;
63
- width: 100%;
64
- height: 100%;
65
- }
66
-
67
- .pa-gallery-img.style2 .pa-gallery-whole-link {
68
- z-index: 99;
69
- }
70
-
71
- .pa-gallery-img-container {
72
- overflow: hidden;
73
- -webkit-backface-visibility: hidden;
74
- -moz-backface-visibility: hidden;
75
- -webkit-transform: translate3d(0, 0, 0);
76
- transform: translate3d(0, 0, 0);
77
- }
78
-
79
- .pa-gallery-img-container img {
80
- display: block;
81
- width: 100%;
82
- -webkit-transition: all 0.3s ease-in-out;
83
- transition: all 0.3s ease-in-out;
84
- }
85
-
86
- .premium-img-gallery.gray img {
87
- -webkit-filter: grayscale(100%);
88
- filter: grayscale(100%);
89
- }
90
-
91
- .premium-img-gallery.zoomout img,
92
- .premium-img-gallery.scale img {
93
- -webkit-transform: scale(1.2);
94
- -ms-transform: scale(1.2);
95
- transform: scale(1.2);
96
- }
97
-
98
- .premium-img-gallery.sepia img {
99
- -webkit-filter: sepia(30%);
100
- filter: sepia(30%);
101
- }
102
-
103
- .premium-img-gallery.bright img {
104
- -webkit-filter: brightness(1);
105
- filter: brightness(1);
106
- }
107
-
108
- .premium-img-gallery.trans img {
109
- -webkit-transform: translateX(15px) scale(1.1);
110
- -ms-transform: translateX(15px) scale(1.1);
111
- transform: translateX(15px) scale(1.1);
112
- }
113
-
114
- .pa-gallery-img .pa-gallery-magnific-image,
115
- .pa-gallery-img .pa-gallery-img-link {
116
- outline: none;
117
- }
118
-
119
- .pa-gallery-img .pa-gallery-magnific-image i,
120
- .pa-gallery-img .pa-gallery-magnific-image svg,
121
- .pa-gallery-img .pa-gallery-img-link i,
122
- .pa-gallery-img .pa-gallery-img-link svg {
123
- -webkit-transition: all 0.3s ease-in-out;
124
- transition: all 0.3s ease-in-out;
125
- }
126
-
127
- .pa-gallery-img .pa-gallery-magnific-image span,
128
- .pa-gallery-img .pa-gallery-img-link span {
129
- line-height: 1;
130
- display: inline-block;
131
- opacity: 0;
132
- margin: 0 5px;
133
- padding: 15px;
134
- -webkit-border-radius: 50%;
135
- border-radius: 50%;
136
- }
137
-
138
- .pa-gallery-img.style2 .pa-gallery-magnific-image span,
139
- .pa-gallery-img.style2 .pa-gallery-img-link span {
140
- margin: 0 5px 20px;
141
- }
142
-
143
- .pa-gallery-img:hover .pa-gallery-magnific-image span {
144
- -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
145
- transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
146
- }
147
-
148
- .pa-gallery-img:hover .pa-gallery-img-link span {
149
- -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
150
- transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
151
- }
152
-
153
- .pa-gallery-img:hover .pa-gallery-magnific-image span,
154
- .pa-gallery-img:hover .pa-gallery-img-link span,
155
- .premium-gallery-icon-show a.pa-gallery-video-icon span {
156
- opacity: 1;
157
- }
158
-
159
- .premium-img-gallery-filter ul.premium-gallery-cats-container,
160
- .premium-blog-filter ul.premium-blog-filters-container {
161
- text-align: center;
162
- margin: 0;
163
- padding: 0;
164
- }
165
-
166
- .premium-img-gallery-filter .premium-gallery-cats-container li,
167
- .premium-blog-filter .premium-blog-filters-container li {
168
- list-style: none;
169
- display: -webkit-inline-box;
170
- display: -webkit-inline-flex;
171
- display: -ms-inline-flexbox;
172
- -js-display: inline-flex;
173
- display: -moz-inline-box;
174
- display: inline-flex;
175
- }
176
-
177
- .premium-img-gallery.zoomin .pa-gallery-img:hover img {
178
- -webkit-transform: scale(1.1);
179
- -ms-transform: scale(1.1);
180
- transform: scale(1.1);
181
- }
182
-
183
- .premium-img-gallery.zoomout .pa-gallery-img:hover img {
184
- -webkit-transform: scale(1);
185
- -ms-transform: scale(1);
186
- transform: scale(1);
187
- }
188
-
189
- .premium-img-gallery.scale .pa-gallery-img:hover img {
190
- -webkit-transform: scale(1.3) rotate(-5deg);
191
- -ms-transform: scale(1.3) rotate(-5deg);
192
- transform: scale(1.3) rotate(-5deg);
193
- }
194
-
195
- .premium-img-gallery.gray .pa-gallery-img:hover img {
196
- -webkit-filter: grayscale(0%);
197
- filter: grayscale(0%);
198
- }
199
-
200
- .premium-img-gallery.blur .pa-gallery-img:hover img {
201
- -webkit-filter: blur(3px);
202
- filter: blur(3px);
203
- }
204
-
205
- .premium-img-gallery.sepia .pa-gallery-img:hover img {
206
- -webkit-filter: sepia(0%);
207
- filter: sepia(0%);
208
- }
209
-
210
- .premium-img-gallery.trans .pa-gallery-img:hover img {
211
- -webkit-transform: translateX(0px) scale(1.1);
212
- -ms-transform: translateX(0px) scale(1.1);
213
- transform: translateX(0px) scale(1.1);
214
- }
215
-
216
- .premium-img-gallery.bright .pa-gallery-img:hover img {
217
- -webkit-filter: brightness(1.2);
218
- filter: brightness(1.2);
219
- }
220
-
221
- .pa-gallery-img .premium-gallery-caption {
222
- padding: 10px;
223
- }
224
-
225
- .pa-gallery-img .premium-gallery-caption .premium-gallery-img-name {
226
- margin-bottom: 0;
227
- }
228
-
229
- .pa-gallery-img.style1 {
230
- overflow: hidden;
231
- }
232
-
233
- .pa-gallery-img:not(.style2) .pa-gallery-icons-wrapper {
234
- position: absolute;
235
- top: 0;
236
- right: 0;
237
- width: 100%;
238
- height: 100%;
239
- -webkit-transition: all 0.3s ease-in-out;
240
- transition: all 0.3s ease-in-out;
241
- }
242
-
243
- .pa-gallery-img:not(.style2) .pa-gallery-icons-inner-container {
244
- position: absolute;
245
- top: 33.33%;
246
- width: 100%;
247
- text-align: center;
248
- -webkit-transform: translateY(-50%);
249
- -ms-transform: translateY(-50%);
250
- transform: translateY(-50%);
251
- z-index: 999;
252
- }
253
-
254
- .pa-gallery-img.style1 .premium-gallery-caption {
255
- position: absolute;
256
- top: auto;
257
- left: 0;
258
- right: 0;
259
- width: 100%;
260
- -webkit-transition: all 500ms ease 0s;
261
- transition: all 500ms ease 0s;
262
- -webkit-transform: translate3d(0, 100%, 0);
263
- -ms-transform: translate3d(0, 100%, 0);
264
- transform: translate3d(0, 100%, 0);
265
- }
266
-
267
- .pa-gallery-img.default .premium-gallery-caption {
268
- position: absolute;
269
- top: auto;
270
- left: 0;
271
- right: 0;
272
- width: 100%;
273
- bottom: 0;
274
- }
275
-
276
- .pa-gallery-img.style1:hover .premium-gallery-caption {
277
- -webkit-transform: translate3d(0, 0, 0);
278
- -ms-transform: translate3d(0, 0, 0);
279
- transform: translate3d(0, 0, 0);
280
- bottom: -1px !important;
281
- }
282
-
283
- .pa-gallery-img.style2 .pa-gallery-icons-caption-container {
284
- position: absolute;
285
- top: 0;
286
- right: 0;
287
- width: 100%;
288
- height: 100%;
289
- opacity: 0;
290
- -webkit-backface-visibility: hidden;
291
- backface-visibility: hidden;
292
- -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
293
- -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
294
- transition: opacity 0.3s, -webkit-transform 0.3s;
295
- transition: transform 0.3s, opacity 0.3s;
296
- transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
297
- z-index: 1;
298
- background-color: rgba(108, 191, 226, 0.68);
299
- display: -webkit-box;
300
- display: -webkit-flex;
301
- display: -ms-flexbox;
302
- -js-display: flex;
303
- display: -moz-box;
304
- display: flex;
305
- text-align: center;
306
- -webkit-box-align: center;
307
- -webkit-align-items: center;
308
- -moz-box-align: center;
309
- -ms-flex-align: center;
310
- align-items: center;
311
- }
312
-
313
- .pa-gallery-img.style2 .pa-gallery-icons-caption-cell {
314
- width: 100%;
315
- }
316
-
317
- .pa-gallery-img.style2:hover .pa-gallery-icons-caption-container {
318
- opacity: 1;
319
- -webkit-transform: translate(-15px, 15px);
320
- -ms-transform: translate(-15px, 15px);
321
- transform: translate(-15px, 15px);
322
- }
323
-
324
- .premium-clearfix {
325
- clear: both;
326
- }
327
-
328
- .premium-gallery-container .pa-gallery-item {
329
- padding: 10px;
330
- }
331
-
332
- /**
333
- * Metro Layout
334
- */
335
- .premium-img-gallery-metro .premium-gallery-item {
336
- overflow: hidden;
337
- }
338
-
339
- .premium-img-gallery-metro .pa-gallery-img {
340
- height: 100%;
341
- }
342
-
343
- .premium-img-gallery-metro .pa-gallery-img-container {
344
- height: 100%;
345
- }
346
-
347
- .premium-img-gallery-metro .pa-gallery-img-container img {
348
- min-height: 100%;
349
- width: 100%;
350
- -o-object-fit: fill;
351
- object-fit: fill;
352
- }
353
-
354
- .premium-img-gallery .premium-gallery-item-hidden {
355
- visibility: hidden;
356
- width: 0 !important;
357
- height: 0 !important;
358
- margin: 0 !important;
359
- padding: 0 !important;
360
- }
361
-
362
- .premium-gallery-load-more .premium-gallery-load-more-btn {
363
- -webkit-box-shadow: none;
364
- box-shadow: none;
365
- text-shadow: none;
366
- border: none;
367
- outline: none;
368
- -webkit-box-align: center;
369
- -ms-flex-align: center;
370
- -webkit-align-items: center;
371
- -moz-box-align: center;
372
- align-items: center;
373
- vertical-align: bottom;
374
- cursor: pointer;
375
- line-height: 1;
376
- font-style: normal;
377
- font-weight: normal;
378
- background-image: none;
379
- color: #fff;
380
- -webkit-transition: all 0.3s ease-in-out;
381
- transition: all 0.3s ease-in-out;
382
- }
383
-
384
- .premium-gallery-load-more-btn {
385
- display: -webkit-inline-box;
386
- display: -webkit-inline-flex;
387
- display: -ms-inline-flexbox;
388
- -js-display: inline-flex;
389
- display: -moz-inline-box;
390
- display: inline-flex;
391
- -webkit-box-align: center;
392
- -webkit-align-items: center;
393
- -moz-box-align: center;
394
- -ms-flex-align: center;
395
- align-items: center;
396
- }
397
-
398
- .premium-gallery-load-more-btn div {
399
- margin-right: 3px;
400
- }
401
-
402
- .premium-gallery-load-more-btn .premium-loader {
403
- display: inline-block;
404
- width: 20px;
405
- height: 20px;
406
- }
407
-
408
- /** * Video */
409
- .pa-gallery-img .pa-gallery-lightbox-wrap {
410
- display: inline-block;
411
- }
412
-
413
- .premium-img-gallery-no-lightbox .premium-gallery-video-item .pa-gallery-img,
414
- .pa-gallery-img .pa-gallery-video-icon {
415
- cursor: pointer;
416
- }
417
-
418
- .pa-gallery-img-container iframe,
419
- .pa-gallery-img-container video {
420
- position: absolute;
421
- visibility: hidden;
422
- top: 0;
423
- right: 0;
424
- max-width: 100%;
425
- width: 100%;
426
- height: 100%;
427
- margin: 0;
428
- line-height: 1;
429
- border: none;
430
- }
431
-
432
- .pa-gallery-img-container video {
433
- -o-object-fit: contain;
434
- object-fit: contain;
435
- }
436
-
437
- .pa-gallery-icons-inner-container svg,
438
- .pa-gallery-icons-caption-cell svg {
439
- width: 14px;
440
- height: 14px;
441
- }
442
-
443
- .premium-gallery-gradient-layer {
444
- position: absolute;
445
- bottom: 40px;
446
- width: 100%;
447
- height: 20px;
448
- background: -webkit-gradient(linear, left bottom, left top, from(#17181f), to(rgba(255, 255, 255, 0)));
449
- background: -webkit-linear-gradient(bottom, #17181f 0%, rgba(255, 255, 255, 0) 100%);
450
- background: linear-gradient(to top, #17181f 0%, rgba(255, 255, 255, 0) 100%);
451
  }
1
+ /******** Premium Media Grid ********/
2
+ /************************************/
3
+ .premium-img-gallery-filter,
4
+ .premium-blog-filter {
5
+ display: -webkit-box;
6
+ display: -webkit-flex;
7
+ display: -ms-flexbox;
8
+ -js-display: flex;
9
+ display: -moz-box;
10
+ display: flex;
11
+ -webkit-box-align: center;
12
+ -webkit-align-items: center;
13
+ -moz-box-align: center;
14
+ -ms-flex-align: center;
15
+ align-items: center;
16
+ -webkit-box-pack: center;
17
+ -webkit-justify-content: center;
18
+ -moz-box-pack: center;
19
+ -ms-flex-pack: center;
20
+ justify-content: center;
21
+ }
22
+
23
+ .premium-img-gallery {
24
+ clear: both;
25
+ overflow: hidden;
26
+ }
27
+
28
+ .premium-gallery-container .premium-gallery-item {
29
+ padding: 10px;
30
+ float: right;
31
+ /* Google Chrome isotope issue */
32
+ }
33
+
34
+ .premium-gallery-container .grid-sizer {
35
+ width: 33.33%;
36
+ }
37
+
38
+ .premium-img-gallery-filter .premium-gallery-cats-container li a.category,
39
+ .premium-blog-filter .premium-blog-filters-container li a.category {
40
+ outline: none;
41
+ text-decoration: none;
42
+ -webkit-border-radius: 75px;
43
+ border-radius: 75px;
44
+ margin: 15px 5px 20px;
45
+ padding: 7px 20px;
46
+ -webkit-transition: all 0.3s ease-in-out;
47
+ transition: all 0.3s ease-in-out;
48
+ }
49
+
50
+ /* .premium-img-gallery-filter .premium-gallery-cats-container li a.category span {
51
+ -webkit-transition: all 0.3s ease-in-out;
52
+ transition: all 0.3s ease-in-out;
53
+ } */
54
+
55
+ .pa-gallery-img {
56
+ position: relative;
57
+ }
58
+
59
+ .pa-gallery-img .pa-gallery-whole-link {
60
+ position: absolute;
61
+ top: 0;
62
+ right: 0;
63
+ width: 100%;
64
+ height: 100%;
65
+ }
66
+
67
+ .pa-gallery-img.style2 .pa-gallery-whole-link {
68
+ z-index: 99;
69
+ }
70
+
71
+ .pa-gallery-img-container {
72
+ overflow: hidden;
73
+ -webkit-backface-visibility: hidden;
74
+ -moz-backface-visibility: hidden;
75
+ -webkit-transform: translate3d(0, 0, 0);
76
+ transform: translate3d(0, 0, 0);
77
+ }
78
+
79
+ .pa-gallery-img-container img {
80
+ display: block;
81
+ width: 100%;
82
+ -webkit-transition: all 0.3s ease-in-out;
83
+ transition: all 0.3s ease-in-out;
84
+ }
85
+
86
+ .premium-img-gallery.gray img {
87
+ -webkit-filter: grayscale(100%);
88
+ filter: grayscale(100%);
89
+ }
90
+
91
+ .premium-img-gallery.zoomout img,
92
+ .premium-img-gallery.scale img {
93
+ -webkit-transform: scale(1.2);
94
+ -ms-transform: scale(1.2);
95
+ transform: scale(1.2);
96
+ }
97
+
98
+ .premium-img-gallery.sepia img {
99
+ -webkit-filter: sepia(30%);
100
+ filter: sepia(30%);
101
+ }
102
+
103
+ .premium-img-gallery.bright img {
104
+ -webkit-filter: brightness(1);
105
+ filter: brightness(1);
106
+ }
107
+
108
+ .premium-img-gallery.trans img {
109
+ -webkit-transform: translateX(15px) scale(1.1);
110
+ -ms-transform: translateX(15px) scale(1.1);
111
+ transform: translateX(15px) scale(1.1);
112
+ }
113
+
114
+ .pa-gallery-img .pa-gallery-magnific-image,
115
+ .pa-gallery-img .pa-gallery-img-link {
116
+ outline: none;
117
+ }
118
+
119
+ .pa-gallery-img .pa-gallery-magnific-image i,
120
+ .pa-gallery-img .pa-gallery-magnific-image svg,
121
+ .pa-gallery-img .pa-gallery-img-link i,
122
+ .pa-gallery-img .pa-gallery-img-link svg {
123
+ -webkit-transition: all 0.3s ease-in-out;
124
+ transition: all 0.3s ease-in-out;
125
+ }
126
+
127
+ .pa-gallery-img .pa-gallery-magnific-image span,
128
+ .pa-gallery-img .pa-gallery-img-link span {
129
+ line-height: 1;
130
+ display: inline-block;
131
+ opacity: 0;
132
+ margin: 0 5px;
133
+ padding: 15px;
134
+ -webkit-border-radius: 50%;
135
+ border-radius: 50%;
136
+ }
137
+
138
+ .pa-gallery-img.style2 .pa-gallery-magnific-image span,
139
+ .pa-gallery-img.style2 .pa-gallery-img-link span {
140
+ margin: 0 5px 20px;
141
+ }
142
+
143
+ .pa-gallery-img:hover .pa-gallery-magnific-image span {
144
+ -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
145
+ transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.3s;
146
+ }
147
+
148
+ .pa-gallery-img:hover .pa-gallery-img-link span {
149
+ -webkit-transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
150
+ transition: all 0.3s ease-in-out, opacity 0.5s ease-in-out 0.6s;
151
+ }
152
+
153
+ .pa-gallery-img:hover .pa-gallery-magnific-image span,
154
+ .pa-gallery-img:hover .pa-gallery-img-link span,
155
+ .premium-gallery-icon-show a.pa-gallery-video-icon span {
156
+ opacity: 1;
157
+ }
158
+
159
+ .premium-img-gallery-filter ul.premium-gallery-cats-container,
160
+ .premium-blog-filter ul.premium-blog-filters-container {
161
+ text-align: center;
162
+ margin: 0;
163
+ padding: 0;
164
+ }
165
+
166
+ .premium-img-gallery-filter .premium-gallery-cats-container li,
167
+ .premium-blog-filter .premium-blog-filters-container li {
168
+ list-style: none;
169
+ display: -webkit-inline-box;
170
+ display: -webkit-inline-flex;
171
+ display: -ms-inline-flexbox;
172
+ -js-display: inline-flex;
173
+ display: -moz-inline-box;
174
+ display: inline-flex;
175
+ }
176
+
177
+ .premium-img-gallery.zoomin .pa-gallery-img:hover img {
178
+ -webkit-transform: scale(1.1);
179
+ -ms-transform: scale(1.1);
180
+ transform: scale(1.1);
181
+ }
182
+
183
+ .premium-img-gallery.zoomout .pa-gallery-img:hover img {
184
+ -webkit-transform: scale(1);
185
+ -ms-transform: scale(1);
186
+ transform: scale(1);
187
+ }
188
+
189
+ .premium-img-gallery.scale .pa-gallery-img:hover img {
190
+ -webkit-transform: scale(1.3) rotate(-5deg);
191
+ -ms-transform: scale(1.3) rotate(-5deg);
192
+ transform: scale(1.3) rotate(-5deg);
193
+ }
194
+
195
+ .premium-img-gallery.gray .pa-gallery-img:hover img {
196
+ -webkit-filter: grayscale(0%);
197
+ filter: grayscale(0%);
198
+ }
199
+
200
+ .premium-img-gallery.blur .pa-gallery-img:hover img {
201
+ -webkit-filter: blur(3px);
202
+ filter: blur(3px);
203
+ }
204
+
205
+ .premium-img-gallery.sepia .pa-gallery-img:hover img {
206
+ -webkit-filter: sepia(0%);
207
+ filter: sepia(0%);
208
+ }
209
+
210
+ .premium-img-gallery.trans .pa-gallery-img:hover img {
211
+ -webkit-transform: translateX(0px) scale(1.1);
212
+ -ms-transform: translateX(0px) scale(1.1);
213
+ transform: translateX(0px) scale(1.1);
214
+ }
215
+
216
+ .premium-img-gallery.bright .pa-gallery-img:hover img {
217
+ -webkit-filter: brightness(1.2);
218
+ filter: brightness(1.2);
219
+ }
220
+
221
+ .pa-gallery-img .premium-gallery-caption {
222
+ padding: 10px;
223
+ }
224
+
225
+ .pa-gallery-img .premium-gallery-caption .premium-gallery-img-name {
226
+ margin-bottom: 0;
227
+ }
228
+
229
+ .pa-gallery-img.style1 {
230
+ overflow: hidden;
231
+ }
232
+
233
+ .pa-gallery-img:not(.style2) .pa-gallery-icons-wrapper {
234
+ position: absolute;
235
+ top: 0;
236
+ right: 0;
237
+ width: 100%;
238
+ height: 100%;
239
+ -webkit-transition: all 0.3s ease-in-out;
240
+ transition: all 0.3s ease-in-out;
241
+ }
242
+
243
+ .pa-gallery-img:not(.style2) .pa-gallery-icons-inner-container {
244
+ position: absolute;
245
+ top: 33.33%;
246
+ width: 100%;
247
+ text-align: center;
248
+ -webkit-transform: translateY(-50%);
249
+ -ms-transform: translateY(-50%);
250
+ transform: translateY(-50%);
251
+ z-index: 999;
252
+ }
253
+
254
+ .pa-gallery-img.style1 .premium-gallery-caption {
255
+ position: absolute;
256
+ top: auto;
257
+ left: 0;
258
+ right: 0;
259
+ width: 100%;
260
+ -webkit-transition: all 500ms ease 0s;
261
+ transition: all 500ms ease 0s;
262
+ -webkit-transform: translate3d(0, 100%, 0);
263
+ -ms-transform: translate3d(0, 100%, 0);
264
+ transform: translate3d(0, 100%, 0);
265
+ }
266
+
267
+ .pa-gallery-img.default .premium-gallery-caption {
268
+ position: absolute;
269
+ top: auto;
270
+ left: 0;
271
+ right: 0;
272
+ width: 100%;
273
+ bottom: 0;
274
+ }
275
+
276
+ .pa-gallery-img.style1:hover .premium-gallery-caption {
277
+ -webkit-transform: translate3d(0, 0, 0);
278
+ -ms-transform: translate3d(0, 0, 0);
279
+ transform: translate3d(0, 0, 0);
280
+ bottom: -1px !important;
281
+ }
282
+
283
+ .pa-gallery-img.style2 .pa-gallery-icons-caption-container {
284
+ position: absolute;
285
+ top: 0;
286
+ right: 0;
287
+ width: 100%;
288
+ height: 100%;
289
+ opacity: 0;
290
+ -webkit-backface-visibility: hidden;
291
+ backface-visibility: hidden;
292
+ -webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
293
+ -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
294
+ transition: opacity 0.3s, -webkit-transform 0.3s;
295
+ transition: transform 0.3s, opacity 0.3s;
296
+ transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
297
+ z-index: 1;
298
+ background-color: rgba(108, 191, 226, 0.68);
299
+ display: -webkit-box;
300
+ display: -webkit-flex;
301
+ display: -ms-flexbox;
302
+ -js-display: flex;
303
+ display: -moz-box;
304
+ display: flex;
305
+ text-align: center;
306
+ -webkit-box-align: center;
307
+ -webkit-align-items: center;
308
+ -moz-box-align: center;
309
+ -ms-flex-align: center;
310
+ align-items: center;
311
+ }
312
+
313
+ .pa-gallery-img.style2 .pa-gallery-icons-caption-cell {
314
+ width: 100%;
315
+ }
316
+
317
+ .pa-gallery-img.style2:hover .pa-gallery-icons-caption-container {
318
+ opacity: 1;
319
+ -webkit-transform: translate(-15px, 15px);
320
+ -ms-transform: translate(-15px, 15px);
321
+ transform: translate(-15px, 15px);
322
+ }
323
+
324
+ .premium-clearfix {
325
+ clear: both;
326
+ }
327
+
328
+ .premium-gallery-container .pa-gallery-item {
329
+ padding: 10px;
330
+ }
331
+
332
+ /**
333
+ * Metro Layout
334
+ */
335
+ .premium-img-gallery-metro .premium-gallery-item {
336
+ overflow: hidden;
337
+ }
338
+
339
+ .premium-img-gallery-metro .pa-gallery-img {
340
+ height: 100%;
341
+ }
342
+
343
+ .premium-img-gallery-metro .pa-gallery-img-container {
344
+ height: 100%;
345
+ }
346
+
347
+ .premium-img-gallery-metro .pa-gallery-img-container img {
348
+ min-height: 100%;
349
+ width: 100%;
350
+ -o-object-fit: fill;
351
+ object-fit: fill;
352
+ }
353
+
354
+ .premium-img-gallery .premium-gallery-item-hidden {
355
+ visibility: hidden;
356
+ width: 0 !important;
357
+ height: 0 !important;
358
+ margin: 0 !important;
359
+ padding: 0 !important;
360
+ }
361
+
362
+ .premium-gallery-load-more .premium-gallery-load-more-btn {
363
+ -webkit-box-shadow: none;
364
+ box-shadow: none;
365
+ text-shadow: none;
366
+ border: none;
367
+ outline: none;
368
+ -webkit-box-align: center;
369
+ -ms-flex-align: center;
370
+ -webkit-align-items: center;
371
+ -moz-box-align: center;
372
+ align-items: center;
373
+ vertical-align: bottom;
374
+ cursor: pointer;
375
+ line-height: 1;
376
+ font-style: normal;
377
+ font-weight: normal;
378
+ background-image: none;
379
+ color: #fff;
380
+ -webkit-transition: all 0.3s ease-in-out;
381
+ transition: all 0.3s ease-in-out;
382
+ }
383
+
384
+ .premium-gallery-load-more-btn {
385
+ display: -webkit-inline-box;
386
+ display: -webkit-inline-flex;
387
+ display: -ms-inline-flexbox;
388
+ -js-display: inline-flex;
389
+ display: -moz-inline-box;
390
+ display: inline-flex;
391
+ -webkit-box-align: center;
392
+ -webkit-align-items: center;
393
+ -moz-box-align: center;
394
+ -ms-flex-align: center;
395
+ align-items: center;
396
+ }
397
+
398
+ .premium-gallery-load-more-btn div {
399
+ margin-right: 3px;
400
+ }
401
+
402
+ .premium-gallery-load-more-btn .premium-loader {
403
+ display: inline-block;
404
+ width: 20px;
405
+ height: 20px;
406
+ }
407
+
408
+ /** * Video */
409
+ .pa-gallery-img .pa-gallery-lightbox-wrap {
410
+ display: inline-block;
411
+ }
412
+
413
+ .premium-img-gallery-no-lightbox .premium-gallery-video-item .pa-gallery-img,
414
+ .pa-gallery-img .pa-gallery-video-icon {
415
+ cursor: pointer;
416
+ }
417
+
418
+ .pa-gallery-img-container iframe,
419
+ .pa-gallery-img-container video {
420
+ position: absolute;
421
+ visibility: hidden;
422
+ top: 0;
423
+ right: 0;
424
+ max-width: 100%;
425
+ width: 100%;
426
+ height: 100%;
427
+ margin: 0;
428
+ line-height: 1;
429
+ border: none;
430
+ }
431
+
432
+ .pa-gallery-img-container video {
433
+ -o-object-fit: contain;
434
+ object-fit: contain;
435
+ }
436
+
437
+ .pa-gallery-icons-inner-container svg,
438
+ .pa-gallery-icons-caption-cell svg {
439
+ width: 14px;
440
+ height: 14px;
441
+ }
442
+
443
+ .premium-gallery-gradient-layer {
444
+ position: absolute;
445
+ bottom: 40px;
446
+ width: 100%;
447
+ height: 20px;
448
+ background: -webkit-gradient(linear, left bottom, left top, from(#17181f), to(rgba(255, 255, 255, 0)));
449
+ background: -webkit-linear-gradient(bottom, #17181f 0%, rgba(255, 255, 255, 0) 100%);
450
+ background: linear-gradient(to top, #17181f 0%, rgba(255, 255, 255, 0) 100%);
451
  }
assets/frontend/css/premium-img-gallery.css CHANGED
@@ -273,8 +273,8 @@
273
  .premium-clearfix {
274
  clear: both; }
275
 
276
- /**
277
- * Metro Layout
278
  */
279
  .premium-img-gallery-metro .premium-gallery-item {
280
  overflow: hidden; }
273
  .premium-clearfix {
274
  clear: both; }
275
 
276
+ /**
277
+ * Metro Layout
278
  */
279
  .premium-img-gallery-metro .premium-gallery-item {
280
  overflow: hidden; }
assets/frontend/css/premium-nav-menu-rtl.css ADDED
@@ -0,0 +1,1365 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /************ Premium Nav Menu ************/
2
+ .premium-nav-menu-container ul {
3
+ list-style: none;
4
+ margin: 0;
5
+ }
6
+
7
+ .premium-nav-menu-container .premium-main-nav-menu {
8
+ -js-display: flex;
9
+ display: -webkit-box;
10
+ display: -webkit-flex;
11
+ display: -moz-box;
12
+ display: -ms-flexbox;
13
+ display: flex;
14
+ height: 100%;
15
+ }
16
+
17
+ /*Vertical Main Menu**/
18
+ .premium-nav-ver .premium-nav-menu-container {
19
+ width: 45%;
20
+ }
21
+
22
+ .premium-nav-ver .premium-main-nav-menu {
23
+ position: relative;
24
+ -webkit-box-orient: vertical;
25
+ -webkit-box-direction: normal;
26
+ -webkit-flex-direction: column;
27
+ -moz-box-orient: vertical;
28
+ -moz-box-direction: normal;
29
+ -ms-flex-direction: column;
30
+ flex-direction: column;
31
+ -webkit-box-align: start;
32
+ -webkit-align-items: flex-start;
33
+ -moz-box-align: start;
34
+ -ms-flex-align: start;
35
+ align-items: flex-start;
36
+ }
37
+
38
+ .premium-nav-ver:not(.premium-hamburger-menu)
39
+ .premium-nav-menu-item.menu-item-has-children
40
+ .premium-sub-menu {
41
+ visibility: hidden;
42
+ opacity: 0;
43
+ position: absolute;
44
+ min-width: 250px;
45
+ }
46
+
47
+ .premium-nav-ver:not(.premium-hamburger-menu)
48
+ .premium-nav-menu-item.menu-item-has-children:hover
49
+ > .premium-sub-menu,
50
+ .premium-nav-ver:not(.premium-hamburger-menu)
51
+ .premium-nav-menu-item.menu-item-has-children:hover
52
+ .premium-mega-content-container {
53
+ opacity: 1;
54
+ visibility: visible;
55
+ }
56
+
57
+ .premium-nav-ver .premium-nav-menu-item {
58
+ width: 100%;
59
+ }
60
+
61
+ .premium-nav-ver.premium-vertical-right .premium-mega-content-container,
62
+ .premium-nav-ver.premium-vertical-right
63
+ .premium-nav-menu-item.menu-item-has-children
64
+ .premium-sub-menu {
65
+ left: 100%;
66
+ top: 0;
67
+ }
68
+
69
+ .premium-nav-ver.premium-vertical-left .premium-mega-content-container,
70
+ .premium-nav-ver.premium-vertical-left
71
+ .premium-nav-menu-item.menu-item-has-children
72
+ .premium-sub-menu {
73
+ right: 100%;
74
+ top: 0;
75
+ }
76
+
77
+ .premium-nav-ver.premium-vertical-left .premium-menu-link {
78
+ -webkit-box-orient: horizontal;
79
+ -webkit-box-direction: reverse;
80
+ -webkit-flex-direction: row-reverse;
81
+ -moz-box-orient: horizontal;
82
+ -moz-box-direction: reverse;
83
+ -ms-flex-direction: row-reverse;
84
+ flex-direction: row-reverse;
85
+ }
86
+
87
+ /*Horizontal Main Menu**/
88
+ .premium-nav-hor .premium-nav-menu-container {
89
+ height: 60px;
90
+ }
91
+
92
+ .premium-nav-hor:not(.premium-hamburger-menu)
93
+ .premium-nav-menu-item
94
+ .premium-sub-menu {
95
+ visibility: hidden;
96
+ opacity: 0;
97
+ position: absolute;
98
+ min-width: 220px;
99
+ }
100
+
101
+ .premium-nav-hor:not(.premium-hamburger-menu)
102
+ .premium-nav-menu-item
103
+ > .premium-sub-menu,
104
+ .premium-nav-hor:not(.premium-hamburger-menu)
105
+ .premium-nav-menu-item
106
+ .premium-mega-content-container {
107
+ top: 100%;
108
+ }
109
+
110
+ .premium-nav-hor:not(.premium-hamburger-menu)
111
+ .premium-nav-menu-item
112
+ > .premium-sub-menu
113
+ .premium-sub-menu,
114
+ .premium-nav-hor:not(.premium-hamburger-menu)
115
+ .premium-nav-menu-item
116
+ .premium-mega-content-container
117
+ .premium-sub-menu {
118
+ right: 100%;
119
+ top: 0;
120
+ }
121
+
122
+ .premium-nav-hor:not(.premium-hamburger-menu)
123
+ .premium-nav-menu-item:hover
124
+ > .premium-sub-menu,
125
+ .premium-nav-hor:not(.premium-hamburger-menu)
126
+ .premium-nav-menu-item:hover
127
+ .premium-mega-content-container {
128
+ visibility: visible;
129
+ opacity: 1;
130
+ }
131
+
132
+ .premium-nav-hor:not(.premium-hamburger-menu)
133
+ .premium-nav-menu-item.premium-mega-item-static
134
+ .premium-mega-content-container {
135
+ left: 50%;
136
+ -webkit-transform: translateX(-50%);
137
+ -ms-transform: translateX(-50%);
138
+ transform: translateX(-50%);
139
+ }
140
+
141
+ .premium-nav-hor:not(.premium-hamburger-menu)
142
+ .premium-nav-menu-item:not(.premium-mega-item-static)
143
+ .premium-mega-content-container {
144
+ left: 0;
145
+ }
146
+
147
+ /**Mega Menu Container*/
148
+ .premium-mega-nav-item .premium-sub-menu {
149
+ display: none;
150
+ }
151
+
152
+ .premium-mega-nav-item {
153
+ position: relative;
154
+ }
155
+
156
+ .premium-mega-nav-item:hover .premium-mega-content-container {
157
+ visibility: visible;
158
+ opacity: 1;
159
+ }
160
+
161
+ .premium-mega-content-container {
162
+ visibility: hidden;
163
+ position: absolute;
164
+ z-index: 9999;
165
+ opacity: 0;
166
+ }
167
+
168
+ .premium-hamburger-menu .premium-mega-content-container,
169
+ .premium-nav-slide .premium-mega-content-container,
170
+ .premium-nav-dropdown .premium-mega-content-container {
171
+ visibility: visible;
172
+ position: relative;
173
+ opacity: 1;
174
+ }
175
+
176
+ /**Hamburger Menu*/
177
+ .premium-nav-widget-container a.premium-hamburger-toggle,
178
+ .premium-mobile-menu-outer-container a.premium-mobile-menu-close {
179
+ text-decoration: none;
180
+ }
181
+
182
+ .premium-nav-widget-container .premium-hamburger-toggle {
183
+ display: none;
184
+ -webkit-box-pack: center;
185
+ -webkit-justify-content: center;
186
+ -moz-box-pack: center;
187
+ -ms-flex-pack: center;
188
+ justify-content: center;
189
+ -webkit-box-align: center;
190
+ -webkit-align-items: center;
191
+ -moz-box-align: center;
192
+ -ms-flex-align: center;
193
+ align-items: center;
194
+ }
195
+
196
+ .premium-nav-widget-container .premium-hamburger-toggle i {
197
+ padding: 0.25em;
198
+ font-size: 22px;
199
+ }
200
+
201
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
202
+ width: 22px;
203
+ height: 22px;
204
+ }
205
+
206
+ .premium-nav-widget-container .premium-hamburger-toggle i,
207
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
208
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
209
+ color: #494c4f;
210
+ }
211
+
212
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
213
+ fill: #494c4f;
214
+ }
215
+
216
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
217
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
218
+ margin: 2px;
219
+ }
220
+
221
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
222
+ display: none;
223
+ }
224
+
225
+ .premium-mobile-menu-container {
226
+ width: 100%;
227
+ }
228
+
229
+ .premium-mobile-menu-container .premium-main-mobile-menu {
230
+ width: 100%;
231
+ }
232
+
233
+ .premium-mobile-menu-container ul {
234
+ list-style: none;
235
+ margin: 0;
236
+ }
237
+
238
+ .premium-mobile-menu-container .premium-mobile-menu,
239
+ .premium-mobile-menu-container .premium-sub-menu {
240
+ display: none;
241
+ -webkit-box-orient: vertical;
242
+ -webkit-box-direction: normal;
243
+ -webkit-flex-direction: column;
244
+ -moz-box-orient: vertical;
245
+ -moz-box-direction: normal;
246
+ -ms-flex-direction: column;
247
+ flex-direction: column;
248
+ }
249
+
250
+ .premium-mobile-menu-container .premium-nav-menu-item {
251
+ -webkit-box-orient: vertical;
252
+ -webkit-box-direction: normal;
253
+ -webkit-flex-direction: column;
254
+ -moz-box-orient: vertical;
255
+ -moz-box-direction: normal;
256
+ -ms-flex-direction: column;
257
+ flex-direction: column;
258
+ }
259
+
260
+ .premium-mobile-menu-container .premium-item-badge {
261
+ top: 50%;
262
+ left: 0;
263
+ -webkit-transform: translateY(-50%);
264
+ -ms-transform: translateY(-50%);
265
+ transform: translateY(-50%);
266
+ }
267
+
268
+ /**Vertical Hamburger Menu*/
269
+ .premium-mobile-menu-outer-container {
270
+ opacity: 0;
271
+ }
272
+
273
+ .premium-mobile-menu-outer-container.premium-vertical-toggle-open {
274
+ opacity: 1;
275
+ }
276
+
277
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container {
278
+ background-color: #f7f7f7;
279
+ width: 300px;
280
+ -webkit-transform: translateX(-300px);
281
+ -ms-transform: translateX(-300px);
282
+ transform: translateX(-300px);
283
+ height: 100%;
284
+ position: fixed;
285
+ top: 0;
286
+ left: 0;
287
+ overflow-x: hidden;
288
+ z-index: 10000;
289
+ -webkit-transition: 0.5s;
290
+ transition: 0.5s;
291
+ padding-top: 50px;
292
+ }
293
+
294
+ .premium-ver-hamburger-menu
295
+ .premium-mobile-menu-outer-container
296
+ .premium-mobile-menu {
297
+ -js-display: flex;
298
+ display: -webkit-box;
299
+ display: -webkit-flex;
300
+ display: -moz-box;
301
+ display: -ms-flexbox;
302
+ display: flex;
303
+ }
304
+
305
+ .premium-ver-hamburger-menu
306
+ .premium-mobile-menu-outer-container
307
+ .premium-mobile-menu-container {
308
+ margin-top: 50px;
309
+ }
310
+
311
+ .premium-ver-hamburger-menu
312
+ .premium-mobile-menu-outer-container
313
+ .premium-mobile-menu-container
314
+ .premium-item-badge {
315
+ -webkit-transform: translateY(0);
316
+ -ms-transform: translateY(0);
317
+ transform: translateY(0);
318
+ }
319
+
320
+ .premium-ver-hamburger-menu
321
+ .premium-mobile-menu-outer-container
322
+ .premium-mobile-menu-close {
323
+ position: absolute;
324
+ top: 9%;
325
+ right: 15px;
326
+ padding: 0 9px;
327
+ z-index: 10000;
328
+ -js-display: inline-flex;
329
+ display: -webkit-inline-box;
330
+ display: -webkit-inline-flex;
331
+ display: -moz-inline-box;
332
+ display: -ms-inline-flexbox;
333
+ display: inline-flex;
334
+ color: #494c4f;
335
+ -webkit-box-pack: center;
336
+ -webkit-justify-content: center;
337
+ -moz-box-pack: center;
338
+ -ms-flex-pack: center;
339
+ justify-content: center;
340
+ -webkit-box-align: center;
341
+ -webkit-align-items: center;
342
+ -moz-box-align: center;
343
+ -ms-flex-align: center;
344
+ align-items: center;
345
+ }
346
+
347
+ .premium-ver-hamburger-menu
348
+ .premium-mobile-menu-outer-container
349
+ .premium-mobile-menu-close
350
+ .premium-toggle-close {
351
+ margin: 5px;
352
+ }
353
+
354
+ .premium-ver-hamburger-menu
355
+ .premium-mobile-menu-outer-container
356
+ .premium-mobile-menu-close
357
+ svg {
358
+ width: 22px;
359
+ height: 22px;
360
+ fill: #494c4f;
361
+ }
362
+
363
+ .premium-ver-hamburger-menu
364
+ .premium-mobile-menu-outer-container
365
+ .premium-mobile-menu-close
366
+ i {
367
+ font-size: 22px;
368
+ }
369
+
370
+ .premium-ver-hamburger-menu .premium-vertical-toggle-open {
371
+ -webkit-transform: translateX(0) !important;
372
+ -ms-transform: translateX(0) !important;
373
+ transform: translateX(0) !important;
374
+ -webkit-transition: 0.5s;
375
+ transition: 0.5s;
376
+ }
377
+
378
+ /**Common*/
379
+ .premium-nav-slide-overlay {
380
+ display: none;
381
+ position: fixed;
382
+ top: 0;
383
+ left: 0;
384
+ right: 0;
385
+ bottom: 0;
386
+ -webkit-backface-visibility: hidden;
387
+ backface-visibility: hidden;
388
+ background: rgba(0, 0, 0, 0.6);
389
+ z-index: 9999;
390
+ }
391
+
392
+ .premium-nav-slide-overlay.premium-vertical-toggle-open {
393
+ display: block;
394
+ }
395
+
396
+ .premium-active-menu,
397
+ .premium-active-menu:not(.premium-mega-nav-item) > .premium-sub-menu,
398
+ .premium-active-menu.premium-mega-nav-item > .premium-mega-content-container {
399
+ -js-display: flex !important;
400
+ display: -webkit-box !important;
401
+ display: -webkit-flex !important;
402
+ display: -moz-box !important;
403
+ display: -ms-flexbox !important;
404
+ display: flex !important;
405
+ -webkit-box-orient: vertical;
406
+ -webkit-box-direction: normal;
407
+ -webkit-flex-direction: column;
408
+ -moz-box-orient: vertical;
409
+ -moz-box-direction: normal;
410
+ -ms-flex-direction: column;
411
+ flex-direction: column;
412
+ }
413
+
414
+ .premium-active-menu .premium-toggle-close {
415
+ display: block;
416
+ }
417
+
418
+ .premium-nav-menu-container .premium-sub-menu {
419
+ background-color: #fff;
420
+ }
421
+
422
+ .premium-mobile-menu-container li,
423
+ .premium-mobile-menu-container li > .premium-mega-content-container {
424
+ width: 100% !important;
425
+ }
426
+
427
+ .premium-item-icon,
428
+ .premium-sub-item-icon {
429
+ font-size: 13px;
430
+ margin: 0 7px;
431
+ }
432
+
433
+ .premium-item-icon svg,
434
+ .premium-sub-item-icon svg {
435
+ width: 100%;
436
+ height: 100%;
437
+ }
438
+
439
+ .premium-item-icon.premium-lottie-animation,
440
+ .premium-sub-item-icon.premium-lottie-animation {
441
+ width: 20px;
442
+ height: 20px;
443
+ -js-display: flex;
444
+ display: -webkit-box;
445
+ display: -webkit-flex;
446
+ display: -moz-box;
447
+ display: -ms-flexbox;
448
+ display: flex;
449
+ -webkit-box-pack: center;
450
+ -webkit-justify-content: center;
451
+ -moz-box-pack: center;
452
+ -ms-flex-pack: center;
453
+ justify-content: center;
454
+ }
455
+
456
+ .premium-item-icon.dashicons,
457
+ .premium-sub-item-icon.dashicons {
458
+ width: 13px;
459
+ height: 13px;
460
+ }
461
+
462
+ .premium-nav-menu-item {
463
+ position: relative;
464
+ }
465
+
466
+ .premium-nav-menu-item .premium-menu-link {
467
+ -js-display: flex;
468
+ display: -webkit-box;
469
+ display: -webkit-flex;
470
+ display: -moz-box;
471
+ display: -ms-flexbox;
472
+ display: flex;
473
+ -webkit-box-align: center;
474
+ -webkit-align-items: center;
475
+ -moz-box-align: center;
476
+ -ms-flex-align: center;
477
+ align-items: center;
478
+ height: 100%;
479
+ padding: 7px 10px;
480
+ text-decoration: none;
481
+ position: relative;
482
+ }
483
+
484
+ .premium-nav-menu-item .premium-dropdown-icon {
485
+ margin: 5px;
486
+ }
487
+
488
+ .premium-nav-menu-item.menu-item-has-children {
489
+ position: relative;
490
+ }
491
+
492
+ .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
493
+ max-width: 100%;
494
+ z-index: 9999;
495
+ }
496
+
497
+ .premium-nav-menu-item.menu-item-has-children
498
+ .premium-sub-menu
499
+ .premium-sub-menu-link {
500
+ -webkit-box-pack: start;
501
+ -webkit-justify-content: flex-start;
502
+ -moz-box-pack: start;
503
+ -ms-flex-pack: start;
504
+ justify-content: flex-start;
505
+ }
506
+
507
+ .premium-nav-menu-item .menu-link {
508
+ position: relative;
509
+ text-decoration: none;
510
+ }
511
+
512
+ .premium-item-badge,
513
+ .premium-sub-item-badge {
514
+ position: absolute;
515
+ padding: 1px 6px;
516
+ min-width: 35px;
517
+ text-align: center;
518
+ font-size: 10px;
519
+ -webkit-border-radius: 4px;
520
+ border-radius: 4px;
521
+ line-height: 1.8;
522
+ white-space: nowrap;
523
+ }
524
+
525
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-item-badge,
526
+ .premium-nav-hor:not(.premium-nav-slide) .premium-item-badge,
527
+ .premium-nav-hor:not(.premium-nav-dropdown) .premium-item-badge {
528
+ position: relative;
529
+ margin: 8px;
530
+ }
531
+
532
+ .premium-nav-hor .premium-sub-item-badge,
533
+ .premium-nav-slide .premium-sub-item-badge,
534
+ .premium-nav-dropdown .premium-sub-item-badge,
535
+ .premium-nav-ver.premium-vertical-right .premium-item-badge,
536
+ .premium-nav-ver.premium-vertical-right .premium-sub-item-badge {
537
+ top: 50%;
538
+ right: 0;
539
+ -webkit-transform: translateY(-50%);
540
+ -ms-transform: translateY(-50%);
541
+ transform: translateY(-50%);
542
+ }
543
+
544
+ .premium-nav-ver.premium-vertical-left .premium-item-badge,
545
+ .premium-nav-ver.premium-vertical-left .premium-sub-item-badge {
546
+ top: 50%;
547
+ right: 0;
548
+ -webkit-transform: translateY(-50%);
549
+ -ms-transform: translateY(-50%);
550
+ transform: translateY(-50%);
551
+ }
552
+
553
+ .premium-mega-nav-item .premium-sub-menu {
554
+ display: none;
555
+ }
556
+
557
+ .premium-mega-nav-item {
558
+ position: relative;
559
+ }
560
+
561
+ .premium-hamburger-menu .premium-mega-content-container,
562
+ .premium-nav-dropdown .premium-mega-content-container,
563
+ .premium-nav-slide .premium-mega-content-container {
564
+ display: none;
565
+ }
566
+
567
+ .premium-mega-item-static {
568
+ position: static !important;
569
+ }
570
+
571
+ .premium-hamburger-menu .premium-nav-menu-container {
572
+ display: none;
573
+ }
574
+
575
+ .premium-hamburger-menu .premium-hamburger-toggle {
576
+ -js-display: inline-flex;
577
+ display: -webkit-inline-box;
578
+ display: -webkit-inline-flex;
579
+ display: -moz-inline-box;
580
+ display: -ms-inline-flexbox;
581
+ display: inline-flex;
582
+ -webkit-box-orient: horizontal;
583
+ -webkit-box-direction: reverse;
584
+ -webkit-flex-direction: row-reverse;
585
+ -moz-box-orient: horizontal;
586
+ -moz-box-direction: reverse;
587
+ -ms-flex-direction: row-reverse;
588
+ flex-direction: row-reverse;
589
+ }
590
+
591
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-item-icon,
592
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-sub-item-icon,
593
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-item-icon,
594
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-sub-item-icon,
595
+ .premium-hidden-icon-yes.premium-nav-slide .premium-item-icon,
596
+ .premium-hidden-icon-yes.premium-nav-slide .premium-sub-item-icon {
597
+ display: none;
598
+ }
599
+
600
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-item-badge,
601
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-sub-item-badge,
602
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-item-badge,
603
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-sub-item-badge,
604
+ .premium-hidden-badge-yes.premium-nav-slide .premium-item-badge,
605
+ .premium-hidden-badge-yes.premium-nav-slide .premium-sub-item-badge {
606
+ display: none;
607
+ }
608
+
609
+ .premium-ham-dropdown .premium-mobile-menu-container,
610
+ .premium-nav-dropdown .premium-mobile-menu-container {
611
+ -js-display: flex;
612
+ display: -webkit-box;
613
+ display: -webkit-flex;
614
+ display: -moz-box;
615
+ display: -ms-flexbox;
616
+ display: flex;
617
+ }
618
+
619
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-close,
620
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-close {
621
+ display: inline !important;
622
+ }
623
+
624
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-text,
625
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-text {
626
+ display: none !important;
627
+ }
628
+
629
+ /*
630
+ * Pointer & Pointer Animations
631
+ */
632
+ .premium-menu-link-parent::before,
633
+ .premium-menu-link-parent::after {
634
+ display: block;
635
+ position: absolute;
636
+ -webkit-transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1);
637
+ transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1);
638
+ }
639
+
640
+ .premium-nav-pointer-underline .premium-menu-link-parent::after,
641
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
642
+ content: "";
643
+ bottom: 0;
644
+ }
645
+
646
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
647
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before {
648
+ content: "";
649
+ top: 0;
650
+ }
651
+
652
+ .premium-nav-pointer-underline .premium-menu-link-parent::before,
653
+ .premium-nav-pointer-underline .premium-menu-link-parent::after,
654
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
655
+ .premium-nav-pointer-overline .premium-menu-link-parent::after,
656
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before,
657
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
658
+ height: 3px;
659
+ width: 100%;
660
+ right: 0;
661
+ background-color: #55595c;
662
+ z-index: 2;
663
+ }
664
+
665
+ .premium-nav-menu-item:not(.premium-active-item)
666
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
667
+ .premium-nav-menu-item:not(.premium-active-item)
668
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
669
+ opacity: 0;
670
+ }
671
+
672
+ .premium-nav-pointer-underline.premium-nav-animation-none,
673
+ .premium-nav-pointer-overline.premium-nav-animation-none,
674
+ .premium-nav-pointer-double-line.premium-nav-animation-none {
675
+ -webkit-transition-duration: 0s;
676
+ transition-duration: 0s;
677
+ }
678
+
679
+ .premium-nav-pointer-underline.premium-nav-animation-none
680
+ .premium-menu-link-parent,
681
+ .premium-nav-pointer-underline.premium-nav-animation-none
682
+ .premium-menu-link-parent::before,
683
+ .premium-nav-pointer-underline.premium-nav-animation-none
684
+ .premium-menu-link-parent::after,
685
+ .premium-nav-pointer-underline.premium-nav-animation-none
686
+ .premium-menu-link-parent:focus,
687
+ .premium-nav-pointer-underline.premium-nav-animation-none
688
+ .premium-menu-link-parent:hover,
689
+ .premium-nav-pointer-overline.premium-nav-animation-none
690
+ .premium-menu-link-parent,
691
+ .premium-nav-pointer-overline.premium-nav-animation-none
692
+ .premium-menu-link-parent::before,
693
+ .premium-nav-pointer-overline.premium-nav-animation-none
694
+ .premium-menu-link-parent::after,
695
+ .premium-nav-pointer-overline.premium-nav-animation-none
696
+ .premium-menu-link-parent:focus,
697
+ .premium-nav-pointer-overline.premium-nav-animation-none
698
+ .premium-menu-link-parent:hover,
699
+ .premium-nav-pointer-double-line.premium-nav-animation-none
700
+ .premium-menu-link-parent,
701
+ .premium-nav-pointer-double-line.premium-nav-animation-none
702
+ .premium-menu-link-parent::before,
703
+ .premium-nav-pointer-double-line.premium-nav-animation-none
704
+ .premium-menu-link-parent::after,
705
+ .premium-nav-pointer-double-line.premium-nav-animation-none
706
+ .premium-menu-link-parent:focus,
707
+ .premium-nav-pointer-double-line.premium-nav-animation-none
708
+ .premium-menu-link-parent:hover {
709
+ -webkit-transition-duration: 0s;
710
+ transition-duration: 0s;
711
+ }
712
+
713
+ .premium-nav-pointer-underline.premium-nav-animation-slide
714
+ .premium-nav-menu-item:not(.premium-active-item)
715
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
716
+ .premium-nav-pointer-double-line.premium-nav-animation-slide
717
+ .premium-nav-menu-item:not(.premium-active-item)
718
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
719
+ width: 10px;
720
+ inset-inline-start: 100%;
721
+ }
722
+
723
+ .premium-nav-pointer-overline.premium-nav-animation-slide
724
+ .premium-nav-menu-item:not(.premium-active-item)
725
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
726
+ .premium-nav-pointer-double-line.premium-nav-animation-slide
727
+ .premium-nav-menu-item:not(.premium-active-item)
728
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
729
+ width: 10px;
730
+ left: -20px;
731
+ }
732
+
733
+ .premium-nav-pointer-underline.premium-nav-animation-grow
734
+ .premium-nav-menu-item:not(.premium-active-item)
735
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
736
+ .premium-nav-pointer-underline.premium-nav-animation-grow
737
+ .premium-nav-menu-item:not(.premium-active-item)
738
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
739
+ .premium-nav-pointer-overline.premium-nav-animation-grow
740
+ .premium-nav-menu-item:not(.premium-active-item)
741
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
742
+ .premium-nav-pointer-overline.premium-nav-animation-grow
743
+ .premium-nav-menu-item:not(.premium-active-item)
744
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
745
+ .premium-nav-pointer-double-line.premium-nav-animation-grow
746
+ .premium-nav-menu-item:not(.premium-active-item)
747
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
748
+ .premium-nav-pointer-double-line.premium-nav-animation-grow
749
+ .premium-nav-menu-item:not(.premium-active-item)
750
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
751
+ height: 0;
752
+ width: 0;
753
+ left: 50%;
754
+ }
755
+
756
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in
757
+ .premium-nav-menu-item:not(.premium-active-item)
758
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
759
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in
760
+ .premium-nav-menu-item:not(.premium-active-item)
761
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
762
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in
763
+ .premium-nav-menu-item:not(.premium-active-item)
764
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
765
+ top: -10px;
766
+ }
767
+
768
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in
769
+ .premium-nav-menu-item:not(.premium-active-item)
770
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
771
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in
772
+ .premium-nav-menu-item:not(.premium-active-item)
773
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
774
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in
775
+ .premium-nav-menu-item:not(.premium-active-item)
776
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
777
+ bottom: -10px;
778
+ }
779
+
780
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out
781
+ .premium-nav-menu-item:not(.premium-active-item)
782
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
783
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out
784
+ .premium-nav-menu-item:not(.premium-active-item)
785
+ .premium-menu-link-parent:not(:hover):not(:focus)::before,
786
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out
787
+ .premium-nav-menu-item:not(.premium-active-item)
788
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
789
+ top: 10px;
790
+ }
791
+
792
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out
793
+ .premium-nav-menu-item:not(.premium-active-item)
794
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
795
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out
796
+ .premium-nav-menu-item:not(.premium-active-item)
797
+ .premium-menu-link-parent:not(:hover):not(:focus)::after,
798
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out
799
+ .premium-nav-menu-item:not(.premium-active-item)
800
+ .premium-menu-link-parent:not(:hover):not(:focus)::after {
801
+ bottom: 10px;
802
+ }
803
+
804
+ .premium-nav-pointer-framed .premium-menu-link-parent::before {
805
+ content: "";
806
+ }
807
+
808
+ .premium-nav-pointer-framed .premium-menu-link-parent::before,
809
+ .premium-nav-pointer-framed .premium-menu-link-parent::after {
810
+ background: transparent;
811
+ left: 0;
812
+ top: 0;
813
+ bottom: 0;
814
+ right: 0;
815
+ border: 3px solid #55595c;
816
+ }
817
+
818
+ .premium-nav-pointer-framed.premium-nav-animation-grow
819
+ .premium-nav-menu-item:not(.premium-active-item)
820
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
821
+ -webkit-transform: scale(0.75);
822
+ -ms-transform: scale(0.75);
823
+ transform: scale(0.75);
824
+ }
825
+
826
+ .premium-nav-pointer-framed.premium-nav-animation-shrink
827
+ .premium-nav-menu-item:not(.premium-active-item)
828
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
829
+ -webkit-transform: scale(1.25);
830
+ -ms-transform: scale(1.25);
831
+ transform: scale(1.25);
832
+ }
833
+
834
+ .premium-nav-pointer-framed.premium-nav-animation-draw
835
+ .premium-menu-link-parent::before,
836
+ .premium-nav-pointer-framed.premium-nav-animation-draw
837
+ .premium-menu-link-parent::after {
838
+ width: 3px;
839
+ height: 3px;
840
+ }
841
+
842
+ .premium-nav-pointer-framed.premium-nav-animation-draw
843
+ .premium-menu-link-parent::before {
844
+ border-width: 0 3px 3px 0;
845
+ -webkit-transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s;
846
+ transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s;
847
+ }
848
+
849
+ .premium-nav-pointer-framed.premium-nav-animation-draw
850
+ .premium-menu-link-parent::after {
851
+ content: "";
852
+ top: auto;
853
+ bottom: 0;
854
+ left: 0;
855
+ right: auto;
856
+ border-width: 3px 0 0 3px;
857
+ -webkit-transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s;
858
+ transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s;
859
+ }
860
+
861
+ .premium-nav-pointer-framed.premium-nav-animation-draw
862
+ .premium-menu-link-parent:hover::before,
863
+ .premium-nav-pointer-framed.premium-nav-animation-draw
864
+ .premium-menu-link-parent:focus::before {
865
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
866
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
867
+ }
868
+
869
+ .premium-nav-pointer-framed.premium-nav-animation-draw
870
+ .premium-menu-link-parent:hover::after,
871
+ .premium-nav-pointer-framed.premium-nav-animation-draw
872
+ .premium-menu-link-parent:focus::after {
873
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
874
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
875
+ }
876
+
877
+ .premium-nav-pointer-framed.premium-nav-animation-draw
878
+ .premium-menu-link-parent:hover::before,
879
+ .premium-nav-pointer-framed.premium-nav-animation-draw
880
+ .premium-menu-link-parent:hover::after,
881
+ .premium-nav-pointer-framed.premium-nav-animation-draw
882
+ .premium-menu-link-parent:focus::before,
883
+ .premium-nav-pointer-framed.premium-nav-animation-draw
884
+ .premium-menu-link-parent:focus::after {
885
+ width: 100%;
886
+ height: 100%;
887
+ }
888
+
889
+ .premium-nav-pointer-framed.premium-nav-animation-draw
890
+ .premium-active-item
891
+ .premium-menu-link-parent::before {
892
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
893
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
894
+ }
895
+
896
+ .premium-nav-pointer-framed.premium-nav-animation-draw
897
+ .premium-active-item
898
+ .premium-menu-link-parent::after {
899
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
900
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
901
+ }
902
+
903
+ .premium-nav-pointer-framed.premium-nav-animation-draw
904
+ .premium-active-item
905
+ .premium-menu-link-parent::before,
906
+ .premium-nav-pointer-framed.premium-nav-animation-draw
907
+ .premium-active-item
908
+ .premium-menu-link-parent::after {
909
+ width: 100%;
910
+ height: 100%;
911
+ }
912
+
913
+ .premium-nav-pointer-framed.premium-nav-animation-corners
914
+ .premium-menu-link-parent::before {
915
+ border-width: 3px 3px 0 0;
916
+ }
917
+
918
+ .premium-nav-pointer-framed.premium-nav-animation-corners
919
+ .premium-menu-link-parent::after {
920
+ content: "";
921
+ top: auto;
922
+ bottom: 0;
923
+ left: 0;
924
+ right: auto;
925
+ border-width: 0 0 3px 3px;
926
+ }
927
+
928
+ .premium-nav-pointer-framed.premium-nav-animation-corners
929
+ .premium-menu-link-parent::before,
930
+ .premium-nav-pointer-framed.premium-nav-animation-corners
931
+ .premium-menu-link-parent::after {
932
+ width: 3px;
933
+ height: 3px;
934
+ }
935
+
936
+ .premium-nav-pointer-framed.premium-nav-animation-corners
937
+ .premium-menu-link-parent:hover::before,
938
+ .premium-nav-pointer-framed.premium-nav-animation-corners
939
+ .premium-menu-link-parent:hover::after,
940
+ .premium-nav-pointer-framed.premium-nav-animation-corners
941
+ .premium-menu-link-parent:focus::before,
942
+ .premium-nav-pointer-framed.premium-nav-animation-corners
943
+ .premium-menu-link-parent:focus::after {
944
+ width: 100%;
945
+ height: 100%;
946
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
947
+ transition: opacity 2ms, width 0.4s, height 0.4s;
948
+ }
949
+
950
+ .premium-nav-pointer-framed.premium-nav-animation-corners
951
+ .premium-active-item
952
+ .premium-menu-link-parent::before,
953
+ .premium-nav-pointer-framed.premium-nav-animation-corners
954
+ .premium-active-item
955
+ .premium-menu-link-parent::after {
956
+ width: 100%;
957
+ height: 100%;
958
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
959
+ transition: opacity 2ms, width 0.4s, height 0.4s;
960
+ }
961
+
962
+ .premium-nav-pointer-text.premium-nav-animation-grow
963
+ .premium-menu-link-parent:hover,
964
+ .premium-nav-pointer-text.premium-nav-animation-grow
965
+ .premium-menu-link-parent:focus {
966
+ -webkit-transform: scale(1.2);
967
+ -ms-transform: scale(1.2);
968
+ transform: scale(1.2);
969
+ }
970
+
971
+ .premium-nav-pointer-text.premium-nav-animation-shrink
972
+ .premium-menu-link-parent:hover,
973
+ .premium-nav-pointer-text.premium-nav-animation-shrink
974
+ .premium-menu-link-parent:focus {
975
+ -webkit-transform: scale(0.8);
976
+ -ms-transform: scale(0.8);
977
+ transform: scale(0.8);
978
+ }
979
+
980
+ .premium-nav-pointer-text.premium-nav-animation-sink
981
+ .premium-menu-link-parent:hover,
982
+ .premium-nav-pointer-text.premium-nav-animation-sink
983
+ .premium-menu-link-parent:focus {
984
+ -webkit-transform: translateY(8px);
985
+ -ms-transform: translateY(8px);
986
+ transform: translateY(8px);
987
+ }
988
+
989
+ .premium-nav-pointer-text.premium-nav-animation-float
990
+ .premium-menu-link-parent:hover,
991
+ .premium-nav-pointer-text.premium-nav-animation-float
992
+ .premium-menu-link-parent:focus {
993
+ -webkit-transform: translateY(-8px);
994
+ -ms-transform: translateY(-8px);
995
+ transform: translateY(-8px);
996
+ }
997
+
998
+ .premium-nav-pointer-text.premium-nav-animation-skew
999
+ .premium-menu-link-parent:hover,
1000
+ .premium-nav-pointer-text.premium-nav-animation-skew
1001
+ .premium-menu-link-parent:focus {
1002
+ -webkit-transform: skew(-8deg);
1003
+ -ms-transform: skew(-8deg);
1004
+ transform: skew(-8deg);
1005
+ }
1006
+
1007
+ .premium-nav-pointer-text.premium-nav-animation-rotate
1008
+ .premium-menu-link-parent:hover,
1009
+ .premium-nav-pointer-text.premium-nav-animation-rotate
1010
+ .premium-menu-link-parent:focus {
1011
+ -webkit-transform: rotate(6deg);
1012
+ -ms-transform: rotate(6deg);
1013
+ transform: rotate(6deg);
1014
+ }
1015
+
1016
+ .premium-nav-pointer-background .premium-menu-link-parent::before {
1017
+ top: 0;
1018
+ left: 0;
1019
+ right: 0;
1020
+ bottom: 0;
1021
+ background: #55595c;
1022
+ background-color: #55595c;
1023
+ z-index: -1;
1024
+ }
1025
+
1026
+ .premium-nav-pointer-background .premium-menu-link-parent::before,
1027
+ .premium-nav-pointer-background .premium-menu-link-parent::after {
1028
+ content: "";
1029
+ -webkit-transition: 0.3s;
1030
+ transition: 0.3s;
1031
+ }
1032
+
1033
+ .premium-nav-pointer-background.premium-nav-animation-grow
1034
+ .premium-menu-link-parent::before {
1035
+ -webkit-transform: scale(0.5);
1036
+ -ms-transform: scale(0.5);
1037
+ transform: scale(0.5);
1038
+ }
1039
+
1040
+ .premium-nav-pointer-background.premium-nav-animation-grow
1041
+ .premium-menu-link-parent:hover::before,
1042
+ .premium-nav-pointer-background.premium-nav-animation-grow
1043
+ .premium-menu-link-parent:focus::before {
1044
+ -webkit-transform: scale(1);
1045
+ -ms-transform: scale(1);
1046
+ transform: scale(1);
1047
+ }
1048
+
1049
+ .premium-nav-pointer-background.premium-nav-animation-grow
1050
+ .premium-active-item
1051
+ .premium-menu-link-parent::before {
1052
+ -webkit-transform: scale(1);
1053
+ -ms-transform: scale(1);
1054
+ transform: scale(1);
1055
+ }
1056
+
1057
+ .premium-nav-pointer-background.premium-nav-animation-shrink
1058
+ .premium-nav-menu-item:not(.premium-active-item)
1059
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1060
+ -webkit-transform: scale(1.2);
1061
+ -ms-transform: scale(1.2);
1062
+ transform: scale(1.2);
1063
+ -webkit-transition: 0.3;
1064
+ transition: 0.3;
1065
+ }
1066
+
1067
+ .premium-nav-pointer-background.premium-nav-animation-sweep-left
1068
+ .premium-nav-menu-item:not(.premium-active-item)
1069
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1070
+ left: 100%;
1071
+ }
1072
+
1073
+ .premium-nav-pointer-background.premium-nav-animation-sweep-right
1074
+ .premium-nav-menu-item:not(.premium-active-item)
1075
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1076
+ right: 100%;
1077
+ }
1078
+
1079
+ .premium-nav-pointer-background.premium-nav-animation-sweep-up
1080
+ .premium-nav-menu-item:not(.premium-active-item)
1081
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1082
+ top: 100%;
1083
+ }
1084
+
1085
+ .premium-nav-pointer-background.premium-nav-animation-sweep-down
1086
+ .premium-nav-menu-item:not(.premium-active-item)
1087
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1088
+ bottom: 100%;
1089
+ }
1090
+
1091
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1092
+ .premium-menu-link-parent::after,
1093
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1094
+ .premium-menu-link-parent::after {
1095
+ top: 0;
1096
+ left: 0;
1097
+ right: 0;
1098
+ bottom: 0;
1099
+ background: #55595c;
1100
+ background-color: #55595c;
1101
+ z-index: -1;
1102
+ }
1103
+
1104
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1105
+ .premium-menu-link-parent::before {
1106
+ top: 0;
1107
+ bottom: 100%;
1108
+ }
1109
+
1110
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1111
+ .premium-menu-link-parent::after {
1112
+ top: 100%;
1113
+ bottom: 0;
1114
+ }
1115
+
1116
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1117
+ .premium-menu-link-parent:hover::before,
1118
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1119
+ .premium-menu-link-parent:focus::before {
1120
+ bottom: 50%;
1121
+ }
1122
+
1123
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1124
+ .premium-menu-link-parent:hover::after,
1125
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1126
+ .premium-menu-link-parent:focus::after {
1127
+ top: 50%;
1128
+ }
1129
+
1130
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1131
+ .premium-active-item
1132
+ .premium-menu-link-parent::before {
1133
+ bottom: 50%;
1134
+ }
1135
+
1136
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical
1137
+ .premium-active-item
1138
+ .premium-menu-link-parent::after {
1139
+ top: 50%;
1140
+ }
1141
+
1142
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-vertical
1143
+ .premium-nav-menu-item:not(.premium-active-item)
1144
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1145
+ bottom: 50%;
1146
+ top: 50%;
1147
+ }
1148
+
1149
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1150
+ .premium-menu-link-parent::before {
1151
+ right: 0;
1152
+ left: 100%;
1153
+ }
1154
+
1155
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1156
+ .premium-menu-link-parent::after {
1157
+ right: 100%;
1158
+ left: 0;
1159
+ }
1160
+
1161
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1162
+ .premium-menu-link-parent:hover::before,
1163
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1164
+ .premium-menu-link-parent:focus::before {
1165
+ left: 50%;
1166
+ }
1167
+
1168
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1169
+ .premium-menu-link-parent:hover::after,
1170
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1171
+ .premium-menu-link-parent:focus::after {
1172
+ right: 50%;
1173
+ }
1174
+
1175
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1176
+ .premium-active-item
1177
+ .premium-menu-link-parent::before {
1178
+ left: 50%;
1179
+ }
1180
+
1181
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal
1182
+ .premium-active-item
1183
+ .premium-menu-link-parent::after {
1184
+ right: 50%;
1185
+ }
1186
+
1187
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-horizontal
1188
+ .premium-nav-menu-item:not(.premium-active-item)
1189
+ .premium-menu-link-parent:not(:hover):not(:focus)::before {
1190
+ left: 50%;
1191
+ right: 50%;
1192
+ }
1193
+
1194
+ .premium-active-item::before,
1195
+ .premium-active-item::after,
1196
+ .premium-menu-link-parent:hover::before,
1197
+ .premium-menu-link-parent:hover::after,
1198
+ .premium-menu-link-parent:focus::before,
1199
+ .premium-menu-link-parent:focus::after {
1200
+ -webkit-transform: scale(1);
1201
+ -ms-transform: scale(1);
1202
+ transform: scale(1);
1203
+ }
1204
+
1205
+ /**Sub Menu Animation*/
1206
+ .premium-nav-menu-item .premium-sub-menu,
1207
+ .premium-nav-menu-item .premium-mega-content-container {
1208
+ -webkit-transition: 0.5s all ease-in-out;
1209
+ transition: 0.5s all ease-in-out;
1210
+ }
1211
+
1212
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
1213
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
1214
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu,
1215
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
1216
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
1217
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu {
1218
+ -webkit-transform: translate(0);
1219
+ -ms-transform: translate(0);
1220
+ transform: translate(0);
1221
+ }
1222
+
1223
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
1224
+ .premium-sub-menu,
1225
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
1226
+ .premium-mega-content-container,
1227
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu)
1228
+ .premium-sub-menu,
1229
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu)
1230
+ .premium-mega-content-container {
1231
+ -webkit-transform: translateY(20%);
1232
+ -ms-transform: translateY(20%);
1233
+ transform: translateY(20%);
1234
+ }
1235
+
1236
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
1237
+ .premium-sub-menu,
1238
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
1239
+ .premium-mega-content-container,
1240
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu)
1241
+ .premium-sub-menu,
1242
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu)
1243
+ .premium-mega-content-container {
1244
+ -webkit-transform: translateY(-20%);
1245
+ -ms-transform: translateY(-20%);
1246
+ transform: translateY(-20%);
1247
+ }
1248
+
1249
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
1250
+ .premium-sub-menu,
1251
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
1252
+ .premium-mega-content-container,
1253
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu)
1254
+ .premium-sub-menu,
1255
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu)
1256
+ .premium-mega-content-container {
1257
+ -webkit-transform: translateX(-20%);
1258
+ -ms-transform: translateX(-20%);
1259
+ transform: translateX(-20%);
1260
+ }
1261
+
1262
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
1263
+ .premium-sub-menu,
1264
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
1265
+ .premium-mega-content-container,
1266
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu)
1267
+ .premium-sub-menu,
1268
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu)
1269
+ .premium-mega-content-container {
1270
+ -webkit-transform: translateX(20%);
1271
+ -ms-transform: translateX(20%);
1272
+ transform: translateX(20%);
1273
+ }
1274
+
1275
+ /**Horizontal - Static Mega Content*/
1276
+ /*UP*/
1277
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
1278
+ .premium-mega-item-static
1279
+ .premium-mega-content-container {
1280
+ -webkit-transform: translateX(-50%) translateY(10%);
1281
+ -ms-transform: translateX(-50%) translateY(10%);
1282
+ transform: translateX(-50%) translateY(10%);
1283
+ }
1284
+
1285
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu)
1286
+ .premium-mega-item-static:hover
1287
+ .premium-mega-content-container {
1288
+ -webkit-transform: translateX(-50%) translateY(0);
1289
+ -ms-transform: translateX(-50%) translateY(0);
1290
+ transform: translateX(-50%) translateY(0);
1291
+ }
1292
+
1293
+ /*DOWN*/
1294
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
1295
+ .premium-mega-item-static
1296
+ .premium-mega-content-container {
1297
+ -webkit-transform: translateX(-50%) translateY(-10%);
1298
+ -ms-transform: translateX(-50%) translateY(-10%);
1299
+ transform: translateX(-50%) translateY(-10%);
1300
+ }
1301
+
1302
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu)
1303
+ .premium-mega-item-static:hover
1304
+ .premium-mega-content-container {
1305
+ -webkit-transform: translateX(-50%) translateY(0);
1306
+ -ms-transform: translateX(-50%) translateY(0);
1307
+ transform: translateX(-50%) translateY(0);
1308
+ }
1309
+
1310
+ /*Left*/
1311
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
1312
+ .premium-mega-item-static
1313
+ .premium-mega-content-container {
1314
+ -webkit-transform: translateX(-40%);
1315
+ -ms-transform: translateX(-40%);
1316
+ transform: translateX(-40%);
1317
+ }
1318
+
1319
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu)
1320
+ .premium-mega-item-static:hover
1321
+ .premium-mega-content-container {
1322
+ -webkit-transform: translateX(-50%);
1323
+ -ms-transform: translateX(-50%);
1324
+ transform: translateX(-50%);
1325
+ }
1326
+
1327
+ /*Right*/
1328
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
1329
+ .premium-mega-item-static
1330
+ .premium-mega-content-container {
1331
+ -webkit-transform: translateX(-60%);
1332
+ -ms-transform: translateX(-60%);
1333
+ transform: translateX(-60%);
1334
+ }
1335
+
1336
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu)
1337
+ .premium-mega-item-static:hover
1338
+ .premium-mega-content-container {
1339
+ -webkit-transform: translateX(-50%);
1340
+ -ms-transform: translateX(-50%);
1341
+ transform: translateX(-50%);
1342
+ }
1343
+
1344
+ /**Vertical - Static Mega Content*/
1345
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu)
1346
+ .premium-mega-item-static:hover
1347
+ .premium-mega-content-container,
1348
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu)
1349
+ .premium-mega-item-static:hover
1350
+ .premium-mega-content-container {
1351
+ -webkit-transform: translateY(0);
1352
+ -ms-transform: translateY(0);
1353
+ transform: translateY(0);
1354
+ }
1355
+
1356
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu)
1357
+ .premium-mega-item-static:hover
1358
+ .premium-mega-content-container,
1359
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu)
1360
+ .premium-mega-item-static:hover
1361
+ .premium-mega-content-container {
1362
+ -webkit-transform: translateX(0);
1363
+ -ms-transform: translateX(0);
1364
+ transform: translateX(0);
1365
+ }
assets/frontend/css/premium-nav-menu.css ADDED
@@ -0,0 +1,898 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /************ Premium Nav Menu ************/
2
+ .premium-nav-menu-container ul {
3
+ list-style: none;
4
+ margin: 0; }
5
+
6
+ .premium-nav-menu-container .premium-main-nav-menu {
7
+ -js-display: flex;
8
+ display: -webkit-box;
9
+ display: -webkit-flex;
10
+ display: -moz-box;
11
+ display: -ms-flexbox;
12
+ display: flex;
13
+ height: 100%; }
14
+
15
+ /*Vertical Main Menu**/
16
+ .premium-nav-ver .premium-nav-menu-container {
17
+ width: 45%; }
18
+
19
+ .premium-nav-ver .premium-main-nav-menu {
20
+ position: relative;
21
+ -webkit-box-orient: vertical;
22
+ -webkit-box-direction: normal;
23
+ -webkit-flex-direction: column;
24
+ -moz-box-orient: vertical;
25
+ -moz-box-direction: normal;
26
+ -ms-flex-direction: column;
27
+ flex-direction: column;
28
+ -webkit-box-align: start;
29
+ -webkit-align-items: flex-start;
30
+ -moz-box-align: start;
31
+ -ms-flex-align: start;
32
+ align-items: flex-start; }
33
+
34
+ .premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
35
+ visibility: hidden;
36
+ opacity: 0;
37
+ position: absolute;
38
+ min-width: 250px; }
39
+
40
+ .premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children:hover > .premium-sub-menu,
41
+ .premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item.menu-item-has-children:hover .premium-mega-content-container {
42
+ opacity: 1;
43
+ visibility: visible; }
44
+
45
+ .premium-nav-ver .premium-nav-menu-item {
46
+ width: 100%; }
47
+
48
+ .premium-nav-ver.premium-vertical-right .premium-mega-content-container,
49
+ .premium-nav-ver.premium-vertical-right .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
50
+ left: 100%;
51
+ top: 0; }
52
+
53
+ .premium-nav-ver.premium-vertical-left .premium-mega-content-container,
54
+ .premium-nav-ver.premium-vertical-left .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
55
+ right: 100%;
56
+ top: 0; }
57
+
58
+ .premium-nav-ver.premium-vertical-left .premium-menu-link {
59
+ -webkit-box-orient: horizontal;
60
+ -webkit-box-direction: reverse;
61
+ -webkit-flex-direction: row-reverse;
62
+ -moz-box-orient: horizontal;
63
+ -moz-box-direction: reverse;
64
+ -ms-flex-direction: row-reverse;
65
+ flex-direction: row-reverse; }
66
+
67
+ /*Horizontal Main Menu**/
68
+ .premium-nav-hor .premium-nav-menu-container {
69
+ height: 60px; }
70
+
71
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-sub-menu {
72
+ visibility: hidden;
73
+ opacity: 0;
74
+ position: absolute;
75
+ min-width: 220px; }
76
+
77
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item > .premium-sub-menu,
78
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-mega-content-container {
79
+ top: 100%; }
80
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item > .premium-sub-menu .premium-sub-menu,
81
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item .premium-mega-content-container .premium-sub-menu {
82
+ left: 100%;
83
+ top: 0; }
84
+
85
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
86
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover .premium-mega-content-container {
87
+ visibility: visible;
88
+ opacity: 1; }
89
+
90
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item.premium-mega-item-static .premium-mega-content-container {
91
+ left: 50%;
92
+ -webkit-transform: translateX(-50%);
93
+ -ms-transform: translateX(-50%);
94
+ transform: translateX(-50%); }
95
+
96
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:not(.premium-mega-item-static) .premium-mega-content-container {
97
+ left: 0; }
98
+
99
+ /**Mega Menu Container*/
100
+ .premium-mega-nav-item .premium-sub-menu {
101
+ display: none; }
102
+
103
+ .premium-mega-nav-item {
104
+ position: relative; }
105
+ .premium-mega-nav-item:hover .premium-mega-content-container {
106
+ visibility: visible;
107
+ opacity: 1; }
108
+
109
+ .premium-mega-content-container {
110
+ visibility: hidden;
111
+ position: absolute;
112
+ z-index: 9999;
113
+ opacity: 0; }
114
+
115
+ .premium-hamburger-menu .premium-mega-content-container,
116
+ .premium-nav-slide .premium-mega-content-container,
117
+ .premium-nav-dropdown .premium-mega-content-container {
118
+ visibility: visible;
119
+ position: relative;
120
+ opacity: 1; }
121
+
122
+ /**Hamburger Menu*/
123
+ .premium-nav-widget-container a.premium-hamburger-toggle,
124
+ .premium-mobile-menu-outer-container a.premium-mobile-menu-close {
125
+ text-decoration: none; }
126
+
127
+ .premium-nav-widget-container .premium-hamburger-toggle {
128
+ display: none;
129
+ -webkit-box-pack: center;
130
+ -webkit-justify-content: center;
131
+ -moz-box-pack: center;
132
+ -ms-flex-pack: center;
133
+ justify-content: center;
134
+ -webkit-box-align: center;
135
+ -webkit-align-items: center;
136
+ -moz-box-align: center;
137
+ -ms-flex-align: center;
138
+ align-items: center; }
139
+ .premium-nav-widget-container .premium-hamburger-toggle i {
140
+ padding: 0.25em;
141
+ font-size: 22px; }
142
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
143
+ width: 22px;
144
+ height: 22px; }
145
+ .premium-nav-widget-container .premium-hamburger-toggle i,
146
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
147
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
148
+ color: #494c4f; }
149
+ .premium-nav-widget-container .premium-hamburger-toggle svg {
150
+ fill: #494c4f; }
151
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-text,
152
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
153
+ margin: 2px; }
154
+ .premium-nav-widget-container .premium-hamburger-toggle .premium-toggle-close {
155
+ display: none; }
156
+
157
+ .premium-mobile-menu-container {
158
+ width: 100%; }
159
+ .premium-mobile-menu-container .premium-main-mobile-menu {
160
+ width: 100%; }
161
+ .premium-mobile-menu-container ul {
162
+ list-style: none;
163
+ margin: 0; }
164
+ .premium-mobile-menu-container .premium-mobile-menu,
165
+ .premium-mobile-menu-container .premium-sub-menu {
166
+ display: none;
167
+ -webkit-box-orient: vertical;
168
+ -webkit-box-direction: normal;
169
+ -webkit-flex-direction: column;
170
+ -moz-box-orient: vertical;
171
+ -moz-box-direction: normal;
172
+ -ms-flex-direction: column;
173
+ flex-direction: column; }
174
+ .premium-mobile-menu-container .premium-nav-menu-item {
175
+ -webkit-box-orient: vertical;
176
+ -webkit-box-direction: normal;
177
+ -webkit-flex-direction: column;
178
+ -moz-box-orient: vertical;
179
+ -moz-box-direction: normal;
180
+ -ms-flex-direction: column;
181
+ flex-direction: column; }
182
+ .premium-mobile-menu-container .premium-item-badge {
183
+ top: 50%;
184
+ right: 0;
185
+ left: unset;
186
+ -webkit-transform: translateY(-50%);
187
+ -ms-transform: translateY(-50%);
188
+ transform: translateY(-50%); }
189
+
190
+ /**Vertical Hamburger Menu*/
191
+ .premium-mobile-menu-outer-container {
192
+ opacity: 0; }
193
+ .premium-mobile-menu-outer-container.premium-vertical-toggle-open {
194
+ opacity: 1; }
195
+
196
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container {
197
+ background-color: #f7f7f7;
198
+ width: 300px;
199
+ -webkit-transform: translateX(-300px);
200
+ -ms-transform: translateX(-300px);
201
+ transform: translateX(-300px);
202
+ height: 100%;
203
+ position: fixed;
204
+ top: 0;
205
+ left: 0;
206
+ overflow-x: hidden;
207
+ z-index: 10000;
208
+ -webkit-transition: 0.5s;
209
+ transition: 0.5s;
210
+ padding-top: 50px; }
211
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu {
212
+ -js-display: flex;
213
+ display: -webkit-box;
214
+ display: -webkit-flex;
215
+ display: -moz-box;
216
+ display: -ms-flexbox;
217
+ display: flex; }
218
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-container {
219
+ margin-top: 50px; }
220
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-container .premium-item-badge {
221
+ -webkit-transform: translateY(0);
222
+ -ms-transform: translateY(0);
223
+ transform: translateY(0); }
224
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close {
225
+ position: absolute;
226
+ top: 9%;
227
+ right: 15px;
228
+ padding: 0 9px;
229
+ z-index: 10000;
230
+ -js-display: inline-flex;
231
+ display: -webkit-inline-box;
232
+ display: -webkit-inline-flex;
233
+ display: -moz-inline-box;
234
+ display: -ms-inline-flexbox;
235
+ display: inline-flex;
236
+ color: #494c4f;
237
+ -webkit-box-pack: center;
238
+ -webkit-justify-content: center;
239
+ -moz-box-pack: center;
240
+ -ms-flex-pack: center;
241
+ justify-content: center;
242
+ -webkit-box-align: center;
243
+ -webkit-align-items: center;
244
+ -moz-box-align: center;
245
+ -ms-flex-align: center;
246
+ align-items: center; }
247
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close .premium-toggle-close {
248
+ margin: 5px; }
249
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close svg {
250
+ width: 22px;
251
+ height: 22px;
252
+ fill: #494c4f; }
253
+ .premium-ver-hamburger-menu .premium-mobile-menu-outer-container .premium-mobile-menu-close i {
254
+ font-size: 22px; }
255
+
256
+ .premium-ver-hamburger-menu .premium-vertical-toggle-open {
257
+ -webkit-transform: translateX(0) !important;
258
+ -ms-transform: translateX(0) !important;
259
+ transform: translateX(0) !important;
260
+ -webkit-transition: 0.5s;
261
+ transition: 0.5s; }
262
+
263
+ /**Common*/
264
+ .premium-nav-slide-overlay {
265
+ display: none;
266
+ position: fixed;
267
+ top: 0;
268
+ left: 0;
269
+ right: 0;
270
+ bottom: 0;
271
+ -webkit-backface-visibility: hidden;
272
+ backface-visibility: hidden;
273
+ background: rgba(0, 0, 0, 0.6);
274
+ z-index: 9999; }
275
+ .premium-nav-slide-overlay.premium-vertical-toggle-open {
276
+ display: block; }
277
+
278
+ .premium-active-menu,
279
+ .premium-active-menu:not(.premium-mega-nav-item) > .premium-sub-menu,
280
+ .premium-active-menu.premium-mega-nav-item > .premium-mega-content-container {
281
+ -js-display: flex !important;
282
+ display: -webkit-box !important;
283
+ display: -webkit-flex !important;
284
+ display: -moz-box !important;
285
+ display: -ms-flexbox !important;
286
+ display: flex !important;
287
+ -webkit-box-orient: vertical;
288
+ -webkit-box-direction: normal;
289
+ -webkit-flex-direction: column;
290
+ -moz-box-orient: vertical;
291
+ -moz-box-direction: normal;
292
+ -ms-flex-direction: column;
293
+ flex-direction: column; }
294
+
295
+ .premium-active-menu .premium-toggle-close {
296
+ display: block; }
297
+
298
+ .premium-nav-menu-container .premium-sub-menu {
299
+ background-color: #fff; }
300
+
301
+ .premium-mobile-menu-container li,
302
+ .premium-mobile-menu-container li > .premium-mega-content-container {
303
+ width: 100% !important; }
304
+
305
+ .premium-item-icon,
306
+ .premium-sub-item-icon {
307
+ font-size: 13px;
308
+ margin: 0 7px; }
309
+ .premium-item-icon svg,
310
+ .premium-sub-item-icon svg {
311
+ width: 100%;
312
+ height: 100%; }
313
+ .premium-item-icon.premium-lottie-animation,
314
+ .premium-sub-item-icon.premium-lottie-animation {
315
+ width: 20px;
316
+ height: 20px;
317
+ -js-display: flex;
318
+ display: -webkit-box;
319
+ display: -webkit-flex;
320
+ display: -moz-box;
321
+ display: -ms-flexbox;
322
+ display: flex;
323
+ -webkit-box-pack: center;
324
+ -webkit-justify-content: center;
325
+ -moz-box-pack: center;
326
+ -ms-flex-pack: center;
327
+ justify-content: center; }
328
+ .premium-item-icon.dashicons,
329
+ .premium-sub-item-icon.dashicons {
330
+ width: 13px;
331
+ height: 13px; }
332
+
333
+ .premium-nav-menu-item {
334
+ position: relative; }
335
+ .premium-nav-menu-item .premium-menu-link {
336
+ -js-display: flex;
337
+ display: -webkit-box;
338
+ display: -webkit-flex;
339
+ display: -moz-box;
340
+ display: -ms-flexbox;
341
+ display: flex;
342
+ -webkit-box-align: center;
343
+ -webkit-align-items: center;
344
+ -moz-box-align: center;
345
+ -ms-flex-align: center;
346
+ align-items: center;
347
+ height: 100%;
348
+ padding: 7px 10px;
349
+ text-decoration: none;
350
+ position: relative; }
351
+ .premium-nav-menu-item .premium-dropdown-icon {
352
+ margin: 5px; }
353
+ .premium-nav-menu-item.menu-item-has-children {
354
+ position: relative; }
355
+ .premium-nav-menu-item.menu-item-has-children .premium-sub-menu {
356
+ z-index: 9999; }
357
+ .premium-nav-menu-item.menu-item-has-children .premium-sub-menu .premium-sub-menu-link {
358
+ -webkit-box-pack: start;
359
+ -webkit-justify-content: flex-start;
360
+ -moz-box-pack: start;
361
+ -ms-flex-pack: start;
362
+ justify-content: flex-start; }
363
+ .premium-nav-menu-item .menu-link {
364
+ position: relative;
365
+ text-decoration: none; }
366
+
367
+ .premium-item-badge,
368
+ .premium-sub-item-badge {
369
+ position: absolute;
370
+ padding: 1px 6px;
371
+ min-width: 35px;
372
+ text-align: center;
373
+ font-size: 10px;
374
+ -webkit-border-radius: 4px;
375
+ border-radius: 4px;
376
+ line-height: 1.8;
377
+ white-space: nowrap; }
378
+
379
+ .premium-nav-hor:not(.premium-hamburger-menu) .premium-item-badge, .premium-nav-hor:not(.premium-nav-slide) .premium-item-badge, .premium-nav-hor:not(.premium-nav-dropdown) .premium-item-badge {
380
+ position: relative;
381
+ margin: 8px; }
382
+
383
+ .premium-nav-hor .premium-sub-item-badge,
384
+ .premium-nav-slide .premium-sub-item-badge,
385
+ .premium-nav-dropdown .premium-sub-item-badge,
386
+ .premium-nav-ver.premium-vertical-right .premium-item-badge,
387
+ .premium-nav-ver.premium-vertical-right .premium-sub-item-badge {
388
+ top: 50%;
389
+ right: 0;
390
+ -webkit-transform: translateY(-50%);
391
+ -ms-transform: translateY(-50%);
392
+ transform: translateY(-50%); }
393
+
394
+ .premium-nav-ver.premium-vertical-left .premium-item-badge,
395
+ .premium-nav-ver.premium-vertical-left .premium-sub-item-badge {
396
+ top: 50%;
397
+ left: 0;
398
+ -webkit-transform: translateY(-50%);
399
+ -ms-transform: translateY(-50%);
400
+ transform: translateY(-50%); }
401
+
402
+ .premium-mega-nav-item .premium-sub-menu {
403
+ display: none; }
404
+
405
+ .premium-mega-nav-item {
406
+ position: relative; }
407
+
408
+ .premium-hamburger-menu .premium-mega-content-container,
409
+ .premium-nav-dropdown .premium-mega-content-container,
410
+ .premium-nav-slide .premium-mega-content-container {
411
+ display: none; }
412
+
413
+ .premium-mega-item-static {
414
+ position: static !important; }
415
+
416
+ .premium-hamburger-menu .premium-nav-menu-container,
417
+ .premium-nav-dropdown .premium-nav-menu-container,
418
+ .premium-nav-slide .premium-nav-menu-container {
419
+ display: none; }
420
+
421
+ .premium-hamburger-menu .premium-hamburger-toggle,
422
+ .premium-nav-dropdown .premium-hamburger-toggle,
423
+ .premium-nav-slide .premium-hamburger-toggle {
424
+ -js-display: inline-flex;
425
+ display: -webkit-inline-box;
426
+ display: -webkit-inline-flex;
427
+ display: -moz-inline-box;
428
+ display: -ms-inline-flexbox;
429
+ display: inline-flex; }
430
+
431
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-item-icon,
432
+ .premium-hidden-icon-yes.premium-hamburger-menu .premium-sub-item-icon,
433
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-item-icon,
434
+ .premium-hidden-icon-yes.premium-nav-dropdown .premium-sub-item-icon,
435
+ .premium-hidden-icon-yes.premium-nav-slide .premium-item-icon,
436
+ .premium-hidden-icon-yes.premium-nav-slide .premium-sub-item-icon {
437
+ display: none; }
438
+
439
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-item-badge,
440
+ .premium-hidden-badge-yes.premium-hamburger-menu .premium-sub-item-badge,
441
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-item-badge,
442
+ .premium-hidden-badge-yes.premium-nav-dropdown .premium-sub-item-badge,
443
+ .premium-hidden-badge-yes.premium-nav-slide .premium-item-badge,
444
+ .premium-hidden-badge-yes.premium-nav-slide .premium-sub-item-badge {
445
+ display: none; }
446
+
447
+ .premium-ham-dropdown .premium-mobile-menu-container,
448
+ .premium-nav-dropdown .premium-mobile-menu-container {
449
+ -js-display: flex;
450
+ display: -webkit-box;
451
+ display: -webkit-flex;
452
+ display: -moz-box;
453
+ display: -ms-flexbox;
454
+ display: flex; }
455
+
456
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-close,
457
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-close {
458
+ display: inline !important; }
459
+
460
+ .premium-ham-dropdown .premium-toggle-opened .premium-toggle-text,
461
+ .premium-nav-dropdown .premium-toggle-opened .premium-toggle-text {
462
+ display: none !important; }
463
+
464
+ /*
465
+ * Pointer & Pointer Animations
466
+ */
467
+ .premium-menu-link-parent::before, .premium-menu-link-parent::after {
468
+ display: block;
469
+ position: absolute;
470
+ -webkit-transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1);
471
+ transition: all 0.3s cubic-bezier(0.58, 0.3, 0.005, 1); }
472
+
473
+ .premium-nav-pointer-underline .premium-menu-link-parent::after,
474
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
475
+ content: "";
476
+ bottom: 0; }
477
+
478
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
479
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before {
480
+ content: "";
481
+ top: 0; }
482
+
483
+ .premium-nav-pointer-underline .premium-menu-link-parent::before, .premium-nav-pointer-underline .premium-menu-link-parent::after,
484
+ .premium-nav-pointer-overline .premium-menu-link-parent::before,
485
+ .premium-nav-pointer-overline .premium-menu-link-parent::after,
486
+ .premium-nav-pointer-double-line .premium-menu-link-parent::before,
487
+ .premium-nav-pointer-double-line .premium-menu-link-parent::after {
488
+ height: 3px;
489
+ width: 100%;
490
+ left: 0;
491
+ background-color: #55595c;
492
+ z-index: 2; }
493
+
494
+ .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before, .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
495
+ opacity: 0; }
496
+
497
+ .premium-nav-pointer-underline.premium-nav-animation-none,
498
+ .premium-nav-pointer-overline.premium-nav-animation-none,
499
+ .premium-nav-pointer-double-line.premium-nav-animation-none {
500
+ -webkit-transition-duration: 0s;
501
+ transition-duration: 0s; }
502
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent,
503
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent::before,
504
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent::after,
505
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent:focus,
506
+ .premium-nav-pointer-underline.premium-nav-animation-none .premium-menu-link-parent:hover,
507
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent,
508
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent::before,
509
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent::after,
510
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent:focus,
511
+ .premium-nav-pointer-overline.premium-nav-animation-none .premium-menu-link-parent:hover,
512
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent,
513
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent::before,
514
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent::after,
515
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent:focus,
516
+ .premium-nav-pointer-double-line.premium-nav-animation-none .premium-menu-link-parent:hover {
517
+ -webkit-transition-duration: 0s;
518
+ transition-duration: 0s; }
519
+
520
+ .premium-nav-pointer-underline.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
521
+ .premium-nav-pointer-double-line.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
522
+ width: 10px;
523
+ inset-inline-start: 100%; }
524
+
525
+ .premium-nav-pointer-overline.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
526
+ .premium-nav-pointer-double-line.premium-nav-animation-slide .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
527
+ width: 10px;
528
+ left: -20px; }
529
+
530
+ .premium-nav-pointer-underline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before, .premium-nav-pointer-underline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
531
+ .premium-nav-pointer-overline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
532
+ .premium-nav-pointer-overline.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
533
+ .premium-nav-pointer-double-line.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
534
+ .premium-nav-pointer-double-line.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
535
+ height: 0;
536
+ width: 0;
537
+ left: 50%; }
538
+
539
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
540
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
541
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
542
+ top: -10px; }
543
+
544
+ .premium-nav-pointer-underline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
545
+ .premium-nav-pointer-overline.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
546
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-in .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
547
+ bottom: -10px; }
548
+
549
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
550
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before,
551
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
552
+ top: 10px; }
553
+
554
+ .premium-nav-pointer-underline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
555
+ .premium-nav-pointer-overline.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after,
556
+ .premium-nav-pointer-double-line.premium-nav-animation-drop-out .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::after {
557
+ bottom: 10px; }
558
+
559
+ .premium-nav-pointer-framed .premium-menu-link-parent::before {
560
+ content: ""; }
561
+
562
+ .premium-nav-pointer-framed .premium-menu-link-parent::before, .premium-nav-pointer-framed .premium-menu-link-parent::after {
563
+ background: transparent;
564
+ left: 0;
565
+ top: 0;
566
+ bottom: 0;
567
+ right: 0;
568
+ border: 3px solid #55595c; }
569
+
570
+ .premium-nav-pointer-framed.premium-nav-animation-grow .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
571
+ -webkit-transform: scale(0.75);
572
+ -ms-transform: scale(0.75);
573
+ transform: scale(0.75); }
574
+
575
+ .premium-nav-pointer-framed.premium-nav-animation-shrink .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
576
+ -webkit-transform: scale(1.25);
577
+ -ms-transform: scale(1.25);
578
+ transform: scale(1.25); }
579
+
580
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::after {
581
+ width: 3px;
582
+ height: 3px; }
583
+
584
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::before {
585
+ border-width: 0 0 3px 3px;
586
+ -webkit-transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s;
587
+ transition: width 0.1s 0.2s, height 0.1s 0.3s, opacity 0.12s 0.22s; }
588
+
589
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent::after {
590
+ content: "";
591
+ top: auto;
592
+ bottom: 0;
593
+ left: auto;
594
+ right: 0;
595
+ border-width: 3px 3px 0 0;
596
+ -webkit-transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s;
597
+ transition: width 0.1s, height 0.1s 0.1s, opacity 0.02s 0.18s; }
598
+
599
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::before {
600
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
601
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s; }
602
+
603
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::after, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::after {
604
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
605
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s; }
606
+
607
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:hover::after, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-menu-link-parent:focus::after {
608
+ width: 100%;
609
+ height: 100%; }
610
+
611
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::before {
612
+ -webkit-transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s;
613
+ transition: opacity 0.02s, height 0.1s, width 0.1s 0.1s; }
614
+
615
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::after {
616
+ -webkit-transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s;
617
+ transition: opacity 0.02s 0.2s, height 0.1s 0.2s, width 0.1s 0.3s; }
618
+
619
+ .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-draw .premium-active-item .premium-menu-link-parent::after {
620
+ width: 100%;
621
+ height: 100%; }
622
+
623
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::before {
624
+ border-width: 3px 0 0 3px; }
625
+
626
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::after {
627
+ content: "";
628
+ top: auto;
629
+ bottom: 0;
630
+ left: auto;
631
+ right: 0;
632
+ border-width: 0 3px 3px 0; }
633
+
634
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent::after {
635
+ width: 3px;
636
+ height: 3px; }
637
+
638
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:hover::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:hover::after, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:focus::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-menu-link-parent:focus::after {
639
+ width: 100%;
640
+ height: 100%;
641
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
642
+ transition: opacity 2ms, width 0.4s, height 0.4s; }
643
+
644
+ .premium-nav-pointer-framed.premium-nav-animation-corners .premium-active-item .premium-menu-link-parent::before, .premium-nav-pointer-framed.premium-nav-animation-corners .premium-active-item .premium-menu-link-parent::after {
645
+ width: 100%;
646
+ height: 100%;
647
+ -webkit-transition: opacity 2ms, width 0.4s, height 0.4s;
648
+ transition: opacity 2ms, width 0.4s, height 0.4s; }
649
+
650
+ .premium-nav-pointer-text.premium-nav-animation-grow .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-grow .premium-menu-link-parent:focus {
651
+ -webkit-transform: scale(1.2);
652
+ -ms-transform: scale(1.2);
653
+ transform: scale(1.2); }
654
+
655
+ .premium-nav-pointer-text.premium-nav-animation-shrink .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-shrink .premium-menu-link-parent:focus {
656
+ -webkit-transform: scale(0.8);
657
+ -ms-transform: scale(0.8);
658
+ transform: scale(0.8); }
659
+
660
+ .premium-nav-pointer-text.premium-nav-animation-sink .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-sink .premium-menu-link-parent:focus {
661
+ -webkit-transform: translateY(8px);
662
+ -ms-transform: translateY(8px);
663
+ transform: translateY(8px); }
664
+
665
+ .premium-nav-pointer-text.premium-nav-animation-float .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-float .premium-menu-link-parent:focus {
666
+ -webkit-transform: translateY(-8px);
667
+ -ms-transform: translateY(-8px);
668
+ transform: translateY(-8px); }
669
+
670
+ .premium-nav-pointer-text.premium-nav-animation-skew .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-skew .premium-menu-link-parent:focus {
671
+ -webkit-transform: skew(-8deg);
672
+ -ms-transform: skew(-8deg);
673
+ transform: skew(-8deg); }
674
+
675
+ .premium-nav-pointer-text.premium-nav-animation-rotate .premium-menu-link-parent:hover, .premium-nav-pointer-text.premium-nav-animation-rotate .premium-menu-link-parent:focus {
676
+ -webkit-transform: rotate(6deg);
677
+ -ms-transform: rotate(6deg);
678
+ transform: rotate(6deg); }
679
+
680
+ .premium-nav-pointer-background .premium-menu-link-parent::before {
681
+ top: 0;
682
+ left: 0;
683
+ right: 0;
684
+ bottom: 0;
685
+ background: #55595c;
686
+ background-color: #55595c;
687
+ z-index: -1; }
688
+
689
+ .premium-nav-pointer-background .premium-menu-link-parent::before, .premium-nav-pointer-background .premium-menu-link-parent::after {
690
+ content: "";
691
+ -webkit-transition: 0.3s;
692
+ transition: 0.3s; }
693
+
694
+ .premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent::before {
695
+ -webkit-transform: scale(0.5);
696
+ -ms-transform: scale(0.5);
697
+ transform: scale(0.5); }
698
+
699
+ .premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent:hover::before, .premium-nav-pointer-background.premium-nav-animation-grow .premium-menu-link-parent:focus::before {
700
+ -webkit-transform: scale(1);
701
+ -ms-transform: scale(1);
702
+ transform: scale(1); }
703
+
704
+ .premium-nav-pointer-background.premium-nav-animation-grow .premium-active-item .premium-menu-link-parent::before {
705
+ -webkit-transform: scale(1);
706
+ -ms-transform: scale(1);
707
+ transform: scale(1); }
708
+
709
+ .premium-nav-pointer-background.premium-nav-animation-shrink .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
710
+ -webkit-transform: scale(1.2);
711
+ -ms-transform: scale(1.2);
712
+ transform: scale(1.2);
713
+ -webkit-transition: 0.3;
714
+ transition: 0.3; }
715
+
716
+ .premium-nav-pointer-background.premium-nav-animation-sweep-left .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
717
+ left: 100%; }
718
+
719
+ .premium-nav-pointer-background.premium-nav-animation-sweep-right .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
720
+ right: 100%; }
721
+
722
+ .premium-nav-pointer-background.premium-nav-animation-sweep-up .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
723
+ top: 100%; }
724
+
725
+ .premium-nav-pointer-background.premium-nav-animation-sweep-down .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
726
+ bottom: 100%; }
727
+
728
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::after, .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::after {
729
+ top: 0;
730
+ left: 0;
731
+ right: 0;
732
+ bottom: 0;
733
+ background: #55595c;
734
+ background-color: #55595c;
735
+ z-index: -1; }
736
+
737
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::before {
738
+ top: 0;
739
+ bottom: 100%; }
740
+
741
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent::after {
742
+ top: 100%;
743
+ bottom: 0; }
744
+
745
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:hover::before, .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:focus::before {
746
+ bottom: 50%; }
747
+
748
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:hover::after, .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-menu-link-parent:focus::after {
749
+ top: 50%; }
750
+
751
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-active-item .premium-menu-link-parent::before {
752
+ bottom: 50%; }
753
+
754
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-vertical .premium-active-item .premium-menu-link-parent::after {
755
+ top: 50%; }
756
+
757
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-vertical .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
758
+ bottom: 50%;
759
+ top: 50%; }
760
+
761
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::before {
762
+ right: 0;
763
+ left: 100%; }
764
+
765
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent::after {
766
+ right: 100%;
767
+ left: 0; }
768
+
769
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:hover::before, .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:focus::before {
770
+ left: 50%; }
771
+
772
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:hover::after, .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-menu-link-parent:focus::after {
773
+ right: 50%; }
774
+
775
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-active-item .premium-menu-link-parent::before {
776
+ left: 50%; }
777
+
778
+ .premium-nav-pointer-background.premium-nav-animation-shutter-in-horizontal .premium-active-item .premium-menu-link-parent::after {
779
+ right: 50%; }
780
+
781
+ .premium-nav-pointer-background.premium-nav-animation-shutter-out-horizontal .premium-nav-menu-item:not(.premium-active-item) .premium-menu-link-parent:not(:hover):not(:focus)::before {
782
+ left: 50%;
783
+ right: 50%; }
784
+
785
+ .premium-active-item::before, .premium-active-item::after,
786
+ .premium-menu-link-parent:hover::before,
787
+ .premium-menu-link-parent:hover::after,
788
+ .premium-menu-link-parent:focus::before,
789
+ .premium-menu-link-parent:focus::after {
790
+ -webkit-transform: scale(1);
791
+ -ms-transform: scale(1);
792
+ transform: scale(1); }
793
+
794
+ /**Sub Menu Animation*/
795
+ .premium-nav-menu-item .premium-sub-menu,
796
+ .premium-nav-menu-item .premium-mega-content-container {
797
+ -webkit-transition: 0.2s all ease-in-out;
798
+ transition: 0.2s all ease-in-out; }
799
+
800
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
801
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
802
+ [class*="premium-nav-slide-"].premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu,
803
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-sub-menu,
804
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-nav-menu-item:hover > .premium-mega-content-container,
805
+ [class*="premium-nav-slide-"].premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu:hover > .premium-sub-menu {
806
+ -webkit-transform: translate(0);
807
+ -ms-transform: translate(0);
808
+ transform: translate(0); }
809
+
810
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
811
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
812
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
813
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
814
+ -webkit-transform: translateY(20%);
815
+ -ms-transform: translateY(20%);
816
+ transform: translateY(20%); }
817
+
818
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
819
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
820
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
821
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
822
+ -webkit-transform: translateY(-20%);
823
+ -ms-transform: translateY(-20%);
824
+ transform: translateY(-20%); }
825
+
826
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
827
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
828
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
829
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
830
+ -webkit-transform: translateX(-20%);
831
+ -ms-transform: translateX(-20%);
832
+ transform: translateX(-20%); }
833
+
834
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-sub-menu,
835
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-content-container,
836
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-sub-menu,
837
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-content-container {
838
+ -webkit-transform: translateX(20%);
839
+ -ms-transform: translateX(20%);
840
+ transform: translateX(20%); }
841
+
842
+ /**Horizontal - Static Mega Content*/
843
+ /*UP*/
844
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
845
+ -webkit-transform: translateX(-50%) translateY(10%);
846
+ -ms-transform: translateX(-50%) translateY(10%);
847
+ transform: translateX(-50%) translateY(10%); }
848
+
849
+ .premium-nav-slide-up.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
850
+ -webkit-transform: translateX(-50%) translateY(0);
851
+ -ms-transform: translateX(-50%) translateY(0);
852
+ transform: translateX(-50%) translateY(0); }
853
+
854
+ /*DOWN*/
855
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
856
+ -webkit-transform: translateX(-50%) translateY(-10%);
857
+ -ms-transform: translateX(-50%) translateY(-10%);
858
+ transform: translateX(-50%) translateY(-10%); }
859
+
860
+ .premium-nav-slide-down.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
861
+ -webkit-transform: translateX(-50%) translateY(0);
862
+ -ms-transform: translateX(-50%) translateY(0);
863
+ transform: translateX(-50%) translateY(0); }
864
+
865
+ /*Left*/
866
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
867
+ -webkit-transform: translateX(-40%);
868
+ -ms-transform: translateX(-40%);
869
+ transform: translateX(-40%); }
870
+
871
+ .premium-nav-slide-left.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
872
+ -webkit-transform: translateX(-50%);
873
+ -ms-transform: translateX(-50%);
874
+ transform: translateX(-50%); }
875
+
876
+ /*Right*/
877
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static .premium-mega-content-container {
878
+ -webkit-transform: translateX(-60%);
879
+ -ms-transform: translateX(-60%);
880
+ transform: translateX(-60%); }
881
+
882
+ .premium-nav-slide-right.premium-nav-hor:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
883
+ -webkit-transform: translateX(-50%);
884
+ -ms-transform: translateX(-50%);
885
+ transform: translateX(-50%); }
886
+
887
+ /**Vertical - Static Mega Content*/
888
+ .premium-nav-slide-down.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container,
889
+ .premium-nav-slide-up.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
890
+ -webkit-transform: translateY(0);
891
+ -ms-transform: translateY(0);
892
+ transform: translateY(0); }
893
+
894
+ .premium-nav-slide-right.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container,
895
+ .premium-nav-slide-left.premium-nav-ver:not(.premium-hamburger-menu) .premium-mega-item-static:hover .premium-mega-content-container {
896
+ -webkit-transform: translateX(0);
897
+ -ms-transform: translateX(0);
898
+ transform: translateX(0); }
assets/frontend/css/premium-pricing-table-rtl.css CHANGED
@@ -1,290 +1,290 @@
1
- /**************** Premium Pricing Table ****************/
2
- /*******************************************************/
3
- .premium-pricing-table-container {
4
- position: relative;
5
- text-align: center;
6
- display: inline-block;
7
- width: 100%;
8
- -webkit-transition: all 0.3s ease-in-out;
9
- transition: all 0.3s ease-in-out;
10
- }
11
-
12
- .premium-pricing-icon-container {
13
- -js-display: flex;
14
- display: -webkit-box;
15
- display: -webkit-flex;
16
- display: -moz-box;
17
- display: -ms-flexbox;
18
- display: flex;
19
- -webkit-box-pack: center;
20
- -webkit-justify-content: center;
21
- -moz-box-pack: center;
22
- -ms-flex-pack: center;
23
- justify-content: center;
24
- line-height: 0;
25
- }
26
-
27
- .premium-pricing-icon-container .premium-pricing-icon {
28
- display: inline-block;
29
- }
30
-
31
- .premium-pricing-icon-container .premium-pricing-image {
32
- overflow: hidden;
33
- }
34
-
35
- .premium-pricing-icon-container .premium-pricing-image img {
36
- width: 25px;
37
- height: 25px;
38
- -o-object-fit: cover;
39
- object-fit: cover;
40
- }
41
-
42
- .premium-badge-left {
43
- position: absolute;
44
- top: 0;
45
- }
46
-
47
- .premium-badge-right {
48
- position: absolute;
49
- top: 0;
50
- right: 0;
51
- }
52
-
53
- .premium-badge-left {
54
- left: 0;
55
- }
56
-
57
- .premium-badge-triangle.premium-badge-left .corner {
58
- width: 0;
59
- height: 0;
60
- border-top: 150px solid;
61
- border-bottom: 150px solid transparent;
62
- border-right: 150px solid transparent;
63
- }
64
-
65
- .premium-badge-triangle.premium-badge-right .corner {
66
- width: 0;
67
- height: 0;
68
- border-bottom: 150px solid transparent;
69
- border-right: 150px solid;
70
- border-left: 150px solid transparent;
71
- }
72
-
73
- .premium-badge-triangle span {
74
- position: absolute;
75
- top: 35px;
76
- width: 100px;
77
- text-align: center;
78
- -webkit-transform: rotate(-45deg);
79
- -ms-transform: rotate(-45deg);
80
- transform: rotate(-45deg);
81
- display: block;
82
- text-transform: uppercase;
83
- }
84
-
85
- .premium-badge-triangle.premium-badge-right span {
86
- -webkit-transform: rotate(45deg);
87
- -ms-transform: rotate(45deg);
88
- transform: rotate(45deg);
89
- right: 0;
90
- }
91
-
92
- .premium-badge-circle {
93
- min-width: 4em;
94
- min-height: 4em;
95
- line-height: 4em;
96
- text-align: center;
97
- -webkit-border-radius: 100%;
98
- border-radius: 100%;
99
- position: absolute;
100
- z-index: 1;
101
- }
102
-
103
- .premium-badge-stripe {
104
- position: absolute;
105
- -webkit-transform: rotate(90deg);
106
- -ms-transform: rotate(90deg);
107
- transform: rotate(90deg);
108
- width: 15em;
109
- overflow: hidden;
110
- height: 15em;
111
- }
112
-
113
- .premium-badge-stripe.premium-badge-left {
114
- -webkit-transform: rotate(0);
115
- -ms-transform: rotate(0);
116
- transform: rotate(0);
117
- }
118
-
119
- .premium-badge-stripe .corner {
120
- text-align: center;
121
- left: 0;
122
- width: 150%;
123
- -webkit-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
124
- -ms-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
125
- transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
126
- margin-top: 35px;
127
- font-size: 13px;
128
- line-height: 2;
129
- font-weight: 800;
130
- text-transform: uppercase;
131
- }
132
-
133
- .premium-badge-flag .corner {
134
- text-align: center;
135
- -webkit-border-radius: 4px 4px 0 4px;
136
- border-radius: 4px 4px 0 4px;
137
- padding: 3px 15px;
138
- position: absolute;
139
- top: 10%;
140
- right: -8px;
141
- }
142
-
143
- .premium-badge-flag .corner::before,
144
- .premium-badge-flag .corner::after {
145
- content: "";
146
- display: block;
147
- position: absolute;
148
- width: 0;
149
- height: 0;
150
- top: 100%;
151
- right: 0;
152
- border-bottom: 8px solid transparent;
153
- }
154
-
155
- .elementor-widget-premium-addon-pricing-table .elementor-widget-container {
156
- overflow: visible !important;
157
- }
158
-
159
- .premium-badge-flag .corner::after {
160
- border-left: 8px solid rgba(0, 0, 0, 0.2);
161
- }
162
-
163
- .premium-pricing-price-currency {
164
- position: relative;
165
- }
166
-
167
- .premium-pricing-button-container {
168
- display: block;
169
- }
170
-
171
- .premium-pricing-list {
172
- -js-display: flex;
173
- display: -webkit-box;
174
- display: -webkit-flex;
175
- display: -moz-box;
176
- display: -ms-flexbox;
177
- display: flex;
178
- -webkit-box-orient: vertical;
179
- -webkit-box-direction: normal;
180
- -webkit-flex-direction: column;
181
- -moz-box-orient: vertical;
182
- -moz-box-direction: normal;
183
- -ms-flex-direction: column;
184
- flex-direction: column;
185
- list-style-type: none;
186
- margin: 0;
187
- }
188
-
189
- .premium-pricing-list .premium-pricing-list-item {
190
- -js-display: flex;
191
- display: -webkit-box;
192
- display: -webkit-flex;
193
- display: -moz-box;
194
- display: -ms-flexbox;
195
- display: flex;
196
- -webkit-box-align: center;
197
- -webkit-align-items: center;
198
- -moz-box-align: center;
199
- -ms-flex-align: center;
200
- align-items: center;
201
- }
202
-
203
- .premium-pricing-list .premium-pricing-list-item svg {
204
- width: 50px;
205
- height: 50px;
206
- }
207
-
208
- .premium-pricing-list .premium-pricing-list-item img {
209
- width: 30px;
210
- height: 30px;
211
- -o-object-fit: cover;
212
- object-fit: cover;
213
- }
214
-
215
- .premium-pricing-list .premium-pricing-list-span {
216
- position: relative;
217
- }
218
-
219
- .premium-pricing-list .list-item-tooltip {
220
- border-bottom: 1px dotted;
221
- }
222
-
223
- .premium-pricing-list .premium-pricing-list-tooltip {
224
- position: absolute;
225
- top: -webkit-calc(100% + 1px);
226
- top: calc(100% + 1px);
227
- right: 0;
228
- visibility: hidden;
229
- padding: 15px 20px;
230
- -webkit-border-radius: 5px;
231
- border-radius: 5px;
232
- min-width: 200px;
233
- overflow: hidden;
234
- text-align: right;
235
- font-size: 0.8rem;
236
- color: #fff;
237
- background-color: #aaa;
238
- }
239
-
240
- .premium-pricing-features-left .premium-pricing-list-span {
241
- text-align: right;
242
- }
243
-
244
- .premium-pricing-features-center .premium-pricing-list-span {
245
- text-align: center;
246
- }
247
-
248
- .premium-pricing-features-right .premium-pricing-list-span {
249
- text-align: left;
250
- }
251
-
252
- .premium-pricing-list-span:hover .premium-pricing-list-tooltip {
253
- z-index: 99;
254
- visibility: visible;
255
- opacity: 1;
256
- }
257
-
258
- .premium-pricing-slashed-price-value {
259
- display: inline-block;
260
- font-size: 20px;
261
- font-weight: 400;
262
- margin-left: 5px;
263
- }
264
-
265
- .premium-pricing-price-value {
266
- font-size: 70px;
267
- }
268
-
269
- .premium-pricing-description-container li {
270
- list-style-position: inside;
271
- text-indent: -40px;
272
- }
273
-
274
- @-moz-document url-prefix() {
275
- .premium-pricing-description-container li {
276
- text-indent: 0px;
277
- }
278
- }
279
-
280
- .premium-pricing-price-button {
281
- display: block;
282
- padding: 6px 12px;
283
- line-height: 1.42857143;
284
- text-align: center;
285
- color: #fff;
286
- background: #6ec1e4;
287
- margin-bottom: 0;
288
- -webkit-transition: all 0.3s ease-in-out;
289
- transition: all 0.3s ease-in-out;
290
  }
1
+ /**************** Premium Pricing Table ****************/
2
+ /*******************************************************/
3
+ .premium-pricing-table-container {
4
+ position: relative;
5
+ text-align: center;
6
+ display: inline-block;
7
+ width: 100%;
8
+ -webkit-transition: all 0.3s ease-in-out;
9
+ transition: all 0.3s ease-in-out;
10
+ }
11
+
12
+ .premium-pricing-icon-container {
13
+ -js-display: flex;
14
+ display: -webkit-box;
15
+ display: -webkit-flex;
16
+ display: -moz-box;
17
+ display: -ms-flexbox;
18
+ display: flex;
19
+ -webkit-box-pack: center;
20
+ -webkit-justify-content: center;
21
+ -moz-box-pack: center;
22
+ -ms-flex-pack: center;
23
+ justify-content: center;
24
+ line-height: 0;
25
+ }
26
+
27
+ .premium-pricing-icon-container .premium-pricing-icon {
28
+ display: inline-block;
29
+ }
30
+
31
+ .premium-pricing-icon-container .premium-pricing-image {
32
+ overflow: hidden;
33
+ }
34
+
35
+ .premium-pricing-icon-container .premium-pricing-image img {
36
+ width: 25px;
37
+ height: 25px;
38
+ -o-object-fit: cover;
39
+ object-fit: cover;
40
+ }
41
+
42
+ .premium-badge-left {
43
+ position: absolute;
44
+ top: 0;
45
+ }
46
+
47
+ .premium-badge-right {
48
+ position: absolute;
49
+ top: 0;
50
+ right: 0;
51
+ }
52
+
53
+ .premium-badge-left {
54
+ left: 0;
55
+ }
56
+
57
+ .premium-badge-triangle.premium-badge-left .corner {
58
+ width: 0;
59
+ height: 0;
60
+ border-top: 150px solid;
61
+ border-bottom: 150px solid transparent;
62
+ border-right: 150px solid transparent;
63
+ }
64
+
65
+ .premium-badge-triangle.premium-badge-right .corner {
66
+ width: 0;
67
+ height: 0;
68
+ border-bottom: 150px solid transparent;
69
+ border-right: 150px solid;
70
+ border-left: 150px solid transparent;
71
+ }
72
+
73
+ .premium-badge-triangle span {
74
+ position: absolute;
75
+ top: 35px;
76
+ width: 100px;
77
+ text-align: center;
78
+ -webkit-transform: rotate(-45deg);
79
+ -ms-transform: rotate(-45deg);
80
+ transform: rotate(-45deg);
81
+ display: block;
82
+ text-transform: uppercase;
83
+ }
84
+
85
+ .premium-badge-triangle.premium-badge-right span {
86
+ -webkit-transform: rotate(45deg);
87
+ -ms-transform: rotate(45deg);
88
+ transform: rotate(45deg);
89
+ right: 0;
90
+ }
91
+
92
+ .premium-badge-circle {
93
+ min-width: 4em;
94
+ min-height: 4em;
95
+ line-height: 4em;
96
+ text-align: center;
97
+ -webkit-border-radius: 100%;
98
+ border-radius: 100%;
99
+ position: absolute;
100
+ z-index: 1;
101
+ }
102
+
103
+ .premium-badge-stripe {
104
+ position: absolute;
105
+ -webkit-transform: rotate(90deg);
106
+ -ms-transform: rotate(90deg);
107
+ transform: rotate(90deg);
108
+ width: 15em;
109
+ overflow: hidden;
110
+ height: 15em;
111
+ }
112
+
113
+ .premium-badge-stripe.premium-badge-left {
114
+ -webkit-transform: rotate(0);
115
+ -ms-transform: rotate(0);
116
+ transform: rotate(0);
117
+ }
118
+
119
+ .premium-badge-stripe .corner {
120
+ text-align: center;
121
+ left: 0;
122
+ width: 150%;
123
+ -webkit-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
124
+ -ms-transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
125
+ transform: translateY(-50%) translateX(-50%) translateX(35px) rotate(-45deg);
126
+ margin-top: 35px;
127
+ font-size: 13px;
128
+ line-height: 2;
129
+ font-weight: 800;
130
+ text-transform: uppercase;
131
+ }
132
+
133
+ .premium-badge-flag .corner {
134
+ text-align: center;
135
+ -webkit-border-radius: 4px 4px 0 4px;
136
+ border-radius: 4px 4px 0 4px;
137
+ padding: 3px 15px;
138
+ position: absolute;
139
+ top: 10%;
140
+ right: -8px;
141
+ }
142
+
143
+ .premium-badge-flag .corner::before,
144
+ .premium-badge-flag .corner::after {
145
+ content: "";
146
+ display: block;
147
+ position: absolute;
148
+ width: 0;
149
+ height: 0;
150
+ top: 100%;
151
+ right: 0;
152
+ border-bottom: 8px solid transparent;
153
+ }
154
+
155
+ .elementor-widget-premium-addon-pricing-table .elementor-widget-container {
156
+ overflow: visible !important;
157
+ }
158
+
159
+ .premium-badge-flag .corner::after {
160
+ border-left: 8px solid rgba(0, 0, 0, 0.2);
161
+ }
162
+
163
+ .premium-pricing-price-currency {
164
+ position: relative;
165
+ }
166
+
167
+ .premium-pricing-button-container {
168
+ display: block;
169
+ }
170
+
171
+ .premium-pricing-list {
172
+ -js-display: flex;
173
+ display: -webkit-box;
174
+ display: -webkit-flex;
175
+ display: -moz-box;
176
+ display: -ms-flexbox;
177
+ display: flex;
178
+ -webkit-box-orient: vertical;
179
+ -webkit-box-direction: normal;
180
+ -webkit-flex-direction: column;
181
+ -moz-box-orient: vertical;
182
+ -moz-box-direction: normal;
183
+ -ms-flex-direction: column;
184
+ flex-direction: column;
185
+ list-style-type: none;
186
+ margin: 0;
187
+ }
188
+
189
+ .premium-pricing-list .premium-pricing-list-item {
190
+ -js-display: flex;
191
+ display: -webkit-box;
192
+ display: -webkit-flex;
193
+ display: -moz-box;
194
+ display: -ms-flexbox;
195
+ display: flex;
196
+ -webkit-box-align: center;
197
+ -webkit-align-items: center;
198
+ -moz-box-align: center;
199
+ -ms-flex-align: center;
200
+ align-items: center;
201
+ }
202
+
203
+ .premium-pricing-list .premium-pricing-list-item svg {
204
+ width: 50px;
205
+ height: 50px;
206
+ }
207
+
208
+ .premium-pricing-list .premium-pricing-list-item img {
209
+ width: 30px;
210
+ height: 30px;
211
+ -o-object-fit: cover;
212
+ object-fit: cover;
213
+ }
214
+
215
+ .premium-pricing-list .premium-pricing-list-span {
216
+ position: relative;
217
+ }
218
+
219
+ .premium-pricing-list .list-item-tooltip {
220
+ border-bottom: 1px dotted;
221
+ }
222
+
223
+ .premium-pricing-list .premium-pricing-list-tooltip {
224
+ position: absolute;
225
+ top: -webkit-calc(100% + 1px);
226
+ top: calc(100% + 1px);
227
+ right: 0;
228
+ visibility: hidden;
229
+ padding: 15px 20px;
230
+ -webkit-border-radius: 5px;
231
+ border-radius: 5px;
232
+ min-width: 200px;
233
+ overflow: hidden;
234
+ text-align: right;
235
+ font-size: 0.8rem;
236
+ color: #fff;
237
+ background-color: #aaa;
238
+ }
239
+
240
+ .premium-pricing-features-left .premium-pricing-list-span {
241
+ text-align: right;
242
+ }
243
+
244
+ .premium-pricing-features-center .premium-pricing-list-span {
245
+ text-align: center;
246
+ }
247
+
248
+ .premium-pricing-features-right .premium-pricing-list-span {
249
+ text-align: left;
250
+ }
251
+
252
+ .premium-pricing-list-span:hover .premium-pricing-list-tooltip {
253
+ z-index: 99;
254
+ visibility: visible;
255
+ opacity: 1;
256
+ }
257
+
258
+ .premium-pricing-slashed-price-value {
259
+ display: inline-block;
260
+ font-size: 20px;
261
+ font-weight: 400;
262
+ margin-left: 5px;
263
+ }
264
+
265
+ .premium-pricing-price-value {
266
+ font-size: 70px;
267
+ }
268
+
269
+ .premium-pricing-description-container li {
270
+ list-style-position: inside;
271
+ text-indent: -40px;
272
+ }
273
+
274
+ @-moz-document url-prefix() {
275
+ .premium-pricing-description-container li {
276
+ text-indent: 0px;
277
+ }
278
+ }
279
+
280
+ .premium-pricing-price-button {
281
+ display: block;
282
+ padding: 6px 12px;
283
+ line-height: 1.42857143;
284
+ text-align: center;
285
+ color: #fff;
286
+ background: #6ec1e4;
287
+ margin-bottom: 0;
288
+ -webkit-transition: all 0.3s ease-in-out;
289
+ transition: all 0.3s ease-in-out;
290
  }
assets/frontend/css/premium-title-rtl.css CHANGED
@@ -1,254 +1,254 @@
1
- /**************** Premium Title ****************/
2
- /***********************************************/
3
- .premium-title-container .premium-title-header {
4
- position: relative;
5
- margin: 0;
6
- padding: 10px;
7
- }
8
-
9
- .premium-title-container .premium-title-header:not(.premium-title-style7) {
10
- -webkit-box-align: center;
11
- -webkit-align-items: center;
12
- -moz-box-align: center;
13
- -ms-flex-align: center;
14
- align-items: center;
15
- }
16
-
17
- .premium-title-container .premium-title-header svg {
18
- width: 40px;
19
- height: 40px;
20
- }
21
-
22
- .premium-title-container .premium-title-header img {
23
- width: 40px;
24
- height: 40px;
25
- -o-object-fit: cover;
26
- object-fit: cover;
27
- }
28
-
29
- .premium-title-container .premium-title-header a {
30
- position: absolute;
31
- top: 0;
32
- right: 0;
33
- width: 100%;
34
- height: 100%;
35
- }
36
-
37
- .premium-title-container .premium-lottie-animation {
38
- -js-display: flex;
39
- display: -webkit-box;
40
- display: -webkit-flex;
41
- display: -moz-box;
42
- display: -ms-flexbox;
43
- display: flex;
44
- }
45
-
46
- .premium-title-icon-row .premium-title-icon {
47
- margin-left: 10px;
48
- }
49
-
50
- .premium-title-icon-row-reverse .premium-title-icon {
51
- margin-right: 10px;
52
- }
53
-
54
- .premium-title-style3,
55
- .premium-title-style4 {
56
- -js-display: flex;
57
- display: -webkit-box;
58
- display: -webkit-flex;
59
- display: -moz-box;
60
- display: -ms-flexbox;
61
- display: flex;
62
- }
63
-
64
- .premium-title-style1,
65
- .premium-title-style2,
66
- .premium-title-style5,
67
- .premium-title-style6,
68
- .premium-title-style8,
69
- .premium-title-style9 {
70
- -js-display: inline-flex;
71
- display: -webkit-inline-box;
72
- display: -webkit-inline-flex;
73
- display: -moz-inline-box;
74
- display: -ms-inline-flexbox;
75
- display: inline-flex;
76
- }
77
-
78
- .premium-title-style7 {
79
- -js-display: inline-flex;
80
- display: -webkit-inline-box;
81
- display: -webkit-inline-flex;
82
- display: -moz-inline-box;
83
- display: -ms-inline-flexbox;
84
- display: inline-flex;
85
- -webkit-box-orient: vertical;
86
- -webkit-box-direction: normal;
87
- -webkit-flex-direction: column;
88
- -moz-box-orient: vertical;
89
- -moz-box-direction: normal;
90
- -ms-flex-direction: column;
91
- flex-direction: column;
92
- }
93
-
94
- .premium-title-style7 .premium-title-style7-inner {
95
- -js-display: flex;
96
- display: -webkit-box;
97
- display: -webkit-flex;
98
- display: -moz-box;
99
- display: -ms-flexbox;
100
- display: flex;
101
- -webkit-box-align: center;
102
- -webkit-align-items: center;
103
- -moz-box-align: center;
104
- -ms-flex-align: center;
105
- align-items: center;
106
- }
107
-
108
- .premium-title-style1 {
109
- border-width: 0;
110
- border-right: 3px solid #6ec1e4;
111
- }
112
-
113
- .premium-title-container.style2,
114
- .premium-title-container.style4,
115
- .premium-title-container.style5,
116
- .premium-title-container.style6 {
117
- border-bottom: 3px solid #6ec1e4;
118
- }
119
-
120
- /*Style 6 Header*/
121
- .premium-title-style6:before {
122
- position: absolute;
123
- right: 50%;
124
- bottom: 0;
125
- margin-right: -2px;
126
- content: "";
127
- border: 3px solid transparent;
128
- }
129
-
130
- /*Style 6 Trinagle*/
131
- .premium-title-style7-stripe-wrap {
132
- -js-display: flex;
133
- display: -webkit-box;
134
- display: -webkit-flex;
135
- display: -moz-box;
136
- display: -ms-flexbox;
137
- display: flex;
138
- }
139
-
140
- .premium-title-style7:before {
141
- display: none;
142
- }
143
-
144
- .premium-title-style8 .premium-title-text[data-animation="shiny"] {
145
- -webkit-background-size: 125px 125px !important;
146
- background-size: 125px !important;
147
- color: rgba(255, 255, 255, 0);
148
- -webkit-background-clip: text !important;
149
- background-clip: text !important;
150
- -webkit-animation-name: pa-shinny-text !important;
151
- animation-name: pa-shinny-text !important;
152
- -webkit-animation-duration: var(--animation-speed) !important;
153
- animation-duration: var(--animation-speed) !important;
154
- -webkit-animation-iteration-count: infinite !important;
155
- animation-iteration-count: infinite !important;
156
- background: var(--base-color) -webkit-gradient(linear,
157
- left top,
158
- right top,
159
- from(var(--base-color)),
160
- to(var(--base-color)),
161
- color-stop(0.5, var(--shiny-color))) 0 0 no-repeat;
162
- }
163
-
164
- .premium-title-style9[data-animation-blur="process"] .premium-title-style9-letter {
165
- -webkit-animation: pa-blur-shadow 2s 1 alternate;
166
- animation: pa-blur-shadow 2s 1 alternate;
167
- }
168
-
169
- .premium-title-gradient-yes .premium-title-text,
170
- .premium-title-gradient-yes .premium-title-icon {
171
- -webkit-background-clip: text;
172
- -webkit-text-fill-color: transparent;
173
- background-image: -webkit-gradient(linear, left top, right top, from(#ffa648), color-stop(#f17cc1), to(#4da9fd));
174
- background-image: -webkit-linear-gradient(left, #ffa648, #f17cc1, #4da9fd);
175
- background-image: linear-gradient(to right, #ffa648, #f17cc1, #4da9fd);
176
- -webkit-animation: pa-text-gradient 8s infinite;
177
- animation: pa-text-gradient 8s infinite;
178
- }
179
-
180
- .premium-title-clipped .premium-title-header {
181
- -webkit-text-fill-color: transparent;
182
- -webkit-background-clip: text;
183
- background-clip: text;
184
- }
185
-
186
- @-webkit-keyframes pa-shinny-text {
187
- 0% {
188
- background-position: 100%;
189
- }
190
-
191
- 100% {
192
- background-position: -100%;
193
- }
194
- }
195
-
196
- @keyframes pa-shinny-text {
197
- 0% {
198
- background-position: 100%;
199
- }
200
-
201
- 100% {
202
- background-position: -100%;
203
- }
204
- }
205
-
206
- @-webkit-keyframes pa-blur-shadow {
207
- from {
208
- text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
209
- color: transparent;
210
- }
211
-
212
- to {
213
- text-shadow: 0;
214
- }
215
- }
216
-
217
- @keyframes pa-blur-shadow {
218
- from {
219
- text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
220
- color: transparent;
221
- }
222
-
223
- to {
224
- text-shadow: 0;
225
- }
226
- }
227
-
228
- @-webkit-keyframes pa-text-gradient {
229
-
230
- 0%,
231
- 100% {
232
- -webkit-filter: hue-rotate(0deg);
233
- filter: hue-rotate(0deg);
234
- }
235
-
236
- 50% {
237
- -webkit-filter: hue-rotate(360deg);
238
- filter: hue-rotate(360deg);
239
- }
240
- }
241
-
242
- @keyframes pa-text-gradient {
243
-
244
- 0%,
245
- 100% {
246
- -webkit-filter: hue-rotate(0deg);
247
- filter: hue-rotate(0deg);
248
- }
249
-
250
- 50% {
251
- -webkit-filter: hue-rotate(360deg);
252
- filter: hue-rotate(360deg);
253
- }
254
  }
1
+ /**************** Premium Title ****************/
2
+ /***********************************************/
3
+ .premium-title-container .premium-title-header {
4
+ position: relative;
5
+ margin: 0;
6
+ padding: 10px;
7
+ }
8
+
9
+ .premium-title-container .premium-title-header:not(.premium-title-style7) {
10
+ -webkit-box-align: center;
11
+ -webkit-align-items: center;
12
+ -moz-box-align: center;
13
+ -ms-flex-align: center;
14
+ align-items: center;
15
+ }
16
+
17
+ .premium-title-container .premium-title-header svg {
18
+ width: 40px;
19
+ height: 40px;
20
+ }
21
+
22
+ .premium-title-container .premium-title-header img {
23
+ width: 40px;
24
+ height: 40px;
25
+ -o-object-fit: cover;
26
+ object-fit: cover;
27
+ }
28
+
29
+ .premium-title-container .premium-title-header a {
30
+ position: absolute;
31
+ top: 0;
32
+ right: 0;
33
+ width: 100%;
34
+ height: 100%;
35
+ }
36
+
37
+ .premium-title-container .premium-lottie-animation {
38
+ -js-display: flex;
39
+ display: -webkit-box;
40
+ display: -webkit-flex;
41
+ display: -moz-box;
42
+ display: -ms-flexbox;
43
+ display: flex;
44
+ }
45
+
46
+ .premium-title-icon-row .premium-title-icon {
47
+ margin-left: 10px;
48
+ }
49
+
50
+ .premium-title-icon-row-reverse .premium-title-icon {
51
+ margin-right: 10px;
52
+ }
53
+
54
+ .premium-title-style3,
55
+ .premium-title-style4 {
56
+ -js-display: flex;
57
+ display: -webkit-box;
58
+ display: -webkit-flex;
59
+ display: -moz-box;
60
+ display: -ms-flexbox;
61
+ display: flex;
62
+ }
63
+
64
+ .premium-title-style1,
65
+ .premium-title-style2,
66
+ .premium-title-style5,
67
+ .premium-title-style6,
68
+ .premium-title-style8,
69
+ .premium-title-style9 {
70
+ -js-display: inline-flex;
71
+ display: -webkit-inline-box;
72
+ display: -webkit-inline-flex;
73
+ display: -moz-inline-box;
74
+ display: -ms-inline-flexbox;
75
+ display: inline-flex;
76
+ }
77
+
78
+ .premium-title-style7 {
79
+ -js-display: inline-flex;
80
+ display: -webkit-inline-box;
81
+ display: -webkit-inline-flex;
82
+ display: -moz-inline-box;
83
+ display: -ms-inline-flexbox;
84
+ display: inline-flex;
85
+ -webkit-box-orient: vertical;
86
+ -webkit-box-direction: normal;
87
+ -webkit-flex-direction: column;
88
+ -moz-box-orient: vertical;
89
+ -moz-box-direction: normal;
90
+ -ms-flex-direction: column;
91
+ flex-direction: column;
92
+ }
93
+
94
+ .premium-title-style7 .premium-title-style7-inner {
95
+ -js-display: flex;
96
+ display: -webkit-box;
97
+ display: -webkit-flex;
98
+ display: -moz-box;
99
+ display: -ms-flexbox;
100
+ display: flex;
101
+ -webkit-box-align: center;
102
+ -webkit-align-items: center;
103
+ -moz-box-align: center;
104
+ -ms-flex-align: center;
105
+ align-items: center;
106
+ }
107
+
108
+ .premium-title-style1 {
109
+ border-width: 0;
110
+ border-right: 3px solid #6ec1e4;
111
+ }
112
+
113
+ .premium-title-container.style2,
114
+ .premium-title-container.style4,
115
+ .premium-title-container.style5,
116
+ .premium-title-container.style6 {
117
+ border-bottom: 3px solid #6ec1e4;
118
+ }
119
+
120
+ /*Style 6 Header*/
121
+ .premium-title-style6:before {
122
+ position: absolute;
123
+ right: 50%;
124
+ bottom: 0;
125
+ margin-right: -2px;
126
+ content: "";
127
+ border: 3px solid transparent;
128
+ }
129
+
130
+ /*Style 6 Trinagle*/
131
+ .premium-title-style7-stripe-wrap {
132
+ -js-display: flex;
133
+ display: -webkit-box;
134
+ display: -webkit-flex;
135
+ display: -moz-box;
136
+ display: -ms-flexbox;
137
+ display: flex;
138
+ }
139
+
140
+ .premium-title-style7:before {
141
+ display: none;
142
+ }
143
+
144
+ .premium-title-style8 .premium-title-text[data-animation="shiny"] {
145
+ -webkit-background-size: 125px 125px !important;
146
+ background-size: 125px !important;
147
+ color: rgba(255, 255, 255, 0);
148
+ -webkit-background-clip: text !important;
149
+ background-clip: text !important;
150
+ -webkit-animation-name: pa-shinny-text !important;
151
+ animation-name: pa-shinny-text !important;
152
+ -webkit-animation-duration: var(--animation-speed) !important;
153
+ animation-duration: var(--animation-speed) !important;
154
+ -webkit-animation-iteration-count: infinite !important;
155
+ animation-iteration-count: infinite !important;
156
+ background: var(--base-color) -webkit-gradient(linear,
157
+ left top,
158
+ right top,
159
+ from(var(--base-color)),
160
+ to(var(--base-color)),
161
+ color-stop(0.5, var(--shiny-color))) 0 0 no-repeat;
162
+ }
163
+
164
+ .premium-title-style9[data-animation-blur="process"] .premium-title-style9-letter {
165
+ -webkit-animation: pa-blur-shadow 2s 1 alternate;
166
+ animation: pa-blur-shadow 2s 1 alternate;
167
+ }
168
+
169
+ .premium-title-gradient-yes .premium-title-text,
170
+ .premium-title-gradient-yes .premium-title-icon {
171
+ -webkit-background-clip: text;
172
+ -webkit-text-fill-color: transparent;
173
+ background-image: -webkit-gradient(linear, left top, right top, from(#ffa648), color-stop(#f17cc1), to(#4da9fd));
174
+ background-image: -webkit-linear-gradient(left, #ffa648, #f17cc1, #4da9fd);
175
+ background-image: linear-gradient(to right, #ffa648, #f17cc1, #4da9fd);
176
+ -webkit-animation: pa-text-gradient 8s infinite;
177
+ animation: pa-text-gradient 8s infinite;
178
+ }
179
+
180
+ .premium-title-clipped .premium-title-header {
181
+ -webkit-text-fill-color: transparent;
182
+ -webkit-background-clip: text;
183
+ background-clip: text;
184
+ }
185
+
186
+ @-webkit-keyframes pa-shinny-text {
187
+ 0% {
188
+ background-position: 100%;
189
+ }
190
+
191
+ 100% {
192
+ background-position: -100%;
193
+ }
194
+ }
195
+
196
+ @keyframes pa-shinny-text {
197
+ 0% {
198
+ background-position: 100%;
199
+ }
200
+
201
+ 100% {
202
+ background-position: -100%;
203
+ }
204
+ }
205
+
206
+ @-webkit-keyframes pa-blur-shadow {
207
+ from {
208
+ text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
209
+ color: transparent;
210
+ }
211
+
212
+ to {
213
+ text-shadow: 0;
214
+ }
215
+ }
216
+
217
+ @keyframes pa-blur-shadow {
218
+ from {
219
+ text-shadow: 0 0 var(--shadow-value) var(--shadow-color);
220
+ color: transparent;
221
+ }
222
+
223
+ to {
224
+ text-shadow: 0;
225
+ }
226
+ }
227
+
228
+ @-webkit-keyframes pa-text-gradient {
229
+
230
+ 0%,
231
+ 100% {
232
+ -webkit-filter: hue-rotate(0deg);
233
+ filter: hue-rotate(0deg);
234
+ }
235
+
236
+ 50% {
237
+ -webkit-filter: hue-rotate(360deg);
238
+ filter: hue-rotate(360deg);
239
+ }
240
+ }
241
+
242
+ @keyframes pa-text-gradient {
243
+
244
+ 0%,
245
+ 100% {
246
+ -webkit-filter: hue-rotate(0deg);
247
+ filter: hue-rotate(0deg);
248
+ }
249
+
250
+ 50% {
251
+ -webkit-filter: hue-rotate(360deg);
252
+ filter: hue-rotate(360deg);
253
+ }
254
  }
assets/frontend/js/lottie.js CHANGED
@@ -1,15582 +1,15582 @@
1
- (function ($) {
2
-
3
- (typeof navigator !== "undefined") && (function (root, factory) {
4
-
5
- if (typeof define === "function" && define.amd) {
6
- define(function () {
7
- return factory(root);
8
- });
9
- } else if (typeof module === "object" && module.exports) {
10
- module.exports = factory(root);
11
- } else {
12
- root.lottie = factory(root);
13
- root.bodymovin = root.lottie;
14
- }
15
- }((window || {}), function (window) {
16
- "use strict";
17
- var svgNS = "http://www.w3.org/2000/svg";
18
-
19
- var locationHref = '';
20
-
21
- var initialDefaultFrame = -999999;
22
-
23
- var subframeEnabled = true;
24
- var expressionsPlugin;
25
- var isSafari = /^((?!chrome|android).)*safari/i.test(navigator.userAgent);
26
- var cachedColors = {};
27
- var bm_rounder = Math.round;
28
- var bm_rnd;
29
- var bm_pow = Math.pow;
30
- var bm_sqrt = Math.sqrt;
31
- var bm_abs = Math.abs;
32
- var bm_floor = Math.floor;
33
- var bm_max = Math.max;
34
- var bm_min = Math.min;
35
- var blitter = 10;
36
-
37
- var BMMath = {};
38
- (function () {
39
- var propertyNames = ["abs", "acos", "acosh", "asin", "asinh", "atan", "atanh", "atan2", "ceil", "cbrt", "expm1", "clz32", "cos", "cosh", "exp", "floor", "fround", "hypot", "imul", "log", "log1p", "log2", "log10", "max", "min", "pow", "random", "round", "sign", "sin", "sinh", "sqrt", "tan", "tanh", "trunc", "E", "LN10", "LN2", "LOG10E", "LOG2E", "PI", "SQRT1_2", "SQRT2"];
40
- var i, len = propertyNames.length;
41
- for (i = 0; i < len; i += 1) {
42
- BMMath[propertyNames[i]] = Math[propertyNames[i]];
43
- }
44
- }());
45
-
46
- function ProjectInterface() {
47
- return {};
48
- }
49
-
50
- BMMath.random = Math.random;
51
- BMMath.abs = function (val) {
52
- var tOfVal = typeof val;
53
- if (tOfVal === 'object' && val.length) {
54
- var absArr = createSizedArray(val.length);
55
- var i, len = val.length;
56
- for (i = 0; i < len; i += 1) {
57
- absArr[i] = Math.abs(val[i]);
58
- }
59
- return absArr;
60
- }
61
- return Math.abs(val);
62
-
63
- };
64
- var defaultCurveSegments = 150;
65
- var degToRads = Math.PI / 180;
66
- var roundCorner = 0.5519;
67
-
68
- function roundValues(flag) {
69
- if (flag) {
70
- bm_rnd = Math.round;
71
- } else {
72
- bm_rnd = function (val) {
73
- return val;
74
- };
75
- }
76
- }
77
- roundValues(false);
78
-
79
- function styleDiv(element) {
80
- element.style.position = 'absolute';
81
- element.style.top = 0;
82
- element.style.left = 0;
83
- element.style.display = 'block';
84
- element.style.transformOrigin = element.style.webkitTransformOrigin = '0 0';
85
- element.style.backfaceVisibility = element.style.webkitBackfaceVisibility = 'visible';
86
- element.style.transformStyle = element.style.webkitTransformStyle = element.style.mozTransformStyle = "preserve-3d";
87
- }
88
-
89
- function BMEnterFrameEvent(type, currentTime, totalTime, frameMultiplier) {
90
- this.type = type;
91
- this.currentTime = currentTime;
92
- this.totalTime = totalTime;
93
- this.direction = frameMultiplier < 0 ? -1 : 1;
94
- }
95
-
96
- function BMCompleteEvent(type, frameMultiplier) {
97
- this.type = type;
98
- this.direction = frameMultiplier < 0 ? -1 : 1;
99
- }
100
-
101
- function BMCompleteLoopEvent(type, totalLoops, currentLoop, frameMultiplier) {
102
- this.type = type;
103
- this.currentLoop = currentLoop;
104
- this.totalLoops = totalLoops;
105
- this.direction = frameMultiplier < 0 ? -1 : 1;
106
- }
107
-
108
- function BMSegmentStartEvent(type, firstFrame, totalFrames) {
109
- this.type = type;
110
- this.firstFrame = firstFrame;
111
- this.totalFrames = totalFrames;
112
- }
113
-
114
- function BMDestroyEvent(type, target) {
115
- this.type = type;
116
- this.target = target;
117
- }
118
-
119
- function BMRenderFrameErrorEvent(nativeError, currentTime) {
120
- this.type = 'renderFrameError';
121
- this.nativeError = nativeError;
122
- this.currentTime = currentTime;
123
- }
124
-
125
- function BMConfigErrorEvent(nativeError) {
126
- this.type = 'configError';
127
- this.nativeError = nativeError;
128
- }
129
-
130
- function BMAnimationConfigErrorEvent(type, nativeError) {
131
- this.type = type;
132
- this.nativeError = nativeError;
133
- this.currentTime = currentTime;
134
- }
135
-
136
- var createElementID = (function () {
137
- var _count = 0;
138
- return function createID() {
139
- return '__lottie_element_' + ++_count
140
- }
141
- }())
142
-
143
- function HSVtoRGB(h, s, v) {
144
- var r, g, b, i, f, p, q, t;
145
- i = Math.floor(h * 6);
146
- f = h * 6 - i;
147
- p = v * (1 - s);
148
- q = v * (1 - f * s);
149
- t = v * (1 - (1 - f) * s);
150
- switch (i % 6) {
151
- case 0:
152
- r = v;
153
- g = t;
154
- b = p;
155
- break;
156
- case 1:
157
- r = q;
158
- g = v;
159
- b = p;
160
- break;
161
- case 2:
162
- r = p;
163
- g = v;
164
- b = t;
165
- break;
166
- case 3:
167
- r = p;
168
- g = q;
169
- b = v;
170
- break;
171
- case 4:
172
- r = t;
173
- g = p;
174
- b = v;
175
- break;
176
- case 5:
177
- r = v;
178
- g = p;
179
- b = q;
180
- break;
181
- }
182
- return [r,
183
- g,
184
- b
185
- ];
186
- }
187
-
188
- function RGBtoHSV(r, g, b) {
189
- var max = Math.max(r, g, b),
190
- min = Math.min(r, g, b),
191
- d = max - min,
192
- h,
193
- s = (max === 0 ? 0 : d / max),
194
- v = max / 255;
195
-
196
- switch (max) {
197
- case min:
198
- h = 0;
199
- break;
200
- case r:
201
- h = (g - b) + d * (g < b ? 6 : 0);
202
- h /= 6 * d;
203
- break;
204
- case g:
205
- h = (b - r) + d * 2;
206
- h /= 6 * d;
207
- break;
208
- case b:
209
- h = (r - g) + d * 4;
210
- h /= 6 * d;
211
- break;
212
- }
213
-
214
- return [
215
- h,
216
- s,
217
- v
218
- ];
219
- }
220
-
221
- function addSaturationToRGB(color, offset) {
222
- var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);
223
- hsv[1] += offset;
224
- if (hsv[1] > 1) {
225
- hsv[1] = 1;
226
- } else if (hsv[1] <= 0) {
227
- hsv[1] = 0;
228
- }
229
- return HSVtoRGB(hsv[0], hsv[1], hsv[2]);
230
- }
231
-
232
- function addBrightnessToRGB(color, offset) {
233
- var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);
234
- hsv[2] += offset;
235
- if (hsv[2] > 1) {
236
- hsv[2] = 1;
237
- } else if (hsv[2] < 0) {
238
- hsv[2] = 0;
239
- }
240
- return HSVtoRGB(hsv[0], hsv[1], hsv[2]);
241
- }
242
-
243
- function addHueToRGB(color, offset) {
244
- var hsv = RGBtoHSV(color[0] * 255, color[1] * 255, color[2] * 255);
245
- hsv[0] += offset / 360;
246
- if (hsv[0] > 1) {
247
- hsv[0] -= 1;
248
- } else if (hsv[0] < 0) {
249
- hsv[0] += 1;
250
- }
251
- return HSVtoRGB(hsv[0], hsv[1], hsv[2]);
252
- }
253
-
254
- var rgbToHex = (function () {
255
- var colorMap = [];
256
- var i;
257
- var hex;
258
- for (i = 0; i < 256; i += 1) {
259
- hex = i.toString(16);
260
- colorMap[i] = hex.length == 1 ? '0' + hex : hex;
261
- }
262
-
263
- return function (r, g, b) {
264
- if (r < 0) {
265
- r = 0;
266
- }
267
- if (g < 0) {
268
- g = 0;
269
- }
270
- if (b < 0) {
271
- b = 0;
272
- }
273
- return '#' + colorMap[r] + colorMap[g] + colorMap[b];
274
- };
275
- }());
276
-
277
- function BaseEvent() { }
278
- BaseEvent.prototype = {
279
- triggerEvent: function (eventName, args) {
280
- if (this._cbs[eventName]) {
281
- var len = this._cbs[eventName].length;
282
- for (var i = 0; i < len; i++) {
283
- this._cbs[eventName][i](args);
284
- }
285
- }
286
- },
287
- addEventListener: function (eventName, callback) {
288
- if (!this._cbs[eventName]) {
289
- this._cbs[eventName] = [];
290
- }
291
- this._cbs[eventName].push(callback);
292
-
293
- return function () {
294
- this.removeEventListener(eventName, callback);
295
- }.bind(this);
296
- },
297
- removeEventListener: function (eventName, callback) {
298
- if (!callback) {
299
- this._cbs[eventName] = null;
300
- } else if (this._cbs[eventName]) {
301
- var i = 0,
302
- len = this._cbs[eventName].length;
303
- while (i < len) {
304
- if (this._cbs[eventName][i] === callback) {
305
- this._cbs[eventName].splice(i, 1);
306
- i -= 1;
307
- len -= 1;
308
- }
309
- i += 1;
310
- }
311
- if (!this._cbs[eventName].length) {
312
- this._cbs[eventName] = null;
313
- }
314
- }
315
- }
316
- };
317
- var createTypedArray = (function () {
318
- function createRegularArray(type, len) {
319
- var i = 0,
320
- arr = [],
321
- value;
322
- switch (type) {
323
- case 'int16':
324
- case 'uint8c':
325
- value = 1;
326
- break;
327
- default:
328
- value = 1.1;
329
- break;
330
- }
331
- for (i = 0; i < len; i += 1) {
332
- arr.push(value);
333
- }
334
- return arr;
335
- }
336
-
337
- function createTypedArray(type, len) {
338
- if (type === 'float32') {
339
- return new Float32Array(len);
340
- } else if (type === 'int16') {
341
- return new Int16Array(len);
342
- } else if (type === 'uint8c') {
343
- return new Uint8ClampedArray(len);
344
- }
345
- }
346
- if (typeof Uint8ClampedArray === 'function' && typeof Float32Array === 'function') {
347
- return createTypedArray;
348
- } else {
349
- return createRegularArray;
350
- }
351
- }());
352
-
353
- function createSizedArray(len) {
354
- return Array.apply(null, {
355
- length: len
356
- });
357
- }
358
-
359
- function createNS(type) {
360
- //return {appendChild:function(){},setAttribute:function(){},style:{}}
361
- return document.createElementNS(svgNS, type);
362
- }
363
-
364
- function createTag(type) {
365
- //return {appendChild:function(){},setAttribute:function(){},style:{}}
366
- return document.createElement(type);
367
- }
368
-
369
- function DynamicPropertyContainer() { };
370
- DynamicPropertyContainer.prototype = {
371
- addDynamicProperty: function (prop) {
372
- if (this.dynamicProperties.indexOf(prop) === -1) {
373
- this.dynamicProperties.push(prop);
374
- this.container.addDynamicProperty(this);
375
- this._isAnimated = true;
376
- }
377
- },
378
- iterateDynamicProperties: function () {
379
- this._mdf = false;
380
- var i, len = this.dynamicProperties.length;
381
- for (i = 0; i < len; i += 1) {
382
- this.dynamicProperties[i].getValue();
383
- if (this.dynamicProperties[i]._mdf) {
384
- this._mdf = true;
385
- }
386
- }
387
- },
388
- initDynamicPropertyContainer: function (container) {
389
- this.container = container;
390
- this.dynamicProperties = [];
391
- this._mdf = false;
392
- this._isAnimated = false;
393
- }
394
- }
395
- var getBlendMode = (function () {
396
-
397
- var blendModeEnums = {
398
- 0: 'source-over',
399
- 1: 'multiply',
400
- 2: 'screen',
401
- 3: 'overlay',
402
- 4: 'darken',
403
- 5: 'lighten',
404
- 6: 'color-dodge',
405
- 7: 'color-burn',
406
- 8: 'hard-light',
407
- 9: 'soft-light',
408
- 10: 'difference',
409
- 11: 'exclusion',
410
- 12: 'hue',
411
- 13: 'saturation',
412
- 14: 'color',
413
- 15: 'luminosity'
414
- }
415
-
416
- return function (mode) {
417
- return blendModeEnums[mode] || '';
418
- }
419
- }())
420
- /*!
421
- Transformation Matrix v2.0
422
- (c) Epistemex 2014-2015
423
- www.epistemex.com
424
- By Ken Fyrstenberg
425
- Contributions by leeoniya.
426
- License: MIT, header required.
427
- */
428
-
429
- /**
430
- * 2D transformation matrix object initialized with identity matrix.
431
- *
432
- * The matrix can synchronize a canvas context by supplying the context
433
- * as an argument, or later apply current absolute transform to an
434
- * existing context.
435
- *
436
- * All values are handled as floating point values.
437
- *
438
- * @param {CanvasRenderingContext2D} [context] - Optional context to sync with Matrix
439
- * @prop {number} a - scale x
440
- * @prop {number} b - shear y
441
- * @prop {number} c - shear x
442
- * @prop {number} d - scale y
443
- * @prop {number} e - translate x
444
- * @prop {number} f - translate y
445
- * @prop {CanvasRenderingContext2D|null} [context=null] - set or get current canvas context
446
- * @constructor
447
- */
448
-
449
- var Matrix = (function () {
450
-
451
- var _cos = Math.cos;
452
- var _sin = Math.sin;
453
- var _tan = Math.tan;
454
- var _rnd = Math.round;
455
-
456
- function reset() {
457
- this.props[0] = 1;
458
- this.props[1] = 0;
459
- this.props[2] = 0;
460
- this.props[3] = 0;
461
- this.props[4] = 0;
462
- this.props[5] = 1;
463
- this.props[6] = 0;
464
- this.props[7] = 0;
465
- this.props[8] = 0;
466
- this.props[9] = 0;
467
- this.props[10] = 1;
468
- this.props[11] = 0;
469
- this.props[12] = 0;
470
- this.props[13] = 0;
471
- this.props[14] = 0;
472
- this.props[15] = 1;
473
- return this;
474
- }
475
-
476
- function rotate(angle) {
477
- if (angle === 0) {
478
- return this;
479
- }
480
- var mCos = _cos(angle);
481
- var mSin = _sin(angle);
482
- return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
483
- }
484
-
485
- function rotateX(angle) {
486
- if (angle === 0) {
487
- return this;
488
- }
489
- var mCos = _cos(angle);
490
- var mSin = _sin(angle);
491
- return this._t(1, 0, 0, 0, 0, mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1);
492
- }
493
-
494
- function rotateY(angle) {
495
- if (angle === 0) {
496
- return this;
497
- }
498
- var mCos = _cos(angle);
499
- var mSin = _sin(angle);
500
- return this._t(mCos, 0, mSin, 0, 0, 1, 0, 0, -mSin, 0, mCos, 0, 0, 0, 0, 1);
501
- }
502
-
503
- function rotateZ(angle) {
504
- if (angle === 0) {
505
- return this;
506
- }
507
- var mCos = _cos(angle);
508
- var mSin = _sin(angle);
509
- return this._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
510
- }
511
-
512
- function shear(sx, sy) {
513
- return this._t(1, sy, sx, 1, 0, 0);
514
- }
515
-
516
- function skew(ax, ay) {
517
- return this.shear(_tan(ax), _tan(ay));
518
- }
519
-
520
- function skewFromAxis(ax, angle) {
521
- var mCos = _cos(angle);
522
- var mSin = _sin(angle);
523
- return this._t(mCos, mSin, 0, 0, -mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
524
- ._t(1, 0, 0, 0, _tan(ax), 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)
525
- ._t(mCos, -mSin, 0, 0, mSin, mCos, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1);
526
- //return this._t(mCos, mSin, -mSin, mCos, 0, 0)._t(1, 0, _tan(ax), 1, 0, 0)._t(mCos, -mSin, mSin, mCos, 0, 0);
527
- }
528
-
529
- function scale(sx, sy, sz) {
530
- if (!sz && sz !== 0) {
531
- sz = 1;
532
- }
533
- if (sx === 1 && sy === 1 && sz === 1) {
534
- return this;
535
- }
536
- return this._t(sx, 0, 0, 0, 0, sy, 0, 0, 0, 0, sz, 0, 0, 0, 0, 1);
537
- }
538
-
539
- function setTransform(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p) {
540
- this.props[0] = a;
541
- this.props[1] = b;
542
- this.props[2] = c;
543
- this.props[3] = d;
544
- this.props[4] = e;
545
- this.props[5] = f;
546
- this.props[6] = g;
547
- this.props[7] = h;
548
- this.props[8] = i;
549
- this.props[9] = j;
550
- this.props[10] = k;
551
- this.props[11] = l;
552
- this.props[12] = m;
553
- this.props[13] = n;
554
- this.props[14] = o;
555
- this.props[15] = p;
556
- return this;
557
- }
558
-
559
- function translate(tx, ty, tz) {
560
- tz = tz || 0;
561
- if (tx !== 0 || ty !== 0 || tz !== 0) {
562
- return this._t(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, tx, ty, tz, 1);
563
- }
564
- return this;
565
- }
566
-
567
- function transform(a2, b2, c2, d2, e2, f2, g2, h2, i2, j2, k2, l2, m2, n2, o2, p2) {
568
-
569
- var _p = this.props;
570
-
571
- if (a2 === 1 && b2 === 0 && c2 === 0 && d2 === 0 && e2 === 0 && f2 === 1 && g2 === 0 && h2 === 0 && i2 === 0 && j2 === 0 && k2 === 1 && l2 === 0) {
572
- //NOTE: commenting this condition because TurboFan deoptimizes code when present
573
- //if(m2 !== 0 || n2 !== 0 || o2 !== 0){
574
- _p[12] = _p[12] * a2 + _p[15] * m2;
575
- _p[13] = _p[13] * f2 + _p[15] * n2;
576
- _p[14] = _p[14] * k2 + _p[15] * o2;
577
- _p[15] = _p[15] * p2;
578
- //}
579
- this._identityCalculated = false;
580
- return this;
581
- }
582
-
583
- var a1 = _p[0];
584
- var b1 = _p[1];
585
- var c1 = _p[2];
586
- var d1 = _p[3];
587
- var e1 = _p[4];
588
- var f1 = _p[5];
589
- var g1 = _p[6];
590
- var h1 = _p[7];
591
- var i1 = _p[8];
592
- var j1 = _p[9];
593
- var k1 = _p[10];
594
- var l1 = _p[11];
595
- var m1 = _p[12];
596
- var n1 = _p[13];
597
- var o1 = _p[14];
598
- var p1 = _p[15];
599
-
600
- /* matrix order (canvas compatible):
601
- * ace
602
- * bdf
603
- * 001
604
- */
605
- _p[0] = a1 * a2 + b1 * e2 + c1 * i2 + d1 * m2;
606
- _p[1] = a1 * b2 + b1 * f2 + c1 * j2 + d1 * n2;
607
- _p[2] = a1 * c2 + b1 * g2 + c1 * k2 + d1 * o2;
608
- _p[3] = a1 * d2 + b1 * h2 + c1 * l2 + d1 * p2;
609
-
610
- _p[4] = e1 * a2 + f1 * e2 + g1 * i2 + h1 * m2;
611
- _p[5] = e1 * b2 + f1 * f2 + g1 * j2 + h1 * n2;
612
- _p[6] = e1 * c2 + f1 * g2 + g1 * k2 + h1 * o2;
613
- _p[7] = e1 * d2 + f1 * h2 + g1 * l2 + h1 * p2;
614
-
615
- _p[8] = i1 * a2 + j1 * e2 + k1 * i2 + l1 * m2;
616
- _p[9] = i1 * b2 + j1 * f2 + k1 * j2 + l1 * n2;
617
- _p[10] = i1 * c2 + j1 * g2 + k1 * k2 + l1 * o2;
618
- _p[11] = i1 * d2 + j1 * h2 + k1 * l2 + l1 * p2;
619
-
620
- _p[12] = m1 * a2 + n1 * e2 + o1 * i2 + p1 * m2;
621
- _p[13] = m1 * b2 + n1 * f2 + o1 * j2 + p1 * n2;
622
- _p[14] = m1 * c2 + n1 * g2 + o1 * k2 + p1 * o2;
623
- _p[15] = m1 * d2 + n1 * h2 + o1 * l2 + p1 * p2;
624
-
625
- this._identityCalculated = false;
626
- return this;
627
- }
628
-
629
- function isIdentity() {
630
- if (!this._identityCalculated) {
631
- this._identity = !(this.props[0] !== 1 || this.props[1] !== 0 || this.props[2] !== 0 || this.props[3] !== 0 || this.props[4] !== 0 || this.props[5] !== 1 || this.props[6] !== 0 || this.props[7] !== 0 || this.props[8] !== 0 || this.props[9] !== 0 || this.props[10] !== 1 || this.props[11] !== 0 || this.props[12] !== 0 || this.props[13] !== 0 || this.props[14] !== 0 || this.props[15] !== 1);
632
- this._identityCalculated = true;
633
- }
634
- return this._identity;
635
- }
636
-
637
- function equals(matr) {
638
- var i = 0;
639
- while (i < 16) {
640
- if (matr.props[i] !== this.props[i]) {
641
- return false;
642
- }
643
- i += 1;
644
- }
645
- return true;
646
- }
647
-
648
- function clone(matr) {
649
- var i;
650
- for (i = 0; i < 16; i += 1) {
651
- matr.props[i] = this.props[i];
652
- }
653
- }
654
-
655
- function cloneFromProps(props) {
656
- var i;
657
- for (i = 0; i < 16; i += 1) {
658
- this.props[i] = props[i];
659
- }
660
- }
661
-
662
- function applyToPoint(x, y, z) {
663
-
664
- return {
665
- x: x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12],
666
- y: x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13],
667
- z: x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14]
668
- };
669
- /*return {
670
- x: x * me.a + y * me.c + me.e,
671
- y: x * me.b + y * me.d + me.f
672
- };*/
673
- }
674
-
675
- function applyToX(x, y, z) {
676
- return x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12];
677
- }
678
-
679
- function applyToY(x, y, z) {
680
- return x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13];
681
- }
682
-
683
- function applyToZ(x, y, z) {
684
- return x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14];
685
- }
686
-
687
- function getInverseMatrix() {
688
- var determinant = this.props[0] * this.props[5] - this.props[1] * this.props[4];
689
- var a = this.props[5] / determinant;
690
- var b = -this.props[1] / determinant;
691
- var c = -this.props[4] / determinant;
692
- var d = this.props[0] / determinant;
693
- var e = (this.props[4] * this.props[13] - this.props[5] * this.props[12]) / determinant;
694
- var f = -(this.props[0] * this.props[13] - this.props[1] * this.props[12]) / determinant;
695
- var inverseMatrix = new Matrix();
696
- inverseMatrix.props[0] = a;
697
- inverseMatrix.props[1] = b;
698
- inverseMatrix.props[4] = c;
699
- inverseMatrix.props[5] = d;
700
- inverseMatrix.props[12] = e;
701
- inverseMatrix.props[13] = f;
702
- return inverseMatrix;
703
- }
704
-
705
- function inversePoint(pt) {
706
- var inverseMatrix = this.getInverseMatrix();
707
- return inverseMatrix.applyToPointArray(pt[0], pt[1], pt[2] || 0)
708
- }
709
-
710
- function inversePoints(pts) {
711
- var i, len = pts.length,
712
- retPts = [];
713
- for (i = 0; i < len; i += 1) {
714
- retPts[i] = inversePoint(pts[i]);
715
- }
716
- return retPts;
717
- }
718
-
719
- function applyToTriplePoints(pt1, pt2, pt3) {
720
- var arr = createTypedArray('float32', 6);
721
- if (this.isIdentity()) {
722
- arr[0] = pt1[0];
723
- arr[1] = pt1[1];
724
- arr[2] = pt2[0];
725
- arr[3] = pt2[1];
726
- arr[4] = pt3[0];
727
- arr[5] = pt3[1];
728
- } else {
729
- var p0 = this.props[0],
730
- p1 = this.props[1],
731
- p4 = this.props[4],
732
- p5 = this.props[5],
733
- p12 = this.props[12],
734
- p13 = this.props[13];
735
- arr[0] = pt1[0] * p0 + pt1[1] * p4 + p12;
736
- arr[1] = pt1[0] * p1 + pt1[1] * p5 + p13;
737
- arr[2] = pt2[0] * p0 + pt2[1] * p4 + p12;
738
- arr[3] = pt2[0] * p1 + pt2[1] * p5 + p13;
739
- arr[4] = pt3[0] * p0 + pt3[1] * p4 + p12;
740
- arr[5] = pt3[0] * p1 + pt3[1] * p5 + p13;
741
- }
742
- return arr;
743
- }
744
-
745
- function applyToPointArray(x, y, z) {
746
- var arr;
747
- if (this.isIdentity()) {
748
- arr = [x, y, z];
749
- } else {
750
- arr = [x * this.props[0] + y * this.props[4] + z * this.props[8] + this.props[12], x * this.props[1] + y * this.props[5] + z * this.props[9] + this.props[13], x * this.props[2] + y * this.props[6] + z * this.props[10] + this.props[14]];
751
- }
752
- return arr;
753
- }
754
-
755
- function applyToPointStringified(x, y) {
756
- if (this.isIdentity()) {
757
- return x + ',' + y;
758
- }
759
- var _p = this.props;
760
- return Math.round((x * _p[0] + y * _p[4] + _p[12]) * 100) / 100 + ',' + Math.round((x * _p[1] + y * _p[5] + _p[13]) * 100) / 100;
761
- }
762
-
763
- function toCSS() {
764
- //Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.
765
- /*if(this.isIdentity()) {
766
- return '';
767
- }*/
768
- var i = 0;
769
- var props = this.props;
770
- var cssValue = 'matrix3d(';
771
- var v = 10000;
772
- while (i < 16) {
773
- cssValue += _rnd(props[i] * v) / v;
774
- cssValue += i === 15 ? ')' : ',';
775
- i += 1;
776
- }
777
- return cssValue;
778
- }
779
-
780
- function roundMatrixProperty(val) {
781
- var v = 10000;
782
- if ((val < 0.000001 && val > 0) || (val > -0.000001 && val < 0)) {
783
- return _rnd(val * v) / v;
784
- }
785
- return val;
786
- }
787
-
788
- function to2dCSS() {
789
- //Doesn't make much sense to add this optimization. If it is an identity matrix, it's very likely this will get called only once since it won't be keyframed.
790
- /*if(this.isIdentity()) {
791
- return '';
792
- }*/
793
- var props = this.props;
794
- var _a = roundMatrixProperty(props[0]);
795
- var _b = roundMatrixProperty(props[1]);
796
- var _c = roundMatrixProperty(props[4]);
797
- var _d = roundMatrixProperty(props[5]);
798
- var _e = roundMatrixProperty(props[12]);
799
- var _f = roundMatrixProperty(props[13]);
800
- return "matrix(" + _a + ',' + _b + ',' + _c + ',' + _d + ',' + _e + ',' + _f + ")";
801
- }
802
-
803
- return function () {
804
- this.reset = reset;
805
- this.rotate = rotate;
806
- this.rotateX = rotateX;
807
- this.rotateY = rotateY;
808
- this.rotateZ = rotateZ;
809
- this.skew = skew;
810
- this.skewFromAxis = skewFromAxis;
811
- this.shear = shear;
812
- this.scale = scale;
813
- this.setTransform = setTransform;
814
- this.translate = translate;
815
- this.transform = transform;
816
- this.applyToPoint = applyToPoint;
817
- this.applyToX = applyToX;
818
- this.applyToY = applyToY;
819
- this.applyToZ = applyToZ;
820
- this.applyToPointArray = applyToPointArray;
821
- this.applyToTriplePoints = applyToTriplePoints;
822
- this.applyToPointStringified = applyToPointStringified;
823
- this.toCSS = toCSS;
824
- this.to2dCSS = to2dCSS;
825
- this.clone = clone;
826
- this.cloneFromProps = cloneFromProps;
827
- this.equals = equals;
828
- this.inversePoints = inversePoints;
829
- this.inversePoint = inversePoint;
830
- this.getInverseMatrix = getInverseMatrix;
831
- this._t = this.transform;
832
- this.isIdentity = isIdentity;
833
- this._identity = true;
834
- this._identityCalculated = false;
835
-
836
- this.props = createTypedArray('float32', 16);
837
- this.reset();
838
- };
839
- }());
840
-
841
- /*
842
- Copyright 2014 David Bau.
843
-
844
- Permission is hereby granted, free of charge, to any person obtaining
845
- a copy of this software and associated documentation files (the
846
- "Software"), to deal in the Software without restriction, including
847
- without limitation the rights to use, copy, modify, merge, publish,
848
- distribute, sublicense, and/or sell copies of the Software, and to
849
- permit persons to whom the Software is furnished to do so, subject to
850
- the following conditions:
851
-
852
- The above copyright notice and this permission notice shall be
853
- included in all copies or substantial portions of the Software.
854
-
855
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
856
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
857
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
858
- IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
859
- CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
860
- TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
861
- SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
862
-
863
- */
864
-
865
- (function (pool, math) {
866
- //
867
- // The following constants are related to IEEE 754 limits.
868
- //
869
- var global = this,
870
- width = 256, // each RC4 output is 0 <= x < 256
871
- chunks = 6, // at least six RC4 outputs for each double
872
- digits = 52, // there are 52 significant digits in a double
873
- rngname = 'random', // rngname: name for Math.random and Math.seedrandom
874
- startdenom = math.pow(width, chunks),
875
- significance = math.pow(2, digits),
876
- overflow = significance * 2,
877
- mask = width - 1,
878
- nodecrypto; // node.js crypto module, initialized at the bottom.
879
-
880
- //
881
- // seedrandom()
882
- // This is the seedrandom function described above.
883
- //
884
- function seedrandom(seed, options, callback) {
885
- var key = [];
886
- options = (options === true) ? {
887
- entropy: true
888
- } : (options || {});
889
-
890
- // Flatten the seed string or build one from local entropy if needed.
891
- var shortseed = mixkey(flatten(
892
- options.entropy ? [seed, tostring(pool)] :
893
- (seed === null) ? autoseed() : seed, 3), key);
894
-
895
- // Use the seed to initialize an ARC4 generator.
896
- var arc4 = new ARC4(key);
897
-
898
- // This function returns a random double in [0, 1) that contains
899
- // randomness in every bit of the mantissa of the IEEE 754 value.
900
- var prng = function () {
901
- var n = arc4.g(chunks), // Start with a numerator n < 2 ^ 48
902
- d = startdenom, // and denominator d = 2 ^ 48.
903
- x = 0; // and no 'extra last byte'.
904
- while (n < significance) { // Fill up all significant digits by
905
- n = (n + x) * width; // shifting numerator and
906
- d *= width; // denominator and generating a
907
- x = arc4.g(1); // new least-significant-byte.
908
- }
909
- while (n >= overflow) { // To avoid rounding up, before adding
910
- n /= 2; // last byte, shift everything
911
- d /= 2; // right using integer math until
912
- x >>>= 1; // we have exactly the desired bits.
913
- }
914
- return (n + x) / d; // Form the number within [0, 1).
915
- };
916
-
917
- prng.int32 = function () {
918
- return arc4.g(4) | 0;
919
- };
920
- prng.quick = function () {
921
- return arc4.g(4) / 0x100000000;
922
- };
923
- prng.double = prng;
924
-
925
- // Mix the randomness into accumulated entropy.
926
- mixkey(tostring(arc4.S), pool);
927
-
928
- // Calling convention: what to return as a function of prng, seed, is_math.
929
- return (options.pass || callback ||
930
- function (prng, seed, is_math_call, state) {
931
- if (state) {
932
- // Load the arc4 state from the given state if it has an S array.
933
- if (state.S) {
934
- copy(state, arc4);
935
- }
936
- // Only provide the .state method if requested via options.state.
937
- prng.state = function () {
938
- return copy(arc4, {});
939
- };
940
- }
941
-
942
- // If called as a method of Math (Math.seedrandom()), mutate
943
- // Math.random because that is how seedrandom.js has worked since v1.0.
944
- if (is_math_call) {
945
- math[rngname] = prng;
946
- return seed;
947
- }
948
-
949
- // Otherwise, it is a newer calling convention, so return the
950
- // prng directly.
951
- else return prng;
952
- })(
953
- prng,
954
- shortseed,
955
- 'global' in options ? options.global : (this == math),
956
- options.state);
957
- }
958
- math['seed' + rngname] = seedrandom;
959
-
960
- //
961
- // ARC4
962
- //
963
- // An ARC4 implementation. The constructor takes a key in the form of
964
- // an array of at most (width) integers that should be 0 <= x < (width).
965
- //
966
- // The g(count) method returns a pseudorandom integer that concatenates
967
- // the next (count) outputs from ARC4. Its return value is a number x
968
- // that is in the range 0 <= x < (width ^ count).
969
- //
970
- function ARC4(key) {
971
- var t, keylen = key.length,
972
- me = this,
973
- i = 0,
974
- j = me.i = me.j = 0,
975
- s = me.S = [];
976
-
977
- // The empty key [] is treated as [0].
978
- if (!keylen) {
979
- key = [keylen++];
980
- }
981
-
982
- // Set up S using the standard key scheduling algorithm.
983
- while (i < width) {
984
- s[i] = i++;
985
- }
986
- for (i = 0; i < width; i++) {
987
- s[i] = s[j = mask & (j + key[i % keylen] + (t = s[i]))];
988
- s[j] = t;
989
- }
990
-
991
- // The "g" method returns the next (count) outputs as one number.
992
- me.g = function (count) {
993
- // Using instance members instead of closure state nearly doubles speed.
994
- var t, r = 0,
995
- i = me.i,
996
- j = me.j,
997
- s = me.S;
998
- while (count--) {
999
- t = s[i = mask & (i + 1)];
1000
- r = r * width + s[mask & ((s[i] = s[j = mask & (j + t)]) + (s[j] = t))];
1001
- }
1002
- me.i = i;
1003
- me.j = j;
1004
- return r;
1005
- // For robust unpredictability, the function call below automatically
1006
- // discards an initial batch of values. This is called RC4-drop[256].
1007
- // See http://google.com/search?q=rsa+fluhrer+response&btnI
1008
- };
1009
- }
1010
-
1011
- //
1012
- // copy()
1013
- // Copies internal state of ARC4 to or from a plain object.
1014
- //
1015
- function copy(f, t) {
1016
- t.i = f.i;
1017
- t.j = f.j;
1018
- t.S = f.S.slice();
1019
- return t;
1020
- }
1021
-
1022
- //
1023
- // flatten()
1024
- // Converts an object tree to nested arrays of strings.
1025
- //
1026
- function flatten(obj, depth) {
1027
- var result = [],
1028
- typ = (typeof obj),
1029
- prop;
1030
- if (depth && typ == 'object') {
1031
- for (prop in obj) {
1032
- try {
1033
- result.push(flatten(obj[prop], depth - 1));
1034
- } catch (e) { }
1035
- }
1036
- }
1037
- return (result.length ? result : typ == 'string' ? obj : obj + '\0');
1038
- }
1039
-
1040
- //
1041
- // mixkey()
1042
- // Mixes a string seed into a key that is an array of integers, and
1043
- // returns a shortened string seed that is equivalent to the result key.
1044
- //
1045
- function mixkey(seed, key) {
1046
- var stringseed = seed + '',
1047
- smear, j = 0;
1048
- while (j < stringseed.length) {
1049
- key[mask & j] =
1050
- mask & ((smear ^= key[mask & j] * 19) + stringseed.charCodeAt(j++));
1051
- }
1052
- return tostring(key);
1053
- }
1054
-
1055
- //
1056
- // autoseed()
1057
- // Returns an object for autoseeding, using window.crypto and Node crypto
1058
- // module if available.
1059
- //
1060
- function autoseed() {
1061
- try {
1062
- if (nodecrypto) {
1063
- return tostring(nodecrypto.randomBytes(width));
1064
- }
1065
- var out = new Uint8Array(width);
1066
- (global.crypto || global.msCrypto).getRandomValues(out);
1067
- return tostring(out);
1068
- } catch (e) {
1069
- var browser = global.navigator,
1070
- plugins = browser && browser.plugins;
1071
- return [+new Date(), global, plugins, global.screen, tostring(pool)];
1072
- }
1073
- }
1074
-
1075
- //
1076
- // tostring()
1077
- // Converts an array of charcodes to a string
1078
- //
1079
- function tostring(a) {
1080
- return String.fromCharCode.apply(0, a);
1081
- }
1082
-
1083
- //
1084
- // When seedrandom.js is loaded, we immediately mix a few bits
1085
- // from the built-in RNG into the entropy pool. Because we do
1086
- // not want to interfere with deterministic PRNG state later,
1087
- // seedrandom will not call math.random on its own again after
1088
- // initialization.
1089
- //
1090
- mixkey(math.random(), pool);
1091
-
1092
- //
1093
- // Nodejs and AMD support: export the implementation as a module using
1094
- // either convention.
1095
- //
1096
-
1097
- // End anonymous scope, and pass initial values.
1098
- })(
1099
- [], // pool: entropy pool starts empty
1100
- BMMath // math: package containing random, pow, and seedrandom
1101
- );
1102
- var BezierFactory = (function () {
1103
- /**
1104
- * BezierEasing - use bezier curve for transition easing function
1105
- * by Gaëtan Renaudeau 2014 - 2015 – MIT License
1106
- *
1107
- * Credits: is based on Firefox's nsSMILKeySpline.cpp
1108
- * Usage:
1109
- * var spline = BezierEasing([ 0.25, 0.1, 0.25, 1.0 ])
1110
- * spline.get(x) => returns the easing value | x must be in [0, 1] range
1111
- *
1112
- */
1113
-
1114
- var ob = {};
1115
- ob.getBezierEasing = getBezierEasing;
1116
- var beziers = {};
1117
-
1118
- function getBezierEasing(a, b, c, d, nm) {
1119
- var str = nm || ('bez_' + a + '_' + b + '_' + c + '_' + d).replace(/\./g, 'p');
1120
- if (beziers[str]) {
1121
- return beziers[str];
1122
- }
1123
- var bezEasing = new BezierEasing([a, b, c, d]);
1124
- beziers[str] = bezEasing;
1125
- return bezEasing;
1126
- }
1127
-
1128
- // These values are established by empiricism with tests (tradeoff: performance VS precision)
1129
- var NEWTON_ITERATIONS = 4;
1130
- var NEWTON_MIN_SLOPE = 0.001;
1131
- var SUBDIVISION_PRECISION = 0.0000001;
1132
- var SUBDIVISION_MAX_ITERATIONS = 10;
1133
-
1134
- var kSplineTableSize = 11;
1135
- var kSampleStepSize = 1.0 / (kSplineTableSize - 1.0);
1136
-
1137
- var float32ArraySupported = typeof Float32Array === "function";
1138
-
1139
- function A(aA1, aA2) {
1140
- return 1.0 - 3.0 * aA2 + 3.0 * aA1;
1141
- }
1142
-
1143
- function B(aA1, aA2) {
1144
- return 3.0 * aA2 - 6.0 * aA1;
1145
- }
1146
-
1147
- function C(aA1) {
1148
- return 3.0 * aA1;
1149
- }
1150
-
1151
- // Returns x(t) given t, x1, and x2, or y(t) given t, y1, and y2.
1152
- function calcBezier(aT, aA1, aA2) {
1153
- return ((A(aA1, aA2) * aT + B(aA1, aA2)) * aT + C(aA1)) * aT;
1154
- }
1155
-
1156
- // Returns dx/dt given t, x1, and x2, or dy/dt given t, y1, and y2.
1157
- function getSlope(aT, aA1, aA2) {
1158
- return 3.0 * A(aA1, aA2) * aT * aT + 2.0 * B(aA1, aA2) * aT + C(aA1);
1159
- }
1160
-
1161
- function binarySubdivide(aX, aA, aB, mX1, mX2) {
1162
- var currentX, currentT, i = 0;
1163
- do {
1164
- currentT = aA + (aB - aA) / 2.0;
1165
- currentX = calcBezier(currentT, mX1, mX2) - aX;
1166
- if (currentX > 0.0) {
1167
- aB = currentT;
1168
- } else {
1169
- aA = currentT;
1170
- }
1171
- } while (Math.abs(currentX) > SUBDIVISION_PRECISION && ++i < SUBDIVISION_MAX_ITERATIONS);
1172
- return currentT;
1173
- }
1174
-
1175
- function newtonRaphsonIterate(aX, aGuessT, mX1, mX2) {
1176
- for (var i = 0; i < NEWTON_ITERATIONS; ++i) {
1177
- var currentSlope = getSlope(aGuessT, mX1, mX2);
1178
- if (currentSlope === 0.0) return aGuessT;
1179
- var currentX = calcBezier(aGuessT, mX1, mX2) - aX;
1180
- aGuessT -= currentX / currentSlope;
1181
- }
1182
- return aGuessT;
1183
- }
1184
-
1185
- /**
1186
- * points is an array of [ mX1, mY1, mX2, mY2 ]
1187
- */
1188
- function BezierEasing(points) {
1189
- this._p = points;
1190
- this._mSampleValues = float32ArraySupported ? new Float32Array(kSplineTableSize) : new Array(kSplineTableSize);
1191
- this._precomputed = false;
1192
-
1193
- this.get = this.get.bind(this);
1194
- }
1195
-
1196
- BezierEasing.prototype = {
1197
-
1198
- get: function (x) {
1199
- var mX1 = this._p[0],
1200
- mY1 = this._p[1],
1201
- mX2 = this._p[2],
1202
- mY2 = this._p[3];
1203
- if (!this._precomputed) this._precompute();
1204
- if (mX1 === mY1 && mX2 === mY2) return x; // linear
1205
- // Because JavaScript number are imprecise, we should guarantee the extremes are right.
1206
- if (x === 0) return 0;
1207
- if (x === 1) return 1;
1208
- return calcBezier(this._getTForX(x), mY1, mY2);
1209
- },
1210
-
1211
- // Private part
1212
-
1213
- _precompute: function () {
1214
- var mX1 = this._p[0],
1215
- mY1 = this._p[1],
1216
- mX2 = this._p[2],
1217
- mY2 = this._p[3];
1218
- this._precomputed = true;
1219
- if (mX1 !== mY1 || mX2 !== mY2)
1220
- this._calcSampleValues();
1221
- },
1222
-
1223
- _calcSampleValues: function () {
1224
- var mX1 = this._p[0],
1225
- mX2 = this._p[2];
1226
- for (var i = 0; i < kSplineTableSize; ++i) {
1227
- this._mSampleValues[i] = calcBezier(i * kSampleStepSize, mX1, mX2);
1228
- }
1229
- },
1230
-
1231
- /**
1232
- * getTForX chose the fastest heuristic to determine the percentage value precisely from a given X projection.
1233
- */
1234
- _getTForX: function (aX) {
1235
- var mX1 = this._p[0],
1236
- mX2 = this._p[2],
1237
- mSampleValues = this._mSampleValues;
1238
-
1239
- var intervalStart = 0.0;
1240
- var currentSample = 1;
1241
- var lastSample = kSplineTableSize - 1;
1242
-
1243
- for (; currentSample !== lastSample && mSampleValues[currentSample] <= aX; ++currentSample) {
1244
- intervalStart += kSampleStepSize;
1245
- }
1246
- --currentSample;
1247
-
1248
- // Interpolate to provide an initial guess for t
1249
- var dist = (aX - mSampleValues[currentSample]) / (mSampleValues[currentSample + 1] - mSampleValues[currentSample]);
1250
- var guessForT = intervalStart + dist * kSampleStepSize;
1251
-
1252
- var initialSlope = getSlope(guessForT, mX1, mX2);
1253
- if (initialSlope >= NEWTON_MIN_SLOPE) {
1254
- return newtonRaphsonIterate(aX, guessForT, mX1, mX2);
1255
- } else if (initialSlope === 0.0) {
1256
- return guessForT;
1257
- } else {
1258
- return binarySubdivide(aX, intervalStart, intervalStart + kSampleStepSize, mX1, mX2);
1259
- }
1260
- }
1261
- };
1262
-
1263
- return ob;
1264
-
1265
- }());
1266
- (function () {
1267
- var lastTime = 0;
1268
- var vendors = ['ms', 'moz', 'webkit', 'o'];
1269
- for (var x = 0; x < vendors.length && !window.requestAnimationFrame; ++x) {
1270
- window.requestAnimationFrame = window[vendors[x] + 'RequestAnimationFrame'];
1271
- window.cancelAnimationFrame = window[vendors[x] + 'CancelAnimationFrame'] || window[vendors[x] + 'CancelRequestAnimationFrame'];
1272
- }
1273
- if (!window.requestAnimationFrame)
1274
- window.requestAnimationFrame = function (callback, element) {
1275
- var currTime = new Date().getTime();
1276
- var timeToCall = Math.max(0, 16 - (currTime - lastTime));
1277
- var id = setTimeout(function () {
1278
- callback(currTime + timeToCall);
1279
- },
1280
- timeToCall);
1281
- lastTime = currTime + timeToCall;
1282
- return id;
1283
- };
1284
- if (!window.cancelAnimationFrame)
1285
- window.cancelAnimationFrame = function (id) {
1286
- clearTimeout(id);
1287
- };
1288
- }());
1289
-
1290
- function extendPrototype(sources, destination) {
1291
- var i, len = sources.length,
1292
- sourcePrototype;
1293
- for (i = 0; i < len; i += 1) {
1294
- sourcePrototype = sources[i].prototype;
1295
- for (var attr in sourcePrototype) {
1296
- if (sourcePrototype.hasOwnProperty(attr)) destination.prototype[attr] = sourcePrototype[attr];
1297
- }
1298
- }
1299
- }
1300
-
1301
- function getDescriptor(object, prop) {
1302
- return Object.getOwnPropertyDescriptor(object, prop);
1303
- }
1304
-
1305
- function createProxyFunction(prototype) {
1306
- function ProxyFunction() { }
1307
- ProxyFunction.prototype = prototype;
1308
- return ProxyFunction;
1309
- }
1310
-
1311
- function bezFunction() {
1312
-
1313
- var easingFunctions = [];
1314
- var math = Math;
1315
-
1316
- function pointOnLine2D(x1, y1, x2, y2, x3, y3) {
1317
- var det1 = (x1 * y2) + (y1 * x3) + (x2 * y3) - (x3 * y2) - (y3 * x1) - (x2 * y1);
1318
- return det1 > -0.001 && det1 < 0.001;
1319
- }
1320
-
1321
- function pointOnLine3D(x1, y1, z1, x2, y2, z2, x3, y3, z3) {
1322
- if (z1 === 0 && z2 === 0 && z3 === 0) {
1323
- return pointOnLine2D(x1, y1, x2, y2, x3, y3);
1324
- }
1325
- var dist1 = Math.sqrt(Math.pow(x2 - x1, 2) + Math.pow(y2 - y1, 2) + Math.pow(z2 - z1, 2));
1326
- var dist2 = Math.sqrt(Math.pow(x3 - x1, 2) + Math.pow(y3 - y1, 2) + Math.pow(z3 - z1, 2));
1327
- var dist3 = Math.sqrt(Math.pow(x3 - x2, 2) + Math.pow(y3 - y2, 2) + Math.pow(z3 - z2, 2));
1328
- var diffDist;
1329
- if (dist1 > dist2) {
1330
- if (dist1 > dist3) {
1331
- diffDist = dist1 - dist2 - dist3;
1332
- } else {
1333
- diffDist = dist3 - dist2 - dist1;
1334
- }
1335
- } else if (dist3 > dist2) {
1336
- diffDist = dist3 - dist2 - dist1;
1337
- } else {
1338
- diffDist = dist2 - dist1 - dist3;
1339
- }
1340
- return diffDist > -0.0001 && diffDist < 0.0001;
1341
- }
1342
-
1343
- var getBezierLength = (function () {
1344
-
1345
- return function (pt1, pt2, pt3, pt4) {
1346
- var curveSegments = defaultCurveSegments;
1347
- var k;
1348
- var i, len;
1349
- var ptCoord, perc, addedLength = 0;
1350
- var ptDistance;
1351
- var point = [],
1352
- lastPoint = [];
1353
- var lengthData = bezier_length_pool.newElement();
1354
- len = pt3.length;
1355
- for (k = 0; k < curveSegments; k += 1) {
1356
- perc = k / (curveSegments - 1);
1357
- ptDistance = 0;
1358
- for (i = 0; i < len; i += 1) {
1359
- ptCoord = bm_pow(1 - perc, 3) * pt1[i] + 3 * bm_pow(1 - perc, 2) * perc * pt3[i] + 3 * (1 - perc) * bm_pow(perc, 2) * pt4[i] + bm_pow(perc, 3) * pt2[i];
1360
- point[i] = ptCoord;
1361
- if (lastPoint[i] !== null) {
1362
- ptDistance += bm_pow(point[i] - lastPoint[i], 2);
1363
- }
1364
- lastPoint[i] = point[i];
1365
- }
1366
- if (ptDistance) {
1367
- ptDistance = bm_sqrt(ptDistance);
1368
- addedLength += ptDistance;
1369
- }
1370
- lengthData.percents[k] = perc;
1371
- lengthData.lengths[k] = addedLength;
1372
- }
1373
- lengthData.addedLength = addedLength;
1374
- return lengthData;
1375
- };
1376
- }());
1377
-
1378
- function getSegmentsLength(shapeData) {
1379
- var segmentsLength = segments_length_pool.newElement();
1380
- var closed = shapeData.c;
1381
- var pathV = shapeData.v;
1382
- var pathO = shapeData.o;
1383
- var pathI = shapeData.i;
1384
- var i, len = shapeData._length;
1385
- var lengths = segmentsLength.lengths;
1386
- var totalLength = 0;
1387
- for (i = 0; i < len - 1; i += 1) {
1388
- lengths[i] = getBezierLength(pathV[i], pathV[i + 1], pathO[i], pathI[i + 1]);
1389
- totalLength += lengths[i].addedLength;
1390
- }
1391
- if (closed && len) {
1392
- lengths[i] = getBezierLength(pathV[i], pathV[0], pathO[i], pathI[0]);
1393
- totalLength += lengths[i].addedLength;
1394
- }
1395
- segmentsLength.totalLength = totalLength;
1396
- return segmentsLength;
1397
- }
1398
-
1399
- function BezierData(length) {
1400
- this.segmentLength = 0;
1401
- this.points = new Array(length);
1402
- }
1403
-
1404
- function PointData(partial, point) {
1405
- this.partialLength = partial;
1406
- this.point = point;
1407
- }
1408
-
1409
- var buildBezierData = (function () {
1410
-
1411
- var storedData = {};
1412
-
1413
- return function (pt1, pt2, pt3, pt4) {
1414
- var bezierName = (pt1[0] + '_' + pt1[1] + '_' + pt2[0] + '_' + pt2[1] + '_' + pt3[0] + '_' + pt3[1] + '_' + pt4[0] + '_' + pt4[1]).replace(/\./g, 'p');
1415
- if (!storedData[bezierName]) {
1416
- var curveSegments = defaultCurveSegments;
1417
- var k, i, len;
1418
- var ptCoord, perc, addedLength = 0;
1419
- var ptDistance;
1420
- var point, lastPoint = null;
1421
- if (pt1.length === 2 && (pt1[0] != pt2[0] || pt1[1] != pt2[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt1[0] + pt3[0], pt1[1] + pt3[1]) && pointOnLine2D(pt1[0], pt1[1], pt2[0], pt2[1], pt2[0] + pt4[0], pt2[1] + pt4[1])) {
1422
- curveSegments = 2;
1423
- }
1424
- var bezierData = new BezierData(curveSegments);
1425
- len = pt3.length;
1426
- for (k = 0; k < curveSegments; k += 1) {
1427
- point = createSizedArray(len);
1428
- perc = k / (curveSegments - 1);
1429
- ptDistance = 0;
1430
- for (i = 0; i < len; i += 1) {
1431
- ptCoord = bm_pow(1 - perc, 3) * pt1[i] + 3 * bm_pow(1 - perc, 2) * perc * (pt1[i] + pt3[i]) + 3 * (1 - perc) * bm_pow(perc, 2) * (pt2[i] + pt4[i]) + bm_pow(perc, 3) * pt2[i];
1432
- point[i] = ptCoord;
1433
- if (lastPoint !== null) {
1434
- ptDistance += bm_pow(point[i] - lastPoint[i], 2);
1435
- }
1436
- }
1437
- ptDistance = bm_sqrt(ptDistance);
1438
- addedLength += ptDistance;
1439
- bezierData.points[k] = new PointData(ptDistance, point);
1440
- lastPoint = point;
1441
- }
1442
- bezierData.segmentLength = addedLength;
1443
- storedData[bezierName] = bezierData;
1444
- }
1445
- return storedData[bezierName];
1446
- };
1447
- }());
1448
-
1449
- function getDistancePerc(perc, bezierData) {
1450
- var percents = bezierData.percents;
1451
- var lengths = bezierData.lengths;
1452
- var len = percents.length;
1453
- var initPos = bm_floor((len - 1) * perc);
1454
- var lengthPos = perc * bezierData.addedLength;
1455
- var lPerc = 0;
1456
- if (initPos === len - 1 || initPos === 0 || lengthPos === lengths[initPos]) {
1457
- return percents[initPos];
1458
- } else {
1459
- var dir = lengths[initPos] > lengthPos ? -1 : 1;
1460
- var flag = true;
1461
- while (flag) {
1462
- if (lengths[initPos] <= lengthPos && lengths[initPos + 1] > lengthPos) {
1463
- lPerc = (lengthPos - lengths[initPos]) / (lengths[initPos + 1] - lengths[initPos]);
1464
- flag = false;
1465
- } else {
1466
- initPos += dir;
1467
- }
1468
- if (initPos < 0 || initPos >= len - 1) {
1469
- //FIX for TypedArrays that don't store floating point values with enough accuracy
1470
- if (initPos === len - 1) {
1471
- return percents[initPos];
1472
- }
1473
- flag = false;
1474
- }
1475
- }
1476
- return percents[initPos] + (percents[initPos + 1] - percents[initPos]) * lPerc;
1477
- }
1478
- }
1479
-
1480
- function getPointInSegment(pt1, pt2, pt3, pt4, percent, bezierData) {
1481
- var t1 = getDistancePerc(percent, bezierData);
1482
- var u0 = 1;
1483
- var u1 = 1 - t1;
1484
- var ptX = Math.round((u1 * u1 * u1 * pt1[0] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[0] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[0] + t1 * t1 * t1 * pt2[0]) * 1000) / 1000;
1485
- var ptY = Math.round((u1 * u1 * u1 * pt1[1] + (t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1) * pt3[1] + (t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1) * pt4[1] + t1 * t1 * t1 * pt2[1]) * 1000) / 1000;
1486
- return [ptX, ptY];
1487
- }
1488
-
1489
- function getSegmentArray() {
1490
-
1491
- }
1492
-
1493
- var bezier_segment_points = createTypedArray('float32', 8);
1494
-
1495
- function getNewSegment(pt1, pt2, pt3, pt4, startPerc, endPerc, bezierData) {
1496
-
1497
- startPerc = startPerc < 0 ? 0 : startPerc > 1 ? 1 : startPerc;
1498
- var t0 = getDistancePerc(startPerc, bezierData);
1499
- endPerc = endPerc > 1 ? 1 : endPerc;
1500
- var t1 = getDistancePerc(endPerc, bezierData);
1501
- var i, len = pt1.length;
1502
- var u0 = 1 - t0;
1503
- var u1 = 1 - t1;
1504
- var u0u0u0 = u0 * u0 * u0;
1505
- var t0u0u0_3 = t0 * u0 * u0 * 3;
1506
- var t0t0u0_3 = t0 * t0 * u0 * 3;
1507
- var t0t0t0 = t0 * t0 * t0;
1508
- //
1509
- var u0u0u1 = u0 * u0 * u1;
1510
- var t0u0u1_3 = t0 * u0 * u1 + u0 * t0 * u1 + u0 * u0 * t1;
1511
- var t0t0u1_3 = t0 * t0 * u1 + u0 * t0 * t1 + t0 * u0 * t1;
1512
- var t0t0t1 = t0 * t0 * t1;
1513
- //
1514
- var u0u1u1 = u0 * u1 * u1;
1515
- var t0u1u1_3 = t0 * u1 * u1 + u0 * t1 * u1 + u0 * u1 * t1;
1516
- var t0t1u1_3 = t0 * t1 * u1 + u0 * t1 * t1 + t0 * u1 * t1;
1517
- var t0t1t1 = t0 * t1 * t1;
1518
- //
1519
- var u1u1u1 = u1 * u1 * u1;
1520
- var t1u1u1_3 = t1 * u1 * u1 + u1 * t1 * u1 + u1 * u1 * t1;
1521
- var t1t1u1_3 = t1 * t1 * u1 + u1 * t1 * t1 + t1 * u1 * t1;
1522
- var t1t1t1 = t1 * t1 * t1;
1523
- for (i = 0; i < len; i += 1) {
1524
- bezier_segment_points[i * 4] = Math.round((u0u0u0 * pt1[i] + t0u0u0_3 * pt3[i] + t0t0u0_3 * pt4[i] + t0t0t0 * pt2[i]) * 1000) / 1000;
1525
- bezier_segment_points[i * 4 + 1] = Math.round((u0u0u1 * pt1[i] + t0u0u1_3 * pt3[i] + t0t0u1_3 * pt4[i] + t0t0t1 * pt2[i]) * 1000) / 1000;
1526
- bezier_segment_points[i * 4 + 2] = Math.round((u0u1u1 * pt1[i] + t0u1u1_3 * pt3[i] + t0t1u1_3 * pt4[i] + t0t1t1 * pt2[i]) * 1000) / 1000;
1527
- bezier_segment_points[i * 4 + 3] = Math.round((u1u1u1 * pt1[i] + t1u1u1_3 * pt3[i] + t1t1u1_3 * pt4[i] + t1t1t1 * pt2[i]) * 1000) / 1000;
1528
- }
1529
-
1530
- return bezier_segment_points;
1531
- }
1532
-
1533
- return {
1534
- getSegmentsLength: getSegmentsLength,
1535
- getNewSegment: getNewSegment,
1536
- getPointInSegment: getPointInSegment,
1537
- buildBezierData: buildBezierData,
1538
- pointOnLine2D: pointOnLine2D,
1539
- pointOnLine3D: pointOnLine3D
1540
- };
1541
- }
1542
-
1543
- var bez = bezFunction();
1544
-
1545
- function dataFunctionManager() {
1546
-
1547
- //var tCanvasHelper = createTag('canvas').getContext('2d');
1548
-
1549
- function completeLayers(layers, comps, fontManager) {
1550
- var layerData;
1551
- var animArray, lastFrame;
1552
- var i, len = layers.length;
1553
- var j, jLen, k, kLen;
1554
- for (i = 0; i < len; i += 1) {
1555
- layerData = layers[i];
1556
- if (!('ks' in layerData) || layerData.completed) {
1557
- continue;
1558
- }
1559
- layerData.completed = true;
1560
- if (layerData.tt) {
1561
- layers[i - 1].td = layerData.tt;
1562
- }
1563
- animArray = [];
1564
- lastFrame = -1;
1565
- if (layerData.hasMask) {
1566
- var maskProps = layerData.masksProperties;
1567
- jLen = maskProps.length;
1568
- for (j = 0; j < jLen; j += 1) {
1569
- if (maskProps[j].pt.k.i) {
1570
- convertPathsToAbsoluteValues(maskProps[j].pt.k);
1571
- } else {
1572
- kLen = maskProps[j].pt.k.length;
1573
- for (k = 0; k < kLen; k += 1) {
1574
- if (maskProps[j].pt.k[k].s) {
1575
- convertPathsToAbsoluteValues(maskProps[j].pt.k[k].s[0]);
1576
- }
1577
- if (maskProps[j].pt.k[k].e) {
1578
- convertPathsToAbsoluteValues(maskProps[j].pt.k[k].e[0]);
1579
- }
1580
- }
1581
- }
1582
- }
1583
- }
1584
- if (layerData.ty === 0) {
1585
- layerData.layers = findCompLayers(layerData.refId, comps);
1586
- completeLayers(layerData.layers, comps, fontManager);
1587
- } else if (layerData.ty === 4) {
1588
- completeShapes(layerData.shapes);
1589
- } else if (layerData.ty == 5) {
1590
- completeText(layerData, fontManager);
1591
- }
1592
- }
1593
- }
1594
-
1595
- function findCompLayers(id, comps) {
1596
- var i = 0,
1597
- len = comps.length;
1598
- while (i < len) {
1599
- if (comps[i].id === id) {
1600
- if (!comps[i].layers.__used) {
1601
- comps[i].layers.__used = true;
1602
- return comps[i].layers;
1603
- }
1604
- return JSON.parse(JSON.stringify(comps[i].layers));
1605
- }
1606
- i += 1;
1607
- }
1608
- }
1609
-
1610
- function completeShapes(arr) {
1611
- var i, len = arr.length;
1612
- var j, jLen;
1613
- var hasPaths = false;
1614
- for (i = len - 1; i >= 0; i -= 1) {
1615
- if (arr[i].ty == 'sh') {
1616
- if (arr[i].ks.k.i) {
1617
- convertPathsToAbsoluteValues(arr[i].ks.k);
1618
- } else {
1619
- jLen = arr[i].ks.k.length;
1620
- for (j = 0; j < jLen; j += 1) {
1621
- if (arr[i].ks.k[j].s) {
1622
- convertPathsToAbsoluteValues(arr[i].ks.k[j].s[0]);
1623
- }
1624
- if (arr[i].ks.k[j].e) {
1625
- convertPathsToAbsoluteValues(arr[i].ks.k[j].e[0]);
1626
- }
1627
- }
1628
- }
1629
- hasPaths = true;
1630
- } else if (arr[i].ty == 'gr') {
1631
- completeShapes(arr[i].it);
1632
- }
1633
- }
1634
- /*if(hasPaths){
1635
- //mx: distance
1636
- //ss: sensitivity
1637
- //dc: decay
1638
- arr.splice(arr.length-1,0,{
1639
- "ty": "ms",
1640
- "mx":20,
1641
- "ss":10,
1642
- "dc":0.001,
1643
- "maxDist":200
1644
- });
1645
- }*/
1646
- }
1647
-
1648
- function convertPathsToAbsoluteValues(path) {
1649
- var i, len = path.i.length;
1650
- for (i = 0; i < len; i += 1) {
1651
- path.i[i][0] += path.v[i][0];
1652
- path.i[i][1] += path.v[i][1];
1653
- path.o[i][0] += path.v[i][0];
1654
- path.o[i][1] += path.v[i][1];
1655
- }
1656
- }
1657
-
1658
- function checkVersion(minimum, animVersionString) {
1659
- var animVersion = animVersionString ? animVersionString.split('.') : [100, 100, 100];
1660
- if (minimum[0] > animVersion[0]) {
1661
- return true;
1662
- } else if (animVersion[0] > minimum[0]) {
1663
- return false;
1664
- }
1665
- if (minimum[1] > animVersion[1]) {
1666
- return true;
1667
- } else if (animVersion[1] > minimum[1]) {
1668
- return false;
1669
- }
1670
- if (minimum[2] > animVersion[2]) {
1671
- return true;
1672
- } else if (animVersion[2] > minimum[2]) {
1673
- return false;
1674
- }
1675
- }
1676
-
1677
- var checkText = (function () {
1678
- var minimumVersion = [4, 4, 14];
1679
-
1680
- function updateTextLayer(textLayer) {
1681
- var documentData = textLayer.t.d;
1682
- textLayer.t.d = {
1683
- k: [{
1684
- s: documentData,
1685
- t: 0
1686
- }]
1687
- };
1688
- }
1689
-
1690
- function iterateLayers(layers) {
1691
- var i, len = layers.length;
1692
- for (i = 0; i < len; i += 1) {
1693
- if (layers[i].ty === 5) {
1694
- updateTextLayer(layers[i]);
1695
- }
1696
- }
1697
- }
1698
-
1699
- return function (animationData) {
1700
- if (checkVersion(minimumVersion, animationData.v)) {
1701
- iterateLayers(animationData.layers);
1702
- if (animationData.assets) {
1703
- var i, len = animationData.assets.length;
1704
- for (i = 0; i < len; i += 1) {
1705
- if (animationData.assets[i].layers) {
1706
- iterateLayers(animationData.assets[i].layers);
1707
-
1708
- }
1709
- }
1710
- }
1711
- }
1712
- };
1713
- }());
1714
-
1715
- var checkChars = (function () {
1716
- var minimumVersion = [4, 7, 99];
1717
- return function (animationData) {
1718
- if (animationData.chars && !checkVersion(minimumVersion, animationData.v)) {
1719
- var i, len = animationData.chars.length,
1720
- j, jLen, k, kLen;
1721
- var pathData, paths;
1722
- for (i = 0; i < len; i += 1) {
1723
- if (animationData.chars[i].data && animationData.chars[i].data.shapes) {
1724
- paths = animationData.chars[i].data.shapes[0].it;
1725
- jLen = paths.length;
1726
-
1727
- for (j = 0; j < jLen; j += 1) {
1728
- pathData = paths[j].ks.k;
1729
- if (!pathData.__converted) {
1730
- convertPathsToAbsoluteValues(paths[j].ks.k);
1731
- pathData.__converted = true;
1732
- }
1733
- }
1734
- }
1735
- }
1736
- }
1737
- };
1738
- }());
1739
-
1740
- var checkColors = (function () {
1741
- var minimumVersion = [4, 1, 9];
1742
-
1743
- function iterateShapes(shapes) {
1744
- var i, len = shapes.length;
1745
- var j, jLen;
1746
- for (i = 0; i < len; i += 1) {
1747
- if (shapes[i].ty === 'gr') {
1748
- iterateShapes(shapes[i].it);
1749
- } else if (shapes[i].ty === 'fl' || shapes[i].ty === 'st') {
1750
- if (shapes[i].c.k && shapes[i].c.k[0].i) {
1751
- jLen = shapes[i].c.k.length;
1752
- for (j = 0; j < jLen; j += 1) {
1753
- if (shapes[i].c.k[j].s) {
1754
- shapes[i].c.k[j].s[0] /= 255;
1755
- shapes[i].c.k[j].s[1] /= 255;
1756
- shapes[i].c.k[j].s[2] /= 255;
1757
- shapes[i].c.k[j].s[3] /= 255;
1758
- }
1759
- if (shapes[i].c.k[j].e) {
1760
- shapes[i].c.k[j].e[0] /= 255;
1761
- shapes[i].c.k[j].e[1] /= 255;
1762
- shapes[i].c.k[j].e[2] /= 255;
1763
- shapes[i].c.k[j].e[3] /= 255;
1764
- }
1765
- }
1766
- } else {
1767
- shapes[i].c.k[0] /= 255;
1768
- shapes[i].c.k[1] /= 255;
1769
- shapes[i].c.k[2] /= 255;
1770
- shapes[i].c.k[3] /= 255;
1771
- }
1772
- }
1773
- }
1774
- }
1775
-
1776
- function iterateLayers(layers) {
1777
- var i, len = layers.length;
1778
- for (i = 0; i < len; i += 1) {
1779
- if (layers[i].ty === 4) {
1780
- iterateShapes(layers[i].shapes);
1781
- }
1782
- }
1783
- }
1784
-
1785
- return function (animationData) {
1786
- if (checkVersion(minimumVersion, animationData.v)) {
1787
- iterateLayers(animationData.layers);
1788
- if (animationData.assets) {
1789
- var i, len = animationData.assets.length;
1790
- for (i = 0; i < len; i += 1) {
1791
- if (animationData.assets[i].layers) {
1792
- iterateLayers(animationData.assets[i].layers);
1793
-
1794
- }
1795
- }
1796
- }
1797
- }
1798
- };
1799
- }());
1800
-
1801
- var checkShapes = (function () {
1802
- var minimumVersion = [4, 4, 18];
1803
-
1804
-
1805
-
1806
- function completeShapes(arr) {
1807
- var i, len = arr.length;
1808
- var j, jLen;
1809
- var hasPaths = false;
1810
- for (i = len - 1; i >= 0; i -= 1) {
1811
- if (arr[i].ty == 'sh') {
1812
- if (arr[i].ks.k.i) {
1813
- arr[i].ks.k.c = arr[i].closed;
1814
- } else {
1815
- jLen = arr[i].ks.k.length;
1816
- for (j = 0; j < jLen; j += 1) {
1817
- if (arr[i].ks.k[j].s) {
1818
- arr[i].ks.k[j].s[0].c = arr[i].closed;
1819
- }
1820
- if (arr[i].ks.k[j].e) {
1821
- arr[i].ks.k[j].e[0].c = arr[i].closed;
1822
- }
1823
- }
1824
- }
1825
- hasPaths = true;
1826
- } else if (arr[i].ty == 'gr') {
1827
- completeShapes(arr[i].it);
1828
- }
1829
- }
1830
- }
1831
-
1832
- function iterateLayers(layers) {
1833
- var layerData;
1834
- var i, len = layers.length;
1835
- var j, jLen, k, kLen;
1836
- for (i = 0; i < len; i += 1) {
1837
- layerData = layers[i];
1838
- if (layerData.hasMask) {
1839
- var maskProps = layerData.masksProperties;
1840
- jLen = maskProps.length;
1841
- for (j = 0; j < jLen; j += 1) {
1842
- if (maskProps[j].pt.k.i) {
1843
- maskProps[j].pt.k.c = maskProps[j].cl;
1844
- } else {
1845
- kLen = maskProps[j].pt.k.length;
1846
- for (k = 0; k < kLen; k += 1) {
1847
- if (maskProps[j].pt.k[k].s) {
1848
- maskProps[j].pt.k[k].s[0].c = maskProps[j].cl;
1849
- }
1850
- if (maskProps[j].pt.k[k].e) {
1851
- maskProps[j].pt.k[k].e[0].c = maskProps[j].cl;
1852
- }
1853
- }
1854
- }
1855
- }
1856
- }
1857
- if (layerData.ty === 4) {
1858
- completeShapes(layerData.shapes);
1859
- }
1860
- }
1861
- }
1862
-
1863
- return function (animationData) {
1864
- if (checkVersion(minimumVersion, animationData.v)) {
1865
- iterateLayers(animationData.layers);
1866
- if (animationData.assets) {
1867
- var i, len = animationData.assets.length;
1868
- for (i = 0; i < len; i += 1) {
1869
- if (animationData.assets[i].layers) {
1870
- iterateLayers(animationData.assets[i].layers);
1871
-
1872
- }
1873
- }
1874
- }
1875
- }
1876
- };
1877
- }());
1878
-
1879
- function completeData(animationData, fontManager) {
1880
- if (animationData.__complete) {
1881
- return;
1882
- }
1883
- checkColors(animationData);
1884
- checkText(animationData);
1885
- checkChars(animationData);
1886
- checkShapes(animationData);
1887
- completeLayers(animationData.layers, animationData.assets, fontManager);
1888
- animationData.__complete = true;
1889
- //blitAnimation(animationData, animationData.assets, fontManager);
1890
- }
1891
-
1892
- function completeText(data, fontManager) {
1893
- if (data.t.a.length === 0 && !('m' in data.t.p)) {
1894
- data.singleShape = true;
1895
- }
1896
- }
1897
-
1898
- var moduleOb = {};
1899
- moduleOb.completeData = completeData;
1900
- moduleOb.checkColors = checkColors;
1901
- moduleOb.checkChars = checkChars;
1902
- moduleOb.checkShapes = checkShapes;
1903
- moduleOb.completeLayers = completeLayers;
1904
-
1905
- return moduleOb;
1906
- }
1907
-
1908
- var dataManager = dataFunctionManager();
1909
-
1910
- var FontManager = (function () {
1911
-
1912
- var maxWaitingTime = 5000;
1913
- var emptyChar = {
1914
- w: 0,
1915
- size: 0,
1916
- shapes: []
1917
- };
1918
- var combinedCharacters = [];
1919
- //Hindi characters
1920
- combinedCharacters = combinedCharacters.concat([2304, 2305, 2306, 2307, 2362, 2363, 2364, 2364, 2366, 2367, 2368, 2369, 2370, 2371, 2372, 2373, 2374, 2375, 2376, 2377, 2378, 2379, 2380, 2381, 2382, 2383, 2387, 2388, 2389, 2390, 2391, 2402, 2403]);
1921
-
1922
- function setUpNode(font, family) {
1923
- var parentNode = createTag('span');
1924
- parentNode.style.fontFamily = family;
1925
- var node = createTag('span');
1926
- // Characters that vary significantly among different fonts
1927
- node.innerHTML = 'giItT1WQy@!-/#';
1928
- // Visible - so we can measure it - but not on the screen
1929
- parentNode.style.position = 'absolute';
1930
- parentNode.style.left = '-10000px';
1931
- parentNode.style.top = '-10000px';
1932
- // Large font size makes even subtle changes obvious
1933
- parentNode.style.fontSize = '300px';
1934
- // Reset any font properties
1935
- parentNode.style.fontVariant = 'normal';
1936
- parentNode.style.fontStyle = 'normal';
1937
- parentNode.style.fontWeight = 'normal';
1938
- parentNode.style.letterSpacing = '0';
1939
- parentNode.appendChild(node);
1940
- document.body.appendChild(parentNode);
1941
-
1942
- // Remember width with no applied web font
1943
- var width = node.offsetWidth;
1944
- node.style.fontFamily = font + ', ' + family;
1945
- return {
1946
- node: node,
1947
- w: width,
1948
- parent: parentNode
1949
- };
1950
- }
1951
-
1952
- function checkLoadedFonts() {
1953
- var i, len = this.fonts.length;
1954
- var node, w;
1955
- var loadedCount = len;
1956
- for (i = 0; i < len; i += 1) {
1957
- if (this.fonts[i].loaded) {
1958
- loadedCount -= 1;
1959
- continue;
1960
- }
1961
- if (this.fonts[i].fOrigin === 'n' || this.fonts[i].origin === 0) {
1962
- this.fonts[i].loaded = true;
1963
- } else {
1964
- node = this.fonts[i].monoCase.node;
1965
- w = this.fonts[i].monoCase.w;
1966
- if (node.offsetWidth !== w) {
1967
- loadedCount -= 1;
1968
- this.fonts[i].loaded = true;
1969
- } else {
1970
- node = this.fonts[i].sansCase.node;
1971
- w = this.fonts[i].sansCase.w;
1972
- if (node.offsetWidth !== w) {
1973
- loadedCount -= 1;
1974
- this.fonts[i].loaded = true;
1975
- }
1976
- }
1977
- if (this.fonts[i].loaded) {
1978
- this.fonts[i].sansCase.parent.parentNode.removeChild(this.fonts[i].sansCase.parent);
1979
- this.fonts[i].monoCase.parent.parentNode.removeChild(this.fonts[i].monoCase.parent);
1980
- }
1981
- }
1982
- }
1983
-
1984
- if (loadedCount !== 0 && Date.now() - this.initTime < maxWaitingTime) {
1985
- setTimeout(this.checkLoadedFonts.bind(this), 20);
1986
- } else {
1987
- setTimeout(function () {
1988
- this.isLoaded = true;
1989
- }.bind(this), 0);
1990
-
1991
- }
1992
- }
1993
-
1994
- function createHelper(def, fontData) {
1995
- var tHelper = createNS('text');
1996
- tHelper.style.fontSize = '100px';
1997
- //tHelper.style.fontFamily = fontData.fFamily;
1998
- tHelper.setAttribute('font-family', fontData.fFamily);
1999
- tHelper.setAttribute('font-style', fontData.fStyle);
2000
- tHelper.setAttribute('font-weight', fontData.fWeight);
2001
- tHelper.textContent = '1';
2002
- if (fontData.fClass) {
2003
- tHelper.style.fontFamily = 'inherit';
2004
- tHelper.setAttribute('class', fontData.fClass);
2005
- } else {
2006
- tHelper.style.fontFamily = fontData.fFamily;
2007
- }
2008
- def.appendChild(tHelper);
2009
- var tCanvasHelper = createTag('canvas').getContext('2d');
2010
- tCanvasHelper.font = fontData.fWeight + ' ' + fontData.fStyle + ' 100px ' + fontData.fFamily;
2011
- //tCanvasHelper.font = ' 100px '+ fontData.fFamily;
2012
- return tHelper;
2013
- }
2014
-
2015
- function addFonts(fontData, defs) {
2016
- if (!fontData) {
2017
- this.isLoaded = true;
2018
- return;
2019
- }
2020
- if (this.chars) {
2021
- this.isLoaded = true;
2022
- this.fonts = fontData.list;
2023
- return;
2024
- }
2025
-
2026
-
2027
- var fontArr = fontData.list;
2028
- var i, len = fontArr.length;
2029
- var _pendingFonts = len;
2030
- for (i = 0; i < len; i += 1) {
2031
- var shouldLoadFont = true;
2032
- var loadedSelector;
2033
- var j;
2034
- fontArr[i].loaded = false;
2035
- fontArr[i].monoCase = setUpNode(fontArr[i].fFamily, 'monospace');
2036
- fontArr[i].sansCase = setUpNode(fontArr[i].fFamily, 'sans-serif');
2037
- if (!fontArr[i].fPath) {
2038
- fontArr[i].loaded = true;
2039
- _pendingFonts -= 1;
2040
- } else if (fontArr[i].fOrigin === 'p' || fontArr[i].origin === 3) {
2041
- loadedSelector = document.querySelectorAll('style[f-forigin="p"][f-family="' + fontArr[i].fFamily + '"], style[f-origin="3"][f-family="' + fontArr[i].fFamily + '"]');
2042
-
2043
- if (loadedSelector.length > 0) {
2044
- shouldLoadFont = false;
2045
- }
2046
-
2047
- if (shouldLoadFont) {
2048
- var s = createTag('style');
2049
- s.setAttribute('f-forigin', fontArr[i].fOrigin);
2050
- s.setAttribute('f-origin', fontArr[i].origin);
2051
- s.setAttribute('f-family', fontArr[i].fFamily);
2052
- s.type = "text/css";
2053
- s.innerHTML = "@font-face {" + "font-family: " + fontArr[i].fFamily + "; font-style: normal; src: url('" + fontArr[i].fPath + "');}";
2054
- defs.appendChild(s);
2055
- }
2056
- } else if (fontArr[i].fOrigin === 'g' || fontArr[i].origin === 1) {
2057
- loadedSelector = document.querySelectorAll('link[f-forigin="g"], link[f-origin="1"]');
2058
-
2059
- for (j = 0; j < loadedSelector.length; j++) {
2060
- if (loadedSelector[j].href.indexOf(fontArr[i].fPath) !== -1) {
2061
- // Font is already loaded
2062
- shouldLoadFont = false;
2063
- }
2064
- }
2065
-
2066
- if (shouldLoadFont) {
2067
- var l = createTag('link');
2068
- l.setAttribute('f-forigin', fontArr[i].fOrigin);
2069
- l.setAttribute('f-origin', fontArr[i].origin);
2070
- l.type = "text/css";
2071
- l.rel = "stylesheet";
2072
- l.href = fontArr[i].fPath;
2073
- document.body.appendChild(l);
2074
- }
2075
- } else if (fontArr[i].fOrigin === 't' || fontArr[i].origin === 2) {
2076
- loadedSelector = document.querySelectorAll('script[f-forigin="t"], script[f-origin="2"]');
2077
-
2078
- for (j = 0; j < loadedSelector.length; j++) {
2079
- if (fontArr[i].fPath === loadedSelector[j].src) {
2080
- // Font is already loaded
2081
- shouldLoadFont = false;
2082
- }
2083
- }
2084
-
2085
- if (shouldLoadFont) {
2086
- var sc = createTag('link');
2087
- sc.setAttribute('f-forigin', fontArr[i].fOrigin);
2088
- sc.setAttribute('f-origin', fontArr[i].origin);
2089
- sc.setAttribute('rel', 'stylesheet');
2090
- sc.setAttribute('href', fontArr[i].fPath);
2091
- defs.appendChild(sc);
2092
- }
2093
- }
2094
- fontArr[i].helper = createHelper(defs, fontArr[i]);
2095
- fontArr[i].cache = {};
2096
- this.fonts.push(fontArr[i]);
2097
- }
2098
- if (_pendingFonts === 0) {
2099
- this.isLoaded = true;
2100
- } else {
2101
- //On some cases even if the font is loaded, it won't load correctly when measuring text on canvas.
2102
- //Adding this timeout seems to fix it
2103
- setTimeout(this.checkLoadedFonts.bind(this), 100);
2104
- }
2105
- }
2106
-
2107
- function addChars(chars) {
2108
- if (!chars) {
2109
- return;
2110
- }
2111
- if (!this.chars) {
2112
- this.chars = [];
2113
- }
2114
- var i, len = chars.length;
2115
- var j, jLen = this.chars.length,
2116
- found;
2117
- for (i = 0; i < len; i += 1) {
2118
- j = 0;
2119
- found = false;
2120
- while (j < jLen) {
2121
- if (this.chars[j].style === chars[i].style && this.chars[j].fFamily === chars[i].fFamily && this.chars[j].ch === chars[i].ch) {
2122
- found = true;
2123
- }
2124
- j += 1;
2125
- }
2126
- if (!found) {
2127
- this.chars.push(chars[i]);
2128
- jLen += 1;
2129
- }
2130
- }
2131
- }
2132
-
2133
- function getCharData(char, style, font) {
2134
- var i = 0,
2135
- len = this.chars.length;
2136
- while (i < len) {
2137
- if (this.chars[i].ch === char && this.chars[i].style === style && this.chars[i].fFamily === font) {
2138
-
2139
- return this.chars[i];
2140
- }
2141
- i += 1;
2142
- }
2143
- if ((typeof char === 'string' && char.charCodeAt(0) !== 13 || !char) && console && console.warn) {
2144
- // console.warn('Missing character from exported characters list: ', char, style, font);
2145
- }
2146
- return emptyChar;
2147
- }
2148
-
2149
- function measureText(char, fontName, size) {
2150
- var fontData = this.getFontByName(fontName);
2151
- var index = char.charCodeAt(0);
2152
- if (!fontData.cache[index + 1]) {
2153
- var tHelper = fontData.helper;
2154
- //Canvas version
2155
- //fontData.cache[index] = tHelper.measureText(char).width / 100;
2156
- //SVG version
2157
- //console.log(tHelper.getBBox().width)
2158
- if (char === ' ') {
2159
- tHelper.textContent = '|' + char + '|';
2160
- var doubleSize = tHelper.getComputedTextLength();
2161
- tHelper.textContent = '||';
2162
- var singleSize = tHelper.getComputedTextLength();
2163
- fontData.cache[index + 1] = (doubleSize - singleSize) / 100;
2164
- } else {
2165
- tHelper.textContent = char;
2166
- fontData.cache[index + 1] = (tHelper.getComputedTextLength()) / 100;
2167
- }
2168
- }
2169
- return fontData.cache[index + 1] * size;
2170
- }
2171
-
2172
- function getFontByName(name) {
2173
- var i = 0,
2174
- len = this.fonts.length;
2175
- while (i < len) {
2176
- if (this.fonts[i].fName === name) {
2177
- return this.fonts[i];
2178
- }
2179
- i += 1;
2180
- }
2181
- return this.fonts[0];
2182
- }
2183
-
2184
- function getCombinedCharacterCodes() {
2185
- return combinedCharacters;
2186
- }
2187
-
2188
- function loaded() {
2189
- return this.isLoaded;
2190
- }
2191
-
2192
- var Font = function () {
2193
- this.fonts = [];
2194
- this.chars = null;
2195
- this.typekitLoaded = 0;
2196
- this.isLoaded = false;
2197
- this.initTime = Date.now();
2198
- };
2199
- //TODO: for now I'm adding these methods to the Class and not the prototype. Think of a better way to implement it.
2200
- Font.getCombinedCharacterCodes = getCombinedCharacterCodes;
2201
-
2202
- Font.prototype.addChars = addChars;
2203
- Font.prototype.addFonts = addFonts;
2204
- Font.prototype.getCharData = getCharData;
2205
- Font.prototype.getFontByName = getFontByName;
2206
- Font.prototype.measureText = measureText;
2207
- Font.prototype.checkLoadedFonts = checkLoadedFonts;
2208
- Font.prototype.loaded = loaded;
2209
-
2210
- return Font;
2211
-
2212
- }());
2213
- var PropertyFactory = (function () {
2214
-
2215
- var initFrame = initialDefaultFrame;
2216
- var math_abs = Math.abs;
2217
-
2218
- function interpolateValue(frameNum, caching) {
2219
- var offsetTime = this.offsetTime;
2220
- var newValue;
2221
- if (this.propType === 'multidimensional') {
2222
- newValue = createTypedArray('float32', this.pv.length);
2223
- }
2224
- var iterationIndex = caching.lastIndex;
2225
- var i = iterationIndex;
2226
- var len = this.keyframes.length - 1,
2227
- flag = true;
2228
- var keyData, nextKeyData;
2229
-
2230
- while (flag) {
2231
- keyData = this.keyframes[i];
2232
- nextKeyData = this.keyframes[i + 1];
2233
- if (i === len - 1 && frameNum >= nextKeyData.t - offsetTime) {
2234
- if (keyData.h) {
2235
- keyData = nextKeyData;
2236
- }
2237
- iterationIndex = 0;
2238
- break;
2239
- }
2240
- if ((nextKeyData.t - offsetTime) > frameNum) {
2241
- iterationIndex = i;
2242
- break;
2243
- }
2244
- if (i < len - 1) {
2245
- i += 1;
2246
- } else {
2247
- iterationIndex = 0;
2248
- flag = false;
2249
- }
2250
- }
2251
-
2252
- var k, kLen, perc, jLen, j, fnc;
2253
- var nextKeyTime = nextKeyData.t - offsetTime;
2254
- var keyTime = keyData.t - offsetTime;
2255
- var endValue;
2256
- if (keyData.to) {
2257
- if (!keyData.bezierData) {
2258
- keyData.bezierData = bez.buildBezierData(keyData.s, nextKeyData.s || keyData.e, keyData.to, keyData.ti);
2259
- }
2260
- var bezierData = keyData.bezierData;
2261
- if (frameNum >= nextKeyTime || frameNum < keyTime) {
2262
- var ind = frameNum >= nextKeyTime ? bezierData.points.length - 1 : 0;
2263
- kLen = bezierData.points[ind].point.length;
2264
- for (k = 0; k < kLen; k += 1) {
2265
- newValue[k] = bezierData.points[ind].point[k];
2266
- }
2267
- // caching._lastKeyframeIndex = -1;
2268
- } else {
2269
- if (keyData.__fnct) {
2270
- fnc = keyData.__fnct;
2271
- } else {
2272
- fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y, keyData.n).get;
2273
- keyData.__fnct = fnc;
2274
- }
2275
- perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));
2276
- var distanceInLine = bezierData.segmentLength * perc;
2277
-
2278
- var segmentPerc;
2279
- var addedLength = (caching.lastFrame < frameNum && caching._lastKeyframeIndex === i) ? caching._lastAddedLength : 0;
2280
- j = (caching.lastFrame < frameNum && caching._lastKeyframeIndex === i) ? caching._lastPoint : 0;
2281
- flag = true;
2282
- jLen = bezierData.points.length;
2283
- while (flag) {
2284
- addedLength += bezierData.points[j].partialLength;
2285
- if (distanceInLine === 0 || perc === 0 || j === bezierData.points.length - 1) {
2286
- kLen = bezierData.points[j].point.length;
2287
- for (k = 0; k < kLen; k += 1) {
2288
- newValue[k] = bezierData.points[j].point[k];
2289
- }
2290
- break;
2291
- } else if (distanceInLine >= addedLength && distanceInLine < addedLength + bezierData.points[j + 1].partialLength) {
2292
- segmentPerc = (distanceInLine - addedLength) / bezierData.points[j + 1].partialLength;
2293
- kLen = bezierData.points[j].point.length;
2294
- for (k = 0; k < kLen; k += 1) {
2295
- newValue[k] = bezierData.points[j].point[k] + (bezierData.points[j + 1].point[k] - bezierData.points[j].point[k]) * segmentPerc;
2296
- }
2297
- break;
2298
- }
2299
- if (j < jLen - 1) {
2300
- j += 1;
2301
- } else {
2302
- flag = false;
2303
- }
2304
- }
2305
- caching._lastPoint = j;
2306
- caching._lastAddedLength = addedLength - bezierData.points[j].partialLength;
2307
- caching._lastKeyframeIndex = i;
2308
- }
2309
- } else {
2310
- var outX, outY, inX, inY, keyValue;
2311
- len = keyData.s.length;
2312
- endValue = nextKeyData.s || keyData.e;
2313
- if (this.sh && keyData.h !== 1) {
2314
- if (frameNum >= nextKeyTime) {
2315
- newValue[0] = endValue[0];
2316
- newValue[1] = endValue[1];
2317
- newValue[2] = endValue[2];
2318
- } else if (frameNum <= keyTime) {
2319
- newValue[0] = keyData.s[0];
2320
- newValue[1] = keyData.s[1];
2321
- newValue[2] = keyData.s[2];
2322
- } else {
2323
- var quatStart = createQuaternion(keyData.s);
2324
- var quatEnd = createQuaternion(endValue);
2325
- var time = (frameNum - keyTime) / (nextKeyTime - keyTime);
2326
- quaternionToEuler(newValue, slerp(quatStart, quatEnd, time));
2327
- }
2328
-
2329
- } else {
2330
- for (i = 0; i < len; i += 1) {
2331
- if (keyData.h !== 1) {
2332
- if (frameNum >= nextKeyTime) {
2333
- perc = 1;
2334
- } else if (frameNum < keyTime) {
2335
- perc = 0;
2336
- } else {
2337
- if (keyData.o.x.constructor === Array) {
2338
- if (!keyData.__fnct) {
2339
- keyData.__fnct = [];
2340
- }
2341
- if (!keyData.__fnct[i]) {
2342
- outX = (typeof keyData.o.x[i] === 'undefined') ? keyData.o.x[0] : keyData.o.x[i];
2343
- outY = (typeof keyData.o.y[i] === 'undefined') ? keyData.o.y[0] : keyData.o.y[i];
2344
- inX = (typeof keyData.i.x[i] === 'undefined') ? keyData.i.x[0] : keyData.i.x[i];
2345
- inY = (typeof keyData.i.y[i] === 'undefined') ? keyData.i.y[0] : keyData.i.y[i];
2346
- fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;
2347
- keyData.__fnct[i] = fnc;
2348
- } else {
2349
- fnc = keyData.__fnct[i];
2350
- }
2351
- } else {
2352
- if (!keyData.__fnct) {
2353
- outX = keyData.o.x;
2354
- outY = keyData.o.y;
2355
- inX = keyData.i.x;
2356
- inY = keyData.i.y;
2357
- fnc = BezierFactory.getBezierEasing(outX, outY, inX, inY).get;
2358
- keyData.__fnct = fnc;
2359
- } else {
2360
- fnc = keyData.__fnct;
2361
- }
2362
- }
2363
- perc = fnc((frameNum - keyTime) / (nextKeyTime - keyTime));
2364
- }
2365
- }
2366
-
2367
- endValue = nextKeyData.s || keyData.e;
2368
- keyValue = keyData.h === 1 ? keyData.s[i] : keyData.s[i] + (endValue[i] - keyData.s[i]) * perc;
2369
-
2370
- if (this.propType === 'multidimensional') {
2371
- newValue[i] = keyValue;
2372
- } else {
2373
- newValue = keyValue;
2374
- }
2375
- }
2376
- }
2377
- }
2378
- caching.lastIndex = iterationIndex;
2379
- return newValue;
2380
- }
2381
-
2382
- //based on @Toji's https://github.com/toji/gl-matrix/
2383
- function slerp(a, b, t) {
2384
- var out = [];
2385
- var ax = a[0],
2386
- ay = a[1],
2387
- az = a[2],
2388
- aw = a[3],
2389
- bx = b[0],
2390
- by = b[1],
2391
- bz = b[2],
2392
- bw = b[3]
2393
-
2394
- var omega, cosom, sinom, scale0, scale1;
2395
-
2396
- cosom = ax * bx + ay * by + az * bz + aw * bw;
2397
- if (cosom < 0.0) {
2398
- cosom = -cosom;
2399
- bx = -bx;
2400
- by = -by;
2401
- bz = -bz;
2402
- bw = -bw;
2403
- }
2404
- if ((1.0 - cosom) > 0.000001) {
2405
- omega = Math.acos(cosom);
2406
- sinom = Math.sin(omega);
2407
- scale0 = Math.sin((1.0 - t) * omega) / sinom;
2408
- scale1 = Math.sin(t * omega) / sinom;
2409
- } else {
2410
- scale0 = 1.0 - t;
2411
- scale1 = t;
2412
- }
2413
- out[0] = scale0 * ax + scale1 * bx;
2414
- out[1] = scale0 * ay + scale1 * by;
2415
- out[2] = scale0 * az + scale1 * bz;
2416
- out[3] = scale0 * aw + scale1 * bw;
2417
-
2418
- return out;
2419
- }
2420
-
2421
- function quaternionToEuler(out, quat) {
2422
- var qx = quat[0];
2423
- var qy = quat[1];
2424
- var qz = quat[2];
2425
- var qw = quat[3];
2426
- var heading = Math.atan2(2 * qy * qw - 2 * qx * qz, 1 - 2 * qy * qy - 2 * qz * qz)
2427
- var attitude = Math.asin(2 * qx * qy + 2 * qz * qw)
2428
- var bank = Math.atan2(2 * qx * qw - 2 * qy * qz, 1 - 2 * qx * qx - 2 * qz * qz);
2429
- out[0] = heading / degToRads;
2430
- out[1] = attitude / degToRads;
2431
- out[2] = bank / degToRads;
2432
- }
2433
-
2434
- function createQuaternion(values) {
2435
- var heading = values[0] * degToRads;
2436
- var attitude = values[1] * degToRads;
2437
- var bank = values[2] * degToRads;
2438
- var c1 = Math.cos(heading / 2);
2439
- var c2 = Math.cos(attitude / 2);
2440
- var c3 = Math.cos(bank / 2);
2441
- var s1 = Math.sin(heading / 2);
2442
- var s2 = Math.sin(attitude / 2);
2443
- var s3 = Math.sin(bank / 2);
2444
- var w = c1 * c2 * c3 - s1 * s2 * s3;
2445
- var x = s1 * s2 * c3 + c1 * c2 * s3;
2446
- var y = s1 * c2 * c3 + c1 * s2 * s3;
2447
- var z = c1 * s2 * c3 - s1 * c2 * s3;
2448
-
2449
- return [x, y, z, w];
2450
- }
2451
-
2452
- function getValueAtCurrentTime() {
2453
- var frameNum = this.comp.renderedFrame - this.offsetTime;
2454
- var initTime = this.keyframes[0].t - this.offsetTime;
2455
- var endTime = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;
2456
- if (!(frameNum === this._caching.lastFrame || (this._caching.lastFrame !== initFrame && ((this._caching.lastFrame >= endTime && frameNum >= endTime) || (this._caching.lastFrame < initTime && frameNum < initTime))))) {
2457
- if (this._caching.lastFrame >= frameNum) {
2458
- this._caching._lastKeyframeIndex = -1;
2459
- this._caching.lastIndex = 0;
2460
- }
2461
-
2462
- var renderResult = this.interpolateValue(frameNum, this._caching);
2463
- this.pv = renderResult;
2464
- }
2465
- this._caching.lastFrame = frameNum;
2466
- return this.pv;
2467
- }
2468
-
2469
- function setVValue(val) {
2470
- var multipliedValue;
2471
- if (this.propType === 'unidimensional') {
2472
- multipliedValue = val * this.mult;
2473
- if (math_abs(this.v - multipliedValue) > 0.00001) {
2474
- this.v = multipliedValue;
2475
- this._mdf = true;
2476
- }
2477
- } else {
2478
- var i = 0,
2479
- len = this.v.length;
2480
- while (i < len) {
2481
- multipliedValue = val[i] * this.mult;
2482
- if (math_abs(this.v[i] - multipliedValue) > 0.00001) {
2483
- this.v[i] = multipliedValue;
2484
- this._mdf = true;
2485
- }
2486
- i += 1;
2487
- }
2488
- }
2489
- }
2490
-
2491
- function processEffectsSequence() {
2492
- if (this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) {
2493
- return;
2494
- }
2495
- if (this.lock) {
2496
- this.setVValue(this.pv);
2497
- return;
2498
- }
2499
- this.lock = true;
2500
- this._mdf = this._isFirstFrame;
2501
- var multipliedValue;
2502
- var i, len = this.effectsSequence.length;
2503
- var finalValue = this.kf ? this.pv : this.data.k;
2504
- for (i = 0; i < len; i += 1) {
2505
- finalValue = this.effectsSequence[i](finalValue);
2506
- }
2507
- this.setVValue(finalValue);
2508
- this._isFirstFrame = false;
2509
- this.lock = false;
2510
- this.frameId = this.elem.globalData.frameId;
2511
- }
2512
-
2513
- function addEffect(effectFunction) {
2514
- this.effectsSequence.push(effectFunction);
2515
- this.container.addDynamicProperty(this);
2516
- }
2517
-
2518
- function ValueProperty(elem, data, mult, container) {
2519
- this.propType = 'unidimensional';
2520
- this.mult = mult || 1;
2521
- this.data = data;
2522
- this.v = mult ? data.k * mult : data.k;
2523
- this.pv = data.k;
2524
- this._mdf = false;
2525
- this.elem = elem;
2526
- this.container = container;
2527
- this.comp = elem.comp;
2528
- this.k = false;
2529
- this.kf = false;
2530
- this.vel = 0;
2531
- this.effectsSequence = [];
2532
- this._isFirstFrame = true;
2533
- this.getValue = processEffectsSequence;
2534
- this.setVValue = setVValue;
2535
- this.addEffect = addEffect;
2536
- }
2537
-
2538
- function MultiDimensionalProperty(elem, data, mult, container) {
2539
- this.propType = 'multidimensional';
2540
- this.mult = mult || 1;
2541
- this.data = data;
2542
- this._mdf = false;
2543
- this.elem = elem;
2544
- this.container = container;
2545
- this.comp = elem.comp;
2546
- this.k = false;
2547
- this.kf = false;
2548
- this.frameId = -1;
2549
- var i, len = data.k.length;
2550
- this.v = createTypedArray('float32', len);
2551
- this.pv = createTypedArray('float32', len);
2552
- var arr = createTypedArray('float32', len);
2553
- this.vel = createTypedArray('float32', len);
2554
- for (i = 0; i < len; i += 1) {
2555
- this.v[i] = data.k[i] * this.mult;
2556
- this.pv[i] = data.k[i];
2557
- }
2558
- this._isFirstFrame = true;
2559
- this.effectsSequence = [];
2560
- this.getValue = processEffectsSequence;
2561
- this.setVValue = setVValue;
2562
- this.addEffect = addEffect;
2563
- }
2564
-
2565
- function KeyframedValueProperty(elem, data, mult, container) {
2566
- this.propType = 'unidimensional';
2567
- this.keyframes = data.k;
2568
- this.offsetTime = elem.data.st;
2569
- this.frameId = -1;
2570
- this._caching = {
2571
- lastFrame: initFrame,
2572
- lastIndex: 0,
2573
- value: 0,
2574
- _lastKeyframeIndex: -1
2575
- };
2576
- this.k = true;
2577
- this.kf = true;
2578
- this.data = data;
2579
- this.mult = mult || 1;
2580
- this.elem = elem;
2581
- this.container = container;
2582
- this.comp = elem.comp;
2583
- this.v = initFrame;
2584
- this.pv = initFrame;
2585
- this._isFirstFrame = true;
2586
- this.getValue = processEffectsSequence;
2587
- this.setVValue = setVValue;
2588
- this.interpolateValue = interpolateValue;
2589
- this.effectsSequence = [getValueAtCurrentTime.bind(this)];
2590
- this.addEffect = addEffect;
2591
- }
2592
-
2593
- function KeyframedMultidimensionalProperty(elem, data, mult, container) {
2594
- this.propType = 'multidimensional';
2595
- var i, len = data.k.length;
2596
- var s, e, to, ti;
2597
- for (i = 0; i < len - 1; i += 1) {
2598
- if (data.k[i].to && data.k[i].s && data.k[i + 1] && data.k[i + 1].s) {
2599
- s = data.k[i].s;
2600
- e = data.k[i + 1].s;
2601
- to = data.k[i].to;
2602
- ti = data.k[i].ti;
2603
- if ((s.length === 2 && !(s[0] === e[0] && s[1] === e[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], s[0] + to[0], s[1] + to[1]) && bez.pointOnLine2D(s[0], s[1], e[0], e[1], e[0] + ti[0], e[1] + ti[1])) || (s.length === 3 && !(s[0] === e[0] && s[1] === e[1] && s[2] === e[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], s[0] + to[0], s[1] + to[1], s[2] + to[2]) && bez.pointOnLine3D(s[0], s[1], s[2], e[0], e[1], e[2], e[0] + ti[0], e[1] + ti[1], e[2] + ti[2]))) {
2604
- data.k[i].to = null;
2605
- data.k[i].ti = null;
2606
- }
2607
- if (s[0] === e[0] && s[1] === e[1] && to[0] === 0 && to[1] === 0 && ti[0] === 0 && ti[1] === 0) {
2608
- if (s.length === 2 || (s[2] === e[2] && to[2] === 0 && ti[2] === 0)) {
2609
- data.k[i].to = null;
2610
- data.k[i].ti = null;
2611
- }
2612
- }
2613
- }
2614
- }
2615
- this.effectsSequence = [getValueAtCurrentTime.bind(this)];
2616
- this.keyframes = data.k;
2617
- this.offsetTime = elem.data.st;
2618
- this.k = true;
2619
- this.kf = true;
2620
- this._isFirstFrame = true;
2621
- this.mult = mult || 1;
2622
- this.elem = elem;
2623
- this.container = container;
2624
- this.comp = elem.comp;
2625
- this.getValue = processEffectsSequence;
2626
- this.setVValue = setVValue;
2627
- this.interpolateValue = interpolateValue;
2628
- this.frameId = -1;
2629
- var arrLen = data.k[0].s.length;
2630
- this.v = createTypedArray('float32', arrLen);
2631
- this.pv = createTypedArray('float32', arrLen);
2632
- for (i = 0; i < arrLen; i += 1) {
2633
- this.v[i] = initFrame;
2634
- this.pv[i] = initFrame;
2635
- }
2636
- this._caching = {
2637
- lastFrame: initFrame,
2638
- lastIndex: 0,
2639
- value: createTypedArray('float32', arrLen)
2640
- };
2641
- this.addEffect = addEffect;
2642
- }
2643
-
2644
- function getProp(elem, data, type, mult, container) {
2645
- var p;
2646
- if (!data.k.length) {
2647
- p = new ValueProperty(elem, data, mult, container);
2648
- } else if (typeof (data.k[0]) === 'number') {
2649
- p = new MultiDimensionalProperty(elem, data, mult, container);
2650
- } else {
2651
- switch (type) {
2652
- case 0:
2653
- p = new KeyframedValueProperty(elem, data, mult, container);
2654
- break;
2655
- case 1:
2656
- p = new KeyframedMultidimensionalProperty(elem, data, mult, container);
2657
- break;
2658
- }
2659
- }
2660
- if (p.effectsSequence.length) {
2661
- container.addDynamicProperty(p);
2662
- }
2663
- return p;
2664
- }
2665
-
2666
- var ob = {
2667
- getProp: getProp
2668
- };
2669
- return ob;
2670
- }());
2671
- var TransformPropertyFactory = (function () {
2672
-
2673
- var defaultVector = [0, 0]
2674
-
2675
- function applyToMatrix(mat) {
2676
- var _mdf = this._mdf;
2677
- this.iterateDynamicProperties();
2678
- this._mdf = this._mdf || _mdf;
2679
- if (this.a) {
2680
- mat.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);
2681
- }
2682
- if (this.s) {
2683
- mat.scale(this.s.v[0], this.s.v[1], this.s.v[2]);
2684
- }
2685
- if (this.sk) {
2686
- mat.skewFromAxis(-this.sk.v, this.sa.v);
2687
- }
2688
- if (this.r) {
2689
- mat.rotate(-this.r.v);
2690
- } else {
2691
- mat.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]);
2692
- }
2693
- if (this.data.p.s) {
2694
- if (this.data.p.z) {
2695
- mat.translate(this.px.v, this.py.v, -this.pz.v);
2696
- } else {
2697
- mat.translate(this.px.v, this.py.v, 0);
2698
- }
2699
- } else {
2700
- mat.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);
2701
- }
2702
- }
2703
-
2704
- function processKeys(forceRender) {
2705
- if (this.elem.globalData.frameId === this.frameId) {
2706
- return;
2707
- }
2708
- if (this._isDirty) {
2709
- this.precalculateMatrix();
2710
- this._isDirty = false;
2711
- }
2712
-
2713
- this.iterateDynamicProperties();
2714
-
2715
- if (this._mdf || forceRender) {
2716
- this.v.cloneFromProps(this.pre.props);
2717
- if (this.appliedTransformations < 1) {
2718
- this.v.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);
2719
- }
2720
- if (this.appliedTransformations < 2) {
2721
- this.v.scale(this.s.v[0], this.s.v[1], this.s.v[2]);
2722
- }
2723
- if (this.sk && this.appliedTransformations < 3) {
2724
- this.v.skewFromAxis(-this.sk.v, this.sa.v);
2725
- }
2726
- if (this.r && this.appliedTransformations < 4) {
2727
- this.v.rotate(-this.r.v);
2728
- } else if (!this.r && this.appliedTransformations < 4) {
2729
- this.v.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]);
2730
- }
2731
- if (this.autoOriented) {
2732
- var v1, v2, frameRate = this.elem.globalData.frameRate;
2733
- if (this.p && this.p.keyframes && this.p.getValueAtTime) {
2734
- if (this.p._caching.lastFrame + this.p.offsetTime <= this.p.keyframes[0].t) {
2735
- v1 = this.p.getValueAtTime((this.p.keyframes[0].t + 0.01) / frameRate, 0);
2736
- v2 = this.p.getValueAtTime(this.p.keyframes[0].t / frameRate, 0);
2737
- } else if (this.p._caching.lastFrame + this.p.offsetTime >= this.p.keyframes[this.p.keyframes.length - 1].t) {
2738
- v1 = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t / frameRate), 0);
2739
- v2 = this.p.getValueAtTime((this.p.keyframes[this.p.keyframes.length - 1].t - 0.05) / frameRate, 0);
2740
- } else {
2741
- v1 = this.p.pv;
2742
- v2 = this.p.getValueAtTime((this.p._caching.lastFrame + this.p.offsetTime - 0.01) / frameRate, this.p.offsetTime);
2743
- }
2744
- } else if (this.px && this.px.keyframes && this.py.keyframes && this.px.getValueAtTime && this.py.getValueAtTime) {
2745
- v1 = [];
2746
- v2 = [];
2747
- var px = this.px,
2748
- py = this.py,
2749
- frameRate;
2750
- if (px._caching.lastFrame + px.offsetTime <= px.keyframes[0].t) {
2751
- v1[0] = px.getValueAtTime((px.keyframes[0].t + 0.01) / frameRate, 0);
2752
- v1[1] = py.getValueAtTime((py.keyframes[0].t + 0.01) / frameRate, 0);
2753
- v2[0] = px.getValueAtTime((px.keyframes[0].t) / frameRate, 0);
2754
- v2[1] = py.getValueAtTime((py.keyframes[0].t) / frameRate, 0);
2755
- } else if (px._caching.lastFrame + px.offsetTime >= px.keyframes[px.keyframes.length - 1].t) {
2756
- v1[0] = px.getValueAtTime((px.keyframes[px.keyframes.length - 1].t / frameRate), 0);
2757
- v1[1] = py.getValueAtTime((py.keyframes[py.keyframes.length - 1].t / frameRate), 0);
2758
- v2[0] = px.getValueAtTime((px.keyframes[px.keyframes.length - 1].t - 0.01) / frameRate, 0);
2759
- v2[1] = py.getValueAtTime((py.keyframes[py.keyframes.length - 1].t - 0.01) / frameRate, 0);
2760
- } else {
2761
- v1 = [px.pv, py.pv];
2762
- v2[0] = px.getValueAtTime((px._caching.lastFrame + px.offsetTime - 0.01) / frameRate, px.offsetTime);
2763
- v2[1] = py.getValueAtTime((py._caching.lastFrame + py.offsetTime - 0.01) / frameRate, py.offsetTime);
2764
- }
2765
- } else {
2766
- v1 = v2 = defaultVector
2767
- }
2768
- this.v.rotate(-Math.atan2(v1[1] - v2[1], v1[0] - v2[0]));
2769
- }
2770
- if (this.data.p && this.data.p.s) {
2771
- if (this.data.p.z) {
2772
- this.v.translate(this.px.v, this.py.v, -this.pz.v);
2773
- } else {
2774
- this.v.translate(this.px.v, this.py.v, 0);
2775
- }
2776
- } else {
2777
- this.v.translate(this.p.v[0], this.p.v[1], -this.p.v[2]);
2778
- }
2779
- }
2780
- this.frameId = this.elem.globalData.frameId;
2781
- }
2782
-
2783
- function precalculateMatrix() {
2784
- if (!this.a.k) {
2785
- this.pre.translate(-this.a.v[0], -this.a.v[1], this.a.v[2]);
2786
- this.appliedTransformations = 1;
2787
- } else {
2788
- return;
2789
- }
2790
- if (!this.s.effectsSequence.length) {
2791
- this.pre.scale(this.s.v[0], this.s.v[1], this.s.v[2]);
2792
- this.appliedTransformations = 2;
2793
- } else {
2794
- return;
2795
- }
2796
- if (this.sk) {
2797
- if (!this.sk.effectsSequence.length && !this.sa.effectsSequence.length) {
2798
- this.pre.skewFromAxis(-this.sk.v, this.sa.v);
2799
- this.appliedTransformations = 3;
2800
- } else {
2801
- return;
2802
- }
2803
- }
2804
- if (this.r) {
2805
- if (!this.r.effectsSequence.length) {
2806
- this.pre.rotate(-this.r.v);
2807
- this.appliedTransformations = 4;
2808
- } else {
2809
- return;
2810
- }
2811
- } else if (!this.rz.effectsSequence.length && !this.ry.effectsSequence.length && !this.rx.effectsSequence.length && !this.or.effectsSequence.length) {
2812
- this.pre.rotateZ(-this.rz.v).rotateY(this.ry.v).rotateX(this.rx.v).rotateZ(-this.or.v[2]).rotateY(this.or.v[1]).rotateX(this.or.v[0]);
2813
- this.appliedTransformations = 4;
2814
- }
2815
- }
2816
-
2817
- function autoOrient() {
2818
- //
2819
- //var prevP = this.getValueAtTime();
2820
- }
2821
-
2822
- function addDynamicProperty(prop) {
2823
- this._addDynamicProperty(prop);
2824
- this.elem.addDynamicProperty(prop);
2825
- this._isDirty = true;
2826
- }
2827
-
2828
- function TransformProperty(elem, data, container) {
2829
- this.elem = elem;
2830
- this.frameId = -1;
2831
- this.propType = 'transform';
2832
- this.data = data;
2833
- this.v = new Matrix();
2834
- //Precalculated matrix with non animated properties
2835
- this.pre = new Matrix();
2836
- this.appliedTransformations = 0;
2837
- this.initDynamicPropertyContainer(container || elem);
2838
- if (data.p && data.p.s) {
2839
- this.px = PropertyFactory.getProp(elem, data.p.x, 0, 0, this);
2840
- this.py = PropertyFactory.getProp(elem, data.p.y, 0, 0, this);
2841
- if (data.p.z) {
2842
- this.pz = PropertyFactory.getProp(elem, data.p.z, 0, 0, this);
2843
- }
2844
- } else {
2845
- this.p = PropertyFactory.getProp(elem, data.p || {
2846
- k: [0, 0, 0]
2847
- }, 1, 0, this);
2848
- }
2849
- if (data.rx) {
2850
- this.rx = PropertyFactory.getProp(elem, data.rx, 0, degToRads, this);
2851
- this.ry = PropertyFactory.getProp(elem, data.ry, 0, degToRads, this);
2852
- this.rz = PropertyFactory.getProp(elem, data.rz, 0, degToRads, this);
2853
- if (data.or.k[0].ti) {
2854
- var i, len = data.or.k.length;
2855
- for (i = 0; i < len; i += 1) {
2856
- data.or.k[i].to = data.or.k[i].ti = null;
2857
- }
2858
- }
2859
- this.or = PropertyFactory.getProp(elem, data.or, 1, degToRads, this);
2860
- //sh Indicates it needs to be capped between -180 and 180
2861
- this.or.sh = true;
2862
- } else {
2863
- this.r = PropertyFactory.getProp(elem, data.r || {
2864
- k: 0
2865
- }, 0, degToRads, this);
2866
- }
2867
- if (data.sk) {
2868
- this.sk = PropertyFactory.getProp(elem, data.sk, 0, degToRads, this);
2869
- this.sa = PropertyFactory.getProp(elem, data.sa, 0, degToRads, this);
2870
- }
2871
- this.a = PropertyFactory.getProp(elem, data.a || {
2872
- k: [0, 0, 0]
2873
- }, 1, 0, this);
2874
- this.s = PropertyFactory.getProp(elem, data.s || {
2875
- k: [100, 100, 100]
2876
- }, 1, 0.01, this);
2877
- // Opacity is not part of the transform properties, that's why it won't use this.dynamicProperties. That way transforms won't get updated if opacity changes.
2878
- if (data.o) {
2879
- this.o = PropertyFactory.getProp(elem, data.o, 0, 0.01, elem);
2880
- } else {
2881
- this.o = {
2882
- _mdf: false,
2883
- v: 1
2884
- };
2885
- }
2886
- this._isDirty = true;
2887
- if (!this.dynamicProperties.length) {
2888
- this.getValue(true);
2889
- }
2890
- }
2891
-
2892
- TransformProperty.prototype = {
2893
- applyToMatrix: applyToMatrix,
2894
- getValue: processKeys,
2895
- precalculateMatrix: precalculateMatrix,
2896
- autoOrient: autoOrient
2897
- }
2898
-
2899
- extendPrototype([DynamicPropertyContainer], TransformProperty);
2900
- TransformProperty.prototype.addDynamicProperty = addDynamicProperty;
2901
- TransformProperty.prototype._addDynamicProperty = DynamicPropertyContainer.prototype.addDynamicProperty;
2902
-
2903
- function getTransformProperty(elem, data, container) {
2904
- return new TransformProperty(elem, data, container);
2905
- }
2906
-
2907
- return {
2908
- getTransformProperty: getTransformProperty
2909
- };
2910
-
2911
- }());
2912
-
2913
- function ShapePath() {
2914
- this.c = false;
2915
- this._length = 0;
2916
- this._maxLength = 8;
2917
- this.v = createSizedArray(this._maxLength);
2918
- this.o = createSizedArray(this._maxLength);
2919
- this.i = createSizedArray(this._maxLength);
2920
- }
2921
-
2922
- ShapePath.prototype.setPathData = function (closed, len) {
2923
- this.c = closed;
2924
- this.setLength(len);
2925
- var i = 0;
2926
- while (i < len) {
2927
- this.v[i] = point_pool.newElement();
2928
- this.o[i] = point_pool.newElement();
2929
- this.i[i] = point_pool.newElement();
2930
- i += 1;
2931
- }
2932
- };
2933
-
2934
- ShapePath.prototype.setLength = function (len) {
2935
- while (this._maxLength < len) {
2936
- this.doubleArrayLength();
2937
- }
2938
- this._length = len;
2939
- };
2940
-
2941
- ShapePath.prototype.doubleArrayLength = function () {
2942
- this.v = this.v.concat(createSizedArray(this._maxLength));
2943
- this.i = this.i.concat(createSizedArray(this._maxLength));
2944
- this.o = this.o.concat(createSizedArray(this._maxLength));
2945
- this._maxLength *= 2;
2946
- };
2947
-
2948
- ShapePath.prototype.setXYAt = function (x, y, type, pos, replace) {
2949
- var arr;
2950
- this._length = Math.max(this._length, pos + 1);
2951
- if (this._length >= this._maxLength) {
2952
- this.doubleArrayLength();
2953
- }
2954
- switch (type) {
2955
- case 'v':
2956
- arr = this.v;
2957
- break;
2958
- case 'i':
2959
- arr = this.i;
2960
- break;
2961
- case 'o':
2962
- arr = this.o;
2963
- break;
2964
- }
2965
- if (!arr[pos] || (arr[pos] && !replace)) {
2966
- arr[pos] = point_pool.newElement();
2967
- }
2968
- arr[pos][0] = x;
2969
- arr[pos][1] = y;
2970
- };
2971
-
2972
- ShapePath.prototype.setTripleAt = function (vX, vY, oX, oY, iX, iY, pos, replace) {
2973
- this.setXYAt(vX, vY, 'v', pos, replace);
2974
- this.setXYAt(oX, oY, 'o', pos, replace);
2975
- this.setXYAt(iX, iY, 'i', pos, replace);
2976
- };
2977
-
2978
- ShapePath.prototype.reverse = function () {
2979
- var newPath = new ShapePath();
2980
- newPath.setPathData(this.c, this._length);
2981
- var vertices = this.v,
2982
- outPoints = this.o,
2983
- inPoints = this.i;
2984
- var init = 0;
2985
- if (this.c) {
2986
- newPath.setTripleAt(vertices[0][0], vertices[0][1], inPoints[0][0], inPoints[0][1], outPoints[0][0], outPoints[0][1], 0, false);
2987
- init = 1;
2988
- }
2989
- var cnt = this._length - 1;
2990
- var len = this._length;
2991
-
2992
- var i;
2993
- for (i = init; i < len; i += 1) {
2994
- newPath.setTripleAt(vertices[cnt][0], vertices[cnt][1], inPoints[cnt][0], inPoints[cnt][1], outPoints[cnt][0], outPoints[cnt][1], i, false);
2995
- cnt -= 1;
2996
- }
2997
- return newPath;
2998
- };
2999
- var ShapePropertyFactory = (function () {
3000
-
3001
- var initFrame = -999999;
3002
-
3003
- function interpolateShape(frameNum, previousValue, caching) {
3004
- var iterationIndex = caching.lastIndex;
3005
- var keyPropS, keyPropE, isHold, j, k, jLen, kLen, perc, vertexValue;
3006
- var kf = this.keyframes;
3007
- if (frameNum < kf[0].t - this.offsetTime) {
3008
- keyPropS = kf[0].s[0];
3009
- isHold = true;
3010
- iterationIndex = 0;
3011
- } else if (frameNum >= kf[kf.length - 1].t - this.offsetTime) {
3012
- keyPropS = kf[kf.length - 1].s ? kf[kf.length - 1].s[0] : kf[kf.length - 2].e[0];
3013
- /*if(kf[kf.length - 1].s){
3014
- keyPropS = kf[kf.length - 1].s[0];
3015
- }else{
3016
- keyPropS = kf[kf.length - 2].e[0];
3017
- }*/
3018
- isHold = true;
3019
- } else {
3020
- var i = iterationIndex;
3021
- var len = kf.length - 1,
3022
- flag = true,
3023
- keyData, nextKeyData;
3024
- while (flag) {
3025
- keyData = kf[i];
3026
- nextKeyData = kf[i + 1];
3027
- if ((nextKeyData.t - this.offsetTime) > frameNum) {
3028
- break;
3029
- }
3030
- if (i < len - 1) {
3031
- i += 1;
3032
- } else {
3033
- flag = false;
3034
- }
3035
- }
3036
- isHold = keyData.h === 1;
3037
- iterationIndex = i;
3038
- if (!isHold) {
3039
- if (frameNum >= nextKeyData.t - this.offsetTime) {
3040
- perc = 1;
3041
- } else if (frameNum < keyData.t - this.offsetTime) {
3042
- perc = 0;
3043
- } else {
3044
- var fnc;
3045
- if (keyData.__fnct) {
3046
- fnc = keyData.__fnct;
3047
- } else {
3048
- fnc = BezierFactory.getBezierEasing(keyData.o.x, keyData.o.y, keyData.i.x, keyData.i.y).get;
3049
- keyData.__fnct = fnc;
3050
- }
3051
- perc = fnc((frameNum - (keyData.t - this.offsetTime)) / ((nextKeyData.t - this.offsetTime) - (keyData.t - this.offsetTime)));
3052
- }
3053
- keyPropE = nextKeyData.s ? nextKeyData.s[0] : keyData.e[0];
3054
- }
3055
- keyPropS = keyData.s[0];
3056
- }
3057
- jLen = previousValue._length;
3058
- kLen = keyPropS.i[0].length;
3059
- caching.lastIndex = iterationIndex;
3060
-
3061
- for (j = 0; j < jLen; j += 1) {
3062
- for (k = 0; k < kLen; k += 1) {
3063
- vertexValue = isHold ? keyPropS.i[j][k] : keyPropS.i[j][k] + (keyPropE.i[j][k] - keyPropS.i[j][k]) * perc;
3064
- previousValue.i[j][k] = vertexValue;
3065
- vertexValue = isHold ? keyPropS.o[j][k] : keyPropS.o[j][k] + (keyPropE.o[j][k] - keyPropS.o[j][k]) * perc;
3066
- previousValue.o[j][k] = vertexValue;
3067
- vertexValue = isHold ? keyPropS.v[j][k] : keyPropS.v[j][k] + (keyPropE.v[j][k] - keyPropS.v[j][k]) * perc;
3068
- previousValue.v[j][k] = vertexValue;
3069
- }
3070
- }
3071
- }
3072
-
3073
- function interpolateShapeCurrentTime() {
3074
- var frameNum = this.comp.renderedFrame - this.offsetTime;
3075
- var initTime = this.keyframes[0].t - this.offsetTime;
3076
- var endTime = this.keyframes[this.keyframes.length - 1].t - this.offsetTime;
3077
- var lastFrame = this._caching.lastFrame;
3078
- if (!(lastFrame !== initFrame && ((lastFrame < initTime && frameNum < initTime) || (lastFrame > endTime && frameNum > endTime)))) {
3079
- ////
3080
- this._caching.lastIndex = lastFrame < frameNum ? this._caching.lastIndex : 0;
3081
- this.interpolateShape(frameNum, this.pv, this._caching);
3082
- ////
3083
- }
3084
- this._caching.lastFrame = frameNum;
3085
- return this.pv;
3086
- }
3087
-
3088
- function resetShape() {
3089
- this.paths = this.localShapeCollection;
3090
- }
3091
-
3092
- function shapesEqual(shape1, shape2) {
3093
- if (shape1._length !== shape2._length || shape1.c !== shape2.c) {
3094
- return false;
3095
- }
3096
- var i, len = shape1._length;
3097
- for (i = 0; i < len; i += 1) {
3098
- if (shape1.v[i][0] !== shape2.v[i][0] ||
3099
- shape1.v[i][1] !== shape2.v[i][1] ||
3100
- shape1.o[i][0] !== shape2.o[i][0] ||
3101
- shape1.o[i][1] !== shape2.o[i][1] ||
3102
- shape1.i[i][0] !== shape2.i[i][0] ||
3103
- shape1.i[i][1] !== shape2.i[i][1]) {
3104
- return false;
3105
- }
3106
- }
3107
- return true;
3108
- }
3109
-
3110
- function setVValue(newPath) {
3111
- if (!shapesEqual(this.v, newPath)) {
3112
- this.v = shape_pool.clone(newPath);
3113
- this.localShapeCollection.releaseShapes();
3114
- this.localShapeCollection.addShape(this.v);
3115
- this._mdf = true;
3116
- this.paths = this.localShapeCollection;
3117
- }
3118
- }
3119
-
3120
- function processEffectsSequence() {
3121
- if (this.elem.globalData.frameId === this.frameId) {
3122
- return;
3123
- } else if (!this.effectsSequence.length) {
3124
- this._mdf = false;
3125
- return;
3126
- }
3127
- if (this.lock) {
3128
- this.setVValue(this.pv);
3129
- return;
3130
- }
3131
- this.lock = true;
3132
- this._mdf = false;
3133
- var finalValue = this.kf ? this.pv : this.data.ks ? this.data.ks.k : this.data.pt.k;
3134
- var i, len = this.effectsSequence.length;
3135
- for (i = 0; i < len; i += 1) {
3136
- finalValue = this.effectsSequence[i](finalValue);
3137
- }
3138
- this.setVValue(finalValue);
3139
- this.lock = false;
3140
- this.frameId = this.elem.globalData.frameId;
3141
- };
3142
-
3143
- function ShapeProperty(elem, data, type) {
3144
- this.propType = 'shape';
3145
- this.comp = elem.comp;
3146
- this.container = elem;
3147
- this.elem = elem;
3148
- this.data = data;
3149
- this.k = false;
3150
- this.kf = false;
3151
- this._mdf = false;
3152
- var pathData = type === 3 ? data.pt.k : data.ks.k;
3153
- this.v = shape_pool.clone(pathData);
3154
- this.pv = shape_pool.clone(this.v);
3155
- this.localShapeCollection = shapeCollection_pool.newShapeCollection();
3156
- this.paths = this.localShapeCollection;
3157
- this.paths.addShape(this.v);
3158
- this.reset = resetShape;
3159
- this.effectsSequence = [];
3160
- }
3161
-
3162
- function addEffect(effectFunction) {
3163
- this.effectsSequence.push(effectFunction);
3164
- this.container.addDynamicProperty(this);
3165
- }
3166
-
3167
- ShapeProperty.prototype.interpolateShape = interpolateShape;
3168
- ShapeProperty.prototype.getValue = processEffectsSequence;
3169
- ShapeProperty.prototype.setVValue = setVValue;
3170
- ShapeProperty.prototype.addEffect = addEffect;
3171
-
3172
- function KeyframedShapeProperty(elem, data, type) {
3173
- this.propType = 'shape';
3174
- this.comp = elem.comp;
3175
- this.elem = elem;
3176
- this.container = elem;
3177
- this.offsetTime = elem.data.st;
3178
- this.keyframes = type === 3 ? data.pt.k : data.ks.k;
3179
- this.k = true;
3180
- this.kf = true;
3181
- var i, len = this.keyframes[0].s[0].i.length;
3182
- var jLen = this.keyframes[0].s[0].i[0].length;
3183
- this.v = shape_pool.newElement();
3184
- this.v.setPathData(this.keyframes[0].s[0].c, len);
3185
- this.pv = shape_pool.clone(this.v);
3186
- this.localShapeCollection = shapeCollection_pool.newShapeCollection();
3187
- this.paths = this.localShapeCollection;
3188
- this.paths.addShape(this.v);
3189
- this.lastFrame = initFrame;
3190
- this.reset = resetShape;
3191
- this._caching = {
3192
- lastFrame: initFrame,
3193
- lastIndex: 0
3194
- };
3195
- this.effectsSequence = [interpolateShapeCurrentTime.bind(this)];
3196
- }
3197
- KeyframedShapeProperty.prototype.getValue = processEffectsSequence;
3198
- KeyframedShapeProperty.prototype.interpolateShape = interpolateShape;
3199
- KeyframedShapeProperty.prototype.setVValue = setVValue;
3200
- KeyframedShapeProperty.prototype.addEffect = addEffect;
3201
-
3202
- var EllShapeProperty = (function () {
3203
-
3204
- var cPoint = roundCorner;
3205
-
3206
- function EllShapeProperty(elem, data) {
3207
- /*this.v = {
3208
- v: createSizedArray(4),
3209
- i: createSizedArray(4),
3210
- o: createSizedArray(4),
3211
- c: true
3212
- };*/
3213
- this.v = shape_pool.newElement();
3214
- this.v.setPathData(true, 4);
3215
- this.localShapeCollection = shapeCollection_pool.newShapeCollection();
3216
- this.paths = this.localShapeCollection;
3217
- this.localShapeCollection.addShape(this.v);
3218
- this.d = data.d;
3219
- this.elem = elem;
3220
- this.comp = elem.comp;
3221
- this.frameId = -1;
3222
- this.initDynamicPropertyContainer(elem);
3223
- this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);
3224
- this.s = PropertyFactory.getProp(elem, data.s, 1, 0, this);
3225
- if (this.dynamicProperties.length) {
3226
- this.k = true;
3227
- } else {
3228
- this.k = false;
3229
- this.convertEllToPath();
3230
- }
3231
- };
3232
-
3233
- EllShapeProperty.prototype = {
3234
- reset: resetShape,
3235
- getValue: function () {
3236
- if (this.elem.globalData.frameId === this.frameId) {
3237
- return;
3238
- }
3239
- this.frameId = this.elem.globalData.frameId;
3240
- this.iterateDynamicProperties();
3241
-
3242
- if (this._mdf) {
3243
- this.convertEllToPath();
3244
- }
3245
- },
3246
- convertEllToPath: function () {
3247
- var p0 = this.p.v[0],
3248
- p1 = this.p.v[1],
3249
- s0 = this.s.v[0] / 2,
3250
- s1 = this.s.v[1] / 2;
3251
- var _cw = this.d !== 3;
3252
- var _v = this.v;
3253
- _v.v[0][0] = p0;
3254
- _v.v[0][1] = p1 - s1;
3255
- _v.v[1][0] = _cw ? p0 + s0 : p0 - s0;
3256
- _v.v[1][1] = p1;
3257
- _v.v[2][0] = p0;
3258
- _v.v[2][1] = p1 + s1;
3259
- _v.v[3][0] = _cw ? p0 - s0 : p0 + s0;
3260
- _v.v[3][1] = p1;
3261
- _v.i[0][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;
3262
- _v.i[0][1] = p1 - s1;
3263
- _v.i[1][0] = _cw ? p0 + s0 : p0 - s0;
3264
- _v.i[1][1] = p1 - s1 * cPoint;
3265
- _v.i[2][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;
3266
- _v.i[2][1] = p1 + s1;
3267
- _v.i[3][0] = _cw ? p0 - s0 : p0 + s0;
3268
- _v.i[3][1] = p1 + s1 * cPoint;
3269
- _v.o[0][0] = _cw ? p0 + s0 * cPoint : p0 - s0 * cPoint;
3270
- _v.o[0][1] = p1 - s1;
3271
- _v.o[1][0] = _cw ? p0 + s0 : p0 - s0;
3272
- _v.o[1][1] = p1 + s1 * cPoint;
3273
- _v.o[2][0] = _cw ? p0 - s0 * cPoint : p0 + s0 * cPoint;
3274
- _v.o[2][1] = p1 + s1;
3275
- _v.o[3][0] = _cw ? p0 - s0 : p0 + s0;
3276
- _v.o[3][1] = p1 - s1 * cPoint;
3277
- }
3278
- }
3279
-
3280
- extendPrototype([DynamicPropertyContainer], EllShapeProperty);
3281
-
3282
- return EllShapeProperty;
3283
- }());
3284
-
3285
- var StarShapeProperty = (function () {
3286
-
3287
- function StarShapeProperty(elem, data) {
3288
- this.v = shape_pool.newElement();
3289
- this.v.setPathData(true, 0);
3290
- this.elem = elem;
3291
- this.comp = elem.comp;
3292
- this.data = data;
3293
- this.frameId = -1;
3294
- this.d = data.d;
3295
- this.initDynamicPropertyContainer(elem);
3296
- if (data.sy === 1) {
3297
- this.ir = PropertyFactory.getProp(elem, data.ir, 0, 0, this);
3298
- this.is = PropertyFactory.getProp(elem, data.is, 0, 0.01, this);
3299
- this.convertToPath = this.convertStarToPath;
3300
- } else {
3301
- this.convertToPath = this.convertPolygonToPath;
3302
- }
3303
- this.pt = PropertyFactory.getProp(elem, data.pt, 0, 0, this);
3304
- this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);
3305
- this.r = PropertyFactory.getProp(elem, data.r, 0, degToRads, this);
3306
- this.or = PropertyFactory.getProp(elem, data.or, 0, 0, this);
3307
- this.os = PropertyFactory.getProp(elem, data.os, 0, 0.01, this);
3308
- this.localShapeCollection = shapeCollection_pool.newShapeCollection();
3309
- this.localShapeCollection.addShape(this.v);
3310
- this.paths = this.localShapeCollection;
3311
- if (this.dynamicProperties.length) {
3312
- this.k = true;
3313
- } else {
3314
- this.k = false;
3315
- this.convertToPath();
3316
- }
3317
- };
3318
-
3319
- StarShapeProperty.prototype = {
3320
- reset: resetShape,
3321
- getValue: function () {
3322
- if (this.elem.globalData.frameId === this.frameId) {
3323
- return;
3324
- }
3325
- this.frameId = this.elem.globalData.frameId;
3326
- this.iterateDynamicProperties();
3327
- if (this._mdf) {
3328
- this.convertToPath();
3329
- }
3330
- },
3331
- convertStarToPath: function () {
3332
- var numPts = Math.floor(this.pt.v) * 2;
3333
- var angle = Math.PI * 2 / numPts;
3334
- /*this.v.v.length = numPts;
3335
- this.v.i.length = numPts;
3336
- this.v.o.length = numPts;*/
3337
- var longFlag = true;
3338
- var longRad = this.or.v;
3339
- var shortRad = this.ir.v;
3340
- var longRound = this.os.v;
3341
- var shortRound = this.is.v;
3342
- var longPerimSegment = 2 * Math.PI * longRad / (numPts * 2);
3343
- var shortPerimSegment = 2 * Math.PI * shortRad / (numPts * 2);
3344
- var i, rad, roundness, perimSegment, currentAng = -Math.PI / 2;
3345
- currentAng += this.r.v;
3346
- var dir = this.data.d === 3 ? -1 : 1;
3347
- this.v._length = 0;
3348
- for (i = 0; i < numPts; i += 1) {
3349
- rad = longFlag ? longRad : shortRad;
3350
- roundness = longFlag ? longRound : shortRound;
3351
- perimSegment = longFlag ? longPerimSegment : shortPerimSegment;
3352
- var x = rad * Math.cos(currentAng);
3353
- var y = rad * Math.sin(currentAng);
3354
- var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);
3355
- var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);
3356
- x += +this.p.v[0];
3357
- y += +this.p.v[1];
3358
- this.v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);
3359
-
3360
- /*this.v.v[i] = [x,y];
3361
- this.v.i[i] = [x+ox*perimSegment*roundness*dir,y+oy*perimSegment*roundness*dir];
3362
- this.v.o[i] = [x-ox*perimSegment*roundness*dir,y-oy*perimSegment*roundness*dir];
3363
- this.v._length = numPts;*/
3364
- longFlag = !longFlag;
3365
- currentAng += angle * dir;
3366
- }
3367
- },
3368
- convertPolygonToPath: function () {
3369
- var numPts = Math.floor(this.pt.v);
3370
- var angle = Math.PI * 2 / numPts;
3371
- var rad = this.or.v;
3372
- var roundness = this.os.v;
3373
- var perimSegment = 2 * Math.PI * rad / (numPts * 4);
3374
- var i, currentAng = -Math.PI / 2;
3375
- var dir = this.data.d === 3 ? -1 : 1;
3376
- currentAng += this.r.v;
3377
- this.v._length = 0;
3378
- for (i = 0; i < numPts; i += 1) {
3379
- var x = rad * Math.cos(currentAng);
3380
- var y = rad * Math.sin(currentAng);
3381
- var ox = x === 0 && y === 0 ? 0 : y / Math.sqrt(x * x + y * y);
3382
- var oy = x === 0 && y === 0 ? 0 : -x / Math.sqrt(x * x + y * y);
3383
- x += +this.p.v[0];
3384
- y += +this.p.v[1];
3385
- this.v.setTripleAt(x, y, x - ox * perimSegment * roundness * dir, y - oy * perimSegment * roundness * dir, x + ox * perimSegment * roundness * dir, y + oy * perimSegment * roundness * dir, i, true);
3386
- currentAng += angle * dir;
3387
- }
3388
- this.paths.length = 0;
3389
- this.paths[0] = this.v;
3390
- }
3391
-
3392
- }
3393
- extendPrototype([DynamicPropertyContainer], StarShapeProperty);
3394
-
3395
- return StarShapeProperty;
3396
- }());
3397
-
3398
- var RectShapeProperty = (function () {
3399
-
3400
- function RectShapeProperty(elem, data) {
3401
- this.v = shape_pool.newElement();
3402
- this.v.c = true;
3403
- this.localShapeCollection = shapeCollection_pool.newShapeCollection();
3404
- this.localShapeCollection.addShape(this.v);
3405
- this.paths = this.localShapeCollection;
3406
- this.elem = elem;
3407
- this.comp = elem.comp;
3408
- this.frameId = -1;
3409
- this.d = data.d;
3410
- this.initDynamicPropertyContainer(elem);
3411
- this.p = PropertyFactory.getProp(elem, data.p, 1, 0, this);
3412
- this.s = PropertyFactory.getProp(elem, data.s, 1, 0, this);
3413
- this.r = PropertyFactory.getProp(elem, data.r, 0, 0, this);
3414
- if (this.dynamicProperties.length) {
3415
- this.k = true;
3416
- } else {
3417
- this.k = false;
3418
- this.convertRectToPath();
3419
- }
3420
- };
3421
-
3422
- RectShapeProperty.prototype = {
3423
- convertRectToPath: function () {
3424
- var p0 = this.p.v[0],
3425
- p1 = this.p.v[1],
3426
- v0 = this.s.v[0] / 2,
3427
- v1 = this.s.v[1] / 2;
3428
- var round = bm_min(v0, v1, this.r.v);
3429
- var cPoint = round * (1 - roundCorner);
3430
- this.v._length = 0;
3431
-
3432
- if (this.d === 2 || this.d === 1) {
3433
- this.v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, 0, true);
3434
- this.v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, p0 + v0, p1 + v1 - round, 1, true);
3435
- if (round !== 0) {
3436
- this.v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, 2, true);
3437
- this.v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0 + round, p1 + v1, 3, true);
3438
- this.v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, 4, true);
3439
- this.v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1 + round, 5, true);
3440
- this.v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, 6, true);
3441
- this.v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, p0 + v0 - round, p1 - v1, 7, true);
3442
- } else {
3443
- this.v.setTripleAt(p0 - v0, p1 + v1, p0 - v0 + cPoint, p1 + v1, p0 - v0, p1 + v1, 2);
3444
- this.v.setTripleAt(p0 - v0, p1 - v1, p0 - v0, p1 - v1 + cPoint, p0 - v0, p1 - v1, 3);
3445
- }
3446
- } else {
3447
- this.v.setTripleAt(p0 + v0, p1 - v1 + round, p0 + v0, p1 - v1 + cPoint, p0 + v0, p1 - v1 + round, 0, true);
3448
- if (round !== 0) {
3449
- this.v.setTripleAt(p0 + v0 - round, p1 - v1, p0 + v0 - round, p1 - v1, p0 + v0 - cPoint, p1 - v1, 1, true);
3450
- this.v.setTripleAt(p0 - v0 + round, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0 + round, p1 - v1, 2, true);
3451
- this.v.setTripleAt(p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + round, p0 - v0, p1 - v1 + cPoint, 3, true);
3452
- this.v.setTripleAt(p0 - v0, p1 + v1 - round, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1 - round, 4, true);
3453
- this.v.setTripleAt(p0 - v0 + round, p1 + v1, p0 - v0 + round, p1 + v1, p0 - v0 + cPoint, p1 + v1, 5, true);
3454
- this.v.setTripleAt(p0 + v0 - round, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0 - round, p1 + v1, 6, true);
3455
- this.v.setTripleAt(p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - round, p0 + v0, p1 + v1 - cPoint, 7, true);
3456
- } else {
3457
- this.v.setTripleAt(p0 - v0, p1 - v1, p0 - v0 + cPoint, p1 - v1, p0 - v0, p1 - v1, 1, true);
3458
- this.v.setTripleAt(p0 - v0, p1 + v1, p0 - v0, p1 + v1 - cPoint, p0 - v0, p1 + v1, 2, true);
3459
- this.v.setTripleAt(p0 + v0, p1 + v1, p0 + v0 - cPoint, p1 + v1, p0 + v0, p1 + v1, 3, true);
3460
-
3461
- }
3462
- }
3463
- },
3464
- getValue: function (frameNum) {
3465
- if (this.elem.globalData.frameId === this.frameId) {
3466
- return;
3467
- }
3468
- this.frameId = this.elem.globalData.frameId;
3469
- this.iterateDynamicProperties();
3470
- if (this._mdf) {
3471
- this.convertRectToPath();
3472
- }
3473
-
3474
- },
3475
- reset: resetShape
3476
- }
3477
- extendPrototype([DynamicPropertyContainer], RectShapeProperty);
3478
-
3479
- return RectShapeProperty;
3480
- }());
3481
-
3482
- function getShapeProp(elem, data, type) {
3483
- var prop;
3484
- if (type === 3 || type === 4) {
3485
- var dataProp = type === 3 ? data.pt : data.ks;
3486
- var keys = dataProp.k;
3487
- if (keys.length) {
3488
- prop = new KeyframedShapeProperty(elem, data, type);
3489
- } else {
3490
- prop = new ShapeProperty(elem, data, type);
3491
- }
3492
- } else if (type === 5) {
3493
- prop = new RectShapeProperty(elem, data);
3494
- } else if (type === 6) {
3495
- prop = new EllShapeProperty(elem, data);
3496
- } else if (type === 7) {
3497
- prop = new StarShapeProperty(elem, data);
3498
- }
3499
- if (prop.k) {
3500
- elem.addDynamicProperty(prop);
3501
- }
3502
- return prop;
3503
- }
3504
-
3505
- function getConstructorFunction() {
3506
- return ShapeProperty;
3507
- }
3508
-
3509
- function getKeyframedConstructorFunction() {
3510
- return KeyframedShapeProperty;
3511
- }
3512
-
3513
- var ob = {};
3514
- ob.getShapeProp = getShapeProp;
3515
- ob.getConstructorFunction = getConstructorFunction;
3516
- ob.getKeyframedConstructorFunction = getKeyframedConstructorFunction;
3517
- return ob;
3518
- }());
3519
- var ShapeModifiers = (function () {
3520
- var ob = {};
3521
- var modifiers = {};
3522
- ob.registerModifier = registerModifier;
3523
- ob.getModifier = getModifier;
3524
-
3525
- function registerModifier(nm, factory) {
3526
- if (!modifiers[nm]) {
3527
- modifiers[nm] = factory;
3528
- }
3529
- }
3530
-
3531
- function getModifier(nm, elem, data) {
3532
- return new modifiers[nm](elem, data);
3533
- }
3534
-
3535
- return ob;
3536
- }());
3537
-
3538
- function ShapeModifier() { }
3539
- ShapeModifier.prototype.initModifierProperties = function () { };
3540
- ShapeModifier.prototype.addShapeToModifier = function () { };
3541
- ShapeModifier.prototype.addShape = function (data) {
3542
- if (!this.closed) {
3543
- // Adding shape to dynamic properties. It covers the case where a shape has no effects applied, to reset it's _mdf state on every tick.
3544
- data.sh.container.addDynamicProperty(data.sh);
3545
- var shapeData = {
3546
- shape: data.sh,
3547
- data: data,
3548
- localShapeCollection: shapeCollection_pool.newShapeCollection()
3549
- };
3550
- this.shapes.push(shapeData);
3551
- this.addShapeToModifier(shapeData);
3552
- if (this._isAnimated) {
3553
- data.setAsAnimated();
3554
- }
3555
- }
3556
- };
3557
- ShapeModifier.prototype.init = function (elem, data) {
3558
- this.shapes = [];
3559
- this.elem = elem;
3560
- this.initDynamicPropertyContainer(elem);
3561
- this.initModifierProperties(elem, data);
3562
- this.frameId = initialDefaultFrame;
3563
- this.closed = false;
3564
- this.k = false;
3565
- if (this.dynamicProperties.length) {
3566
- this.k = true;
3567
- } else {
3568
- this.getValue(true);
3569
- }
3570
- };
3571
- ShapeModifier.prototype.processKeys = function () {
3572
- if (this.elem.globalData.frameId === this.frameId) {
3573
- return;
3574
- }
3575
- this.frameId = this.elem.globalData.frameId;
3576
- this.iterateDynamicProperties();
3577
- };
3578
-
3579
- extendPrototype([DynamicPropertyContainer], ShapeModifier);
3580
-
3581
- function TrimModifier() { }
3582
- extendPrototype([ShapeModifier], TrimModifier);
3583
- TrimModifier.prototype.initModifierProperties = function (elem, data) {
3584
- this.s = PropertyFactory.getProp(elem, data.s, 0, 0.01, this);
3585
- this.e = PropertyFactory.getProp(elem, data.e, 0, 0.01, this);
3586
- this.o = PropertyFactory.getProp(elem, data.o, 0, 0, this);
3587
- this.sValue = 0;
3588
- this.eValue = 0;
3589
- this.getValue = this.processKeys;
3590
- this.m = data.m;
3591
- this._isAnimated = !!this.s.effectsSequence.length || !!this.e.effectsSequence.length || !!this.o.effectsSequence.length;
3592
- };
3593
-
3594
- TrimModifier.prototype.addShapeToModifier = function (shapeData) {
3595
- shapeData.pathsData = [];
3596
- };
3597
-
3598
- TrimModifier.prototype.calculateShapeEdges = function (s, e, shapeLength, addedLength, totalModifierLength) {
3599
- var segments = [];
3600
- if (e <= 1) {
3601
- segments.push({
3602
- s: s,
3603
- e: e
3604
- });
3605
- } else if (s >= 1) {
3606
- segments.push({
3607
- s: s - 1,
3608
- e: e - 1
3609
- });
3610
- } else {
3611
- segments.push({
3612
- s: s,
3613
- e: 1
3614
- });
3615
- segments.push({
3616
- s: 0,
3617
- e: e - 1
3618
- });
3619
- }
3620
- var shapeSegments = [];
3621
- var i, len = segments.length,
3622
- segmentOb;
3623
- for (i = 0; i < len; i += 1) {
3624
- segmentOb = segments[i];
3625
- if (segmentOb.e * totalModifierLength < addedLength || segmentOb.s * totalModifierLength > addedLength + shapeLength) {
3626
-
3627
- } else {
3628
- var shapeS, shapeE;
3629
- if (segmentOb.s * totalModifierLength <= addedLength) {
3630
- shapeS = 0;
3631
- } else {
3632
- shapeS = (segmentOb.s * totalModifierLength - addedLength) / shapeLength;
3633
- }
3634
- if (segmentOb.e * totalModifierLength >= addedLength + shapeLength) {
3635
- shapeE = 1;
3636
- } else {
3637
- shapeE = ((segmentOb.e * totalModifierLength - addedLength) / shapeLength);
3638
- }
3639
- shapeSegments.push([shapeS, shapeE]);
3640
- }
3641
- }
3642
- if (!shapeSegments.length) {
3643
- shapeSegments.push([0, 0]);
3644
- }
3645
- return shapeSegments;
3646
- };
3647
-
3648
- TrimModifier.prototype.releasePathsData = function (pathsData) {
3649
- var i, len = pathsData.length;
3650
- for (i = 0; i < len; i += 1) {
3651
- segments_length_pool.release(pathsData[i]);
3652
- }
3653
- pathsData.length = 0;
3654
- return pathsData;
3655
- };
3656
-
3657
- TrimModifier.prototype.processShapes = function (_isFirstFrame) {
3658
- var s, e;
3659
- if (this._mdf || _isFirstFrame) {
3660
- var o = (this.o.v % 360) / 360;
3661
- if (o < 0) {
3662
- o += 1;
3663
- }
3664
- s = (this.s.v > 1 ? 1 : this.s.v < 0 ? 0 : this.s.v) + o;
3665
- e = (this.e.v > 1 ? 1 : this.e.v < 0 ? 0 : this.e.v) + o;
3666
- if (s === e) {
3667
-
3668
- }
3669
- if (s > e) {
3670
- var _s = s;
3671
- s = e;
3672
- e = _s;
3673
- }
3674
- s = Math.round(s * 10000) * 0.0001;
3675
- e = Math.round(e * 10000) * 0.0001;
3676
- this.sValue = s;
3677
- this.eValue = e;
3678
- } else {
3679
- s = this.sValue;
3680
- e = this.eValue;
3681
- }
3682
- var shapePaths;
3683
- var i, len = this.shapes.length,
3684
- j, jLen;
3685
- var pathsData, pathData, totalShapeLength, totalModifierLength = 0;
3686
-
3687
- if (e === s) {
3688
- for (i = 0; i < len; i += 1) {
3689
- this.shapes[i].localShapeCollection.releaseShapes();
3690
- this.shapes[i].shape._mdf = true;
3691
- this.shapes[i].shape.paths = this.shapes[i].localShapeCollection;
3692
- }
3693
- } else if (!((e === 1 && s === 0) || (e === 0 && s === 1))) {
3694
- var segments = [],
3695
- shapeData, localShapeCollection;
3696
- for (i = 0; i < len; i += 1) {
3697
- shapeData = this.shapes[i];
3698
- // if shape hasn't changed and trim properties haven't changed, cached previous path can be used
3699
- if (!shapeData.shape._mdf && !this._mdf && !_isFirstFrame && this.m !== 2) {
3700
- shapeData.shape.paths = shapeData.localShapeCollection;
3701
- } else {
3702
- shapePaths = shapeData.shape.paths;
3703
- jLen = shapePaths._length;
3704
- totalShapeLength = 0;
3705
- if (!shapeData.shape._mdf && shapeData.pathsData.length) {
3706
- totalShapeLength = shapeData.totalShapeLength;
3707
- } else {
3708
- pathsData = this.releasePathsData(shapeData.pathsData);
3709
- for (j = 0; j < jLen; j += 1) {
3710
- pathData = bez.getSegmentsLength(shapePaths.shapes[j]);
3711
- pathsData.push(pathData);
3712
- totalShapeLength += pathData.totalLength;
3713
- }
3714
- shapeData.totalShapeLength = totalShapeLength;
3715
- shapeData.pathsData = pathsData;
3716
- }
3717
-
3718
- totalModifierLength += totalShapeLength;
3719
- shapeData.shape._mdf = true;
3720
- }
3721
- }
3722
- var shapeS = s,
3723
- shapeE = e,
3724
- addedLength = 0,
3725
- edges;
3726
- for (i = len - 1; i >= 0; i -= 1) {
3727
- shapeData = this.shapes[i];
3728
- if (shapeData.shape._mdf) {
3729
- localShapeCollection = shapeData.localShapeCollection;
3730
- localShapeCollection.releaseShapes();
3731
- //if m === 2 means paths are trimmed individually so edges need to be found for this specific shape relative to whoel group
3732
- if (this.m === 2 && len > 1) {
3733
- edges = this.calculateShapeEdges(s, e, shapeData.totalShapeLength, addedLength, totalModifierLength);
3734
- addedLength += shapeData.totalShapeLength;
3735
- } else {
3736
- edges = [
3737
- [shapeS, shapeE]
3738
- ];
3739
- }
3740
- jLen = edges.length;
3741
- for (j = 0; j < jLen; j += 1) {
3742
- shapeS = edges[j][0];
3743
- shapeE = edges[j][1];
3744
- segments.length = 0;
3745
- if (shapeE <= 1) {
3746
- segments.push({
3747
- s: shapeData.totalShapeLength * shapeS,
3748
- e: shapeData.totalShapeLength * shapeE
3749
- });
3750
- } else if (shapeS >= 1) {
3751
- segments.push({
3752
- s: shapeData.totalShapeLength * (shapeS - 1),
3753
- e: shapeData.totalShapeLength * (shapeE - 1)
3754
- });
3755
- } else {
3756
- segments.push({
3757
- s: shapeData.totalShapeLength * shapeS,
3758
- e: shapeData.totalShapeLength
3759
- });
3760
- segments.push({
3761
- s: 0,
3762
- e: shapeData.totalShapeLength * (shapeE - 1)
3763
- });
3764
- }
3765
- var newShapesData = this.addShapes(shapeData, segments[0]);
3766
- if (segments[0].s !== segments[0].e) {
3767
- if (segments.length > 1) {
3768
- var lastShapeInCollection = shapeData.shape.paths.shapes[shapeData.shape.paths._length - 1];
3769
- if (lastShapeInCollection.c) {
3770
- var lastShape = newShapesData.pop();
3771
- this.addPaths(newShapesData, localShapeCollection);
3772
- newShapesData = this.addShapes(shapeData, segments[1], lastShape);
3773
- } else {
3774
- this.addPaths(newShapesData, localShapeCollection);
3775
- newShapesData = this.addShapes(shapeData, segments[1]);
3776
- }
3777
- }
3778
- this.addPaths(newShapesData, localShapeCollection);
3779
- }
3780
-
3781
- }
3782
- shapeData.shape.paths = localShapeCollection;
3783
- }
3784
- }
3785
- } else if (this._mdf) {
3786
- for (i = 0; i < len; i += 1) {
3787
- //Releasign Trim Cached paths data when no trim applied in case shapes are modified inbetween.
3788
- //Don't remove this even if it's losing cached info.
3789
- this.shapes[i].pathsData.length = 0;
3790
- this.shapes[i].shape._mdf = true;
3791
- }
3792
- }
3793
- };
3794
-
3795
- TrimModifier.prototype.addPaths = function (newPaths, localShapeCollection) {
3796
- var i, len = newPaths.length;
3797
- for (i = 0; i < len; i += 1) {
3798
- localShapeCollection.addShape(newPaths[i]);
3799
- }
3800
- };
3801
-
3802
- TrimModifier.prototype.addSegment = function (pt1, pt2, pt3, pt4, shapePath, pos, newShape) {
3803
- shapePath.setXYAt(pt2[0], pt2[1], 'o', pos);
3804
- shapePath.setXYAt(pt3[0], pt3[1], 'i', pos + 1);
3805
- if (newShape) {
3806
- shapePath.setXYAt(pt1[0], pt1[1], 'v', pos);
3807
- }
3808
- shapePath.setXYAt(pt4[0], pt4[1], 'v', pos + 1);
3809
- };
3810
-
3811
- TrimModifier.prototype.addSegmentFromArray = function (points, shapePath, pos, newShape) {
3812
- shapePath.setXYAt(points[1], points[5], 'o', pos);
3813
- shapePath.setXYAt(points[2], points[6], 'i', pos + 1);
3814
- if (newShape) {
3815
- shapePath.setXYAt(points[0], points[4], 'v', pos);
3816
- }
3817
- shapePath.setXYAt(points[3], points[7], 'v', pos + 1);
3818
- };
3819
-
3820
- TrimModifier.prototype.addShapes = function (shapeData, shapeSegment, shapePath) {
3821
- var pathsData = shapeData.pathsData;
3822
- var shapePaths = shapeData.shape.paths.shapes;
3823
- var i, len = shapeData.shape.paths._length,
3824
- j, jLen;
3825
- var addedLength = 0;
3826
- var currentLengthData, segmentCount;
3827
- var lengths;
3828
- var segment;
3829
- var shapes = [];
3830
- var initPos;
3831
- var newShape = true;
3832
- if (!shapePath) {
3833
- shapePath = shape_pool.newElement();
3834
- segmentCount = 0;
3835
- initPos = 0;
3836
- } else {
3837
- segmentCount = shapePath._length;
3838
- initPos = shapePath._length;
3839
- }
3840
- shapes.push(shapePath);
3841
- for (i = 0; i < len; i += 1) {
3842
- lengths = pathsData[i].lengths;
3843
- shapePath.c = shapePaths[i].c;
3844
- jLen = shapePaths[i].c ? lengths.length : lengths.length + 1;
3845
- for (j = 1; j < jLen; j += 1) {
3846
- currentLengthData = lengths[j - 1];
3847
- if (addedLength + currentLengthData.addedLength < shapeSegment.s) {
3848
- addedLength += currentLengthData.addedLength;
3849
- shapePath.c = false;
3850
- } else if (addedLength > shapeSegment.e) {
3851
- shapePath.c = false;
3852
- break;
3853
- } else {
3854
- if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + currentLengthData.addedLength) {
3855
- this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[j], shapePaths[i].v[j], shapePath, segmentCount, newShape);
3856
- newShape = false;
3857
- } else {
3858
- segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[j], shapePaths[i].o[j - 1], shapePaths[i].i[j], (shapeSegment.s - addedLength) / currentLengthData.addedLength, (shapeSegment.e - addedLength) / currentLengthData.addedLength, lengths[j - 1]);
3859
- this.addSegmentFromArray(segment, shapePath, segmentCount, newShape);
3860
- // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);
3861
- newShape = false;
3862
- shapePath.c = false;
3863
- }
3864
- addedLength += currentLengthData.addedLength;
3865
- segmentCount += 1;
3866
- }
3867
- }
3868
- if (shapePaths[i].c && lengths.length) {
3869
- currentLengthData = lengths[j - 1];
3870
- if (addedLength <= shapeSegment.e) {
3871
- var segmentLength = lengths[j - 1].addedLength;
3872
- if (shapeSegment.s <= addedLength && shapeSegment.e >= addedLength + segmentLength) {
3873
- this.addSegment(shapePaths[i].v[j - 1], shapePaths[i].o[j - 1], shapePaths[i].i[0], shapePaths[i].v[0], shapePath, segmentCount, newShape);
3874
- newShape = false;
3875
- } else {
3876
- segment = bez.getNewSegment(shapePaths[i].v[j - 1], shapePaths[i].v[0], shapePaths[i].o[j - 1], shapePaths[i].i[0], (shapeSegment.s - addedLength) / segmentLength, (shapeSegment.e - addedLength) / segmentLength, lengths[j - 1]);
3877
- this.addSegmentFromArray(segment, shapePath, segmentCount, newShape);
3878
- // this.addSegment(segment.pt1, segment.pt3, segment.pt4, segment.pt2, shapePath, segmentCount, newShape);
3879
- newShape = false;
3880
- shapePath.c = false;
3881
- }
3882
- } else {
3883
- shapePath.c = false;
3884
- }
3885
- addedLength += currentLengthData.addedLength;
3886
- segmentCount += 1;
3887
- }
3888
- if (shapePath._length) {
3889
- shapePath.setXYAt(shapePath.v[initPos][0], shapePath.v[initPos][1], 'i', initPos);
3890
- shapePath.setXYAt(shapePath.v[shapePath._length - 1][0], shapePath.v[shapePath._length - 1][1], 'o', shapePath._length - 1);
3891
- }
3892
- if (addedLength > shapeSegment.e) {
3893
- break;
3894
- }
3895
- if (i < len - 1) {
3896
- shapePath = shape_pool.newElement();
3897
- newShape = true;
3898
- shapes.push(shapePath);
3899
- segmentCount = 0;
3900
- }
3901
- }
3902
- return shapes;
3903
- };
3904
-
3905
-
3906
- ShapeModifiers.registerModifier('tm', TrimModifier);
3907
-
3908
- function RoundCornersModifier() { }
3909
- extendPrototype([ShapeModifier], RoundCornersModifier);
3910
- RoundCornersModifier.prototype.initModifierProperties = function (elem, data) {
3911
- this.getValue = this.processKeys;
3912
- this.rd = PropertyFactory.getProp(elem, data.r, 0, null, this);
3913
- this._isAnimated = !!this.rd.effectsSequence.length;
3914
- };
3915
-
3916
- RoundCornersModifier.prototype.processPath = function (path, round) {
3917
- var cloned_path = shape_pool.newElement();
3918
- cloned_path.c = path.c;
3919
- var i, len = path._length;
3920
- var currentV, currentI, currentO, closerV, newV, newO, newI, distance, newPosPerc, index = 0;
3921
- var vX, vY, oX, oY, iX, iY;
3922
- for (i = 0; i < len; i += 1) {
3923
- currentV = path.v[i];
3924
- currentO = path.o[i];
3925
- currentI = path.i[i];
3926
- if (currentV[0] === currentO[0] && currentV[1] === currentO[1] && currentV[0] === currentI[0] && currentV[1] === currentI[1]) {
3927
- if ((i === 0 || i === len - 1) && !path.c) {
3928
- cloned_path.setTripleAt(currentV[0], currentV[1], currentO[0], currentO[1], currentI[0], currentI[1], index);
3929
- /*cloned_path.v[index] = currentV;
3930
- cloned_path.o[index] = currentO;
3931
- cloned_path.i[index] = currentI;*/
3932
- index += 1;
3933
- } else {
3934
- if (i === 0) {
3935
- closerV = path.v[len - 1];
3936
- } else {
3937
- closerV = path.v[i - 1];
3938
- }
3939
- distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));
3940
- newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;
3941
- vX = iX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;
3942
- vY = iY = currentV[1] - (currentV[1] - closerV[1]) * newPosPerc;
3943
- oX = vX - (vX - currentV[0]) * roundCorner;
3944
- oY = vY - (vY - currentV[1]) * roundCorner;
3945
- cloned_path.setTripleAt(vX, vY, oX, oY, iX, iY, index);
3946
- index += 1;
3947
-
3948
- if (i === len - 1) {
3949
- closerV = path.v[0];
3950
- } else {
3951
- closerV = path.v[i + 1];
3952
- }
3953
- distance = Math.sqrt(Math.pow(currentV[0] - closerV[0], 2) + Math.pow(currentV[1] - closerV[1], 2));
3954
- newPosPerc = distance ? Math.min(distance / 2, round) / distance : 0;
3955
- vX = oX = currentV[0] + (closerV[0] - currentV[0]) * newPosPerc;
3956
- vY = oY = currentV[1] + (closerV[1] - currentV[1]) * newPosPerc;
3957
- iX = vX - (vX - currentV[0]) * roundCorner;
3958
- iY = vY - (vY - currentV[1]) * roundCorner;
3959
- cloned_path.setTripleAt(vX, vY, oX, oY, iX, iY, index);
3960
- index += 1;
3961
- }
3962
- } else {
3963
- cloned_path.setTripleAt(path.v[i][0], path.v[i][1], path.o[i][0], path.o[i][1], path.i[i][0], path.i[i][1], index);
3964
- index += 1;
3965
- }
3966
- }
3967
- return cloned_path;
3968
- };
3969
-
3970
- RoundCornersModifier.prototype.processShapes = function (_isFirstFrame) {
3971
- var shapePaths;
3972
- var i, len = this.shapes.length;
3973
- var j, jLen;
3974
- var rd = this.rd.v;
3975
-
3976
- if (rd !== 0) {
3977
- var shapeData, newPaths, localShapeCollection;
3978
- for (i = 0; i < len; i += 1) {
3979
- shapeData = this.shapes[i];
3980
- newPaths = shapeData.shape.paths;
3981
- localShapeCollection = shapeData.localShapeCollection;
3982
- if (!(!shapeData.shape._mdf && !this._mdf && !_isFirstFrame)) {
3983
- localShapeCollection.releaseShapes();
3984
- shapeData.shape._mdf = true;
3985
- shapePaths = shapeData.shape.paths.shapes;
3986
- jLen = shapeData.shape.paths._length;
3987
- for (j = 0; j < jLen; j += 1) {
3988
- localShapeCollection.addShape(this.processPath(shapePaths[j], rd));
3989
- }
3990
- }
3991
- shapeData.shape.paths = shapeData.localShapeCollection;
3992
- }
3993
-
3994
- }
3995
- if (!this.dynamicProperties.length) {
3996
- this._mdf = false;
3997
- }
3998
- };
3999
-
4000
- ShapeModifiers.registerModifier('rd', RoundCornersModifier);
4001
-
4002
- function RepeaterModifier() { }
4003
- extendPrototype([ShapeModifier], RepeaterModifier);
4004
-
4005
- RepeaterModifier.prototype.initModifierProperties = function (elem, data) {
4006
- this.getValue = this.processKeys;
4007
- this.c = PropertyFactory.getProp(elem, data.c, 0, null, this);
4008
- this.o = PropertyFactory.getProp(elem, data.o, 0, null, this);
4009
- this.tr = TransformPropertyFactory.getTransformProperty(elem, data.tr, this);
4010
- this.so = PropertyFactory.getProp(elem, data.tr.so, 0, 0.01, this);
4011
- this.eo = PropertyFactory.getProp(elem, data.tr.eo, 0, 0.01, this);
4012
- this.data = data;
4013
- if (!this.dynamicProperties.length) {
4014
- this.getValue(true);
4015
- }
4016
- this._isAnimated = !!this.dynamicProperties.length;
4017
- this.pMatrix = new Matrix();
4018
- this.rMatrix = new Matrix();
4019
- this.sMatrix = new Matrix();
4020
- this.tMatrix = new Matrix();
4021
- this.matrix = new Matrix();
4022
- };
4023
-
4024
- RepeaterModifier.prototype.applyTransforms = function (pMatrix, rMatrix, sMatrix, transform, perc, inv) {
4025
- var dir = inv ? -1 : 1;
4026
- var scaleX = transform.s.v[0] + (1 - transform.s.v[0]) * (1 - perc);
4027
- var scaleY = transform.s.v[1] + (1 - transform.s.v[1]) * (1 - perc);
4028
- pMatrix.translate(transform.p.v[0] * dir * perc, transform.p.v[1] * dir * perc, transform.p.v[2]);
4029
- rMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);
4030
- rMatrix.rotate(-transform.r.v * dir * perc);
4031
- rMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);
4032
- sMatrix.translate(-transform.a.v[0], -transform.a.v[1], transform.a.v[2]);
4033
- sMatrix.scale(inv ? 1 / scaleX : scaleX, inv ? 1 / scaleY : scaleY);
4034
- sMatrix.translate(transform.a.v[0], transform.a.v[1], transform.a.v[2]);
4035
- };
4036
-
4037
- RepeaterModifier.prototype.init = function (elem, arr, pos, elemsData) {
4038
- this.elem = elem;
4039
- this.arr = arr;
4040
- this.pos = pos;
4041
- this.elemsData = elemsData;
4042
- this._currentCopies = 0;
4043
- this._elements = [];
4044
- this._groups = [];
4045
- this.frameId = -1;
4046
- this.initDynamicPropertyContainer(elem);
4047
- this.initModifierProperties(elem, arr[pos]);
4048
- var cont = 0;
4049
- while (pos > 0) {
4050
- pos -= 1;
4051
- //this._elements.unshift(arr.splice(pos,1)[0]);
4052
- this._elements.unshift(arr[pos]);
4053
- cont += 1;
4054
- }
4055
- if (this.dynamicProperties.length) {
4056
- this.k = true;
4057
- } else {
4058
- this.getValue(true);
4059
- }
4060
- };
4061
-
4062
- RepeaterModifier.prototype.resetElements = function (elements) {
4063
- var i, len = elements.length;
4064
- for (i = 0; i < len; i += 1) {
4065
- elements[i]._processed = false;
4066
- if (elements[i].ty === 'gr') {
4067
- this.resetElements(elements[i].it);
4068
- }
4069
- }
4070
- };
4071
-
4072
- RepeaterModifier.prototype.cloneElements = function (elements) {
4073
- var i, len = elements.length;
4074
- var newElements = JSON.parse(JSON.stringify(elements));
4075
- this.resetElements(newElements);
4076
- return newElements;
4077
- };
4078
-
4079
- RepeaterModifier.prototype.changeGroupRender = function (elements, renderFlag) {
4080
- var i, len = elements.length;
4081
- for (i = 0; i < len; i += 1) {
4082
- elements[i]._render = renderFlag;
4083
- if (elements[i].ty === 'gr') {
4084
- this.changeGroupRender(elements[i].it, renderFlag);
4085
- }
4086
- }
4087
- };
4088
-
4089
- RepeaterModifier.prototype.processShapes = function (_isFirstFrame) {
4090
- var items, itemsTransform, i, dir, cont;
4091
- if (this._mdf || _isFirstFrame) {
4092
- var copies = Math.ceil(this.c.v);
4093
- if (this._groups.length < copies) {
4094
- while (this._groups.length < copies) {
4095
- var group = {
4096
- it: this.cloneElements(this._elements),
4097
- ty: 'gr'
4098
- };
4099
- group.it.push({
4100
- "a": {
4101
- "a": 0,
4102
- "ix": 1,
4103
- "k": [0, 0]
4104
- },
4105
- "nm": "Transform",
4106
- "o": {
4107
- "a": 0,
4108
- "ix": 7,
4109
- "k": 100
4110
- },
4111
- "p": {
4112
- "a": 0,
4113
- "ix": 2,
4114
- "k": [0, 0]
4115
- },
4116
- "r": {
4117
- "a": 1,
4118
- "ix": 6,
4119
- "k": [{
4120
- s: 0,
4121
- e: 0,
4122
- t: 0
4123
- }, {
4124
- s: 0,
4125
- e: 0,
4126
- t: 1
4127
- }]
4128
- },
4129
- "s": {
4130
- "a": 0,
4131
- "ix": 3,
4132
- "k": [100, 100]
4133
- },
4134
- "sa": {
4135
- "a": 0,
4136
- "ix": 5,
4137
- "k": 0
4138
- },
4139
- "sk": {
4140
- "a": 0,
4141
- "ix": 4,
4142
- "k": 0
4143
- },
4144
- "ty": "tr"
4145
- });
4146
-
4147
- this.arr.splice(0, 0, group);
4148
- this._groups.splice(0, 0, group);
4149
- this._currentCopies += 1;
4150
- }
4151
- this.elem.reloadShapes();
4152
- }
4153
- cont = 0;
4154
- var renderFlag;
4155
- for (i = 0; i <= this._groups.length - 1; i += 1) {
4156
- renderFlag = cont < copies;
4157
- this._groups[i]._render = renderFlag;
4158
- this.changeGroupRender(this._groups[i].it, renderFlag);
4159
- cont += 1;
4160
- }
4161
-
4162
- this._currentCopies = copies;
4163
- ////
4164
-
4165
- var offset = this.o.v;
4166
- var offsetModulo = offset % 1;
4167
- var roundOffset = offset > 0 ? Math.floor(offset) : Math.ceil(offset);
4168
- var k;
4169
- var tMat = this.tr.v.props;
4170
- var pProps = this.pMatrix.props;
4171
- var rProps = this.rMatrix.props;
4172
- var sProps = this.sMatrix.props;
4173
- this.pMatrix.reset();
4174
- this.rMatrix.reset();
4175
- this.sMatrix.reset();
4176
- this.tMatrix.reset();
4177
- this.matrix.reset();
4178
- var iteration = 0;
4179
-
4180
- if (offset > 0) {
4181
- while (iteration < roundOffset) {
4182
- this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, false);
4183
- iteration += 1;
4184
- }
4185
- if (offsetModulo) {
4186
- this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, offsetModulo, false);
4187
- iteration += offsetModulo;
4188
- }
4189
- } else if (offset < 0) {
4190
- while (iteration > roundOffset) {
4191
- this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, true);
4192
- iteration -= 1;
4193
- }
4194
- if (offsetModulo) {
4195
- this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, -offsetModulo, true);
4196
- iteration -= offsetModulo;
4197
- }
4198
- }
4199
- i = this.data.m === 1 ? 0 : this._currentCopies - 1;
4200
- dir = this.data.m === 1 ? 1 : -1;
4201
- cont = this._currentCopies;
4202
- var j, jLen;
4203
- while (cont) {
4204
- items = this.elemsData[i].it;
4205
- itemsTransform = items[items.length - 1].transform.mProps.v.props;
4206
- jLen = itemsTransform.length;
4207
- items[items.length - 1].transform.mProps._mdf = true;
4208
- items[items.length - 1].transform.op._mdf = true;
4209
- items[items.length - 1].transform.op.v = this.so.v + (this.eo.v - this.so.v) * (i / (this._currentCopies - 1));
4210
- if (iteration !== 0) {
4211
- if ((i !== 0 && dir === 1) || (i !== this._currentCopies - 1 && dir === -1)) {
4212
- this.applyTransforms(this.pMatrix, this.rMatrix, this.sMatrix, this.tr, 1, false);
4213
- }
4214
- this.matrix.transform(rProps[0], rProps[1], rProps[2], rProps[3], rProps[4], rProps[5], rProps[6], rProps[7], rProps[8], rProps[9], rProps[10], rProps[11], rProps[12], rProps[13], rProps[14], rProps[15]);
4215
- this.matrix.transform(sProps[0], sProps[1], sProps[2], sProps[3], sProps[4], sProps[5], sProps[6], sProps[7], sProps[8], sProps[9], sProps[10], sProps[11], sProps[12], sProps[13], sProps[14], sProps[15]);
4216
- this.matrix.transform(pProps[0], pProps[1], pProps[2], pProps[3], pProps[4], pProps[5], pProps[6], pProps[7], pProps[8], pProps[9], pProps[10], pProps[11], pProps[12], pProps[13], pProps[14], pProps[15]);
4217
-
4218
- for (j = 0; j < jLen; j += 1) {
4219
- itemsTransform[j] = this.matrix.props[j];
4220
- }
4221
- this.matrix.reset();
4222
- } else {
4223
- this.matrix.reset();
4224
- for (j = 0; j < jLen; j += 1) {
4225
- itemsTransform[j] = this.matrix.props[j];
4226
- }
4227
- }
4228
- iteration += 1;
4229
- cont -= 1;
4230
- i += dir;
4231
- }
4232
- } else {
4233
- cont = this._currentCopies;
4234
- i = 0;
4235
- dir = 1;
4236
- while (cont) {
4237
- items = this.elemsData[i].it;
4238
- itemsTransform = items[items.length - 1].transform.mProps.v.props;
4239
- items[items.length - 1].transform.mProps._mdf = false;
4240
- items[items.length - 1].transform.op._mdf = false;
4241
- cont -= 1;
4242
- i += dir;
4243
- }
4244
- }
4245
- };
4246
-
4247
- RepeaterModifier.prototype.addShape = function () { };
4248
-
4249
- ShapeModifiers.registerModifier('rp', RepeaterModifier);
4250
-
4251
- function ShapeCollection() {
4252
- this._length = 0;
4253
- this._maxLength = 4;
4254
- this.shapes = createSizedArray(this._maxLength);
4255
- }
4256
-
4257
- ShapeCollection.prototype.addShape = function (shapeData) {
4258
- if (this._length === this._maxLength) {
4259
- this.shapes = this.shapes.concat(createSizedArray(this._maxLength));
4260
- this._maxLength *= 2;
4261
- }
4262
- this.shapes[this._length] = shapeData;
4263
- this._length += 1;
4264
- };
4265
-
4266
- ShapeCollection.prototype.releaseShapes = function () {
4267
- var i;
4268
- for (i = 0; i < this._length; i += 1) {
4269
- shape_pool.release(this.shapes[i]);
4270
- }
4271
- this._length = 0;
4272
- };
4273
-
4274
- function DashProperty(elem, data, renderer, container) {
4275
- this.elem = elem;
4276
- this.frameId = -1;
4277
- this.dataProps = createSizedArray(data.length);
4278
- this.renderer = renderer;
4279
- this.k = false;
4280
- this.dashStr = '';
4281
- this.dashArray = createTypedArray('float32', data.length ? data.length - 1 : 0);
4282
- this.dashoffset = createTypedArray('float32', 1);
4283
- this.initDynamicPropertyContainer(container);
4284
- var i, len = data.length || 0,
4285
- prop;
4286
- for (i = 0; i < len; i += 1) {
4287
- prop = PropertyFactory.getProp(elem, data[i].v, 0, 0, this);
4288
- this.k = prop.k || this.k;
4289
- this.dataProps[i] = {
4290
- n: data[i].n,
4291
- p: prop
4292
- };
4293
- }
4294
- if (!this.k) {
4295
- this.getValue(true);
4296
- }
4297
- this._isAnimated = this.k;
4298
- }
4299
-
4300
- DashProperty.prototype.getValue = function (forceRender) {
4301
- if (this.elem.globalData.frameId === this.frameId && !forceRender) {
4302
- return;
4303
- }
4304
- this.frameId = this.elem.globalData.frameId;
4305
- this.iterateDynamicProperties();
4306
- this._mdf = this._mdf || forceRender;
4307
- if (this._mdf) {
4308
- var i = 0,
4309
- len = this.dataProps.length;
4310
- if (this.renderer === 'svg') {
4311
- this.dashStr = '';
4312
- }
4313
- for (i = 0; i < len; i += 1) {
4314
- if (this.dataProps[i].n != 'o') {
4315
- if (this.renderer === 'svg') {
4316
- this.dashStr += ' ' + this.dataProps[i].p.v;
4317
- } else {
4318
- this.dashArray[i] = this.dataProps[i].p.v;
4319
- }
4320
- } else {
4321
- this.dashoffset[0] = this.dataProps[i].p.v;
4322
- }
4323
- }
4324
- }
4325
- };
4326
- extendPrototype([DynamicPropertyContainer], DashProperty);
4327
-
4328
- function GradientProperty(elem, data, container) {
4329
- this.data = data;
4330
- this.c = createTypedArray('uint8c', data.p * 4);
4331
- var cLength = data.k.k[0].s ? (data.k.k[0].s.length - data.p * 4) : data.k.k.length - data.p * 4;
4332
- this.o = createTypedArray('float32', cLength);
4333
- this._cmdf = false;
4334
- this._omdf = false;
4335
- this._collapsable = this.checkCollapsable();
4336
- this._hasOpacity = cLength;
4337
- this.initDynamicPropertyContainer(container);
4338
- this.prop = PropertyFactory.getProp(elem, data.k, 1, null, this);
4339
- this.k = this.prop.k;
4340
- this.getValue(true);
4341
- }
4342
-
4343
- GradientProperty.prototype.comparePoints = function (values, points) {
4344
- var i = 0,
4345
- len = this.o.length / 2,
4346
- diff;
4347
- while (i < len) {
4348
- diff = Math.abs(values[i * 4] - values[points * 4 + i * 2]);
4349
- if (diff > 0.01) {
4350
- return false;
4351
- }
4352
- i += 1;
4353
- }
4354
- return true;
4355
- };
4356
-
4357
- GradientProperty.prototype.checkCollapsable = function () {
4358
- if (this.o.length / 2 !== this.c.length / 4) {
4359
- return false;
4360
- }
4361
- if (this.data.k.k[0].s) {
4362
- var i = 0,
4363
- len = this.data.k.k.length;
4364
- while (i < len) {
4365
- if (!this.comparePoints(this.data.k.k[i].s, this.data.p)) {
4366
- return false;
4367
- }
4368
- i += 1;
4369
- }
4370
- } else if (!this.comparePoints(this.data.k.k, this.data.p)) {
4371
- return false;
4372
- }
4373
- return true;
4374
- };
4375
-
4376
- GradientProperty.prototype.getValue = function (forceRender) {
4377
- this.prop.getValue();
4378
- this._mdf = false;
4379
- this._cmdf = false;
4380
- this._omdf = false;
4381
- if (this.prop._mdf || forceRender) {
4382
- var i, len = this.data.p * 4;
4383
- var mult, val;
4384
- for (i = 0; i < len; i += 1) {
4385
- mult = i % 4 === 0 ? 100 : 255;
4386
- val = Math.round(this.prop.v[i] * mult);
4387
- if (this.c[i] !== val) {
4388
- this.c[i] = val;
4389
- this._cmdf = !forceRender;
4390
- }
4391
- }
4392
- if (this.o.length) {
4393
- len = this.prop.v.length;
4394
- for (i = this.data.p * 4; i < len; i += 1) {
4395
- mult = i % 2 === 0 ? 100 : 1;
4396
- val = i % 2 === 0 ? Math.round(this.prop.v[i] * 100) : this.prop.v[i];
4397
- if (this.o[i - this.data.p * 4] !== val) {
4398
- this.o[i - this.data.p * 4] = val;
4399
- this._omdf = !forceRender;
4400
- }
4401
- }
4402
- }
4403
- this._mdf = !forceRender;
4404
- }
4405
- };
4406
-
4407
- extendPrototype([DynamicPropertyContainer], GradientProperty);
4408
- var buildShapeString = function (pathNodes, length, closed, mat) {
4409
- if (length === 0) {
4410
- return '';
4411
- }
4412
- var _o = pathNodes.o;
4413
- var _i = pathNodes.i;
4414
- var _v = pathNodes.v;
4415
- var i, shapeString = " M" + mat.applyToPointStringified(_v[0][0], _v[0][1]);
4416
- for (i = 1; i < length; i += 1) {
4417
- shapeString += " C" + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + " " + mat.applyToPointStringified(_i[i][0], _i[i][1]) + " " + mat.applyToPointStringified(_v[i][0], _v[i][1]);
4418
- }
4419
- if (closed && length) {
4420
- shapeString += " C" + mat.applyToPointStringified(_o[i - 1][0], _o[i - 1][1]) + " " + mat.applyToPointStringified(_i[0][0], _i[0][1]) + " " + mat.applyToPointStringified(_v[0][0], _v[0][1]);
4421
- shapeString += 'z';
4422
- }
4423
- return shapeString;
4424
- }
4425
- var ImagePreloader = (function () {
4426
-
4427
- var proxyImage = (function () {
4428
- var canvas = createTag('canvas');
4429
- canvas.width = 1;
4430
- canvas.height = 1;
4431
- var ctx = canvas.getContext('2d');
4432
- ctx.fillStyle = 'rgba(0,0,0,0)';
4433
- ctx.fillRect(0, 0, 1, 1);
4434
- return canvas;
4435
- }())
4436
-
4437
- function imageLoaded() {
4438
- this.loadedAssets += 1;
4439
- if (this.loadedAssets === this.totalImages) {
4440
- if (this.imagesLoadedCb) {
4441
- this.imagesLoadedCb(null);
4442
- }
4443
- }
4444
- }
4445
-
4446
- function getAssetsPath(assetData, assetsPath, original_path) {
4447
- var path = '';
4448
- if (assetData.e) {
4449
- path = assetData.p;
4450
- } else if (assetsPath) {
4451
- var imagePath = assetData.p;
4452
- if (imagePath.indexOf('images/') !== -1) {
4453
- imagePath = imagePath.split('/')[1];
4454
- }
4455
- path = assetsPath + imagePath;
4456
- } else {
4457
- path = original_path;
4458
- path += assetData.u ? assetData.u : '';
4459
- path += assetData.p;
4460
- }
4461
- return path;
4462
- }
4463
-
4464
- function createImageData(assetData) {
4465
- var path = getAssetsPath(assetData, this.assetsPath, this.path);
4466
- var img = createTag('img');
4467
- img.crossOrigin = 'anonymous';
4468
- img.addEventListener('load', this._imageLoaded.bind(this), false);
4469
- img.addEventListener('error', function () {
4470
- ob.img = proxyImage;
4471
- this._imageLoaded();
4472
- }.bind(this), false);
4473
- img.src = path;
4474
- var ob = {
4475
- img: img,
4476
- assetData: assetData
4477
- }
4478
- return ob;
4479
- }
4480
-
4481
- function loadAssets(assets, cb) {
4482
- this.imagesLoadedCb = cb;
4483
- var i, len = assets.length;
4484
- for (i = 0; i < len; i += 1) {
4485
- if (!assets[i].layers) {
4486
- this.totalImages += 1;
4487
- this.images.push(this._createImageData(assets[i]));
4488
- }
4489
- }
4490
- }
4491
-
4492
- function setPath(path) {
4493
- this.path = path || '';
4494
- }
4495
-
4496
- function setAssetsPath(path) {
4497
- this.assetsPath = path || '';
4498
- }
4499
-
4500
- function getImage(assetData) {
4501
- var i = 0,
4502
- len = this.images.length;
4503
- while (i < len) {
4504
- if (this.images[i].assetData === assetData) {
4505
- return this.images[i].img;
4506
- }
4507
- i += 1;
4508
- }
4509
- }
4510
-
4511
- function destroy() {
4512
- this.imagesLoadedCb = null;
4513
- this.images.length = 0;
4514
- }
4515
-
4516
- function loaded() {
4517
- return this.totalImages === this.loadedAssets;
4518
- }
4519
-
4520
- return function ImagePreloader() {
4521
- this.loadAssets = loadAssets;
4522
- this.setAssetsPath = setAssetsPath;
4523
- this.setPath = setPath;
4524
- this.loaded = loaded;
4525
- this.destroy = destroy;
4526
- this.getImage = getImage;
4527
- this._createImageData = createImageData;
4528
- this._imageLoaded = imageLoaded;
4529
- this.assetsPath = '';
4530
- this.path = '';
4531
- this.totalImages = 0;
4532
- this.loadedAssets = 0;
4533
- this.imagesLoadedCb = null;
4534
- this.images = [];
4535
- };
4536
- }());
4537
- var featureSupport = (function () {
4538
- var ob = {
4539
- maskType: true
4540
- };
4541
- if (/MSIE 10/i.test(navigator.userAgent) || /MSIE 9/i.test(navigator.userAgent) || /rv:11.0/i.test(navigator.userAgent) || /Edge\/\d./i.test(navigator.userAgent)) {
4542
- ob.maskType = false;
4543
- }
4544
- return ob;
4545
- }());
4546
- var filtersFactory = (function () {
4547
- var ob = {};
4548
- ob.createFilter = createFilter;
4549
- ob.createAlphaToLuminanceFilter = createAlphaToLuminanceFilter;
4550
-
4551
- function createFilter(filId) {
4552
- var fil = createNS('filter');
4553
- fil.setAttribute('id', filId);
4554
- fil.setAttribute('filterUnits', 'objectBoundingBox');
4555
- fil.setAttribute('x', '0%');
4556
- fil.setAttribute('y', '0%');
4557
- fil.setAttribute('width', '100%');
4558
- fil.setAttribute('height', '100%');
4559
- return fil;
4560
- }
4561
-
4562
- function createAlphaToLuminanceFilter() {
4563
- var feColorMatrix = createNS('feColorMatrix');
4564
- feColorMatrix.setAttribute('type', 'matrix');
4565
- feColorMatrix.setAttribute('color-interpolation-filters', 'sRGB');
4566
- feColorMatrix.setAttribute('values', '0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 1');
4567
- return feColorMatrix;
4568
- }
4569
-
4570
- return ob;
4571
- }());
4572
- var assetLoader = (function () {
4573
-
4574
- function formatResponse(xhr) {
4575
- if (xhr.response && typeof xhr.response === 'object') {
4576
- return xhr.response;
4577
- } else if (xhr.response && typeof xhr.response === 'string') {
4578
- return JSON.parse(xhr.response);
4579
- } else if (xhr.responseText) {
4580
- return JSON.parse(xhr.responseText);
4581
- }
4582
- }
4583
-
4584
- function loadAsset(path, callback, errorCallback) {
4585
- var response;
4586
- var xhr = new XMLHttpRequest();
4587
- xhr.open('GET', path, true);
4588
- // set responseType after calling open or IE will break.
4589
- try {
4590
- // This crashes on Android WebView prior to KitKat
4591
- xhr.responseType = "json";
4592
- } catch (err) { }
4593
- xhr.send();
4594
- xhr.onreadystatechange = function () {
4595
- if (xhr.readyState == 4) {
4596
- if (xhr.status == 200) {
4597
- response = formatResponse(xhr);
4598
- callback(response);
4599
- } else {
4600
- try {
4601
- response = formatResponse(xhr);
4602
- callback(response);
4603
- } catch (err) {
4604
- if (errorCallback) {
4605
- errorCallback(err);
4606
- }
4607
- }
4608
- }
4609
- }
4610
- };
4611
- }
4612
- return {
4613
- load: loadAsset
4614
- }
4615
- }())
4616
-
4617
- function TextAnimatorProperty(textData, renderType, elem) {
4618
- this._isFirstFrame = true;
4619
- this._hasMaskedPath = false;
4620
- this._frameId = -1;
4621
- this._textData = textData;
4622
- this._renderType = renderType;
4623
- this._elem = elem;
4624
- this._animatorsData = createSizedArray(this._textData.a.length);
4625
- this._pathData = {};
4626
- this._moreOptions = {
4627
- alignment: {}
4628
- };
4629
- this.renderedLetters = [];
4630
- this.lettersChangedFlag = false;
4631
- this.initDynamicPropertyContainer(elem);
4632
-
4633
- }
4634
-
4635
- TextAnimatorProperty.prototype.searchProperties = function () {
4636
- var i, len = this._textData.a.length,
4637
- animatorProps;
4638
- var getProp = PropertyFactory.getProp;
4639
- for (i = 0; i < len; i += 1) {
4640
- animatorProps = this._textData.a[i];
4641
- this._animatorsData[i] = new TextAnimatorDataProperty(this._elem, animatorProps, this);
4642
- }
4643
- if (this._textData.p && 'm' in this._textData.p) {
4644
- this._pathData = {
4645
- f: getProp(this._elem, this._textData.p.f, 0, 0, this),
4646
- l: getProp(this._elem, this._textData.p.l, 0, 0, this),
4647
- r: this._textData.p.r,
4648
- m: this._elem.maskManager.getMaskProperty(this._textData.p.m)
4649
- };
4650
- this._hasMaskedPath = true;
4651
- } else {
4652
- this._hasMaskedPath = false;
4653
- }
4654
- this._moreOptions.alignment = getProp(this._elem, this._textData.m.a, 1, 0, this);
4655
- };
4656
-
4657
- TextAnimatorProperty.prototype.getMeasures = function (documentData, lettersChangedFlag) {
4658
- this.lettersChangedFlag = lettersChangedFlag;
4659
- if (!this._mdf && !this._isFirstFrame && !lettersChangedFlag && (!this._hasMaskedPath || !this._pathData.m._mdf)) {
4660
- return;
4661
- }
4662
- this._isFirstFrame = false;
4663
- var alignment = this._moreOptions.alignment.v;
4664
- var animators = this._animatorsData;
4665
- var textData = this._textData;
4666
- var matrixHelper = this.mHelper;
4667
- var renderType = this._renderType;
4668
- var renderedLettersCount = this.renderedLetters.length;
4669
- var data = this.data;
4670
- var xPos, yPos;
4671
- var i, len;
4672
- var letters = documentData.l,
4673
- pathInfo, currentLength, currentPoint, segmentLength, flag, pointInd, segmentInd, prevPoint, points, segments, partialLength, totalLength, perc, tanAngle, mask;
4674
- if (this._hasMaskedPath) {
4675
- mask = this._pathData.m;
4676
- if (!this._pathData.n || this._pathData._mdf) {
4677
- var paths = mask.v;
4678
- if (this._pathData.r) {
4679
- paths = paths.reverse();
4680
- }
4681
- // TODO: release bezier data cached from previous pathInfo: this._pathData.pi
4682
- pathInfo = {
4683
- tLength: 0,
4684
- segments: []
4685
- };
4686
- len = paths._length - 1;
4687
- var bezierData;
4688
- totalLength = 0;
4689
- for (i = 0; i < len; i += 1) {
4690
- bezierData = bez.buildBezierData(paths.v[i], paths.v[i + 1], [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]], [paths.i[i + 1][0] - paths.v[i + 1][0], paths.i[i + 1][1] - paths.v[i + 1][1]]);
4691
- pathInfo.tLength += bezierData.segmentLength;
4692
- pathInfo.segments.push(bezierData);
4693
- totalLength += bezierData.segmentLength;
4694
- }
4695
- i = len;
4696
- if (mask.v.c) {
4697
- bezierData = bez.buildBezierData(paths.v[i], paths.v[0], [paths.o[i][0] - paths.v[i][0], paths.o[i][1] - paths.v[i][1]], [paths.i[0][0] - paths.v[0][0], paths.i[0][1] - paths.v[0][1]]);
4698
- pathInfo.tLength += bezierData.segmentLength;
4699
- pathInfo.segments.push(bezierData);
4700
- totalLength += bezierData.segmentLength;
4701
- }
4702
- this._pathData.pi = pathInfo;
4703
- }
4704
- pathInfo = this._pathData.pi;
4705
-
4706
- currentLength = this._pathData.f.v;
4707
- segmentInd = 0;
4708
- pointInd = 1;
4709
- segmentLength = 0;
4710
- flag = true;
4711
- segments = pathInfo.segments;
4712
- if (currentLength < 0 && mask.v.c) {
4713
- if (pathInfo.tLength < Math.abs(currentLength)) {
4714
- currentLength = -Math.abs(currentLength) % pathInfo.tLength;
4715
- }
4716
- segmentInd = segments.length - 1;
4717
- points = segments[segmentInd].points;
4718
- pointInd = points.length - 1;
4719
- while (currentLength < 0) {
4720
- currentLength += points[pointInd].partialLength;
4721
- pointInd -= 1;
4722
- if (pointInd < 0) {
4723
- segmentInd -= 1;
4724
- points = segments[segmentInd].points;
4725
- pointInd = points.length - 1;
4726
- }
4727
- }
4728
-
4729
- }
4730
- points = segments[segmentInd].points;
4731
- prevPoint = points[pointInd - 1];
4732
- currentPoint = points[pointInd];
4733
- partialLength = currentPoint.partialLength;
4734
- }
4735
-
4736
-
4737
- len = letters.length;
4738
- xPos = 0;
4739
- yPos = 0;
4740
- var yOff = documentData.finalSize * 1.2 * 0.714;
4741
- var firstLine = true;
4742
- var animatorProps, animatorSelector;
4743
- var j, jLen;
4744
- var letterValue;
4745
-
4746
- jLen = animators.length;
4747
- var lastLetter;
4748
-
4749
- var mult, ind = -1,
4750
- offf, xPathPos, yPathPos;
4751
- var initPathPos = currentLength,
4752
- initSegmentInd = segmentInd,
4753
- initPointInd = pointInd,
4754
- currentLine = -1;
4755
- var elemOpacity;
4756
- var sc, sw, fc, k;
4757
- var lineLength = 0;
4758
- var letterSw, letterSc, letterFc, letterM = '',
4759
- letterP = this.defaultPropsArray,
4760
- letterO;
4761
-
4762
- //
4763
- if (documentData.j === 2 || documentData.j === 1) {
4764
- var animatorJustifyOffset = 0;
4765
- var animatorFirstCharOffset = 0;
4766
- var justifyOffsetMult = documentData.j === 2 ? -0.5 : -1;
4767
- var lastIndex = 0;
4768
- var isNewLine = true;
4769
-
4770
- for (i = 0; i < len; i += 1) {
4771
- if (letters[i].n) {
4772
- if (animatorJustifyOffset) {
4773
- animatorJustifyOffset += animatorFirstCharOffset;
4774
- }
4775
- while (lastIndex < i) {
4776
- letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;
4777
- lastIndex += 1;
4778
- }
4779
- animatorJustifyOffset = 0;
4780
- isNewLine = true;
4781
- } else {
4782
- for (j = 0; j < jLen; j += 1) {
4783
- animatorProps = animators[j].a;
4784
- if (animatorProps.t.propType) {
4785
- if (isNewLine && documentData.j === 2) {
4786
- animatorFirstCharOffset += animatorProps.t.v * justifyOffsetMult;
4787
- }
4788
- animatorSelector = animators[j].s;
4789
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4790
- if (mult.length) {
4791
- animatorJustifyOffset += animatorProps.t.v * mult[0] * justifyOffsetMult;
4792
- } else {
4793
- animatorJustifyOffset += animatorProps.t.v * mult * justifyOffsetMult;
4794
- }
4795
- }
4796
- }
4797
- isNewLine = false;
4798
- }
4799
- }
4800
- if (animatorJustifyOffset) {
4801
- animatorJustifyOffset += animatorFirstCharOffset;
4802
- }
4803
- while (lastIndex < i) {
4804
- letters[lastIndex].animatorJustifyOffset = animatorJustifyOffset;
4805
- lastIndex += 1;
4806
- }
4807
- }
4808
- //
4809
-
4810
- for (i = 0; i < len; i += 1) {
4811
-
4812
- matrixHelper.reset();
4813
- elemOpacity = 1;
4814
- if (letters[i].n) {
4815
- xPos = 0;
4816
- yPos += documentData.yOffset;
4817
- yPos += firstLine ? 1 : 0;
4818
- currentLength = initPathPos;
4819
- firstLine = false;
4820
- lineLength = 0;
4821
- if (this._hasMaskedPath) {
4822
- segmentInd = initSegmentInd;
4823
- pointInd = initPointInd;
4824
- points = segments[segmentInd].points;
4825
- prevPoint = points[pointInd - 1];
4826
- currentPoint = points[pointInd];
4827
- partialLength = currentPoint.partialLength;
4828
- segmentLength = 0;
4829
- }
4830
- letterO = letterSw = letterFc = letterM = '';
4831
- letterP = this.defaultPropsArray;
4832
- } else {
4833
- if (this._hasMaskedPath) {
4834
- if (currentLine !== letters[i].line) {
4835
- switch (documentData.j) {
4836
- case 1:
4837
- currentLength += totalLength - documentData.lineWidths[letters[i].line];
4838
- break;
4839
- case 2:
4840
- currentLength += (totalLength - documentData.lineWidths[letters[i].line]) / 2;
4841
- break;
4842
- }
4843
- currentLine = letters[i].line;
4844
- }
4845
- if (ind !== letters[i].ind) {
4846
- if (letters[ind]) {
4847
- currentLength += letters[ind].extra;
4848
- }
4849
- currentLength += letters[i].an / 2;
4850
- ind = letters[i].ind;
4851
- }
4852
- currentLength += alignment[0] * letters[i].an / 200;
4853
- var animatorOffset = 0;
4854
- for (j = 0; j < jLen; j += 1) {
4855
- animatorProps = animators[j].a;
4856
- if (animatorProps.p.propType) {
4857
- animatorSelector = animators[j].s;
4858
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4859
- if (mult.length) {
4860
- animatorOffset += animatorProps.p.v[0] * mult[0];
4861
- } else {
4862
- animatorOffset += animatorProps.p.v[0] * mult;
4863
- }
4864
-
4865
- }
4866
- if (animatorProps.a.propType) {
4867
- animatorSelector = animators[j].s;
4868
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4869
- if (mult.length) {
4870
- animatorOffset += animatorProps.a.v[0] * mult[0];
4871
- } else {
4872
- animatorOffset += animatorProps.a.v[0] * mult;
4873
- }
4874
-
4875
- }
4876
- }
4877
- flag = true;
4878
- while (flag) {
4879
- if (segmentLength + partialLength >= currentLength + animatorOffset || !points) {
4880
- perc = (currentLength + animatorOffset - segmentLength) / currentPoint.partialLength;
4881
- xPathPos = prevPoint.point[0] + (currentPoint.point[0] - prevPoint.point[0]) * perc;
4882
- yPathPos = prevPoint.point[1] + (currentPoint.point[1] - prevPoint.point[1]) * perc;
4883
- matrixHelper.translate(-alignment[0] * letters[i].an / 200, -(alignment[1] * yOff / 100));
4884
- flag = false;
4885
- } else if (points) {
4886
- segmentLength += currentPoint.partialLength;
4887
- pointInd += 1;
4888
- if (pointInd >= points.length) {
4889
- pointInd = 0;
4890
- segmentInd += 1;
4891
- if (!segments[segmentInd]) {
4892
- if (mask.v.c) {
4893
- pointInd = 0;
4894
- segmentInd = 0;
4895
- points = segments[segmentInd].points;
4896
- } else {
4897
- segmentLength -= currentPoint.partialLength;
4898
- points = null;
4899
- }
4900
- } else {
4901
- points = segments[segmentInd].points;
4902
- }
4903
- }
4904
- if (points) {
4905
- prevPoint = currentPoint;
4906
- currentPoint = points[pointInd];
4907
- partialLength = currentPoint.partialLength;
4908
- }
4909
- }
4910
- }
4911
- offf = letters[i].an / 2 - letters[i].add;
4912
- matrixHelper.translate(-offf, 0, 0);
4913
- } else {
4914
- offf = letters[i].an / 2 - letters[i].add;
4915
- matrixHelper.translate(-offf, 0, 0);
4916
-
4917
- // Grouping alignment
4918
- matrixHelper.translate(-alignment[0] * letters[i].an / 200, -alignment[1] * yOff / 100, 0);
4919
- }
4920
-
4921
- lineLength += letters[i].l / 2;
4922
- for (j = 0; j < jLen; j += 1) {
4923
- animatorProps = animators[j].a;
4924
- if (animatorProps.t.propType) {
4925
- animatorSelector = animators[j].s;
4926
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4927
- //This condition is to prevent applying tracking to first character in each line. Might be better to use a boolean "isNewLine"
4928
- if (xPos !== 0 || documentData.j !== 0) {
4929
- if (this._hasMaskedPath) {
4930
- if (mult.length) {
4931
- currentLength += animatorProps.t.v * mult[0];
4932
- } else {
4933
- currentLength += animatorProps.t.v * mult;
4934
- }
4935
- } else {
4936
- if (mult.length) {
4937
- xPos += animatorProps.t.v * mult[0];
4938
- } else {
4939
- xPos += animatorProps.t.v * mult;
4940
- }
4941
- }
4942
- }
4943
- }
4944
- }
4945
- lineLength += letters[i].l / 2;
4946
- if (documentData.strokeWidthAnim) {
4947
- sw = documentData.sw || 0;
4948
- }
4949
- if (documentData.strokeColorAnim) {
4950
- if (documentData.sc) {
4951
- sc = [documentData.sc[0], documentData.sc[1], documentData.sc[2]];
4952
- } else {
4953
- sc = [0, 0, 0];
4954
- }
4955
- }
4956
- if (documentData.fillColorAnim && documentData.fc) {
4957
- fc = [documentData.fc[0], documentData.fc[1], documentData.fc[2]];
4958
- }
4959
- for (j = 0; j < jLen; j += 1) {
4960
- animatorProps = animators[j].a;
4961
- if (animatorProps.a.propType) {
4962
- animatorSelector = animators[j].s;
4963
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4964
-
4965
- if (mult.length) {
4966
- matrixHelper.translate(-animatorProps.a.v[0] * mult[0], -animatorProps.a.v[1] * mult[1], animatorProps.a.v[2] * mult[2]);
4967
- } else {
4968
- matrixHelper.translate(-animatorProps.a.v[0] * mult, -animatorProps.a.v[1] * mult, animatorProps.a.v[2] * mult);
4969
- }
4970
- }
4971
- }
4972
- for (j = 0; j < jLen; j += 1) {
4973
- animatorProps = animators[j].a;
4974
- if (animatorProps.s.propType) {
4975
- animatorSelector = animators[j].s;
4976
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4977
- if (mult.length) {
4978
- matrixHelper.scale(1 + ((animatorProps.s.v[0] - 1) * mult[0]), 1 + ((animatorProps.s.v[1] - 1) * mult[1]), 1);
4979
- } else {
4980
- matrixHelper.scale(1 + ((animatorProps.s.v[0] - 1) * mult), 1 + ((animatorProps.s.v[1] - 1) * mult), 1);
4981
- }
4982
- }
4983
- }
4984
- for (j = 0; j < jLen; j += 1) {
4985
- animatorProps = animators[j].a;
4986
- animatorSelector = animators[j].s;
4987
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
4988
- if (animatorProps.sk.propType) {
4989
- if (mult.length) {
4990
- matrixHelper.skewFromAxis(-animatorProps.sk.v * mult[0], animatorProps.sa.v * mult[1]);
4991
- } else {
4992
- matrixHelper.skewFromAxis(-animatorProps.sk.v * mult, animatorProps.sa.v * mult);
4993
- }
4994
- }
4995
- if (animatorProps.r.propType) {
4996
- if (mult.length) {
4997
- matrixHelper.rotateZ(-animatorProps.r.v * mult[2]);
4998
- } else {
4999
- matrixHelper.rotateZ(-animatorProps.r.v * mult);
5000
- }
5001
- }
5002
- if (animatorProps.ry.propType) {
5003
-
5004
- if (mult.length) {
5005
- matrixHelper.rotateY(animatorProps.ry.v * mult[1]);
5006
- } else {
5007
- matrixHelper.rotateY(animatorProps.ry.v * mult);
5008
- }
5009
- }
5010
- if (animatorProps.rx.propType) {
5011
- if (mult.length) {
5012
- matrixHelper.rotateX(animatorProps.rx.v * mult[0]);
5013
- } else {
5014
- matrixHelper.rotateX(animatorProps.rx.v * mult);
5015
- }
5016
- }
5017
- if (animatorProps.o.propType) {
5018
- if (mult.length) {
5019
- elemOpacity += ((animatorProps.o.v) * mult[0] - elemOpacity) * mult[0];
5020
- } else {
5021
- elemOpacity += ((animatorProps.o.v) * mult - elemOpacity) * mult;
5022
- }
5023
- }
5024
- if (documentData.strokeWidthAnim && animatorProps.sw.propType) {
5025
- if (mult.length) {
5026
- sw += animatorProps.sw.v * mult[0];
5027
- } else {
5028
- sw += animatorProps.sw.v * mult;
5029
- }
5030
- }
5031
- if (documentData.strokeColorAnim && animatorProps.sc.propType) {
5032
- for (k = 0; k < 3; k += 1) {
5033
- if (mult.length) {
5034
- sc[k] = sc[k] + (animatorProps.sc.v[k] - sc[k]) * mult[0];
5035
- } else {
5036
- sc[k] = sc[k] + (animatorProps.sc.v[k] - sc[k]) * mult;
5037
- }
5038
- }
5039
- }
5040
- if (documentData.fillColorAnim && documentData.fc) {
5041
- if (animatorProps.fc.propType) {
5042
- for (k = 0; k < 3; k += 1) {
5043
- if (mult.length) {
5044
- fc[k] = fc[k] + (animatorProps.fc.v[k] - fc[k]) * mult[0];
5045
- } else {
5046
- fc[k] = fc[k] + (animatorProps.fc.v[k] - fc[k]) * mult;
5047
- }
5048
- }
5049
- }
5050
- if (animatorProps.fh.propType) {
5051
- if (mult.length) {
5052
- fc = addHueToRGB(fc, animatorProps.fh.v * mult[0]);
5053
- } else {
5054
- fc = addHueToRGB(fc, animatorProps.fh.v * mult);
5055
- }
5056
- }
5057
- if (animatorProps.fs.propType) {
5058
- if (mult.length) {
5059
- fc = addSaturationToRGB(fc, animatorProps.fs.v * mult[0]);
5060
- } else {
5061
- fc = addSaturationToRGB(fc, animatorProps.fs.v * mult);
5062
- }
5063
- }
5064
- if (animatorProps.fb.propType) {
5065
- if (mult.length) {
5066
- fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult[0]);
5067
- } else {
5068
- fc = addBrightnessToRGB(fc, animatorProps.fb.v * mult);
5069
- }
5070
- }
5071
- }
5072
- }
5073
-
5074
- for (j = 0; j < jLen; j += 1) {
5075
- animatorProps = animators[j].a;
5076
-
5077
- if (animatorProps.p.propType) {
5078
- animatorSelector = animators[j].s;
5079
- mult = animatorSelector.getMult(letters[i].anIndexes[j], textData.a[j].s.totalChars);
5080
- if (this._hasMaskedPath) {
5081
- if (mult.length) {
5082
- matrixHelper.translate(0, animatorProps.p.v[1] * mult[0], -animatorProps.p.v[2] * mult[1]);
5083
- } else {
5084
- matrixHelper.translate(0, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);
5085
- }
5086
- } else {
5087
- if (mult.length) {
5088
- matrixHelper.translate(animatorProps.p.v[0] * mult[0], animatorProps.p.v[1] * mult[1], -animatorProps.p.v[2] * mult[2]);
5089
- } else {
5090
- matrixHelper.translate(animatorProps.p.v[0] * mult, animatorProps.p.v[1] * mult, -animatorProps.p.v[2] * mult);
5091
-
5092
- }
5093
- }
5094
- }
5095
- }
5096
- if (documentData.strokeWidthAnim) {
5097
- letterSw = sw < 0 ? 0 : sw;
5098
- }
5099
- if (documentData.strokeColorAnim) {
5100
- letterSc = 'rgb(' + Math.round(sc[0] * 255) + ',' + Math.round(sc[1] * 255) + ',' + Math.round(sc[2] * 255) + ')';
5101
- }
5102
- if (documentData.fillColorAnim && documentData.fc) {
5103
- letterFc = 'rgb(' + Math.round(fc[0] * 255) + ',' + Math.round(fc[1] * 255) + ',' + Math.round(fc[2] * 255) + ')';
5104
- }
5105
-
5106
- if (this._hasMaskedPath) {
5107
- matrixHelper.translate(0, -documentData.ls);
5108
-
5109
- matrixHelper.translate(0, alignment[1] * yOff / 100 + yPos, 0);
5110
- if (textData.p.p) {
5111
- tanAngle = (currentPoint.point[1] - prevPoint.point[1]) / (currentPoint.point[0] - prevPoint.point[0]);
5112
- var rot = Math.atan(tanAngle) * 180 / Math.PI;
5113
- if (currentPoint.point[0] < prevPoint.point[0]) {
5114
- rot += 180;
5115
- }
5116
- matrixHelper.rotate(-rot * Math.PI / 180);
5117
- }
5118
- matrixHelper.translate(xPathPos, yPathPos, 0);
5119
- currentLength -= alignment[0] * letters[i].an / 200;
5120
- if (letters[i + 1] && ind !== letters[i + 1].ind) {
5121
- currentLength += letters[i].an / 2;
5122
- currentLength += documentData.tr / 1000 * documentData.finalSize;
5123
- }
5124
- } else {
5125
-
5126
- matrixHelper.translate(xPos, yPos, 0);
5127
-
5128
- if (documentData.ps) {
5129
- //matrixHelper.translate(documentData.ps[0],documentData.ps[1],0);
5130
- matrixHelper.translate(documentData.ps[0], documentData.ps[1] + documentData.ascent, 0);
5131
- }
5132
- switch (documentData.j) {
5133
- case 1:
5134
- matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]), 0, 0);
5135
- break;
5136
- case 2:
5137
- matrixHelper.translate(letters[i].animatorJustifyOffset + documentData.justifyOffset + (documentData.boxWidth - documentData.lineWidths[letters[i].line]) / 2, 0, 0);
5138
- break;
5139
- }
5140
- matrixHelper.translate(0, -documentData.ls);
5141
- matrixHelper.translate(offf, 0, 0);
5142
- matrixHelper.translate(alignment[0] * letters[i].an / 200, alignment[1] * yOff / 100, 0);
5143
- xPos += letters[i].l + documentData.tr / 1000 * documentData.finalSize;
5144
- }
5145
- if (renderType === 'html') {
5146
- letterM = matrixHelper.toCSS();
5147
- } else if (renderType === 'svg') {
5148
- letterM = matrixHelper.to2dCSS();
5149
- } else {
5150
- letterP = [matrixHelper.props[0], matrixHelper.props[1], matrixHelper.props[2], matrixHelper.props[3], matrixHelper.props[4], matrixHelper.props[5], matrixHelper.props[6], matrixHelper.props[7], matrixHelper.props[8], matrixHelper.props[9], matrixHelper.props[10], matrixHelper.props[11], matrixHelper.props[12], matrixHelper.props[13], matrixHelper.props[14], matrixHelper.props[15]];
5151
- }
5152
- letterO = elemOpacity;
5153
- }
5154
-
5155
- if (renderedLettersCount <= i) {
5156
- letterValue = new LetterProps(letterO, letterSw, letterSc, letterFc, letterM, letterP);
5157
- this.renderedLetters.push(letterValue);
5158
- renderedLettersCount += 1;
5159
- this.lettersChangedFlag = true;
5160
- } else {
5161
- letterValue = this.renderedLetters[i];
5162
- this.lettersChangedFlag = letterValue.update(letterO, letterSw, letterSc, letterFc, letterM, letterP) || this.lettersChangedFlag;
5163
- }
5164
- }
5165
- };
5166
-
5167
- TextAnimatorProperty.prototype.getValue = function () {
5168
- if (this._elem.globalData.frameId === this._frameId) {
5169
- return;
5170
- }
5171
- this._frameId = this._elem.globalData.frameId;
5172
- this.iterateDynamicProperties();
5173
- };
5174
-
5175
- TextAnimatorProperty.prototype.mHelper = new Matrix();
5176
- TextAnimatorProperty.prototype.defaultPropsArray = [];
5177
- extendPrototype([DynamicPropertyContainer], TextAnimatorProperty);
5178
-
5179
- function TextAnimatorDataProperty(elem, animatorProps, container) {
5180
- var defaultData = {
5181
- propType: false
5182
- };
5183
- var getProp = PropertyFactory.getProp;
5184
- var textAnimator_animatables = animatorProps.a;
5185
- this.a = {
5186
- r: textAnimator_animatables.r ? getProp(elem, textAnimator_animatables.r, 0, degToRads, container) : defaultData,
5187
- rx: textAnimator_animatables.rx ? getProp(elem, textAnimator_animatables.rx, 0, degToRads, container) : defaultData,
5188
- ry: textAnimator_animatables.ry ? getProp(elem, textAnimator_animatables.ry, 0, degToRads, container) : defaultData,
5189
- sk: textAnimator_animatables.sk ? getProp(elem, textAnimator_animatables.sk, 0, degToRads, container) : defaultData,
5190
- sa: textAnimator_animatables.sa ? getProp(elem, textAnimator_animatables.sa, 0, degToRads, container) : defaultData,
5191
- s: textAnimator_animatables.s ? getProp(elem, textAnimator_animatables.s, 1, 0.01, container) : defaultData,
5192
- a: textAnimator_animatables.a ? getProp(elem, textAnimator_animatables.a, 1, 0, container) : defaultData,
5193
- o: textAnimator_animatables.o ? getProp(elem, textAnimator_animatables.o, 0, 0.01, container) : defaultData,
5194
- p: textAnimator_animatables.p ? getProp(elem, textAnimator_animatables.p, 1, 0, container) : defaultData,
5195
- sw: textAnimator_animatables.sw ? getProp(elem, textAnimator_animatables.sw, 0, 0, container) : defaultData,
5196
- sc: textAnimator_animatables.sc ? getProp(elem, textAnimator_animatables.sc, 1, 0, container) : defaultData,
5197
- fc: textAnimator_animatables.fc ? getProp(elem, textAnimator_animatables.fc, 1, 0, container) : defaultData,
5198
- fh: textAnimator_animatables.fh ? getProp(elem, textAnimator_animatables.fh, 0, 0, container) : defaultData,
5199
- fs: textAnimator_animatables.fs ? getProp(elem, textAnimator_animatables.fs, 0, 0.01, container) : defaultData,
5200
- fb: textAnimator_animatables.fb ? getProp(elem, textAnimator_animatables.fb, 0, 0.01, container) : defaultData,
5201
- t: textAnimator_animatables.t ? getProp(elem, textAnimator_animatables.t, 0, 0, container) : defaultData
5202
- };
5203
-
5204
- this.s = TextSelectorProp.getTextSelectorProp(elem, animatorProps.s, container);
5205
- this.s.t = animatorProps.s.t;
5206
- }
5207
-
5208
- function LetterProps(o, sw, sc, fc, m, p) {
5209
- this.o = o;
5210
- this.sw = sw;
5211
- this.sc = sc;
5212
- this.fc = fc;
5213
- this.m = m;
5214
- this.p = p;
5215
- this._mdf = {
5216
- o: true,
5217
- sw: !!sw,
5218
- sc: !!sc,
5219
- fc: !!fc,
5220
- m: true,
5221
- p: true
5222
- };
5223
- }
5224
-
5225
- LetterProps.prototype.update = function (o, sw, sc, fc, m, p) {
5226
- this._mdf.o = false;
5227
- this._mdf.sw = false;
5228
- this._mdf.sc = false;
5229
- this._mdf.fc = false;
5230
- this._mdf.m = false;
5231
- this._mdf.p = false;
5232
- var updated = false;
5233
-
5234
- if (this.o !== o) {
5235
- this.o = o;
5236
- this._mdf.o = true;
5237
- updated = true;
5238
- }
5239
- if (this.sw !== sw) {
5240
- this.sw = sw;
5241
- this._mdf.sw = true;
5242
- updated = true;
5243
- }
5244
- if (this.sc !== sc) {
5245
- this.sc = sc;
5246
- this._mdf.sc = true;
5247
- updated = true;
5248
- }
5249
- if (this.fc !== fc) {
5250
- this.fc = fc;
5251
- this._mdf.fc = true;
5252
- updated = true;
5253
- }
5254
- if (this.m !== m) {
5255
- this.m = m;
5256
- this._mdf.m = true;
5257
- updated = true;
5258
- }
5259
- if (p.length && (this.p[0] !== p[0] || this.p[1] !== p[1] || this.p[4] !== p[4] || this.p[5] !== p[5] || this.p[12] !== p[12] || this.p[13] !== p[13])) {
5260
- this.p = p;
5261
- this._mdf.p = true;
5262
- updated = true;
5263
- }
5264
- return updated;
5265
- };
5266
-
5267
- function TextProperty(elem, data) {
5268
- this._frameId = initialDefaultFrame;
5269
- this.pv = '';
5270
- this.v = '';
5271
- this.kf = false;
5272
- this._isFirstFrame = true;
5273
- this._mdf = false;
5274
- this.data = data;
5275
- this.elem = elem;
5276
- this.comp = this.elem.comp;
5277
- this.keysIndex = 0;
5278
- this.canResize = false;
5279
- this.minimumFontSize = 1;
5280
- this.effectsSequence = [];
5281
- this.currentData = {
5282
- ascent: 0,
5283
- boxWidth: this.defaultBoxWidth,
5284
- f: '',
5285
- fStyle: '',
5286
- fWeight: '',
5287
- fc: '',
5288
- j: '',
5289
- justifyOffset: '',
5290
- l: [],
5291
- lh: 0,
5292
- lineWidths: [],
5293
- ls: '',
5294
- of: '',
5295
- s: '',
5296
- sc: '',
5297
- sw: 0,
5298
- t: 0,
5299
- tr: 0,
5300
- sz: 0,
5301
- ps: null,
5302
- fillColorAnim: false,
5303
- strokeColorAnim: false,
5304
- strokeWidthAnim: false,
5305
- yOffset: 0,
5306
- finalSize: 0,
5307
- finalText: [],
5308
- finalLineHeight: 0,
5309
- __complete: false
5310
-
5311
- };
5312
- this.copyData(this.currentData, this.data.d.k[0].s);
5313
-
5314
- if (!this.searchProperty()) {
5315
- this.completeTextData(this.currentData);
5316
- }
5317
- }
5318
-
5319
- TextProperty.prototype.defaultBoxWidth = [0, 0];
5320
-
5321
- TextProperty.prototype.copyData = function (obj, data) {
5322
- for (var s in data) {
5323
- if (data.hasOwnProperty(s)) {
5324
- obj[s] = data[s];
5325
- }
5326
- }
5327
- return obj;
5328
- }
5329
-
5330
- TextProperty.prototype.setCurrentData = function (data) {
5331
- if (!data.__complete) {
5332
- this.completeTextData(data);
5333
- }
5334
- this.currentData = data;
5335
- this.currentData.boxWidth = this.currentData.boxWidth || this.defaultBoxWidth;
5336
- this._mdf = true;
5337
- };
5338
-
5339
- TextProperty.prototype.searchProperty = function () {
5340
- return this.searchKeyframes();
5341
- };
5342
-
5343
- TextProperty.prototype.searchKeyframes = function () {
5344
- this.kf = this.data.d.k.length > 1;
5345
- if (this.kf) {
5346
- this.addEffect(this.getKeyframeValue.bind(this));
5347
- }
5348
- return this.kf;
5349
- }
5350
-
5351
- TextProperty.prototype.addEffect = function (effectFunction) {
5352
- this.effectsSequence.push(effectFunction);
5353
- this.elem.addDynamicProperty(this);
5354
- };
5355
-
5356
- TextProperty.prototype.getValue = function (_finalValue) {
5357
- if ((this.elem.globalData.frameId === this.frameId || !this.effectsSequence.length) && !_finalValue) {
5358
- return;
5359
- }
5360
- this.currentData.t = this.data.d.k[this.keysIndex].s.t;
5361
- var currentValue = this.currentData;
5362
- var currentIndex = this.keysIndex;
5363
- if (this.lock) {
5364
- this.setCurrentData(this.currentData);
5365
- return;
5366
- }
5367
- this.lock = true;
5368
- this._mdf = false;
5369
- var multipliedValue;
5370
- var i, len = this.effectsSequence.length;
5371
- var finalValue = _finalValue || this.data.d.k[this.keysIndex].s;
5372
- for (i = 0; i < len; i += 1) {
5373
- //Checking if index changed to prevent creating a new object every time the expression updates.
5374
- if (currentIndex !== this.keysIndex) {
5375
- finalValue = this.effectsSequence[i](finalValue, finalValue.t);
5376
- } else {
5377
- finalValue = this.effectsSequence[i](this.currentData, finalValue.t);
5378
- }
5379
- }
5380
- if (currentValue !== finalValue) {
5381
- this.setCurrentData(finalValue);
5382
- }
5383
- this.pv = this.v = this.currentData;
5384
- this.lock = false;
5385
- this.frameId = this.elem.globalData.frameId;
5386
- }
5387
-
5388
- TextProperty.prototype.getKeyframeValue = function () {
5389
- var textKeys = this.data.d.k,
5390
- textDocumentData;
5391
- var frameNum = this.elem.comp.renderedFrame;
5392
- var i = 0,
5393
- len = textKeys.length;
5394
- while (i <= len - 1) {
5395
- textDocumentData = textKeys[i].s;
5396
- if (i === len - 1 || textKeys[i + 1].t > frameNum) {
5397
- break;
5398
- }
5399
- i += 1;
5400
- }
5401
- if (this.keysIndex !== i) {
5402
- this.keysIndex = i;
5403
- }
5404
- return this.data.d.k[this.keysIndex].s;
5405
- };
5406
-
5407
- TextProperty.prototype.buildFinalText = function (text) {
5408
- var combinedCharacters = FontManager.getCombinedCharacterCodes();
5409
- var charactersArray = [];
5410
- var i = 0,
5411
- len = text.length;
5412
- var charCode;
5413
- while (i < len) {
5414
- charCode = text.charCodeAt(i);
5415
- if (combinedCharacters.indexOf(charCode) !== -1) {
5416
- charactersArray[charactersArray.length - 1] += text.charAt(i);
5417
- } else {
5418
- if (charCode >= 0xD800 && charCode <= 0xDBFF) {
5419
- charCode = text.charCodeAt(i + 1);
5420
- if (charCode >= 0xDC00 && charCode <= 0xDFFF) {
5421
- charactersArray.push(text.substr(i, 2));
5422
- ++i;
5423
- } else {
5424
- charactersArray.push(text.charAt(i));
5425
- }
5426
- } else {
5427
- charactersArray.push(text.charAt(i));
5428
- }
5429
- }
5430
- i += 1;
5431
- }
5432
- return charactersArray;
5433
- }
5434
-
5435
- TextProperty.prototype.completeTextData = function (documentData) {
5436
- documentData.__complete = true;
5437
- var fontManager = this.elem.globalData.fontManager;
5438
- var data = this.data;
5439
- var letters = [];
5440
- var i, len;
5441
- var newLineFlag, index = 0,
5442
- val;
5443
- var anchorGrouping = data.m.g;
5444
- var currentSize = 0,
5445
- currentPos = 0,
5446
- currentLine = 0,
5447
- lineWidths = [];
5448
- var lineWidth = 0;
5449
- var maxLineWidth = 0;
5450
- var j, jLen;
5451
- var fontData = fontManager.getFontByName(documentData.f);
5452
- var charData, cLength = 0;
5453
- var styles = fontData.fStyle ? fontData.fStyle.split(' ') : [];
5454
-
5455
- var fWeight = 'normal',
5456
- fStyle = 'normal';
5457
- len = styles.length;
5458
- var styleName;
5459
- for (i = 0; i < len; i += 1) {
5460
- styleName = styles[i].toLowerCase();
5461
- switch (styleName) {
5462
- case 'italic':
5463
- fStyle = 'italic';
5464
- break;
5465
- case 'bold':
5466
- fWeight = '700';
5467
- break;
5468
- case 'black':
5469
- fWeight = '900';
5470
- break;
5471
- case 'medium':
5472
- fWeight = '500';
5473
- break;
5474
- case 'regular':
5475
- case 'normal':
5476
- fWeight = '400';
5477
- break;
5478
- case 'light':
5479
- case 'thin':
5480
- fWeight = '200';
5481
- break;
5482
- }
5483
- }
5484
- documentData.fWeight = fontData.fWeight || fWeight;
5485
- documentData.fStyle = fStyle;
5486
- documentData.finalSize = documentData.s;
5487
- documentData.finalText = this.buildFinalText(documentData.t);
5488
- len = documentData.finalText.length;
5489
- documentData.finalLineHeight = documentData.lh;
5490
- var trackingOffset = documentData.tr / 1000 * documentData.finalSize;
5491
- var charCode;
5492
- if (documentData.sz) {
5493
- var flag = true;
5494
- var boxWidth = documentData.sz[0];
5495
- var boxHeight = documentData.sz[1];
5496
- var currentHeight, finalText;
5497
- while (flag) {
5498
- finalText = this.buildFinalText(documentData.t);
5499
- currentHeight = 0;
5500
- lineWidth = 0;
5501
- len = finalText.length;
5502
- trackingOffset = documentData.tr / 1000 * documentData.finalSize;
5503
- var lastSpaceIndex = -1;
5504
- for (i = 0; i < len; i += 1) {
5505
- charCode = finalText[i].charCodeAt(0);
5506
- newLineFlag = false;
5507
- if (finalText[i] === ' ') {
5508
- lastSpaceIndex = i;
5509
- } else if (charCode === 13 || charCode === 3) {
5510
- lineWidth = 0;
5511
- newLineFlag = true;
5512
- currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;
5513
- }
5514
- if (fontManager.chars) {
5515
- charData = fontManager.getCharData(finalText[i], fontData.fStyle, fontData.fFamily);
5516
- cLength = newLineFlag ? 0 : charData.w * documentData.finalSize / 100;
5517
- } else {
5518
- //tCanvasHelper.font = documentData.s + 'px '+ fontData.fFamily;
5519
- cLength = fontManager.measureText(finalText[i], documentData.f, documentData.finalSize);
5520
- }
5521
- if (lineWidth + cLength > boxWidth && finalText[i] !== ' ') {
5522
- if (lastSpaceIndex === -1) {
5523
- len += 1;
5524
- } else {
5525
- i = lastSpaceIndex;
5526
- }
5527
- currentHeight += documentData.finalLineHeight || documentData.finalSize * 1.2;
5528
- finalText.splice(i, lastSpaceIndex === i ? 1 : 0, "\r");
5529
- //finalText = finalText.substr(0,i) + "\r" + finalText.substr(i === lastSpaceIndex ? i + 1 : i);
5530
- lastSpaceIndex = -1;
5531
- lineWidth = 0;
5532
- } else {
5533
- lineWidth += cLength;
5534
- lineWidth += trackingOffset;
5535
- }
5536
- }
5537
- currentHeight += fontData.ascent * documentData.finalSize / 100;
5538
- if (this.canResize && documentData.finalSize > this.minimumFontSize && boxHeight < currentHeight) {
5539
- documentData.finalSize -= 1;
5540
- documentData.finalLineHeight = documentData.finalSize * documentData.lh / documentData.s;
5541
- } else {
5542
- documentData.finalText = finalText;
5543
- len = documentData.finalText.length;
5544
- flag = false;
5545
- }
5546
- }
5547
-
5548
- }
5549
- lineWidth = -trackingOffset;
5550
- cLength = 0;
5551
- var uncollapsedSpaces = 0;
5552
- var currentChar;
5553
- for (i = 0; i < len; i += 1) {
5554
- newLineFlag = false;
5555
- currentChar = documentData.finalText[i];
5556
- charCode = currentChar.charCodeAt(0);
5557
- if (currentChar === ' ') {
5558
- val = '\u00A0';
5559
- } else if (charCode === 13 || charCode === 3) {
5560
- uncollapsedSpaces = 0;
5561
- lineWidths.push(lineWidth);
5562
- maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;
5563
- lineWidth = -2 * trackingOffset;
5564
- val = '';
5565
- newLineFlag = true;
5566
- currentLine += 1;
5567
- } else {
5568
- val = documentData.finalText[i];
5569
- }
5570
- if (fontManager.chars) {
5571
- charData = fontManager.getCharData(currentChar, fontData.fStyle, fontManager.getFontByName(documentData.f).fFamily);
5572
- cLength = newLineFlag ? 0 : charData.w * documentData.finalSize / 100;
5573
- } else {
5574
- //var charWidth = fontManager.measureText(val, documentData.f, documentData.finalSize);
5575
- //tCanvasHelper.font = documentData.finalSize + 'px '+ fontManager.getFontByName(documentData.f).fFamily;
5576
- cLength = fontManager.measureText(val, documentData.f, documentData.finalSize);
5577
- }
5578
-
5579
- //
5580
- if (currentChar === ' ') {
5581
- uncollapsedSpaces += cLength + trackingOffset;
5582
- } else {
5583
- lineWidth += cLength + trackingOffset + uncollapsedSpaces;
5584
- uncollapsedSpaces = 0;
5585
- }
5586
- letters.push({
5587
- l: cLength,
5588
- an: cLength,
5589
- add: currentSize,
5590
- n: newLineFlag,
5591
- anIndexes: [],
5592
- val: val,
5593
- line: currentLine,
5594
- animatorJustifyOffset: 0
5595
- });
5596
- if (anchorGrouping == 2) {
5597
- currentSize += cLength;
5598
- if (val === '' || val === '\u00A0' || i === len - 1) {
5599
- if (val === '' || val === '\u00A0') {
5600
- currentSize -= cLength;
5601
- }
5602
- while (currentPos <= i) {
5603
- letters[currentPos].an = currentSize;
5604
- letters[currentPos].ind = index;
5605
- letters[currentPos].extra = cLength;
5606
- currentPos += 1;
5607
- }
5608
- index += 1;
5609
- currentSize = 0;
5610
- }
5611
- } else if (anchorGrouping == 3) {
5612
- currentSize += cLength;
5613
- if (val === '' || i === len - 1) {
5614
- if (val === '') {
5615
- currentSize -= cLength;
5616
- }
5617
- while (currentPos <= i) {
5618
- letters[currentPos].an = currentSize;
5619
- letters[currentPos].ind = index;
5620
- letters[currentPos].extra = cLength;
5621
- currentPos += 1;
5622
- }
5623
- currentSize = 0;
5624
- index += 1;
5625
- }
5626
- } else {
5627
- letters[index].ind = index;
5628
- letters[index].extra = 0;
5629
- index += 1;
5630
- }
5631
- }
5632
- documentData.l = letters;
5633
- maxLineWidth = lineWidth > maxLineWidth ? lineWidth : maxLineWidth;
5634
- lineWidths.push(lineWidth);
5635
- if (documentData.sz) {
5636
- documentData.boxWidth = documentData.sz[0];
5637
- documentData.justifyOffset = 0;
5638
- } else {
5639
- documentData.boxWidth = maxLineWidth;
5640
- switch (documentData.j) {
5641
- case 1:
5642
- documentData.justifyOffset = -documentData.boxWidth;
5643
- break;
5644
- case 2:
5645
- documentData.justifyOffset = -documentData.boxWidth / 2;
5646
- break;
5647
- default:
5648
- documentData.justifyOffset = 0;
5649
- }
5650
- }
5651
- documentData.lineWidths = lineWidths;
5652
-
5653
- var animators = data.a,
5654
- animatorData, letterData;
5655
- jLen = animators.length;
5656
- var based, ind, indexes = [];
5657
- for (j = 0; j < jLen; j += 1) {
5658
- animatorData = animators[j];
5659
- if (animatorData.a.sc) {
5660
- documentData.strokeColorAnim = true;
5661
- }
5662
- if (animatorData.a.sw) {
5663
- documentData.strokeWidthAnim = true;
5664
- }
5665
- if (animatorData.a.fc || animatorData.a.fh || animatorData.a.fs || animatorData.a.fb) {
5666
- documentData.fillColorAnim = true;
5667
- }
5668
- ind = 0;
5669
- based = animatorData.s.b;
5670
- for (i = 0; i < len; i += 1) {
5671
- letterData = letters[i];
5672
- letterData.anIndexes[j] = ind;
5673
- if ((based == 1 && letterData.val !== '') || (based == 2 && letterData.val !== '' && letterData.val !== '\u00A0') || (based == 3 && (letterData.n || letterData.val == '\u00A0' || i == len - 1)) || (based == 4 && (letterData.n || i == len - 1))) {
5674
- if (animatorData.s.rn === 1) {
5675
- indexes.push(ind);
5676
- }
5677
- ind += 1;
5678
- }
5679
- }
5680
- data.a[j].s.totalChars = ind;
5681
- var currentInd = -1,
5682
- newInd;
5683
- if (animatorData.s.rn === 1) {
5684
- for (i = 0; i < len; i += 1) {
5685
- letterData = letters[i];
5686
- if (currentInd != letterData.anIndexes[j]) {
5687
- currentInd = letterData.anIndexes[j];
5688
- newInd = indexes.splice(Math.floor(Math.random() * indexes.length), 1)[0];
5689
- }
5690
- letterData.anIndexes[j] = newInd;
5691
- }
5692
- }
5693
- }
5694
- documentData.yOffset = documentData.finalLineHeight || documentData.finalSize * 1.2;
5695
- documentData.ls = documentData.ls || 0;
5696
- documentData.ascent = fontData.ascent * documentData.finalSize / 100;
5697
- };
5698
-
5699
- TextProperty.prototype.updateDocumentData = function (newData, index) {
5700
- index = index === undefined ? this.keysIndex : index;
5701
- var dData = this.copyData({}, this.data.d.k[index].s);
5702
- dData = this.copyData(dData, newData);
5703
- this.data.d.k[index].s = dData;
5704
- this.recalculate(index);
5705
- this.elem.addDynamicProperty(this);
5706
- };
5707
-
5708
- TextProperty.prototype.recalculate = function (index) {
5709
- var dData = this.data.d.k[index].s;
5710
- dData.__complete = false;
5711
- this.keysIndex = 0;
5712
- this._isFirstFrame = true;
5713
- this.getValue(dData);
5714
- }
5715
-
5716
- TextProperty.prototype.canResizeFont = function (_canResize) {
5717
- this.canResize = _canResize;
5718
- this.recalculate(this.keysIndex);
5719
- this.elem.addDynamicProperty(this);
5720
- };
5721
-
5722
- TextProperty.prototype.setMinimumFontSize = function (_fontValue) {
5723
- this.minimumFontSize = Math.floor(_fontValue) || 1;
5724
- this.recalculate(this.keysIndex);
5725
- this.elem.addDynamicProperty(this);
5726
- };
5727
-
5728
- var TextSelectorProp = (function () {
5729
- var max = Math.max;
5730
- var min = Math.min;
5731
- var floor = Math.floor;
5732
-
5733
- function TextSelectorProp(elem, data) {
5734
- this._currentTextLength = -1;
5735
- this.k = false;
5736
- this.data = data;
5737
- this.elem = elem;
5738
- this.comp = elem.comp;
5739
- this.finalS = 0;
5740
- this.finalE = 0;
5741
- this.initDynamicPropertyContainer(elem);
5742
- this.s = PropertyFactory.getProp(elem, data.s || {
5743
- k: 0
5744
- }, 0, 0, this);
5745
- if ('e' in data) {
5746
- this.e = PropertyFactory.getProp(elem, data.e, 0, 0, this);
5747
- } else {
5748
- this.e = {
5749
- v: 100
5750
- };
5751
- }
5752
- this.o = PropertyFactory.getProp(elem, data.o || {
5753
- k: 0
5754
- }, 0, 0, this);
5755
- this.xe = PropertyFactory.getProp(elem, data.xe || {
5756
- k: 0
5757
- }, 0, 0, this);
5758
- this.ne = PropertyFactory.getProp(elem, data.ne || {
5759
- k: 0
5760
- }, 0, 0, this);
5761
- this.a = PropertyFactory.getProp(elem, data.a, 0, 0.01, this);
5762
- if (!this.dynamicProperties.length) {
5763
- this.getValue();
5764
- }
5765
- }
5766
-
5767
- TextSelectorProp.prototype = {
5768
- getMult: function (ind) {
5769
- if (this._currentTextLength !== this.elem.textProperty.currentData.l.length) {
5770
- this.getValue();
5771
- }
5772
- //var easer = bez.getEasingCurve(this.ne.v/100,0,1-this.xe.v/100,1);
5773
- var x1 = 0;
5774
- var y1 = 0;
5775
- var x2 = 1;
5776
- var y2 = 1;
5777
- if (this.ne.v > 0) {
5778
- x1 = this.ne.v / 100.0;
5779
- } else {
5780
- y1 = -this.ne.v / 100.0;
5781
- }
5782
- if (this.xe.v > 0) {
5783
- x2 = 1.0 - this.xe.v / 100.0;
5784
- } else {
5785
- y2 = 1.0 + this.xe.v / 100.0;
5786
- }
5787
- var easer = BezierFactory.getBezierEasing(x1, y1, x2, y2).get;
5788
-
5789
- var mult = 0;
5790
- var s = this.finalS;
5791
- var e = this.finalE;
5792
- var type = this.data.sh;
5793
- if (type === 2) {
5794
- if (e === s) {
5795
- mult = ind >= e ? 1 : 0;
5796
- } else {
5797
- mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));
5798
- }
5799
- mult = easer(mult);
5800
- } else if (type === 3) {
5801
- if (e === s) {
5802
- mult = ind >= e ? 0 : 1;
5803
- } else {
5804
- mult = 1 - max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));
5805
- }
5806
-
5807
- mult = easer(mult);
5808
- } else if (type === 4) {
5809
- if (e === s) {
5810
- mult = 0;
5811
- } else {
5812
- mult = max(0, min(0.5 / (e - s) + (ind - s) / (e - s), 1));
5813
- if (mult < 0.5) {
5814
- mult *= 2;
5815
- } else {
5816
- mult = 1 - 2 * (mult - 0.5);
5817
- }
5818
- }
5819
- mult = easer(mult);
5820
- } else if (type === 5) {
5821
- if (e === s) {
5822
- mult = 0;
5823
- } else {
5824
- var tot = e - s;
5825
- /*ind += 0.5;
5826
- mult = -4/(tot*tot)*(ind*ind)+(4/tot)*ind;*/
5827
- ind = min(max(0, ind + 0.5 - s), e - s);
5828
- var x = -tot / 2 + ind;
5829
- var a = tot / 2;
5830
- mult = Math.sqrt(1 - (x * x) / (a * a));
5831
- }
5832
- mult = easer(mult);
5833
- } else if (type === 6) {
5834
- if (e === s) {
5835
- mult = 0;
5836
- } else {
5837
- ind = min(max(0, ind + 0.5 - s), e - s);
5838
- mult = (1 + (Math.cos((Math.PI + Math.PI * 2 * (ind) / (e - s))))) / 2;
5839
- }
5840
- mult = easer(mult);
5841
- } else {
5842
- if (ind >= floor(s)) {
5843
- if (ind - s < 0) {
5844
- mult = max(0, min(min(e, 1) - (s - ind), 1));
5845
- } else {
5846
- mult = max(0, min(e - ind, 1));
5847
- }
5848
- }
5849
- mult = easer(mult);
5850
- }
5851
- return mult * this.a.v;
5852
- },
5853
- getValue: function (newCharsFlag) {
5854
- this.iterateDynamicProperties();
5855
- this._mdf = newCharsFlag || this._mdf;
5856
- this._currentTextLength = this.elem.textProperty.currentData.l.length || 0;
5857
- if (newCharsFlag && this.data.r === 2) {
5858
- this.e.v = this._currentTextLength;
5859
- }
5860
- var divisor = this.data.r === 2 ? 1 : 100 / this.data.totalChars;
5861
- var o = this.o.v / divisor;
5862
- var s = this.s.v / divisor + o;
5863
- var e = (this.e.v / divisor) + o;
5864
- if (s > e) {
5865
- var _s = s;
5866
- s = e;
5867
- e = _s;
5868
- }
5869
- this.finalS = s;
5870
- this.finalE = e;
5871
- }
5872
- }
5873
- extendPrototype([DynamicPropertyContainer], TextSelectorProp);
5874
-
5875
- function getTextSelectorProp(elem, data, arr) {
5876
- return new TextSelectorProp(elem, data, arr);
5877
- }
5878
-
5879
- return {
5880
- getTextSelectorProp: getTextSelectorProp
5881
- };
5882
- }());
5883
-
5884
-
5885
- var pool_factory = (function () {
5886
- return function (initialLength, _create, _release, _clone) {
5887
-
5888
- var _length = 0;
5889
- var _maxLength = initialLength;
5890
- var pool = createSizedArray(_maxLength);
5891
-
5892
- var ob = {
5893
- newElement: newElement,
5894
- release: release
5895
- };
5896
-
5897
- function newElement() {
5898
- var element;
5899
- if (_length) {
5900
- _length -= 1;
5901
- element = pool[_length];
5902
- } else {
5903
- element = _create();
5904
- }
5905
- return element;
5906
- }
5907
-
5908
- function release(element) {
5909
- if (_length === _maxLength) {
5910
- pool = pooling.double(pool);
5911
- _maxLength = _maxLength * 2;
5912
- }
5913
- if (_release) {
5914
- _release(element);
5915
- }
5916
- pool[_length] = element;
5917
- _length += 1;
5918
- }
5919
-
5920
- function clone() {
5921
- var clonedElement = newElement();
5922
- return _clone(clonedElement);
5923
- }
5924
-
5925
- return ob;
5926
- };
5927
- }());
5928
-
5929
- var pooling = (function () {
5930
-
5931
- function double(arr) {
5932
- return arr.concat(createSizedArray(arr.length));
5933
- }
5934
-
5935
- return {
5936
- double: double
5937
- };
5938
- }());
5939
- var point_pool = (function () {
5940
-
5941
- function create() {
5942
- return createTypedArray('float32', 2);
5943
- }
5944
- return pool_factory(8, create);
5945
- }());
5946
- var shape_pool = (function () {
5947
-
5948
- function create() {
5949
- return new ShapePath();
5950
- }
5951
-
5952
- function release(shapePath) {
5953
- var len = shapePath._length,
5954
- i;
5955
- for (i = 0; i < len; i += 1) {
5956
- point_pool.release(shapePath.v[i]);
5957
- point_pool.release(shapePath.i[i]);
5958
- point_pool.release(shapePath.o[i]);
5959
- shapePath.v[i] = null;
5960
- shapePath.i[i] = null;
5961
- shapePath.o[i] = null;
5962
- }
5963
- shapePath._length = 0;
5964
- shapePath.c = false;
5965
- }
5966
-
5967
- function clone(shape) {
5968
- var cloned = factory.newElement();
5969
- var i, len = shape._length === undefined ? shape.v.length : shape._length;
5970
- cloned.setLength(len);
5971
- cloned.c = shape.c;
5972
- var pt;
5973
-
5974
- for (i = 0; i < len; i += 1) {
5975
- cloned.setTripleAt(shape.v[i][0], shape.v[i][1], shape.o[i][0], shape.o[i][1], shape.i[i][0], shape.i[i][1], i);
5976
- }
5977
- return cloned;
5978
- }
5979
-
5980
- var factory = pool_factory(4, create, release);
5981
- factory.clone = clone;
5982
-
5983
- return factory;
5984
- }());
5985
- var shapeCollection_pool = (function () {
5986
- var ob = {
5987
- newShapeCollection: newShapeCollection,
5988
- release: release
5989
- };
5990
-
5991
- var _length = 0;
5992
- var _maxLength = 4;
5993
- var pool = createSizedArray(_maxLength);
5994
-
5995
- function newShapeCollection() {
5996
- var shapeCollection;
5997
- if (_length) {
5998
- _length -= 1;
5999
- shapeCollection = pool[_length];
6000
- } else {
6001
- shapeCollection = new ShapeCollection();
6002
- }
6003
- return shapeCollection;
6004
- }
6005
-
6006
- function release(shapeCollection) {
6007
- var i, len = shapeCollection._length;
6008
- for (i = 0; i < len; i += 1) {
6009
- shape_pool.release(shapeCollection.shapes[i]);
6010
- }
6011
- shapeCollection._length = 0;
6012
-
6013
- if (_length === _maxLength) {
6014
- pool = pooling.double(pool);
6015
- _maxLength = _maxLength * 2;
6016
- }
6017
- pool[_length] = shapeCollection;
6018
- _length += 1;
6019
- }
6020
-
6021
- return ob;
6022
- }());
6023
- var segments_length_pool = (function () {
6024
-
6025
- function create() {
6026
- return {
6027
- lengths: [],
6028
- totalLength: 0
6029
- };
6030
- }
6031
-
6032
- function release(element) {
6033
- var i, len = element.lengths.length;
6034
- for (i = 0; i < len; i += 1) {
6035
- bezier_length_pool.release(element.lengths[i]);
6036
- }
6037
- element.lengths.length = 0;
6038
- }
6039
-
6040
- return pool_factory(8, create, release);
6041
- }());
6042
- var bezier_length_pool = (function () {
6043
-
6044
- function create() {
6045
- return {
6046
- addedLength: 0,
6047
- percents: createTypedArray('float32', defaultCurveSegments),
6048
- lengths: createTypedArray('float32', defaultCurveSegments),
6049
- };
6050
- }
6051
- return pool_factory(8, create);
6052
- }());
6053
-
6054
- function BaseRenderer() { }
6055
- BaseRenderer.prototype.checkLayers = function (num) {
6056
- var i, len = this.layers.length,
6057
- data;
6058
- this.completeLayers = true;
6059
- for (i = len - 1; i >= 0; i--) {
6060
- if (!this.elements[i]) {
6061
- data = this.layers[i];
6062
- if (data.ip - data.st <= (num - this.layers[i].st) && data.op - data.st > (num - this.layers[i].st)) {
6063
- this.buildItem(i);
6064
- }
6065
- }
6066
- this.completeLayers = this.elements[i] ? this.completeLayers : false;
6067
- }
6068
- this.checkPendingElements();
6069
- };
6070
-
6071
- BaseRenderer.prototype.createItem = function (layer) {
6072
- switch (layer.ty) {
6073
- case 2:
6074
- return this.createImage(layer);
6075
- case 0:
6076
- return this.createComp(layer);
6077
- case 1:
6078
- return this.createSolid(layer);
6079
- case 3:
6080
- return this.createNull(layer);
6081
- case 4:
6082
- return this.createShape(layer);
6083
- case 5:
6084
- return this.createText(layer);
6085
- case 13:
6086
- return this.createCamera(layer);
6087
- }
6088
- return this.createNull(layer);
6089
- };
6090
-
6091
- BaseRenderer.prototype.createCamera = function () {
6092
- throw new Error('You\'re using a 3d camera. Try the html renderer.');
6093
- };
6094
-
6095
- BaseRenderer.prototype.buildAllItems = function () {
6096
- var i, len = this.layers.length;
6097
- for (i = 0; i < len; i += 1) {
6098
- this.buildItem(i);
6099
- }
6100
- this.checkPendingElements();
6101
- };
6102
-
6103
- BaseRenderer.prototype.includeLayers = function (newLayers) {
6104
- this.completeLayers = false;
6105
- var i, len = newLayers.length;
6106
- var j, jLen = this.layers.length;
6107
- for (i = 0; i < len; i += 1) {
6108
- j = 0;
6109
- while (j < jLen) {
6110
- if (this.layers[j].id == newLayers[i].id) {
6111
- this.layers[j] = newLayers[i];
6112
- break;
6113
- }
6114
- j += 1;
6115
- }
6116
- }
6117
- };
6118
-
6119
- BaseRenderer.prototype.setProjectInterface = function (pInterface) {
6120
- this.globalData.projectInterface = pInterface;
6121
- };
6122
-
6123
- BaseRenderer.prototype.initItems = function () {
6124
- if (!this.globalData.progressiveLoad) {
6125
- this.buildAllItems();
6126
- }
6127
- };
6128
- BaseRenderer.prototype.buildElementParenting = function (element, parentName, hierarchy) {
6129
- var elements = this.elements;
6130
- var layers = this.layers;
6131
- var i = 0,
6132
- len = layers.length;
6133
- while (i < len) {
6134
- if (layers[i].ind == parentName) {
6135
- if (!elements[i] || elements[i] === true) {
6136
- this.buildItem(i);
6137
- this.addPendingElement(element);
6138
- } else {
6139
- hierarchy.push(elements[i]);
6140
- elements[i].setAsParent();
6141
- if (layers[i].parent !== undefined) {
6142
- this.buildElementParenting(element, layers[i].parent, hierarchy);
6143
- } else {
6144
- element.setHierarchy(hierarchy);
6145
- }
6146
- }
6147
- }
6148
- i += 1;
6149
- }
6150
- };
6151
-
6152
- BaseRenderer.prototype.addPendingElement = function (element) {
6153
- this.pendingElements.push(element);
6154
- };
6155
-
6156
- BaseRenderer.prototype.searchExtraCompositions = function (assets) {
6157
- var i, len = assets.length;
6158
- for (i = 0; i < len; i += 1) {
6159
- if (assets[i].xt) {
6160
- var comp = this.createComp(assets[i]);
6161
- comp.initExpressions();
6162
- this.globalData.projectInterface.registerComposition(comp);
6163
- }
6164
- }
6165
- };
6166
-
6167
- BaseRenderer.prototype.setupGlobalData = function (animData, fontsContainer) {
6168
- this.globalData.fontManager = new FontManager();
6169
- this.globalData.fontManager.addChars(animData.chars);
6170
- this.globalData.fontManager.addFonts(animData.fonts, fontsContainer);
6171
- this.globalData.getAssetData = this.animationItem.getAssetData.bind(this.animationItem);
6172
- this.globalData.getAssetsPath = this.animationItem.getAssetsPath.bind(this.animationItem);
6173
- this.globalData.imageLoader = this.animationItem.imagePreloader;
6174
- this.globalData.frameId = 0;
6175
- this.globalData.frameRate = animData.fr;
6176
- this.globalData.nm = animData.nm;
6177
- this.globalData.compSize = {
6178
- w: animData.w,
6179
- h: animData.h
6180
- }
6181
- }
6182
-
6183
- function SVGRenderer(animationItem, config) {
6184
- this.animationItem = animationItem;
6185
- this.layers = null;
6186
- this.renderedFrame = -1;
6187
- this.svgElement = createNS('svg');
6188
- var ariaLabel = '';
6189
- if (config && config.title) {
6190
- var titleElement = createNS('title');
6191
- var titleId = createElementID();
6192
- titleElement.setAttribute('id', titleId);
6193
- titleElement.textContent = config.title;
6194
- this.svgElement.appendChild(titleElement);
6195
- ariaLabel += titleId;
6196
- }
6197
- if (config && config.description) {
6198
- var descElement = createNS('desc');
6199
- var descId = createElementID();
6200
- descElement.setAttribute('id', descId);
6201
- descElement.textContent = config.description;
6202
- this.svgElement.appendChild(descElement);
6203
- ariaLabel += ' ' + descId;
6204
- }
6205
- if (ariaLabel) {
6206
- this.svgElement.setAttribute('aria-labelledby', ariaLabel)
6207
- }
6208
- var defs = createNS('defs');
6209
- this.svgElement.appendChild(defs);
6210
- var maskElement = createNS('g');
6211
- this.svgElement.appendChild(maskElement);
6212
- this.layerElement = maskElement;
6213
- this.renderConfig = {
6214
- preserveAspectRatio: (config && config.preserveAspectRatio) || 'xMidYMid meet',
6215
- imagePreserveAspectRatio: (config && config.imagePreserveAspectRatio) || 'xMidYMid slice',
6216
- progressiveLoad: (config && config.progressiveLoad) || false,
6217
- hideOnTransparent: (config && config.hideOnTransparent === false) ? false : true,
6218
- viewBoxOnly: true,
6219
- viewBoxSize: (config && config.viewBoxSize) || false,
6220
- className: (config && config.className) || '',
6221
- id: (config && config.id) || '',
6222
- focusable: config && config.focusable,
6223
- filterSize: {
6224
- width: config && config.filterSize && config.filterSize.width || '100%',
6225
- height: config && config.filterSize && config.filterSize.height || '100%',
6226
- x: config && config.filterSize && config.filterSize.x || '0%',
6227
- y: config && config.filterSize && config.filterSize.y || '0%',
6228
- }
6229
- };
6230
-
6231
- this.globalData = {
6232
- _mdf: false,
6233
- frameNum: -1,
6234
- defs: defs,
6235
- renderConfig: this.renderConfig
6236
- };
6237
- this.elements = [];
6238
- this.pendingElements = [];
6239
- this.destroyed = false;
6240
- this.rendererType = 'svg';
6241
-
6242
- }
6243
-
6244
- extendPrototype([BaseRenderer], SVGRenderer);
6245
-
6246
- SVGRenderer.prototype.createNull = function (data) {
6247
- return new NullElement(data, this.globalData, this);
6248
- };
6249
-
6250
- SVGRenderer.prototype.createShape = function (data) {
6251
- return new SVGShapeElement(data, this.globalData, this);
6252
- };
6253
-
6254
- SVGRenderer.prototype.createText = function (data) {
6255
- return new SVGTextElement(data, this.globalData, this);
6256
-
6257
- };
6258
-
6259
- SVGRenderer.prototype.createImage = function (data) {
6260
- return new IImageElement(data, this.globalData, this);
6261
- };
6262
-
6263
- SVGRenderer.prototype.createComp = function (data) {
6264
- return new SVGCompElement(data, this.globalData, this);
6265
-
6266
- };
6267
-
6268
- SVGRenderer.prototype.createSolid = function (data) {
6269
- return new ISolidElement(data, this.globalData, this);
6270
- };
6271
-
6272
- SVGRenderer.prototype.configAnimation = function (animData) {
6273
- this.svgElement.setAttribute('xmlns', 'http://www.w3.org/2000/svg');
6274
- if (this.renderConfig.viewBoxSize) {
6275
- this.svgElement.setAttribute('viewBox', this.renderConfig.viewBoxSize);
6276
- } else {
6277
- this.svgElement.setAttribute('viewBox', '0 0 ' + animData.w + ' ' + animData.h);
6278
- }
6279
-
6280
- if (!this.renderConfig.viewBoxOnly) {
6281
- this.svgElement.setAttribute('width', animData.w);
6282
- this.svgElement.setAttribute('height', animData.h);
6283
- this.svgElement.style.width = '100%';
6284
- this.svgElement.style.height = '100%';
6285
- this.svgElement.style.transform = 'translate3d(0,0,0)';
6286
- }
6287
- if (this.renderConfig.className) {
6288
- this.svgElement.setAttribute('class', this.renderConfig.className);
6289
- }
6290
- if (this.renderConfig.id) {
6291
- this.svgElement.setAttribute('id', this.renderConfig.id);
6292
- }
6293
- if (this.renderConfig.focusable !== undefined) {
6294
- this.svgElement.setAttribute('focusable', this.renderConfig.focusable);
6295
- }
6296
- this.svgElement.setAttribute('preserveAspectRatio', this.renderConfig.preserveAspectRatio);
6297
- //this.layerElement.style.transform = 'translate3d(0,0,0)';
6298
- //this.layerElement.style.transformOrigin = this.layerElement.style.mozTransformOrigin = this.layerElement.style.webkitTransformOrigin = this.layerElement.style['-webkit-transform'] = "0px 0px 0px";
6299
- this.animationItem.wrapper.appendChild(this.svgElement);
6300
- //Mask animation
6301
- var defs = this.globalData.defs;
6302
-
6303
- this.setupGlobalData(animData, defs);
6304
- this.globalData.progressiveLoad = this.renderConfig.progressiveLoad;
6305
- this.data = animData;
6306
-
6307
- var maskElement = createNS('clipPath');
6308
- var rect = createNS('rect');
6309
- rect.setAttribute('width', animData.w);
6310
- rect.setAttribute('height', animData.h);
6311
- rect.setAttribute('x', 0);
6312
- rect.setAttribute('y', 0);
6313
- var maskId = createElementID();
6314
- maskElement.setAttribute('id', maskId);
6315
- maskElement.appendChild(rect);
6316
- this.layerElement.setAttribute("clip-path", "url(" + locationHref + "#" + maskId + ")");
6317
-
6318
- defs.appendChild(maskElement);
6319
- this.layers = animData.layers;
6320
- this.elements = createSizedArray(animData.layers.length);
6321
- };
6322
-
6323
-
6324
- SVGRenderer.prototype.destroy = function () {
6325
- this.animationItem.wrapper.innerHTML = '';
6326
- this.layerElement = null;
6327
- this.globalData.defs = null;
6328
- var i, len = this.layers ? this.layers.length : 0;
6329
- for (i = 0; i < len; i++) {
6330
- if (this.elements[i]) {
6331
- this.elements[i].destroy();
6332
- }
6333
- }
6334
- this.elements.length = 0;
6335
- this.destroyed = true;
6336
- this.animationItem = null;
6337
- };
6338
-
6339
- SVGRenderer.prototype.updateContainerSize = function () { };
6340
-
6341
- SVGRenderer.prototype.buildItem = function (pos) {
6342
- var elements = this.elements;
6343
- if (elements[pos] || this.layers[pos].ty == 99) {
6344
- return;
6345
- }
6346
- elements[pos] = true;
6347
- var element = this.createItem(this.layers[pos]);
6348
-
6349
- elements[pos] = element;
6350
- if (expressionsPlugin) {
6351
- if (this.layers[pos].ty === 0) {
6352
- this.globalData.projectInterface.registerComposition(element);
6353
- }
6354
- element.initExpressions();
6355
- }
6356
- this.appendElementInPos(element, pos);
6357
- if (this.layers[pos].tt) {
6358
- if (!this.elements[pos - 1] || this.elements[pos - 1] === true) {
6359
- this.buildItem(pos - 1);
6360
- this.addPendingElement(element);
6361
- } else {
6362
- element.setMatte(elements[pos - 1].layerId);
6363
- }
6364
- }
6365
- };
6366
-
6367
- SVGRenderer.prototype.checkPendingElements = function () {
6368
- while (this.pendingElements.length) {
6369
- var element = this.pendingElements.pop();
6370
- element.checkParenting();
6371
- if (element.data.tt) {
6372
- var i = 0,
6373
- len = this.elements.length;
6374
- while (i < len) {
6375
- if (this.elements[i] === element) {
6376
- element.setMatte(this.elements[i - 1].layerId);
6377
- break;
6378
- }
6379
- i += 1;
6380
- }
6381
- }
6382
- }
6383
- };
6384
-
6385
- SVGRenderer.prototype.renderFrame = function (num) {
6386
- if (this.renderedFrame === num || this.destroyed) {
6387
- return;
6388
- }
6389
- if (num === null) {
6390
- num = this.renderedFrame;
6391
- } else {
6392
- this.renderedFrame = num;
6393
- }
6394
- // console.log('-------');
6395
- // console.log('FRAME ',num);
6396
- this.globalData.frameNum = num;
6397
- this.globalData.frameId += 1;
6398
- this.globalData.projectInterface.currentFrame = num;
6399
- this.globalData._mdf = false;
6400
- var i, len = this.layers.length;
6401
- if (!this.completeLayers) {
6402
- this.checkLayers(num);
6403
- }
6404
- for (i = len - 1; i >= 0; i--) {
6405
- if (this.completeLayers || this.elements[i]) {
6406
- this.elements[i].prepareFrame(num - this.layers[i].st);
6407
- }
6408
- }
6409
- if (this.globalData._mdf) {
6410
- for (i = 0; i < len; i += 1) {
6411
- if (this.completeLayers || this.elements[i]) {
6412
- this.elements[i].renderFrame();
6413
- }
6414
- }
6415
- }
6416
- };
6417
-
6418
- SVGRenderer.prototype.appendElementInPos = function (element, pos) {
6419
- var newElement = element.getBaseElement();
6420
- if (!newElement) {
6421
- return;
6422
- }
6423
- var i = 0;
6424
- var nextElement;
6425
- while (i < pos) {
6426
- if (this.elements[i] && this.elements[i] !== true && this.elements[i].getBaseElement()) {
6427
- nextElement = this.elements[i].getBaseElement();
6428
- }
6429
- i += 1;
6430
- }
6431
- if (nextElement) {
6432
- this.layerElement.insertBefore(newElement, nextElement);
6433
- } else {
6434
- this.layerElement.appendChild(newElement);
6435
- }
6436
- };
6437
-
6438
- SVGRenderer.prototype.hide = function () {
6439
- this.layerElement.style.display = 'none';
6440
- };
6441
-
6442
- SVGRenderer.prototype.show = function () {
6443
- this.layerElement.style.display = 'block';
6444
- };
6445
-
6446
- function CanvasRenderer(animationItem, config) {
6447
- this.animationItem = animationItem;
6448
- this.renderConfig = {
6449
- clearCanvas: (config && config.clearCanvas !== undefined) ? config.clearCanvas : true,
6450
- context: (config && config.context) || null,
6451
- progressiveLoad: (config && config.progressiveLoad) || false,
6452
- preserveAspectRatio: (config && config.preserveAspectRatio) || 'xMidYMid meet',
6453
- imagePreserveAspectRatio: (config && config.imagePreserveAspectRatio) || 'xMidYMid slice',
6454
- className: (config && config.className) || '',
6455
- id: (config && config.id) || '',
6456
- };
6457
- this.renderConfig.dpr = (config && config.dpr) || 1;
6458
- if (this.animationItem.wrapper) {
6459
- this.renderConfig.dpr = (config && config.dpr) || window.devicePixelRatio || 1;
6460
- }
6461
- this.renderedFrame = -1;
6462
- this.globalData = {
6463
- frameNum: -1,
6464
- _mdf: false,
6465
- renderConfig: this.renderConfig,
6466
- currentGlobalAlpha: -1
6467
- };
6468
- this.contextData = new CVContextData();
6469
- this.elements = [];
6470
- this.pendingElements = [];
6471
- this.transformMat = new Matrix();
6472
- this.completeLayers = false;
6473
- this.rendererType = 'canvas';
6474
- }
6475
- extendPrototype([BaseRenderer], CanvasRenderer);
6476
-
6477
- CanvasRenderer.prototype.createShape = function (data) {
6478
- return new CVShapeElement(data, this.globalData, this);
6479
- };
6480
-
6481
- CanvasRenderer.prototype.createText = function (data) {
6482
- return new CVTextElement(data, this.globalData, this);
6483
- };
6484
-
6485
- CanvasRenderer.prototype.createImage = function (data) {
6486
- return new CVImageElement(data, this.globalData, this);
6487
- };
6488
-
6489
- CanvasRenderer.prototype.createComp = function (data) {
6490
- return new CVCompElement(data, this.globalData, this);
6491
- };
6492
-
6493
- CanvasRenderer.prototype.createSolid = function (data) {
6494
- return new CVSolidElement(data, this.globalData, this);
6495
- };
6496
-
6497
- CanvasRenderer.prototype.createNull = SVGRenderer.prototype.createNull;
6498
-
6499
- CanvasRenderer.prototype.ctxTransform = function (props) {
6500
- if (props[0] === 1 && props[1] === 0 && props[4] === 0 && props[5] === 1 && props[12] === 0 && props[13] === 0) {
6501
- return;
6502
- }
6503
- if (!this.renderConfig.clearCanvas) {
6504
- this.canvasContext.transform(props[0], props[1], props[4], props[5], props[12], props[13]);
6505
- return;
6506
- }
6507
- this.transformMat.cloneFromProps(props);
6508
- var cProps = this.contextData.cTr.props;
6509
- this.transformMat.transform(cProps[0], cProps[1], cProps[2], cProps[3], cProps[4], cProps[5], cProps[6], cProps[7], cProps[8], cProps[9], cProps[10], cProps[11], cProps[12], cProps[13], cProps[14], cProps[15]);
6510
- //this.contextData.cTr.transform(props[0],props[1],props[2],props[3],props[4],props[5],props[6],props[7],props[8],props[9],props[10],props[11],props[12],props[13],props[14],props[15]);
6511
- this.contextData.cTr.cloneFromProps(this.transformMat.props);
6512
- var trProps = this.contextData.cTr.props;
6513
- this.canvasContext.setTransform(trProps[0], trProps[1], trProps[4], trProps[5], trProps[12], trProps[13]);
6514
- };
6515
-
6516
- CanvasRenderer.prototype.ctxOpacity = function (op) {
6517
- /*if(op === 1){
6518
- return;
6519
- }*/
6520
- if (!this.renderConfig.clearCanvas) {
6521
- this.canvasContext.globalAlpha *= op < 0 ? 0 : op;
6522
- this.globalData.currentGlobalAlpha = this.contextData.cO;
6523
- return;
6524
- }
6525
- this.contextData.cO *= op < 0 ? 0 : op;
6526
- if (this.globalData.currentGlobalAlpha !== this.contextData.cO) {
6527
- this.canvasContext.globalAlpha = this.contextData.cO;
6528
- this.globalData.currentGlobalAlpha = this.contextData.cO;
6529
- }
6530
- };
6531
-
6532
- CanvasRenderer.prototype.reset = function () {
6533
- if (!this.renderConfig.clearCanvas) {
6534
- this.canvasContext.restore();
6535
- return;
6536
- }
6537
- this.contextData.reset();
6538
- };
6539
-
6540
- CanvasRenderer.prototype.save = function (actionFlag) {
6541
- if (!this.renderConfig.clearCanvas) {
6542
- this.canvasContext.save();
6543
- return;
6544
- }
6545
- if (actionFlag) {
6546
- this.canvasContext.save();
6547
- }
6548
- var props = this.contextData.cTr.props;
6549
- if (this.contextData._length <= this.contextData.cArrPos) {
6550
- this.contextData.duplicate();
6551
- }
6552
- var i, arr = this.contextData.saved[this.contextData.cArrPos];
6553
- for (i = 0; i < 16; i += 1) {
6554
- arr[i] = props[i];
6555
- }
6556
- this.contextData.savedOp[this.contextData.cArrPos] = this.contextData.cO;
6557
- this.contextData.cArrPos += 1;
6558
- };
6559
-
6560
- CanvasRenderer.prototype.restore = function (actionFlag) {
6561
- if (!this.renderConfig.clearCanvas) {
6562
- this.canvasContext.restore();
6563
- return;
6564
- }
6565
- if (actionFlag) {
6566
- this.canvasContext.restore();
6567
- this.globalData.blendMode = 'source-over';
6568
- }
6569
- this.contextData.cArrPos -= 1;
6570
- var popped = this.contextData.saved[this.contextData.cArrPos];
6571
- var i, arr = this.contextData.cTr.props;
6572
- for (i = 0; i < 16; i += 1) {
6573
- arr[i] = popped[i];
6574
- }
6575
- this.canvasContext.setTransform(popped[0], popped[1], popped[4], popped[5], popped[12], popped[13]);
6576
- popped = this.contextData.savedOp[this.contextData.cArrPos];
6577
- this.contextData.cO = popped;
6578
- if (this.globalData.currentGlobalAlpha !== popped) {
6579
- this.canvasContext.globalAlpha = popped;
6580
- this.globalData.currentGlobalAlpha = popped;
6581
- }
6582
- };
6583
-
6584
- CanvasRenderer.prototype.configAnimation = function (animData) {
6585
- if (this.animationItem.wrapper) {
6586
- this.animationItem.container = createTag('canvas');
6587
- this.animationItem.container.style.width = '100%';
6588
- this.animationItem.container.style.height = '100%';
6589
- //this.animationItem.container.style.transform = 'translate3d(0,0,0)';
6590
- //this.animationItem.container.style.webkitTransform = 'translate3d(0,0,0)';
6591
- this.animationItem.container.style.transformOrigin = this.animationItem.container.style.mozTransformOrigin = this.animationItem.container.style.webkitTransformOrigin = this.animationItem.container.style['-webkit-transform'] = "0px 0px 0px";
6592
- this.animationItem.wrapper.appendChild(this.animationItem.container);
6593
- this.canvasContext = this.animationItem.container.getContext('2d');
6594
- if (this.renderConfig.className) {
6595
- this.animationItem.container.setAttribute('class', this.renderConfig.className);
6596
- }
6597
- if (this.renderConfig.id) {
6598
- this.animationItem.container.setAttribute('id', this.renderConfig.id);
6599
- }
6600
- } else {
6601
- this.canvasContext = this.renderConfig.context;
6602
- }
6603
- this.data = animData;
6604
- this.layers = animData.layers;
6605
- this.transformCanvas = {
6606
- w: animData.w,
6607
- h: animData.h,
6608
- sx: 0,
6609
- sy: 0,
6610
- tx: 0,
6611
- ty: 0
6612
- };
6613
- this.setupGlobalData(animData, document.body);
6614
- this.globalData.canvasContext = this.canvasContext;
6615
- this.globalData.renderer = this;
6616
- this.globalData.isDashed = false;
6617
- this.globalData.progressiveLoad = this.renderConfig.progressiveLoad;
6618
- this.globalData.transformCanvas = this.transformCanvas;
6619
- this.elements = createSizedArray(animData.layers.length);
6620
-
6621
- this.updateContainerSize();
6622
- };
6623
-
6624
- CanvasRenderer.prototype.updateContainerSize = function () {
6625
- this.reset();
6626
- var elementWidth, elementHeight;
6627
- if (this.animationItem.wrapper && this.animationItem.container) {
6628
- elementWidth = this.animationItem.wrapper.offsetWidth;
6629
- elementHeight = this.animationItem.wrapper.offsetHeight;
6630
- this.animationItem.container.setAttribute('width', elementWidth * this.renderConfig.dpr);
6631
- this.animationItem.container.setAttribute('height', elementHeight * this.renderConfig.dpr);
6632
- } else {
6633
- elementWidth = this.canvasContext.canvas.width * this.renderConfig.dpr;
6634
- elementHeight = this.canvasContext.canvas.height * this.renderConfig.dpr;
6635
- }
6636
- var elementRel, animationRel;
6637
- if (this.renderConfig.preserveAspectRatio.indexOf('meet') !== -1 || this.renderConfig.preserveAspectRatio.indexOf('slice') !== -1) {
6638
- var par = this.renderConfig.preserveAspectRatio.split(' ');
6639
- var fillType = par[1] || 'meet';
6640
- var pos = par[0] || 'xMidYMid';
6641
- var xPos = pos.substr(0, 4);
6642
- var yPos = pos.substr(4);
6643
- elementRel = elementWidth / elementHeight;
6644
- animationRel = this.transformCanvas.w / this.transformCanvas.h;
6645
- if (animationRel > elementRel && fillType === 'meet' || animationRel < elementRel && fillType === 'slice') {
6646
- this.transformCanvas.sx = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);
6647
- this.transformCanvas.sy = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);
6648
- } else {
6649
- this.transformCanvas.sx = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);
6650
- this.transformCanvas.sy = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);
6651
- }
6652
-
6653
- if (xPos === 'xMid' && ((animationRel < elementRel && fillType === 'meet') || (animationRel > elementRel && fillType === 'slice'))) {
6654
- this.transformCanvas.tx = (elementWidth - this.transformCanvas.w * (elementHeight / this.transformCanvas.h)) / 2 * this.renderConfig.dpr;
6655
- } else if (xPos === 'xMax' && ((animationRel < elementRel && fillType === 'meet') || (animationRel > elementRel && fillType === 'slice'))) {
6656
- this.transformCanvas.tx = (elementWidth - this.transformCanvas.w * (elementHeight / this.transformCanvas.h)) * this.renderConfig.dpr;
6657
- } else {
6658
- this.transformCanvas.tx = 0;
6659
- }
6660
- if (yPos === 'YMid' && ((animationRel > elementRel && fillType === 'meet') || (animationRel < elementRel && fillType === 'slice'))) {
6661
- this.transformCanvas.ty = ((elementHeight - this.transformCanvas.h * (elementWidth / this.transformCanvas.w)) / 2) * this.renderConfig.dpr;
6662
- } else if (yPos === 'YMax' && ((animationRel > elementRel && fillType === 'meet') || (animationRel < elementRel && fillType === 'slice'))) {
6663
- this.transformCanvas.ty = ((elementHeight - this.transformCanvas.h * (elementWidth / this.transformCanvas.w))) * this.renderConfig.dpr;
6664
- } else {
6665
- this.transformCanvas.ty = 0;
6666
- }
6667
-
6668
- } else if (this.renderConfig.preserveAspectRatio == 'none') {
6669
- this.transformCanvas.sx = elementWidth / (this.transformCanvas.w / this.renderConfig.dpr);
6670
- this.transformCanvas.sy = elementHeight / (this.transformCanvas.h / this.renderConfig.dpr);
6671
- this.transformCanvas.tx = 0;
6672
- this.transformCanvas.ty = 0;
6673
- } else {
6674
- this.transformCanvas.sx = this.renderConfig.dpr;
6675
- this.transformCanvas.sy = this.renderConfig.dpr;
6676
- this.transformCanvas.tx = 0;
6677
- this.transformCanvas.ty = 0;
6678
- }
6679
- this.transformCanvas.props = [this.transformCanvas.sx, 0, 0, 0, 0, this.transformCanvas.sy, 0, 0, 0, 0, 1, 0, this.transformCanvas.tx, this.transformCanvas.ty, 0, 1];
6680
- /*var i, len = this.elements.length;
6681
- for(i=0;i<len;i+=1){
6682
- if(this.elements[i] && this.elements[i].data.ty === 0){
6683
- this.elements[i].resize(this.globalData.transformCanvas);
6684
- }
6685
- }*/
6686
- this.ctxTransform(this.transformCanvas.props);
6687
- this.canvasContext.beginPath();
6688
- this.canvasContext.rect(0, 0, this.transformCanvas.w, this.transformCanvas.h);
6689
- this.canvasContext.closePath();
6690
- this.canvasContext.clip();
6691
-
6692
- this.renderFrame(this.renderedFrame, true);
6693
- };
6694
-
6695
- CanvasRenderer.prototype.destroy = function () {
6696
- if (this.renderConfig.clearCanvas) {
6697
- this.animationItem.wrapper.innerHTML = '';
6698
- }
6699
- var i, len = this.layers ? this.layers.length : 0;
6700
- for (i = len - 1; i >= 0; i -= 1) {
6701
- if (this.elements[i]) {
6702
- this.elements[i].destroy();
6703
- }
6704
- }
6705
- this.elements.length = 0;
6706
- this.globalData.canvasContext = null;
6707
- this.animationItem.container = null;
6708
- this.destroyed = true;
6709
- };
6710
-
6711
- CanvasRenderer.prototype.renderFrame = function (num, forceRender) {
6712
- if ((this.renderedFrame === num && this.renderConfig.clearCanvas === true && !forceRender) || this.destroyed || num === -1) {
6713
- return;
6714
- }
6715
- this.renderedFrame = num;
6716
- this.globalData.frameNum = num - this.animationItem._isFirstFrame;
6717
- this.globalData.frameId += 1;
6718
- this.globalData._mdf = !this.renderConfig.clearCanvas || forceRender;
6719
- this.globalData.projectInterface.currentFrame = num;
6720
-
6721
- // console.log('--------');
6722
- // console.log('NEW: ',num);
6723
- var i, len = this.layers.length;
6724
- if (!this.completeLayers) {
6725
- this.checkLayers(num);
6726
- }
6727
-
6728
- for (i = 0; i < len; i++) {
6729
- if (this.completeLayers || this.elements[i]) {
6730
- this.elements[i].prepareFrame(num - this.layers[i].st);
6731
- }
6732
- }
6733
- if (this.globalData._mdf) {
6734
- if (this.renderConfig.clearCanvas === true) {
6735
- this.canvasContext.clearRect(0, 0, this.transformCanvas.w, this.transformCanvas.h);
6736
- } else {
6737
- this.save();
6738
- }
6739
- for (i = len - 1; i >= 0; i -= 1) {
6740
- if (this.completeLayers || this.elements[i]) {
6741
- this.elements[i].renderFrame();
6742
- }
6743
- }
6744
- if (this.renderConfig.clearCanvas !== true) {
6745
- this.restore();
6746
- }
6747
- }
6748
- };
6749
-
6750
- CanvasRenderer.prototype.buildItem = function (pos) {
6751
- var elements = this.elements;
6752
- if (elements[pos] || this.layers[pos].ty == 99) {
6753
- return;
6754
- }
6755
- var element = this.createItem(this.layers[pos], this, this.globalData);
6756
- elements[pos] = element;
6757
- element.initExpressions();
6758
- /*if(this.layers[pos].ty === 0){
6759
- element.resize(this.globalData.transformCanvas);
6760
- }*/
6761
- };
6762
-
6763
- CanvasRenderer.prototype.checkPendingElements = function () {
6764
- while (this.pendingElements.length) {
6765
- var element = this.pendingElements.pop();
6766
- element.checkParenting();
6767
- }
6768
- };
6769
-
6770
- CanvasRenderer.prototype.hide = function () {
6771
- this.animationItem.container.style.display = 'none';
6772
- };
6773
-
6774
- CanvasRenderer.prototype.show = function () {
6775
- this.animationItem.container.style.display = 'block';
6776
- };
6777
-
6778
- function HybridRenderer(animationItem, config) {
6779
- this.animationItem = animationItem;
6780
- this.layers = null;
6781
- this.renderedFrame = -1;
6782
- this.renderConfig = {
6783
- className: (config && config.className) || '',
6784
- imagePreserveAspectRatio: (config && config.imagePreserveAspectRatio) || 'xMidYMid slice',
6785
- hideOnTransparent: (config && config.hideOnTransparent === false) ? false : true,
6786
- filterSize: {
6787
- width: config && config.filterSize && config.filterSize.width || '400%',
6788
- height: config && config.filterSize && config.filterSize.height || '400%',
6789
- x: config && config.filterSize && config.filterSize.x || '-100%',
6790
- y: config && config.filterSize && config.filterSize.y || '-100%',
6791
- }
6792
- };
6793
- this.globalData = {
6794
- _mdf: false,
6795
- frameNum: -1,
6796
- renderConfig: this.renderConfig
6797
- };
6798
- this.pendingElements = [];
6799
- this.elements = [];
6800
- this.threeDElements = [];
6801
-